@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&display=swap";:root{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button:focus-visible{outline:2px solid var(--gold, #ffd700);outline-offset:2px}button{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary, #16213e)}::-webkit-scrollbar-thumb{background:var(--gold-dim, #b8860b);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gold, #ffd700)}.skeleton{position:relative;overflow:hidden;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(196,146,80,.08) 20%,rgba(196,146,80,.12) 50%,rgba(196,146,80,.08) 80%,transparent 100%);transform:translate(-100%);animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton--circle{border-radius:50%}.skeleton--text{height:.875em;border-radius:2px}:root{--bg-primary: #12181c;--bg-secondary: #1a1f23;--bg-tertiary: #232b2f;--bg-elevated: #2a3238;--accent-red: #c53030;--accent-red-hover: #e53e3e;--gold: #c49250;--gold-light: #f0dcb4;--gold-hover: #d4a660;--text-primary: #ecedee;--text-secondary: #a8b3b9;--text-muted: #6c7a82;--border-color: #3a4349;--available: #48bb78;--available-bg: rgba(72, 187, 120, .15);--unavailable: #e53e3e;--unavailable-bg: rgba(229, 62, 62, .1);--unset: #4a5568;--unset-bg: rgba(74, 85, 104, .2);--font-display: "JetBrains Mono", monospace;--font-heading: "JetBrains Mono", monospace;--font-body: "JetBrains Mono", monospace;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px}*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5;font-size:14px}.app{min-height:100vh;display:flex;flex-direction:column}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-lg)}.loading-spinner{width:48px;height:48px;border:3px solid var(--bg-secondary);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.loading,.error{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);font-family:var(--font-body);color:var(--text-muted);font-size:.875rem}.error{color:var(--unavailable)}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);background:var(--bg-primary)}.error-boundary-content{max-width:480px;text-align:center}.error-boundary h1{font-family:var(--font-heading);font-size:1.5rem;color:var(--gold);margin-bottom:var(--spacing-sm)}.error-boundary-subtitle{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.error-boundary-details{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);text-align:left}.error-boundary-details summary{cursor:pointer;color:var(--text-muted);font-size:.875rem;margin-bottom:var(--spacing-sm)}.error-boundary-details pre{font-size:.75rem;color:var(--unavailable);overflow-x:auto;white-space:pre-wrap;word-break:break-word}.error-boundary-actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-bottom:var(--spacing-lg)}.error-boundary-button{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.875rem;cursor:pointer;transition:all .2s ease}.error-boundary-button.primary{background:var(--gold);color:var(--bg-primary);border:none}.error-boundary-button.primary:hover{background:var(--gold-hover)}.error-boundary-button.secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.error-boundary-button.secondary:hover{background:var(--bg-secondary);color:var(--text-primary)}.error-boundary-hint{font-size:.75rem;color:var(--text-muted)}.error-boundary-hint a{color:var(--gold);text-decoration:none}.error-boundary-hint a:hover{text-decoration:underline}.login-screen{display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.login-container{text-align:center;padding:var(--spacing-xl);max-width:400px}.title{font-family:var(--font-display);font-size:2.5rem;font-weight:700;color:var(--gold-light);margin-bottom:var(--spacing-xs);letter-spacing:.15em;text-transform:uppercase}.subtitle{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg);letter-spacing:.05em;text-transform:uppercase}.tagline{font-family:var(--font-body);font-size:.9rem;color:var(--text-muted);margin-bottom:var(--spacing-xl);font-style:italic}.auth-tabs{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%;max-width:320px}.auth-tabs__oauth{display:flex;flex-direction:column;gap:var(--spacing-sm)}.auth-tabs__divider{display:flex;align-items:center;gap:var(--spacing-md);color:var(--text-muted);font-size:.875rem}.auth-tabs__divider:before,.auth-tabs__divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.oauth-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100%;padding:12px 24px;font-family:var(--font-body);font-size:.875rem;font-weight:500;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.oauth-button:disabled{opacity:.6;cursor:not-allowed}.oauth-button__icon{display:flex;align-items:center;flex-shrink:0}.oauth-button--google{background:#fff;color:#1f1f1f}.oauth-button--google:hover:not(:disabled){background:#f8f8f8;border-color:#dadce0}.oauth-button--discord{background:#5865f2;color:#fff;border-color:#5865f2}.oauth-button--discord:hover:not(:disabled){background:#4752c4;border-color:#4752c4}.email-auth{display:flex;flex-direction:column;gap:var(--spacing-sm)}.email-auth__input{width:100%;padding:12px 16px;font-family:var(--font-body);font-size:.875rem;color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease;box-sizing:border-box}.email-auth__input:focus{border-color:var(--gold)}.email-auth__input::placeholder{color:var(--text-muted)}.email-auth__button{width:100%;padding:12px 24px;font-family:var(--font-body);font-size:.875rem;font-weight:500;color:#fff;background:var(--accent-red);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease}.email-auth__button:hover:not(:disabled){background:var(--accent-red-hover)}.email-auth__button:disabled{opacity:.6;cursor:not-allowed}.email-auth__error{margin:0;padding:var(--spacing-sm);font-size:.875rem;color:var(--unavailable);background:#ef44441a;border-radius:var(--radius-sm)}.email-auth--sent{text-align:center}.email-auth__success{margin:0 0 var(--spacing-md);padding:var(--spacing-md);font-size:.875rem;color:var(--available);background:#22c55e1a;border-radius:var(--radius-sm)}.email-auth__retry{padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:.875rem;color:var(--text-muted);background:transparent;border:none;cursor:pointer;text-decoration:underline}.email-auth__retry:hover{color:var(--text-primary)}.login-back-link{margin-top:var(--spacing-lg)}.login-back-link a{color:var(--text-muted);text-decoration:none;font-size:.875rem}.login-back-link a:hover{color:var(--text-secondary)}@media(max-width:768px){.title{font-size:1.75rem}}@media(max-width:480px){.title{font-size:1.5rem;letter-spacing:.08em}.subtitle{font-size:.75rem}}.header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-xl);background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.header .title{font-size:1.25rem;margin:0;letter-spacing:.1em}.header-left{display:flex;align-items:center;gap:var(--spacing-lg)}.title-link{text-decoration:none;color:inherit}.title-link:hover{opacity:.9}.header-right{display:flex;align-items:center;gap:var(--spacing-lg)}.user-info{display:flex;align-items:center;gap:var(--spacing-sm);text-decoration:none;color:inherit}.user-info:hover{opacity:.9}.user-avatar{width:28px;height:28px;border-radius:50%;border:2px solid var(--border-color)}.user-avatar-placeholder{width:28px;height:28px;border-radius:50%;background:var(--bg-tertiary);border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:.75rem;font-weight:700;color:var(--text-secondary)}.user-name{font-family:var(--font-body);color:var(--text-secondary);font-size:.875rem}.sign-out-button{padding:6px 12px;font-family:var(--font-body);font-size:.75rem;color:var(--text-muted);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.sign-out-button:hover{color:var(--text-primary);border-color:var(--text-secondary)}.checkout-banner{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-xl);font-family:var(--font-body);font-size:.875rem;text-align:center;animation:slideDown .3s ease-out}.checkout-success{background:#4caf5026;color:var(--available);border-bottom:1px solid rgba(76,175,80,.3)}.checkout-canceled{background:#ef53501a;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.checkout-banner-dismiss{background:none;border:none;color:inherit;font-size:1.25rem;line-height:1;cursor:pointer;opacity:.7;transition:opacity .15s ease;padding:0}.checkout-banner-dismiss:hover{opacity:1}.main{flex:1;padding:var(--spacing-xl);overflow-x:auto}.session-tracker{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.session-tracker-header{display:flex;align-items:center;gap:var(--spacing-sm)}.session-tracker-icon{font-size:1.25rem}.session-tracker-days{font-family:var(--font-heading);font-size:1rem;color:var(--gold);font-weight:600}.session-tracker-flavor{font-family:var(--font-body);font-size:.8rem;color:var(--text-muted);font-style:italic;margin:0}.session-tracker-suggest{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color);flex-wrap:wrap;justify-content:center}.session-tracker-suggest-only{margin-top:0;padding-top:0;border-top:none}.session-tracker-suggest-text{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary)}.session-tracker-confirm{padding:var(--spacing-xs) var(--spacing-md);font-family:var(--font-body);font-size:.8rem;font-weight:600;color:var(--bg-primary);background:var(--gold);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease,transform .1s ease}.session-tracker-confirm:hover:not(:disabled){background:var(--gold-light)}.session-tracker-confirm:active:not(:disabled){transform:scale(.98)}.session-tracker-confirm:disabled{opacity:.7;cursor:not-allowed}.schedule-container{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.schedule-grid{display:grid;grid-template-columns:180px repeat(var(--date-columns, 16),64px);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;width:fit-content}.grid-header{display:contents}.grid-header>*{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.player-label{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-heading);font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}.date-header{padding:var(--spacing-sm);text-align:center;border-left:1px solid var(--border-color)}.day-of-week{display:block;font-family:var(--font-heading);font-size:.65rem;color:var(--gold);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.date-display{display:block;font-family:var(--font-body);font-size:.75rem;color:var(--text-secondary);margin:2px 0}.available-count{display:block;font-family:var(--font-body);font-size:.7rem;color:var(--available)}.date-header.all-available{background:var(--accent-primary-bg);border-bottom:2px solid var(--accent-primary)!important}.date-header.all-available .day-of-week{color:var(--accent-primary-light)}.date-header.all-available .date-display{color:var(--accent-primary-light);font-weight:600}.date-header.all-available .available-count{color:var(--accent-primary);font-weight:700}.party-icon{display:none;font-size:.7rem;margin-left:2px}.date-header.all-available .party-icon{display:inline}.availability-cell.all-available-column.available{background:var(--accent-primary-bg)!important}.player-row{display:contents}.player-row>*{border-bottom:1px solid var(--border-color)}.player-row:last-child>*{border-bottom:none}.player-row:hover>*{background:var(--bg-elevated)}.player-row.current-user>*{background:color-mix(in srgb,var(--accent-primary) 8%,transparent)}.player-row.current-user:hover>*{background:color-mix(in srgb,var(--accent-primary) 12%,transparent)}.player-info{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);min-width:0;overflow:hidden}.avatar{width:24px;height:24px;min-width:24px;border-radius:50%;border:1px solid var(--border-color);object-fit:cover}.avatar-placeholder{width:24px;height:24px;min-width:24px;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:.7rem;font-weight:700;color:var(--text-secondary)}.player-name{font-family:var(--font-body);font-size:.8rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.you-badge{font-family:var(--font-body);font-size:.7rem;color:var(--gold);margin-left:var(--spacing-xs)}.availability-cell{display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm);font-size:1rem;font-weight:600;background:transparent;border:none;border-left:1px solid var(--border-color);cursor:default;transition:background .1s ease}.availability-cell.clickable{cursor:pointer}.availability-cell.clickable:hover{background:var(--bg-elevated)}.availability-cell.available{color:var(--available);background:var(--available-bg)}.availability-cell.unavailable{color:var(--unavailable);background:var(--unavailable-bg)}.availability-cell.unset{color:var(--unset);background:var(--unset-bg)}.legend{display:flex;justify-content:center;gap:var(--spacing-lg);margin-top:var(--spacing-md);padding:var(--spacing-sm)}.legend-item{display:flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:.75rem;color:var(--text-muted)}.legend-dot{width:10px;height:10px;border-radius:2px}.legend-dot.available{background:var(--available)}.legend-dot.unavailable{background:var(--unavailable)}.legend-dot.unset{background:var(--unset)}.party-dates{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--accent-primary-bg);border:1px solid var(--accent-primary);border-radius:var(--radius-md)}.party-dates-header{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;justify-content:center}.party-dates-icon{font-size:1.25rem}.party-dates-label{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary)}.party-dates-next{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--gold-light)}.party-dates-countdown{font-family:var(--font-body);font-size:.875rem;color:var(--gold);font-weight:500}.party-dates-toggle{font-family:var(--font-body);font-size:.75rem;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);transition:color .15s ease}.party-dates-toggle:hover{color:var(--gold)}.party-dates-list{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-sm) var(--spacing-md)}.party-dates-item{font-family:var(--font-body);font-size:.8rem;color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm)}.footer{padding:var(--spacing-md) var(--spacing-xl);text-align:center;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.footer p{font-family:var(--font-body);color:var(--text-muted);font-size:.75rem;margin:var(--spacing-xs) 0}.footer .hint{color:var(--text-secondary)}.footer a{color:var(--gold);text-decoration:none}.footer a:hover{text-decoration:underline}.github-link{display:inline-flex;align-items:center;gap:4px}.admin-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);margin-bottom:var(--spacing-md);font-family:var(--font-body);font-size:.75rem;color:var(--accent-primary);background:var(--accent-primary-bg);border:1px solid var(--accent-primary);border-radius:var(--radius-sm)}.pending-badge{font-family:var(--font-body);font-size:.6rem;color:var(--text-muted);background:var(--bg-tertiary);padding:2px 6px;border-radius:var(--radius-sm);margin-left:var(--spacing-xs);text-transform:uppercase;letter-spacing:.05em}.player-row.unlinked{opacity:.7}.player-row.unlinked .player-name{color:var(--text-secondary)}.no-party{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);text-align:center}.no-party p{font-family:var(--font-body);font-size:1rem;color:var(--text-muted)}@media(max-width:1024px){.schedule-grid{grid-template-columns:minmax(120px,160px) repeat(var(--date-columns, 16),minmax(44px,64px))}}@media(max-width:768px){.header{flex-direction:column;gap:var(--spacing-md);text-align:center;padding:var(--spacing-md)}.header-left{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.header-right{flex-direction:column;gap:var(--spacing-sm)}.main{padding:var(--spacing-md)}.schedule-grid{grid-template-columns:minmax(100px,140px) repeat(var(--date-columns, 16),minmax(40px,56px))}.player-name{font-size:.75rem}.avatar,.avatar-placeholder{width:20px;height:20px}.avatar-placeholder,.day-of-week{font-size:.6rem}.date-display{font-size:.7rem}.available-count{font-size:.65rem}.legend{flex-wrap:wrap;gap:var(--spacing-md)}}@media(max-width:480px){.main{padding:var(--spacing-sm)}.schedule-grid{grid-template-columns:minmax(80px,100px) repeat(var(--date-columns, 16),minmax(36px,48px))}.player-info{gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm)}.player-name{font-size:.7rem}.you-badge,.pending-badge{display:none}.avatar,.avatar-placeholder{width:18px;height:18px}.availability-cell{font-size:.85rem;padding:var(--spacing-xs)}.admin-badge{font-size:.65rem;padding:2px 6px}.legend-item{font-size:.65rem}.legend-dot{width:8px;height:8px}.footer p{font-size:.65rem}}.profile-page{max-width:500px;margin:0 auto}.profile-header{margin-bottom:var(--spacing-xl)}.back-link{display:inline-block;font-family:var(--font-body);font-size:.875rem;color:var(--gold);text-decoration:none;margin-bottom:var(--spacing-md)}.back-link:hover{text-decoration:underline}.profile-header h2{font-family:var(--font-heading);font-size:1.5rem;color:var(--text-primary);margin:0}.profile-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-xl)}.profile-error{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-lg);background:var(--unavailable-bg);border:1px solid var(--unavailable);border-radius:var(--radius-sm);color:var(--unavailable);font-size:.875rem}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;margin-bottom:var(--spacing-xl)}.avatar-upload-button{position:relative;width:120px;height:120px;border-radius:50%;border:3px solid var(--border-color);background:var(--bg-tertiary);cursor:pointer;overflow:hidden;padding:0}.avatar-upload-button:hover{border-color:var(--gold)}.avatar-upload-button:disabled{cursor:wait;opacity:.7}.profile-avatar{width:100%;height:100%;object-fit:cover}.profile-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:3rem;font-weight:700;color:var(--text-secondary)}.avatar-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0009;color:#fff;font-family:var(--font-body);font-size:.75rem;font-weight:500;opacity:0;transition:opacity .15s ease}.avatar-upload-button:hover .avatar-overlay,.avatar-upload-button:disabled .avatar-overlay{opacity:1}.avatar-hint{margin-top:var(--spacing-sm);font-family:var(--font-body);font-size:.75rem;color:var(--text-muted)}.hidden-input{display:none}.profile-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.profile-label{display:flex;flex-direction:column;gap:var(--spacing-xs)}.profile-label span:first-child{font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--text-secondary)}.profile-input{padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:1rem;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease}.profile-input:focus{border-color:var(--gold)}.profile-input.disabled{opacity:.6;cursor:not-allowed}.input-hint{font-size:.7rem;color:var(--text-muted)}.save-button{padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-body);font-size:.875rem;font-weight:500;color:#fff;background:var(--accent-red);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease;align-self:flex-start}.save-button:hover:not(:disabled){background:var(--accent-red-hover)}.save-button:disabled{opacity:.5;cursor:not-allowed}.api-tokens-section{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--border-color)}.tokens-header h3{font-family:var(--font-heading);font-size:1.125rem;color:var(--text-primary);margin:0 0 var(--spacing-xs) 0}.tokens-description{font-size:.8rem;color:var(--text-muted);margin:0 0 var(--spacing-lg) 0}.tokens-loading,.no-tokens{font-size:.875rem;color:var(--text-muted);font-style:italic}.new-token-display{background:var(--bg-tertiary);border:2px solid var(--gold);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.new-token-warning{font-size:.875rem;color:var(--gold);margin-bottom:var(--spacing-sm)}.new-token-value{display:flex;gap:var(--spacing-sm);align-items:center;margin-bottom:var(--spacing-md)}.new-token-value code{flex:1;font-family:Monaco,Menlo,monospace;font-size:.8rem;padding:var(--spacing-sm);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);word-break:break-all;color:var(--text-primary)}.copy-button{padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-body);font-size:.75rem;font-weight:500;color:#fff;background:var(--accent-red);border:none;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.copy-button:hover{background:var(--accent-red-hover)}.dismiss-button{width:100%;padding:var(--spacing-sm);font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer}.dismiss-button:hover{background:var(--bg-secondary)}.tokens-list{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.token-item{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.token-info{display:flex;flex-direction:column;gap:2px;min-width:0}.token-name{font-weight:500;color:var(--text-primary);font-size:.875rem}.token-prefix{font-family:Monaco,Menlo,monospace;font-size:.75rem;color:var(--text-secondary)}.token-meta{font-size:.7rem;color:var(--text-muted)}.token-delete-button{padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-body);font-size:.75rem;color:var(--unavailable);background:transparent;border:1px solid var(--unavailable);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.token-delete-button:hover:not(:disabled){background:var(--unavailable-bg)}.token-delete-button:disabled{opacity:.5;cursor:not-allowed}.create-token-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.create-token-actions{display:flex;gap:var(--spacing-sm)}.cancel-button{padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer}.cancel-button:hover{background:var(--bg-tertiary)}.create-token-button{padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:.875rem;color:var(--text-primary);background:transparent;border:1px dashed var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.create-token-button:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.create-token-button:disabled{opacity:.5;cursor:not-allowed}.error-dismiss{background:none;border:none;color:inherit;font-size:1.25rem;cursor:pointer;padding:0;margin-left:var(--spacing-sm);opacity:.7}.error-dismiss:hover{opacity:1}.party-selector{position:relative}.party-selector-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:.875rem;color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.party-selector-button:hover{background:var(--bg-elevated);border-color:var(--text-secondary)}.party-selector-button.create{color:var(--gold);border-color:var(--gold)}.party-selector-button.create:hover{background:#c492501a}.party-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-selector-arrow{font-size:.6rem;color:var(--text-muted)}.party-dropdown{position:absolute;top:100%;left:0;margin-top:var(--spacing-xs);min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:0 4px 12px #0000004d;z-index:100;overflow:hidden}.party-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:.875rem;color:var(--text-primary);background:transparent;border:none;cursor:pointer;text-align:left;transition:background .1s ease}.party-option:hover{background:var(--bg-elevated)}.party-option.selected{background:#c492501a;color:var(--gold)}.party-option-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-check{color:var(--gold);font-size:.75rem}.party-dropdown-divider{height:1px;background:var(--border-color);margin:var(--spacing-xs) 0}.party-option.create-option{color:var(--gold)}.admin-link{font-family:var(--font-body);font-size:.875rem;color:var(--gold);text-decoration:none;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--gold);border-radius:var(--radius-sm);transition:all .15s ease}.admin-link:hover{background:#c492501a}@media(max-width:768px){.party-name{max-width:150px}.admin-link{font-size:.75rem;padding:var(--spacing-xs)}}@media(max-width:480px){.party-selector-button{padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.party-name{max-width:100px}}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);max-width:450px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-header h2{font-family:var(--font-heading);font-size:1.25rem;color:var(--text-primary);margin:0}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.modal-close:hover{color:var(--text-primary);background:var(--bg-elevated)}.modal-close:disabled{opacity:.5;cursor:not-allowed}.modal-form{padding:var(--spacing-lg)}.modal-error{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);background:var(--unavailable-bg);border:1px solid var(--unavailable);border-radius:var(--radius-sm);color:var(--unavailable);font-size:.875rem}.modal-label{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.modal-label span{font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--text-secondary)}.modal-input{padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:1rem;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease}.modal-input:focus{border-color:var(--gold)}.modal-input:disabled{opacity:.6;cursor:not-allowed}.modal-hint{font-family:var(--font-body);font-size:.75rem;color:var(--text-muted);margin-bottom:var(--spacing-lg)}.modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.modal-button{padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-body);font-size:.875rem;font-weight:500;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.modal-button.secondary{color:var(--text-secondary);background:var(--bg-tertiary)}.modal-button.secondary:hover:not(:disabled){background:var(--bg-elevated)}.modal-button.primary{color:#fff;background:var(--accent-red)}.modal-button.primary:hover:not(:disabled){background:var(--accent-red-hover)}.modal-button:disabled{opacity:.5;cursor:not-allowed}.game-type-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-sm);margin-top:var(--spacing-xs)}.game-type-option{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--spacing-sm) var(--spacing-xs);font-family:var(--font-body);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;text-align:center}.game-type-option:hover:not(:disabled){border-color:var(--text-secondary);background:var(--bg-elevated)}.game-type-option.selected{border-color:var(--gold);background:#c492501a}.game-type-option:disabled{opacity:.6;cursor:not-allowed}.game-type-label{font-size:.875rem;font-weight:600;color:var(--text-primary)}.game-type-option.selected .game-type-label{color:var(--gold)}.game-type-description{font-size:.65rem;color:var(--text-muted)}.modal-pricing{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--spacing-md);background:linear-gradient(180deg,var(--bg-tertiary) 0%,var(--bg-secondary) 100%);border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md);text-align:center}.modal-price{font-family:var(--font-heading);font-size:1.25rem;font-weight:700;color:var(--gold)}.modal-price-note{font-family:var(--font-body);font-size:.75rem;color:var(--text-secondary)}.modal-content--payment{max-width:480px}.payment-summary{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);margin-bottom:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-color)}.payment-summary-party{font-size:.875rem;color:var(--text-primary)}.payment-summary-amount{font-family:var(--font-heading);font-size:1rem;font-weight:700;color:var(--gold)}.payment-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.payment-element-container{min-height:200px}.payment-form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.payment-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-xl) 0}.payment-success-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:var(--available-bg);border:2px solid var(--available);border-radius:50%;font-size:2rem;color:var(--available);margin-bottom:var(--spacing-lg)}.payment-success h3{font-family:var(--font-heading);font-size:1.25rem;color:var(--gold-light);margin-bottom:var(--spacing-sm)}.payment-success p{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.payment-success-note{font-size:.75rem;color:var(--text-muted);font-style:italic}.update-payment-hint{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg)}@media(max-width:480px){.modal-content{margin:var(--spacing-sm)}.modal-header,.modal-form{padding:var(--spacing-md)}}.admin-panel{max-width:700px;margin:0 auto}.admin-header{margin-bottom:var(--spacing-xl)}.admin-header h2{font-family:var(--font-heading);font-size:1.5rem;color:var(--text-primary);margin:var(--spacing-md) 0 0}.admin-subtitle{font-family:var(--font-body);font-size:.875rem;color:var(--text-muted);margin-top:var(--spacing-xs)}.admin-error{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-lg);background:var(--unavailable-bg);border:1px solid var(--unavailable);border-radius:var(--radius-sm);color:var(--unavailable);font-size:.875rem}.admin-tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.admin-tab{padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s ease;margin-bottom:-1px}.admin-tab:hover{color:var(--text-primary)}.admin-tab.active{color:var(--gold);border-bottom-color:var(--gold)}.admin-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg)}.add-member-form{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.add-member-form h3,.members-list h3,.settings-form h3,.admin-list h3{font-family:var(--font-heading);font-size:1rem;color:var(--text-primary);margin:0 0 var(--spacing-md)}.form-row{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.form-input{flex:1;min-width:150px;padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:.875rem;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease}.form-input:focus{border-color:var(--gold)}.form-input:disabled{opacity:.6;cursor:not-allowed}.form-button{padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-body);font-size:.875rem;font-weight:500;color:#fff;background:var(--accent-red);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease}.form-button:hover:not(:disabled){background:var(--accent-red-hover)}.form-button:disabled{opacity:.5;cursor:not-allowed}.form-hint{font-family:var(--font-body);font-size:.75rem;color:var(--text-muted);margin-top:var(--spacing-sm)}.member-item,.admin-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-color)}.member-item:last-child,.admin-item:last-child{border-bottom:none}.member-info,.admin-info{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0;flex:1}.member-avatar{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-color);object-fit:cover}.member-avatar-placeholder{width:32px;height:32px;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:.75rem;font-weight:700;color:var(--text-secondary)}.member-details{display:flex;flex-direction:column;min-width:0}.member-name,.admin-name{font-family:var(--font-body);font-size:.875rem;color:var(--text-primary)}.member-email{font-family:var(--font-body);font-size:.75rem;color:var(--text-muted)}.member-admin-badge{font-family:var(--font-body);font-size:.65rem;color:var(--gold);background:#c4925026;padding:2px 6px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;margin-top:2px;width:fit-content}.member-pending{font-family:var(--font-body);font-size:.65rem;color:var(--text-muted);background:var(--bg-tertiary);padding:2px 6px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;margin-top:2px;width:fit-content}.member-actions{display:flex;gap:var(--spacing-xs);flex-shrink:0}.action-button{padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-body);font-size:.7rem;font-weight:500;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.action-button.promote{color:var(--available);background:transparent;border-color:var(--available)}.action-button.promote:hover{background:#48bb781a}.action-button.demote{color:var(--text-muted);background:transparent}.action-button.demote:hover{color:var(--text-secondary);background:var(--bg-elevated)}.action-button.remove{color:var(--unavailable);background:transparent;border-color:var(--unavailable)}.action-button.remove:hover{background:#e53e3e1a}.settings-form{margin-bottom:var(--spacing-xl)}.days-settings{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.days-settings h3{font-family:var(--font-heading);font-size:1rem;color:var(--text-primary);margin:0 0 var(--spacing-sm)}.days-selector{display:flex;gap:var(--spacing-sm);margin:var(--spacing-md) 0;flex-wrap:wrap}.day-toggle{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .15s ease;font-family:var(--font-body);font-weight:500;font-size:.875rem;min-width:3rem;text-align:center}.day-toggle:hover:not(:disabled){border-color:var(--primary);color:var(--text-primary)}.day-toggle.selected{background:var(--primary);border-color:var(--primary);color:#fff}.day-toggle:disabled{opacity:.6;cursor:not-allowed}.admin-list{margin-top:var(--spacing-lg)}.theme-selector{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.theme-selector h3{font-family:var(--font-heading);font-size:1rem;color:var(--text-primary);margin:0 0 var(--spacing-sm)}.theme-options{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-md);flex-wrap:wrap}.theme-option{flex:1;min-width:140px;max-width:180px;padding:var(--spacing-md);border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);text-align:center}.theme-option:hover:not(:disabled){border-color:var(--accent-primary);background:var(--bg-tertiary)}.theme-option.selected{border-color:var(--accent-primary);background:var(--bg-tertiary);box-shadow:0 0 0 1px var(--accent-primary)}.theme-option:disabled{opacity:.6;cursor:not-allowed}.theme-icon{font-size:1.75rem;line-height:1}.theme-name{font-family:var(--font-heading);font-size:.875rem;font-weight:600;color:var(--text-primary)}.theme-tagline{font-family:var(--font-body);font-size:.7rem;color:var(--text-muted)}.billing-tab{padding:var(--spacing-md) 0}.subscription-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg)}.subscription-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.subscription-header h3{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.subscription-status{font-family:var(--font-body);font-size:.75rem;font-weight:600;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em}.subscription-active{color:var(--available);background:#4caf5026}.subscription-past_due{color:#f59e0b;background:#f59e0b26}.subscription-canceled,.subscription-expired{color:var(--unavailable);background:#ef53501a}.subscription-info{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);margin:0}.subscription-details{display:flex;gap:var(--spacing-xl);margin-bottom:var(--spacing-lg)}.subscription-detail{display:flex;flex-direction:column;gap:2px}.detail-label{font-family:var(--font-body);font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.detail-value{font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--text-primary)}.subscription-warning{font-family:var(--font-body);font-size:.875rem;color:#f59e0b;background:#f59e0b1a;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg)}.billing-portal-button{width:100%;padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-body);font-size:.875rem;font-weight:600;color:var(--bg-primary);background:var(--gold);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.billing-portal-button:hover:not(:disabled){background:var(--gold-hover)}.billing-portal-button:disabled{opacity:.6;cursor:not-allowed}.billing-actions{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.billing-action-button{width:100%;padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-body);font-size:.875rem;font-weight:500;background:var(--gold);color:var(--bg-primary);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.billing-action-button:hover:not(:disabled){filter:brightness(1.1)}.billing-action-button:disabled{opacity:.6;cursor:not-allowed}.billing-action-button.secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.billing-action-button.secondary:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}.billing-action-button.cancel{background:transparent;color:var(--text-muted);border:1px solid var(--border-color)}.billing-action-button.cancel:hover:not(:disabled){border-color:var(--unavailable);color:var(--unavailable)}.billing-action-button.reactivate{background:var(--available);color:var(--bg-primary)}.billing-action-button.reactivate:hover:not(:disabled){filter:brightness(1.1)}.billing-hint{font-family:var(--font-body);font-size:.75rem;color:var(--text-muted);text-align:center;margin:var(--spacing-sm) 0 0}.no-subscription{text-align:center;padding:var(--spacing-xl)}.no-subscription p{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);margin:0 0 var(--spacing-sm)}@media(max-width:768px){.form-row{flex-direction:column}.form-input{min-width:100%}.member-actions{flex-direction:column;gap:var(--spacing-xs)}.action-button{font-size:.65rem}}@media(max-width:480px){.admin-content{padding:var(--spacing-md)}.member-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.member-actions{flex-direction:row;width:100%}}.landing-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-primary)}.landing-nav{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-xl);border-bottom:1px solid var(--border-color);position:sticky;top:0;background:var(--bg-primary);z-index:100}.landing-logo{text-decoration:none}.logo-text{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--gold-light)}.landing-nav-links{display:flex;align-items:center;gap:var(--spacing-lg)}.nav-link{color:var(--text-secondary);text-decoration:none;font-size:.875rem;transition:color .2s}.nav-link:hover{color:var(--text-primary)}.nav-link-primary{background:var(--accent-red);color:#fff;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md)}.nav-link-primary:hover{background:var(--accent-red-hover);color:#fff}.hero{padding:4rem var(--spacing-xl) 3rem;text-align:center;background:linear-gradient(180deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.hero-content{max-width:800px;margin:0 auto}.hero-title{font-family:var(--font-heading);font-size:3rem;font-weight:700;line-height:1.2;color:var(--text-primary);margin-bottom:var(--spacing-md)}.hero-title-accent{color:var(--gold)}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary);margin-bottom:var(--spacing-md)}.hero-tagline{font-style:italic;color:var(--text-muted);margin-bottom:var(--spacing-xl)}.hero-cta{display:flex;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.cta-button{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);font-weight:600;text-decoration:none;transition:all .2s;font-size:1rem}.cta-button-primary{background:var(--accent-red);color:#fff}.cta-button-primary:hover{background:var(--accent-red-hover);transform:translateY(-2px)}.cta-button-secondary{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-color)}.cta-button-secondary:hover{background:var(--bg-tertiary);border-color:var(--gold)}.hero-game-types{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);flex-wrap:wrap}.game-type-label{color:var(--text-muted);font-size:.875rem}.game-type-icons{display:flex;gap:var(--spacing-md)}.game-type{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);font-size:.875rem}.game-icon{width:20px;height:20px;fill:currentColor}.features{padding:3rem var(--spacing-xl) 4rem;background:var(--bg-secondary)}.features-content{max-width:1200px;margin:0 auto}.section-title{font-family:var(--font-heading);font-size:2rem;font-weight:700;text-align:center;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.section-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:var(--spacing-xl);font-size:1.1rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.feature-card{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:transform .2s,border-color .2s}.feature-card:hover{transform:translateY(-4px);border-color:var(--gold)}.feature-icon-wrapper{width:48px;height:48px;background:var(--bg-tertiary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-md)}.feature-icon{width:24px;height:24px;fill:var(--gold)}.feature-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.feature-description{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.developer-callout{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-top:var(--spacing-xl)}.developer-callout-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.developer-callout-text{color:var(--text-secondary);margin-bottom:var(--spacing-md)}.developer-callout-links{display:flex;gap:var(--spacing-md)}.developer-link{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--gold);text-decoration:none;font-size:.9rem}.developer-link:hover{color:var(--gold-light)}.developer-link-icon{width:18px;height:18px;fill:currentColor}.code-block{background:var(--bg-primary);border-radius:var(--radius-md);padding:var(--spacing-md);overflow-x:auto}.code-block code{font-family:var(--font-display);font-size:.8rem;color:var(--text-secondary);white-space:pre}.pricing{padding:5rem var(--spacing-xl);background:var(--bg-primary)}.pricing-content{max-width:600px;margin:0 auto;text-align:center}.pricing-card{background:var(--bg-secondary);border:2px solid var(--gold);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-top:var(--spacing-xl)}.pricing-card-header{margin-bottom:var(--spacing-lg)}.pricing-badge{display:inline-block;background:var(--gold);color:var(--bg-primary);font-size:.75rem;font-weight:600;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-md)}.pricing-amount{display:flex;align-items:baseline;justify-content:center;gap:var(--spacing-xs)}.pricing-currency{font-size:1.5rem;color:var(--text-secondary)}.pricing-value{font-size:4rem;font-weight:700;color:var(--text-primary);line-height:1}.pricing-period{font-size:1.25rem;color:var(--text-muted)}.pricing-features{list-style:none;text-align:left;margin-bottom:var(--spacing-lg)}.pricing-feature{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.pricing-feature:last-child{border-bottom:none}.check-icon{width:20px;height:20px;fill:var(--available);flex-shrink:0}.pricing-cta{display:block;width:100%;padding:var(--spacing-md);background:var(--accent-red);color:#fff;text-decoration:none;border-radius:var(--radius-md);font-weight:600;font-size:1.1rem;transition:background .2s}.pricing-cta:hover{background:var(--accent-red-hover)}.pricing-note{margin-top:var(--spacing-md);color:var(--text-muted);font-size:.875rem}.pricing-demo-note{margin-top:var(--spacing-xl);color:var(--text-secondary)}.demo-link{color:var(--gold);text-decoration:none}.demo-link:hover{color:var(--gold-light)}.landing-footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:var(--spacing-xl)}.footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 2fr;gap:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid var(--border-color)}.footer-logo{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--gold-light);text-decoration:none}.footer-tagline{color:var(--text-muted);font-size:.875rem;margin-top:var(--spacing-xs)}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.footer-section-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:var(--spacing-sm)}.footer-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.footer-link{color:var(--text-secondary);text-decoration:none;font-size:.875rem}.footer-link:hover{color:var(--text-primary)}.footer-bottom{max-width:1200px;margin:0 auto;padding-top:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.footer-copyright,.footer-credits{color:var(--text-muted);font-size:.8rem}.heart{color:var(--accent-red)}.placeholder-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);text-align:center;padding:var(--spacing-xl)}.placeholder-page h1{font-size:2rem;color:var(--text-primary)}.placeholder-page p{color:var(--text-secondary)}.placeholder-page a{color:var(--gold);text-decoration:none}.placeholder-page a:hover{color:var(--gold-light)}@media(max-width:768px){.landing-nav{flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md)}.landing-nav-links{flex-wrap:wrap;justify-content:center;gap:var(--spacing-sm)}.hero{padding:2.5rem var(--spacing-md) 2rem}.hero-title{font-size:2rem}.hero-cta{flex-direction:column}.cta-button{width:100%}.features{padding:2rem var(--spacing-md) 3rem}.features-grid,.developer-callout{grid-template-columns:1fr}.pricing{padding:3rem var(--spacing-md)}.footer-content{grid-template-columns:1fr;text-align:center}.footer-links{grid-template-columns:1fr;gap:var(--spacing-xl)}.footer-bottom{flex-direction:column;gap:var(--spacing-sm);text-align:center}}.demo-page{min-height:100vh;background:var(--bg-primary);color:var(--text-primary)}.demo-loading,.demo-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:var(--spacing-md);text-align:center;padding:var(--spacing-lg)}.demo-error h2{font-family:var(--font-heading);font-size:1.5rem;color:var(--unavailable)}.demo-back-link{color:var(--gold);text-decoration:none;font-family:var(--font-body);transition:opacity .15s ease}.demo-back-link:hover{opacity:.8}.demo-nav{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-xl);border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.demo-logo{font-family:var(--font-heading);font-size:1.25rem;font-weight:700;color:var(--text-primary);text-decoration:none;transition:color .15s ease}.demo-logo:hover{color:var(--gold)}.demo-signup-button{padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-body);font-size:.875rem;font-weight:600;color:var(--bg-primary);background:var(--gold);border:none;border-radius:var(--radius-sm);text-decoration:none;transition:all .15s ease}.demo-signup-button:hover{background:var(--gold-hover);transform:translateY(-1px)}.demo-content{max-width:1200px;margin:0 auto;padding:var(--spacing-xl)}.demo-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.demo-title{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--text-primary);margin:0}.demo-badge{font-family:var(--font-body);font-size:.75rem;font-weight:600;color:var(--gold);background:#c4925026;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em}.demo-subtitle{font-family:var(--font-body);font-size:1rem;color:var(--text-secondary);margin:0 0 var(--spacing-xl);max-width:600px}.demo-grid-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-2xl);overflow-x:auto}.demo-schedule-grid{display:flex;flex-direction:column;min-width:max-content}.demo-grid-header{display:flex;border-bottom:2px solid var(--border-color)}.demo-grid-row{display:flex;border-bottom:1px solid var(--border-color)}.demo-grid-row:last-child{border-bottom:none}.demo-grid-cell{display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:.875rem}.demo-grid-corner{min-width:160px;justify-content:flex-start;font-weight:600;color:var(--text-secondary);background:var(--bg-tertiary)}.demo-date-cell{min-width:70px;flex-direction:column;gap:2px;padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-tertiary)}.demo-date-day{font-size:.65rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.demo-date-label{font-size:.8rem;font-weight:500;color:var(--text-secondary)}.demo-member-cell{min-width:160px;justify-content:flex-start;background:var(--bg-elevated)}.demo-member-name{font-weight:500;color:var(--text-primary)}.demo-availability-cell{min-width:70px;font-weight:600;cursor:default;transition:all .15s ease}.demo-availability-cell.demo-available{color:var(--available);background:#4caf501a}.demo-availability-cell.demo-unavailable{color:var(--unavailable);background:#ef53501a}.demo-availability-cell.demo-unset{color:var(--text-muted);background:transparent}.demo-cta-section{text-align:center;background:linear-gradient(180deg,var(--bg-tertiary) 0%,var(--bg-secondary) 100%);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-2xl);margin-bottom:var(--spacing-xl)}.demo-cta-section h2{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0 0 var(--spacing-sm)}.demo-cta-section p{font-family:var(--font-body);font-size:1rem;color:var(--text-secondary);margin:0 0 var(--spacing-lg)}.demo-cta-buttons{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.demo-features{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg)}.demo-features h3{font-family:var(--font-heading);font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 var(--spacing-md)}.demo-feature-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-sm);list-style:none;padding:0;margin:0}.demo-feature-list li{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);padding-left:var(--spacing-lg);position:relative}.demo-feature-list li:before{content:"✓";position:absolute;left:0;color:var(--available);font-weight:600}.demo-footer{text-align:center;padding:var(--spacing-xl);border-top:1px solid var(--border-color);background:var(--bg-secondary)}.demo-footer a{color:var(--text-secondary);text-decoration:none;font-family:var(--font-body);font-size:.875rem;transition:color .15s ease}.demo-footer a:hover{color:var(--gold)}@media(max-width:768px){.demo-nav{padding:var(--spacing-sm) var(--spacing-md)}.demo-content{padding:var(--spacing-md)}.demo-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.demo-title{font-size:1.5rem}.demo-grid-container{padding:var(--spacing-sm);margin-left:calc(-1 * var(--spacing-md));margin-right:calc(-1 * var(--spacing-md));border-radius:0;border-left:none;border-right:none}.demo-grid-corner,.demo-member-cell{min-width:120px}.demo-date-cell,.demo-availability-cell{min-width:55px}.demo-cta-section{padding:var(--spacing-xl) var(--spacing-md)}.demo-cta-buttons{flex-direction:column}.demo-cta-buttons .cta-button{width:100%}}.guide-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-primary);color:var(--text-primary)}.guide-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-xl);background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.guide-logo{font-family:var(--font-heading);font-size:1.25rem;font-weight:700;color:var(--text-primary);text-decoration:none;transition:color .15s ease}.guide-logo:hover{color:var(--gold)}.guide-nav{display:flex;gap:var(--spacing-md);align-items:center}.guide-nav-link{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);text-decoration:none;transition:color .15s ease}.guide-nav-link:hover{color:var(--text-primary)}.guide-nav-cta{padding:var(--spacing-xs) var(--spacing-md);color:var(--bg-primary);background:var(--gold);border-radius:var(--radius-sm)}.guide-nav-cta:hover{color:var(--bg-primary);background:var(--gold-hover)}.guide-mobile-menu-toggle{display:none;position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);width:48px;height:48px;font-size:1.5rem;background:var(--gold);border:none;border-radius:50%;color:var(--bg-primary);cursor:pointer;z-index:1001;box-shadow:0 2px 8px #0000004d}.guide-container{display:flex;flex:1}.guide-sidebar{width:250px;padding:var(--spacing-xl);background:var(--bg-secondary);border-right:1px solid var(--border-color)}.guide-sidebar-title{font-family:var(--font-heading);font-size:.875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--spacing-md)}.guide-sidebar-nav{display:flex;flex-direction:column;gap:var(--spacing-xs)}.guide-sidebar-link{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);text-decoration:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);transition:all .15s ease}.guide-sidebar-link:hover{background:var(--bg-tertiary);color:var(--text-primary)}.guide-sidebar-link.active{background:#c4925026;color:var(--gold);font-weight:500}.guide-content{flex:1;padding:var(--spacing-2xl);overflow-y:auto}.guide-content-inner{max-width:800px;margin:0 auto}.guide-h2{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 var(--spacing-lg);border-bottom:2px solid var(--border-color);padding-bottom:var(--spacing-sm)}.guide-h3{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:var(--spacing-xl) 0 var(--spacing-md)}.guide-h4{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--text-secondary);margin:var(--spacing-lg) 0 var(--spacing-sm)}.guide-paragraph{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--text-secondary);margin:0 0 var(--spacing-md)}.guide-list{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--text-secondary);margin:0 0 var(--spacing-md);padding-left:var(--spacing-xl)}.guide-list li{margin-bottom:var(--spacing-xs)}.guide-link{color:var(--gold);text-decoration:none;transition:opacity .15s ease}.guide-link:hover{opacity:.8;text-decoration:underline}.guide-inline-code{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.85em;color:var(--gold);background:#c492501a;padding:.15em .4em;border-radius:var(--radius-sm)}.guide-code-block{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.875rem;line-height:1.5;color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);overflow-x:auto;margin:0 0 var(--spacing-md)}.guide-table{width:100%;border-collapse:collapse;margin:0 0 var(--spacing-md);font-family:var(--font-body);font-size:.875rem}.guide-table th,.guide-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border:1px solid var(--border-color)}.guide-table th{background:var(--bg-tertiary);font-weight:600;color:var(--text-primary)}.guide-table td{color:var(--text-secondary)}.guide-footer{text-align:center;padding:var(--spacing-lg);background:var(--bg-secondary);border-top:1px solid var(--border-color)}.guide-footer a{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);text-decoration:none;transition:color .15s ease}.guide-footer a:hover{color:var(--gold)}@media(max-width:768px){.guide-header{padding:var(--spacing-sm) var(--spacing-md)}.guide-nav{display:none}.guide-mobile-menu-toggle{display:block}.guide-sidebar{position:fixed;top:0;left:0;height:100vh;z-index:1000;transform:translate(-100%);transition:transform .3s ease}.guide-sidebar.open{transform:translate(0)}.guide-content{padding:var(--spacing-md)}.guide-h2{font-size:1.5rem}.guide-h3{font-size:1.125rem}.guide-code-block{font-size:.75rem}}.signup-page{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xl) var(--spacing-md);background:linear-gradient(180deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.signup-container{width:100%;max-width:520px}.signup-header{text-align:center;margin-bottom:var(--spacing-xl)}.signup-header h1{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.signup-header p{font-size:1rem;color:var(--text-secondary)}.signup-steps{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-xl)}.signup-step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.signup-step-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-family:var(--font-heading);font-size:.875rem;font-weight:700;background:var(--bg-tertiary);border:2px solid var(--border-color);color:var(--text-muted);transition:all .2s ease}.signup-step-label{font-size:.75rem;color:var(--text-muted);transition:color .2s ease}.signup-step.active .signup-step-number{background:var(--gold);border-color:var(--gold);color:var(--bg-primary)}.signup-step.active .signup-step-label{color:var(--gold)}.signup-step.completed .signup-step-number{background:var(--available);border-color:var(--available);color:#fff}.signup-step.completed .signup-step-number:before{content:"✓"}.signup-step.completed .signup-step-label{color:var(--available)}.signup-step-connector{width:40px;height:2px;background:var(--border-color);margin:0 var(--spacing-xs);margin-bottom:24px}.signup-form{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-xl)}.signup-error{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);background:var(--unavailable-bg);border:1px solid var(--unavailable);border-radius:var(--radius-sm);color:var(--unavailable);font-size:.875rem;text-align:center}.signup-label{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.signup-label>span:first-child{font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--text-secondary)}.signup-input{padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:1rem;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease}.signup-input:focus{border-color:var(--gold)}.signup-input:disabled{opacity:.6;cursor:not-allowed}.signup-hint{font-size:.75rem;color:var(--text-muted)}.signup-pricing{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--spacing-md);background:linear-gradient(180deg,var(--bg-tertiary) 0%,var(--bg-secondary) 100%);border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg);text-align:center}.signup-price{font-family:var(--font-heading);font-size:1.25rem;font-weight:700;color:var(--gold)}.signup-price-note{font-family:var(--font-body);font-size:.75rem;color:var(--text-secondary)}.signup-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.signup-button{padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-body);font-size:.875rem;font-weight:500;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.signup-button.secondary{color:var(--text-secondary);background:var(--bg-tertiary)}.signup-button.secondary:hover:not(:disabled){background:var(--bg-elevated)}.signup-button.primary{color:#fff;background:var(--accent-red)}.signup-button.primary:hover:not(:disabled){background:var(--accent-red-hover)}.signup-button:disabled{opacity:.5;cursor:not-allowed}.signup-auth{text-align:center}.signup-auth-success{margin-bottom:var(--spacing-xl)}.signup-auth-check{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;background:var(--available-bg);border:2px solid var(--available);border-radius:50%;font-size:2rem;color:var(--available);margin-bottom:var(--spacing-lg)}.signup-auth-success h3{font-family:var(--font-heading);font-size:1.25rem;color:var(--gold-light);margin-bottom:var(--spacing-sm)}.signup-auth-success p{font-size:.875rem;color:var(--text-secondary);line-height:1.5}.signup-auth-options{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.signup-auth-note{font-size:.75rem;color:var(--text-muted);font-style:italic}.signup-auth-divider{display:flex;align-items:center;gap:var(--spacing-md);margin:var(--spacing-lg) 0}.signup-auth-divider:before,.signup-auth-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.signup-auth-divider span{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.signup-email-form{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.signup-email-form .signup-input{text-align:center}.signup-email-sent{padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);background:var(--available-bg);border:1px solid var(--available);border-radius:var(--radius-sm)}.signup-email-sent p:first-child{font-size:1rem;font-weight:500;color:var(--available);margin-bottom:var(--spacing-xs)}.signup-email-sent-hint{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-md)}.signup-email-retry{padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-body);font-size:.75rem;color:var(--text-secondary);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.signup-email-retry:hover{background:var(--bg-tertiary);color:var(--text-primary)}@media(max-width:480px){.signup-page{padding:var(--spacing-md)}.signup-form{padding:var(--spacing-lg)}.signup-steps{gap:0}.signup-step-connector{width:24px}.signup-step-label{display:none}}
