:root{--bg: #0c1015;--surface: #131a22;--surface-2: #0f151c;--surface-3: #1c2530;--scrim: rgba(6,9,12,.72);--border: #1c2530;--border-strong: #2a3540;--border-soft: #171f28;--text: #e8edf2;--text-dim: #c7d0d8;--text-mute: #8a97a3;--text-faint: #5a6673;--text-fainter: #3f4a56;--accent: #6ee7c9;--accent-ink: #0c1015;--accent-hover: #9df3db;--accent-border: #2f5a50;--accent-tint: rgba(110,231,201,.1);--warn: #e0a458;--warn-border: #5a4a30;--warn-tint: rgba(224,164,88,.16);--danger: #d24a4a;--danger-border: #5a3030;--danger-tint: rgba(210,74,74,.16);--purple: #c78ae0;--purple-border: #4a3560;--role-sub: #8fb4ff;--radius-sm: 3px;--radius: 5px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 10px;--radius-pill: 20px;--font-display: Rajdhani, system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--team-color: var(--text-faint);color-scheme:dark}:root[data-theme=light]{--bg: #eef1f4;--surface: #ffffff;--surface-2: #e6ebf0;--surface-3: #d6dee6;--scrim: rgba(18,26,34,.42);--border: #c2ccd6;--border-strong: #93a1af;--border-soft: #dbe1e7;--text: #0a0f14;--text-dim: #26313c;--text-mute: #45525e;--text-faint: #5f6b77;--text-fainter: #7d8993;--accent: #0d8f6f;--accent-ink: #ffffff;--accent-hover: #0a755b;--accent-border: #7fd0bc;--accent-tint: rgba(13,143,111,.12);--warn: #9a5b12;--warn-border: #d8b482;--warn-tint: rgba(154,91,18,.14);--danger: #b12a2a;--danger-border: #e2a6a6;--danger-tint: rgba(177,42,42,.12);--purple: #7a35a8;--purple-border: #cbaede;--role-sub: #2a56c8;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-display)}#root{height:100%}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-md)}input,select,textarea,button{font-family:inherit}:where(input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:-1px}[data-a11y=on]{zoom:1.17;height:calc(100vh / 1.17)!important;filter:contrast(1.18) brightness(1.09)}.app-root{height:100vh;display:flex;flex-direction:column;background:var(--bg)}.screen{flex:1;overflow-y:auto;display:flex;flex-direction:column}.container{max-width:820px;margin:0 auto;width:100%;padding:22px clamp(14px,4vw,24px) 60px;display:flex;flex-direction:column;gap:20px}.container-narrow{max-width:720px;margin:0 auto;width:100%}.stack{display:flex;flex-direction:column}.row{display:flex;align-items:center}.row-between{display:flex;justify-content:space-between;align-items:center}.btn-row{display:flex;gap:8px;margin-top:6px}.grid-2{display:grid;grid-template-columns:1fr 1fr}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.grid-cards-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.card-pad{padding:16px 18px}.card-head-gradient{padding:14px 16px;background:linear-gradient(90deg,var(--team-color),var(--surface));display:flex;justify-content:space-between;align-items:center}.screen-header{padding:14px clamp(14px,4vw,24px);background:linear-gradient(180deg,var(--surface),var(--bg));border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.btn{cursor:pointer;border-radius:var(--radius);padding:7px 13px;font:700 11px var(--font-mono);letter-spacing:.05em;border:1px solid transparent;background:none;color:var(--text);transition:background .12s,border-color .12s,color .12s,filter .12s}.btn-accent{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn-accent:hover{filter:brightness(1.08)}.btn-accent:active{filter:brightness(.94)}.btn-ghost{background:none;border:1px solid var(--border-strong);color:var(--text-mute);font:600 9px var(--font-mono);border-radius:var(--radius-md);padding:4px 9px}.btn-ghost:hover{border-color:var(--text-mute);color:var(--text)}.btn-secondary{background:var(--surface);border:1px solid var(--border);color:var(--text-mute);font:600 11px var(--font-mono);padding:7px 12px;border-radius:var(--radius-md)}.btn-secondary:hover{color:var(--text);border-color:var(--border-strong)}.btn-cancel{background:none;border:1px solid var(--border-strong);color:var(--text-faint);font:600 12px var(--font-mono);padding:10px 16px}.btn-cancel:hover{color:var(--text)}.btn-danger{color:var(--danger);border-color:var(--danger-border);background:none}.btn-danger:hover{background:var(--danger-tint)}.btn-icon{cursor:pointer;background:none;border:none;color:var(--text-faint);font:600 14px var(--font-mono);line-height:1}.btn-icon:hover{color:var(--danger)}.close-x{cursor:pointer;background:none;border:none;color:var(--text-faint);font:600 18px var(--font-mono);line-height:1}.close-x:hover{color:var(--text)}.input,.select,.textarea{display:block;width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:8px 10px;font:500 13px var(--font-mono)}.input:hover,.select:hover,.textarea:hover{border-color:var(--border-strong)}.input-display{font-family:var(--font-display)}.field-label{display:block;font:500 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint);margin-top:5px}.stat-box{width:36px;text-align:center;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-sm);padding:2px 3px;font:600 10px var(--font-mono)}.eyebrow{font:600 11px var(--font-mono);letter-spacing:.08em;color:var(--warn);margin-bottom:12px}.eyebrow-accent{color:var(--accent)}.section-label{font:600 11px var(--font-mono);letter-spacing:.08em;color:var(--text-faint)}.page-title{font:700 15px var(--font-display);letter-spacing:.1em;text-transform:uppercase}.modal-title{font:700 14px var(--font-display);letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}.error-msg{font:500 10px var(--font-mono);color:var(--danger)}.badge{border-radius:var(--radius-sm);padding:2px 6px;font:600 8px var(--font-mono);letter-spacing:.05em;color:var(--text-mute);border:1px solid var(--border)}.pill{border-radius:var(--radius-pill);padding:4px 11px;font:600 10px var(--font-mono);border:1px solid var(--border);background:var(--surface);color:var(--text-mute)}.chip{cursor:pointer;border-radius:var(--radius-pill);padding:4px 11px;font:600 12px var(--font-display);letter-spacing:.02em;border:1px solid var(--border-strong);background:none;color:var(--text-mute)}.chip:hover{border-color:var(--text-mute);color:var(--text)}.chip.is-on{border-color:var(--accent-border);background:var(--accent-tint);color:var(--accent)}.status.is-good{color:var(--accent);border-color:var(--accent-border)}.status.is-warn{color:var(--warn);border-color:var(--warn-border)}.status.is-bad{color:var(--danger);border-color:var(--danger-border)}.status.is-neutral{color:var(--text-faint);border-color:var(--border)}.status.fill.is-good{background:var(--accent-tint)}.status.fill.is-warn{background:var(--warn-tint)}.status.fill.is-bad{background:var(--danger-tint)}.nav-item{background:none;border:none;cursor:pointer;padding:13px 14px;font:600 12.5px var(--font-display);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:var(--text-faint);border-bottom:2px solid transparent}.nav-item:hover{color:var(--text-dim)}.nav-item.is-active{color:var(--text);border-bottom-color:var(--accent)}.seg{display:flex;gap:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:3px;width:fit-content}.seg-btn{cursor:pointer;background:none;border:none;border-radius:var(--radius);padding:5px 12px;font:600 11px var(--font-mono);color:var(--text-faint)}.seg-btn:hover{color:var(--text)}.seg-btn.is-active{background:var(--surface-3);color:var(--text)}.seg-btn.is-active.accent{background:var(--accent);color:var(--accent-ink)}.toggle{cursor:pointer;background:none;border:1px solid var(--border-strong);color:var(--text-mute);border-radius:var(--radius);padding:5px 12px;font:600 11px var(--font-display);letter-spacing:.04em}.toggle:hover{border-color:var(--text-mute);color:var(--text)}.toggle.is-on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.divider-row{padding:6px 0;border-bottom:1px solid var(--border-soft);display:flex;align-items:center;gap:9px}.table-head{padding:10px 14px;background:var(--surface-2);font:600 10px var(--font-mono);letter-spacing:.05em;color:var(--text-faint)}.table-row{padding:9px 14px;border-top:1px solid var(--border);align-items:center}.swatch-bar{width:4px;height:18px;background:var(--team-color)}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;justify-content:center;align-items:flex-start;padding:60px 16px;overflow-y:auto;z-index:25}.modal-panel{width:100%;max-width:420px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-xl);padding:18px 20px}.modal-panel.w-440{max-width:440px}.modal-panel.w-560{max-width:560px}.modal-panel.w-640{max-width:640px}.modal-panel.w-760{max-width:760px}.paper{background:#fff;color:#111}.paper .dim{color:#555}.paper .rule{border-color:#ddd}.paper .tag-amber{color:#c47b1a}.paper .tag-out{color:#a33}@media print{body *{visibility:hidden!important}#scoresheet,#scoresheet *{visibility:visible!important}#scoresheet{position:absolute!important;left:0;top:0;width:100%;background:#fff}.noprint{display:none!important}}.schedule-wrap{max-width:760px;margin:0 auto}.schedule-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.schedule-toolbar{display:flex;align-items:center;gap:10px}.week-nav{display:flex;justify-content:space-between;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:9px 12px;margin-bottom:14px}.nav-arrow{cursor:pointer;background:none;border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:4px 14px;font:600 16px var(--font-mono);line-height:1}.nav-arrow:hover{border-color:var(--border-strong)}.nav-arrow.muted{color:var(--text-mute)}.nav-arrow.is-disabled{color:var(--border-strong);cursor:default}.nav-arrow.is-disabled:hover{border-color:var(--border)}.week-center{text-align:center}.week-date{font:600 16px var(--font-display);letter-spacing:.05em;text-transform:uppercase}.week-meta{font:500 10px var(--font-mono);color:var(--text-faint)}.game-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:13px 15px;margin-bottom:8px;cursor:pointer}.game-row .swatch-bar{height:22px}.team-side{display:flex;align-items:center;gap:9px;flex:1}.team-side-end{justify-content:flex-end}.team-name{font:600 17px var(--font-display);letter-spacing:.03em;text-transform:uppercase}.game-score{font:600 13px var(--font-mono);color:var(--text);min-width:70px;text-align:center}.game-meta{margin-top:8px}.game-time{font:500 11px var(--font-mono);letter-spacing:.05em;color:var(--text-faint)}.game-status-group{display:flex;align-items:center;gap:8px}.roster-warn{font-size:9px}.sched-status{font:600 10px var(--font-mono);letter-spacing:.06em}.empty-note{font:500 12px var(--font-mono);color:var(--text-faint);text-align:center;padding:24px}.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:5px}.cal-weekday{text-align:center;font:600 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint);padding:4px 0}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.cal-blank{min-height:64px}.cal-cell{min-height:64px;border:1px solid var(--border-soft);background:var(--surface-2);border-radius:var(--radius-md);padding:5px 5px 6px;display:flex;flex-direction:column;gap:3px;overflow:hidden}.cal-cell.is-games{background:var(--surface)}.cal-cell.is-today{background:var(--accent-tint);border-color:var(--accent-border)}.cal-daynum{font:600 11px var(--font-mono);color:var(--text-faint);text-align:right;line-height:1}.cal-cell.is-games .cal-daynum{color:var(--text-dim)}.cal-cell.is-today .cal-daynum{color:var(--accent)}.cal-game{cursor:pointer;display:flex;align-items:center;gap:3px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:3px 4px;width:100%;overflow:hidden}.cal-game .swatch-bar.sm{width:3px;height:12px;flex-shrink:0}.cal-matchup{font:600 9px var(--font-mono);color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;text-align:left}.cal-score{font:600 8px var(--font-mono);flex-shrink:0}.sched-jump-label{display:inline-flex;align-items:center}.sched-datepick{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:6px 8px;font:500 12px var(--font-mono)}.sched-datepick:hover{border-color:var(--border-strong)}.pick-note{font:500 11px var(--font-mono);color:var(--warn);text-align:center;margin-bottom:14px;text-wrap:pretty}.pick-group{margin-bottom:16px}.pick-group-label{font:600 10px var(--font-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--text-faint);margin-bottom:8px}.gform-body{gap:11px}.gform-row{display:flex;gap:8px}.gform-label{font:500 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.gform-label.flex1{flex:1}.gform-field{margin-top:5px;padding:8px 9px}.gform-save{flex:1;padding:10px;font-size:12px}.email-scrim{padding:40px 16px;z-index:30}.email-panel{padding:0;overflow:hidden}.email-head{padding:14px 18px;border-bottom:1px solid var(--border)}.email-title{font:700 13px var(--font-display);letter-spacing:.08em;text-transform:uppercase}.email-body{padding:16px 18px;gap:12px}.email-meta{font:500 11px var(--font-mono);letter-spacing:.04em;color:var(--text-faint)}.email-subject{font:600 16px var(--font-display);letter-spacing:.02em;border-bottom:1px solid var(--border);padding-bottom:11px}.email-info{padding:12px 14px}.email-info-line{font:600 13px var(--font-mono);color:var(--text);padding:2px 0}.email-body-input{min-height:88px;padding:11px;border-radius:var(--radius-md);line-height:1.5;resize:vertical}.email-section-label{font:600 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint);margin-bottom:6px}.email-section-label.tone-dim{color:var(--text-dim)}.email-section-label.tone-mute{color:var(--text-mute)}.email-name{font:500 13px var(--font-display);color:var(--text);padding:1px 0}.email-name.dim{color:var(--text-dim)}.email-roster-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 14px}.email-roster-row{font:500 13px var(--font-display);color:var(--text-dim);padding:1px 0}.email-roster-pos{font:500 10px var(--font-mono);color:var(--text-faint)}.email-out-name{font:500 13px var(--font-display);color:var(--text-dim);margin-right:12px}.email-note{font:500 12px var(--font-mono);color:var(--text-faint)}.email-teams-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.email-foot{padding:12px 18px;border-top:1px solid var(--border);justify-content:flex-end;gap:10px}.email-sent{font:600 12px var(--font-mono);color:var(--accent);margin-right:auto}.email-close-btn{padding:9px 15px}.email-send-btn{padding:9px 18px;font-size:12px}.gd-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;justify-content:center;align-items:flex-start;padding:30px 16px;overflow-y:auto;z-index:20}.gd-panel{width:100%;max-width:640px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-xl);overflow:hidden}.gd-header{padding:16px 18px;background:linear-gradient(180deg,var(--surface),var(--surface-2));border-bottom:1px solid var(--border)}.gd-toprow{display:flex;justify-content:space-between;align-items:flex-start}.gd-dayline{font:500 11px var(--font-mono);letter-spacing:.05em;color:var(--text-faint)}.gd-teamrow{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.gd-team{display:flex;align-items:center;gap:9px;flex:1}.gd-team.end{justify-content:flex-end}.gd-teamname{font:600 20px var(--font-display);letter-spacing:.03em;text-transform:uppercase}.gd-swatch{width:4px;height:24px;background:var(--team-color)}.gd-scorebox{display:flex;align-items:center;gap:6px}.gd-score-in{width:44px;text-align:center;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:5px;font:700 15px var(--font-mono)}.gd-colon{color:var(--text-faint)}.gd-metarow{display:flex;gap:10px;align-items:center;margin-top:12px;flex-wrap:wrap}.gd-metarow.tight{gap:8px;margin-top:8px}.gd-label{font:500 10px var(--font-mono);color:var(--text-faint)}.gd-vs{color:var(--text-faint);font:600 11px var(--font-mono)}.gd-in{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:5px 8px;font:500 12px var(--font-mono)}.gd-in.w-90{width:90px}.gd-select{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:5px 8px;font:500 12px var(--font-display)}.gd-btn{cursor:pointer;border:1px solid var(--border-strong);background:transparent;color:var(--text-faint);border-radius:var(--radius);padding:5px 12px;font:600 10px var(--font-mono);letter-spacing:.06em}.gd-btn.is-final{border-color:var(--accent-border);background:var(--accent-tint);color:var(--accent)}.gd-btn.accent-out{border-color:var(--accent-border);color:var(--accent)}.gd-btn.danger-out{border-color:var(--danger-border);color:var(--danger);margin-left:auto}.gd-find{padding:14px 18px;background:var(--accent-tint);border-bottom:1px solid var(--accent-border)}.gd-find-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.gd-find-title{font:600 12px var(--font-mono);letter-spacing:.04em;color:var(--warn)}.gd-close-txt{cursor:pointer;background:none;border:none;color:var(--text-faint);font:600 13px var(--font-mono)}.gd-pos-row{display:flex;gap:6px;margin-bottom:10px}.gd-pos{cursor:pointer;border:1px solid var(--border-strong);background:transparent;color:var(--text-faint);border-radius:var(--radius-pill);padding:5px 12px;font:600 11px var(--font-display);letter-spacing:.04em}.gd-pos.is-on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.gd-cand{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:6px}.gd-cand-name{flex:1;font:600 15px var(--font-display);letter-spacing:.02em}.gd-cand-meta{font:500 9px var(--font-mono);color:var(--text-faint)}.gd-cand-rating{font:600 12px var(--font-mono);color:var(--accent)}.gd-cand-delta{font:500 11px var(--font-mono);width:38px;text-align:right}.gd-assign{cursor:pointer;background:var(--accent);color:var(--accent-ink);border:none;border-radius:4px;padding:5px 11px;font:700 10px var(--font-mono)}.gd-nocands{font:500 12px var(--font-mono);color:var(--text-faint)}.gd-col{padding:12px 16px}.gd-col.divider{border-right:1px solid var(--border)}.gd-rosterhead{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;gap:6px}.gd-roster-team{font:600 11px var(--font-mono);letter-spacing:.05em;color:var(--team-color)}.gd-avail{font:500 9px var(--font-mono)}.gd-plrow{padding:5px 0;border-bottom:1px solid var(--border-soft)}.gd-plrow-top{display:flex;align-items:center;gap:8px}.gd-check{cursor:pointer;width:16px;height:16px;border-radius:4px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);font:700 10px var(--font-mono);display:flex;align-items:center;justify-content:center}.gd-check.is-out{border-color:var(--text-faint);background:transparent}.gd-plname{flex:1;font:600 14px var(--font-display);letter-spacing:.02em;color:var(--text)}.gd-plname.is-out{color:var(--text-faint)}.gd-plrating{font:500 10px var(--font-mono);color:var(--text-faint)}.gd-subbtn{cursor:pointer;background:none;border:1px solid var(--warn);color:var(--warn);border-radius:4px;padding:2px 7px;font:600 9px var(--font-mono)}.gd-subname{font:500 10px var(--font-mono);color:var(--accent);margin:3px 0 0 24px}.gd-boxrow{display:flex;align-items:center;gap:5px;margin:5px 0 0 24px}.gd-boxlabel{font:600 8px var(--font-mono);letter-spacing:.04em;color:var(--text-faint)}.gd-footer{padding:10px 16px;border-top:1px solid var(--border);font:400 10px var(--font-mono);color:var(--text-fainter)}.ns-fields{gap:11px}.ns-label{font:500 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.ns-label.grow{flex:1}.ns-row{display:flex;gap:8px}.ns-input{margin-top:5px;letter-spacing:.03em}.ns-input-date{margin-top:5px;padding:8px 9px;font:500 12px var(--font-mono)}.ns-fmt{margin-top:6px;display:inline-flex}.ns-save{flex:1;padding:10px;font-size:12px}.pf-scrim{padding:50px 16px;z-index:26}.pf-body{gap:11px}.pf-label{font:500 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.pf-input{margin-top:5px}.pf-input.name{letter-spacing:.02em}.pf-input.tight{padding:8px 9px}.pf-pos-row{display:flex;gap:8px}.pf-rating-label{width:110px}.pf-pos-field{flex:1}.pf-pos-btns{display:flex;gap:6px;margin-top:5px}.pos-btn{flex:1;padding:8px;font:700 12px var(--font-display);letter-spacing:.04em}.pf-save{flex:1;padding:10px;font:700 12px var(--font-mono)}.pf-del{padding:10px 14px;font:600 12px var(--font-mono)}.pf-cancel{padding:10px 14px}.pf-magic{padding-top:10px;margin-top:4px;border-top:1px solid var(--border-soft)}.pf-magic-btns{display:flex;gap:8px;flex-wrap:wrap}.pf-magic-btn{flex:1 1 140px;padding:10px;font:700 11px var(--font-mono);letter-spacing:.05em}.pf-magic-msg{font:500 10px var(--font-mono);color:var(--accent);margin-top:6px;text-align:center}.pf-deactivate{padding-top:10px;margin-top:4px;border-top:1px solid var(--border-soft)}.pf-deactivate-btn{width:100%;padding:10px;font:700 11px var(--font-mono);letter-spacing:.05em}.pf-deactivate-note{font:500 10px var(--font-mono);color:var(--muted);margin-top:6px;text-align:center}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;justify-content:center;align-items:flex-start;padding:24px 16px;overflow-y:auto;z-index:30}.sheet-doc{width:100%;max-width:760px}.sheet-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.sheet-btn{border-radius:var(--radius-md)}.sheet-btn.close{padding:8px 14px}.sheet-btn.print{padding:8px 16px}.scoresheet{border-radius:var(--radius-md);padding:26px 30px;font-family:var(--font-mono)}.ss-head{text-align:center;border-bottom:2px solid currentColor;padding-bottom:10px;margin-bottom:14px}.ss-league{font:700 18px var(--font-display);letter-spacing:.14em;text-transform:uppercase}.ss-sub{font:600 10px var(--font-mono);letter-spacing:.06em;margin-top:3px}.ss-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font:600 11px var(--font-mono);margin-bottom:16px}.ss-teams{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ss-team-label{font:700 13px var(--font-display);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:4px;margin-bottom:6px}.ss-captain{font:500 9px var(--font-mono);margin-bottom:8px}.ss-grid-r{display:grid;grid-template-columns:26px 1fr 34px 26px 26px}.ss-grid-g{display:grid;grid-template-columns:40px 60px 1fr 1fr 50px}.ss-col-head{font:600 8px var(--font-mono);border-bottom:1px solid currentColor;padding-bottom:3px}.ss-c{text-align:center}.ss-prow{align-items:center;font:500 10px var(--font-mono);border-bottom-width:1px;border-bottom-style:solid;min-height:19px}.ss-ph{color:#bbb}.ss-tag{font:600 7px var(--font-mono)}.ss-out{font:500 8.5px var(--font-mono);margin-top:6px;text-wrap:pretty}.ss-section{font:700 11px var(--font-display);letter-spacing:.08em;text-transform:uppercase;margin:18px 0 4px}.ss-section.pen{margin-top:16px}.ss-blank{border-bottom-width:1px;border-bottom-style:solid;min-height:20px}.ss-final{display:flex;justify-content:space-between;margin-top:20px;font:600 10px var(--font-mono)}.la-title{font:700 18px var(--font-display);letter-spacing:.12em;text-transform:uppercase}.la-grow{flex:1}.la-row6{display:flex;gap:6px}.la-mt10{margin-top:10px}.la-mt16{margin-top:16px}.la-mb14{margin-bottom:14px}.la-league-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.la-rename{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:8px 10px;font:600 14px var(--font-display);letter-spacing:.02em}.la-rename:hover{border-color:var(--border-strong)}.la-meta{font:500 9px var(--font-mono);color:var(--text-faint);margin-top:3px}.la-del-btn{cursor:pointer;background:none;border:1px solid var(--danger-border);color:var(--danger);border-radius:var(--radius);padding:8px 12px;font:600 12px var(--font-mono)}.la-del-btn:hover{background:var(--danger-tint)}.la-add-input{flex:1;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:7px 9px;font:500 13px var(--font-display)}.la-add-input:hover{border-color:var(--border-strong)}.la-add-btn{cursor:pointer;background:var(--accent);color:var(--accent-ink);border:none;border-radius:4px;padding:7px 13px;font:700 11px var(--font-mono)}.la-add-btn:hover{filter:brightness(1.08)}.la-pickup-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--border-soft)}.la-pickup-select{cursor:pointer;flex:1;text-align:left;background:none;border:none;color:var(--text)}.la-pickup-name{font:600 15px var(--font-display);letter-spacing:.02em}.la-pickup-line{font:500 10px var(--font-mono);color:var(--text-faint)}.la-edit-btn{border-radius:4px}.la-fields{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.la-field{font:500 10px var(--font-mono);color:var(--text-faint)}.la-field-grow{flex:1;min-width:150px}.la-field-input{display:block;margin-top:5px;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:8px 9px;font:500 13px var(--font-display)}.la-field-input:hover{border-color:var(--border-strong)}.la-field-input.full{width:100%}.la-field-input.time{width:110px;font:500 13px var(--font-mono)}.la-subhead{font:600 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint);margin-bottom:8px}.la-person-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border-soft)}.la-person-name{flex:1;font:600 14px var(--font-display);letter-spacing:.02em}.la-rating{width:56px;background:var(--bg);border:1px solid var(--border);color:var(--accent);border-radius:4px;padding:4px 6px;font:600 12px var(--font-mono);text-align:center}.la-tag{cursor:pointer;border:1px solid var(--border-strong);background:transparent;color:var(--text-mute);border-radius:4px;padding:4px 9px;font:700 9px var(--font-mono)}.la-tag.w30{width:30px}.la-tag.w54{width:54px}.la-tag.w66{width:66px}.la-tag.is-light{color:var(--text-dim);background:color-mix(in srgb,var(--text-dim) 14%,transparent)}.la-tag.is-dark{color:var(--text-mute);background:color-mix(in srgb,var(--text-faint) 20%,transparent)}.la-tag.is-regular{color:var(--accent)}.la-tag.is-sub{color:var(--warn)}.la-x-sm{cursor:pointer;background:none;border:none;color:var(--text-faint);font:600 13px var(--font-mono)}.la-x-sm:hover{color:var(--danger)}.la-balance-btn{cursor:pointer;margin-top:8px;background:none;border:1px solid var(--border-strong);color:var(--accent);border-radius:var(--radius);padding:8px 14px;font:700 10px var(--font-mono);letter-spacing:.05em}.la-balance-btn:hover{border-color:var(--accent-border)}.la-noskate-wrap{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.la-noskate{display:flex;align-items:center;gap:6px;background:var(--danger-tint);border:1px solid var(--danger-border);color:var(--danger);border-radius:var(--radius-pill);padding:4px 10px;font:600 11px var(--font-mono)}.la-noskate-x{cursor:pointer;background:none;border:none;color:var(--danger);font:600 12px var(--font-mono)}.la-date{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:7px 9px;font:500 12px var(--font-mono)}.la-date:hover{border-color:var(--border-strong)}.la-mark-btn{cursor:pointer;background:none;border:1px solid var(--border-strong);color:var(--warn);border-radius:4px;padding:7px 13px;font:700 10px var(--font-mono)}.la-mark-btn:hover{border-color:var(--warn-border)}.league-header{flex-wrap:wrap;gap:12px}.league-brand{gap:12px}.league-controls{gap:14px}.league-switch{padding:7px 10px;letter-spacing:.04em}.league-logo-badge{width:30px;height:30px;border-radius:var(--radius-md);background:var(--accent);display:flex;align-items:center;justify-content:center}.league-title{font:700 20px var(--font-display);letter-spacing:.16em;text-transform:uppercase}.a11y-toggle{cursor:pointer;background:var(--surface);border:1px solid var(--border);color:var(--text-mute);border-radius:var(--radius-md);padding:7px 11px;font:700 10px var(--font-mono);letter-spacing:.06em;white-space:nowrap}.a11y-toggle:hover{color:var(--text);border-color:var(--border-strong)}.a11y-toggle.is-on{background:var(--accent-tint);border-color:var(--accent-border);color:var(--accent)}.season-label{font:500 10px var(--font-mono);letter-spacing:.1em;color:var(--text-faint)}.season-select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:6px 10px;font:600 13px var(--font-display);letter-spacing:.06em}.season-select:hover{border-color:var(--border-strong)}.playoffs-badge{font:600 10px var(--font-mono);letter-spacing:.1em;color:var(--bg);background:var(--warn);padding:4px 8px;border-radius:4px}.nav-narrow{position:relative;background:var(--bg);border-bottom:1px solid var(--border)}.nav-narrow-btn{width:100%;display:flex;justify-content:space-between;align-items:center;background:none;border:none;cursor:pointer;padding:13px clamp(14px,4vw,24px);color:var(--text)}.nav-narrow-label{font:600 12.5px var(--font-display);letter-spacing:.12em;text-transform:uppercase}.nav-hamburger{font:600 17px var(--font-mono);color:var(--accent);line-height:1}.nav-dropdown{position:absolute;left:0;right:0;top:100%;z-index:15;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 12px 24px #00000073;display:flex;flex-direction:column}.nav-row{text-align:left;background:none;border:none;border-bottom:1px solid var(--border);cursor:pointer;padding:13px clamp(14px,4vw,24px);font:600 13px var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}.nav-row.is-active{background:var(--accent-tint);color:var(--accent)}.nav-wide{display:flex;gap:4px;padding:0 clamp(14px,4vw,24px);background:var(--bg);border-bottom:1px solid var(--border);overflow-x:auto}.league-content{flex:1;overflow-y:auto;padding:22px clamp(14px,4vw,24px) 60px}.login-screen{align-items:center;justify-content:center;padding:clamp(28px,7vw,60px) clamp(16px,5vw,20px)}.login-brand{gap:12px;margin-bottom:6px}.login-logo{width:34px;height:34px;border-radius:7px;background:var(--accent);display:flex;align-items:center;justify-content:center}.login-title{font:700 24px var(--font-display);letter-spacing:.16em;text-transform:uppercase}.login-tagline{font:500 12px var(--font-mono);color:var(--text-faint);margin-bottom:30px}.login-card{width:100%;max-width:400px;border-radius:12px;padding:26px 24px}.login-card.center{text-align:center}.login-card-title{font:700 19px var(--font-display);letter-spacing:.03em;margin-bottom:5px}.login-inbox-title{font:700 19px var(--font-display);letter-spacing:.03em;margin-bottom:6px}.login-desc{font:400 11px var(--font-mono);color:var(--text-faint);margin-bottom:20px;text-wrap:pretty}.login-accent{color:var(--accent)}.login-label{display:block;font:500 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint);margin-bottom:16px}.login-input{margin-top:6px;border-radius:var(--radius-md);padding:11px 12px;font:500 14px var(--font-mono)}.login-submit{width:100%;border-radius:var(--radius-md);padding:12px;font:700 12px var(--font-mono);letter-spacing:.06em}.login-envelope{font:600 30px var(--font-display);margin-bottom:8px}.magic-box{text-align:left;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 15px;margin-bottom:16px}.magic-from{font:600 9px var(--font-mono);letter-spacing:.06em;color:var(--text-fainter);margin-bottom:8px;text-transform:uppercase}.magic-subject{font:600 14px var(--font-display);letter-spacing:.02em;margin-bottom:4px}.magic-body{font:400 10.5px var(--font-mono);color:var(--text-mute);margin-bottom:12px;text-wrap:pretty}.magic-btn{width:100%;border-radius:var(--radius-md);padding:11px;font:700 11px var(--font-mono);letter-spacing:.06em}.login-back{cursor:pointer;background:none;border:none;color:var(--text-faint);font:600 10px var(--font-mono);letter-spacing:.05em}.login-back:hover{color:var(--text)}.login-switch{cursor:pointer;background:none;border:none;margin-top:12px;width:100%;color:var(--accent);font:600 10px var(--font-mono);letter-spacing:.04em}.login-switch:hover{text-decoration:underline}.login-error{font:500 10px var(--font-mono);color:var(--danger, #d24a4a);margin:4px 0 2px}.pw-input-wrap{position:relative;display:flex;align-items:center}.pw-input-wrap .input{flex:1;padding-right:58px}.pw-toggle{position:absolute;right:6px;cursor:pointer;background:none;border:none;color:var(--text-faint);font:700 9px var(--font-mono);letter-spacing:.06em;padding:4px 6px}.pw-toggle:hover{color:var(--accent)}.login-footnote{font:400 9px var(--font-mono);color:var(--text-fainter);margin-top:16px;max-width:360px;text-align:center}.logo-img{display:block;object-fit:cover;border-radius:var(--radius)}.picker-wrap{flex:1;overflow-y:auto;display:flex;flex-direction:column;align-items:center;padding:clamp(28px,7vw,60px) clamp(16px,5vw,20px)}.picker-brand{display:flex;align-items:center;gap:12px;margin-bottom:8px}.picker-logo{width:34px;height:34px;border-radius:7px;background:var(--accent);display:flex;align-items:center;justify-content:center}.picker-title{font:700 24px var(--font-display);letter-spacing:.16em;text-transform:uppercase}.picker-sub{font:500 12px var(--font-mono);color:var(--text-faint);margin-bottom:16px}.picker-user{display:flex;align-items:center;gap:8px;margin-bottom:26px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);padding:6px 14px}.picker-dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.picker-user-email{font:500 11px var(--font-mono);color:var(--text-dim)}.picker-role-badge{font:700 8px var(--font-mono);letter-spacing:.06em;color:var(--accent-ink);background:var(--accent);border-radius:var(--radius-sm);padding:2px 6px}.picker-list{width:100%;max-width:560px;display:flex;flex-direction:column;gap:22px}.picker-empty{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:26px;text-align:center}.picker-empty-title{font:600 16px var(--font-display);margin-bottom:5px}.picker-empty-text{font:400 11px var(--font-mono);color:var(--text-faint);text-wrap:pretty}.picker-group{font:600 11px var(--font-mono);letter-spacing:.08em;color:var(--warn);margin-bottom:10px}.picker-card{cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:16px 18px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.picker-card-name{font:700 18px var(--font-display);letter-spacing:.03em;text-transform:uppercase}.picker-card-open{font:600 12px var(--font-mono);color:var(--accent)}.picker-card-sub{font:500 11px var(--font-mono);color:var(--text-faint);margin-top:3px}.picker-actions{display:flex;justify-content:center;gap:8px;margin-top:8px;flex-wrap:wrap}.picker-pw{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 14px;margin-top:14px}.picker-pw-head{font:600 11px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.picker-pw-desc{font:400 10px var(--font-mono);color:var(--text-faint);margin:4px 0 8px;text-wrap:pretty}.picker-a11y{cursor:pointer;background:var(--surface);border:1px solid var(--border);color:var(--text-mute);border-radius:var(--radius-md);padding:9px 14px;font:700 10px var(--font-mono);letter-spacing:.06em}.picker-a11y.is-on{background:var(--accent-tint);border-color:var(--accent-border);color:var(--accent)}.picker-action{cursor:pointer;background:none;border:1px solid var(--border-strong);color:var(--text-mute);border-radius:var(--radius-md);padding:9px 16px;font:600 11px var(--font-mono);letter-spacing:.06em}.picker-action:hover{color:var(--text)}.picker-action.accent{border-color:var(--accent-border);color:var(--accent)}.picker-action.accent:hover{color:var(--accent-hover)}.pickup-header{gap:12px;flex-wrap:wrap}.pickup-title{font:700 20px var(--font-display);letter-spacing:.06em;text-transform:uppercase}.pickup-sub{font:500 11px var(--font-mono);color:var(--text-faint)}.pickup-body{flex:1;padding:22px clamp(14px,4vw,24px) 60px;max-width:900px;margin:0 auto;width:100%}.row.gap-12{gap:12px}.row.gap-8{gap:8px}.btn-secondary.pickup-switch{padding:7px 10px;letter-spacing:.04em}.viewas-label{font:500 10px var(--font-mono);color:var(--text-faint)}.viewas-select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:6px 9px;font:500 12px var(--font-display)}.a11y-btn{cursor:pointer;background:var(--surface);border:1px solid var(--border);color:var(--text-mute);border-radius:var(--radius-md);padding:7px 11px;font:700 10px var(--font-mono);letter-spacing:.06em;white-space:nowrap}.a11y-btn:hover{color:var(--text);border-color:var(--border-strong)}.a11y-btn.is-on{background:var(--accent-tint);border-color:var(--accent-border);color:var(--accent)}.theme-btn{cursor:pointer;background:var(--surface);border:1px solid var(--border);color:var(--text-mute);border-radius:var(--radius-md);padding:7px 11px;font:700 10px var(--font-mono);letter-spacing:.06em;white-space:nowrap}.theme-btn:hover{color:var(--text);border-color:var(--border-strong)}.seg.pickup-tabs{border-radius:7px;margin-bottom:20px}.seg-btn.pickup-tab{padding:7px 15px;letter-spacing:.05em}.roster-grid{margin-bottom:20px}.roster-card{padding:14px 16px}.roster-head{font:600 11px var(--font-mono);letter-spacing:.06em;margin-bottom:10px}.roster-head.light{color:var(--text-dim)}.roster-head.dark{color:var(--text-mute)}.roster-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--border-soft)}.roster-name{flex:1;font:600 14px var(--font-display);letter-spacing:.02em}.roster-pos{font:600 8px var(--font-mono);color:var(--text-faint);width:12px;text-align:center}.roster-rating{font:600 11px var(--font-mono);color:var(--accent);width:28px;text-align:right}.badge.sub-badge{padding:2px 5px}.sessions-head{font:600 11px var(--font-mono);letter-spacing:.08em;color:var(--warn);margin-bottom:10px}.session-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 15px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center;gap:10px;border-left:3px solid var(--border)}.session-row.is-good{border-left-color:var(--accent)}.session-row.is-bad{border-left-color:var(--danger)}.session-date{font:600 16px var(--font-display);letter-spacing:.02em;text-transform:uppercase}.session-year{font:500 11px var(--font-mono);color:var(--text-faint)}.session-status{font:600 10px var(--font-mono);margin-top:2px}.self-btn{cursor:pointer;border:1px solid;background:none;border-radius:var(--radius);padding:6px 12px;font:700 10px var(--font-mono);letter-spacing:.05em}.self-btn.is-in{border-color:var(--accent-border);background:var(--accent-tint);color:var(--accent)}.self-btn.is-out{border-color:var(--danger-border);background:none;color:var(--danger)}.no-btn{cursor:pointer;border:1px solid var(--border-strong);background:none;color:var(--text-mute);border-radius:var(--radius);padding:6px 12px;font:700 9px var(--font-mono);letter-spacing:.05em}.no-btn:hover{color:var(--text);border-color:var(--text-mute)}.profile-card{max-width:520px;overflow:hidden}.profile-head{padding:14px 16px;background:linear-gradient(90deg,var(--surface-3),var(--surface));display:flex;justify-content:space-between;align-items:center}.profile-name{font:700 20px var(--font-display);letter-spacing:.03em;text-transform:uppercase}.profile-meta{font:500 11px var(--font-mono);color:var(--text-mute);margin-top:2px}.role-tag{font:700 10px var(--font-mono);letter-spacing:.08em;background:var(--bg);border:1px solid;padding:5px 11px;border-radius:4px}.profile-label{font:500 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.profile-input{margin-top:5px}.profile-input-name{letter-spacing:.02em}.profile-note{font:400 9px var(--font-mono);color:var(--text-fainter)}.btn.email-skate-btn{border-radius:var(--radius-md);padding:9px 15px;margin-bottom:16px}.sa-title{font:700 18px var(--font-display);letter-spacing:.12em;text-transform:uppercase}.sa-eyebrow{margin-bottom:4px}.sa-desc{font:400 10px var(--font-mono);color:var(--text-faint);margin-bottom:14px;text-wrap:pretty}.sa-admin-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 13px;margin-bottom:10px}.sa-name-row{gap:8px;margin-bottom:8px}.sa-manages{font:600 9px var(--font-mono);letter-spacing:.06em;color:var(--text-faint);margin-bottom:6px}.sa-tag-row{display:flex;flex-wrap:wrap;gap:6px}.sa-tag-row.mb{margin-bottom:6px}.sa-add-row{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.sa-chip{font:600 10px var(--font-mono)}.sa-input{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:7px 9px}.sa-input:hover{border-color:var(--border-strong)}.sa-input-name{flex:1;font:600 14px var(--font-display)}.sa-input-email{width:100%;color:var(--text-mute);font:500 12px var(--font-mono);margin-bottom:9px}.sa-new{flex:1;min-width:120px;border-radius:4px}.sa-new-name{font:500 13px var(--font-display)}.sa-new-email{font:500 12px var(--font-mono)}.sa-remove{padding:7px 11px;font:600 12px var(--font-mono);letter-spacing:normal}.sa-add-btn{border-radius:4px;letter-spacing:normal}.myteam-wrap{max-width:640px;margin:0 auto}.myteam-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:10px;flex-wrap:wrap}.viewas-row{display:flex;align-items:center;gap:8px}.viewas-label{font:500 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.persona-select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:6px 9px;font:500 12px var(--font-display);letter-spacing:.03em;max-width:220px}.profile-card{overflow:hidden;margin-bottom:16px}.profile-name{font:700 21px var(--font-display);letter-spacing:.03em;text-transform:uppercase}.profile-team{font:500 11px var(--font-mono);color:var(--text);opacity:.85;margin-top:2px}.profile-body{padding:14px 16px;display:flex;flex-direction:column;gap:11px}.profile-body>label,.addr-grid>label{display:block;font:600 14px var(--font-display);letter-spacing:.02em;color:var(--text)}.profile-body .input{margin-top:5px}.role-badge{font:700 10px var(--font-mono);letter-spacing:.08em;background:var(--bg);border:1px solid;border-radius:4px;padding:5px 11px}.role-badge.is-captain{color:var(--warn);border-color:var(--warn)}.role-badge.is-sub{color:var(--role-sub);border-color:var(--role-sub)}.role-badge.is-regular{color:var(--accent);border-color:var(--accent)}.profile-id{display:flex;align-items:center;gap:12px}.avatar-wrap{position:relative;width:48px;height:48px;border-radius:50%;overflow:hidden;cursor:pointer;flex-shrink:0;border:2px solid var(--surface);background:var(--surface-2);display:flex;align-items:center;justify-content:center}.avatar-img{width:100%;height:100%;object-fit:cover}.avatar-ph{font:700 19px var(--font-display);color:var(--text-mute)}.avatar-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.avatar-edit{position:absolute;right:-1px;bottom:-1px;font-size:9px;background:var(--accent);color:var(--accent-ink);border-radius:50%;width:16px;height:16px;display:flex;align-items:center;justify-content:center;pointer-events:none}.pw-section{padding-top:12px;border-top:1px solid var(--border-soft)}.pw-title{font:700 11px var(--font-display);letter-spacing:.04em;text-transform:uppercase}.pw-optional{color:var(--text-faint);font-weight:500}.pw-desc{font:400 10px var(--font-mono);color:var(--text-faint);margin:4px 0 8px;text-wrap:pretty}.pw-row{display:flex;gap:8px;align-items:center}.pw-input{flex:1}.pw-save{flex-shrink:0}.pw-msg{font:500 10px var(--font-mono);color:var(--accent);margin-top:6px}.snack-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:12px}.snack-title{font:600 14px var(--font-display);letter-spacing:.02em}.snack-sub{font:500 10px var(--font-mono);color:var(--text-faint);margin-top:2px}.snack-btn{cursor:pointer;border:1px solid var(--border-strong);background:transparent;color:var(--text);border-radius:var(--radius);padding:7px 13px;font:700 10px var(--font-mono);letter-spacing:.05em}.emails-card{padding:14px 16px;margin-bottom:16px}.emails-head{font:600 11px var(--font-mono);letter-spacing:.06em;color:var(--text-faint);margin-bottom:4px}.emails-desc{font:400 10px var(--font-mono);color:var(--text-faint);margin-bottom:12px;text-wrap:pretty}.email-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--border-soft)}.email-addr{flex:1;font:500 12px var(--font-mono);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-remove{cursor:pointer;background:none;border:none;color:var(--text-faint);font:600 13px var(--font-mono)}.verify-btn{cursor:pointer;background:none;border:1px solid var(--accent-border);color:var(--accent);border-radius:4px;padding:3px 8px;font:600 8px var(--font-mono);letter-spacing:.04em}.email-add-row{display:flex;gap:6px;margin-top:10px}.email-add-input{flex:1;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:7px 9px;font:500 12px var(--font-mono)}.send-link-btn{cursor:pointer;background:var(--accent);color:var(--accent-ink);border:none;border-radius:4px;padding:7px 13px;font:700 10px var(--font-mono);letter-spacing:.04em}.email-team-btn{cursor:pointer;background:var(--accent);color:var(--accent-ink);border:none;border-radius:var(--radius-md);padding:9px 15px;font:700 11px var(--font-mono);letter-spacing:.05em;margin-bottom:16px}.games-heading{font:600 11px var(--font-mono);letter-spacing:.08em;color:var(--warn);margin-bottom:10px}.game-card{padding:13px 15px;margin-bottom:10px}.myteam-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.avail-row{margin-top:8px}.game-vs{font:600 17px var(--font-display);letter-spacing:.02em;text-transform:uppercase}.game-time-line{font:500 10px var(--font-mono);color:var(--text-faint);margin-top:2px}.rsvp-group{display:flex;gap:6px}.final-label{font:600 10px var(--font-mono);letter-spacing:.04em;color:var(--text-faint)}.avail-label{font:500 10px var(--font-mono);letter-spacing:.04em}.game-summary{font:500 10px var(--font-mono);color:var(--text-faint)}.rsvp-btn{cursor:pointer;border:1px solid;border-radius:var(--radius);padding:7px 13px;font:700 10px var(--font-mono);letter-spacing:.05em;white-space:nowrap;background:none}.rsvp-in{color:var(--accent);border-color:var(--accent-border);background:transparent}.rsvp-in.is-on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.rsvp-out{color:var(--text-mute);border-color:var(--border-strong);background:transparent}.rsvp-out.is-on{background:var(--danger-tint);color:var(--danger);border-color:var(--danger-border)}.cap-section{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.snacks-row{display:flex;align-items:center;gap:9px;margin-bottom:11px}.cap-label{font:600 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.cap-label.mb8{margin-bottom:8px}.snack-select{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:5px 9px;font:500 12px var(--font-display)}.roster-chips{display:flex;flex-wrap:wrap;gap:6px}.roster-chip{cursor:pointer;border:1px solid var(--border-strong);background:var(--accent-tint);color:var(--text);border-radius:var(--radius-pill);padding:4px 11px;font:600 12px var(--font-display);letter-spacing:.02em}.roster-chip.is-out{border-color:var(--danger-border);background:transparent;color:var(--danger)}.sub-card{cursor:pointer;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--warn);border-radius:var(--radius-md);padding:12px 15px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}.sub-matchup{font:600 16px var(--font-display);letter-spacing:.02em;text-transform:uppercase}.sub-note{font:500 11px var(--font-mono);color:var(--warn)}.subs-empty{font:500 12px var(--font-mono);color:var(--text-faint)}.pl-wrap{max-width:900px;margin:0 auto}.pl-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.pl-addrow{display:flex;justify-content:flex-end;margin-bottom:10px}.pl-table{overflow:auto}.pl-grid{display:grid;grid-template-columns:1.4fr 1fr 44px 60px 1.4fr 1.6fr 40px;min-width:680px}.sub-grid{display:grid;grid-template-columns:1.4fr 44px 60px 1.4fr 1.6fr 40px;min-width:600px}.deact-grid{display:grid;grid-template-columns:1.4fr 44px 60px 1fr 1fr 120px;min-width:600px}.pl-center{text-align:center}.pl-name{font:600 15px var(--font-display);letter-spacing:.02em}.pl-team{display:flex;align-items:center;gap:7px;font:500 12px var(--font-display);color:var(--text-dim)}.swatch-bar.pl{width:3px;height:14px}.pl-rtg{text-align:center;font:600 12px var(--font-mono);color:var(--accent)}.pl-pos{text-align:center;font:500 11px var(--font-mono);color:var(--text-faint)}.pl-cell{font:500 11px var(--font-mono);color:var(--text-mute)}.pl-cell.ellip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tier{border-radius:var(--radius-sm);padding:1px 5px;margin-left:2px;font:600 8px var(--font-mono);letter-spacing:.05em;color:var(--text-mute);border:1px solid var(--border)}.tier.is-super{color:var(--accent);border-color:var(--accent-border)}.tier.is-sub{color:var(--warn);border-color:var(--warn-border)}.tier.is-spareg{color:var(--purple);border-color:var(--purple-border)}.te-edit-row{display:flex;align-items:center;gap:10px;margin-bottom:14px}.te-editing{font:500 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.te-select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:7px 10px;font:600 13px var(--font-display);letter-spacing:.03em}.te-select:hover{border-color:var(--border-strong)}.te-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}.te-stat{padding:12px 14px}.te-stat-label{font:600 10px var(--font-mono);letter-spacing:.05em;color:var(--text-faint)}.te-stat-val{font:700 20px var(--font-mono);margin-top:3px}.te-panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.te-panel{padding:14px 16px}.te-panel-head{font:600 11px var(--font-mono);letter-spacing:.06em;margin-bottom:10px}.te-panel-head.team{color:var(--team-color)}.te-panel-head.warn{color:var(--warn)}.te-rname{flex:1;font:600 14px var(--font-display);letter-spacing:.02em}.te-rpos{font:500 10px var(--font-mono);color:var(--text-faint);width:40px}.te-rrtg{font:600 11px var(--font-mono);color:var(--accent);width:28px;text-align:right}.roster-add{cursor:pointer;background:var(--accent);color:var(--accent-ink);border:none;border-radius:var(--radius-sm);padding:3px 9px;font:700 9px var(--font-mono)}.roster-add:hover{filter:brightness(1.08)}.te-empty{font:500 11px var(--font-mono);color:var(--text-faint)}.rt-wrap{max-width:1000px;margin:0 auto}.rt-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:10px;flex-wrap:wrap}.rt-note-accent{font:600 10px var(--font-mono);letter-spacing:.05em;color:var(--accent)}.rt-desc{font:400 10.5px var(--font-mono);color:var(--text-faint);margin-bottom:12px;text-wrap:pretty}.rt-scroll{overflow-x:auto;width:fit-content;max-width:100%;margin:0 auto}.rt-headrow{display:flex;align-items:stretch;border-bottom:1px solid var(--border);background:var(--surface-2);position:sticky;top:0}.rt-row{display:flex;align-items:stretch;border-bottom:1px solid var(--border-soft)}.rt-h-player{width:154px;flex-shrink:0;padding:9px 12px;font:600 9px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.rt-h-pos{width:44px;flex-shrink:0;padding:9px 4px;text-align:center;font:600 9px var(--font-mono);color:var(--text-faint)}.rt-rater{width:52px;flex-shrink:0;padding:9px 2px;text-align:center;border-left:1px solid var(--border-soft)}.rt-rater-short{font:700 10px var(--font-mono);color:var(--text-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rt-rater-short.is-me{color:var(--accent)}.rt-rater-role{font:500 7px var(--font-mono);color:var(--text-faint);letter-spacing:.03em;text-transform:uppercase}.rt-h-rating{width:64px;flex-shrink:0;padding:9px 6px;text-align:center;border-left:1px solid var(--border-strong);font:600 9px var(--font-mono);color:var(--accent)}.rt-b-player{width:154px;flex-shrink:0;padding:8px 12px;font:600 14px var(--font-display);letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rt-team{font:500 8px var(--font-mono);color:var(--text-faint)}.rt-b-pos{width:44px;flex-shrink:0;padding:8px 4px;text-align:center;font:500 10px var(--font-mono);color:var(--text-faint);display:flex;align-items:center;justify-content:center}.rt-cell{width:52px;flex-shrink:0;border-left:1px solid var(--border-soft);display:flex;align-items:center;justify-content:center}.rt-cell.is-me{background:var(--accent-tint)}.rt-input{width:42px;background:var(--bg);border:1px solid var(--accent-border);color:var(--accent);border-radius:4px;padding:4px 2px;font:600 12px var(--font-mono);text-align:center}.rt-val{font:500 12px var(--font-mono);color:var(--text-dim)}.rt-val.is-me{color:var(--accent)}.rt-val.is-other{color:var(--text-dim)}.rt-val.is-dropped{color:var(--text-fainter);text-decoration:line-through}.rt-b-rating{width:64px;flex-shrink:0;border-left:1px solid var(--border-strong);display:flex;align-items:center;justify-content:center;background:var(--accent-tint);font:700 15px var(--font-mono);color:var(--accent)}.rt-b-rating.is-top{background:var(--accent);color:var(--accent-ink)}.rt-b-rating.is-bottom{background:var(--danger-tint);color:var(--danger)}.rt-val.is-out-mild{color:var(--warn)}.rt-val.is-out-strong{color:var(--warn);font-weight:700;background:var(--warn-tint);border-radius:3px;padding:1px 5px}.rt-group-label{padding:7px 12px;background:var(--surface-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border-soft);font:700 9px var(--font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--text-mute)}.draft-wrap{max-width:1100px;margin:0 auto}.draft-intro{margin-bottom:14px}.draft-desc{font:400 10.5px var(--font-mono);color:var(--text-faint);margin-top:3px;text-wrap:pretty}.draft-ready{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:28px 24px;text-align:center}.draft-ready-title{font:700 21px var(--font-display);letter-spacing:.04em;margin-bottom:5px}.draft-ready-sub{font:500 11px var(--font-mono);color:var(--text-faint);margin-bottom:20px}.draft-cap-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:24px}.draft-cap-pill{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-pill);padding:6px 13px}.draft-cap-dot{width:9px;height:9px;border-radius:2px;background:var(--team-color)}.draft-cap-name{font:600 14px var(--font-display);letter-spacing:.02em}.draft-cap-abbr{font:600 9px var(--font-mono);color:var(--text-faint)}.draft-start{padding:13px 28px;font-size:12px;letter-spacing:.06em;border-radius:var(--radius-md)}.draft-autoleague{margin-top:10px;padding:11px 22px;font:700 11px var(--font-mono);letter-spacing:.05em}.draft-opts{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin:6px 0 20px}.draft-opt{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.draft-opt-label{font:600 9px var(--font-mono);letter-spacing:.07em;color:var(--text-faint)}.draft-opt-seg{flex-wrap:nowrap}.draft-counts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.draft-count-chip{display:flex;flex-direction:column;gap:2px;padding:7px 11px;background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--team-color);border-radius:var(--radius)}.draft-count-chip.is-onclock{border-color:var(--accent);border-left-color:var(--team-color)}.draft-count-abbr{font:700 10px var(--font-mono);letter-spacing:.05em}.draft-count-fdg{font:600 11px var(--font-display)}.draft-count-need{font:500 8px var(--font-mono);color:var(--text-faint);letter-spacing:.04em}.draft-mode{font:500 9px var(--font-mono);color:var(--text-faint);letter-spacing:.04em}.draft-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 16px;margin-bottom:14px}.draft-bar-left{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.draft-round{font:700 11px var(--font-mono);letter-spacing:.06em;color:var(--warn)}.draft-clock{display:flex;align-items:center;gap:9px}.draft-clock-label{font:500 9px var(--font-mono);color:var(--text-faint)}.draft-clock-box{display:flex;align-items:center;gap:7px;background:var(--surface);border:1px solid var(--team-color);border-radius:var(--radius-md);padding:5px 12px}.draft-clock-dot{width:9px;height:9px;border-radius:2px;background:var(--team-color)}.draft-clock-name{font:700 16px var(--font-display);letter-spacing:.03em}.draft-clock-team{font:600 9px var(--font-mono);color:var(--text-faint)}.draft-done{font:700 15px var(--font-display);letter-spacing:.03em;color:var(--accent)}.draft-bar-actions{display:flex;gap:7px}.draft-btn{cursor:pointer;background:none;border:1px solid var(--border-strong);color:var(--text-mute);border-radius:var(--radius);padding:7px 12px;font:700 10px var(--font-mono);letter-spacing:.05em}.draft-btn.accent{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);padding:7px 14px}.draft-btn.danger{border-color:var(--danger-border);color:var(--danger)}.draft-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;align-items:start}.draft-clip{overflow:hidden}.draft-pool-title{padding:11px 14px;background:var(--surface-2);border-bottom:1px solid var(--border);font:600 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.draft-pool-scroll{max-height:600px;overflow-y:auto}.draft-pool-row{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid var(--border-soft)}.draft-pool-rank{font:600 10px var(--font-mono);color:var(--text-fainter);width:22px}.draft-pool-name{flex:1;font:600 15px var(--font-display);letter-spacing:.02em}.draft-pool-team{font:500 9px var(--font-mono);color:var(--text-faint)}.draft-pool-pos{font:500 10px var(--font-mono);color:var(--text-faint);width:34px;text-align:center}.draft-pool-rating{font:700 13px var(--font-mono);color:var(--accent);width:30px;text-align:right}.draft-pick-btn{cursor:pointer;background:var(--accent);color:var(--accent-ink);border:none;border-radius:4px;padding:5px 11px;font:700 9px var(--font-mono);letter-spacing:.05em}.draft-pool-empty{padding:22px 14px;font:500 12px var(--font-mono);color:var(--text-faint);text-align:center}.draft-boards{display:flex;flex-direction:column;gap:10px}.draft-board.is-onclock{border-color:var(--accent-border)}.draft-board-head{padding:9px 13px;background:linear-gradient(90deg,var(--team-color),var(--surface));display:flex;justify-content:space-between;align-items:center;gap:8px}.draft-board-id{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.draft-board-abbr{font:700 16px var(--font-display);letter-spacing:.03em;text-transform:uppercase}.draft-board-cap{font:600 10px var(--font-mono);color:var(--text);opacity:.85}.draft-onclock-badge{font:700 8px var(--font-mono);letter-spacing:.06em;background:var(--bg);color:var(--accent);border:1px solid var(--accent-border);border-radius:var(--radius-sm);padding:2px 6px}.draft-board-tot{text-align:right}.draft-board-total{font:700 16px var(--font-mono);color:var(--accent)}.draft-board-count{font:500 8px var(--font-mono);color:var(--text);opacity:.7}.draft-picks{padding:5px 13px 9px}.draft-pick-row{display:flex;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid var(--border-soft)}.draft-pick-n{font:600 9px var(--font-mono);color:var(--text-fainter);width:16px}.draft-pick-name{flex:1;font:600 13px var(--font-display);letter-spacing:.02em}.draft-g-badge{font:600 8px var(--font-mono);color:var(--purple);border:1px solid var(--purple-border);border-radius:var(--radius-sm);padding:1px 5px}.draft-pick-pos{font:500 9px var(--font-mono);color:var(--text-faint);width:30px}.draft-pick-rating{font:600 11px var(--font-mono);color:var(--accent);width:26px;text-align:right}.draft-nopicks{padding:8px 13px 11px;font:500 10px var(--font-mono);color:var(--text-fainter)}.stand-wrap{max-width:720px;margin:0 auto}.stand-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.stand-tools{display:flex;align-items:center;gap:8px}.stand-table{overflow-x:auto}.stand-grid{display:grid;grid-template-columns:30px minmax(110px,1fr) 38px 38px 38px 48px 42px 44px 44px 48px;min-width:560px}.st-c{text-align:center}.st-sort{cursor:pointer;-webkit-user-select:none;user-select:none}.st-sort:hover{color:var(--text)}.st-sort.is-active{color:var(--accent)}.st-rank{font:600 13px var(--font-mono);color:var(--text-faint)}.st-team{display:flex;align-items:center;gap:9px}.st-team-name{font:600 16px var(--font-display);letter-spacing:.03em;text-transform:uppercase}.st-w{text-align:center;font:600 14px var(--font-mono)}.st-l{text-align:center;font:600 14px var(--font-mono);color:var(--text-faint)}.st-t{text-align:center;font:500 13px var(--font-mono);color:var(--text-faint)}.st-pts{text-align:center;font:700 14px var(--font-mono);color:var(--accent)}.st-pb{text-align:center;font:500 12px var(--font-mono);color:var(--text-faint)}.st-gf{text-align:center;font:500 13px var(--font-mono)}.st-ga{text-align:center;font:500 13px var(--font-mono);color:var(--text-faint)}.st-pim{text-align:center;font:500 12px var(--font-mono);color:var(--warn)}.brk-note{font:400 10.5px var(--font-mono);color:var(--text-faint);margin-bottom:14px;text-wrap:pretty}.brk-cols{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.brk-col{display:flex;flex-direction:column;gap:18px}.brk-col-final{display:flex;flex-direction:column;gap:8px}.brk-label{font:600 9px var(--font-mono);letter-spacing:.08em;color:var(--text-faint)}.brk-label.warn{color:var(--warn)}.brk-card{width:210px;overflow:hidden}.brk-card-final{width:210px;overflow:hidden;border-color:var(--border-strong)}.brk-card .swatch-bar{height:15px}.brk-team{display:flex;align-items:center;gap:8px;padding:9px 12px}.brk-team-top{border-bottom:1px solid var(--border)}.brk-seed{font:600 9px var(--font-mono);color:var(--text-faint);width:14px}.brk-team-name{font:600 15px var(--font-display);letter-spacing:.02em}.brk-score{margin-left:auto;font:700 15px var(--font-mono);color:var(--text-faint)}.brk-win .brk-team-name,.brk-win .brk-score{color:var(--accent)}.brk-winner{display:flex;align-items:center;gap:8px;padding:11px 12px}.brk-winner-txt{font:500 12px var(--font-mono);color:var(--text-faint)}.brk-champ{font:600 9px var(--font-mono);letter-spacing:.06em;color:var(--text-faint);margin-top:6px}.brk-notready{font:500 12px var(--font-mono);color:var(--text-faint)}.brk-rr{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.brk-rr-game{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px}.brk-rr-game .swatch-bar{height:15px}.brk-rr-side{display:flex;align-items:center;gap:8px;flex:1}.brk-rr-side-end{justify-content:flex-end}.brk-rr-vs{font:500 9px var(--font-mono);color:var(--text-faint);flex-shrink:0}.stats-wrap{max-width:920px;margin:0 auto}.stats-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.stats-head-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.btn-export{cursor:pointer;background:none;border:1px solid var(--border-strong);color:var(--text-mute);border-radius:var(--radius-md);padding:7px 12px;font:700 10px var(--font-mono);letter-spacing:.05em}.btn-export:hover{color:var(--text);border-color:var(--text-mute)}.stat-table{overflow:auto}.sk-grid{display:grid;grid-template-columns:32px 1.5fr 46px 44px 44px 48px 44px 50px 48px 50px;min-width:660px}.gk-grid{display:grid;grid-template-columns:32px 1.6fr 46px 46px 56px 46px 46px 50px;min-width:600px}.cmp-grid{display:grid;grid-template-columns:32px 1.6fr 90px 90px 70px;min-width:520px}.stat-col{text-align:center;cursor:pointer;font:600 10px var(--font-mono);letter-spacing:.03em;color:var(--text-faint)}.stat-col.is-sorted{color:var(--accent)}.th-c{text-align:center}.player-cell{display:flex;align-items:center;gap:8px}.player-name{font:600 15px var(--font-display);letter-spacing:.02em}.player-tag{font:500 9px var(--font-mono);color:var(--text-faint)}.st-rank{font:500 12px var(--font-mono);color:var(--text-faint)}.st-mute{text-align:center;font:500 12px var(--font-mono);color:var(--text-faint)}.st-num{text-align:center;font:600 13px var(--font-mono)}.st-hi{text-align:center;font:700 13px var(--font-mono);color:var(--accent)}.st-prev{text-align:center;font:500 13px var(--font-mono);color:var(--text-mute)}.stat-note{font:400 9.5px var(--font-mono);color:var(--text-fainter);margin-top:10px;text-wrap:pretty}.swatch-bar.stat{width:3px;height:16px}.leaders-wrap{max-width:1000px;margin:0 auto}.leaders-title{margin-bottom:4px}.leaders-sub{font:400 10.5px var(--font-mono);color:var(--text-faint);margin-bottom:16px}.leader-card{overflow:hidden}.leader-card-head{padding:9px 13px;background:var(--surface-2);border-bottom:1px solid var(--border);font:600 10px var(--font-mono);letter-spacing:.06em}.leader-card-head.skater{color:var(--warn)}.leader-card-head.goalie{color:var(--purple)}.leader-body{padding:5px 13px 9px}.leader-row{display:flex;align-items:center;gap:9px;padding:5px 0;border-bottom:1px solid var(--border-soft)}.leader-rank{font:600 10px var(--font-mono);color:var(--text-fainter);width:14px}.leader-name{flex:1;font:600 14px var(--font-display);letter-spacing:.02em}.leader-tag{font:500 8px var(--font-mono);color:var(--text-faint)}.leader-val{font:700 14px var(--font-mono)}.leader-val.skater{color:var(--accent)}.leader-val.goalie{color:var(--purple)}.swatch-bar.leader{width:3px;height:15px}.subs-wrap{max-width:820px;margin:0 auto}.subs-title-mb{margin-bottom:6px}.subs-sub{font:500 12px var(--font-mono);color:var(--text-faint);margin-bottom:18px}.subs-eyebrow-warn{font:600 11px var(--font-mono);letter-spacing:.08em;color:var(--warn);margin-bottom:10px}.subs-eyebrow{font:600 11px var(--font-mono);letter-spacing:.08em;color:var(--text-faint);margin:22px 0 10px}.subs-need-row{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--warn);border-radius:var(--radius-md);padding:12px 15px;margin-bottom:8px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.subs-need-name{font:600 16px var(--font-display);letter-spacing:.02em;text-transform:uppercase}.subs-need-note{font:500 11px var(--font-mono);color:var(--warn)}.subs-empty{font:500 12px var(--font-mono);color:var(--text-faint);margin-bottom:8px}.subs-pool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.subs-pool-card{border-radius:var(--radius-md);padding:12px 14px}.subs-pool-name{font:600 16px var(--font-display);letter-spacing:.02em}.subs-rating{font:600 13px var(--font-mono);color:var(--accent)}.subs-pool-meta{margin-top:5px}.subs-pos{font:500 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.sub-tier.is-super{color:var(--accent);border-color:var(--accent-border)}.sub-tier.is-sub{color:var(--warn);border-color:var(--warn-border)}.sub-tier.is-spare-g{color:var(--purple);border-color:var(--purple-border)}.subs-hist-card{padding:6px 14px}.subs-hist-row{display:flex;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--border-soft)}.subs-hist-name{font:600 14px var(--font-display);letter-spacing:.02em}.subs-hist-val{font:500 11px var(--font-mono);color:var(--accent)}.teams-wrap{max-width:900px;margin:0 auto}.teams-title{margin-bottom:14px}.teams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(360px,100%),1fr));gap:14px}.teams-card{overflow:hidden}.team-card-head{padding:14px 16px;background:linear-gradient(90deg,var(--team-color),var(--surface))}.team-card-name{font:700 19px var(--font-display);letter-spacing:.04em;text-transform:uppercase;text-shadow:0 0 2px rgba(0,0,0,.6),0 1px 1px rgba(0,0,0,.5)}.team-card-sponsor{font:500 11px var(--font-mono);color:var(--text);opacity:.85;margin-top:2px}.team-card-body{padding:6px 14px 12px}.roster-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--border-soft)}.roster-name{flex:1;font:600 15px var(--font-display);letter-spacing:.02em}.roster-badge{font:500 9px var(--font-mono);color:var(--text-faint)}.roster-pos{font:500 10px var(--font-mono);color:var(--text-faint);width:44px}.roster-rating{font:600 12px var(--font-mono);color:var(--accent);width:30px;text-align:right}.paid-btn{cursor:pointer;background:transparent;border:1px solid var(--border);color:var(--text-mute);border-radius:var(--radius-sm);padding:3px 7px;font:600 9px var(--font-mono);letter-spacing:.05em;width:56px}.rotation-foot{margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.rotation-label{font:600 10px var(--font-mono);letter-spacing:.07em;color:var(--text-faint);margin-bottom:7px}.rotation-next{color:var(--warn)}.rotation-chips{display:flex;flex-wrap:wrap;gap:6px}.rotation-hint{font:400 9px var(--font-mono);color:var(--text-fainter);margin-top:6px}.rotation-auto{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border-soft)}.rotation-auto-desc{font:400 10px var(--font-mono);color:var(--text-faint);margin-bottom:8px;text-wrap:pretty}.rotation-auto-btns{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.rotation-auto-btn{padding:8px 12px;font:700 10px var(--font-mono);letter-spacing:.05em}.myteam-seg{margin:12px 0 16px}.addr-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px}.team-captain-line{font:600 10px var(--font-mono);letter-spacing:.06em;color:var(--text-faint);margin-bottom:10px}.team-captain-name{color:var(--text)}.roster-c{display:inline-block;margin-left:4px;padding:0 4px;border-radius:3px;background:var(--accent-tint);color:var(--accent);font:700 8px var(--font-mono);letter-spacing:.04em;vertical-align:middle}.snack-chip{cursor:pointer;border-radius:var(--radius-pill);padding:4px 10px;font:600 11px var(--font-display);letter-spacing:.03em;border:1px solid var(--border);background:transparent;color:var(--text-faint)}.snack-chip:hover{border-color:var(--text-mute);color:var(--text)}.snack-chip.is-in{border-color:var(--border-strong);background:var(--accent-tint);color:var(--text)}.admin-wrap{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.admin-card-head{margin-bottom:10px}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.admin-eyebrow{font:600 11px var(--font-mono);letter-spacing:.08em;color:var(--warn)}.mb-8{margin-bottom:8px}.admin-col-label{color:var(--text-faint);margin-bottom:12px}.admin-inline-label{font:500 10px var(--font-mono);letter-spacing:.05em;color:var(--text-faint)}.grow{flex:1}.season-row{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--border-soft)}.season-label{font:600 15px var(--font-display);letter-spacing:.02em}.season-sub{font:500 10px var(--font-mono);color:var(--text-faint);margin-top:1px}.playoffs-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}.state-btn{cursor:pointer;background:transparent;border:1px solid var(--border-strong);color:var(--text-faint);border-radius:var(--radius);padding:6px 12px;font:600 10px var(--font-mono);letter-spacing:.05em;white-space:nowrap}.admin-row{display:flex;align-items:center;gap:8px;padding:5px 0}.admin-item-name{flex:1;font:600 14px var(--font-display)}.admin-swatch{width:10px;height:10px;border-radius:var(--radius-sm);background:var(--team-color);border:1px solid var(--border-strong);box-sizing:border-box;box-shadow:inset 0 0 0 1px #00000047}.add-section{display:flex;flex-direction:column;gap:8px;margin-top:12px;border-top:1px solid var(--border);padding-top:12px}.add-label{font:600 9px var(--font-mono);letter-spacing:.08em;color:var(--text-faint)}.mini-label{font:500 9px var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.color-field{display:flex;flex-direction:column;gap:5px}.swatch-opts{display:flex;gap:6px;flex-wrap:wrap}.color-swatch{cursor:pointer;width:24px;height:24px;border-radius:var(--radius);background:var(--team-color);border:2px solid var(--border-strong);padding:0;box-shadow:inset 0 0 0 1px #00000047}.color-swatch.is-selected{border-color:var(--text)}.admin-select{margin-top:5px}.add-row{display:flex;gap:6px;margin-top:10px}.add-row .input{flex:1}.csv-help{font:400 10px var(--font-mono);line-height:1.6;color:var(--text-faint);margin-bottom:10px}.csv-help .accent{color:var(--accent)}.csv-help .strong{color:var(--text)}.csv-textarea{min-height:120px;border-radius:var(--radius-md);padding:11px;font-size:12px;line-height:1.6;resize:vertical}.csv-actions{display:flex;gap:12px;align-items:center;margin-top:10px}.csv-msg{font:600 11px var(--font-mono);color:var(--accent)}.admin-seg{flex-wrap:wrap}.admin-name-input{flex:1}.color-row.is-inactive{opacity:.5}.color-swatch-lg{width:24px;height:24px}.color-hex{font:600 12px var(--font-mono);text-transform:uppercase}.color-input{cursor:pointer;width:34px;height:26px;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius);background:transparent}.sponsor-row{display:flex;flex-direction:column;gap:8px;padding:10px 0;border-bottom:1px solid var(--border-soft)}.sponsor-row.is-inactive{opacity:.55}.sponsor-row-head{display:flex;align-items:center;gap:8px}.sponsor-media{display:flex;gap:12px;flex-wrap:wrap}.sponsor-upload{display:flex;flex-direction:column;gap:4px;cursor:pointer}.sponsor-upload-wide{flex:1;min-width:160px}.sponsor-drop{display:flex;align-items:center;justify-content:center;height:48px;padding:0 14px;border:1px dashed var(--border-strong);border-radius:var(--radius-md);font:600 10px var(--font-mono);letter-spacing:.05em;color:var(--text-faint)}.sponsor-upload-wide .sponsor-drop{width:100%}.sponsor-logo{width:48px;height:48px;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--border)}.sponsor-banner{width:100%;height:48px;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--border)}.file-hidden{display:none}.csv-file-row{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.csv-file-input{padding:7px}.rink-edit{display:flex;flex-direction:column;gap:9px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 13px;margin-bottom:10px}.rink-edit-head{display:flex;align-items:center;gap:8px}.rink-edit-save{align-self:flex-start}.team-list-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border-soft)}.team-list-swatch{width:14px;height:14px;flex-shrink:0}.team-list-info{flex:1;min-width:0}.team-list-name{font:600 15px var(--font-display);letter-spacing:.02em}.team-list-sub{font:500 10px var(--font-mono);color:var(--text-faint);margin-top:1px}.team-list-edit{padding:6px 14px}.colors-save-row{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.sched-day{margin-bottom:6px}.sched-day-label{font:600 10px var(--font-mono);letter-spacing:.07em;color:var(--text-faint);text-transform:uppercase;margin:12px 0 4px}.pf-rating-ro{margin-top:5px;display:flex;align-items:center;height:34px;padding:0 10px;background:var(--accent-tint);border:1px solid var(--border);border-radius:var(--radius);font:700 15px var(--font-mono);color:var(--accent)}.pf-rating-note{font:400 9.5px var(--font-mono);color:var(--text-faint);text-wrap:pretty;margin-top:-2px}.stat-col-name{cursor:pointer}.toaster{position:fixed;left:50%;bottom:20px;transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;gap:8px;align-items:center;width:max-content;max-width:min(92vw,420px);pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border-strong);border-left-width:3px;border-radius:var(--radius-md);padding:10px 12px;box-shadow:0 6px 24px #00000047;animation:toast-in .18s ease-out}.toast-success{border-left-color:var(--accent)}.toast-error{border-left-color:var(--danger)}.toast-info{border-left-color:var(--warn)}.toast-msg{font:600 12px var(--font-display);letter-spacing:.02em;color:var(--text)}.toast-close{cursor:pointer;background:transparent;border:none;color:var(--text-faint);font:700 15px var(--font-mono);line-height:1;padding:0 2px}.toast-close:hover{color:var(--text)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
