@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,400;0,14..32,500;0,14..32,600;0,14..32,700;0,14..32,800&display=swap";:root{--bg-base: #07090f;--bg-mid: #0d1117;--bg-light: #161b22;--bg-elevated: #1c2433;--bg-sticky: rgba(7, 9, 15, .97);--gradient-bg: linear-gradient(160deg, #07090f 0%, #0d1117 60%, #111827 100%);--surface: rgba(255, 255, 255, .035);--surface-raised: rgba(255, 255, 255, .06);--surface-hover: rgba(255, 255, 255, .09);--surface-active: rgba(255, 255, 255, .13);--border: rgba(255, 255, 255, .08);--border-mid: rgba(255, 255, 255, .13);--border-strong: rgba(255, 255, 255, .2);--text: #f0f6fc;--text-soft: #cdd9e5;--text-muted: #8b949e;--text-subtle: #6e7681;--text-disabled: #484f58;--primary: #f59e0b;--primary-light: #fbbf24;--primary-dark: #d97706;--primary-subtle: rgba(245, 158, 11, .1);--primary-border: rgba(245, 158, 11, .32);--primary-glow: 0 0 24px rgba(245, 158, 11, .28);--primary-glow-hover: 0 0 36px rgba(245, 158, 11, .42);--primary-tap: rgba(245, 158, 11, .14);--gradient-primary: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);--gradient-primary-hover: linear-gradient(135deg, #fcd34d 0%, #fbbf24 100%);--blue: #58a6ff;--blue-light: #79c0ff;--blue-dark: #388bfd;--blue-subtle: rgba(88, 166, 255, .1);--blue-border: rgba(88, 166, 255, .3);--blue-glow: 0 0 24px rgba(88, 166, 255, .24);--blue-tap: rgba(88, 166, 255, .14);--gradient-blue: linear-gradient(135deg, #58a6ff 0%, #388bfd 100%);--green: #3fb950;--green-subtle: rgba(63, 185, 80, .1);--green-border: rgba(63, 185, 80, .3);--red: #f85149;--red-subtle: rgba(248, 81, 73, .1);--red-border: rgba(248, 81, 73, .3);--amber: #f59e0b;--shadow-xs: 0 1px 3px rgba(0, 0, 0, .3);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .6);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .7);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px}[data-theme=light]{--bg-base: #ffffff;--bg-mid: #f6f8fa;--bg-light: #eef1f5;--bg-elevated: #e3e8ef;--bg-sticky: rgba(246, 248, 250, .97);--gradient-bg: linear-gradient(160deg, #f8fafc 0%, #f0f4f8 60%, #e8ecf2 100%);--surface: rgba(0, 0, 0, .03);--surface-raised: rgba(0, 0, 0, .055);--surface-hover: rgba(0, 0, 0, .08);--surface-active: rgba(0, 0, 0, .12);--border: rgba(0, 0, 0, .08);--border-mid: rgba(0, 0, 0, .12);--border-strong: rgba(0, 0, 0, .2);--text: #0d1117;--text-soft: #24292f;--text-muted: #57606a;--text-subtle: #6e7781;--text-disabled: #8c959f;--primary: #d97706;--primary-light: #f59e0b;--primary-dark: #b45309;--primary-subtle: rgba(217, 119, 6, .09);--primary-border: rgba(217, 119, 6, .3);--primary-glow: 0 0 20px rgba(217, 119, 6, .18);--primary-glow-hover: 0 0 28px rgba(217, 119, 6, .28);--primary-tap: rgba(217, 119, 6, .12);--gradient-primary: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--gradient-primary-hover: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);--blue: #0969da;--blue-light: #218bff;--blue-subtle: rgba(9, 105, 218, .09);--blue-border: rgba(9, 105, 218, .28);--green: #1a7f37;--green-subtle: rgba(26, 127, 55, .09);--green-border: rgba(26, 127, 55, .28);--red: #cf222e;--red-subtle: rgba(207, 34, 46, .09);--red-border: rgba(207, 34, 46, .28);--shadow-xs: 0 1px 3px rgba(0, 0, 0, .08);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .14);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .18)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100svh;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:.9375rem;line-height:1.6;font-feature-settings:"cv02","cv03","cv04","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;background:var(--gradient-bg);color:var(--text)}::selection{background:var(--primary-subtle);color:var(--primary-light)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-elevated);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}@supports (-webkit-touch-callout: none){html,body{min-height:-webkit-fill-available}}button,a,[role=button]{-webkit-tap-highlight-color:var(--primary-tap);touch-action:manipulation}input,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-md)}select{border-radius:var(--radius-md)}:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:var(--radius-sm)}.scrollable{-webkit-overflow-scrolling:touch;overflow-x:auto}.mobile-scroll-hint{display:none}@media (max-width: 768px){.mobile-scroll-hint{display:block}}.app{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1.5rem 3rem}.logo-container{margin-bottom:2rem;filter:drop-shadow(0 4px 28px rgba(245,158,11,.35));animation:float 4s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.main-title{font-size:3.5rem;font-weight:800;letter-spacing:-.045em;text-align:center;margin:0 0 1rem;background:linear-gradient(135deg,#fbbf24,#fff 55%,#e2e8f0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1}.subtitle{font-size:1.1rem;color:var(--text-muted);margin:0 0 2.5rem;font-weight:400;line-height:1.75;max-width:520px;text-align:center}.coming-soon-box{background:linear-gradient(145deg,var(--bg-light) 0%,var(--bg-mid) 100%);border:1px solid var(--border-mid);border-radius:var(--radius-xl);padding:2.5rem 3rem;text-align:center;max-width:480px;width:100%;box-shadow:var(--shadow-lg),inset 0 1px #ffffff0f;position:relative;overflow:hidden}.coming-soon-box:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.coming-soon-title{font-size:1.5rem;color:var(--text);margin:0 0 .75rem;font-weight:700;letter-spacing:-.025em}.description{font-size:.9375rem;line-height:1.7;color:var(--text-muted);margin:0}.teams-carousel{overflow:hidden;width:100%;max-width:1100px;margin:0 0 2.5rem;position:relative;mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%)}.teams-track{display:flex;gap:.875rem;animation:scroll 36s linear infinite}.teams-track:hover{animation-play-state:paused}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.team-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.875rem 1rem;background:var(--bg-light);border:1px solid var(--border-mid);border-radius:var(--radius-md);min-width:96px;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;cursor:default}.team-card:hover{transform:translateY(-4px);background:var(--bg-elevated);border-color:var(--primary-border);box-shadow:var(--shadow-md)}.team-crest{width:52px;height:52px;object-fit:contain}.team-name{font-size:.725rem;font-weight:500;text-align:center;color:var(--text-muted);white-space:nowrap}.leagues-button{background:var(--gradient-primary);color:#07090f;border:none;padding:14px 36px;border-radius:var(--radius-lg);font-size:.9375rem;font-weight:700;font-family:inherit;cursor:pointer;margin:1.5rem .5rem 0;transition:background .2s,box-shadow .2s,transform .15s;text-decoration:none;display:inline-block;letter-spacing:.02em;box-shadow:var(--primary-glow);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.leagues-button:hover{background:var(--gradient-primary-hover);box-shadow:var(--primary-glow-hover);transform:translateY(-2px)}.leagues-button:active{transform:translateY(0)}.signup-page{min-height:100vh;color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.25rem}.signup-page h1{font-size:2.25rem;margin-bottom:1.75rem;font-weight:800;letter-spacing:-.04em;text-align:center}.btn-facebook{width:180px;height:40px;margin-top:10px;border:1px solid #dadce0;border-radius:4px;background:#1877f2;color:#fff;cursor:pointer;font-size:14px}.btn-email{width:180px;height:40px;margin-top:10px;border:1px solid #dadce0;border-radius:4px;background:var(--bg-base);color:var(--text);cursor:pointer;font-size:14px}.suspense-fallback{text-align:center;padding:3rem;color:var(--text-muted)}.signup-form{background:linear-gradient(145deg,var(--bg-light) 0%,var(--bg-mid) 100%);border:1px solid var(--border-mid);padding:2rem;border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-lg),inset 0 1px #ffffff0d;position:relative;overflow:hidden}.signup-form:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary)}.signup-form h2{margin:0 0 1.5rem;font-size:1.2rem;font-weight:700;letter-spacing:-.025em;color:var(--text)}.form-group{margin-bottom:1.125rem;display:flex;flex-direction:column}.form-group label{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;margin-bottom:.4rem;font-weight:600;font-size:.825rem;color:var(--text-soft);letter-spacing:.02em;text-transform:uppercase}.form-group input,.form-group select{width:100%;padding:.75rem .9rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-base);color:var(--text);font-size:.9375rem;font-family:inherit;box-sizing:border-box;transition:border-color .15s,background .15s,box-shadow .15s}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary);background:var(--bg-base);box-shadow:0 0 0 3px var(--primary-subtle)}.form-group input::placeholder{color:var(--text-disabled)}.form-group select option{background:var(--bg-mid);color:var(--text)}.form-group select option:disabled{color:var(--text-disabled);font-style:italic}.signup-form button{width:100%;background:var(--gradient-primary);color:#07090f;border:none;padding:.8125rem;border-radius:var(--radius-lg);font-size:.9375rem;font-weight:700;cursor:pointer;font-family:inherit;letter-spacing:.02em;transition:background .2s,box-shadow .2s,transform .15s;box-shadow:var(--primary-glow);-webkit-tap-highlight-color:transparent;touch-action:manipulation;text-transform:uppercase}.signup-form button:hover:not(:disabled){background:var(--gradient-primary-hover);box-shadow:var(--primary-glow-hover);transform:translateY(-1px)}.signup-form button:active:not(:disabled){transform:translateY(0)}.signup-form button:disabled{opacity:.42;cursor:not-allowed}.message{margin-top:1rem;text-align:center;font-weight:500;font-size:.875rem;padding:.75rem 1rem;border-radius:var(--radius-md)}.form-group input[type=checkbox]{width:13px;height:13px;margin:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface-raised);border:1.5px solid var(--border-strong);border-radius:3px;position:relative;transition:background .15s,border-color .15s;flex-shrink:0}.form-group input[type=checkbox]:checked{background:var(--primary);border-color:var(--primary)}.form-group input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#07090f;font-size:9px;font-weight:800}.form-group--toggle{flex-direction:row;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem .9rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-raised)}.form-group--toggle label{margin-bottom:0;text-transform:uppercase;color:var(--text-soft)}[data-theme=light] .form-group--toggle label{color:#000}.form-group--toggle input[type=checkbox]{width:13px;height:13px;flex-shrink:0}.wildcard-checkbox{width:13px;height:13px;accent-color:var(--primary);flex-shrink:0}.wildcard-label{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600;font-size:.9375rem;text-transform:none}.wildcard-label.disabled{background:none!important;-webkit-text-fill-color:var(--text-disabled)!important;color:var(--text-disabled)!important;font-style:italic}.game-id-container{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:1.5rem 0 .5rem;padding:.75rem 1rem;background:var(--primary-subtle);border:1px solid var(--primary-border);border-radius:var(--radius-md)}.game-id-text{color:var(--primary-light);font-weight:600;font-size:.85rem;font-family:SF Mono,Monaco,Courier New,monospace}.copy-button{padding:5px 14px;background:var(--primary);color:#07090f;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.775rem;font-weight:700;font-family:inherit;flex-shrink:0;transition:background .15s,transform .15s}.copy-button:hover{background:var(--primary-light);transform:translateY(-1px)}.leagues-page{color:var(--text);padding:2rem;max-width:1200px;margin:0 auto;width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:0}.leagues-page h1{margin:0 0 .3rem;font-size:1.875rem;font-weight:800;letter-spacing:-.04em;line-height:1.2}.leagues-page h2{margin:0 0 1.125rem;font-size:1.2rem;font-weight:700;letter-spacing:-.02em}.header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.875rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border)}.header__title-row{display:flex;align-items:center;gap:1rem;width:100%}.header__title-row h1{flex:1;margin:0}.header__title-row .copy-button{margin-left:auto}.back-button{background:var(--surface-raised);border:1px solid var(--border-mid);color:var(--text-muted);padding:7px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:.85rem;font-weight:500;font-family:inherit;flex-shrink:0;transition:background .15s,color .15s,border-color .15s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.back-button:hover{background:var(--surface-hover);color:var(--text);border-color:var(--border-strong)}.league-tabs{display:flex;gap:0;margin-bottom:1.875rem;background:var(--bg-mid);border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:.3rem;width:100%;position:sticky;top:60px;z-index:50;box-shadow:var(--shadow-md)}.tab{background:transparent;border:1px solid transparent;color:var(--text-muted);padding:9px 0;border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;font-weight:500;font-family:inherit;flex:1;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.tab:hover{background:var(--surface-raised);color:var(--text-soft)}.tab.active{background:var(--gradient-primary);color:#07090f;font-weight:700;border-color:transparent;box-shadow:var(--primary-glow)}.tab-badge{display:inline-flex;align-items:center;justify-content:center;background:var(--primary);color:#07090f;border-radius:999px;font-size:.7rem;font-weight:700;min-width:1.2em;height:1.2em;padding:0 .3em;margin-left:.4em;line-height:1}.tab.active .tab-badge{background:#07090f;color:var(--primary)}.fixtures-container{flex:1;display:flex;flex-direction:column;max-width:100%}.fixtures-container h2{font-size:1.35rem;margin-bottom:1.25rem;letter-spacing:-.025em}.loading{text-align:center;font-size:.9375rem;color:var(--text-muted);padding:4rem 2rem}.date-group{margin-bottom:2.5rem}.date-header{font-size:.75rem;color:var(--text-subtle);font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem;padding-bottom:.6rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.5rem}.date-header.clickable{cursor:pointer;transition:color .15s}.date-header.clickable:hover{color:var(--text-muted)}.collapse-icon{font-size:.8rem;color:var(--text-disabled)}.fixtures-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.fixture-card{background:var(--bg-light);border:1px solid var(--border-mid);border-radius:var(--radius-lg);padding:1.25rem;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;position:relative;overflow:hidden}.fixture-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--border-mid);transition:background .2s}.fixture-card:hover{transform:translateY(-3px);background:var(--bg-elevated);border-color:var(--border-strong);box-shadow:var(--shadow-lg)}.fixture-card:hover:before{background:var(--gradient-primary)}.fixture-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.gameweek{font-size:.725rem;color:var(--text-subtle);font-weight:600;letter-spacing:.05em;text-transform:uppercase}.status{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 9px;border-radius:var(--radius-full)}.teams{display:flex;align-items:center;justify-content:space-between;margin:.875rem 0;gap:.5rem}.team{display:flex;flex-direction:column;align-items:center;gap:.3rem;flex:1}.team.home{align-items:flex-start}.team.away{align-items:flex-end}.team-info{display:flex;align-items:center;gap:.425rem}.team.away .team-info{flex-direction:row-reverse}.team-name{font-size:.875rem;font-weight:600;color:var(--text-soft)}.fixtures-grid .team-crest{width:22px;height:22px;object-fit:contain}.score{font-size:1.625rem;font-weight:800;color:var(--primary-light);letter-spacing:-.03em;flex-shrink:0}.vs{font-size:.75rem;color:var(--text-subtle);font-weight:500;flex-shrink:0}.fixture-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border);font-size:.75rem;color:var(--text-subtle)}.kickoff{font-size:.75rem}.winner{font-size:.75rem;color:var(--primary-light);font-weight:600}.form-container{display:flex;gap:1.25rem;margin-top:1.75rem;flex-wrap:wrap;align-items:flex-start}.form-container>.signup-form{flex:1;min-width:0}.leaderboard-container{background:var(--bg-light);border:1px solid var(--border-mid);border-radius:var(--radius-lg);overflow:hidden;margin-top:.5rem}.player-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;border-bottom:1px solid var(--border);font-size:.875rem;transition:background .12s}.player-row:last-child{border-bottom:none}.player-row:hover{background:var(--surface)}.dashboard-table{background:var(--bg-light);border:1px solid var(--border-mid);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:.5rem}.dashboard-table table{width:100%;border-collapse:collapse;font-size:.875rem}.dashboard-table thead tr{border-bottom:1px solid var(--border-strong)}.dashboard-table th{padding:.8125rem 1rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--text-subtle);white-space:nowrap;background:var(--bg-mid)}.dashboard-table td{padding:.8125rem 1rem;border-bottom:1px solid var(--border);color:var(--text-soft);white-space:nowrap}.dashboard-table tbody tr:last-child td{border-bottom:none}.dashboard-table tbody tr{transition:background .12s;cursor:pointer}.dashboard-table tbody tr:hover{background:var(--surface-raised)}.gt-league{display:none}.gt-copy{display:none;padding:3px 10px;font-size:.7rem;font-weight:600;font-family:inherit;color:var(--text-subtle);background:var(--surface-raised);border:1px solid var(--border-mid);border-radius:var(--radius-sm);cursor:pointer;transition:color .15s,background .15s,border-color .15s;width:fit-content}.gt-copy:hover{color:var(--text-muted);background:var(--surface-hover);border-color:var(--border-strong)}.admin-page{max-width:820px;margin:0 auto;padding:2rem;color:var(--text)}.admin-page h1{text-align:center;margin-bottom:2rem;font-size:1.875rem;font-weight:800;letter-spacing:-.04em}.admin-section{background:linear-gradient(145deg,var(--bg-light) 0%,var(--bg-mid) 100%);border-radius:var(--radius-xl);padding:1.5rem;margin-bottom:1.25rem;border:1px solid var(--border-mid);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.admin-section:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--primary) 0%,transparent 100%)}.admin-section h2{margin-top:0;margin-bottom:1.25rem;color:var(--text-soft);font-size:1.05rem;font-weight:700;letter-spacing:-.015em;padding-bottom:.875rem;border-bottom:1px solid var(--border)}.admin-form{display:flex;flex-direction:column;gap:.875rem}.form-row{display:flex;gap:.75rem}.admin-form input,.admin-form select{padding:.75rem .9rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:.9375rem;flex:1;background:var(--bg-base);color:var(--text);font-family:inherit;transition:border-color .15s,background .15s,box-shadow .15s}.admin-form input:focus,.admin-form select:focus{outline:none;border-color:var(--primary);background:var(--bg-base);box-shadow:0 0 0 3px var(--primary-subtle)}.admin-form select{cursor:pointer}.admin-form select option{background:var(--bg-mid);color:var(--text)}.admin-form button{padding:.75rem 1.5rem;background:var(--gradient-primary);color:#07090f;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:.9rem;font-weight:700;font-family:inherit;letter-spacing:.02em;text-transform:uppercase;transition:background .2s,box-shadow .2s,transform .15s;box-shadow:var(--primary-glow)}.admin-form button:hover:not(:disabled){background:var(--gradient-primary-hover);box-shadow:var(--primary-glow-hover);transform:translateY(-1px)}.admin-form button:disabled{opacity:.45;cursor:not-allowed}.admin-message{padding:.875rem 1rem;border-radius:var(--radius-md);margin-top:1rem;font-weight:500;font-size:.875rem}.admin-message.success{background:var(--green-subtle);color:var(--green);border:1px solid var(--green-border)}.admin-message.error{background:var(--red-subtle);color:var(--red);border:1px solid var(--red-border)}@media (max-width: 1024px){.form-container{flex-direction:column!important;gap:.875rem!important;margin-top:1rem!important}.form-container>.signup-form{flex:none!important;width:100%!important;padding:1.25rem!important}.signup-form h2{font-size:1.075rem!important;margin-bottom:.75rem!important}.form-group{margin-bottom:.75rem!important}.form-group label{font-size:.775rem!important;margin-bottom:.25rem!important}.form-group input,.form-group select{padding:.625rem .875rem!important;font-size:.875rem!important}.signup-form button{padding:.6875rem!important;font-size:.875rem!important}.leagues-page{padding:1.25rem!important}.leagues-page h1{font-size:1.5rem!important}.fixtures-container h2{font-size:1.1rem!important}}@media (max-width: 768px){.main-title{font-size:2.25rem}.subtitle{font-size:.9375rem;margin-bottom:1.75rem}.coming-soon-box{padding:1.75rem 1.5rem}.leagues-page{padding:1.125rem .875rem}.header{margin-bottom:1.25rem;padding-bottom:.875rem}.header h1{font-size:1.4rem}.league-tabs{margin-bottom:1.25rem;top:57px}.tab{min-height:42px;font-size:.875rem;border-radius:var(--radius-sm)}.fixtures-container h2{font-size:1.15rem;margin-bottom:.875rem}.date-header{font-size:.7rem}.fixtures-grid{grid-template-columns:1fr;gap:.75rem}.fixture-card{padding:1rem;touch-action:manipulation}.form-container{flex-direction:column!important;gap:.875rem!important;padding:0}.signup-form{padding:1.25rem}.signup-form h2{font-size:1.1rem}.form-group input,.form-group select{font-size:16px;min-height:44px;padding:.75rem .875rem}.form-group input[type=checkbox]{width:13px;height:13px}.back-button{min-height:44px;padding:.6875rem 1rem;touch-action:manipulation}.dashboard-table{background:none;border:none;border-radius:0;overflow:visible;margin:0}.dashboard-table table{display:block}.dashboard-table thead{display:none}.dashboard-table tbody{display:flex;flex-direction:column;gap:.625rem}.dashboard-table tbody tr{display:grid;grid-template-columns:1fr 1fr 1fr;background:var(--bg-light)!important;border:1px solid var(--border-mid);border-radius:var(--radius-md);overflow:hidden}.gt-league,.gt-copy{display:block}.dashboard-table tbody tr td[data-label="Game Name"]{grid-column:1 / -1;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem;padding:.625rem .875rem!important;background:var(--surface);border-bottom:1px solid var(--border-mid)}.gt-info{display:flex;flex-direction:column;gap:.125rem;min-width:0}.gt-name{font-size:.875rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gt-league{font-size:.725rem;color:var(--text-subtle);font-weight:400}.dashboard-table tbody tr td[data-label=League]{display:none}.dashboard-table tbody tr td[data-label=You],.dashboard-table tbody tr td[data-label=Game],.dashboard-table tbody tr td[data-label=Players]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.5rem .25rem!important;text-align:center!important;border-right:1px solid var(--border);font-size:.8125rem!important}.dashboard-table tbody tr td[data-label=Players]:last-of-type,.dashboard-table tbody tr td[data-label=Game]{border-right:1px solid var(--border)}.dashboard-table tbody tr td[data-label=Players]{border-right:none}.dashboard-table tbody tr td[data-label=You]:before,.dashboard-table tbody tr td[data-label=Game]:before,.dashboard-table tbody tr td[data-label=Players]:before{content:attr(data-label);font-size:.625rem;font-weight:700;color:var(--text-disabled);text-transform:uppercase;letter-spacing:.08em}.dashboard-table tbody tr td[data-label=Type],.dashboard-table tbody tr td[data-label=Result]{display:none}.leaderboard-container{margin:.5rem 0;border-radius:var(--radius-md)}.form-row{flex-direction:column}.admin-page,.admin-section{padding:1rem}.admin-page h1{font-size:1.5rem;margin-bottom:1.5rem}.admin-form input,.admin-form select{font-size:16px;min-height:44px}.admin-form button{min-height:48px;font-size:1rem;touch-action:manipulation}}@media (max-width: 480px){.leagues-page{padding:.875rem .75rem}.dashboard-table tbody tr td{padding:.5rem .875rem!important}.dashboard-table tbody tr td:first-child{padding:.6875rem .875rem!important}.header{flex-direction:column;align-items:flex-start;gap:.5rem;margin-bottom:1rem}.header h1{font-size:1.25rem}.main-title{font-size:1.875rem;margin-bottom:.5rem}.subtitle{font-size:.9rem;margin-bottom:1.25rem}.coming-soon-box{padding:1.5rem 1.25rem}.signup-form{padding:1.125rem 1rem}.form-group input,.form-group select{border-radius:var(--radius-md);min-height:44px}.leagues-button{width:100%;margin:1rem 0 0;padding:.9375rem}.fixture-card{padding:.875rem;border-radius:var(--radius-md)}.tab{min-height:40px;padding:7px 12px;font-size:.8rem}.admin-page{padding:.75rem}.admin-section{padding:.875rem}}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--overlay, rgba(15, 23, 42, .8));z-index:1000;pointer-events:all}.leaderboard{background:var(--surface-raised);border-radius:12px;overflow:auto;box-shadow:0 4px 6px #0000001a}.leaderboard__table{width:100%;border-collapse:collapse;color:var(--text)}.leaderboard__thead{background:var(--green-subtle);border-bottom:2px solid var(--green-border)}.leaderboard__th{padding:12px;text-align:left;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;background:var(--green-subtle)}.leaderboard__th--sticky-player{position:sticky;left:0;z-index:10;min-width:120px;width:120px}.leaderboard__th--sticky-status{position:sticky;left:120px;z-index:10;min-width:60px;width:60px}.leaderboard__th--week{min-width:150px}.leaderboard__td{padding:12px;min-width:150px}.leaderboard__td--player{padding:12px;font-weight:500;font-size:1rem;position:sticky;left:0;z-index:5;min-width:120px;width:120px}.leaderboard__td--status{padding:12px;text-align:center;position:sticky;left:120px;z-index:5;min-width:60px;width:60px}.leaderboard__pick-cell{display:flex;flex-direction:column;gap:2px}.leaderboard__pick-team{font-weight:500}.leaderboard__pick-missing{font-style:italic;opacity:.5}.leaderboard__pick-result{font-size:.8rem;font-weight:500}.leaderboard__pick-wildcard{color:var(--green);font-weight:700;font-size:1.1rem}.leaderboard__status-icon{font-size:1rem}.cgt-wrapper{background:var(--surface);border-radius:12px;overflow:hidden}.cgt-table{width:100%;border-collapse:collapse;color:var(--text)}.cgt-thead-row{background:var(--green-subtle);border-bottom:2px solid var(--green-border)}.cgt-th{padding:12px 16px;font-weight:600;font-size:.9rem;text-align:left}.cgt-th--center{text-align:center}.cgt-td{padding:12px 16px}.cgt-td--center{padding:12px 16px;text-align:center}.cgt-td--name{padding:12px 16px;font-weight:500}.cgt-td--players{padding:12px 16px;text-align:center;font-weight:600;color:var(--primary-light)}.cgt-td--date{padding:12px 16px;text-align:center;font-size:.85rem;color:var(--text-muted)}.cgt-name-link{cursor:pointer}.cgt-edit-input{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:4px;padding:4px 8px;color:var(--text);width:100%}.cgt-btn{padding:4px 12px;border-radius:6px;font-size:.8rem;cursor:pointer}.cgt-btn--save{background:var(--primary);color:var(--text);border:none;margin-right:.5rem}.cgt-btn--cancel{background:var(--surface-raised);color:var(--text);border:1px solid var(--border)}.cgt-btn--edit{background:var(--primary-subtle);color:var(--primary-light);border:1px solid var(--primary-border)}.profile-field-value{margin:.5rem 0;font-size:1rem}.profile-field-value--muted{margin:.5rem 0;font-size:1rem;color:var(--text-muted)}.profile-btn-row{display:flex;gap:.5rem}.stat-box{background:var(--surface-raised);border:1px solid var(--border);border-radius:12px;padding:1rem;margin-top:1rem}.stat-box__title{margin:0 0 1rem;color:var(--primary-light);font-size:1rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.stat-card{text-align:center}.stat-card__value{font-size:1.5rem;font-weight:600}.stat-card__value--green{font-size:1.5rem;font-weight:600;color:var(--green)}.stat-card__value--blue{font-size:1.5rem;font-weight:600;color:var(--primary-light)}.stat-card__value--red{font-size:1.5rem;font-weight:600;color:var(--red)}.stat-card__value-suffix{font-size:1rem}.stat-card__label{font-size:.8rem;color:var(--text-muted)}.pick-counts-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.pick-counts-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.pick-counts-header__title{margin:0;color:var(--primary-light);font-size:.9rem}.pick-counts-header__missing{color:var(--red);margin-left:.5rem}.pick-counts-header__toggle{font-size:1.2rem;color:var(--primary-light)}.pick-counts-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.pick-count-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.pick-count-row__team{display:flex;align-items:center;gap:.5rem}.pick-count-row__count{font-weight:600;color:var(--green)}.public-games-list{display:flex;flex-direction:column;gap:2rem}.league-games-list{display:flex;flex-direction:column;gap:1rem}.game-card-header{cursor:pointer;display:flex;justify-content:space-between;align-items:center}.game-card-toggle{font-size:1.5rem}.game-card-body{margin-top:1rem}.game-card-login-hint{color:var(--primary-light);font-style:italic}.game-card-joined{color:var(--green);font-style:italic}.fixture-card--full-width{max-width:none;width:100%}.current-pick-box{background:#60a5fa1a;border:1px solid rgba(96,165,250,.3);border-radius:12px;margin-top:1.5rem;padding:1rem;margin-bottom:1rem}.current-pick-box__title{margin:0 0 .5rem;color:var(--primary-light);font-size:1rem}.current-pick-row{display:flex;align-items:center;gap:.5rem}.current-pick-row__team{font-size:1.1rem;font-weight:600}.current-pick-row__no-pick{margin:0;color:var(--text-muted);font-style:italic}.prev-picks-box{background:var(--surface-raised);border:1px solid var(--border);border-radius:12px;padding:1rem;margin-bottom:1rem}.prev-picks-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.prev-picks-header__title{margin:0;color:var(--primary-light);font-size:1rem}.prev-picks-header__toggle{font-size:1.2rem;color:var(--primary-light)}.prev-picks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.prev-pick-card{background:var(--surface);border-radius:8px;padding:.75rem;border:1px solid var(--border)}.prev-pick-gw{font-size:.85rem;color:var(--text-muted);margin-bottom:.25rem}.prev-pick-team-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.prev-pick-team-row__name{font-weight:600}.comment-list{display:flex;flex-direction:column;gap:1rem}.comment-card{background:var(--surface-raised);border-radius:12px;padding:1rem;border:1px solid var(--border)}.comment-card__header{display:flex;justify-content:space-between;align-items:start;margin-bottom:.5rem}.comment-card__author{color:var(--primary-light)}.comment-card__meta{color:var(--text-muted);font-size:.85rem;margin-left:.5rem}.comment-card__delete-btn{background:#ef444433;color:var(--red);border:none;padding:4px 8px;border-radius:6px;font-size:.8rem;cursor:pointer;transition:all .2s}.comment-card__delete-btn:hover{background:#ef44444d}.comment-textarea{width:100%;padding:12px;border:1px solid var(--border-strong);border-radius:8px;background:var(--bg-base);color:var(--text);font-size:.95rem;resize:vertical;font-family:inherit}.eliminated-message{color:var(--red);text-align:center;font-size:1.1rem}.game-stats-box{background:var(--surface-raised);border:1px solid var(--border);border-radius:12px;padding:1rem;margin-bottom:1rem}.game-stats-box__title{margin:0 0 1rem;color:var(--primary-light);font-size:1rem}.pick-result-icon{font-size:1rem}.pick-result-icon--win{color:var(--green)}.pick-result-icon--loss{color:var(--red)}.comments-disabled-text{color:var(--text-muted);font-style:italic;margin-bottom:1.5rem}.load-more-comments-btn{margin-top:1rem;width:100%;padding:12px;background:var(--primary-subtle);color:var(--primary-light);border:1px solid var(--primary-border);border-radius:8px;font-size:1rem;font-weight:600;font-family:inherit;transition:all .2s ease}.load-more-comments-btn:not(:disabled):hover{background:var(--primary-subtle);opacity:.85}.pick-loading{text-align:center;padding:2rem;color:var(--primary-light)}.pick-loading__icon{font-size:2rem;margin-bottom:.5rem}.layout{min-height:100vh;display:flex;flex-direction:column}.layout-header{display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:60px;background:var(--bg-mid);border-bottom:1px solid var(--border-mid);box-shadow:0 1px #f59e0b1f,var(--shadow-sm);position:-webkit-sticky;position:sticky;top:0;z-index:100}.logo{font-size:.9375rem;font-weight:700;letter-spacing:-.02em;color:var(--text);text-decoration:none;display:flex;align-items:center;gap:.5rem;flex-shrink:0;transition:opacity .15s}.logo:hover{opacity:.8}.nav{display:flex;align-items:center;gap:.125rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.25rem}.nav a{color:var(--text-muted);text-decoration:none;font-size:.84rem;font-weight:500;padding:.4rem .9rem;border-radius:var(--radius-md);transition:color .15s,background .15s;white-space:nowrap;letter-spacing:.01em}.nav a:hover{color:var(--text-soft);background:var(--surface-hover)}.nav a.active{color:var(--primary-light);background:var(--primary-subtle);border:1px solid var(--primary-border);font-weight:600}.lang-flags{display:flex;justify-content:center;gap:.25rem;margin-bottom:.75rem}.lang-flag-btn{background:transparent;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;font-size:1.5rem;line-height:1;padding:.25rem .4rem;opacity:.4;transition:opacity .15s,border-color .15s,background .15s}.lang-flag-btn:hover{opacity:.75;background:var(--surface-raised)}.lang-flag-btn.active{opacity:1;border-color:var(--border-mid);background:var(--surface-raised)}.theme-toggle{background:transparent;border:1px solid var(--border-mid);color:var(--text-muted);cursor:pointer;width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;transition:background .15s,color .15s,border-color .15s}.theme-toggle:hover{color:var(--text);background:var(--surface-raised);border-color:var(--border-strong)}.kebab-menu{position:relative;z-index:2000}.kebab-button{background:transparent;border:1px solid var(--border-mid);color:var(--text-muted);cursor:pointer;width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.25rem;line-height:1;transition:background .15s,color .15s,border-color .15s}.kebab-button:hover{color:var(--text);background:var(--surface-raised);border-color:var(--border-strong)}.kebab-dropdown{position:absolute;top:calc(100% + 10px);right:0;background:var(--bg-light);border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:.375rem;min-width:172px;box-shadow:var(--shadow-xl);z-index:2001;animation:slideDown .15s ease-out}.kebab-dropdown a{display:flex;align-items:center;padding:.5625rem .875rem;color:var(--text-muted);text-decoration:none;font-size:.85rem;font-weight:500;border-radius:var(--radius-md);transition:background .12s,color .12s;white-space:nowrap}.kebab-dropdown a:hover{background:var(--surface-hover);color:var(--text)}.kebab-divider{height:1px;background:var(--border);margin:.25rem 0}.layout-main{flex:1}.page-container{max-width:1200px;margin:0 auto;padding:2rem;width:100%}.user-greeting{color:var(--text-subtle);font-size:.8125rem;text-align:center}.layout-footer{padding:2rem;border-top:1px solid var(--border);background:var(--bg-mid);text-align:center}.footer-links{display:flex;justify-content:center;gap:.25rem;margin-bottom:.875rem;flex-wrap:wrap}.footer-links a{color:var(--text-disabled);text-decoration:none;font-size:.8rem;padding:.375rem .75rem;border-radius:var(--radius-sm);transition:color .15s,background .15s}.footer-links a:hover{color:var(--text-muted);background:var(--surface)}.layout-footer p{font-size:.775rem;color:var(--text-disabled);margin:0}.kebab-button,.nav a,.logo{-webkit-user-select:none;user-select:none}.mobile-tap{-webkit-tap-highlight-color:var(--primary-tap);touch-action:manipulation}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (min-width: 769px){.user-greeting{display:none}}@media (max-width: 768px){.layout-header{padding:0 1rem}.logo{font-size:.925rem}.nav{background:none;border:none;padding:0}.kebab-button{width:auto;height:auto;min-height:44px;min-width:44px;padding:0 .75rem}.kebab-dropdown{right:50%;transform:translate(50%);min-width:180px}.kebab-dropdown a{min-height:44px;padding:.75rem 1rem}.footer-links{gap:0}.footer-links a{min-height:44px;display:flex;align-items:center;justify-content:center}.layout-footer{padding:1.5rem 1rem}.page-container{padding:1.25rem 1rem}.nav a:focus,.kebab-button:focus,.logo:focus{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.kebab-dropdown a:focus{outline:2px solid var(--primary);outline-offset:-2px}}@media (max-width: 480px){.layout-header{padding:.5rem .75rem}.logo{font-size:.875rem}.nav a{font-size:.725rem}.layout-footer{padding:1.25rem .75rem}.page-container{padding:1rem .75rem}}
