*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#111;color:#f5f5f5;overflow-x:hidden}.app-loading,.tournament-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;min-height:40vh;color:#e2e8f0}.loading-spinner{width:28px;height:28px;border-radius:999px;border:3px solid rgba(255,255,255,.2);border-top-color:#60a5fa;animation:spin .8s linear infinite}.loading-text{font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;opacity:.85}.home-page{background:#050505}.home-header{padding:1rem 1.5rem;background:#181818;border-bottom:1px solid #333;position:sticky;top:0;z-index:200}.stats-team-colour-control{display:inline-flex;flex-direction:column;gap:.2rem;min-width:9.5rem}.stats-team-colour-control span{font-size:.68rem;opacity:.85}.stats-team-colour-control select{border-radius:999px;border:1px solid #4b5563;background:#1f2937;color:#f3f4f6;font-size:.78rem;padding:.22rem .55rem}body.light-mode .stats-team-colour-control select{border-color:#cbd5e1;background:#fff;color:#111827}.stats-page-shell,.game-page{--team1-accent: #2563eb;--team1-accent-mid: rgba(37, 99, 235, .35);--team1-accent-soft: rgba(37, 99, 235, .22);--team1-accent-text: #dbeafe;--team1-accent-strong: rgba(37, 99, 235, .92);--team1-pill-text: #f8fafc;--team2-accent: #f59e0b;--team2-accent-mid: rgba(245, 158, 11, .3);--team2-accent-soft: rgba(245, 158, 11, .22);--team2-accent-text: #fde68a;--team2-accent-strong: rgba(245, 158, 11, .92);--team2-pill-text: #f8fafc}body.light-mode .stats-page-shell,body.light-mode .game-page{--team1-pill-text: #0f172a;--team2-pill-text: #0f172a}.stats-page-shell .stats-team-event-column--team1 .stats-team-event-title{color:var(--team1-accent-text)!important}.stats-page-shell .stats-team-event-column--team2 .stats-team-event-title{color:var(--team2-accent-text)!important}.stats-page-shell .stats-event-btn.team1{background:var(--team1-accent-soft)!important;border-color:var(--team1-accent-mid)!important;color:var(--team1-pill-text)!important}.stats-page-shell .stats-event-btn.team2{background:var(--team2-accent-soft)!important;border-color:var(--team2-accent-mid)!important;color:var(--team2-pill-text)!important}.stats-page-shell .stats-event-order--team1{background:var(--team1-accent-soft)!important;border-color:var(--team1-accent-mid)!important;color:var(--team1-pill-text)!important}.stats-page-shell .stats-event-order--team2{background:var(--team2-accent-soft)!important;border-color:var(--team2-accent-mid)!important;color:var(--team2-pill-text)!important}.game-page--team-colours .stats-event-order--team1{background:var(--team1-accent-soft)!important;border-color:var(--team1-accent-mid)!important;color:var(--team1-pill-text)!important}.game-page--team-colours .stats-event-order--team2{background:var(--team2-accent-soft)!important;border-color:var(--team2-accent-mid)!important;color:var(--team2-pill-text)!important}.game-page--team-colours .game-page-roster-card--team1{border-top-color:var(--team1-accent-strong)!important;border-bottom-color:var(--team1-accent-strong)!important;border-top-width:4px!important;border-bottom-width:4px!important}.game-page--team-colours .game-page-roster-card--team2{border-top-color:var(--team2-accent-strong)!important;border-bottom-color:var(--team2-accent-strong)!important;border-top-width:4px!important;border-bottom-width:4px!important}.stats-tracking-page{min-height:100dvh;padding:0 12px 12px;background:#0b0b10;color:#f5f5f5;overflow:visible}.stats-page-shell{width:min(1120px,100%);margin:0 auto;display:flex;flex-direction:column;gap:12px;min-height:calc(100dvh - 24px);overflow:visible}.stats-banner,.stats-card,.stats-login-card,.stats-modal-card,.stats-scoreboard{background:#12121a;border:1px solid #2a2a3a;border-radius:12px;box-shadow:none}.stats-banner,.stats-login-card,.stats-card,.stats-scoreboard{-webkit-backdrop-filter:none;backdrop-filter:none}.stats-banner{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;position:relative;z-index:1}.stats-kicker{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#93c5fd}.stats-banner h1,.stats-login-card h1,.stats-modal-header h2,.stats-card-head h2{margin:4px 0 0;font-family:inherit;line-height:1.15}.stats-banner-meta{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px;color:#d1d5db;font-size:.82rem}.stats-banner-meta span,.stats-status-subtitle{padding:.3rem .65rem;border-radius:999px;background:#131320;border:1px solid #2a2a3a}.stats-meta-card{padding:10px 14px}.stats-meta-pills{display:flex;flex-wrap:wrap;gap:.45rem}.stats-meta-time-row{display:flex;flex-wrap:wrap;gap:.85rem 1rem;margin-top:.75rem;font-size:.82rem;color:#d1d5db}.stats-meta-time-item{display:inline-flex;align-items:baseline;gap:.35rem}.stats-meta-time-label{color:#94a3b8;font-weight:700}.stats-meta-time-value{color:#f5f5f5}.stats-meta-pill{display:inline-flex;align-items:center;min-width:0;padding:.32rem .72rem;border-radius:999px;border:1px solid #2a2a3a;background:#141423;color:#d1d5db;font-size:.78rem;line-height:1.2;white-space:nowrap}.stats-meta-pill-division{color:#93c5fd}.stats-banner-actions,.stats-modal-actions,.stats-button-row,.stats-main-grid{display:flex;gap:8px}.stats-banner-actions{flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.stats-banner-actions .stats-secondary-btn{padding:.34rem .7rem;font-size:.86rem;line-height:1.1}.stats-link-btn,.stats-secondary-btn,.stats-primary-btn,.stats-danger-btn,.stats-icon-btn,.stats-event-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #2a2a3a;border-radius:999px;padding:.5rem .85rem;font:inherit;text-decoration:none;cursor:pointer;transition:background .12s ease,border-color .12s ease,opacity .12s ease,transform .12s ease}.stats-link-btn,.stats-secondary-btn,.stats-icon-btn{background:#131320;color:#d1d5db}.stats-primary-btn{background:#2563eb;border-color:#2563eb;color:#fff;font-weight:700}.stats-danger-btn{background:#7f1d1d;border-color:#991b1b;color:#fff;font-weight:700}.stats-link-btn:hover,.stats-secondary-btn:hover,.stats-primary-btn:hover,.stats-danger-btn:hover,.stats-icon-btn:hover,.stats-event-btn:hover,.stats-player-tile:hover{transform:translateY(-1px)}.stats-scoreboard{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;padding:12px}.stats-team-panel,.stats-status-panel{border-radius:10px;padding:14px 12px;background:#131320;border:1px solid #222233;text-align:center}.stats-team-name{font-size:1rem;font-weight:700}.stats-team-score{margin-top:6px;font-size:clamp(2.2rem,7vw,3.3rem);line-height:.95;font-weight:800}.stats-team-timeouts{margin-top:10px;font-size:.8rem;color:#94a3b8;font-weight:500}.stats-status-panel{min-width:140px;align-self:center}.stats-status-label{font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.stats-main-grid{flex:0 0 auto;align-items:start;min-width:0}.stats-main-grid>*{flex:1 1 0;min-height:0}.stats-card{padding:14px}.stats-main-grid .stats-card,.stats-timeline-card{display:flex;flex-direction:column}.stats-sticky-stack{position:relative;top:auto;z-index:1;align-self:flex-start;width:100%;display:grid;gap:12px;background:#0b0b10;padding-bottom:2px}.stats-card-head,.stats-modal-header,.stats-login-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.stats-login-card{width:min(420px,100%);margin:8vh auto 0;padding:16px}.stats-login-form,.stats-modal-body{display:grid;gap:12px;margin-top:14px}.stats-modal-body{min-height:0;overflow-y:auto;padding-right:2px}.stats-modal-step.is-sequential{animation:stats-modal-step-slide-left .22s ease-out;will-change:transform,opacity}.stats-modal-step.is-sequential.is-closing{animation:stats-modal-step-slide-left-out .22s ease-in forwards;will-change:transform,opacity}@keyframes stats-modal-step-slide-left{0%{opacity:.55;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes stats-modal-step-slide-left-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-14px)}}.stats-field{display:grid;gap:6px}.stats-field span,.stats-selector-title{font-size:.84rem;font-weight:700;color:#cbd5e1}.stats-tracking-page input,.stats-tracking-page select{width:100%;border:1px solid #33334a;border-radius:8px;padding:.55rem .7rem;background:#0f0f18;color:inherit;font:inherit}.stats-button-grid.single,.stats-team-stats-grid,.stats-player-grid,.stats-event-list{display:grid;gap:10px}.stats-scroll-panel{min-height:0;overflow-y:auto;padding-right:4px}.stats-button-grid.single,.stats-button-row{margin-top:10px}.stats-team-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stats-team-event-column{display:grid;gap:8px}.stats-team-event-title{font-size:.92rem;font-weight:700;padding:0 .2rem;text-align:center}.stats-team-event-column--team1 .stats-team-event-title{color:#93c5fd}.stats-team-event-column--team2 .stats-team-event-title,.stats-colours-swapped .stats-team-event-column--team1 .stats-team-event-title{color:#facc15}.stats-colours-swapped .stats-team-event-column--team2 .stats-team-event-title{color:#93c5fd}.stats-team-event-column .stats-button-row{margin-top:0}.stats-event-btn{flex:1 1 0;min-height:52px;font-weight:700;background:#161824;color:#f5f5f5}.stats-event-btn.goal{border-width:2px}.stats-event-btn.timeout{min-height:40px;padding-top:.6rem;padding-bottom:.6rem;font-size:.92rem}.stats-event-btn.team1{background:#2563eb24;border-color:#2563eb59;color:#dbeafe}.stats-event-btn.team2,.stats-colours-swapped .stats-event-btn.team1{background:#f59e0b1f;border-color:#f59e0b4d;color:#fef3c7}.stats-colours-swapped .stats-event-btn.team2{background:#2563eb24;border-color:#2563eb59;color:#dbeafe}.stats-event-btn.accent{background:#2563eb;border-color:#2563eb}.stats-event-btn.danger{background:transparent;border-color:#ef44444d}.stats-team-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}.stats-team-stats-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stats-team-stats-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #2a2a3a;border-radius:12px;background:#131320;color:#f5f5f5;padding:.58rem .56rem;text-align:center;font:inherit;font-size:.94rem;font-weight:700;line-height:1.2;cursor:pointer}.stats-team-stats-card{border-radius:10px;padding:12px;background:#131320;border:1px solid #222233}.stats-team-stats-title{font-weight:700;margin-bottom:10px}.stats-player-stats-table{display:grid;gap:6px}.stats-player-stats-head,.stats-player-stats-row{display:grid;grid-template-columns:minmax(0,1fr) 28px 28px 28px 28px;gap:8px;align-items:center}.stats-player-stats-head{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af}.stats-player-stats-row{font-size:.9rem;padding:8px 0;border-top:1px solid #222233}.stats-timeline-card{padding-bottom:12px}.stats-events-scroll{overflow:visible;max-height:none}.stats-timeline-scroll{max-height:none}.stats-bottom-card{flex:0 0 auto;margin-top:0}.stats-event-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:10px 0;border-top:1px solid #222233}.stats-event-row--team1,.stats-event-row--team2,.stats-colours-swapped .stats-event-row--team1,.stats-colours-swapped .stats-event-row--team2{border-top-color:#223}.stats-event-order{width:56px;min-height:28px;border-radius:999px;display:grid;place-items:center;background:#161824;border:1px solid #2a2a3a;font-weight:700;font-size:.8rem;padding:0 .45rem}.stats-event-order-placeholder{opacity:0;pointer-events:none}.stats-event-order--team1{background:#2563eb29;border-color:#2563eb52;color:#dbeafe}.stats-event-order--team2,.stats-colours-swapped .stats-event-order--team1{background:#f59e0b24;border-color:#f59e0b4d;color:#fde68a}.stats-colours-swapped .stats-event-order--team2{background:#2563eb29;border-color:#2563eb52;color:#dbeafe}.stats-event-label-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:inherit;text-align:left;padding:0;font:inherit;font-size:.86rem;line-height:1.2;cursor:pointer}.stats-event-time{font-size:.76rem;color:#9ca3af;min-width:56px;text-align:right;justify-self:end;font-variant-numeric:tabular-nums}.stats-secondary-btn.compact,.stats-primary-btn.compact{padding:.22rem .52rem;font-size:.78rem;line-height:1.1}.scorekeeper-game-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #222233}.scorekeeper-go-btn{width:auto;min-width:0;white-space:nowrap;margin-left:auto}.scorekeeper-game-label{flex:1 1 auto;min-width:0}.stats-inline-note,.stats-note{color:#9ca3af;font-size:.88rem}.stats-event-time-field{margin-top:8px}.stats-event-time-inline-field{display:inline-flex;align-items:center}.stats-event-time-inline-field input{width:84px;min-height:34px;padding:.32rem .45rem;border-radius:8px;border:1px solid #2a2a3a;background:#161824;color:inherit;font:inherit;font-size:.8rem;font-variant-numeric:tabular-nums}.stats-error{margin-top:-4px}.stats-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#020617bd;display:grid;place-items:center;padding:14px}.stats-modal-card{width:min(820px,100%);max-height:calc(100dvh - 28px);overflow:hidden;padding:16px;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.stats-event-modal{max-height:calc(100dvh - 20px)}.stats-modal-header{position:sticky;top:0;z-index:2;padding:4px 0 10px;background:#12121a;border-bottom:1px solid #2a2a3a}.stats-player-stats-modal{width:min(760px,100%)}.stats-modal-actions{justify-content:flex-end;flex-wrap:wrap;margin-top:14px;position:sticky;bottom:0;z-index:3;background:#12121a;border-top:1px solid #2a2a3a;padding-top:10px;padding-bottom:2px}.stats-selector-group{display:grid;gap:10px}.stats-player-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.stats-player-tile{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #2a2a3a;border-radius:12px;background:#161824;color:inherit;padding:10px;min-height:78px;display:grid;gap:5px;align-content:center;justify-items:center;text-align:center;cursor:pointer}.stats-player-tile.selected{border-color:#2563eb;background:#2563eb29}.stats-event-modal--edit .stats-player-tile.selected{border-color:#60a5fa;background:#2563eb3d;box-shadow:0 0 0 2px #60a5fa3d,0 0 16px #2563eb38;transform:translateY(-1px)}.stats-player-tile.flash{border-color:#4ade80;background:#22c55e3d;box-shadow:0 0 0 3px #22c55e29,0 0 18px #22c55e38;transform:translateY(-1px);transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.stats-player-tile.none{background:#181824}.stats-player-number{font-size:1.35rem;line-height:1;font-weight:800}.stats-player-name{font-size:.84rem;color:#f8fafc;font-weight:600;text-shadow:0 1px 0 rgba(15,23,42,.25)}.stats-player-stats-table-modal{max-height:min(65vh,560px);overflow-y:auto;padding-right:4px}body.light-mode .stats-tracking-page{background:#f3f4f6;color:#0f172a}body.light-mode .stats-banner,body.light-mode .stats-card,body.light-mode .stats-login-card,body.light-mode .stats-modal-card,body.light-mode .stats-scoreboard{background:#fff;border-color:#d1d5db}body.light-mode .stats-sticky-stack{background:#f3f4f6}body.light-mode .stats-modal-header{background:#fff;border-bottom-color:#d1d5db}body.light-mode .stats-modal-actions{background:#fff;border-top-color:#d1d5db}body.light-mode .stats-team-panel,body.light-mode .stats-status-panel,body.light-mode .stats-team-stats-card,body.light-mode .stats-player-tile,body.light-mode .stats-tracking-page input,body.light-mode .stats-tracking-page select{background:#f8fafc;color:#0f172a}body.light-mode .stats-team-timeouts{color:#64748b}body.light-mode .stats-team-stats-btn{background:#f8fafc;border-color:#d1d5db;color:#0f172a}body.light-mode .stats-banner-meta span,body.light-mode .stats-status-subtitle,body.light-mode .stats-link-btn,body.light-mode .stats-secondary-btn,body.light-mode .stats-icon-btn{background:#f3f4f6;border-color:#d1d5db;color:#0f172a}body.light-mode .stats-meta-pill{background:#f8fafc;border-color:#d1d5db;color:#334155}body.light-mode .stats-meta-time-row{color:#334155}body.light-mode .stats-meta-time-label{color:#64748b}body.light-mode .stats-meta-time-value{color:#0f172a}body.light-mode .stats-meta-pill-division{color:#1d4ed8}body.light-mode .stats-primary-btn,body.light-mode .stats-event-btn.accent{background:#2563eb;border-color:#2563eb;color:#fff}body.light-mode .stats-danger-btn{background:#dc2626;border-color:#dc2626}body.light-mode .stats-event-btn{background:#f8fafc;border-color:#d1d5db;color:#0f172a}body.light-mode .stats-event-btn.team1{background:#2563eb14;border-color:#2563eb38;color:#1d4ed8}body.light-mode .stats-event-btn.team2,body.light-mode .stats-colours-swapped .stats-event-btn.team1{background:#f59e0b17;border-color:#f59e0b33;color:#92400e}body.light-mode .stats-colours-swapped .stats-event-btn.team2{background:#2563eb14;border-color:#2563eb38;color:#1d4ed8}body.light-mode .stats-event-btn.danger{background:transparent;border-color:#ef444438}body.light-mode .stats-player-stats-row,body.light-mode .stats-event-row{border-top-color:#e5e7eb}body.light-mode .stats-player-name{color:#0f172a;text-shadow:none}body.light-mode .stats-player-tile.flash{border-color:#16a34a;background:#22c55e24;box-shadow:0 0 0 3px #22c55e1a,0 0 16px #22c55e24}body.light-mode .stats-event-modal--edit .stats-player-tile.selected{border-color:#2563eb;background:#dbeafe;box-shadow:0 0 0 2px #2563eb33,0 0 14px #2563eb2e}body.light-mode .stats-event-row--team1,body.light-mode .stats-event-row--team2,body.light-mode .stats-colours-swapped .stats-event-row--team1,body.light-mode .stats-colours-swapped .stats-event-row--team2{border-top-color:#e5e7eb}body.light-mode .stats-event-order{background:#f8fafc;border-color:#d1d5db}body.light-mode .stats-event-order--team1,body.light-mode .stats-event-order--team2,body.light-mode .stats-colours-swapped .stats-event-order--team1,body.light-mode .stats-colours-swapped .stats-event-order--team2{background:#f8fafc;border-color:#d1d5db;color:#334155}body.light-mode .stats-event-time-inline-field input{background:#f8fafc;border-color:#d1d5db}@media (max-width: 860px){.stats-tracking-page{padding:0 10px 10px}.stats-page-shell{min-height:calc(100dvh - 20px)}.stats-main-grid,.stats-team-stats-grid,.stats-button-row,.stats-banner{display:grid}.stats-scoreboard{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.stats-status-panel{min-width:0}.stats-events-scroll{max-height:none}.stats-sticky-stack{position:-webkit-sticky;position:sticky;top:0;z-index:80}.stats-modal-actions{justify-content:flex-end}.stats-event-time-inline-field{order:1;margin-right:auto;margin-left:0}.stats-modal-actions>.stats-secondary-btn{order:2}.stats-modal-actions>.stats-primary-btn,.stats-modal-actions>.stats-danger-btn{order:3}.stats-modal-actions>.stats-cancel-btn{order:99;margin-left:auto}}@media (max-width: 640px){.stats-tracking-page{padding:0 6px 6px}.stats-page-shell{min-height:calc(100dvh - 12px);gap:6px}.stats-card{padding:8px}.stats-banner,.stats-meta-card{padding:8px 10px}.stats-meta-pill{padding:.24rem .58rem;font-size:.72rem}.stats-meta-time-row{margin-top:.55rem;gap:.6rem .8rem;font-size:.76rem}.stats-events-scroll{max-height:none}.stats-banner{align-items:flex-start;gap:10px}.stats-banner>div:first-child{min-width:0;flex:1 1 auto}.stats-banner-actions{flex:0 0 auto;flex-wrap:nowrap;justify-content:flex-end;margin-left:auto}.stats-scoreboard{gap:6px;padding:7px}.stats-team-panel,.stats-status-panel{padding:9px 6px}.stats-team-name{font-size:.8rem}.stats-team-score{font-size:clamp(1.5rem,6.5vw,2.1rem)}.stats-status-label{font-size:.7rem}.stats-status-subtitle{font-size:.66rem;padding:.2rem .4rem}.stats-team-event-grid{gap:8px}.stats-team-event-title{font-size:.82rem}.stats-event-btn{min-height:42px;padding:.42rem .65rem;font-size:.95rem}.stats-event-btn.timeout{min-height:34px;font-size:.84rem}.stats-link-btn,.stats-secondary-btn,.stats-primary-btn,.stats-danger-btn,.stats-icon-btn{padding:.38rem .68rem;font-size:.92rem}.stats-event-row{grid-template-columns:48px minmax(0,1fr) auto auto;gap:8px;padding:8px 0}.stats-event-order{width:48px;min-height:24px;font-size:.74rem}.stats-event-label-btn{font-size:.76rem;line-height:1.15}.stats-secondary-btn.compact,.stats-primary-btn.compact{padding:.18rem .44rem;font-size:.68rem}.stats-event-time{min-width:48px;font-size:.66rem}.stats-team-stats-actions{gap:8px}.stats-team-stats-btn{padding:.48rem .46rem;font-size:.8rem;line-height:1.15}.stats-banner-actions .stats-secondary-btn{padding:.26rem .56rem;font-size:.78rem}}.team-page-game-row{cursor:pointer}.game-page-stack{gap:1rem}.game-page-stack--no-events{padding-bottom:1rem}.game-page-summary-card{display:grid;gap:.65rem;padding:.75rem .9rem;position:relative;align-self:start;top:auto;z-index:1}.game-page-meta-row{display:flex;flex-wrap:wrap;gap:.45rem}.game-page-meta-item-strong{font-weight:700}.game-page-live-indicator{color:#f87171;font-weight:700;display:inline-flex;align-items:center;gap:.4rem;padding:0}.game-page-live-indicator--right{margin-left:auto}.game-page-live-dot{flex:0 0 auto}.game-page-scoreboard{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.6rem}.game-page-score-team{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:1rem}.game-page-team-name{font-size:clamp(1.05rem,2.35vw,1.45rem);font-weight:650;line-height:1.1}.game-page-team-name.team-placeholder{color:#9ca3af;font-style:italic;font-weight:400}.game-page-score-team .teams-score-pill{min-width:2.9rem;font-size:1.25rem;font-weight:800;position:relative;overflow:visible}.game-page-score-team .teams-score-pill.goal-flash,.game-page-compact-score-pill.goal-flash{animation:game-score-pill-red-flash .9s ease-out}.game-page-score-team .teams-score-pill.goal-flash:after,.game-page-compact-score-pill.goal-flash:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px solid rgba(239,68,68,.95);border-radius:999px;pointer-events:none;animation:game-score-pill-red-ring .9s ease-out}@keyframes game-score-pill-red-flash{0%{background:#ef44448c;color:#fff}45%{background:#ef44443d;color:#fff}to{background:transparent;color:inherit}}@keyframes game-score-pill-red-ring{0%{opacity:.95;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}.game-page-score-sep{opacity:.7;font-weight:700;text-transform:uppercase}.game-page-compact-score-row{position:fixed;left:50%;top:calc(var(--game-page-sticky-top, 122px) - 2px);z-index:980;width:100vw;max-width:100vw;display:grid;grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr);align-items:center;gap:.4rem;padding:.35rem .7rem;border-top:1px solid #2b2b2b;border-bottom:1px solid #2b2b2b;border-left:0;border-right:0;border-radius:12px;background:#1c1c1c;box-shadow:0 6px 14px #00000038;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-10px);transition:opacity .18s ease,transform .22s ease,visibility 0s linear .22s}.game-page-compact-score-row.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%);transition:opacity .18s ease,transform .22s ease,visibility 0s linear 0s}.game-page-compact-team{font-size:.8rem;font-weight:500;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-page-compact-team--right{text-align:right}.game-page-compact-score-pill{min-width:2rem;padding:.18rem .44rem;font-size:.82rem;font-weight:700;position:relative;overflow:visible}.game-page-roster-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.game-page-roster-card--team1,.game-page-roster-card--team2{box-shadow:none}.game-page-event-list{display:grid;gap:.35rem}.game-page-event-row{gap:16px;padding-top:.6rem;padding-bottom:.6rem}.game-page-event-order{min-width:56px;margin-right:2px}.game-page-event-label{cursor:default}.game-goal-toast{position:fixed;left:50%;bottom:1.1rem;transform:translate(-50%) translateY(14px);background:#111827f0;border:1px solid rgba(239,68,68,.45);color:#fef2f2;border-radius:12px;padding:.75rem 1rem .68rem;font-size:.86rem;font-weight:700;letter-spacing:.01em;opacity:0;pointer-events:none;z-index:120;transition:opacity .22s ease,transform .22s ease;box-shadow:0 10px 28px #00000059;width:min(96vw,56rem);overflow:hidden;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.25}.game-goal-toast:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px}.game-goal-toast--team1:before{background:var(--team1-accent-strong, rgba(37, 99, 235, .95))}.game-goal-toast--team2:before{background:var(--team2-accent-strong, rgba(245, 158, 11, .95))}.game-goal-toast.is-visible{opacity:1;transform:translate(-50%) translateY(0)}@media (max-width: 860px){.game-page-roster-grid,.game-page-scoreboard{grid-template-columns:1fr}.game-page-score-sep{display:none}.game-page-scoreboard{gap:.5rem}.game-page-score-team{width:100%}.game-page-score-team--team2{flex-direction:row-reverse}}@media (max-width: 860px){body.light-mode .game-page-compact-score-row{background:#fff;border-color:#e5e7eb}}.admin-mobile-sidebar-toggle,.admin-mobile-sidebar-close,.admin-mobile-sidebar-backdrop{display:none}@media (max-width: 1100px){.admin-tournament-page{font-size:12px!important;padding:10px!important}.admin-tournament-page .admin-header,.admin-tournament-page .admin-sidebar-card,.admin-tournament-page .admin-section-card,.admin-tournament-page .admin-footer-bar{padding:10px!important;border-radius:10px!important}.admin-tournament-page .admin-header-copy h1,.admin-tournament-page .admin-tab-shell-head h2,.admin-tournament-page .admin-section-head h2,.admin-tournament-page .admin-sidebar-card h2{font-size:clamp(16px,4.2vw,21px)!important;line-height:1.1!important}.admin-tournament-page .admin-header-copy p,.admin-tournament-page .admin-section-note,.admin-tournament-page .admin-footer-copy,.admin-tournament-page .admin-sidebar-hint,.admin-tournament-page .admin-tab-shell-meta,.admin-tournament-page .admin-tournament-list-item span,.admin-tournament-page .admin-tournament-list-item small,.admin-tournament-page .admin-pool-list-item span{font-size:.72rem!important;line-height:1.3!important}.admin-tournament-page .admin-link-pill,.admin-tournament-page .admin-link-pill:visited,.admin-tournament-page .admin-primary-btn,.admin-tournament-page .admin-secondary-btn,.admin-tournament-page .admin-danger-btn,.admin-tournament-page .admin-tab-btn,.admin-tournament-page .theme-toggle-btn,.admin-tournament-page .admin-text-btn{min-height:30px!important;padding:.22rem .55rem!important;font-size:.7rem!important}.admin-tournament-page .admin-header-actions{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;align-items:center!important;gap:6px!important}.admin-tournament-page .admin-header-actions>.theme-toggle-btn,.admin-tournament-page .admin-header-actions>.admin-link-pill,.admin-tournament-page .admin-header-actions>.admin-link-pill:visited,.admin-tournament-page .admin-header-actions>.admin-account-menu{flex:0 0 auto!important;width:auto!important;min-width:0!important}.admin-tournament-page .admin-header-actions .admin-account-menu-trigger{width:auto!important;min-width:0!important}.admin-tournament-page .admin-field span,.admin-tournament-page .admin-toggle span,.admin-tournament-page .admin-setting-field span,.admin-tournament-page .admin-toggle-compact span,.admin-tournament-page .admin-table th,.admin-tournament-page .admin-games-review-table th{font-size:.58rem!important}.admin-tournament-page .admin-field input,.admin-tournament-page .admin-field textarea,.admin-tournament-page .admin-field select,.admin-tournament-page .admin-team-table input,.admin-tournament-page .admin-team-table select,.admin-tournament-page .admin-team-table textarea,.admin-tournament-page .admin-setting-field input,.admin-tournament-page .admin-setting-field select,.admin-tournament-page .admin-setting-field textarea,.admin-tournament-page .admin-pool-modal .admin-table input[type=text],.admin-tournament-page .admin-pool-modal .admin-table select{min-height:28px!important;padding:.28rem .45rem!important;font-size:.7rem!important;border-radius:8px!important}.admin-tournament-page .admin-field textarea,.admin-tournament-page .admin-setting-field textarea,.admin-tournament-page .admin-table textarea{min-height:60px!important}.admin-tournament-page .admin-table th,.admin-tournament-page .admin-table td,.admin-tournament-page .admin-games-review-table th,.admin-tournament-page .admin-games-review-table td{padding:5px 6px!important;font-size:.66rem!important}.admin-tournament-page .admin-stat-card{padding:8px 9px!important}.admin-tournament-page .admin-stat-card strong{font-size:.9rem!important}.admin-tournament-page .admin-main,.admin-tournament-page .admin-main-tabs,.admin-tournament-page .admin-form-shell,.admin-tournament-page .admin-form-tabs,.admin-tournament-page .admin-section-card,.admin-tournament-page .admin-tab-shell,.admin-tournament-page .admin-tab-view,.admin-tournament-page .admin-tab-view>*,.admin-tournament-page .admin-tab-view>*>*,.admin-tournament-page .admin-team-section-stack,.admin-tournament-page .admin-team-division-card,.admin-tournament-page .admin-games-division-stack,.admin-tournament-page .admin-games-division-card,.admin-tournament-page .admin-pools-layout,.admin-tournament-page .admin-pools-list,.admin-tournament-page .admin-settings-list,.admin-tournament-page .admin-setting-row,.admin-tournament-page .admin-setting-row-split,.admin-tournament-page .admin-setting-field,.admin-tournament-page .admin-button-row,.admin-tournament-page .admin-section-head,.admin-tournament-page .admin-table-wrap{min-width:0!important;width:100%!important;max-width:100%!important}.admin-tournament-page .admin-mobile-sidebar-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;position:fixed!important;top:12px!important;right:12px!important;z-index:420!important;width:38px!important;height:38px!important;margin:0!important;border:1px solid #2a2a3a!important;border-radius:999px!important;background:#141423f5!important;color:#f3f4f6!important;box-shadow:0 10px 24px #00000047!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;font-size:1.15rem!important;line-height:1!important;padding:0!important}.admin-tournament-page .admin-mobile-sidebar-close{display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;min-height:0!important;padding:0!important}.admin-tournament-page .admin-mobile-sidebar-backdrop{display:block!important;position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;z-index:398!important;border:0!important;background:#0f172a2e!important;opacity:0!important;pointer-events:none!important;transition:opacity .18s ease!important}.admin-tournament-page .admin-mobile-sidebar-backdrop.open{opacity:1!important;pointer-events:auto!important}.admin-tournament-page .admin-section-card,.admin-tournament-page .admin-tab-shell,.admin-tournament-page .admin-tab-view,.admin-tournament-page .admin-team-division-card,.admin-tournament-page .admin-games-division-card{overflow:hidden!important}.admin-tournament-page .admin-tournament-sidebar{position:fixed!important;top:0!important;right:0!important;bottom:0!important;z-index:399!important;width:min(320px,calc(100vw - 32px))!important;max-width:min(320px,calc(100vw - 32px))!important;gap:10px!important;margin:0!important;padding:58px 10px 10px!important;border-radius:0!important;border-width:1px 0 0 1px!important;opacity:1!important;overflow-y:auto!important;pointer-events:none!important;transform:translate(105%)!important;transition:transform .22s ease,box-shadow .22s ease!important;box-shadow:none!important}.admin-tournament-page .admin-tournament-sidebar.mobile-open{transform:translate(0)!important;pointer-events:auto!important;box-shadow:-18px 0 40px #00000059!important}.admin-tournament-page .admin-tournament-sidebar.mobile-pinned{position:static!important;top:auto!important;right:auto!important;bottom:auto!important;z-index:auto!important;width:100%!important;max-width:100%!important;padding:10px!important;border-radius:10px!important;border-width:1px!important;pointer-events:auto!important;transform:none!important;box-shadow:none!important}.admin-tournament-page .admin-tournament-sidebar.mobile-pinned+.admin-form-shell,.admin-tournament-page .admin-tournament-sidebar.mobile-pinned~.admin-form-shell{margin-top:0!important}.admin-tournament-page .admin-tournament-sidebar.mobile-pinned .admin-mobile-sidebar-close,.admin-tournament-page .admin-mobile-sidebar-backdrop.hidden-when-pinned,.admin-tournament-page .admin-mobile-sidebar-toggle.hidden-when-pinned{display:none!important}.admin-tournament-page .admin-sidebar-top{flex-direction:row!important;justify-content:space-between!important;align-items:center!important}.admin-tournament-page .admin-tab-shell-head,.admin-tournament-page .admin-tab-bar-row,.admin-tournament-page .admin-section-head,.admin-tournament-page .admin-button-row,.admin-tournament-page .admin-setting-row,.admin-tournament-page .admin-setting-row-split{flex-wrap:wrap!important}.admin-tournament-page .admin-tab-bar-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important}.admin-tournament-page .admin-tab-bar{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important}.admin-tournament-page .admin-tab-btn{max-width:70vw!important}.admin-tournament-page .admin-table-wrap,.admin-tournament-page .admin-schedule-editor .schedule-table-wrap,.admin-tournament-page .admin-score-entry,.admin-tournament-page .admin-pool-modal-body{overflow-x:auto!important;overflow-y:visible!important}.admin-tournament-page .admin-team-division-card .admin-table-wrap{overflow:visible!important}.admin-tournament-page table.admin-team-table,.admin-tournament-page table.admin-team-table thead,.admin-tournament-page table.admin-team-table tbody,.admin-tournament-page table.admin-team-table tr,.admin-tournament-page table.admin-team-table th,.admin-tournament-page table.admin-team-table td{display:block!important;width:100%!important;max-width:100%!important}.admin-tournament-page table.admin-team-table{table-layout:fixed!important}.admin-tournament-page table.admin-team-table thead{display:none!important}.admin-tournament-page table.admin-team-table tbody{display:grid!important;gap:8px!important}.admin-tournament-page .admin-team-table-row{border:1px solid #2a2a3a!important;border-radius:10px!important;background:#11111a!important;padding:8px!important}.admin-tournament-page .admin-team-table-row td{border:0!important;padding:0!important}.admin-tournament-page .admin-team-table-row td+td{margin-top:6px!important}.admin-tournament-page .admin-team-table-row td:before{content:attr(data-label)!important;display:block!important;margin-bottom:3px!important;font-size:.56rem!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#9ca3af!important}.admin-tournament-page .admin-team-table-row td[data-label=Actions]:before{display:none!important}.admin-tournament-page .admin-team-table-order,.admin-tournament-page .admin-team-table-actions{width:100%!important;white-space:normal!important}.admin-tournament-page .admin-team-table-actions-inner,.admin-tournament-page .admin-team-order-buttons{display:flex!important;gap:6px!important;flex-wrap:wrap!important}.admin-tournament-page .admin-team-order-buttons>button,.admin-tournament-page .admin-team-table-actions-inner>button{flex:1 1 0!important;min-width:0!important;padding:.22rem .42rem!important;font-size:.66rem!important}.admin-tournament-page .admin-team-roster-row td{display:block!important;width:100%!important;max-width:100%!important;padding:0!important;border:0!important;margin-top:8px!important}.admin-tournament-page .admin-team-roster-row td:before{display:none!important}.admin-tournament-page .admin-section-card.score-entry.admin-score-entry{padding:.5rem!important}.admin-tournament-page .admin-score-entry .slot{margin-bottom:.75rem!important;padding:.5rem .6rem!important;border-radius:.75rem!important}.admin-tournament-page .admin-score-entry .slot-header{gap:.5rem!important;align-items:center!important;flex-wrap:wrap!important}.admin-tournament-page .admin-score-entry .slot-title{font-size:.82rem!important;line-height:1.15!important;min-width:0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important}.admin-tournament-page .admin-score-entry .slot-meta{gap:.3rem!important;font-size:.64rem!important;flex-wrap:wrap!important;justify-content:flex-start!important}.admin-tournament-page .admin-score-entry .slot-stat{padding:.2rem .55rem!important;font-size:.7rem!important}.admin-tournament-page .admin-score-entry .slot-stat.primary{padding:.3rem .7rem!important;font-size:.75rem!important}.admin-tournament-page .admin-score-entry .game-row{gap:.5rem!important;padding:.4rem .5rem!important;border-radius:.6rem!important}.admin-tournament-page .admin-score-entry .game-meta-pill,.admin-tournament-page .admin-score-entry .game-status-pill,.admin-tournament-page .admin-score-entry .meta-edit-btn,.admin-tournament-page .admin-score-entry .confirm-submissions-btn{font-size:.75rem!important}.admin-tournament-page .admin-score-entry .meta-edit-btn,.admin-tournament-page .admin-score-entry .confirm-submissions-btn{padding:.2rem .6rem!important}.admin-tournament-page .admin-score-entry .team-name{font-size:.9rem!important}.admin-tournament-page .admin-score-entry .score-input{width:3rem!important;max-width:4rem!important;font-size:1.2rem!important;padding:.2rem .35rem!important;border-radius:.5rem!important}.admin-tournament-page .admin-score-entry .score-note-inline{font-size:.76rem!important}}.admin-tournament-page{min-height:100vh;padding:24px;background:#0f1118;color:#f3f4f6}.admin-header{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:0 auto 20px;max-width:1480px;padding:16px 18px;border-radius:16px;border:1px solid #2a2a3a;background:#141423}.admin-header-copy{max-width:820px}.admin-eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#93c5fd}.admin-header-copy h1{margin:0 0 8px;font-size:clamp(28px,3vw,40px);line-height:1.02;letter-spacing:-.03em}.admin-header-copy p{margin:0;max-width:720px;color:#9ca3af;line-height:1.45;font-size:.95rem}.admin-header-actions{display:flex;gap:12px;flex-wrap:wrap}.admin-link-pill,.admin-link-pill:visited{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid #2a2a3a;background:#141423;color:#f3f4f6;text-decoration:none}.admin-link-pill.alt{background:#1d4ed8;border-color:#2563eb;color:#fff}.admin-account-menu{position:relative}.admin-account-menu-trigger{min-width:132px}.admin-account-menu-dropdown{position:absolute;top:calc(100% + 10px);right:0;min-width:190px;padding:8px;border-radius:14px;border:1px solid #2a2a3a;background:#141423;box-shadow:0 18px 40px #00000059;display:grid;gap:4px;z-index:30}.admin-account-menu-item{width:100%;border:0;background:transparent;color:#f3f4f6;border-radius:10px;text-align:left;padding:10px 12px;font-weight:600;cursor:pointer}.admin-account-menu-item:hover{background:#ffffff14}.admin-main{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px;max-width:1480px;margin:0 auto;align-items:start}.admin-sidebar-card,.admin-section-card,.admin-footer-bar{border:1px solid #2a2a3a;background:#141423;box-shadow:none;min-width:0}.admin-sidebar-card{position:sticky;top:24px;padding:18px;border-radius:16px}.admin-sidebar-card h2,.admin-section-head h2{margin:0;font-size:22px;letter-spacing:-.03em}.admin-sidebar-card p{color:#9ca3af;line-height:1.5}.admin-stack{display:grid;gap:14px}.admin-sidebar-stats{display:grid;gap:12px;margin-top:24px}.admin-stat-card{display:flex;justify-content:space-between;align-items:baseline;padding:14px 16px;border-radius:12px;background:#11111a;border:1px solid #2a2a3a}.admin-stat-card span{color:#9ca3af}.admin-stat-card strong{font-size:24px}.admin-stat-card.compact{padding:12px 14px}.admin-stat-card.compact strong{font-size:22px}.admin-sidebar-hint{margin-top:20px;padding:14px 16px;border-left:3px solid #2563eb;border-radius:12px;background:#11111a;color:#cbd5e1;line-height:1.55}.admin-form-shell{display:grid;gap:18px}.admin-section-card{padding:20px;border-radius:16px}.admin-section-head{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px;flex-wrap:wrap}.admin-section-kicker{margin:0 0 8px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#93c5fd}.admin-section-note{margin:8px 0 0;color:#9ca3af;line-height:1.5;font-size:.95rem;max-width:760px}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-grid-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-field,.admin-toggle{display:grid;gap:8px}.admin-field span,.admin-toggle span{font-size:13px;letter-spacing:.02em;color:#cbd5e1}.admin-field input,.admin-field textarea,.admin-field select{width:100%;min-height:40px;padding:9px 12px;border-radius:12px;border:1px solid #2a2a3a;background:#11111a;color:#f9fafb}.admin-field textarea{min-height:108px;resize:vertical}.admin-field-span-2{grid-column:span 2}.admin-toggle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.admin-toggle{min-height:58px;align-content:center;padding:14px 16px;border-radius:12px;background:#11111a;border:1px solid #2a2a3a}.admin-toggle input{margin-right:10px}.admin-toggle.inline{display:flex;align-items:center;align-self:end}.admin-select-field{align-content:start}.admin-primary-btn,.admin-secondary-btn,.admin-text-btn{border:0;cursor:pointer;transition:transform .12s ease,opacity .12s ease,background .12s ease}.admin-primary-btn,.admin-secondary-btn{min-height:46px;padding:0 18px;border-radius:999px;font-weight:700}.admin-danger-btn{min-height:46px;padding:0 18px;border-radius:999px;font-weight:700;border:1px solid rgba(248,113,113,.42);background:#7f1d1d4d;color:#fecaca;cursor:pointer;transition:transform .12s ease,opacity .12s ease,background .12s ease,border-color .12s ease}.admin-primary-btn{background:#2563eb;color:#fff}.admin-primary-btn.large{min-width:220px}.admin-primary-btn:disabled,.admin-secondary-btn:disabled,.admin-danger-btn:disabled{opacity:.5;cursor:default}.admin-secondary-btn{background:#1f2937;color:#f3f4f6;border:1px solid #374151}.admin-text-btn{padding:0;background:transparent;color:#93c5fd;font-weight:700}.admin-primary-btn:hover:not(:disabled),.admin-secondary-btn:hover:not(:disabled),.admin-danger-btn:hover:not(:disabled),.admin-text-btn:hover{transform:translateY(-1px)}.admin-danger-btn:hover:not(:disabled){background:#991b1b6b;border-color:#fca5a58c}.admin-sidebar-link-action{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.admin-repeater{display:grid;gap:14px}.admin-access-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.admin-repeater-card{padding:18px;border-radius:12px;background:#11111a;border:1px solid #2a2a3a}.admin-repeater-card.invalid{border-color:#ef444480;background:#7f1d1d47}.admin-repeater-card-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:14px}.admin-repeater-card-head strong{font-size:15px;letter-spacing:.01em}.admin-repeater-card-head span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.admin-repeater-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:12px}.admin-inline-note{margin-top:12px;color:#ffb4b4;font-size:13px}.admin-pools-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px}.admin-pools-list{display:grid;gap:10px;align-content:start}.admin-login-shell{max-width:560px;margin:0 auto}.admin-login-card{min-height:0}.admin-main-tabs{grid-template-columns:320px minmax(0,1fr)}.admin-tournament-sidebar{display:grid;gap:16px;max-height:calc(100vh - 64px);overflow-y:auto;overflow-x:hidden;align-self:start}.admin-sidebar-top{display:flex;justify-content:flex-start;align-items:center;gap:12px}.admin-sidebar-top h2{margin:0}.admin-sidebar-primary-action{width:100%}.admin-sidebar-actions{display:flex;flex-wrap:wrap;gap:10px}.admin-tournament-list{display:grid;gap:10px;overflow:visible;min-height:0;padding-right:4px}.admin-tournament-list-item,.admin-pool-list-item{display:grid;gap:4px;width:100%;padding:14px 16px;border-radius:12px;border:1px solid #2a2a3a;background:#11111a;color:#f3f4f6;text-align:left;cursor:pointer}.admin-tournament-list-item strong,.admin-pool-list-item strong{font-size:15px}.admin-tournament-list-item span,.admin-pool-list-item span,.admin-tournament-list-item small{color:#9ca3af}.admin-tournament-list-item.active,.admin-pool-list-item.active{border-color:#2563eb;background:#2563eb29}.admin-form-tabs{min-width:0}.admin-tab-shell{display:grid;gap:18px;min-width:0;width:100%;max-width:100%;overflow:hidden}.admin-tab-shell-head{display:flex;justify-content:space-between;align-items:end;gap:16px}.admin-tab-shell-head>*{min-width:0}.admin-tab-shell-head h2{min-width:0;overflow-wrap:anywhere}.admin-tab-shell-meta{display:grid;gap:6px;text-align:right;color:#9ca3af;font-size:13px}.admin-tab-bar{display:flex;gap:10px;border-top:1px solid #2a2a3a;padding-top:18px;overflow-x:auto}.admin-tab-bar-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.admin-tab-bar-row .admin-tab-bar{flex:1 1 auto;min-width:0}.admin-tab-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:10px;flex:0 0 auto}.admin-sidebar-subhead{margin:10px 0 6px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#cbd5e1bf}.admin-archived-list-row{display:grid;gap:6px;margin-bottom:8px}.admin-tournament-manager-modal{width:min(1080px,calc(100vw - 32px));max-width:none}.admin-tournament-manager-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-tournament-manager-section{display:grid;gap:10px;min-width:0}.admin-manager-list{display:grid;gap:10px}.admin-manager-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.admin-manager-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.admin-tab-save-btn{flex:0 0 auto;align-self:flex-start}.admin-tab-btn{min-height:44px;padding:0 16px;border:1px solid #2a2a3a;border-radius:999px;background:#11111a;color:#e5e7eb;cursor:pointer;white-space:nowrap}.admin-tab-btn.active{background:#2563eb;color:#fff;border-color:#2563eb}.admin-tab-view{display:block;min-width:0;width:100%;max-width:100%}.admin-tab-view>*{min-width:0;max-width:100%}.admin-tab-stack{display:grid;gap:18px;min-width:0}.admin-settings-list{display:grid;gap:10px}.admin-setting-row{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #222430}.admin-setting-row:has(textarea){align-items:flex-start}.admin-setting-row-split{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.admin-setting-field{display:flex;align-items:center;gap:12px}.admin-setting-field span{min-width:180px;margin:0}.admin-setting-field input,.admin-setting-field select{width:auto;min-width:220px;max-width:420px}.admin-setting-field input,.admin-setting-field select{min-height:40px;padding:9px 12px}.admin-setting-field textarea{width:min(520px,100%);min-width:320px;min-height:96px;padding:9px 12px;resize:vertical}.admin-setting-row .admin-text-btn{flex:0 0 auto}.admin-logo-preview-card{display:inline-flex;flex-direction:column;gap:10px;padding:12px;border:1px solid rgba(148,163,184,.28);border-radius:14px;background:#0f172a52}.admin-logo-preview-label{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.admin-logo-preview-image{display:block;max-width:min(280px,100%);max-height:90px;width:auto;height:auto;object-fit:contain}.admin-toggle-compact{min-height:40px;display:flex;align-items:center;gap:12px;background:transparent;border:0;padding:10px 0}.admin-toggle-compact span{min-width:180px}.admin-toggle-compact input{margin:0}.admin-button-row{display:flex;gap:10px;flex-wrap:wrap}.admin-button-row-inline{flex-wrap:nowrap;align-items:center}.admin-games-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.admin-games-division-stack{display:grid;gap:16px}.admin-games-division-card{display:grid;gap:12px}.admin-games-review-table{width:max-content;min-width:100%}.admin-games-review-table th,.admin-games-review-table td{padding:7px 9px;font-size:12px;line-height:1.3}.admin-games-review-table th{font-size:11px}.admin-games-pool-row td{padding-top:10px;padding-bottom:10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;background:#ffffff08}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:12px 14px;border-bottom:1px solid #2a2a3a;text-align:left;vertical-align:top}.admin-table th{color:#9ca3af;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.admin-table input,.admin-table textarea{width:100%;min-width:0;padding:9px 10px}.admin-table textarea{min-height:74px;resize:vertical}.admin-team-table input,.admin-team-table select,.admin-team-table textarea{width:100%;min-width:0;min-height:36px;padding:7px 10px;border-radius:12px;border:1px solid #2a2a3a;background:#11111a;color:#f9fafb}.admin-team-table input:focus,.admin-team-table select:focus,.admin-team-table textarea:focus{outline:2px solid rgba(96,165,250,.35);outline-offset:1px}.admin-schedule-stack{display:grid;gap:18px}.admin-schedule-day{display:grid;gap:12px}.admin-schedule-day-title{font-size:20px;font-weight:700;letter-spacing:-.03em}.admin-schedule-slot{display:grid;gap:12px;padding:16px;border-radius:12px;background:#11111a;border:1px solid #2a2a3a}.admin-schedule-slot-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.admin-schedule-slot-header span{color:#9ca3af}.admin-schedule-slot-games{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.admin-schedule-game{display:grid;gap:8px;padding:14px;border-radius:12px;background:#141423;border:1px solid #2a2a3a}.admin-schedule-game-top{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.admin-schedule-game-name{font-weight:700}.admin-schedule-game-teams{color:#e5e7eb}.admin-info-block-grid{display:grid;grid-template-columns:180px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}.admin-info-editor-stack{display:grid;gap:14px}.admin-info-editor-card{border:1px solid #222430;border-radius:12px;padding:12px;background:#0a0e1859;display:grid;gap:10px}.admin-info-editor-header h3{margin:0;font-size:.92rem}.admin-info-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:6px 8px;border:1px solid rgba(148,163,184,.22);border-radius:10px;background:#141c2c59}.admin-info-toolbar-group{display:inline-flex;gap:4px;padding-right:10px;margin-right:2px;border-right:1px solid rgba(148,163,184,.2)}.admin-info-toolbar-group:last-child{border-right:0;padding-right:0}.admin-info-toolbar-btn{min-width:34px;min-height:30px;padding:4px 8px;border:1px solid transparent;border-radius:8px}.admin-info-toolbar-btn.active{background:#3b82f633;border-color:#60a5faa6;color:#dbeafe;font-weight:700}.admin-info-editor-textarea{width:100%;background:#141c2c8c;border:1px solid rgba(148,163,184,.28);border-radius:10px;color:#e5e7eb;position:relative}.admin-info-editor-textarea .ProseMirror{min-height:220px;padding:9px 12px;overflow:auto;white-space:pre-wrap;line-height:1.45;outline:none}.admin-info-editor-textarea .ProseMirror img{display:block;max-width:100%;height:auto;border-radius:8px;margin:.5rem auto .5rem 0}.admin-info-editor-textarea .ProseMirror a{color:#60a5fa;text-decoration:underline;text-underline-offset:2px}.admin-info-editor-textarea.is-empty .ProseMirror:before{content:attr(data-placeholder);color:#cbd5e1b8;pointer-events:none;float:left;height:0}.admin-info-editor-textarea:focus-within{outline:2px solid rgba(96,165,250,.55);outline-offset:1px}.admin-info-editor-textarea.disabled{opacity:.72}.admin-info-editor-source{width:100%;min-height:220px;padding:9px 12px;resize:vertical;line-height:1.45;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.admin-info-editor-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.admin-pool-pill{display:grid;gap:4px;width:100%;padding:14px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#eef4ff;text-align:left;cursor:pointer}.admin-pool-pill.selected{border-color:#8dc7ffa6;background:#4988d633}.admin-pool-pill strong{font-size:15px}.admin-pool-pill span{font-size:12px;color:#eef4ffb3}.admin-pool-pill[draggable=true]{cursor:grab}.admin-pool-pill.dragging{opacity:.55}.admin-pool-section-stack{display:grid;gap:16px}.admin-pool-division-row{display:grid;gap:10px}.admin-export-division-row+.admin-export-division-row{border-top:1px solid #2a2a3a;padding-top:16px}.admin-export-link-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.admin-pool-division-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-pool-pill-row{display:flex;flex-wrap:wrap;gap:10px}.admin-pool-pill-row .admin-pool-pill{width:auto;min-width:160px}.admin-pool-modal{width:min(1360px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 40px);display:flex;flex-direction:column;overflow:hidden}.admin-pool-modal-meta{margin-bottom:14px}.admin-pool-modal-head-actions{display:flex;align-items:center;gap:8px}.admin-pool-modal-fr-btn{border:1px solid #374151;background:#111827;color:#e5e7eb;border-radius:8px;padding:.18rem .45rem;font-size:.72rem;font-weight:700;letter-spacing:.03em;min-height:28px}.admin-pool-modal-fr-btn.active{background:#dc2626;border-color:#dc2626;color:#fff}.admin-pool-modal-body{flex:1 1 auto;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:14px;padding-right:4px}.admin-pool-modal .admin-table-wrap{overflow:visible;width:fit-content;max-width:100%;align-self:flex-start}.admin-pool-modal .admin-table{width:max-content;min-width:0}.admin-pool-modal .admin-table input[type=text],.admin-pool-modal .admin-table select{width:auto;min-width:180px;max-width:260px;min-height:40px;padding:9px 12px;border-radius:12px;border:1px solid #2a2a3a;background:#11111a;color:#f9fafb}.admin-pool-modal .admin-table select{appearance:none;-webkit-appearance:none;-moz-appearance:none}.admin-pool-modal .admin-table input[type=text]:focus,.admin-pool-modal .admin-table select:focus{outline:none;border-color:#60a5fa99;box-shadow:0 0 0 3px #60a5fa29}.admin-pool-modal .admin-table input[type=checkbox]{width:18px;height:18px}.admin-division-pill.static{cursor:default}.admin-pool-team-source{display:grid;gap:8px}.admin-pool-seed-rank-empty{display:block;min-height:40px}.admin-pool-game-table th:last-child,.admin-pool-game-table td:last-child{white-space:nowrap;width:1%}.admin-pool-inline-check{display:grid;gap:6px}.admin-pool-inline-check span{font-size:12px;color:#9ca3af;line-height:1.35}.admin-pool-game-row-removed td{color:#94a3b8e6}.admin-pool-modal-actions{gap:10px;align-items:center;margin-top:14px;padding-top:12px;border-top:1px solid rgba(148,163,184,.18);flex:0 0 auto}@media (max-width: 1100px){.admin-pool-modal{width:min(1100px,calc(100vw - 24px))}}.admin-teams-toolbar{display:flex;align-items:center;margin-bottom:12px}.admin-division-pill-row{display:flex;flex-wrap:wrap;gap:10px}.admin-division-pill{border:1px solid #2d426d;background:#182235;color:#dbeafe;border-radius:999px;padding:8px 14px;font-size:.85rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}.admin-division-pill[draggable=true]{cursor:grab}.admin-division-pill.dragging{opacity:.55}.admin-team-section-stack{display:grid;gap:16px}.admin-team-division-card{display:grid;gap:12px}.admin-team-table-actions{width:1%;white-space:nowrap}.admin-team-table-actions-inner{display:flex;gap:8px;align-items:center}.admin-team-table-order{width:1%;white-space:nowrap}.admin-team-drag-cell{width:1%;white-space:nowrap;text-align:center}.admin-team-drag-handle{border:1px solid rgba(148,163,184,.3);background:#0f172a4d;color:inherit;border-radius:8px;cursor:grab;padding:2px 8px;font-size:.9rem;line-height:1}.admin-team-drag-handle:active{cursor:grabbing}.admin-team-table-row.is-dragging{opacity:.55}.admin-team-order-buttons{display:flex;gap:8px;align-items:center}.admin-team-roster-row td{padding-top:0;border-top:0}.admin-team-roster-cell{padding:0 0 14px}.admin-team-roster-details{border:1px solid rgba(148,163,184,.18);border-radius:12px;background:#0f172a52;overflow:hidden}.admin-team-roster-details summary{cursor:pointer;padding:10px 14px;font-weight:600;list-style:none}.admin-team-roster-details summary::-webkit-details-marker{display:none}.admin-team-roster-details[open] summary{border-bottom:1px solid rgba(148,163,184,.18)}.admin-team-roster-toolbar{display:flex;justify-content:flex-end;padding:12px 14px 0}.admin-roster-table{margin-top:10px}.admin-schedule-editor .schedule-edit-bar{display:flex;align-items:center;gap:.6rem;margin-bottom:.75rem;flex-wrap:wrap}.admin-schedule-editor .schedule-edit-button{padding:.25rem .7rem;border-radius:999px;border:1px solid #2a2a3a;background:#131320;color:#d1d5db;font-size:.95rem;cursor:pointer}.admin-schedule-editor .schedule-edit-button.active{background:#2563eb;border-color:#2563eb;color:#fff}.admin-schedule-editor .schedule-edit-hint{font-size:.8rem;color:#fbbf24}.admin-schedule-editor .field-editor-modal,.admin-field-editor-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:none;align-items:center;justify-content:center;z-index:99999}.admin-schedule-editor .field-editor-modal.open,.admin-field-editor-modal.open{display:flex}.admin-schedule-editor .field-editor-card,.admin-field-editor-card{max-width:520px;width:92%;background:#11111a;border:1px solid #33334a;border-radius:.75rem;padding:1rem}.admin-schedule-editor .field-editor-card.editor-scrollable,.admin-field-editor-card.editor-scrollable{max-height:80vh;overflow:auto}.admin-schedule-editor .field-editor-title,.admin-field-editor-card .field-editor-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7;margin-bottom:.5rem}.admin-schedule-editor .field-editor-row,.admin-field-editor-card .field-editor-row{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem;align-items:center;margin-bottom:.6rem}.admin-schedule-editor .field-editor-row.compact,.admin-field-editor-card .field-editor-row.compact{grid-template-columns:1fr auto}.admin-schedule-editor .field-editor-row.time-slot-row,.admin-field-editor-card .field-editor-row.time-slot-row{grid-template-columns:1.2fr 1fr 1fr 1fr 96px}#time-slot-editor-modal .field-editor-card,.admin-time-slot-editor-modal .field-editor-card.editor-scrollable{max-width:520px;width:92%}#time-slot-editor-modal .editor-row-actions button,.admin-time-slot-editor-modal .time-slot-row .admin-text-btn{white-space:nowrap;min-width:80px}.admin-time-slot-editor-modal .time-slot-row .admin-text-btn{width:80px;justify-self:end}.admin-time-slot-editor-modal .time-slot-row-labels{margin-bottom:.25rem;font-size:.74rem;font-weight:700;letter-spacing:.03em;color:#9ca3af;text-transform:uppercase}.admin-schedule-editor .field-editor-row input,.admin-field-editor-card .field-editor-row input,.admin-schedule-editor .field-editor-row select,.admin-field-editor-card .field-editor-row select,.admin-schedule-editor .field-editor-row textarea,.admin-field-editor-card .field-editor-row textarea{width:100%;padding:.35rem .5rem;border-radius:.4rem;border:1px solid #33334a;background:#0f0f18;color:#f5f5f5;font-size:.85rem}.admin-schedule-editor .field-editor-actions,.admin-field-editor-card .field-editor-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.75rem}.admin-schedule-editor .field-editor-message,.admin-field-editor-card .field-editor-message{font-size:.8rem;color:#fbbf24;min-height:1.1em}.admin-schedule-editor .schedule-date-block{margin-bottom:1rem;min-width:0}.admin-schedule-editor .schedule-date-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.85rem;font-weight:600;color:#e5e7eb;margin:0 0 .4rem;cursor:pointer;-webkit-user-select:none;user-select:none}.admin-schedule-editor .schedule-date-title:after{content:">";font-size:.85rem;opacity:.7;transform:rotate(90deg);transition:transform .2s ease}.admin-schedule-editor .schedule-date-block.collapsed .schedule-date-title:after{transform:rotate(0)}.admin-schedule-editor .schedule-date-block.collapsed .schedule-table-wrap{display:none}.admin-schedule-editor .schedule-table{width:max-content;border-collapse:collapse;min-width:620px;table-layout:fixed;background:#181818;border:1px solid #333;border-radius:.75rem;overflow:hidden}.admin-schedule-editor .schedule-slot-col,.admin-schedule-editor .schedule-col{width:102px}.admin-schedule-editor .schedule-table th,.admin-schedule-editor .schedule-table td{border:1px solid #333;padding:.35rem .4rem;vertical-align:top}.admin-schedule-editor .schedule-table thead th{position:sticky;top:0;background:#1f1f1f;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;color:#9ca3af;z-index:1}.admin-schedule-editor .schedule-slot{font-size:.7rem;font-weight:600;color:#e5e7eb;min-width:102px;max-width:102px;width:102px}.admin-schedule-editor .schedule-slot .slot-sub{display:block;font-size:.64rem;font-weight:500;color:#9ca3af;margin-top:.1rem}.admin-schedule-editor .schedule-cell{min-width:102px;max-width:102px;width:102px}.admin-schedule-editor .schedule-table-wrap{width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:visible;scrollbar-width:thin;scrollbar-gutter:stable both-edges;scrollbar-color:rgba(255,255,255,.35) rgba(0,0,0,.15);-webkit-overflow-scrolling:touch}.admin-schedule-editor .schedule-table-wrap::-webkit-scrollbar{height:10px}.admin-schedule-editor .schedule-table-wrap::-webkit-scrollbar-thumb{background:#ffffff59;border-radius:999px}.admin-schedule-editor .schedule-table-wrap::-webkit-scrollbar-track{background:#00000026}.admin-schedule-editor .schedule-game{border-radius:.6rem;padding:.3rem .4rem;background:#3b82f61f;border:1px solid rgba(59,130,246,.35);display:grid;gap:.12rem;margin-bottom:.3rem;width:100%;min-width:0;max-width:100%;overflow:hidden;box-sizing:border-box}.admin-schedule-editor .schedule-game:last-child{margin-bottom:0}.admin-schedule-editor .schedule-game.selectable,.admin-schedule-editor .unassigned-game.selectable{cursor:pointer}.admin-schedule-editor .schedule-game.selected,.admin-schedule-editor .unassigned-game.selected{outline:2px solid #fbbf24;box-shadow:0 0 0 2px #fbbf2440}.admin-schedule-editor .schedule-cell.selectable{cursor:pointer}.admin-schedule-editor .schedule-cell.selectable:hover{background:#202020}.admin-schedule-editor .schedule-cell.target{background:#3b82f61f;box-shadow:inset 0 0 0 1px #3b82f666}.admin-schedule-editor .schedule-game .game-division,.admin-schedule-editor .schedule-game .game-pool,.admin-schedule-editor .schedule-game .game-name,.admin-schedule-editor .schedule-game .game-teams,.admin-schedule-editor .unassigned-game .game-division,.admin-schedule-editor .unassigned-game .game-pool,.admin-schedule-editor .unassigned-game .game-name,.admin-schedule-editor .unassigned-game .game-teams{display:block;font-size:.56rem;min-width:0;max-width:100%;white-space:normal;overflow:hidden;overflow-wrap:anywhere;word-break:break-word}.admin-schedule-editor .schedule-game .game-teams{line-height:1.25}.admin-schedule-editor .schedule-game .game-pool,.admin-schedule-editor .schedule-game .game-teams,.admin-schedule-editor .unassigned-game .game-pool,.admin-schedule-editor .unassigned-game .game-teams{color:#cbd5f5;opacity:.8}.admin-schedule-editor .unassigned-section{margin-bottom:1.25rem;padding:.75rem;border:1px dashed #2a2a3a;border-radius:.75rem;background:#12121a}.admin-schedule-editor .unassigned-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7;margin:0 0 .6rem}.admin-schedule-editor .unassigned-table{width:100%;border-collapse:collapse}.admin-schedule-editor .unassigned-table th,.admin-schedule-editor .unassigned-table td{border-bottom:1px solid rgba(148,163,184,.18)}.admin-schedule-editor .unassigned-division{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7;text-align:left;vertical-align:top;padding:0 .6rem .6rem 0;white-space:nowrap}.admin-unassigned-pool-stack{display:grid;gap:14px;padding:8px 0}.admin-unassigned-pool-group{display:grid;gap:8px}.admin-unassigned-pool-title{font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#cbd5e1}.admin-schedule-editor .unassigned-table td{padding:0 0 .6rem;vertical-align:top}.admin-schedule-editor .unassigned-grid{display:flex;flex-wrap:wrap;gap:.4rem;align-items:flex-start}.admin-schedule-editor .unassigned-game{border-radius:.6rem;padding:.3rem .4rem;background:#94a3b81f;border:1px solid rgba(148,163,184,.35);display:inline-flex;flex-direction:column;gap:.12rem;width:auto;min-width:0;max-width:150px;align-self:flex-start;flex:0 0 auto;box-sizing:border-box;overflow:hidden;position:relative;isolation:isolate}.admin-pool-editor{display:grid;gap:16px}.admin-section-head.compact{margin-top:8px;margin-bottom:10px}.info-block-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-footer-bar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 24px;border-radius:24px}.admin-footer-copy{color:#eef4ffb8;line-height:1.5}.admin-alert,.admin-success{padding:14px 18px;border-radius:18px}.admin-success{border:1px solid rgba(103,232,168,.28);background:#4ade801f;color:#d8ffe5}body.light-mode .admin-tournament-page{background:radial-gradient(circle at top left,rgba(255,180,120,.28),transparent 32%),radial-gradient(circle at top right,rgba(104,179,255,.18),transparent 28%),linear-gradient(180deg,#f3f7fb,#edf4fb);color:#152238}body.light-mode .admin-header{background:#ffffffd6;border-color:#12253f1f;box-shadow:0 12px 28px #0f172a14}body.light-mode .admin-sidebar-card,body.light-mode .admin-section-card,body.light-mode .admin-footer-bar{background:#ffffffc7;border-color:#12253f1a}body.light-mode .admin-logo-preview-card{background:#ffffffe6;border-color:#12253f1f}body.light-mode .admin-eyebrow,body.light-mode .admin-section-kicker{color:#2563eb}body.light-mode .admin-header-copy h1,body.light-mode .admin-sidebar-card h2,body.light-mode .admin-section-head h2{color:#152238}body.light-mode .admin-header-copy p,body.light-mode .admin-sidebar-card p,body.light-mode .admin-section-note,body.light-mode .admin-footer-copy,body.light-mode .admin-sidebar-hint,body.light-mode .admin-field span,body.light-mode .admin-toggle span,body.light-mode .admin-stat-card span{color:#152238b8}body.light-mode .admin-sidebar-hint{background:#2563eb14;border-left-color:#2563ebbf}body.light-mode .admin-link-pill,body.light-mode .admin-link-pill:visited,body.light-mode .admin-field input,body.light-mode .admin-field textarea,body.light-mode .admin-field select,body.light-mode .admin-team-table input,body.light-mode .admin-team-table select,body.light-mode .admin-team-table textarea,body.light-mode .admin-pool-modal .admin-table input[type=text],body.light-mode .admin-pool-modal .admin-table select,body.light-mode .admin-toggle,body.light-mode .admin-repeater-card,body.light-mode .admin-stat-card{background:#142a460d;border-color:#142a461f;color:#152238}body.light-mode .admin-link-pill:hover,body.light-mode .admin-link-pill.alt:hover{background:#142a4617}body.light-mode .admin-link-pill.alt,body.light-mode .admin-link-pill.alt:visited{background:#2563eb;border-color:#2563eb;color:#fff}body.light-mode .admin-pool-modal-fr-btn:not(.active){background:#fff;border-color:#142a4633;color:#152238}body.light-mode .admin-account-menu-dropdown{background:#fff;border-color:#142a4624;box-shadow:0 18px 40px #0f172a1f}body.light-mode .admin-account-menu-item{color:#152238}body.light-mode .admin-account-menu-item:hover{background:#142a460f}body.light-mode .admin-primary-btn{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 8px 18px #2563eb2e}body.light-mode .admin-primary-btn:hover:not(:disabled){background:#1d4ed8}body.light-mode .admin-secondary-btn{background:#fff;border-color:#142a4624;color:#152238}body.light-mode .admin-secondary-btn:hover:not(:disabled){background:#142a460d}body.light-mode .admin-danger-btn{background:#fff1f2;border-color:#dc262640;color:#b91c1c}body.light-mode .admin-danger-btn:hover:not(:disabled){background:#ffe4e6;border-color:#dc262659}body.light-mode .admin-sidebar-subhead{color:#1522389e}body.light-mode .admin-info-editor-card{background:#ffffffe6;border-color:#142a4624}body.light-mode .admin-info-editor-header h3{color:#152238}body.light-mode .admin-info-toolbar .admin-text-btn{color:#1d4ed8}body.light-mode .admin-info-toolbar .admin-text-btn:hover:not(:disabled){color:#1e40af;background:#1d4ed814;border-radius:8px}body.light-mode .admin-info-toolbar{background:#ffffffd6;border-color:#142a4624}body.light-mode .admin-info-toolbar-group{border-right-color:#142a4624}body.light-mode .admin-info-toolbar-btn.active{background:#2563eb29;border-color:#1d4ed859;color:#1e3a8a}body.light-mode .admin-info-editor-textarea{background:#142a460a;border:1px solid rgba(20,42,70,.14);color:#152238}body.light-mode .admin-info-editor-textarea .ProseMirror a{color:#1d4ed8;text-decoration:underline}.info-html img{display:block;max-width:100%;height:auto;border-radius:8px;margin:.5rem auto .5rem 0}.info-html a{color:#9fd3ff;text-decoration:underline;text-underline-offset:2px}@media (max-width: 900px){.admin-tournament-manager-grid,.admin-manager-row{grid-template-columns:1fr}.admin-manager-actions{justify-content:flex-start}}body.light-mode .admin-primary-btn:disabled,body.light-mode .admin-secondary-btn:disabled,body.light-mode .admin-danger-btn:disabled{opacity:.55}body.light-mode .admin-tournament-list-item,body.light-mode .admin-pool-list-item,body.light-mode .admin-pool-pill,body.light-mode .admin-schedule-slot,body.light-mode .admin-schedule-game,body.light-mode .admin-tab-btn,body.light-mode .admin-division-pill{background:#142a460d;border-color:#142a461f;color:#152238}body.light-mode .admin-tournament-list-item span,body.light-mode .admin-tournament-list-item small,body.light-mode .admin-pool-list-item span,body.light-mode .admin-pool-pill span,body.light-mode .admin-tab-shell-meta,body.light-mode .admin-table th,body.light-mode .admin-schedule-slot-header span,body.light-mode .admin-schedule-game-top{color:#152238b8}body.light-mode .admin-tournament-list-item.active,body.light-mode .admin-pool-list-item.active,body.light-mode .admin-tab-btn.active,body.light-mode .admin-pool-pill.selected{background:#68b3ff24;border-color:#347ad04d}body.light-mode .admin-games-pool-row td{color:#152238b8;background:#142a460a}body.light-mode .admin-schedule-editor .schedule-game .game-pool,body.light-mode .admin-schedule-editor .schedule-game .game-teams,body.light-mode .admin-schedule-editor .unassigned-game .game-pool,body.light-mode .admin-schedule-editor .unassigned-game .game-teams,body.light-mode .admin-schedule-editor .unassigned-title,body.light-mode .admin-schedule-editor .unassigned-division,body.light-mode .admin-schedule-editor .schedule-edit-hint,body.light-mode .admin-field-editor-card .field-editor-title,body.light-mode .admin-field-editor-card .field-editor-message{color:#152238b8;opacity:1}body.light-mode .admin-schedule-editor .unassigned-section{background:#142a460a;border-color:#142a462e}body.light-mode .admin-unassigned-pool-title{color:#38506f}body.light-mode .admin-schedule-editor .schedule-cell.selectable:hover{background:#142a4614}body.light-mode .admin-schedule-editor .schedule-edit-button{border-color:#142a4629;background:#fff;color:#152238}body.light-mode .admin-schedule-editor .schedule-edit-button:hover{background:#142a460f}body.light-mode .admin-schedule-editor .schedule-edit-button.active,body.light-mode .admin-schedule-editor .schedule-edit-button.active:hover{background:#2563eb;border-color:#2563eb;color:#fff}body.light-mode .admin-schedule-editor .field-editor-card,body.light-mode .admin-field-editor-card{background:#fff;border-color:#142a461f;color:#152238;box-shadow:0 18px 40px #0f172a2e}body.light-mode .admin-schedule-editor .field-editor-row input,body.light-mode .admin-field-editor-card .field-editor-row input,body.light-mode .admin-schedule-editor .field-editor-row select,body.light-mode .admin-field-editor-card .field-editor-row select,body.light-mode .admin-schedule-editor .field-editor-row textarea,body.light-mode .admin-field-editor-card .field-editor-row textarea{background:#142a460d;border-color:#142a461f;color:#152238}body.light-mode .admin-schedule-editor .schedule-table-wrap{scrollbar-color:rgba(17,24,39,.35) rgba(0,0,0,.05)}body.light-mode .admin-schedule-editor .schedule-table-wrap::-webkit-scrollbar-thumb{background:#11182759}body.light-mode .admin-schedule-editor .schedule-table-wrap::-webkit-scrollbar-track{background:#0000000d}body.light-mode .modal-backdrop{background:#0f172a38}body.light-mode .modal-card{background:#fff;color:#152238;border:1px solid rgba(20,42,70,.12);box-shadow:0 18px 40px #0f172a2e}body.light-mode .modal-body{color:#152238d1}@media (max-width: 1100px){.admin-main{grid-template-columns:1fr}.admin-sidebar-card{position:static}.admin-grid-wide,.admin-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-setting-row-split,.admin-info-block-grid{grid-template-columns:1fr}.admin-setting-row,.admin-setting-row-split,.admin-setting-field,.admin-toggle-compact{display:grid;justify-items:stretch}.admin-setting-field span,.admin-toggle-compact span,.admin-setting-field input,.admin-setting-field select{min-width:0;max-width:none;width:100%}.admin-main-tabs{grid-template-columns:1fr}.admin-tournament-sidebar{max-height:none}}@media (max-width: 900px){.admin-tournament-page{padding:12px;overflow-x:visible}.admin-header,.admin-footer-bar,.admin-section-head{flex-direction:column;align-items:stretch}.admin-grid,.admin-grid-wide,.admin-toggle-grid,.admin-access-summary,.admin-games-meta,.admin-repeater-grid,.admin-pools-layout,.info-block-grid,.admin-info-block-grid,.admin-setting-row-split{grid-template-columns:1fr}.admin-field-span-2{grid-column:auto}.admin-sidebar-top,.admin-tab-shell-head{flex-direction:column;align-items:stretch}.admin-main,.admin-main-tabs,.admin-form-shell,.admin-tab-shell,.admin-tab-view,.admin-section-card,.admin-sidebar-card,.admin-footer-bar{min-width:0;max-width:100%}.admin-tab-view,.admin-pool-modal-body,.admin-table-wrap,.admin-schedule-editor .schedule-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-tab-shell-meta{text-align:left}.admin-header{gap:14px;padding:12px 14px;border-radius:14px;margin-bottom:14px}.admin-header-copy h1{font-size:clamp(22px,7vw,28px);margin-bottom:4px}.admin-header-copy p,.admin-section-note,.admin-footer-copy,.admin-sidebar-hint{font-size:.82rem;line-height:1.4}.admin-header-actions,.admin-button-row,.admin-manager-actions{gap:8px}.admin-header-actions>*{flex:1 1 calc(50% - 8px);min-width:0}.theme-toggle-btn{min-width:0;justify-content:center;padding:.35rem .7rem;font-size:.76rem}.admin-sidebar-card,.admin-section-card,.admin-footer-bar{border-radius:14px}.admin-sidebar-card,.admin-section-card{padding:14px}.admin-stack,.admin-tab-shell,.admin-tab-stack,.admin-form-shell{gap:12px}.admin-sidebar-card h2,.admin-section-head h2{font-size:18px}.admin-stat-card{padding:10px 12px}.admin-stat-card strong{font-size:18px}.admin-link-pill,.admin-link-pill:visited,.admin-primary-btn,.admin-secondary-btn,.admin-danger-btn,.admin-tab-btn{min-height:38px;padding:0 12px;font-size:.82rem}.admin-text-btn{font-size:.8rem}.admin-primary-btn.large,.admin-tab-save-btn,.admin-sidebar-primary-action{min-width:0;width:100%}.admin-tournament-page .admin-sidebar-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.admin-tournament-page .admin-sidebar-actions .admin-sidebar-primary-action{width:auto!important;min-width:0!important}.admin-account-menu-trigger{min-width:0}.admin-field,.admin-toggle{gap:6px}.admin-field span,.admin-toggle span,.admin-setting-field span,.admin-toggle-compact span{font-size:11px}.admin-field input,.admin-field textarea,.admin-field select,.admin-team-table input,.admin-team-table select,.admin-team-table textarea,.admin-setting-field input,.admin-setting-field select{min-height:38px;padding:8px 10px;font-size:.82rem;border-radius:10px}.admin-field textarea,.admin-setting-field textarea,.admin-table textarea{min-height:84px;padding:8px 10px;font-size:.82rem}.admin-toggle{min-height:48px;padding:10px 12px}.admin-toggle-compact{min-height:34px;gap:10px}.admin-tournament-list-item,.admin-pool-list-item{padding:10px 12px;gap:2px}.admin-tournament-list-item strong,.admin-pool-list-item strong{font-size:.88rem}.admin-tournament-list-item span,.admin-pool-list-item span,.admin-tournament-list-item small,.admin-tab-shell-meta{font-size:.72rem}.admin-tab-bar{gap:8px;padding-top:12px;padding-bottom:2px;margin:0 -2px;scroll-snap-type:x proximity;scrollbar-width:none}.admin-tab-bar::-webkit-scrollbar{display:none}.admin-tab-bar-row{flex-direction:column;align-items:stretch;gap:10px}.admin-tab-bar-row .admin-tab-bar{flex:0 0 auto}.admin-tab-btn{flex:0 0 auto;scroll-snap-align:start;max-width:42vw;overflow:hidden;text-overflow:ellipsis}.admin-setting-row{gap:10px;padding:6px 0}.admin-setting-field{gap:8px;min-width:0;width:100%}.admin-setting-field span{min-width:0}.admin-setting-field input,.admin-setting-field select,.admin-setting-field textarea{width:100%;min-width:0;max-width:none}.admin-table th,.admin-table td{padding:8px 9px;font-size:.76rem}.admin-table th,.admin-games-review-table th{font-size:.64rem}.admin-games-review-table th,.admin-games-review-table td{padding:6px 7px;font-size:.72rem}.admin-manager-row{grid-template-columns:1fr}.admin-manager-actions{justify-content:stretch}.admin-manager-actions>*{flex:1 1 100%}.admin-pool-modal,.admin-division-modal,.admin-team-roster-modal,.admin-tournament-manager-modal{width:min(100vw - 20px,100%)}.admin-pool-modal .admin-table-wrap{overflow:auto;width:100%;max-width:100%;align-self:stretch}.admin-pool-modal .admin-table{width:max-content;min-width:100%}.admin-pool-modal .admin-table input[type=text],.admin-pool-modal .admin-table select{min-width:120px;max-width:180px;min-height:34px;padding:7px 9px;font-size:.78rem}.admin-schedule-editor .schedule-table{min-width:460px}.admin-schedule-editor .schedule-slot-col,.admin-schedule-editor .schedule-col,.admin-schedule-editor .schedule-slot,.admin-schedule-editor .schedule-cell{width:78px;min-width:78px;max-width:78px}.admin-schedule-editor .schedule-table th,.admin-schedule-editor .schedule-table td{padding:.25rem}.admin-schedule-editor .schedule-game{padding:.22rem .28rem;border-radius:.5rem}.admin-schedule-editor .schedule-game .game-division,.admin-schedule-editor .schedule-game .game-pool,.admin-schedule-editor .schedule-game .game-name,.admin-schedule-editor .schedule-game .game-teams{font-size:.52rem;line-height:1.2}}@media (max-width: 480px){.admin-tournament-page{padding:10px}.admin-header,.admin-sidebar-card,.admin-section-card,.admin-footer-bar{padding:10px 11px;border-radius:12px}.admin-table input[type=checkbox],.admin-team-table input[type=checkbox],.admin-tournament-page .admin-team-table input[type=checkbox]{width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;padding:0!important}.admin-header-copy h1{font-size:20px}.admin-link-pill,.admin-link-pill:visited,.theme-toggle-btn,.admin-primary-btn,.admin-secondary-btn,.admin-danger-btn,.admin-tab-btn{min-height:34px;padding:0 10px;font-size:.76rem}.admin-field input,.admin-field textarea,.admin-field select,.admin-team-table input,.admin-team-table select,.admin-team-table textarea,.admin-setting-field input,.admin-setting-field select{min-height:34px;padding:7px 9px;font-size:.78rem}.admin-header-actions>*{flex-basis:100%}.admin-tab-btn{max-width:56vw}.admin-schedule-editor .schedule-table{min-width:392px}.admin-schedule-editor .schedule-slot-col,.admin-schedule-editor .schedule-col,.admin-schedule-editor .schedule-slot,.admin-schedule-editor .schedule-cell{width:66px;min-width:66px;max-width:66px}.admin-schedule-editor .schedule-game .game-division,.admin-schedule-editor .schedule-game .game-pool,.admin-schedule-editor .schedule-game .game-name,.admin-schedule-editor .schedule-game .game-teams{font-size:.48rem}.admin-table th,.admin-table td,.admin-games-review-table th,.admin-games-review-table td{padding:6px;font-size:.7rem}}@media (max-width: 900px){.admin-section-card.score-entry.admin-score-entry{padding:10px;overflow:hidden}.admin-score-entry #slots{min-width:0}.admin-score-entry .slot{padding:.45rem .5rem;margin-bottom:.6rem}.admin-score-entry .slot-header{flex-direction:row;align-items:center;flex-wrap:nowrap;gap:.4rem}.admin-score-entry .slot-title{font-size:.8rem;min-width:0}.admin-score-entry .slot-meta{flex-wrap:nowrap;gap:.25rem;font-size:.62rem}.admin-score-entry .slot-stat{padding:.16rem .42rem}.admin-score-entry .slot-stat.primary{padding:.2rem .5rem;font-size:.66rem}.admin-score-entry .game-row{grid-template-columns:minmax(0,1fr);gap:.5rem;padding:.35rem .4rem}.admin-score-entry .game-left,.admin-score-entry .game-center,.admin-score-entry .game-right{min-width:0;justify-content:flex-start}.admin-score-entry .game-summary-top,.admin-score-entry .game-summary-actions,.admin-score-entry .game-right-top,.admin-score-entry .game-right-status-row{flex-wrap:wrap;align-items:flex-start}.admin-score-entry .game-meta-row-pills{gap:.25rem}.admin-score-entry .game-meta-pill,.admin-score-entry .game-status-pill,.admin-score-entry .meta-edit-btn,.admin-score-entry .confirm-submissions-btn{font-size:.68rem}.admin-score-entry .meta-edit-btn,.admin-score-entry .confirm-submissions-btn{padding:.22rem .5rem}.admin-score-entry .team-name{font-size:.82rem}.admin-score-entry .score-input{width:2.35rem;max-width:2.35rem;font-size:1rem;padding:.14rem .2rem}.admin-score-entry .score-note-actions{flex-wrap:wrap;gap:.3rem}.admin-score-entry .score-note-inline{white-space:normal;overflow:visible;text-overflow:clip;font-size:.7rem}.admin-score-entry .game-right-status-row .game-status-pill{margin-left:0}.admin-score-entry .subs-wrap{gap:.3rem}.admin-score-entry .sub-pill{width:100%;min-width:0}}@media (max-width: 480px){.admin-score-entry .slot-title{font-size:.76rem}.admin-score-entry .slot-meta{font-size:.58rem}.admin-score-entry .team-name{font-size:.76rem}.admin-score-entry .score-input{width:2.1rem;max-width:2.1rem;font-size:.92rem}}.home-header-top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:.75rem}.home-header-title{margin:0;font-size:1.5rem}.home-header-subtitle{margin:.25rem 0 0;font-size:.85rem;opacity:.7}.home-header-actions{display:flex;align-items:center}.home-nav-strip{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.9rem}.home-nav-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.35rem;padding:.55rem 1rem;border-radius:12px;border:1px solid #2f3647;background:linear-gradient(180deg,#171e30f2,#0c101cf2);color:#e8edf7;text-decoration:none;font-size:.86rem;font-weight:600;letter-spacing:.02em;min-width:124px;transition:transform .12s ease-out,border-color .12s ease-out,background .12s ease-out}.home-nav-button:hover{transform:translateY(-1px);border-color:#60a5fa;background:linear-gradient(180deg,#212e4afa,#0e1423fa)}.home-nav-button.is-active{border-color:#7dd3fc;box-shadow:0 0 0 1px #7dd3fc40}.home-main{max-width:1100px;margin:0 auto;padding:1rem}.tournament-list{display:flex;flex-direction:column;gap:.65rem}.tournament-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-radius:12px;border:1px solid #2b2b2b;background:#1c1c1c;text-decoration:none;color:inherit;transition:transform .12s ease-out,box-shadow .12s ease-out,border-color .12s ease-out,background .12s ease-out}.tournament-row:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0000008c;border-color:#2563eb;background:radial-gradient(circle at top left,#1f2937 0,#050505 55%)}.tournament-row.is-development{cursor:not-allowed;opacity:.62;filter:grayscale(1)}.tournament-row.is-development:hover{transform:none;box-shadow:none;border-color:#4b5563;background:#1c1c1c}.tournament-row.live-today{position:relative;border-color:#f87171e6;box-shadow:0 0 0 1px #f8717159,0 0 10px #ef444440;overflow:hidden}.tournament-row.live-today:hover{border-color:#f87171;box-shadow:0 0 0 1px #f8717173,0 0 14px #ef444459}.tournament-row.live-today:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;padding:1px;border-radius:inherit;pointer-events:none;background:linear-gradient(110deg,#fff0 40%,#ffffffeb,#fff0 60%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;transform:translate(-160%);animation:live-border-shine 6.5s linear infinite;opacity:.65}@keyframes live-border-shine{0%{transform:translate(-160%)}46.15%{transform:translate(-160%)}to{transform:translate(160%)}}.tournament-row-main{min-width:0}.tournament-row-name{margin:0 0 .25rem;font-size:1rem;font-weight:600;line-height:1.3}.tournament-row-meta{display:flex;flex-wrap:wrap;gap:.65rem;font-size:.78rem;opacity:.85}.tournament-row-badges{display:flex;align-items:center;gap:.35rem}.tournament-row-pill-stack{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem}.live-pill{display:inline-flex;align-items:center;gap:.3rem;font-size:.64rem;font-weight:700;letter-spacing:.08em;color:#fca5a5;text-transform:uppercase}.live-pill-dot{width:.44rem;height:.44rem;border-radius:50%;background:#ef4444;box-shadow:0 0 .2rem #ef4444f2,0 0 .55rem #ef4444b3;animation:live-dot-pulse 1.25s ease-in-out infinite}@keyframes live-dot-pulse{0%,to{transform:scale(1);box-shadow:0 0 .2rem #ef4444f2,0 0 .55rem #ef4444b3}50%{transform:scale(1.25);box-shadow:0 0 .3rem #ef4444,0 0 .85rem #ef4444d9}}.tournament-row-logo{position:relative;display:flex;align-items:center;justify-content:flex-end;width:44px;height:44px;margin-right:-.2rem;overflow:hidden;flex:0 0 44px;-webkit-mask-image:linear-gradient(to right,rgba(0,0,0,0) 0%,rgba(0,0,0,1) 35%,rgba(0,0,0,1) 100%);mask-image:linear-gradient(to right,#0000,#000 35%,#000)}.tournament-row-logo img{width:100%;height:100%;object-fit:contain}.controls{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem;position:relative;z-index:30}.controls-group{display:flex;flex-wrap:wrap;gap:.5rem}.field{display:flex;flex-direction:column;gap:.2rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.field>label{opacity:.8}.field select,.field input{font:inherit;padding:.3rem .6rem;border-radius:999px;border:1px solid #333;background:#111;color:#f5f5f5;min-width:140px}.field input{min-width:200px}.field select:focus,.field input:focus{outline:none;border-color:#2563eb}.field-levels{min-width:240px}.level-dropdown{position:relative;min-width:220px;z-index:40}.level-dropdown-trigger{width:100%;font:inherit;padding:.3rem .6rem;border-radius:999px;border:1px solid #333;background:#111;color:#f5f5f5;display:flex;align-items:center;justify-content:space-between;gap:.6rem;cursor:pointer;text-transform:none;letter-spacing:normal;text-align:left}.level-dropdown-trigger:focus{outline:none;border-color:#2563eb}.level-dropdown-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.level-dropdown-caret{font-size:.7rem;opacity:.8}.level-dropdown-menu{position:absolute;top:calc(100% + .35rem);left:0;z-index:20;min-width:220px;max-width:320px;border:1px solid #333;border-radius:.75rem;background:#111;box-shadow:0 10px 24px #00000059;padding:.45rem .55rem}.level-filter-list{display:flex;flex-direction:column;gap:.15rem;align-items:flex-start;text-transform:none;letter-spacing:normal}.level-filter-item{display:flex;align-items:center;width:100%;gap:.45rem;padding:.15rem .2rem;font-size:.78rem;line-height:1.25;opacity:.9}.level-filter-item input{margin:0}.level-filter-item.checked{opacity:1}.year-section{margin-bottom:1.25rem}.year-header{display:flex;align-items:center;justify-content:space-between;font-size:.9rem;padding:.35rem .25rem;margin-bottom:.4rem;border-bottom:1px solid #222}.year-title{font-size:1rem;font-weight:600}.year-toggle{font-size:1rem;line-height:1;font-weight:600;opacity:.85;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:6px;padding:.1rem .35rem;border:1px solid transparent;background:transparent;color:#f5f5f5}.year-toggle:hover{background:#ffffff14;opacity:1}.year-toggle-caret{display:inline-block;transform:rotate(0);transition:transform .16s ease}.year-toggle-caret.is-collapsed{transform:rotate(-90deg)}.year-section-content{overflow:hidden;max-height:2400px;padding-top:4px;opacity:1;transform:translateY(0);transition:max-height .24s ease,opacity .18s ease,transform .18s ease;will-change:max-height,opacity,transform}.year-section-content.is-collapsed{max-height:0;padding-top:0;opacity:0;transform:translateY(-4px)}@media (prefers-reduced-motion: reduce){.year-toggle-caret,.year-section-content{transition:none}}.teams-page-main{display:grid;gap:1rem}.teams-page-actions{display:flex;align-items:center}.teams-discovery-card{display:grid;gap:.9rem;padding:1rem;border:1px solid #252b39;border-radius:18px;background:#0d111dfa}.teams-filter-strip{display:flex;flex-wrap:wrap;gap:.55rem}.teams-filter-row{display:flex;flex-wrap:wrap;gap:.75rem}.teams-year-field,.teams-year-field select{min-width:180px}.teams-filter-chip{padding:.5rem .9rem;border-radius:999px;border:1px solid #374151;background:#111827;color:#e5eefc;cursor:pointer;font:inherit}.teams-filter-chip.is-active{border-color:#7dd3fc;background:linear-gradient(180deg,#133451,#0e2235)}.teams-search-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem}.teams-search-field{min-width:min(100%,360px)}.teams-search-field input{min-width:min(100%,320px)}.teams-results-summary{font-size:.85rem;opacity:.8}.teams-results-table{border:1px solid #262d3a;border-radius:18px;overflow:hidden;background:#0a0c13f2;max-width:100%}.teams-results-header,.teams-result-row{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1.15fr) minmax(130px,.7fr) 90px 90px;gap:.75rem}.teams-results-header{padding:.85rem 1rem;border-bottom:1px solid #232a37;background:#101622;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#93a4bf}.teams-results-body{display:grid}.teams-result-card{border-bottom:1px solid #1d2430}.teams-result-card:last-child{border-bottom:none}.teams-result-row{width:100%;padding:.9rem 1rem;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.teams-result-row:hover{background:#111827eb}.teams-result-card.is-expanded .teams-result-row{background:#121b2af2}.teams-result-cell{min-width:0;overflow:hidden;text-overflow:ellipsis}.teams-result-team{font-weight:700}.teams-tournament-link{color:inherit;text-decoration:underline;text-decoration-color:#93c5fd8c;text-underline-offset:.14em}.teams-tournament-link:hover{color:#bfdbfe}.teams-result-panel{padding:0 1rem 1rem;background:linear-gradient(180deg,#090c13fa,#0c0f18fa);min-width:0;overflow-x:hidden}.teams-match-static{align-items:center}.score-text-pill{min-width:112px;padding:.5rem .75rem;font-size:.84rem}.score-text-pill.is-win{background:#22c55e24;border-color:#22c55e47;color:#dcfce7}.score-text-pill.is-loss{background:#ef44441f;border-color:#ef44443d;color:#fee2e2}.teams-empty-games{margin:0;padding:.75rem 0}@media (max-width: 768px){.home-main{padding:.75rem .5rem}.controls{align-items:stretch}.controls-group{width:100%}.field{flex:1 1 45%}.field input,.field select{width:100%;min-width:0}.teams-search-row{align-items:stretch}.teams-results-header{display:grid;grid-template-columns:minmax(100px,1.15fr) minmax(100px,1fr) minmax(72px,.7fr) 54px 54px;gap:.45rem;padding:.65rem .75rem;font-size:.58rem;letter-spacing:.05em}.teams-result-row{grid-template-columns:minmax(100px,1.15fr) minmax(100px,1fr) minmax(72px,.7fr) 54px 54px;gap:.45rem;padding:.72rem .75rem;font-size:.73rem}.teams-result-cell:before{display:none}.teams-result-cell,.teams-tournament-link{font-size:.73rem}}@media (max-width: 480px){.controls{flex-direction:column}.card{padding:.7rem .75rem .8rem}.tournament-row{flex-direction:row;align-items:center;flex-wrap:nowrap}.tournament-row-main{flex:1 1 auto;min-width:0}.tournament-row-badges{width:auto;justify-content:flex-end;align-self:flex-end;flex-wrap:nowrap}.tournament-row-logo{margin-left:auto}}.tournament-page .card{cursor:default;transition:none;background:#1c1c1c;border-color:#2b2b2b}.card:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0000008c;border-color:#2563eb;background:radial-gradient(circle at top left,#1f2937 0,#050505 55%)}.card-main-link{display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;color:inherit;height:100%}.card-content{position:relative}.card-name{font-size:1rem;font-weight:600;margin:0 0 .25rem;line-height:1.3}.card-dates{font-size:.8rem;opacity:.9;margin-bottom:.25rem}.card-meta{font-size:.78rem;opacity:.85;margin-bottom:.4rem}.badge-row{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.45rem}.badge{display:inline-block;padding:.1rem .5rem;border-radius:999px;border:1px solid #444;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;opacity:.9}.badge-type-default{border-color:#4b5563;background:#1f293799}.badge-type-cei{border-color:#2563eb;background:#2563eb14;color:#bfdbfe}.badge-type-cuuc{border-color:#eab308;background:#eab3081a;color:#facc15}.badge-type-c4uc{border-color:#22c55e;background:#22c55e1a;color:#bbf7d0}.card-footer{display:flex;justify-content:flex-end}.btn-card{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .65rem;font-size:.75rem;border-radius:999px;border:1px solid #1d4ed8;background:#2563eb26;color:#dbeafe;text-decoration:none;white-space:nowrap;cursor:pointer}.btn-card:hover{background:#2563eb59}.app-header{padding:16px 18px;background:#222;border-bottom:1px solid #333;position:sticky;top:0;z-index:10}.tournament-page header{padding:1rem 1.5rem;background:#222;border-bottom:1px solid #333;position:sticky;top:0;z-index:1000;isolation:isolate}.header-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px}.tournament-page .header-top{align-items:center}.tournament-page .header-top>div:last-child{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.tournament-organizer-logo{display:none;align-items:center;justify-content:flex-end;width:52px;height:52px;margin-left:0}.tournament-organizer-logo.is-visible{display:flex}.tournament-organizer-logo img{width:100%;height:100%;object-fit:contain}@media (max-width: 724px){.tournament-page .header-top>div:last-child{width:100%;justify-content:flex-end;flex-wrap:nowrap;gap:8px}}@media (max-width: 640px){.tournament-page .header-top{align-items:flex-start}.tournament-page .header-top>div:last-child{width:100%;justify-content:flex-end;flex-wrap:nowrap;gap:8px}.tournament-organizer-logo{width:52px;justify-content:flex-end}}.header-left{display:flex;flex-direction:column;gap:.2rem;min-width:0}.tournament-header-top{justify-content:flex-end}.header-title h1{margin:8px 0 6px}.header-subtitle{margin:.25rem 0 0;font-size:.85rem;opacity:.7}.emergency-notice{display:none;margin:12px 18px 0;padding:10px 14px;border-radius:12px;border:1px solid #f59e0b;background:#f59e0b2e;color:#fef3c7;font-weight:600;white-space:pre-wrap}#content{padding:1rem;max-width:1000px;margin:0 auto;position:relative;z-index:0}body.full-schedule-view #content{max-width:95%;overflow-x:hidden}.emergency-notice.visible{display:block}body.light-mode{background:#f6f7fb;color:#111827}body.light-mode .app-loading,body.light-mode .tournament-loading{color:#1f2937}body.light-mode .loading-spinner{border-color:#11182726;border-top-color:#2563eb}body.light-mode .card,body.light-mode .pool-card,body.light-mode table,body.light-mode th,body.light-mode td,body.light-mode .game-box,body.light-mode .teams-game-row{background:#fff;color:#111827;border-color:#e5e7eb}body.light-mode .tournament-page .game-box.live-game,body.light-mode .teams-game-row.live-game{border-color:#ef4444;box-shadow:0 0 0 1px #ef444457,0 0 16px #ef444452}body.light-mode .tournament-page tr.live-game-row{box-shadow:none}body.light-mode .tournament-page tr.live-game-row td{background:transparent;box-shadow:inset 0 8px 10px -12px #ef4444b8,inset 0 -8px 10px -12px #ef4444b8}body.light-mode .tournament-page tr.live-game-row td:first-child{border-left:3px solid rgba(239,68,68,.9);box-shadow:inset 1px 0 #dc2626d9,inset 0 8px 10px -12px #ef4444b8,inset 0 -8px 10px -12px #ef4444b8,-6px 0 10px #ef444438}body.light-mode .tournament-page tr.live-game-row td:last-child{border-right:3px solid rgba(239,68,68,.9);box-shadow:inset -1px 0 #dc2626d9,inset 0 8px 10px -12px #ef4444b8,inset 0 -8px 10px -12px #ef4444b8,6px 0 10px #ef444438}body.light-mode .tournament-page .card{background:#fff;border-color:#e5e7eb}body.light-mode .teams-game-row:hover{background:#fff;border-color:#e5e7eb;box-shadow:none}body.light-mode .teams-game-row.is-selected-for-navigation{border-color:#2563ebeb;box-shadow:0 0 0 1px #2563eb38,0 10px 22px #2563eb24}body.light-mode .teams-game-row.live-game:hover{border-color:#dc2626;box-shadow:0 0 0 1px #dc26265c,0 0 20px #dc262657}body.light-mode .teams-game-row.live-game.is-selected-for-navigation{border-color:#2563ebeb;box-shadow:0 0 0 1px #2563eb38,0 10px 22px #2563eb24}body.light-mode .button.ghost,body.light-mode .tab-button,body.light-mode .team-pill,body.light-mode .filter-row select,body.light-mode .teams-controls select,body.light-mode .btn-secondary,body.light-mode .back-link,body.light-mode .lang-select,body.light-mode .theme-toggle-btn{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .btn-secondary:hover,body.light-mode .back-link:hover,body.light-mode .theme-toggle-btn:hover{background:#f3f4f6}body.light-mode .btn-primary,body.light-mode .button{background:#111827;color:#fff;border-color:#111827}body.light-mode .division-tab{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .division-tab:hover{background:#f3f4f6}body.light-mode .division-tab.active{background:#111827;color:#fff;border-color:#111827}body.light-mode .division-tab-teams{background:#e5e7eb;color:#1f2937;border-color:#cbd5e1}body.light-mode .division-tab-teams.active{background:#9ca3af;color:#111827;border-color:#9ca3af}body.light-mode .tab-button.active,body.light-mode .team-pill.active{background:#111827;color:#fff;border-color:#111827}body.light-mode .score-box,body.light-mode .teams-score-pill,body.light-mode .spirit-pill-cell{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .teams-score-pill.win{background:#2163cc14;border-color:#2163cc;box-shadow:inset 0 0 0 1px #2163cc59}body.light-mode .teams-controls select,body.light-mode .teams-controls input,body.light-mode .teams-score-input,body.light-mode .teams-spirit-comment{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .teams-spirit-pill-group{background:#fff;border-color:#d1d5db}body.light-mode .teams-spirit-pill{color:#111827}body.light-mode .teams-spirit-pill.active{background:#111827;color:#fff}body.light-mode .teams-toast{background:#fff;color:#111827;border-color:#e5e7eb}body.light-mode .spirit-game-card{background:#fff;border:1px solid #e5e7eb}body.light-mode .spirit-pill-group,body.light-mode .spirit-total-pill,body.light-mode .spirit-comment-pill{background:#fff;border:1px solid #d1d5db;border-color:#d1d5db;color:#111827}body.light-mode .spirit-pill-cell{border-left-color:#d1d5db}body.light-mode .rank-badge{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .tiebreak-text{color:#6b7280;opacity:1}body.light-mode .emergency-notice{border-color:#d97706;background:#fbbf242e;color:#92400e}body.light-mode .info-link a{color:#1d4ed8}body.light-mode .info-html a{color:#1d4ed8;text-decoration:underline}body.light-mode .info-block,body.light-mode .info-section-title,body.light-mode .info-team-card h4{color:#1f2937}body.light-mode .info-block{opacity:1}body.light-mode .info-card .muted{color:#6b7280;opacity:1}body.light-mode .app-header{background:#fff;border-bottom-color:#e5e7eb}body.light-mode .tournament-page header{background:#fff;color:#111827;border-bottom-color:#e5e7eb}body.light-mode .tournament-subtitle{color:#374151;opacity:.85}body.light-mode .pool-header,body.light-mode .pool-name,body.light-mode .pool-meta{color:#111827}body.light-mode .tournament-page th{border-bottom-color:#cbd5e1}body.light-mode .tournament-page td,body.light-mode .tournament-page tr:not(:last-child) td{border-bottom-color:#e5e7eb}body.light-mode .pool-card,body.light-mode .teams-game-row{box-shadow:0 2px 6px #0f172a14}body.light-mode .game-box{background:#f9fafc;box-shadow:0 2px 6px #0f172a14}body.light-mode .game-box-header{background:#f9fafc;color:#6b7280}body.light-mode .home-page{background:#f6f7fb}body.light-mode .home-header{background:#fff;border-bottom-color:#e5e7eb}body.light-mode .home-nav-button{border-color:#cbd5e1;background:linear-gradient(180deg,#f8fbff,#e9eef8);color:#122033}body.light-mode .home-nav-button:hover{border-color:#2563eb;background:linear-gradient(180deg,#fff,#dee8f8)}body.light-mode .home-nav-button.is-active{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb29}body.light-mode .tournament-row{border-color:#e5e7eb;background:#fff}body.light-mode .tournament-row:hover{border-color:#2563eb;box-shadow:0 6px 18px #0f172a1f;background:radial-gradient(circle at top left,#fff 0,#e2e8f0 55%)}body.light-mode .tournament-row.is-development:hover{border-color:#d1d5db;box-shadow:none;background:#fff}body.light-mode .tournament-row.live-today{border-color:#ef4444;box-shadow:0 0 0 1px #ef444457,0 0 14px #ef444457;animation:live-row-breathe-light 2.2s ease-in-out infinite}body.light-mode .tournament-row.live-today:hover{border-color:#dc2626;box-shadow:0 0 0 1px #dc26266b,0 0 18px #dc262661}body.light-mode .tournament-row.live-today:after{padding:2px;opacity:1;background:linear-gradient(110deg,#fff0 38%,#fff,#fff0 62%)}@keyframes live-row-breathe-light{0%,to{box-shadow:0 0 0 1px #ef444452,0 0 11px #ef444447}50%{box-shadow:0 0 0 1px #ef44446b,0 0 15px #ef44445c}}body.light-mode .teams-discovery-card{border-color:#d7dfeb;background:#f8fbff}body.light-mode .teams-filter-chip{border-color:#cbd5e1;background:#f8fafc;color:#122033}body.light-mode .teams-filter-chip.is-active{border-color:#2563eb;background:linear-gradient(180deg,#dbeafe,#eff6ff)}body.light-mode .teams-results-table{border-color:#d7dfeb;background:#fff}body.light-mode .teams-results-header{border-color:#dbe3f0;background:#f8fafc;color:#5b6b81}body.light-mode .teams-result-card{border-color:#e5ebf4}body.light-mode .teams-result-row:hover{background:#f8fbff}body.light-mode .teams-result-card.is-expanded .teams-result-row{background:#eef5ff}body.light-mode .teams-result-panel{background:linear-gradient(180deg,#fff,#f8fbff)}body.light-mode .teams-tournament-link{text-decoration-color:#2563eb59}body.light-mode .teams-tournament-link:hover{color:#2563eb}body.light-mode .info-team-link{text-decoration-color:#2563eb59}body.light-mode .info-team-link:hover,body.light-mode .info-team-link:focus-visible{color:#2563eb}body.light-mode .score-text-pill.is-win{background:#22c55e1f;border-color:#16a34a38;color:#166534}body.light-mode .score-text-pill.is-loss{background:#ef44441a;border-color:#dc26262e;color:#991b1b}body.light-mode .theme-toggle-btn{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .theme-toggle-btn:hover{background:#f3f4f6}body.light-mode .field select,body.light-mode .field input{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .level-filter-item{color:#111827}body.light-mode .level-dropdown-trigger{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .level-dropdown-menu{background:#fff;border-color:#d1d5db;box-shadow:0 10px 24px #0f172a1f}body.light-mode .year-header{border-bottom-color:#e5e7eb}body.light-mode .year-toggle{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .year-toggle:hover{background:#f3f4f6}body.light-mode .card{border-color:#e5e7eb;background:radial-gradient(circle at top left,#fff 0,#f3f4f6 45%,#e5e7eb)}body.light-mode .card:hover{border-color:#2563eb;box-shadow:0 6px 18px #0f172a1f;background:radial-gradient(circle at top left,#fff 0,#e2e8f0 55%)}body.light-mode .badge{border-color:#cbd5e1;color:#1f2937}body.light-mode .live-pill{color:#b91c1c}body.light-mode .badge-type-default{background:#e5e7eb}body.light-mode .badge-type-cei{border-color:#2563eb;background:#2563eb1f;color:#1d4ed8}body.light-mode .badge-type-cuuc{border-color:#d97706;background:#d977061f;color:#92400e}body.light-mode .badge-type-c4uc{border-color:#16a34a;background:#16a34a1f;color:#166534}body.light-mode .btn-card{border-color:#1d4ed8;background:#2563eb1f;color:#1d4ed8}body.light-mode .btn-card:hover{background:#2563eb38}body.light-mode .schedule-date-title{color:#374151}body.light-mode .tournament-page .schedule-game.live-game{border-color:#ef4444;box-shadow:0 0 0 1px #ef44444d,0 0 14px #ef44444d}body.light-mode .schedule-table thead th{background:#f3f4f6;color:#6b7280}body.light-mode .schedule-game{background:#3b82f614;border-color:#3b82f640}body.light-mode .schedule-game-division,body.light-mode .schedule-game-name{color:#111827}body.light-mode .schedule-game-pool,body.light-mode .schedule-game-teams{color:#4b5563;opacity:1}a{color:inherit;text-decoration:none}.page{max-width:1000px;margin:0 auto;padding:20px 18px 60px}.legacy-results-note{max-width:1000px;margin:1.5rem auto 2.5rem;padding:0 18px;font-size:.75rem;line-height:1.4;text-align:center;opacity:.65;color:#9ca3af}body.light-mode .legacy-results-note{color:#6b7280}body.full-schedule-view .page,body.full-schedule-view .division-filter-bar{max-width:95%}.page-header h1{margin:0 0 6px}.page-header p{margin:0 0 12px;color:#cbd5e1}.page-header .meta{margin:0 0 12px;font-size:13px;color:#9ca3af}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn-primary,.button{padding:.45rem .9rem;border-radius:999px;border:1px solid #f5f5f5;background:#f5f5f5;color:#111;font-weight:700;font-size:.9rem;cursor:pointer}.btn-primary:hover,.button:hover{opacity:.9}.btn-secondary,.button.ghost{border:1px solid #444;background:#181818;color:#f5f5f5;padding:.45rem .9rem;border-radius:999px;font-size:.9rem;cursor:pointer}.btn-secondary:hover,.button.ghost:hover{background:#252525}.back-link{font-size:.9rem;color:#9ca3af;text-decoration:none;border-radius:999px;border:1px solid #444;padding:.4rem .9rem;display:inline-flex;align-items:center;background:#111;cursor:pointer;white-space:nowrap}.back-link:hover{background:#1f2933;color:#e5e7eb;border-color:#4b5563}.login-form{display:grid;gap:10px}.login-form label{display:grid;gap:6px;font-size:.85rem;color:#cbd5e1}.text-input{padding:.4rem .6rem;border-radius:999px;border:1px solid #333;background:#111;color:#f5f5f5;font:inherit}.text-input:focus{outline:none;border-color:#2563eb}.score-input{width:50px;margin:0 4px;padding:.25rem .4rem;border-radius:8px;border:1px solid #333;background:#111;color:#f5f5f5;font:inherit}.lang-select{background:#181818;color:#f5f5f5;border-radius:999px;border:1px solid #444;padding:.4rem .9rem;font-size:.8rem}.theme-toggle-btn{background:#181818;color:#f5f5f5;border-radius:999px;border:1px solid #444;padding:.4rem .9rem;font-size:.8rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}.theme-toggle-btn:hover{background:#252525}.theme-icon{display:inline-flex;width:16px;height:16px}.theme-icon svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.6;fill:none}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.card{position:relative;border-radius:12px;border:1px solid #333;background:#1c1c1c;padding:16px;cursor:pointer;transition:transform .12s ease-out,box-shadow .12s ease-out,border-color .12s ease-out,background .12s ease-out}.info-card{margin-bottom:16px}.filter-row{display:flex;align-items:center;gap:12px;margin:16px 0}.filter-row select{padding:6px 10px;border-radius:999px;border:1px solid #444;background:#181818;color:#f5f5f5}.pool-grid{display:grid;gap:20px}.tab-row{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.division-tab:hover{background:#252525}.division-tab.active{background:#f5f5f5;color:#111;border-color:#f5f5f5}.division-tab-info,.division-tab-games{font-weight:400;border-radius:10px;border-width:1px;padding:.45rem .9rem;background:#151515;border-color:#555;min-width:5em}.division-tab-info.active,.division-tab-games.active{background:#f5f5f5;color:#111;border-color:#f5f5f5}.tournament-page .card.no-hover:hover,.tournament-page .card.no-hover:focus-within{transform:none!important;box-shadow:none!important;border-color:#2b2b2b!important;background:#1c1c1c!important}body.light-mode .tournament-page .card.no-hover:hover,body.light-mode .tournament-page .card.no-hover:focus-within{border-left-color:#e5e7eb!important;border-right-color:#e5e7eb!important;box-shadow:none!important;background:#fff!important}.tournament-page.game-page--team-colours .game-page-roster-card--team1,.tournament-page.game-page--team-colours .game-page-roster-card--team1:hover,.tournament-page.game-page--team-colours .game-page-roster-card--team1:focus-within{border-top-color:var(--team1-accent-strong)!important;border-bottom-color:var(--team1-accent-strong)!important}.tournament-page.game-page--team-colours .game-page-roster-card--team2,.tournament-page.game-page--team-colours .game-page-roster-card--team2:hover,.tournament-page.game-page--team-colours .game-page-roster-card--team2:focus-within{border-top-color:var(--team2-accent-strong)!important;border-bottom-color:var(--team2-accent-strong)!important}.tournament-page .info-block{font-size:.8rem;line-height:1.4;opacity:.85}@media (max-width: 768px){.tournament-page .page{padding:.5rem .25rem;max-width:100%}.tournament-page .app-header{position:sticky}.tournament-page .pool-card{padding:.4rem;margin-bottom:.75rem}.tournament-page .pool-games-block th,.tournament-page .pool-games-block td{padding-left:.1rem;padding-right:.1rem}.pool-games-layout{grid-template-columns:minmax(0,1fr)!important;max-width:100%!important;margin-left:0!important}.info-teams-grid{grid-template-columns:minmax(0,1fr)}.tournament-page .standings-wrapper{width:66%;margin-left:auto;margin-right:auto}.division-filter-bar{padding:.5rem .5rem .25rem;gap:.4rem;flex-wrap:wrap;max-width:1000px;width:auto;overflow-x:visible}.division-tab{padding:.3rem .6rem;font-size:.72rem;min-width:auto}.division-tab-info,.division-tab-games,.division-tab-teams{padding:.3rem .6rem;font-size:.72rem}.tournament-page table{font-size:.8rem}.tournament-page th,.tournament-page td{padding:.2rem .25rem}.bracket-container{padding-bottom:.25rem}.bracket-column{flex:0 0 140px}.tournament-page .game-box{min-width:140px}.schedule-table{min-width:680px}}.tournament-page .card:hover{transform:none!important;box-shadow:none!important;border-color:#2b2b2b!important;background:#1c1c1c!important}body.light-mode .tournament-page .card:hover{background:#fff!important;border-color:#e5e7eb!important}body.light-mode .tournament-page.game-page--team-colours .game-page-roster-card--team1,body.light-mode .tournament-page.game-page--team-colours .game-page-roster-card--team1:hover,body.light-mode .tournament-page.game-page--team-colours .game-page-roster-card--team1:focus-within{border-top-color:var(--team1-accent-strong)!important;border-bottom-color:var(--team1-accent-strong)!important}body.light-mode .tournament-page.game-page--team-colours .game-page-roster-card--team2,body.light-mode .tournament-page.game-page--team-colours .game-page-roster-card--team2:hover,body.light-mode .tournament-page.game-page--team-colours .game-page-roster-card--team2:focus-within{border-top-color:var(--team2-accent-strong)!important;border-bottom-color:var(--team2-accent-strong)!important}.division-tab-teams.active{background:#9ca3af;color:#111;border-color:#9ca3af}.tab-button{border:1px solid #444;background:#181818;padding:6px 12px;border-radius:999px;font-size:12px;cursor:pointer;color:#f5f5f5}.tab-button.active{background:#f5f5f5;color:#111;border-color:#f5f5f5}.tournament-page .pool-card{background:#1c1c1c;border-radius:12px;padding:.75rem;margin:0 auto 1rem;box-shadow:0 2px 6px #00000080;border:none;overflow:visible;width:100%;max-width:1000px}body.light-mode .tournament-page .pool-card{background:#fff;box-shadow:0 2px 6px #0f172a14}.tournament-page .pool-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.tournament-page .pool-header:focus-visible{outline:2px solid rgba(148,163,184,.55);outline-offset:3px;border-radius:8px}.tournament-page .pool-name{font-weight:600;font-size:1.1rem;margin:0}.tournament-page .pool-header-main{min-width:0;flex:1 1 auto}.tournament-page .pool-summary{display:none;margin-top:.2rem;color:#9ca3af;font-size:.78rem;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.light-mode .tournament-page .pool-summary{color:#64748b}.tournament-page .pool-card-body{min-width:0;overflow:hidden;transition:max-height .26s ease,opacity .2s ease;will-change:max-height,opacity}.tournament-page .pool-card.is-collapsed .pool-header{margin-bottom:0}.tournament-page .pool-card.is-collapsed .pool-summary{display:block}@media (max-width: 768px){.tournament-page .pool-summary{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}}.tournament-page .pool-header-chevron{flex:0 0 auto;width:.55rem;height:.55rem;margin-left:.75rem;border-right:1.5px solid rgba(229,231,235,.45);border-bottom:1.5px solid rgba(229,231,235,.45);transform:rotate(45deg);transition:transform .18s ease,opacity .18s ease;opacity:.8}body.light-mode .tournament-page .pool-header-chevron{border-right-color:#4755696b;border-bottom-color:#4755696b}.tournament-page .pool-card.is-collapsed .pool-header-chevron{transform:rotate(-45deg);opacity:.65}.tournament-page .table-wrap{margin:.5rem 0;overflow-x:auto}.tournament-page table{width:100%;border-collapse:collapse;font-size:.85rem}.tournament-page .pool-games-block{overflow-x:auto}.tournament-page .pool-games-block table{width:100%}.tournament-page th,.tournament-page td{padding:.25rem .4rem;text-align:left}.pool-meta{color:#9ca3af;font-size:13px}.tournament-title{margin:0;font-size:1.25rem}.info-blocks{display:grid;gap:8px}.info-section-title{font-size:.9rem;margin:1rem 0 .4rem}.info-teams-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.info-teams-grid>div{min-width:0}.info-team-card h4{font-size:.85rem;margin:0 0 .2rem}.info-team-link{color:inherit;text-decoration:underline;text-decoration-color:#93c5fd8c;text-underline-offset:.14em;transition:color .14s ease}.info-team-link:hover,.info-team-link:focus-visible{color:#bfdbfe}@media (max-width: 900px){.info-teams-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.info-teams-grid{grid-template-columns:minmax(0,1fr)}}.team-notes-cell{max-width:320px;white-space:pre-wrap}.team-page-stack{display:grid;gap:16px;width:min(980px,100%);margin:0 auto}.team-page-card{display:grid;gap:12px;width:min(900px,100%);margin:0 auto}.team-page-sections{display:grid;gap:16px}.team-page-sections>.team-page-card:first-child{margin-top:8px}.team-page-sections>.team-page-card:last-child{margin-bottom:8px}.team-page-games-list{display:grid;gap:10px}.team-page-game-row{grid-template-columns:minmax(280px,390px) minmax(0,1fr);gap:14px;padding:6px 10px}.team-page-game-row .teams-meta{min-width:0}.team-page-game-row .teams-meta-top{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:.8rem;min-width:0}.team-page-meta-item{white-space:nowrap;font-size:.78rem}.team-page-game-row .teams-main{gap:4px}.team-page-scoreline{display:inline-flex;align-items:center;gap:8px}.team-page-score-sep{font-size:.78rem;opacity:.7;text-transform:uppercase;letter-spacing:.08em}.team-page-result{font-size:.8rem}.team-page-notes{margin:0;line-height:1.55;white-space:pre-wrap;opacity:.9}@media (max-width: 900px){.team-page-game-row{grid-template-columns:minmax(0,1fr)}.team-page-game-row .teams-meta{gap:4px 10px}.team-page-game-row .teams-score-pill{min-width:44px;padding:.28rem .42rem;font-size:.72rem}.team-page-scoreline{gap:6px}}@media (max-width: 600px){.team-page-stack{padding-inline:14px}.team-page-card{width:100%}.team-page-game-row.teams-game-row{grid-template-columns:minmax(0,1fr);gap:8px}.team-page-game-row .teams-meta{display:block;width:100%}.team-page-game-row .teams-meta-top{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;white-space:normal;overflow:visible;text-overflow:clip}.team-page-meta-item{white-space:nowrap}}.table-wrap{margin:12px 0;overflow-x:auto}th,td{text-align:left;padding:8px 10px;border-bottom:1px solid #2b2b2b}.tournament-page table{font-size:.85rem}.tournament-page th,.tournament-page td{padding:.25rem .4rem;border-bottom:1px solid #333}.tournament-page th{border-bottom:1px solid #444;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;opacity:.85}.tournament-page tr:not(:last-child) td{border-bottom:1px solid #333}.games-grid{display:grid;gap:10px;margin-top:12px}.pool-games-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem;align-items:stretch;margin-top:.75rem}.pool-games-layout.crossover{grid-template-columns:minmax(0,1fr);max-width:100%}.pool-games-block{min-width:0}@media (min-width: 768px){.pool-games-layout{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.pool-games-layout.crossover{grid-template-columns:minmax(0,2fr);max-width:66%;margin-left:0}}.pool-standings-title{margin:0 0 .25rem;font-size:.9rem}.standings-wrapper table{width:100%;margin:0}.rank-badge{display:inline-block;min-width:2.5rem;text-align:center;padding:.1rem .35rem;border-radius:999px;font-size:.75rem;border:1px solid #444;background:transparent;opacity:.8}.tiebreak-text{font-size:.68rem;opacity:.5;font-weight:400;letter-spacing:.01em}.game-row{display:flex;justify-content:space-between;gap:16px;padding:10px 12px;border-radius:10px;background:#1c1c1c}.game-meta{flex:1}.game-name{font-size:.55rem;opacity:.65;font-weight:500;letter-spacing:.01em}.game-sub{color:#9ca3af;font-size:.7rem}.game-teams{min-width:200px;display:grid;gap:4px}.game-team{display:flex;justify-content:space-between;gap:10px}.game-score{font-weight:600}.tournament-page .bracket-container{display:flex;gap:1rem;align-items:flex-start;overflow-x:auto;padding-top:.25rem;padding-inline:.35rem;padding-bottom:.5rem;width:100%;min-width:0}.tournament-page .bracket-scroll{display:grid;gap:.75rem;align-items:flex-start;overflow-x:auto;padding-top:.25rem;padding-inline:.35rem;padding-bottom:.5rem;width:100%;min-width:0}.tournament-page .bracket-scroll .bracket-container{overflow:visible;padding-top:0;padding-inline:0;padding-bottom:0;width:max-content;min-width:0}.tournament-page .bracket-column{display:flex;flex-direction:column;gap:.75rem;flex:0 0 220px}.tournament-page .bracket-column.is-positioned{position:relative;display:block;flex:0 0 220px;width:220px;min-width:220px;max-width:220px}.tournament-page .bracket-column.is-positioned>.game-box{margin:0}.game-box{border:1px solid #2b2b2b;border-radius:12px;background:#171717;overflow:hidden;min-width:210px;position:relative;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.tournament-page .game-box.live-game{border-color:#f87171e6;box-shadow:0 0 0 1px #f8717185,0 0 18px #ef444473}.tournament-page .game-box-live-badge{position:absolute;top:.18rem;left:.18rem;display:inline-flex;align-items:center;gap:.3rem;padding:0;color:#f87171;font-size:.62rem;font-weight:700;letter-spacing:.08em;line-height:1;z-index:3;pointer-events:none}.tournament-page .game-box-live-dot{width:.44rem;height:.44rem;border-radius:50%;background:#ef4444;box-shadow:0 0 .2rem #ef4444f2,0 0 .55rem #ef4444b3;animation:live-dot-pulse 1.25s ease-in-out infinite}.tournament-page .game-box.live-game .game-box-header{padding-top:.95rem}.tournament-page .game-box:hover,.tournament-page .game-box:focus-within{border-color:#60a5faeb;box-shadow:0 0 0 1px #60a5fa6b,0 10px 24px #2563eb2e;transform:translateY(-1px)}@media (max-width: 768px){.tournament-page .bracket-container,.tournament-page .bracket-scroll{gap:.6rem}.tournament-page .bracket-column{flex:0 0 165px}.tournament-page .bracket-column.is-positioned{flex:0 0 165px;width:165px;min-width:165px;max-width:165px}.tournament-page .game-box{min-width:165px}}.game-box-header{background:#171717;padding:.45rem .75rem;font-size:.65rem;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.advancement-popover{position:fixed;left:0;top:0;z-index:1200;display:flex;flex-direction:column;gap:.35rem;width:max-content;max-width:min(320px,calc(100vw - 24px));padding:.45rem;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#090c13f0;box-shadow:0 18px 44px #00000061;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none;opacity:0;--advancement-shift: -10px;transform:translate(var(--advancement-shift));visibility:hidden;transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s}.advancement-popover.is-visible{opacity:1;transform:translate(0);visibility:visible;pointer-events:auto;transition:opacity .18s ease,transform .18s ease,visibility 0s linear 0s}.advancement-popover-line{font-weight:600;font-size:.72rem;line-height:1.25;color:#f8fafc;background:#0f172ac7;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:.22rem .6rem;box-shadow:0 4px 14px #0000003d;text-align:left}.advancement-popover-game-link{display:inline-flex;align-items:center;justify-content:center;margin-top:.1rem;padding:.34rem .6rem;border-radius:999px;border:1px solid #60a5fa;background:#2563eb;color:#fff;font-size:.72rem;font-weight:700;text-decoration:none;cursor:pointer;box-shadow:0 6px 16px #2563eb59}.advancement-popover-game-link:hover,.advancement-popover-game-link:focus-visible{background:#1d4ed8;border-color:#93c5fd;color:#fff}.tournament-team-link{color:inherit;text-decoration:none;display:inline-block}.tournament-team-link.team-left,.tournament-team-link.team-right{width:100%}.tournament-team-link:hover,.tournament-team-link:focus-visible{text-decoration:underline;text-decoration-color:#93c5fd99;text-underline-offset:.14em}.game-box-advancement{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.65rem .75rem;background:#0a0a0a80;color:#f8fafc;font-size:.74rem;line-height:1.25;opacity:0;pointer-events:none;transition:opacity .16s ease;z-index:2;text-shadow:0 1px 2px rgba(0,0,0,.45);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.game-box:hover .game-box-advancement,.game-box:focus-within .game-box-advancement,.game-box.show-advancement .game-box-advancement{opacity:1}.game-box-advancement-line{font-weight:600;background:#0f172ac7;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:.22rem .6rem;box-shadow:0 4px 14px #00000047;text-align:center}body.light-mode .game-box-advancement{background:#ffffff9e;color:#0f172a;text-shadow:0 1px 1px rgba(255,255,255,.45)}body.light-mode .tournament-page .game-box:hover,body.light-mode .tournament-page .game-box:focus-within{border-color:#2563ebeb;box-shadow:0 0 0 1px #2563eb38,0 10px 22px #2563eb24}body.light-mode .advancement-popover{border-color:#0f172a1f;background:#fffffff5;box-shadow:0 18px 44px #0f172a29}body.light-mode .advancement-popover-line{background:#ffffffe0;border-color:#0f172a1f;color:#0f172a}body.light-mode .tournament-team-link:hover,body.light-mode .tournament-team-link:focus-visible{text-decoration-color:#2563eb66}body.light-mode .game-box-advancement-line{background:#ffffffdb;border-color:#0f172a1f;box-shadow:0 4px 14px #0f172a1f}.game-box-teams{padding:.15rem .75rem .35rem;display:flex;flex-direction:column;gap:.4rem;font-weight:500}.game-box-team-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.35rem;font-size:.85rem}.game-box-team-row>span:first-child{display:inline-block}.score-box{min-width:2.2rem;text-align:center;line-height:1;min-height:1rem;display:inline-flex;align-items:center;justify-content:center;padding:.1rem .4rem;border-radius:999px;border:1px solid #555;font-weight:600;font-size:.8rem}@media (max-width: 600px){.game-box-team-row{font-size:.75rem}.score-box,.game-box-team-row .score-box,.game-score-row .score-box{min-height:1rem;padding:.15rem .35rem;line-height:1}}.game-box-team-row .score-box{justify-self:end;min-width:2.2rem;padding:.1rem .4rem}.game-box-team-row>span{display:inline-block}.game-score-row .score-box{justify-self:center}.score-box.win{background:#2163cc1f;border:1.5px solid #2163cc;box-shadow:inset 0 0 0 1px #2163cc66;font-weight:600}body.light-mode .tournament-page .score-box.win{background:#2163cc14!important;background-color:#2163cc14;border-color:#2163cc;box-shadow:inset 0 0 0 1px #2163cc59}.score-box.empty{color:transparent;border-color:#333;opacity:.5}.score-box.score-update-flash,.teams-score-pill.score-update-flash{position:relative;overflow:visible;animation:tournament-score-pill-red-flash .9s ease-out}.score-box.score-update-flash:after,.teams-score-pill.score-update-flash:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px solid rgba(239,68,68,.95);border-radius:999px;pointer-events:none;opacity:0;transform:scale(1);animation:tournament-score-pill-red-ring .9s ease-out}@keyframes tournament-score-pill-red-flash{0%{background:#ef44448c;color:#fff}45%{background:#ef44443d;color:#fff}to{background:transparent;color:inherit}}@keyframes tournament-score-pill-red-ring{0%{opacity:.95;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}.game-notes{font-size:.7rem;opacity:.8;margin-top:.15rem}.score-note-red{margin-top:4px;font-weight:400;font-size:.7rem;font-style:italic;color:#ff4d4d}.game-box .game-notes,.game-box .score-note-red{padding:0 12px 8px}.bracket-stack{display:grid;gap:12px;max-width:100%}.bracket-sub{margin-top:12px}.games-table{width:100%;border-collapse:collapse;font-size:.85rem}.games-table th,.games-table td{padding:.25rem .4rem;text-align:left;vertical-align:top}.games-table th{border-bottom:1px solid #444;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;opacity:.85}.games-table tr:not(:last-child) td{border-bottom:1px solid #333}.games-meta{font-size:.65rem;opacity:.8;line-height:1.3}.games-meta-line{display:block}.games-meta-line-inner{display:inline-flex;align-items:center;gap:.2rem;flex-wrap:nowrap;white-space:nowrap}.games-meta-dot{display:none}.games-meta-time{white-space:nowrap}.games-meta-sep{opacity:.7}.games-time-strong{font-weight:600}.game-score-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr);align-items:center;gap:.35rem}.tournament-page tr.live-game-row{box-shadow:none}.tournament-page tr.live-game-row td{background:transparent;box-shadow:inset 0 8px 10px -12px #ef4444cc,inset 0 -8px 10px -12px #ef4444cc}.tournament-page tr.live-game-row td:first-child{border-left:3px solid rgba(248,113,113,.9);box-shadow:inset 1px 0 #f87171d9,inset 0 8px 10px -12px #ef4444cc,inset 0 -8px 10px -12px #ef4444cc,-6px 0 10px #ef44444d}.tournament-page tr.live-game-row td:last-child{border-right:3px solid rgba(248,113,113,.9);box-shadow:inset -1px 0 #f87171d9,inset 0 8px 10px -12px #ef4444cc,inset 0 -8px 10px -12px #ef4444cc,6px 0 10px #ef44444d}.team-name-cell{font-weight:500;font-size:.85rem}.team-name-cell.team-left{text-align:left;justify-self:start;width:100%}.team-name-cell.team-right{text-align:right;justify-self:end;width:100%}.standings-wrapper{min-width:0;width:100%;margin:0;display:flex;flex-direction:column;align-items:stretch;gap:6px}.games-meta-cell{vertical-align:middle}.game-name-cell{vertical-align:top}.game-name-cell.game-name-cell-center{vertical-align:middle}.game-row-live-indicator{color:#f87171;font-weight:700;display:inline-flex;align-items:center;gap:.3rem;margin-bottom:.18rem;font-size:.62rem;letter-spacing:.08em;line-height:1}.game-row-live-dot{width:.44rem;height:.44rem;border-radius:50%;background:#ef4444;box-shadow:0 0 .2rem #ef4444f2,0 0 .55rem #ef4444b3;animation:live-dot-pulse 1.25s ease-in-out infinite}.game-table-advancement{position:absolute;left:0;right:0;top:0;bottom:1px;display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:wrap;gap:.35rem;padding:.5rem .65rem;background:#0a0a0a6b;color:#f8fafc;font-size:.72rem;line-height:1.25;opacity:0;pointer-events:none;transition:opacity .16s ease;z-index:1;text-shadow:0 1px 2px rgba(0,0,0,.45);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.game-advancement-anchor{position:static}.tournament-page tr.game-advancement-row{position:relative;cursor:pointer}.tournament-page tr[data-game-href]{cursor:pointer}.tournament-page tr[data-game-href] td{transition:background .18s ease,box-shadow .18s ease}.tournament-page tr.game-advancement-row:hover .game-table-advancement,.tournament-page tr.game-advancement-row:focus-within .game-table-advancement,.tournament-page tr.game-advancement-row.show-advancement .game-table-advancement{opacity:1}.tournament-page tr.game-advancement-row:not(:last-child) td{border-bottom:1px solid #333}.tournament-page tr[data-game-href]:hover td,.tournament-page tr[data-game-href]:focus-within td,.tournament-page tr.game-advancement-row.show-advancement td{background:#0a0a0a2e;box-shadow:inset 0 1px #60a5fa14,inset 0 -1px #60a5fa14}.tournament-page tr[data-game-href]:hover td:first-child,.tournament-page tr[data-game-href]:focus-within td:first-child,.tournament-page tr.game-advancement-row.show-advancement td:first-child{box-shadow:inset 2px 0 #60a5fabf,inset 0 1px #60a5fa14,inset 0 -1px #60a5fa14}.tournament-page tr[data-game-href]:hover td:last-child,.tournament-page tr[data-game-href]:focus-within td:last-child,.tournament-page tr.game-advancement-row.show-advancement td:last-child{box-shadow:inset -2px 0 #60a5fabf,inset 0 1px #60a5fa14,inset 0 -1px #60a5fa14}.tournament-page tr[data-game-href].is-selected-for-navigation td{background:#1e293beb;box-shadow:inset 0 1px #60a5fa1a,inset 0 -1px #60a5fa1a}.tournament-page tr[data-game-href].is-selected-for-navigation td:first-child{box-shadow:inset 2px 0 #60a5fae6,inset 0 1px #60a5fa1a,inset 0 -1px #60a5fa1a}.tournament-page tr[data-game-href].is-selected-for-navigation td:last-child{box-shadow:inset -2px 0 #60a5fae6,inset 0 1px #60a5fa1a,inset 0 -1px #60a5fa1a}.game-table-advancement-line{font-weight:600;background:#0f172ac7;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:.2rem .55rem;box-shadow:0 4px 14px #0000003d;text-align:center}body.light-mode .game-table-advancement{background:#ffffffa3;color:#0f172a;text-shadow:0 1px 1px rgba(255,255,255,.45)}body.light-mode .game-table-advancement-line{background:#ffffffe0;border-color:#0f172a1f;box-shadow:0 4px 14px #0f172a1f}body.light-mode .tournament-page tr[data-game-href]:hover td,body.light-mode .tournament-page tr[data-game-href]:focus-within td,body.light-mode .tournament-page tr.game-advancement-row.show-advancement td{background:#ffffff70;box-shadow:inset 0 1px #2563eb14,inset 0 -1px #2563eb14}body.light-mode .tournament-page tr[data-game-href]:hover td:first-child,body.light-mode .tournament-page tr[data-game-href]:focus-within td:first-child,body.light-mode .tournament-page tr.game-advancement-row.show-advancement td:first-child{box-shadow:inset 2px 0 #2563ebb8,inset 0 1px #2563eb14,inset 0 -1px #2563eb14}body.light-mode .tournament-page tr[data-game-href]:hover td:last-child,body.light-mode .tournament-page tr[data-game-href]:focus-within td:last-child,body.light-mode .tournament-page tr.game-advancement-row.show-advancement td:last-child{box-shadow:inset -2px 0 #2563ebb8,inset 0 1px #2563eb14,inset 0 -1px #2563eb14}body.light-mode .tournament-page tr[data-game-href].is-selected-for-navigation td{background:#eff6ff;box-shadow:inset 0 1px #2563eb14,inset 0 -1px #2563eb14}body.light-mode .tournament-page tr[data-game-href].is-selected-for-navigation td:first-child{box-shadow:inset 2px 0 #2563ebc7,inset 0 1px #2563eb14,inset 0 -1px #2563eb14}body.light-mode .tournament-page tr[data-game-href].is-selected-for-navigation td:last-child{box-shadow:inset -2px 0 #2563ebc7,inset 0 1px #2563eb14,inset 0 -1px #2563eb14}body.light-mode .tournament-page tr.game-advancement-row:not(:last-child) td{border-bottom:1px solid #e5e7eb}.standings-advancement-anchor{position:relative}.standings-table-advancement{position:absolute;left:0;top:50%;transform:translateY(-50%);width:max-content;max-width:260px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:.35rem;padding:.35rem .45rem;background:#0a0a0a6b;color:#f8fafc;font-size:.68rem;line-height:1.2;opacity:0;pointer-events:none;transition:opacity .16s ease;z-index:3;text-shadow:0 1px 2px rgba(0,0,0,.45);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);white-space:normal}.tournament-page tr.standings-advancement-row:hover .standings-table-advancement,.tournament-page tr.standings-advancement-row:focus-within .standings-table-advancement,.tournament-page tr.standings-advancement-row.show-advancement .standings-table-advancement{opacity:1}.standings-table-advancement-line{font-weight:600;background:#0f172ac7;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:.18rem .5rem;box-shadow:0 4px 14px #0000003d;text-align:left}body.light-mode .standings-table-advancement{background:#ffffffa3;color:#0f172a;text-shadow:0 1px 1px rgba(255,255,255,.45)}body.light-mode .standings-table-advancement-line{background:#ffffffe0;border-color:#0f172a1f;box-shadow:0 4px 14px #0f172a1f}@media (hover: none),(pointer: coarse){.game-box:focus-within .game-box-advancement,.tournament-page tr.game-advancement-row:focus-within .game-table-advancement,.tournament-page tr.standings-advancement-row:focus-within .standings-table-advancement{opacity:0}.tournament-page tr.game-advancement-row:focus-within td{background:transparent}body.light-mode .tournament-page tr.game-advancement-row:focus-within td{background:transparent}.game-box.has-advancement,.tournament-page tr.game-advancement-row,.tournament-page tr.standings-advancement-row{cursor:pointer;-webkit-tap-highlight-color:transparent}.game-box-advancement,.game-table-advancement,.standings-table-advancement{font-size:.68rem}.game-box-advancement-line,.game-table-advancement-line,.standings-table-advancement-line{padding:.16rem .45rem}.advancement-popover{max-width:min(280px,calc(100vw - 20px))}}.game-box.has-advancement:focus,.game-box.has-advancement:focus-visible,.tournament-page tr.game-advancement-row:focus,.tournament-page tr.game-advancement-row:focus-visible,.tournament-page tr.standings-advancement-row:focus,.tournament-page tr.standings-advancement-row:focus-visible{outline:none}.game-box.has-advancement.is-active,.game-box.is-selected-for-navigation{border-color:#60a5faf2;box-shadow:0 0 0 1px #60a5fa73,0 10px 24px #2563eb2e;transform:translateY(-1px) scale(1.01)}.tournament-page tr.game-advancement-row.is-active td,.tournament-page tr.standings-advancement-row.is-active td{background:#1e293beb;box-shadow:inset 0 1px #60a5fa1a,inset 0 -1px #60a5fa1a}.tournament-page tr.game-advancement-row.is-active td:first-child,.tournament-page tr.standings-advancement-row.is-active td:first-child{box-shadow:inset 2px 0 #60a5fae6,inset 0 1px #60a5fa1a,inset 0 -1px #60a5fa1a}.tournament-page tr.game-advancement-row.is-active td:last-child,.tournament-page tr.standings-advancement-row.is-active td:last-child{box-shadow:inset -2px 0 #60a5fae6,inset 0 1px #60a5fa1a,inset 0 -1px #60a5fa1a}body.light-mode .game-box.has-advancement.is-active,body.light-mode .game-box.is-selected-for-navigation{border-color:#2563ebeb;box-shadow:0 0 0 1px #2563eb38,0 10px 22px #2563eb24}body.light-mode .tournament-page tr.game-advancement-row.is-active td,body.light-mode .tournament-page tr.standings-advancement-row.is-active td{background:#eff6ff;box-shadow:inset 0 1px #2563eb14,inset 0 -1px #2563eb14}body.light-mode .tournament-page tr.game-advancement-row.is-active td:first-child,body.light-mode .tournament-page tr.standings-advancement-row.is-active td:first-child{box-shadow:inset 2px 0 #2563ebc7,inset 0 1px #2563eb14,inset 0 -1px #2563eb14}body.light-mode .tournament-page tr.game-advancement-row.is-active td:last-child,body.light-mode .tournament-page tr.standings-advancement-row.is-active td:last-child{box-shadow:inset -2px 0 #2563ebc7,inset 0 1px #2563eb14,inset 0 -1px #2563eb14}.team-pill-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}.team-pill{border:1px solid #444;background:#181818;padding:6px 12px;border-radius:999px;font-size:12px;cursor:pointer}.team-pill.active{background:#f5f5f5;border-color:#f5f5f5;color:#111}.team-summary{font-size:13px;color:#9ca3af;margin-bottom:10px}.teams-games{display:grid;gap:8px;min-width:0}.teams-controls input{padding:6px 10px;border-radius:999px;border:1px solid #444;background:#181818;color:#f5f5f5;font-size:.85rem}.teams-controls select:hover,.teams-controls input:hover{background:#202020;border-color:#555}.teams-toast{max-width:1000px;margin:0 auto 10px;padding:10px 12px;border-radius:12px;border:1px solid #333;background:#181818;color:#f5f5f5;font-size:.9rem}.teams-toast.success{border-color:#2f6b3b}.teams-toast.error{border-color:#7a2e2e}.teams-toast.info{border-color:#3a3a3a}.teams-locked-message{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.teams-locked-btn{flex:0 0 auto}.teams-captain-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:20px;background:#080a12b3;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.teams-captain-modal.open{display:flex}.teams-captain-modal-card{width:min(100%,420px);border-radius:18px;border:1px solid rgba(255,255,255,.14);background:#151525;box-shadow:0 24px 60px #00000059;overflow:hidden}.teams-captain-modal-title{padding:16px 18px 10px;font-size:1rem;font-weight:700;color:#fff}.teams-captain-modal-body{padding:0 18px 16px}.teams-captain-modal-copy{margin:0 0 12px}.teams-captain-modal-input{width:100%;min-height:42px;padding:.7rem .9rem;border-radius:12px;border:1px solid #444;background:#181818;color:#f5f5f5;font-size:.95rem}.teams-captain-modal-error{min-height:1.2em;margin-top:10px;color:#ff9a9a;font-size:.88rem}.teams-captain-modal-actions{display:flex;justify-content:flex-end;gap:.6rem;padding:0 18px 18px}@media (max-width: 520px){.teams-controls{flex-direction:column;align-items:stretch}.teams-controls select,.teams-controls input{width:100%}.teams-captain-modal{padding:14px}.teams-captain-modal-title{font-size:.95rem}.teams-captain-modal-actions{flex-wrap:wrap}.teams-captain-modal-actions button{flex:1 1 140px}}.games-selected-header{margin:10px 0 6px;font-size:.95rem}.teams-game-row:hover{background:#1c1c1c;border-color:#333;box-shadow:none}.teams-game-row.is-selected-for-navigation{border-color:#60a5faeb;box-shadow:0 0 0 1px #60a5fa6b,0 10px 24px #2563eb2e}.teams-meta{font-size:.78rem;line-height:1.25;min-width:0}.teams-meta-bottom,.teams-meta-pool{font-size:.74rem}.teams-meta-bottom{margin-top:2px}.teams-meta-mobile{display:none}.teams-team{font-size:.94rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teams-score-row{display:flex;align-items:center;justify-content:center;gap:10px}.teams-score-pill.empty{color:transparent;border-color:#333;opacity:.55}.teams-score-input{width:54px;text-align:center;padding:4px 10px;border-radius:999px;border:1px solid #555;background:#111;color:#f5f5f5;font-weight:800;font-size:.95rem;outline:none}.teams-score-input:hover{border-color:#9ca3af}.teams-score-input:focus{border-color:#9ca3af;box-shadow:0 0 0 1px #9ca3af59}.teams-submit-row .btn-primary{min-width:120px}.teams-submit-btn,.teams-captain-modal-submit-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.teams-submit-btn .spinner,.teams-captain-modal-submit-btn .spinner{width:12px;height:12px;border-radius:999px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:spin .6s linear infinite;display:none}.teams-submit-btn.is-submitting .spinner,.teams-captain-modal-submit-btn.is-submitting .spinner{display:inline-block}.teams-submit-btn.is-submitted,body.light-mode .teams-submit-btn.is-submitted{background:#16a34a;border-color:#16a34a;color:#fff}.teams-spirit-wrap{display:flex;flex-direction:column;gap:8px;align-items:center}.teams-spirit-row{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:10px}.teams-spirit-label{font-size:.75rem;opacity:.85;font-weight:400}.teams-spirit-pill-group{display:inline-flex;border:1px solid #444;border-radius:999px;overflow:hidden;background:#181818}.teams-spirit-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#f5f5f5;padding:6px 12px;font-size:.9rem;cursor:pointer}.teams-spirit-pill+.teams-spirit-pill{border-left:1px solid #444}.teams-spirit-pill:hover{background:#252525}.teams-spirit-pill.active{background:#f5f5f5;color:#111}.teams-spirit-pill:focus{outline:none}.teams-spirit-pill:focus-visible{box-shadow:0 0 0 2px #9ca3af inset}.teams-spirit-comment-wrap{align-items:center;display:flex;flex-direction:column;margin-top:10px}.teams-spirit-comment-label{display:block;font-size:.8rem;opacity:.8;margin:0 0 6px}.teams-spirit-comment{width:50%;resize:vertical;min-height:22px;padding:10px 12px;border-radius:12px;border:1px solid #444;background:#181818;color:#f5f5f5;font-size:.95rem;outline:none}.teams-spirit-comment:focus{border-color:#9ca3af}.teams-submission{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:12px;color:#d1d5db}@media (max-width: 900px){.pool-games-layout{grid-template-columns:1fr}.pool-games-layout.crossover{max-width:100%}}@media (max-width: 768px){.teams-game-row{grid-template-columns:1fr}}.spirit-table th,.spirit-table td{text-align:center}.spirit-table td:first-child,.spirit-table th:first-child{text-align:left}.spirit-games{margin-top:16px;display:grid;gap:12px}.spirit-game-card{background:#1b1b1b;border-radius:10px;padding:10px;display:grid;gap:8px}.spirit-row-label{font-weight:600}.spirit-pill-cell{min-width:1.4rem;text-align:center;padding:.2rem .45rem;font-size:.8rem;border-left:1px solid #33334a}.spirit-pill-cell:first-child{border-left:none}.spirit-total-pill{min-width:32px;text-align:center;border-radius:999px;background:#16423a;color:#8fe3b5;padding:2px 6px;font-weight:600}.spirit-comment-pill{border:1px solid #9ca3af;background:#1f1f1f;color:#e5e7eb;border-radius:999px;padding:4px 10px;font-size:11px;cursor:pointer}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0f0fb3;display:grid;place-items:center;padding:20px;z-index:50}.modal-card{background:#1c1c1c;border-radius:12px;max-width:520px;width:100%;padding:18px;box-shadow:0 18px 40px #00000073}.modal-card.admin-pool-modal{width:min(1120px,calc(100vw - 32px));max-width:none}.modal-title{font-weight:700;margin-bottom:10px}.modal-body{white-space:pre-wrap;font-size:14px;color:#e5e7eb;margin-bottom:16px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.admin-division-modal{max-width:560px}.admin-roster-import-modal{width:min(1200px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);overflow:hidden;display:flex;flex-direction:column}.admin-team-roster-modal{width:min(1100px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);overflow:hidden;display:flex;flex-direction:column}.admin-team-roster-modal-body{overflow:auto;min-height:0;padding-right:4px}.admin-team-roster-modal .admin-roster-table{margin-top:8px}.admin-team-roster-modal .admin-roster-table input{min-height:36px;padding:7px 10px}.admin-modal-note{margin:0;line-height:1.5;color:#e5e7ebd1}.admin-roster-import-summary{margin-top:8px;margin-bottom:10px;flex:0 0 auto;gap:8px;grid-template-columns:repeat(6,minmax(0,1fr))}.admin-roster-import-summary .admin-stat-card.compact{padding:8px 12px;align-items:center}.admin-roster-import-summary .admin-stat-card.compact span{font-size:.8rem}.admin-roster-import-summary .admin-stat-card.compact strong{font-size:1.05rem}.admin-roster-import-mappings{margin-top:12px;margin-bottom:12px;padding:14px;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:#0f172a38;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start;overflow:auto;flex:0 1 auto;max-height:58vh}.admin-roster-import-mappings .admin-stack{gap:14px;min-width:0}.admin-roster-import-mappings .admin-field{display:grid;gap:6px}.admin-roster-import-mappings .admin-field span{font-size:.82rem;line-height:1.25}.admin-roster-import-mappings select{min-height:42px;width:100%}@media (max-width: 900px){.admin-roster-import-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-roster-import-mappings{grid-template-columns:minmax(0,1fr);max-height:48vh}}@media (max-width: 640px){.admin-roster-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-roster-import-table-wrap{max-height:24vh;overflow:auto;flex:1 1 auto;min-height:0}.admin-roster-import-row.action-add td{background:#16a34a14}.admin-roster-import-row.action-conflict td,.admin-roster-import-row.action-invalid td,.admin-roster-import-row.action-duplicate td{background:#dc262614}.admin-division-modal-actions{gap:10px;align-items:center}.full-schedule{display:grid;gap:20px;min-width:0}.schedule-date-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.85rem;font-weight:600;color:#e5e7eb;margin:0 0 .4rem;cursor:pointer;-webkit-user-select:none;user-select:none}.schedule-date-title:after{content:">";font-size:.85rem;opacity:.7;transform:rotate(90deg);transition:transform .2s ease}.schedule-date-block.collapsed .schedule-date-title:after{transform:rotate(0)}.schedule-scrollbar-inner{height:1px}.schedule-table-wrap::-webkit-scrollbar{height:8px}.schedule-table-wrap::-webkit-scrollbar-thumb{background:#fff3;border-radius:999px}.schedule-table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:680px;margin:0 auto;background:#181818;border:1px solid #333;border-radius:.75rem;overflow:hidden}.schedule-slot-col,.schedule-col{width:100px}.schedule-table thead th{position:sticky;top:0;background:#1f1f1f;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;color:#9ca3af;z-index:1}.tournament-page .schedule-table{width:max-content;border-collapse:collapse;min-width:680px}.tournament-page .schedule-slot,.tournament-page .schedule-cell{min-width:100px;max-width:100px;width:100px}@media (max-width: 700px){.tournament-page .schedule-slot,.tournament-page .schedule-cell{min-width:100px;max-width:100px;width:100px}}.tournament-page .schedule-game .game-division,.tournament-page .schedule-game .game-pool,.tournament-page .schedule-game .game-name,.tournament-page .schedule-game .game-teams{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.schedule-slot{font-size:.7rem;font-weight:600;color:#e5e7eb;min-width:140px;max-width:140px;width:140px;white-space:normal}.schedule-slot-sub{display:block;font-size:.64rem;font-weight:500;color:#9ca3af;margin-top:.1rem}.time-range-rest{white-space:nowrap}.teams-meta-sep{opacity:.72}.schedule-cell{min-width:140px;max-width:140px;width:140px}.muted{opacity:.75}.schedule-game{border-radius:.6rem;padding:.3rem .4rem;background:#3b82f61f;border:1px solid rgba(59,130,246,.35);display:grid;gap:.12rem;margin-bottom:.3rem;min-width:0}.tournament-page .schedule-game.live-game{border-color:#f87171d9;box-shadow:0 0 0 1px #f871716b,0 0 16px #ef444461}.schedule-game:last-child{margin-bottom:0}.schedule-game-division{font-size:.56rem;font-weight:600}.schedule-game-pool{font-size:.56rem;font-weight:500;color:#cbd5f5;opacity:.75}.schedule-game-name{font-size:.56rem;white-space:normal;overflow-wrap:anywhere;word-break:break-word;display:block}.schedule-game-teams{font-size:.56rem;color:#cbd5f5;opacity:.8;white-space:normal;overflow-wrap:anywhere;word-break:break-word;display:block;min-width:0}.score-entry .schedule-edit-bar{display:flex;align-items:center;gap:.6rem;margin-bottom:.6rem}.score-entry .schedule-edit-button{padding:.25rem .7rem;border-radius:999px;border:1px solid #2a2a3a;background:#131320;color:#d1d5db;font-size:1rem;cursor:pointer}.score-entry .schedule-edit-button.active{background:#2563eb;border-color:#2563eb;color:#fff}.score-entry .schedule-edit-hint{font-size:.8rem;color:#fbbf24}.score-entry .field-editor-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:none;align-items:center;justify-content:center;z-index:99999}.score-entry .field-editor-modal.open{display:flex}.score-entry .field-editor-card{max-width:520px;width:92%;background:#11111a;border:1px solid #33334a;border-radius:.75rem;padding:1rem}.score-entry .field-editor-card.editor-scrollable{max-height:80vh;overflow:auto}.score-entry .field-editor-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7;margin-bottom:.5rem}.score-entry .field-editor-row{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem;align-items:center;margin-bottom:.6rem}.score-entry .field-editor-row.compact{grid-template-columns:1fr auto}.score-entry .field-editor-row.time-slot-row{grid-template-columns:1.2fr 1fr 1fr 1fr 96px}.score-entry #time-slot-editor-modal .field-editor-card{max-width:520px;width:92%}.score-entry #time-slot-editor-modal .editor-row-actions button{white-space:nowrap;min-width:80px}.score-entry #time-slot-editor-modal .editor-row-actions{white-space:nowrap;width:96px}.score-entry .field-editor-row.time-slot-add-row{grid-template-columns:1fr 1fr 1fr auto}.score-entry .field-editor-row input,.score-entry .field-editor-row select,.score-entry .field-editor-row textarea{width:100%;padding:.35rem .5rem;border-radius:.4rem;border:1px solid #33334a;background:#0f0f18;color:#f5f5f5;font-size:.85rem}.score-entry .field-editor-row textarea{resize:vertical;min-height:7rem;font-family:inherit}.score-entry .field-editor-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.75rem}.score-entry #score-note-modal .field-editor-actions button{white-space:nowrap}.score-entry #score-note-modal .score-note-clear-btn{min-width:8rem}.score-entry #score-note-modal .score-note-save-btn{width:auto;min-width:5.5rem}.score-entry .field-editor-message{font-size:.8rem;color:#fbbf24;min-height:1.1em}.score-entry .schedule-date-block{margin-bottom:1rem}.score-entry .schedule-date-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.85rem;font-weight:600;color:#e5e7eb;margin:0 0 .4rem;cursor:pointer;-webkit-user-select:none;user-select:none}.score-entry .schedule-date-title:after{content:">";font-size:.85rem;opacity:.7;transform:rotate(90deg);transition:transform .2s ease}.score-entry .schedule-date-block.collapsed .schedule-date-title:after{transform:rotate(0)}.score-entry .schedule-date-block.collapsed .schedule-scrollbar,.score-entry .schedule-date-block.collapsed .schedule-table-wrap,.score-entry .schedule-scrollbar{display:none}.score-entry .schedule-table{width:max-content;border-collapse:collapse;min-width:820px;background:#181818;border:1px solid #333;border-radius:.75rem;overflow:hidden}.score-entry .schedule-table th,.score-entry .schedule-table td{border:1px solid #333;padding:.35rem .4rem;vertical-align:top}.score-entry .schedule-table thead th{position:sticky;top:0;background:#1f1f1f;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;color:#9ca3af;z-index:1}.score-entry .schedule-slot{font-size:.7rem;font-weight:600;color:#e5e7eb;min-width:140px;max-width:140px;width:140px}.score-entry .schedule-slot .slot-sub{display:block;font-size:.64rem;font-weight:500;color:#9ca3af;margin-top:.1rem}.score-entry .schedule-cell{min-width:140px;max-width:140px;width:140px}@media (max-width: 700px){.score-entry .schedule-slot{min-width:100px;max-width:100px}.score-entry .schedule-cell{min-width:100px;max-width:100px;width:100px}}.score-entry .schedule-table-wrap{overflow-x:scroll;scrollbar-width:thin;scrollbar-gutter:stable both-edges;scrollbar-color:rgba(255,255,255,.35) rgba(0,0,0,.15)}.score-entry .schedule-table-wrap::-webkit-scrollbar{height:10px}.score-entry .schedule-table-wrap::-webkit-scrollbar-thumb{background:#ffffff59;border-radius:999px}.score-entry .schedule-table-wrap::-webkit-scrollbar-track{background:#00000026}body.light-mode .score-entry .schedule-table-wrap{scrollbar-color:rgba(17,24,39,.35) rgba(0,0,0,.05)}body.light-mode .score-entry .schedule-table-wrap::-webkit-scrollbar-thumb{background:#11182759}body.light-mode .score-entry .schedule-table-wrap::-webkit-scrollbar-track{background:#0000000d}.score-entry .schedule-game{border-radius:.6rem;padding:.3rem .4rem;background:#3b82f61f;border:1px solid rgba(59,130,246,.35);display:grid;gap:.12rem;margin-bottom:.3rem}.score-entry .schedule-game:last-child{margin-bottom:0}.score-entry .schedule-game.selectable,.score-entry .unassigned-game.selectable{cursor:pointer}.score-entry .schedule-game.selected,.score-entry .unassigned-game.selected{outline:2px solid #fbbf24;box-shadow:0 0 0 2px #fbbf2440}.score-entry .schedule-cell.selectable{cursor:pointer}.score-entry .schedule-cell.selectable:hover{background:#202020}.score-entry .schedule-cell.target{background:#3b82f61f;box-shadow:inset 0 0 0 1px #3b82f666}.score-entry .schedule-game .game-division{font-size:.56rem;font-weight:600;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.score-entry .schedule-game .game-pool{font-size:.56rem;font-weight:500;color:#cbd5f5;opacity:.75;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.score-entry .schedule-game .game-name{font-size:.56rem;white-space:normal;overflow-wrap:anywhere;word-break:break-word;display:block}.score-entry .schedule-game .game-teams{font-size:.56rem;color:#cbd5f5;opacity:.8;white-space:normal;overflow-wrap:anywhere;word-break:break-word;display:block;min-width:0}.score-entry .unassigned-section{margin-bottom:1.25rem;padding:.75rem;border:1px dashed #2a2a3a;border-radius:.75rem;background:#12121a}.score-entry .unassigned-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7;margin:0 0 .6rem}.score-entry .unassigned-table{width:100%;border-collapse:collapse}.score-entry .unassigned-table th,.score-entry .unassigned-table td{border-bottom:1px solid rgba(148,163,184,.18)}.score-entry .unassigned-division{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7;text-align:left;vertical-align:top;padding:0 .6rem .6rem 0;white-space:nowrap}.score-entry .unassigned-table td{padding:0 0 .6rem;vertical-align:top}.score-entry .unassigned-table tr:last-child th,.score-entry .unassigned-table tr:last-child td{padding-bottom:0}.score-entry .unassigned-grid{display:flex;flex-wrap:wrap;gap:.4rem}.score-entry .unassigned-game{border-radius:.6rem;padding:.3rem .4rem;background:#94a3b81f;border:1px solid rgba(148,163,184,.35);display:grid;gap:.12rem;min-width:120px;max-width:180px;min-width:0}.score-entry .unassigned-game .game-division{font-size:.56rem;font-weight:600;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.score-entry .unassigned-game .game-pool{font-size:.56rem;font-weight:500;color:#cbd5f5;opacity:.75;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.score-entry .unassigned-game .game-name{font-size:.56rem}.score-entry .unassigned-game .game-teams{font-size:.56rem;color:#cbd5f5;opacity:.8}.score-entry #toast{position:fixed;bottom:4.5rem;left:50%;transform:translate(-50%);background:#111827;color:#f9fafb;padding:.5rem .8rem;border-radius:.65rem;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:99999}.score-entry #toast.visible{opacity:1;transform:translate(-50%,-6px)}.card h2{margin:0 0 8px;font-size:18px}.meta{color:#9ca3af;font-size:13px;display:flex;gap:8px}.error{color:#ff5b5b;font-weight:700}.score-entry .page{padding-bottom:100px}.score-entry .slot-body{margin-top:.25rem;overflow:hidden;max-height:0;opacity:0;transition:max-height .22s ease,opacity .22s ease,margin-top .22s ease;pointer-events:none}.score-entry .slot.collapsed .slot-body{margin-top:0;max-height:0;opacity:0;pointer-events:none}.score-entry .slot:not(.collapsed) .slot-body{max-height:20000px;opacity:1;pointer-events:auto}.score-entry .score-game-row{display:grid;grid-template-columns:1.5fr 1.3fr 1.4fr;gap:.6rem;padding:.5rem .6rem;border-top:1px solid #222233;border-radius:.6rem;background:#181822}.score-entry .score-game-row:first-of-type{border-top:none}.score-entry .score-game-row.scored{background:#181822}.score-entry .score-game-left{display:flex;flex-direction:column;gap:.2rem}.score-entry .score-game-left .label,.score-entry .label{font-size:.75rem;opacity:.7}.score-entry .score-game-left .value,.score-entry .value{font-size:.9rem}.score-entry .score-game-center{display:flex;flex-direction:column;justify-content:center;gap:.4rem}.score-entry .score-game-right{display:flex;flex-direction:column;justify-content:center;gap:.3rem}.score-entry .game-actions{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.score-entry .team-score{flex:1;text-align:center}.score-entry .score-game-row .score-input{width:3rem;max-width:4rem;font-size:1.2rem;font-weight:600;text-align:center;padding:.2rem .35rem;border-radius:.5rem;border:1px solid #33334a;background:#0f0f18;color:#f5f5f5;line-height:1.2}.score-entry .meta-row{display:flex;gap:.5rem}.score-entry .meta-field{flex:1}.score-entry .meta-field label{display:block;font-size:.7rem;opacity:.7;margin-bottom:.1rem}.score-entry .meta-field .text-input{width:100%;padding:.2rem .4rem;font-size:.8rem;border-radius:.35rem;border:1px solid #33334a;background:#0f0f18;color:#f5f5f5}.score-entry .meta-field-full{flex:1 1 100%}.score-entry .time-slot-card{background:#15151f;border:1px solid #222233;border-radius:.75rem;padding:.75rem;margin-bottom:.75rem}.score-entry .time-slot-header{display:flex;justify-content:space-between;gap:.5rem;align-items:baseline;margin-bottom:.5rem}.score-entry .time-slot-title{font-weight:600}.score-entry .time-slot-count{font-size:.8rem;opacity:.7}.score-entry .time-slot-edit{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;margin-bottom:.6rem}.score-entry .time-slot-edit label{font-size:.7rem;opacity:.8;text-transform:uppercase;letter-spacing:.04em}.score-entry .time-slot-edit .text-input{width:100%;max-width:140px;margin-top:.2rem;padding:.3rem .45rem;border-radius:.45rem;border:1px solid #33334a;background:#0f0f18;color:#f5f5f5}.score-entry .time-slot-games{border-top:1px dashed #2a2a3a;padding-top:.5rem;display:flex;flex-direction:column;gap:.6rem}.score-entry .time-slot-game{display:grid;grid-template-columns:80px 120px 160px 70px 1.5fr 1fr auto;gap:.5rem;align-items:center;font-size:.85rem;padding:.35rem 0}.score-entry .time-slot-game+.time-slot-game{border-top:1px solid #222233;padding-top:.5rem;margin-top:.15rem}.score-entry .time-slot-game.header{font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;opacity:.7;grid-column:1 / -1;border-bottom:1px solid #222233;background:transparent;padding:0 0 .35rem;margin-bottom:.15rem}.score-entry .time-slot-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-entry .time-slot-game-meta{font-size:.75rem;opacity:.7}.score-entry .time-slot-game-status{padding:.15rem .5rem;border-radius:999px;font-size:.7rem;border:1px solid #33334a;text-transform:uppercase;letter-spacing:.04em;justify-self:start;width:fit-content}.score-entry .time-slot-game-status.scored{color:#86efac;border-color:#166534;background:#16653433}.score-entry .time-slot-game-status.pending{color:#fbbf24;border-color:#92400e;background:#92400e33}.score-entry .spirit-filter{display:inline-flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.75rem;margin-left:15%}.score-entry .spirit-filter label{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;opacity:.75}.score-entry .spirit-filter select{background:#0f0f18;color:#f5f5f5;border:1px solid #33334a;border-radius:999px;padding:.35rem .7rem;font-size:.85rem}.score-entry .spirit-table{width:70%;border-collapse:collapse;margin-bottom:1rem;font-size:.85rem;margin-left:auto;margin-right:auto}.score-entry .spirit-table th,.score-entry .spirit-table td{padding:.35rem .4rem;border-bottom:1px solid #222233;text-align:right}.score-entry .spirit-table th:first-child,.score-entry .spirit-table td:first-child{text-align:left}.score-entry .spirit-table thead th{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.score-entry .submissions-table-wrap{overflow-x:auto}.score-entry .submissions-table-top-scroll{display:none;overflow-x:auto;overflow-y:hidden;margin-bottom:.45rem}.score-entry .submissions-table-top-scroll-inner{height:1px}.score-entry .submissions-table{width:100%;border-collapse:collapse;min-width:820px;background:#0f0f18;border:1px solid #1f1f2b;border-radius:.75rem;overflow:hidden}.score-entry .submissions-table th,.score-entry .submissions-table td{padding:.55rem .65rem;border-bottom:1px solid #222233;font-size:.85rem;text-align:left;white-space:nowrap}.score-entry .submissions-table thead th{background:#141425;color:#9ca3af;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.score-entry .submissions-table .admin-danger-text-btn{color:#ef4444}.score-entry .submission-row-inactive{background:#ef444459;color:#fee2e2}body.light-mode .score-entry .submission-row-inactive,body.light-mode .score-entry .submission-row-inactive td{background:#ef444440!important;color:#7f1d1d!important}.score-entry .spirit-games{display:flex;flex-direction:column;gap:.75rem;align-items:center}.score-entry .spirit-game-card{border:1px solid #222233;border-radius:.75rem;padding:.6rem .75rem;background:#11111a;width:fit-content;max-width:100%}.score-entry .spirit-row{display:grid;grid-template-columns:240px 130px 46px 92px;column-gap:.75rem;row-gap:.4rem;align-items:center;padding:.3rem 0}.score-entry .spirit-direction{font-size:.75rem;opacity:.75;white-space:nowrap}.score-entry .spirit-pill-group{display:inline-flex;border:1px solid #33334a;border-radius:999px;overflow:hidden;background:#0f0f18;width:124px}.score-entry .spirit-pill-cell{padding:.2rem .45rem;min-width:1.5rem;text-align:center;font-size:.8rem;border-left:1px solid #33334a}.score-entry .spirit-pill-cell:first-child{border-left:none}.score-entry .spirit-total-pill,.score-entry .spirit-comment-pill{border:1px solid #33334a;border-radius:999px;padding:.2rem .6rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;background:#0f0f18;color:#f5f5f5;cursor:default;white-space:nowrap}.score-entry .spirit-total-pill{width:44px;text-align:center}.score-entry .spirit-comment-pill{width:92px;text-align:center;margin-left:.35rem;cursor:pointer}.score-entry .spirit-row.muted{opacity:.6}.score-entry .spirit-score-4{background:#166534e0;color:#f4fff6}.score-entry .spirit-score-3{background:#22c55e99;color:#f0fff4}.score-entry .spirit-score-1{background:#dc2626eb;color:#ffecec}.score-entry .spirit-score-0{background:#dc26268c;color:#ffe9e9}.score-entry .spirit-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:none;align-items:center;justify-content:center;z-index:99999}.score-entry .spirit-modal.open{display:flex}.score-entry .spirit-modal-card{max-width:520px;width:90%;background:#11111a;border:1px solid #33334a;border-radius:.75rem;padding:1rem}.score-entry .spirit-modal-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7;margin-bottom:.5rem}.score-entry .spirit-modal-body{font-size:.9rem;line-height:1.4;white-space:pre-wrap}.score-entry .spirit-modal-actions{margin-top:.75rem;text-align:right}.score-entry #save-all-container{position:fixed;bottom:0;left:0;width:100%;background:#fffe;padding:.6rem 1rem;box-shadow:0 -3px 6px #00000026;display:flex;justify-content:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:9999;transform:translateY(100%);opacity:0;pointer-events:none;transition:transform .25s ease-out,opacity .25s ease-out}.score-entry #save-all-container.visible{transform:translateY(0);opacity:1;pointer-events:auto}.score-entry #save-all-container.dirty #save-all-button{background:#007aff;cursor:pointer}.score-entry #save-all-button .spinner{width:16px;height:16px;border-radius:999px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:spin .6s linear infinite}body.light-mode .score-entry input,body.light-mode .score-entry .time-slot-edit .text-input,body.light-mode .score-entry .field-editor-row textarea,body.light-mode .score-entry .meta-field .text-input,body.light-mode .score-entry .score-game-row .score-input,body.light-mode .score-entry .spirit-filter select{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .score-entry .time-slot-card,body.light-mode .score-entry .slot,body.light-mode .score-entry .spirit-game-card,body.light-mode .score-entry .submissions-table{background:#fff;border-color:#e5e7eb}body.light-mode .score-entry .time-slot-game+.time-slot-game,body.light-mode .score-entry .score-game-row,body.light-mode .score-entry .submissions-table th,body.light-mode .score-entry .submissions-table td{border-color:#e5e7eb}body.light-mode .score-entry .submissions-table thead th{background:#f3f4f6;color:#6b7280}body.light-mode .score-entry .time-slot-game-status,body.light-mode .score-entry .spirit-pill-group,body.light-mode .score-entry .spirit-total-pill,body.light-mode .score-entry .spirit-comment-pill{background:#fff;border-color:#d1d5db;color:#111827}body.light-mode .score-entry .spirit-table th,body.light-mode .score-entry .spirit-table td{border-bottom-color:#e5e7eb}body.light-mode .score-entry .spirit-modal{background:#0f172a59}body.light-mode .score-entry .spirit-modal-card{background:#fff;border-color:#e5e7eb}body.light-mode .score-entry .time-slot-game-meta,body.light-mode .score-entry .label,body.light-mode .score-entry .value{color:#374151}body.light-mode .score-entry .score-game-row,body.light-mode .score-entry .score-game-row.scored{background:#fff}body.light-mode .score-entry .schedule-edit-button{background:#f3f4f6;border-color:#d1d5db;color:#374151}body.light-mode .score-entry .schedule-edit-button.active{background:#2563eb;border-color:#2563eb;color:#fff}body.light-mode .score-entry .schedule-cell.selectable:hover{background:#f3f4f6}body.light-mode .score-entry .schedule-date-title{color:#374151}body.light-mode .score-entry .schedule-table{background:#fff;border-color:#e5e7eb}body.light-mode .score-entry .schedule-table th,body.light-mode .score-entry .schedule-table td{border-color:#e5e7eb}body.light-mode .score-entry .schedule-table thead th{background:#f3f4f6;color:#6b7280}body.light-mode .score-entry .schedule-slot,body.light-mode .score-entry .schedule-slot .slot-sub{color:#374151}body.light-mode .score-entry .schedule-game{background:#3b82f614;border-color:#3b82f640}body.light-mode .score-entry .schedule-game .game-division,body.light-mode .score-entry .schedule-game .game-name{color:#1f2937}body.light-mode .score-entry .schedule-game .game-pool,body.light-mode .score-entry .schedule-game .game-teams{color:#4b5563;opacity:.85}body.light-mode .score-entry .unassigned-section{background:#fff;border-color:#e5e7eb}body.light-mode .score-entry .unassigned-game{background:#94a3b814;border-color:#94a3b859;color:#374151}body.light-mode .score-entry .unassigned-game .game-division,body.light-mode .score-entry .unassigned-game .game-name{color:#1f2937}body.light-mode .score-entry .unassigned-game .game-pool,body.light-mode .score-entry .unassigned-game .game-teams{color:#4b5563;opacity:.85}body.light-mode .score-entry .field-editor-modal{background:#0f172a59}body.light-mode .score-entry .field-editor-card{background:#fff;border-color:#e5e7eb}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 820px){.score-entry .time-slot-game{grid-template-columns:1fr;gap:.25rem;padding:.5rem .6rem}.score-entry .time-slot-games{grid-template-columns:1fr}.score-entry .time-slot-game.header{display:none}.score-entry .time-slot-cell{display:grid;grid-template-columns:110px 1fr;gap:.4rem;white-space:normal}.score-entry .time-slot-cell:before{content:attr(data-label);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7}}@media (max-width: 700px){.schedule-slot-col,.schedule-col{width:100px}.schedule-slot,.schedule-cell{min-width:100px;max-width:100px;width:100px}.score-entry .general-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,auto)}.score-entry .game-row{display:flex;flex-direction:column;gap:.35rem;padding:.6rem}.score-entry .game-left,.score-entry .game-center,.score-entry .game-right{width:100%}.score-entry .game-left{order:1}.score-entry .game-right{order:2}.score-entry .game-center{order:3;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.score-entry .game-center .score-row{flex:1;display:flex;justify-content:space-around}.score-entry .game-center .team-score{display:flex;align-items:center;gap:.35rem}.score-entry .game-center .team-name{font-size:.9rem;margin:0;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.score-entry .score-row{display:flex;gap:.5rem;justify-content:center;align-items:center}.score-entry .score-row .team-score .team-name:first-child{text-align:right}.score-entry .score-row .team-score .team-name:last-child{text-align:left}.score-entry .team-name{margin:0}.score-entry .game-center .team-score .team-name:last-child{text-align:left}.score-entry .team-score{display:flex;align-items:center;gap:.35rem}.admin-section-card.score-entry .game-center .team-score{align-items:flex-start}.admin-section-card.score-entry .game-center .team-name,.admin-section-card.score-entry .team-score-left .team-name,.admin-section-card.score-entry .team-score-right .team-name{max-width:none;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.2}.score-entry .division-badge{font-size:.65rem;padding:.1rem .35rem}.score-entry .save-game-btn{margin-left:.5rem;padding:.45rem .75rem;font-size:.9rem}.score-entry .game-right{display:flex;flex-direction:column;gap:.4rem}.score-entry .game-right-top{justify-content:space-between}.score-entry .game-meta-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.score-entry .game-left .label,.score-entry .game-left .value{font-size:.8rem}.score-entry #td-login-container{width:90%;margin-top:2.5rem}.score-entry .score-game-row{display:flex;flex-direction:column;gap:.35rem;padding:.6rem}.score-entry .score-game-left,.score-entry .score-game-center,.score-entry .score-game-right{width:100%}.score-entry .score-game-left{order:1}.score-entry .score-game-right{order:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem .5rem}.score-entry .score-game-center{order:3;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.score-entry .score-game-center .score-row{flex:1;display:flex;justify-content:space-around}.score-entry .score-game-center .team-score{display:flex;flex-direction:column;align-items:center}.score-entry .score-game-center .team-name{font-size:.8rem;margin-bottom:.15rem;text-align:center}.score-entry .score-game-center .btn-secondary{margin-left:.5rem;padding:.45rem .75rem;font-size:.9rem}.score-entry .score-game-left .label,.score-entry .score-game-left .value{font-size:.8rem}}@media (max-width: 640px){.score-entry input,.score-entry select,.score-entry textarea{font-size:16px}}@media (max-width: 768px){.score-entry .schedule-table{min-width:100%}}.header-top{gap:.5rem}.tournament-subtitle{margin:.15rem 0 0;font-size:.8rem;font-weight:500;opacity:.7}.division-filter-bar{max-width:1000px;margin:0 auto;padding:.5rem 18px .25rem;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.5rem;overflow:visible;-webkit-overflow-scrolling:auto;scroll-snap-type:none;mask-image:none;-webkit-mask-image:none}.division-tab{border-radius:999px;border:1px solid #444;background:#181818;color:#f5f5f5;padding:.4rem 1.1rem;font-size:.9rem;font-weight:550;cursor:pointer;display:inline-flex;align-items:center;gap:.25rem;min-width:5.5em;justify-content:center;text-align:center;flex:0 0 auto;scroll-snap-align:none;white-space:nowrap}.division-tab-info{font-weight:400;border-radius:10px;border-width:1px;padding:.45rem .9rem;background:#151515;border-color:#555;min-width:5em}.division-tab-info.active{background:#f5f5f5;color:#111;border-color:#f5f5f5}.division-tab-games{font-weight:400;border-radius:10px;padding:.45rem .9rem;background:#151515;border-color:#555;min-width:5em}.division-tab-games.active{background:#f5f5f5;color:#111;border-color:#f5f5f5}.division-tab-teams{font-size:.9rem;font-weight:400;color:#9ca3af;border-radius:999px;padding:.45rem .9rem}.schedule-date-block{margin-bottom:1rem;min-width:0}@media (max-width: 768px){.division-tab{padding:.4rem .9rem;font-size:.9rem;min-width:auto}.division-tab-info,.division-tab-games,.division-tab-teams{padding:.4rem .9rem;font-size:.9rem}}.tournament-page .games-meta{font-size:.65rem}@media (max-width: 768px){.tournament-page .games-meta{font-size:.62rem}}@media (max-width: 768px){.tournament-page .games-meta{font-size:.62rem!important}.tournament-page .games-meta-line{flex-direction:column;align-items:flex-start;gap:.1rem}.tournament-page .games-meta-sep{display:none}.tournament-page .standings-wrapper{width:80%!important;margin-left:auto;margin-right:auto}.tournament-page .pool-header,.tournament-page .pool-name{font-size:.95rem!important}.tournament-page .pool-meta{font-size:.78rem!important}}@media (max-width: 768px){.tournament-page .pool-card,.tournament-page .pool-games-block,.tournament-page .standings-wrapper,.tournament-page .games-table{font-size:.75rem}.tournament-page .pool-header,.tournament-page .pool-name,.tournament-page .pool-meta{font-size:.78rem}.tournament-page .games-table th,.tournament-page .games-table td,.tournament-page th,.tournament-page td,.tournament-page .game-row,.tournament-page .game-score-row,.tournament-page .team-name-cell,.tournament-page .games-meta{font-size:.75rem}}@media (max-width: 300px){.games-meta-line-inner{white-space:normal;flex-wrap:wrap}.games-meta-time{white-space:normal}}.schedule-date-block.collapsed .schedule-scrollbar,.schedule-date-block.collapsed .schedule-table-wrap{display:none}.schedule-scrollbar{overflow-x:auto;overflow-y:hidden;height:12px;margin-top:.3rem;max-width:100%;width:100%}.schedule-table-wrap{overflow-x:auto;max-width:100%;width:100%;min-width:0}.schedule-table th,.schedule-table td{border:1px solid #333;padding:.35rem .4rem;vertical-align:top}.schedule-slot .slot-sub{display:block;font-size:.64rem;font-weight:500;color:#9ca3af;margin-top:.1rem}.schedule-game .game-division{font-size:.56rem;font-weight:600;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.schedule-game .game-pool{font-size:.56rem;font-weight:500;color:#cbd5f5;opacity:.75;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.schedule-game .game-name{font-size:.56rem;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.schedule-game .game-teams{font-size:.56rem;color:#cbd5f5;opacity:.8;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.teams-controls{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin:.75rem 0 1rem}.teams-controls select,.teams-controls input{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#181818;color:#f5f5f5;border:1px solid #444;border-radius:999px;padding:.55rem .9rem;font-size:.9rem;line-height:1.1;outline:none}.teams-controls select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding:.55rem 2.2rem .55rem .9rem;border-radius:999px;border:1px solid #444;background:#181818;color:#f5f5f5;font-size:.9rem;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 8 10 12 14 8'/></svg>");background-position:right 12px center;background-size:14px 14px;background-repeat:no-repeat}.teams-controls select:hover,.teams-controls input:hover{background-color:#202020;border-color:#555}.teams-controls select:focus,.teams-controls input:focus{border-color:#f5f5f5;box-shadow:0 0 0 2px #f5f5f526}.teams-game-row{display:grid;grid-template-columns:300px minmax(0,1fr);align-items:center;gap:10px;padding:8px 12px;background:#1c1c1c;border:1px solid #333;border-radius:14px;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease;min-width:0;box-sizing:border-box;cursor:pointer}.teams-main{display:flex;gap:10px;flex-direction:column;justify-content:center;min-width:0}.teams-game-row.live-game{border-color:#f87171e6;box-shadow:0 0 0 1px #f8717180,0 0 18px #ef444466}.teams-game-row.live-game:hover{border-color:#f87171;box-shadow:0 0 0 1px #f8717194,0 0 22px #ef44447a}.teams-game-row.live-game.is-selected-for-navigation{border-color:#60a5faf2;box-shadow:0 0 0 1px #60a5fa73,0 10px 24px #2563eb2e}.teams-meta-top{font-weight:600;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teams-meta-pool{margin-top:6px;font-size:.8rem}.teams-team.left{text-align:right;grid-column:1;grid-row:1}.teams-team.right{text-align:left;grid-column:3;grid-row:1}.teams-match{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:10px}.teams-match>.teams-team{align-self:start;padding-top:2px}.teams-scores{grid-column:2;grid-row:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px}.teams-submit-row{display:flex;flex-direction:column;gap:4px;align-items:center;grid-column:2;grid-row:2;justify-self:center}.teams-awaiting-note{font-size:.78rem;line-height:1.2;text-align:center}.teams-awaiting-note-confirmed{color:#22c55e}.teams-awaiting-note-spirit{color:#f59e0b}.teams-advancement-block{width:100%;margin-top:2px}.teams-advancement-line{font-size:.76rem;line-height:1.25;opacity:.9;text-align:center}.teams-score-pill{min-width:44px;min-height:20px;display:inline-flex;align-items:center;justify-content:center;text-align:center;border-radius:999px;padding:4px 12px;border:1px solid #444;background:#111;font-weight:700;opacity:.9;line-height:1}.teams-score-pill.win{background:#2163cc1f;border:1.5px solid #2163cc;box-shadow:inset 0 0 0 1px #2163cc66;font-weight:700}.teams-spirit-summary{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;width:100%}.teams-spirit-summary-row{display:grid;grid-template-columns:58px 124px 38px 72px;align-items:center;column-gap:8px;row-gap:4px}.teams-spirit-summary-label{font-size:.68rem;opacity:.75;text-align:right;white-space:nowrap}.teams-spirit-summary .spirit-scores-pill-group{width:112px}.teams-spirit-summary .spirit-scores-pill-cell{min-width:1.35rem;padding:.12rem .34rem;font-size:.68rem}.teams-spirit-summary .spirit-scores-total-pill{padding:.12rem .4rem;font-size:.65rem;text-align:center}.teams-spirit-summary .spirit-scores-comment-pill{margin-left:0;justify-self:start;padding:.12rem .45rem;font-size:.65rem}@media (max-width: 600px){.teams-game-row{grid-template-columns:minmax(0,1fr);gap:8px;padding:8px}.teams-meta{display:block;width:100%}.teams-meta-top,.teams-meta-bottom,.teams-meta-pool{display:none}.teams-meta-mobile{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.teams-main{gap:4px}.teams-match{gap:5px}.teams-team{font-size:.72rem;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;word-break:break-word;line-height:1.15}.teams-meta{font-size:.62rem}.teams-meta-mobile{font-size:.66rem;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;word-break:break-word}.teams-meta-item{white-space:nowrap}.teams-meta-item--time,.teams-meta-item--field{white-space:normal}.score-text-pill,.teams-score-pill{min-width:44px;padding:.28rem .42rem;font-size:.72rem}.teams-score-row{gap:6px}.teams-scores{gap:4px}.teams-submit-row{gap:3px}.teams-awaiting-note{font-size:.72rem}.teams-advancement-line{font-size:.7rem}.teams-spirit-summary-row{grid-template-columns:50px 104px 34px 72px;column-gap:6px;row-gap:4px}.teams-spirit-summary-label{font-size:.64rem}.teams-spirit-summary .spirit-scores-pill-group{width:98px}.teams-spirit-summary .spirit-scores-pill-cell{min-width:1.25rem;padding:.1rem .22rem}.teams-spirit-summary .spirit-scores-comment-pill{font-size:.62rem;width:auto;min-width:64px;padding:.12rem .45rem}.teams-spirit-summary .spirit-scores-comment-pill .comment-label-full{display:inline!important}.teams-spirit-summary .spirit-scores-comment-pill .comment-label-short{display:none!important}.spirit-comment-wrap{gap:8px}.spirit-comment-label{flex:1 1 calc(50% - 4px);margin-bottom:0;min-width:0}.spirit-comment{box-sizing:border-box;flex:0 0 50%;width:50%}}.spirit-wrap{display:flex;flex-direction:column;gap:8px;align-items:center}.spirit-row{display:grid;grid-template-columns:110px 1fr;gap:10px;align-items:center;font-size:12px}.spirit-label{font-size:.75rem;opacity:.85;font-weight:400}.spirit-pill-group{display:inline-flex;border:1px solid #444;border-radius:999px;overflow:hidden;background:#181818;width:160px}.spirit-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#f5f5f5;padding:6px 12px;font-size:.9rem;cursor:pointer}.spirit-pill+.spirit-pill{border-left:1px solid #444}.spirit-pill:hover{background:#252525}.spirit-pill.active{background:#f5f5f5;color:#111}.spirit-pill:focus{outline:none}.spirit-pill:focus-visible{box-shadow:0 0 0 2px #9ca3af inset}.spirit-comment-wrap{align-items:center;display:flex;margin-top:10px}.spirit-comment-label{display:block;font-size:.8rem;opacity:.8;margin:0 0 6px}.teams-main .spirit-comment-label{font-size:.72rem}.spirit-comment{width:50%;resize:vertical;min-height:22px;padding:10px 12px;border-radius:12px;border:1px solid #444;background:#181818;color:#f5f5f5;font-size:.95rem;outline:none}.spirit-comment:focus{border-color:#9ca3af}.spirit-scores-filter{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.75rem}.spirit-scores-filter label{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;opacity:.75}.spirit-scores-filter select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#0f0f18;color:#f5f5f5;border:1px solid #33334a;border-radius:999px;padding:.35rem 2.2rem .35rem .7rem;font-size:.85rem;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 8 10 12 14 8'/></svg>");background-position:right 12px center;background-size:14px 14px;background-repeat:no-repeat}.spirit-scores-filter select::-ms-expand{display:none}.spirit-scores-table{width:80%;border-collapse:collapse;margin-bottom:1rem;font-size:.85rem;margin-left:auto;margin-right:auto;background:#0f0f18;border:1px solid #1f1f2b;border-radius:.75rem;overflow:hidden}.spirit-scores-table th,.spirit-scores-table td{padding:.35rem .4rem;border-bottom:1px solid #222233;text-align:center}.spirit-scores-table th:first-child,.spirit-scores-table td:first-child{text-align:left}.spirit-scores-table thead th{font-size:.6rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.spirit-scores-games{display:flex;flex-direction:column;gap:.75rem;align-items:center}.spirit-scores-game-card{border:1px solid #222233;border-radius:.75rem;padding:.6rem .75rem;background:#11111a;width:574px;max-width:100%}.spirit-scores-row{display:grid;grid-template-columns:240px 130px 46px 92px;column-gap:.75rem;row-gap:.4rem;align-items:center;padding:.3rem 0}.spirit-scores-direction{font-size:.75rem;opacity:.75}@media (max-width: 600px){.spirit-scores-table{width:100%;font-size:.75rem;table-layout:fixed}.spirit-scores-table th,.spirit-scores-table td{padding:.25rem .3rem}.spirit-scores-table thead th{font-size:.55rem}.spirit-scores-row{grid-template-columns:40% 34% 12% 14%;column-gap:.4rem}.spirit-scores-game-card{width:100%;max-width:400px}.spirit-scores-direction{max-width:160px}.spirit-scores-comment-pill{width:3em;padding:.2rem .35rem;margin-left:.2rem}.spirit-scores-comment-pill .comment-label-full{display:none}.spirit-scores-comment-pill .comment-label-short{display:inline}}.spirit-scores-pill-group{display:inline-flex;border:1px solid #33334a;border-radius:999px;overflow:hidden;background:#0f0f18;width:124px}.spirit-scores-pill-cell{padding:.2rem .45rem;min-width:1.5rem;text-align:center;font-size:.8rem;border-left:1px solid #33334a}.spirit-scores-pill-cell:first-child{border-left:none}.spirit-scores-total-pill,.spirit-scores-comment-pill{border:1px solid #33334a;border-radius:999px;padding:.2rem .6rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;background:#0f0f18;color:#f5f5f5;cursor:default;white-space:nowrap}.spirit-scores-total-pill{width:44px;text-align:center}.spirit-scores-comment-pill{text-align:center;margin-left:.35rem;cursor:pointer}.spirit-scores-comment-pill .comment-label-short{display:none}@media (max-width: 600px){.spirit-scores-comment-pill .comment-label-full{display:none!important}.spirit-scores-comment-pill .comment-label-short{display:inline!important}}.spirit-scores-row.muted{opacity:.6}.spirit-scores-score-4{background:#166534e0;color:#f4fff6}.spirit-scores-score-3{background:#22c55e99;color:#f0fff4}.spirit-scores-score-1{background:#dc2626eb;color:#ffecec}.spirit-scores-score-0{background:#dc26268c;color:#ffe9e9}.spirit-scores-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:none;align-items:center;justify-content:center;z-index:99999}.spirit-scores-modal.open{display:flex}.spirit-scores-modal-card{max-width:520px;width:90%;background:#11111a;border:1px solid #33334a;border-radius:.75rem;padding:1rem}.spirit-scores-modal-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7;margin-bottom:.5rem}.spirit-scores-modal-body{font-size:.9rem;line-height:1.4;white-space:pre-wrap}.spirit-scores-modal-actions{margin-top:.75rem;text-align:right}.pool-card{background:#1c1c1c;border-radius:12px;padding:1rem;margin-bottom:1rem;border:1px solid #2b2b2b;box-shadow:0 2px 6px #00000080;max-width:100%;overflow-x:hidden;position:relative;z-index:0}.pool-name{font-weight:600;font-size:1.1rem}table{width:100%;border-collapse:collapse;font-size:.85rem}th,td{padding:.25rem .4rem;text-align:left}th{border-bottom:1px solid #444;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;opacity:.85}tr:not(:last-child) td{border-bottom:1px solid #333}.info-block{margin:0 0 .6rem;color:#d1d5db;font-size:.8rem}.info-link a{color:#9fd3ff;text-decoration:underline;font-size:.8rem}.info-image img{max-width:100%;border-radius:12px;border:1px solid #333;display:block}.team-placeholder{opacity:.7;font-weight:400;font-style:italic;font-size:90%}@media (max-width: 520px){.teams-controls select,.teams-controls input{width:100%}}@media (max-width: 768px){.teams-submit-row{grid-column:1 / 2}}body.light-mode .teams-controls select,body.light-mode .teams-controls input,body.light-mode .teams-score-input,body.light-mode .spirit-comment{background-color:#fff;color:#111827;border-color:#d1d5db}body.light-mode .teams-controls select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 8 10 12 14 8'/></svg>")}body.light-mode .teams-score-pill,body.light-mode .score-box,body.light-mode .rank-badge,body.light-mode .spirit-pill-group{background:#fff;border-color:#d1d5db;color:#111827}body.light-mode .score-box.win{background:#2163cc1f!important;background-color:#2163cc1f;color:#111827;border-color:#2163cc;box-shadow:inset 0 0 0 1px #2163cc66}body.light-mode .spirit-pill{color:#111827}body.light-mode .spirit-pill.active{background:#111827;color:#fff}body.light-mode .spirit-scores-table,body.light-mode .spirit-scores-game-card{background:#fff;border-color:#e5e7eb}body.light-mode .spirit-scores-table th,body.light-mode .spirit-scores-table td{border-bottom-color:#e5e7eb}body.light-mode .spirit-scores-pill-group,body.light-mode .spirit-scores-total-pill,body.light-mode .spirit-scores-comment-pill{background:#fff;border-color:#d1d5db;color:#111827}body.light-mode .spirit-scores-pill-cell{border-left-color:#d1d5db}body.light-mode .spirit-scores-modal{background:#0f172a59}body.light-mode .spirit-scores-modal-card{background:#fff;border-color:#e5e7eb}body.light-mode .teams-captain-modal{background:#0f172a59}body.light-mode .teams-captain-modal-card{background:#fff;border-color:#e5e7eb;box-shadow:0 24px 60px #0f172a2e}body.light-mode .teams-captain-modal-title{color:#111827}body.light-mode .teams-captain-modal-copy{color:#6b7280}body.light-mode .teams-captain-modal-input{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .teams-captain-modal-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f}body.light-mode .teams-captain-modal-error{color:#b91c1c}body.light-mode .spirit-scores-filter select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#fff;color:#111827;border-color:#d1d5db;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 8 10 12 14 8'/></svg>");background-position:right 12px center;background-size:14px 14px;background-repeat:no-repeat}.tournament-page .teams-controls select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:2.2rem;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 8 10 12 14 8'/></svg>");background-position:right 12px center;background-size:14px 14px;background-repeat:no-repeat}body.light-mode .tournament-page .teams-controls select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 8 10 12 14 8'/></svg>");background-repeat:no-repeat;background-position:right 12px center;background-size:14px 14px}.tournament-page .teams-controls select::-ms-expand{display:none}body.light-mode .teams-toast.success{background:#dcfce7;border-color:#22c55e;color:#14532d}body.light-mode .game-notes,body.light-mode .games-meta,body.light-mode .teams-meta-top,body.light-mode .teams-meta-bottom,body.light-mode .teams-meta-pool,body.light-mode .tiebreak-text,body.light-mode .team-notes-cell,body.light-mode .team-placeholder{color:#6b7280;opacity:1}body.light-mode .teams-awaiting-note-confirmed{color:#15803d}body.light-mode .teams-awaiting-note-spirit{color:#b45309}body.light-mode .schedule-table,body.light-mode .schedule-table th,body.light-mode .schedule-table td,body.light-mode .schedule-date-block,body.light-mode .schedule-game{background:#fff;border-color:#e5e7eb}body.light-mode .schedule-date-title,body.light-mode .schedule-slot{color:#374151}body.light-mode .schedule-game .game-division,body.light-mode .schedule-game .game-name{color:#111827}body.light-mode .schedule-game .game-pool,body.light-mode .schedule-game .game-teams{color:#4b5563;opacity:1}.score-entry .schedule-game,.tournament-page .schedule-game{min-width:0}.score-entry .schedule-game .game-teams,.score-entry .schedule-game .game-name,.score-entry .schedule-game .game-pool,.score-entry .schedule-game .game-division,.tournament-page .schedule-game .game-teams,.tournament-page .schedule-game .game-name,.tournament-page .schedule-game .game-pool,.tournament-page .schedule-game .game-division{white-space:normal;overflow-wrap:anywhere;word-break:break-word;min-width:0}.score-entry{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0;--save-all-height: 3.5rem;padding:.75rem;padding-bottom:calc(.75rem + var(--save-all-height));background:#0b0b10;color:#f5f5f5;min-height:100vh}.score-entry *{box-sizing:border-box}.score-entry #banner{position:sticky;top:0;z-index:1000;display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;background:#000;box-shadow:0 2px 6px #0000001f;padding:.35rem .6rem;border-radius:.6rem}.score-entry .banner-actions{display:flex;align-items:center;gap:.5rem}.score-entry #theme-toggle-btn{padding:.25rem .6rem;border-radius:999px;border:none;font-size:.8rem;cursor:pointer}.score-entry #reload-games-btn,.score-entry #logout-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .6rem;border-radius:999px;border:none;font-size:.8rem;cursor:pointer}.score-entry #login-status{font-size:.8rem}.score-entry #td-login-container{display:flex;justify-content:center;margin:2rem 0}.score-entry #td-login-container form{background:#151522;border:1px solid #2a2a3a;padding:1rem;border-radius:.75rem;width:100%;max-width:360px;display:grid;gap:.6rem}.score-entry input,.score-entry select,.score-entry textarea{width:100%;padding:.4rem .6rem;border-radius:.5rem;border:1px solid #33334a;background:#0f0f18;color:#f5f5f5;font-size:.9rem}.score-entry .btn-primary{background:#2563eb;color:#fff;width:100%}.score-entry .spinner{width:14px;height:14px;border-radius:999px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:spin .6s linear infinite}.score-entry .error{color:#fca5a5;font-size:.8rem}.score-entry .dirty-indicator{font-size:.8rem;color:#fbbf24;margin-bottom:.5rem}.score-entry .tab-bar{display:flex;gap:.4rem;margin-bottom:.75rem;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding-bottom:.2rem}.score-entry .tab-btn{padding:.35rem .8rem;border-radius:999px;border:1px solid #2a2a3a;background:#131320;color:#d1d5db;font-size:.85rem;cursor:pointer;flex:0 0 auto;scroll-snap-align:start;white-space:nowrap}.score-entry .tab-btn.active{background:#2563eb;border-color:#2563eb;color:#fff}.score-entry .tab-view{display:none}.score-entry .tab-view.active{display:block}.score-entry .general-section{background:#12121a;border:1px solid #2a2a3a;border-radius:.75rem;padding:.75rem;margin-bottom:.75rem}.score-entry .general-section-title{margin:0 0 .6rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.score-entry .general-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));grid-template-rows:repeat(2,auto);gap:.6rem}.score-entry .general-field{display:flex;flex-direction:column}.score-entry .general-field span{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7;margin-bottom:.25rem}.score-entry .general-field input[type=checkbox]{width:auto;margin:0}.score-entry .general-field.checkbox-field{align-items:flex-start}.admin-tournament-tabs-page .admin-table input[type=checkbox],.admin-tournament-tabs-page .admin-team-table input[type=checkbox],.admin-tournament-tabs-page .admin-section-card input[type=checkbox]{width:12px!important;height:12px!important;min-width:12px!important;min-height:12px!important;max-width:12px!important;max-height:12px!important;padding:0!important;margin:0!important;inline-size:12px!important;block-size:12px!important;flex:0 0 12px!important}.observer-admin-page .admin-table th:not(:first-child),.observer-admin-page .admin-table td:not(:first-child),.observer-admin-page .admin-team-table th:not(:first-child),.observer-admin-page .admin-team-table td:not(:first-child){text-align:center}.observer-admin-page .observer-game-assignment-table th,.observer-admin-page .observer-game-assignment-table td{padding:5px 6px;font-size:.78rem;white-space:nowrap}body.light-mode .observer-admin-page .admin-table th,body.light-mode .observer-admin-page .admin-table td,body.light-mode .observer-admin-page .admin-team-table th,body.light-mode .observer-admin-page .admin-team-table td{border-color:#94a3b847}.score-entry .general-field select,.score-entry .general-field textarea{width:100%;padding:.35rem .5rem;border-radius:.4rem;border:1px solid #33334a;background:#0f0f18;color:#f5f5f5;font-size:.85rem;box-sizing:border-box}.score-entry .general-table{width:100%;border-collapse:collapse;background:#0f0f18;border:1px solid #1f1f2b;border-radius:.6rem;overflow:hidden}.score-entry .general-table th,.score-entry .general-table td{border:1px solid #1f1f2b;padding:.35rem .4rem;vertical-align:top}.score-entry .general-table th{text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;color:#9ca3af;background:#11111a;text-align:left}.score-entry .general-table td input{margin:0}.score-entry .general-table td select,.score-entry .general-table td textarea{width:100%;padding:.35rem .5rem;border-radius:.4rem;border:1px solid #33334a;background:#0f0f18;color:#f5f5f5;font-size:.85rem;box-sizing:border-box}.score-entry .general-table td textarea{resize:vertical;min-height:72px}.score-entry .teams-table td textarea{min-height:48px}.score-entry .teams-controls{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:.75rem}.score-entry .teams-status{font-size:.8rem;color:#9ca3af;min-height:1.1em}.score-entry .general-row-actions{text-align:right;white-space:nowrap}.score-entry .general-controls{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:.6rem}.score-entry .general-controls .btn-primary{width:auto}.score-entry .general-status{font-size:.8rem;color:#fbbf24;min-height:1.1em}.score-entry .general-empty{font-size:.8rem;color:#9ca3af;text-align:center;padding:.6rem 0}.score-entry .editor-table{width:100%;border-collapse:collapse;background:#0f0f18;border:1px solid #1f1f2b;border-radius:.6rem;overflow:hidden}.score-entry .editor-table-wrap{max-height:55vh;overflow:auto}.score-entry .editor-table th,.score-entry .editor-table td{border:1px solid #1f1f2b;padding:.35rem .4rem;vertical-align:top}.score-entry .editor-table th{text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;color:#9ca3af;background:#11111a;text-align:left}.score-entry .editor-table td input,.score-entry .editor-table td select{width:100%;padding:.35rem .5rem;border-radius:.4rem;border:1px solid #33334a;background:#0f0f18;color:#f5f5f5;font-size:.85rem;box-sizing:border-box}.score-entry .editor-row-actions{text-align:right;white-space:nowrap}.score-entry .editor-controls{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:.6rem}.score-entry .editor-controls .btn-primary{width:auto}.score-entry .editor-message{font-size:.8rem;color:#fbbf24;min-height:1.1em}.score-entry #score-input-view,.score-entry #time-slot-view,.score-entry #general-view,.score-entry #teams-view,.score-entry #score-submissions-view{max-width:1100px;margin:0 auto}.score-entry #full-schedule-view{max-width:95%;margin:0 auto;overflow-x:hidden}.score-entry .slot{margin-bottom:.75rem;border-radius:.75rem;background:#0f0f18;padding:.5rem .6rem;border:1px solid #1f1f2b}.score-entry .slot-header{display:flex;justify-content:space-between;font-weight:600;margin-bottom:.4rem;cursor:pointer;flex-wrap:wrap;gap:.6rem}.score-entry .slot-title{font-weight:700;font-size:.95rem;flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.score-entry .slot-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.score-entry .slot-stat{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:999px;border:1px solid #2b2b3b;background:#11111a;color:#c7d2fe}.score-entry .slot-stat.primary{padding:.3rem .7rem;font-size:.75rem}.score-entry .slot-stat-value{font-weight:700;color:#e2e8f0}.score-entry .slot-stat.alert{border-color:#b45309;background:#b4530947;color:#fdba74}.score-entry .slot-stat.dim{opacity:.45}.score-entry .slot-stat.zero-value{border-color:#16a34a73;background:#16a34a1f;color:#86eface6}.score-entry .slot-stat.zero-value-text{opacity:.45}.score-entry .slot-section-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#9ca3af;margin:1.2rem 0 .5rem}.score-entry .slot-section.completed{margin-top:1.4rem}.score-entry .game-row{display:grid;grid-template-columns:1.2fr 1fr 1.2fr;gap:.85rem;padding:.4rem .5rem;border-top:1px solid #222233;border-radius:.6rem;background:#181822}.score-entry .game-row:first-of-type{border-top:none}.score-entry .game-row.scored{background:#181822}.score-entry .game-summary-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.4rem;flex-wrap:wrap}.score-entry .game-meta-row-pills{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;flex:1 1 auto}.score-entry .game-meta-pill{display:inline-flex;align-items:center;font-size:.72rem;font-weight:600;padding:.15rem .55rem;border-radius:999px;border:1px solid #2a2a3a;background:#141423;color:#e5e7eb;white-space:nowrap}.score-entry .game-meta-pill-field{font-weight:700}.score-entry .game-meta-pill-division{background:#ffffff0d;border-color:#ffffff38;color:#f3f4f6;text-transform:uppercase;font-weight:700}.score-entry .game-summary-actions{display:flex;align-items:center;gap:.4rem;justify-content:flex-end;flex-wrap:wrap;flex:0 0 auto}.score-entry .game-notes{margin-top:.3rem}.score-entry .game-status-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;border:1px solid transparent;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.score-entry .game-status-pill.scored{color:#86efac;border-color:#166534;background:#16653447}.score-entry .game-status-pill.pending{color:#fbbf24;border-color:#92400e;background:#92400e47}.score-entry .game-status-pill.dispute{color:#f87171;border-color:#7f1d1d;background:#7f1d1d59}.score-entry .game-status-pill:before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor;display:inline-block}.score-entry .game-left .label,.score-entry .label{font-size:.75rem;opacity:.7}.score-entry .game-left .value,.score-entry .value{font-size:.9rem}.score-entry .game-center{display:flex;flex-direction:column;justify-content:center;gap:.3rem}.score-entry .score-row{display:flex;gap:.3rem;justify-content:center;align-items:center;width:100%}.score-entry .team-score{display:flex;align-items:center;min-width:0}.score-entry .team-score-left{flex:1 1 0;justify-content:flex-end}.score-entry .team-score-right{flex:1 1 0;justify-content:flex-start}.score-entry .game-center .team-score{gap:.22rem}.score-entry .team-score-left .team-name,.score-entry .team-score-right .team-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-section-card.score-entry .team-score-left .team-name,.admin-section-card.score-entry .team-score-right .team-name,.admin-section-card.score-entry .game-center .team-name{display:block;flex:1 1 auto;min-width:0;max-width:none;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.2}.admin-section-card.score-entry .team-score-left .team-name{text-align:right}.admin-section-card.score-entry .team-score-right .team-name{text-align:left}.score-entry .team-name{font-size:.9rem;margin-bottom:0;font-weight:700}.score-entry .division-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;padding:.15rem .4rem;border-radius:999px;background:#f3f4f6;color:#6b7280;align-self:center;white-space:nowrap}.score-entry .score-input{width:3rem;max-width:4rem;font-size:1.2rem;font-weight:600;text-align:center;padding:.2rem .35rem;border-radius:.5rem;border:1px solid #33334a;background:#0f0f18;color:#f5f5f5;line-height:1.2}.score-entry .save-game-btn{align-self:center;padding:.35rem .8rem;border-radius:999px;border:none;background:#2563eb;color:#fff;font-size:.9rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}.score-entry .save-game-btn.saving{background:#4b5563;cursor:wait;opacity:.9}.score-entry .save-game-btn .spinner{width:14px;height:14px;border-radius:999px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:spin .6s linear infinite}.score-entry .confirm-submissions-btn{align-self:center;padding:.3rem .7rem;border-radius:999px;border:none;background:#16a34a;color:#fff;font-size:.85rem;cursor:pointer}.score-entry .confirm-submissions-btn.saving,.score-entry .confirm-submissions-btn.confirmed{background:#6b7280;cursor:default;opacity:.9}.score-entry .game-right{display:flex;flex-direction:column;justify-content:flex-start;gap:.35rem}.score-entry .game-right-top{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.score-entry .game-right-status-row{justify-content:space-between;flex-wrap:nowrap}.score-entry .score-note-actions{display:flex;align-items:center;justify-content:flex-start;gap:.45rem;min-width:0;flex:1 1 auto}.score-entry .score-note-inline{color:#ef4444;font-size:.76rem;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.score-entry .game-right-status-row .game-status-pill{margin-left:auto}.score-entry .meta-edit-btn{padding:.2rem .6rem;border-radius:999px;border:1px solid #2a2a3a;background:#141423;color:#e5e7eb;font-size:.75rem;cursor:pointer}.score-entry .game-meta-summary,.score-entry .game-info-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem 2.5rem}@media (max-width: 700px){.score-entry .game-meta-summary,.score-entry .game-info-summary{grid-template-columns:repeat(4,minmax(0,1fr))}}.score-entry .game-info-summary{margin-bottom:.5rem}.score-entry .meta-summary-item{display:flex;justify-content:flex-start;gap:.4rem}.score-entry .meta-summary-item.full-span{grid-column:1 / -1}.score-entry .meta-summary-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.score-entry .meta-summary-value{font-size:.8rem;font-weight:500;text-align:left;opacity:.9}.score-entry .score-note-input{width:100%;max-width:220px}.score-entry .subs-wrap{margin-top:6px;padding-top:6px;border-top:1px dashed #333}.score-entry .subs-title{margin-bottom:4px}@media (max-width: 600px){.score-entry .subs-wrap{border-top:none;padding-top:0}body.light-mode .score-entry .subs-wrap{border-top:none}.score-entry .subs-title{margin:0 0 6px}}.score-entry .subs-wrap.single .sub-pill{background:#d9770629;border-color:#d9770673}.score-entry .subs-wrap.match .sub-pill{background:#16a34a29;border-color:#16a34a73}.score-entry .subs-wrap.dispute .sub-pill{background:#dc26262e;border-color:#dc262680}.score-entry .subs-title{font-size:.72rem;letter-spacing:.03em;text-transform:uppercase;opacity:.7;margin-bottom:6px}.score-entry .sub-pill{display:flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid #333;background:#151515;border-radius:999px;width:fit-content;max-width:100%;margin:6px 0}.score-entry .sub-team{font-weight:600;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}.score-entry .sub-score{font-weight:800}.score-entry .sub-spirit{font-weight:600;font-size:.85rem;opacity:.7}.score-entry .sub-time{font-size:.75rem;opacity:.65;white-space:nowrap}.score-entry .game-meta-title{font-size:.85rem;font-weight:600;margin-bottom:.35rem}.score-entry .field-editor-row.game-meta-row{grid-template-columns:1fr 1fr}.score-entry .field-editor-field{display:flex;flex-direction:column;gap:.24rem}.score-entry .field-editor-field label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;opacity:.8}.score-entry .game-status{font-size:.75rem;text-align:center;min-height:0}.score-entry .game-status:empty{display:none}.score-entry .game-status-unsaved{color:#fbbf24}.score-entry .game-status-saved{color:#4ade80}.score-entry #save-all-button{background:#9ca3af;color:#fff;padding:.7rem 1.5rem;font-size:1rem;border-radius:999px;border:none;cursor:default;display:inline-flex;align-items:center;gap:.5rem}.score-entry #save-all-container.saving #save-all-button{background:#6b7280;cursor:wait;opacity:.9}body.light-mode .score-entry{background:#f5f6fb;color:#111827}body.light-mode .score-entry #banner{background:#fff;box-shadow:0 2px 8px #0f172a14}body.light-mode .score-entry #td-login-container form{background:#fff;border-color:#e5e7eb;color:#111827}body.light-mode .score-entry input,body.light-mode .score-entry .time-slot-edit input,body.light-mode .score-entry .field-editor-row textarea,body.light-mode .score-entry .meta-field input,body.light-mode .score-entry .score-input,body.light-mode .score-entry .spirit-filter select,body.light-mode .score-entry .general-field select,body.light-mode .score-entry .general-field textarea,body.light-mode .score-entry .general-table select,body.light-mode .score-entry .general-table textarea,body.light-mode .score-entry .editor-table input,body.light-mode .score-entry .editor-table select{background:#fff;color:#111827;border-color:#d1d5db}body.light-mode .score-entry .tab-btn{background:#f3f4f6;border-color:#d1d5db;color:#374151}body.light-mode .score-entry .tab-btn.active{background:#2563eb;border-color:#2563eb;color:#fff}body.light-mode .score-entry .slot,body.light-mode .score-entry .submissions-table,body.light-mode .score-entry .general-section,body.light-mode .score-entry .general-table,body.light-mode .score-entry .editor-table{background:#fff;border-color:#e5e7eb}body.light-mode .score-entry .game-row,body.light-mode .score-entry .submissions-table th,body.light-mode .score-entry .submissions-table td,body.light-mode .score-entry .general-table th,body.light-mode .score-entry .general-table td,body.light-mode .score-entry .editor-table th,body.light-mode .score-entry .editor-table td{border-color:#e5e7eb}body.light-mode .score-entry .teams-status{color:#6b7280}body.light-mode .score-entry .general-table th,body.light-mode .score-entry .editor-table th{background:#f3f4f6;color:#6b7280}body.light-mode .score-entry .slot-stat{background:#fff;border-color:#d1d5db;color:#374151}body.light-mode .score-entry .slot-stat-value{color:#111827}body.light-mode .score-entry .slot-stat.alert{border-color:#b45309;background:#b453091f;color:#92400e}body.light-mode .score-entry .game-row,body.light-mode .score-entry .game-row.scored{background:#fff}body.light-mode .score-entry .game-status-pill.scored{color:#166534;border-color:#166534;background:#1665341f}body.light-mode .score-entry .game-status-pill.pending{color:#92400e;border-color:#92400e;background:#92400e1f}body.light-mode .score-entry .game-status-pill.dispute{color:#b91c1c;border-color:#b91c1c;background:#b91c1c1f}body.light-mode .score-entry .division-badge{color:#111827!important}body.light-mode .score-entry .meta-edit-btn{background:#f3f4f6;border-color:#d1d5db;color:#374151}body.light-mode .score-entry .game-meta-pill{background:#fff;border-color:#d1d5db;color:#111827}body.light-mode .score-entry .score-note-inline{color:#b91c1c}body.light-mode .score-entry .subs-wrap{border-top:1px dashed #ddd}body.light-mode .score-entry .sub-pill{background:#fff;border-color:#d1d5db;color:#111827}body.light-mode .score-entry .subs-wrap.single .sub-pill{background:#d977061f;border-color:#d9770666}body.light-mode .score-entry .subs-wrap.match .sub-pill{background:#16a34a1f;border-color:#16a34a66}body.light-mode .score-entry .subs-wrap.dispute .sub-pill{background:#dc26261f;border-color:#dc262673}@media (max-width: 600px){body.light-mode .score-entry .subs-wrap{border-top:none;padding-top:0}}@media (max-width: 600px){body{zoom:.8}.score-entry{padding:.5rem}.score-entry #banner{flex-direction:column;align-items:flex-start;gap:.5rem}.score-entry .banner-actions{width:100%;flex-wrap:wrap;justify-content:flex-start;gap:.4rem}.score-entry .tab-bar{gap:.35rem}.score-entry .tab-btn{padding:.3rem .65rem;font-size:.78rem}.score-entry .general-grid{grid-template-columns:minmax(0,1fr)}.score-entry .slot-header{flex-direction:row;align-items:center;flex-wrap:nowrap}.score-entry .slot-title{font-size:.82rem}.score-entry .slot-meta{justify-content:flex-end;flex-wrap:nowrap;font-size:.64rem;gap:.3rem}.score-entry .game-row{grid-template-columns:minmax(0,1fr);gap:.5rem}.score-entry .game-right,.score-entry .game-center,.score-entry .game-left{justify-content:flex-start}.score-entry #td-login-container{margin:1.2rem auto}.score-entry #td-login-container form{max-width:100%;padding:1.1rem}.score-entry #td-login-container h2{font-size:1.05rem}.score-entry #td-login-container input,.score-entry #td-login-container button{font-size:1rem;padding:.55rem .7rem}}.roster-stats-table th:nth-child(n+3):nth-child(-n+6),.roster-stats-table td:nth-child(n+3):nth-child(-n+6){text-align:center}
