:root {
    --font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --ink: #f6f8f2;
    --muted: #a9b7af;
    --surface: #182720;
    --surface-raised: #20342b;
    --pitch: #101c17;
    --accent: #c8ff3d;
    --accent-ink: #102000;
    --danger: #ffb4a9;
    --success: #c8ff3d;
    --warning: #ffd37b;
    --rehearsal: #a991ff;
    --border: #355044;
    --radius: 14px;
    --radius-lg: 24px;
    --container: 70rem;
    --container-wide: 78rem;
    --space-1: .4rem;
    --space-2: .75rem;
    --space-3: 1rem;
    --space-4: 1.5rem;
    --space-5: 2.25rem;
    --shadow: 0 12px 32px rgb(0 0 0 / 20%);
}
* { box-sizing: border-box; }
html { background: var(--pitch); color: var(--ink); font-family: var(--font); }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 50% -20%, #274b38 0, var(--pitch) 42rem); }
button, input { font: inherit; }
.site-header { display: flex; align-items: center; justify-content: space-between; max-width: 70rem; margin: auto; padding: var(--space-3); }
.brand { display: inline-flex; flex: 0 0 auto; text-decoration: none; }
.product-beta-badge{align-self:center;border:1px solid var(--accent);border-radius:999px;color:var(--accent);display:inline-flex;font-size:.55rem;font-weight:950;letter-spacing:.12em;margin-left:.45rem;padding:.18rem .38rem;text-decoration:none}.product-beta-badge:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.site-header>.product-beta-badge{margin-right:auto}
.brand img { display: block; height: 3.28125rem; max-width: 6.25rem; object-fit: contain; object-position: left center; width: 6.25rem; }
@media (min-width:48rem) { .brand img { height: 3.59375rem; max-width: 6.875rem; width: 6.875rem; } }
.header-actions{align-items:center;display:flex;gap:.25rem;transform:translateY(3px)}.header-icon-action{align-items:center;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--accent);cursor:pointer;display:inline-flex;flex:0 0 2.625rem;height:2.625rem;justify-content:center;padding:0;text-decoration:none;width:2.625rem}.header-icon-action:hover,.header-icon-action:focus-visible{background:var(--surface);border-color:var(--border);color:var(--accent)}.header-icon-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.header-icon{display:block;height:1.25rem;width:1.25rem}
.header-icon-action.is-active{background:var(--surface);border-color:var(--accent)}
.header-actions { align-items: center; display: flex; gap: var(--space-2); }
.site-header:has(.verification-reminder){flex-wrap:wrap}.verification-reminder{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:9px;display:flex;flex:1 0 100%;gap:var(--space-2);min-height:2.4rem;padding:.35rem .65rem}.verification-reminder>div{align-items:baseline;display:flex;gap:.45rem;min-width:0}.verification-reminder strong{color:var(--accent);font-size:.64rem;letter-spacing:.08em;white-space:nowrap}.verification-reminder span{color:var(--muted);font-size:.68rem;white-space:nowrap}.verification-reminder form{margin-left:auto}.verification-reminder button{background:transparent;border:0;color:var(--accent);cursor:pointer;font-size:.66rem;font-weight:900;min-height:2rem;padding:0 .35rem}.verification-shell{display:block;min-height:0;padding-top:var(--space-3)}.verification-card{display:grid;gap:var(--space-2)}.verification-card h1{margin:.1rem 0 var(--space-2)}.verification-actions{display:grid;gap:var(--space-3)}.verification-actions form{display:grid}.verification-actions .button{max-width:none;width:100%}.verification-notice{margin:0;padding:var(--space-3)}.email-verification-status{color:var(--accent);display:block;font-size:.7rem;letter-spacing:.1em;margin:.5rem 0}
.verification-reminder{margin-top:var(--space-2)}
@media(max-width:25rem){.verification-reminder>div{align-items:flex-start;flex-direction:column;gap:.05rem}.verification-reminder{padding-bottom:.3rem;padding-top:.3rem}}
.simulator-link { border: 1px solid var(--border); border-radius: 99px; color: var(--muted); font-size: .72rem; font-weight: 800; padding: .42rem .7rem; text-decoration: none; }.simulator-link:hover,.simulator-link:focus-visible { border-color: var(--accent); color: var(--accent); }
.dev-badge { border: 1px solid var(--border); border-radius: 99px; color: var(--muted); font-size: .7rem; padding: .35rem .6rem; }
main { margin: 0 auto; max-width: 70rem; padding: var(--space-2) var(--space-3) 8rem; }
.history-shell { max-width:48rem; }.history-list { display:grid; }.history-row { border-top:1px solid var(--border); color:inherit; display:flex; flex-direction:column; gap:.35rem; padding:var(--space-3) 0; text-decoration:none; }.history-row:first-child { border-top:0; }.history-row span { color:var(--muted); }.leaderboard-list .leaderboard-row.is-current-user { background:#284519; box-shadow:inset 3px 0 var(--accent); }
.admin-user-filters { display:grid; gap:var(--space-3); }.admin-user-filters label { color:var(--muted); display:grid; font-size:.75rem; font-weight:800; gap:.4rem; }.admin-user-filters input,.admin-select { appearance:none; background:var(--surface-raised); border:1px solid var(--border); border-radius:9px; color:var(--ink); min-height:3.25rem; padding:.7rem .8rem; width:100%; }.admin-select { background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%); background-position:calc(100% - 18px) 1.35rem,calc(100% - 13px) 1.35rem; background-repeat:no-repeat; background-size:5px 5px;padding-right:2.5rem;}.admin-user-filters input:focus,.admin-select:focus { border-color:var(--accent); outline:2px solid var(--accent); outline-offset:2px; }.admin-user-row { align-items:start; border-top:1px solid var(--border); display:grid; gap:var(--space-2); padding:var(--space-3) 0; }.admin-user-row>div:first-child strong,.admin-user-row>div:first-child span { display:block; }.admin-user-row>div:first-child span { color:var(--muted); font-size:.75rem; overflow-wrap:anywhere; }.admin-user-meta { display:flex; flex-wrap:wrap; gap:.35rem .8rem; }.admin-user-meta span { color:var(--muted); font-size:.68rem; }.admin-user-edit { justify-self:start; width:auto; }.admin-pagination { border-top:1px solid var(--border); margin-top:var(--space-2); padding-top:var(--space-3); }.admin-pagination p { color:var(--muted); font-size:.75rem; }.admin-pagination>div { align-items:center; display:flex; flex-wrap:wrap; gap:.4rem; }.admin-pagination .button { padding:.6rem .8rem; width:auto; }.admin-page { border-radius:6px; color:var(--ink); min-width:2.25rem; padding:.55rem;text-align:center;text-decoration:none;}.admin-page.is-current { background:var(--accent);color:var(--accent-ink);font-weight:900;}@media(min-width:48rem){.admin-user-filters{align-items:end;grid-template-columns:1fr minmax(14rem,18rem) auto}.admin-user-row{align-items:center;grid-template-columns:minmax(12rem,1fr) 2fr auto}.admin-user-edit{justify-self:end}}
.hero { padding: var(--space-4) 0 var(--space-5); }
.hero--compact { padding-bottom: var(--space-4); }
.eyebrow { color: var(--accent); font-size: .75rem; font-weight: 900; letter-spacing: .16em; margin: 0 0 var(--space-2); }
h1 { font-size: clamp(2.15rem, 10vw, 4.5rem); letter-spacing: -.055em; line-height: .95; margin: 0; }
.instruction, .hero-date { color: var(--muted); font-size: 1.1rem; margin: var(--space-3) 0 0; }
.selection-bar { align-items: center; background: rgb(16 28 23 / 92%); border: 1px solid var(--border); border-radius: var(--radius); display: flex; justify-content: space-between; margin-bottom: var(--space-5); padding: var(--space-3); position: sticky; top: .75rem; z-index: 5; backdrop-filter: blur(12px); box-shadow: var(--shadow); }
.selection-count { color: var(--accent); display: block; font-size: 1.55rem; font-weight: 900; letter-spacing: -.04em; }
.selection-label, .deadline { color: var(--muted); font-size: .75rem; }
.league-section { margin-bottom: var(--space-5); }
.league-section > header { align-items: baseline; display: flex; justify-content: space-between; margin-bottom: var(--space-2); }
.league-section h2 { font-size: 1rem; margin: 0; }
.league-section header span { color: var(--muted); font-size: .75rem; }
.fixtures { display: grid; gap: var(--space-2); }
.fixture-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
.fixture-card time { color: var(--muted); display: block; font-size: .72rem; padding: .65rem var(--space-3) .2rem; }
.team-option { align-items: center; border-top: 1px solid var(--border); cursor: pointer; display: grid; gap: var(--space-2); grid-template-columns: 2.4rem 1fr 1.5rem; min-height: 3.7rem; padding: .65rem var(--space-3); transition: background .15s, color .15s; }
.team-option input { opacity: 0; pointer-events: none; position: absolute; }
.team-side { color: var(--muted); font-size: .68rem; text-transform: uppercase; }
.team-option strong { font-size: .95rem; }
.checkmark { border: 1px solid var(--border); border-radius: 50%; display: grid; height: 1.45rem; place-items: center; width: 1.45rem; color: transparent; }
.team-option.is-selected { background: var(--accent); color: var(--accent-ink); }
.team-option.is-selected .team-side { color: #3f5700; }
.team-option.is-selected .checkmark { background: var(--accent-ink); border-color: var(--accent-ink); color: var(--accent); }
.team-option:has(input:focus-visible) { outline: 3px solid white; outline-offset: -3px; }
.team-option:has(input:disabled) { cursor: not-allowed; opacity: .45; }
.submit-dock { background: linear-gradient(transparent, var(--pitch) 30%); bottom: 0; margin:var(--space-3) 0 0; padding:2.5rem var(--space-3) var(--space-3); position:sticky; text-align:center; z-index:4; }
.button { background: var(--accent); border: 0; border-radius: 10px; color: var(--accent-ink); cursor: pointer; display: inline-flex; font-weight: 950; justify-content: center; letter-spacing: .035em; max-width: 32rem; padding: 1rem 1.25rem; text-decoration: none; width: 100%; }
.button:disabled { background: #536059; color: #a8afa9; cursor: not-allowed; }
.button--secondary { background: transparent; border: 1px solid var(--accent); color: var(--accent); }
.submit-dock p { color: var(--muted); font-size: .75rem; margin: .5rem 0 0; }
.alert { background: #4c211d; border: 1px solid #93463d; border-radius: var(--radius); color: var(--danger); margin-bottom: var(--space-3); padding: var(--space-3); }
.flash-stack{display:grid;gap:var(--space-2);margin-bottom:var(--space-3)}.site-header:has(.flash-stack){flex-wrap:wrap}.site-header>.flash-stack{flex:1 0 100%;margin-top:var(--space-2);order:4;width:100%}.flash-message{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--ink);padding:var(--space-3)}.flash-message--success{border-color:var(--success);color:var(--success)}.flash-message--info{color:var(--ink)}.flash-message--warning{border-color:var(--warning);color:var(--warning)}.flash-message--error{background:#4c211d;border-color:#93463d;color:var(--danger)}
.entry-list { display: grid; gap: var(--space-2); margin-bottom: var(--space-4); }
.entry-team { align-items: center; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); display: flex; justify-content: space-between; padding: var(--space-3); }
.entry-team strong, .entry-team span { display: block; }
.entry-team div span { color: var(--muted); font-size: .8rem; margin-top: .2rem; }
.league-pill { color: var(--accent); font-size: .65rem; max-width: 8rem; text-align: right; }
.empty-state { padding: 20vh 0; text-align: center; }
.empty-state p:last-child { color: var(--muted); }
@media (min-width: 48rem) {
    main, .site-header { padding-left: var(--space-5); padding-right: var(--space-5); }
    .fixtures { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .entry-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .submit-dock { width:100%; }
}
.sim-score { background: var(--accent); border-radius: var(--radius); color: var(--accent-ink); display: flex; flex-direction: column; margin-bottom: var(--space-3); padding: var(--space-3); }
.sim-score-value { align-items: baseline; display: flex; font-variant-numeric: tabular-nums; line-height: .85; }.sim-score-current { font-size: clamp(3.75rem,18vw,7rem); font-weight: 950; letter-spacing: -.08em; }.sim-score-total { font-size: clamp(1.35rem,6vw,2.4rem); font-weight: 850; letter-spacing: -.04em; margin-left: .15em; }.sim-score-label { font-size: .8rem; font-weight: 950; letter-spacing: .14em; margin-top: var(--space-2); }.sim-score small { font-size: .72rem; margin-top: .2rem; opacity: .7; }
.button--danger { background: #ff715b; color: #240500; margin-bottom: var(--space-5); max-width: none; }
.admin-shell { max-width: 78rem; }
.admin-hero { padding: var(--space-3) 0 var(--space-4); }.admin-hero h1 { font-size: clamp(2rem,8vw,4rem); }.admin-hero>p:last-child,.admin-muted { color: var(--muted); }
.admin-vitals { display: grid; gap: var(--space-2); grid-template-columns: repeat(2,minmax(0,1fr)); margin-bottom: var(--space-4); }.admin-vital { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: var(--space-3); }.admin-vital:first-child { grid-column: 1/-1; }.admin-vital span { color: var(--muted); display:block; font-size:.68rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.admin-vital strong { display:block; font-size:1.25rem; margin-top:.25rem; }.admin-vital.is-good { border-color:#5f8f46; }.admin-vital.is-good strong { color:var(--accent); }.admin-vital.is-warning { border-color:#a77c33; }.admin-vital.is-warning strong { color:#ffd37b; }.admin-vital.is-problem { background:#3a201d; border-color:#93463d; }.admin-vital.is-problem strong { color:var(--danger); }
.admin-grid { display:grid; gap:var(--space-3); margin-bottom:var(--space-3); }.admin-card { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); margin-bottom:var(--space-3); padding:var(--space-3); }.admin-card h2 { font-size:1rem; margin:0 0 var(--space-3); }.admin-card--problem { border-color:#93463d; }.admin-details { margin:0; }.admin-details div { align-items:center; border-top:1px solid var(--border); display:flex; justify-content:space-between; padding:.65rem 0; }.admin-details dt { color:var(--muted); font-size:.78rem; }.admin-details dd { font-size:.82rem; font-weight:750; margin:0; text-align:right; }.admin-status-counts { display:grid; gap:var(--space-2); grid-template-columns:repeat(3,1fr); }.admin-status-counts div { background:var(--surface-raised); border-radius:10px; padding:var(--space-2); text-align:center; }.admin-status-counts span { color:var(--muted); display:block; font-size:.63rem; }.admin-status-counts strong { display:block; font-size:1.45rem; }.admin-attention { align-items:flex-start; border-top:1px solid var(--border); display:flex; gap:var(--space-3); justify-content:space-between; padding:var(--space-3) 0; }.admin-attention p,.admin-problem-fixture p { color:var(--muted); font-size:.8rem; margin:.35rem 0; }.admin-attention small,.admin-problem-fixture small { color:var(--muted); font-size:.7rem; }.admin-attention .button { padding:.65rem; width:auto; }.admin-problem-fixture { border-top:1px solid var(--border); display:grid; gap:.2rem; padding:var(--space-3) 0; }.admin-problem-fixture>span { color:var(--muted); font-size:.75rem; }.admin-scores div { border-top:1px solid var(--border); display:flex; justify-content:space-between; padding:.6rem 0; }.admin-link { color:var(--accent); display:inline-block; font-weight:800; margin-top:var(--space-3); }.admin-actions { display:grid; gap:var(--space-2); }.admin-actions .button { max-width:none; }.admin-error,.admin-notice { border-radius:var(--radius); margin-bottom:var(--space-3); padding:var(--space-3); }.admin-error { background:#4c211d; color:var(--danger); }.admin-notice { background:#233e20; border:1px solid #5f8f46; color:var(--accent); }
.rehearsal-banner { align-items:center; background:color-mix(in srgb,var(--surface) 88%,var(--accent) 12%); border:1px solid color-mix(in srgb,var(--border) 72%,var(--accent) 28%); border-radius:var(--radius); display:flex; flex-wrap:wrap; gap:var(--space-2); justify-content:space-between; margin-bottom:var(--space-3); padding:var(--space-3); }.rehearsal-banner strong,.rehearsal-banner a { color:var(--accent); }.rehearsal-banner span { color:var(--ink); font-size:.8rem; }.rehearsal-page { max-width:60rem; }.rehearsal-hero { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); margin-bottom:var(--space-3); padding:var(--space-4); }.rehearsal-hero h1 { font-size:clamp(3rem,18vw,7rem); }.rehearsal-hero p:last-child { color:var(--muted); }.admin-card--rehearsal { border-color:#a991ff; }.admin-actions--inline { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media (min-width:48rem) { .admin-vitals { grid-template-columns:repeat(5,1fr); }.admin-vital:first-child { grid-column:auto; }.admin-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.admin-status-counts { grid-template-columns:repeat(6,1fr); } }
.admin-section-title{color:var(--accent);font-size:.75rem;letter-spacing:.14em;margin:var(--space-5) 0 var(--space-2);text-transform:uppercase}.admin-card h3{font-size:.7rem;letter-spacing:.1em;margin:var(--space-4) 0 var(--space-2);text-transform:uppercase}.admin-details dd.admin-ok{color:var(--accent)}.admin-details dd.admin-locked{color:#ffd37b}.admin-operation-log article{align-items:start;border-top:1px solid var(--border);display:grid;gap:.35rem;padding:var(--space-3) 0}.admin-operation-log article:first-child{border-top:0}.admin-operation-log strong{font-size:.76rem;letter-spacing:.08em}.admin-operation-log span,.admin-operation-log time{color:var(--muted);display:block;font-size:.68rem;margin-top:.2rem}.admin-operation-log p{font-size:.78rem;margin:0}.admin-operation-log .is-failed strong{color:var(--danger)}@media(min-width:48rem){.admin-operation-log article{align-items:center;grid-template-columns:minmax(12rem,.8fr) minmax(16rem,1.5fr) auto}}
.simulator-card { padding-bottom: var(--space-2); }.simulator-card.has-selection { border-color: var(--accent); box-shadow: 0 0 0 1px var(--accent); }
.sim-fixture-head { align-items: center; display: flex; justify-content: space-between; padding: var(--space-2) var(--space-3); }.sim-fixture-head span { color: var(--muted); font-size: .75rem; }.sim-fixture-head strong { font-size: 1.35rem; }
.sim-team { align-items: center; border-top: 1px solid var(--border); display: flex; justify-content: space-between; min-height: 2.7rem; padding: .5rem var(--space-3); }.sim-team b { color: var(--accent); font-size: .65rem; }.sim-team.has-scored { background: #284519; }.sim-team.has-scored b { color: var(--accent); }
.sim-controls { display: grid; gap: .35rem; grid-template-columns: repeat(2,minmax(0,1fr)); padding: var(--space-2); }.sim-controls button { background: var(--surface-raised); border: 1px solid var(--border); border-radius: 7px; color: var(--ink); cursor: pointer; font-size: .65rem; font-weight: 800; min-height: 2.5rem; padding: .35rem; }.sim-controls button:hover { border-color: var(--accent); }
.activity { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: var(--space-3); }.activity h2 { margin-top: 0; }.activity ol { list-style: none; margin: 0; padding: 0; }.activity li { border-top: 1px solid var(--border); padding: .65rem 0; }.activity time { color: var(--accent); display: inline-block; font-variant-numeric: tabular-nums; width: 3.5rem; }
@media (min-width:48rem) { .sim-controls { grid-template-columns: repeat(5,minmax(0,1fr)); } }
.automation-panel { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); display: grid; gap: var(--space-3); margin-bottom: var(--space-5); padding: var(--space-3); }
.sim-clock { align-items: center; background: #0b1511; border: 1px solid var(--border); border-radius: 10px; display: grid; grid-template-columns: 1fr auto; padding: var(--space-3); }
.sim-clock span,.sim-clock small { color: var(--muted); font-size: .7rem; font-weight: 900; letter-spacing: .12em; }.sim-clock strong { color: var(--accent); font-size: clamp(2.5rem,14vw,5rem); font-variant-numeric: tabular-nums; grid-row: span 2; letter-spacing: -.07em; line-height: .9; }.sim-clock small { color: var(--accent); }
.automation-panel .sim-score { margin: 0; }.simulation-seed { color: var(--muted); font-size: .75rem; margin: 0; }.simulation-seed code { color: var(--ink); }
.automation-controls { display: grid; gap: .45rem; grid-template-columns: repeat(2,minmax(0,1fr)); }.automation-controls button { background: var(--surface-raised); border: 1px solid var(--border); border-radius: 8px; color: var(--ink); cursor: pointer; font-size: .7rem; font-weight: 900; min-height: 2.8rem; padding: .5rem; }.automation-controls button:first-child { background: var(--accent); color: var(--accent-ink); grid-column: 1 / -1; }.automation-controls button.danger { border-color: #ff715b; color: var(--danger); }.automation-controls button:disabled { cursor: not-allowed; opacity: .35; }
.simulation-summary { background: #263d16; border: 1px solid var(--accent); border-radius: 9px; color: var(--accent); font-size: .8rem; font-weight: 900; line-height: 1.5; padding: var(--space-3); }
@media (min-width:48rem) { .automation-panel { grid-template-columns: 1fr 1fr; }.automation-controls,.simulation-seed,.simulation-summary { grid-column: 1 / -1; }.automation-controls { grid-template-columns: repeat(4,minmax(0,1fr)); }.automation-controls button:first-child { grid-column: auto; } }
.player-live { display: grid; gap: var(--space-3); }.player-live-score { background: var(--accent); border-radius: var(--radius); color: var(--accent-ink); display: flex; flex-direction: column; padding: var(--space-4); }.hero-score { align-items: baseline; display: inline-flex; font-variant-numeric: tabular-nums; gap: clamp(.3rem,2vw,.65rem); line-height: .85; width: fit-content; }.hero-score .score-value { font-size: clamp(4.5rem,24vw,8rem); font-weight: 950; letter-spacing: -.09em; }.hero-score .score-divider,.hero-score .score-total { font-size: clamp(1.4rem,7vw,2.5rem); font-weight: 850; }.player-live-score > b { font-size: .78rem; letter-spacing: .15em; margin-top: var(--space-2); }.player-live-score small { font-size: .72rem; font-weight: 850; margin-top: .3rem; }
.player-team-list { display: grid; gap: var(--space-2); }.player-team { align-items: center; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); display: grid; gap: var(--space-2); grid-template-columns: 1fr auto; min-height: 5.25rem; padding: var(--space-3); }.player-team.has-scored { background: #284519; border-color: var(--accent); }.player-team.is-finished { border-style: double; }.player-team.is-disrupted { background: #49251f; border-color: #ff8b78; }.player-team-main strong,.player-team-main span { display: block; }.player-team-main > span:not(.team-venue) { color: var(--muted); font-size: .78rem; margin-top: .2rem; }.team-venue { color: var(--accent); font-size: .6rem; font-weight: 900; letter-spacing: .13em; margin-bottom: .25rem; }.player-fixture-state { text-align: right; }.player-fixture-state strong,.player-fixture-state span,.player-fixture-state b { display: block; }.player-fixture-state strong { font-size: 1.35rem; font-variant-numeric: tabular-nums; }.player-fixture-state span { color: var(--muted); font-size: .7rem; margin-top: .15rem; }.player-fixture-state b { color: var(--muted); font-size: .62rem; margin-top: .35rem; }.player-team.has-scored .player-fixture-state b { color: var(--accent); }.player-team.is-disrupted .player-fixture-state b { color: var(--danger); }.last-poll { color: var(--muted); font-size: .68rem; margin: 0; text-align: center; }
@media (min-width:48rem) { .player-team-list { grid-template-columns: repeat(2,minmax(0,1fr)); }.player-live-score { max-width: 32rem; width: 100%; } }

/* Shared real-live and Beta Rehearsal presentation */
.live-game-hero{display:grid;gap:var(--space-3);padding-bottom:var(--space-4)}.live-game-hero>h1{position:absolute;clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;white-space:nowrap;width:1px}.player-live-score>p{font-size:.65rem;font-weight:950;letter-spacing:.15em;margin:0 0 var(--space-3)}.player-live-score small[data-live-position]{font-size:.85rem;margin-top:var(--space-3)}.player-team-list{gap:.75rem}.player-team{min-height:6.5rem;padding:1rem}.player-team-main strong{font-size:clamp(1.05rem,4.8vw,1.28rem);line-height:1.1}.player-team-main>span:not(.team-venue){font-size:.82rem}.player-fixture-state strong{font-size:clamp(1.5rem,7vw,1.9rem)}.player-fixture-state span{font-size:.78rem;font-weight:800}.player-fixture-state b{font-size:.7rem;letter-spacing:.09em}.player-team.is-missed{background:#1a201d;border-color:#626b66}.player-team.is-missed .player-fixture-state b{color:#e5aa9e}.live-team-panel>h2{font-size:1rem;letter-spacing:.1em;margin:0 0 var(--space-3);text-transform:uppercase}.leaderboard-name{font-size:.9rem}.leaderboard-name small.leaderboard-time{color:var(--muted);font-variant-numeric:tabular-nums}.leaderboard-score{font-size:1.4rem}.score-updated{animation:score-up .7s ease}.score-corrected{animation:score-correction .7s ease}.preview-warning{background:#263d16;border:1px solid var(--accent);border-radius:9px;color:var(--accent);font-size:.68rem;font-weight:950;letter-spacing:.12em;margin-bottom:var(--space-3);padding:.75rem;text-align:center}
@keyframes score-up{50%{box-shadow:0 0 0 .45rem rgb(200 255 61 / 25%)}}@keyframes score-correction{50%{box-shadow:0 0 0 .45rem rgb(255 139 120 / 28%)}}
.live-game-grid{display:flex;flex-direction:column;gap:var(--space-5)}
@media(min-width:48rem){.live-game-hero .player-live-score,.rehearsal-hero .player-live-score{max-width:36rem}.live-game-grid{align-items:start;display:grid;gap:var(--space-4);grid-template-columns:minmax(0,1.55fr) minmax(18rem,.85fr)}.live-game-grid .leaderboard{margin-top:0;position:sticky;top:var(--space-3)}}
@media(prefers-reduced-motion:reduce){.score-updated,.score-corrected{animation:none}}
.live-field{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.score-ladder{display:none;padding:0 1rem 1rem}.live-field.is-expanded .score-ladder{display:block}.score-ladder>div{align-items:center;border-top:1px solid var(--border);display:grid;grid-template-columns:auto minmax(0,1fr);min-height:2.35rem}.score-band-label{align-items:baseline;display:inline-flex;font-variant-numeric:tabular-nums;gap:.22rem}.score-band-label span{color:inherit;font-size:inherit}.score-band-meta{align-items:center;color:var(--muted);display:flex;font-size:.72rem;gap:.65rem;justify-content:flex-end;text-align:right}.score-band-meta b{color:var(--accent);font-size:.6rem;min-width:2.2rem;text-align:right}.score-ladder .is-you{background:#284519;margin:0 -.5rem;padding:0 .5rem}.leaderboard-tabs{display:flex;gap:.5rem;margin-top:var(--space-3)}.leaderboard-tabs a{border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.7rem;font-weight:900;padding:.65rem 1rem;text-decoration:none}.leaderboard-tabs a[aria-current="page"]{background:var(--accent);color:var(--accent-ink)}.leaderboard-pagination{align-items:center;display:flex;justify-content:space-between;margin-top:var(--space-3)}.leaderboard-pagination a{color:var(--accent)}
.live-game-grid>aside{display:grid;min-width:0}.live-game-grid>aside>.leaderboard{margin-top:0}
@media(min-width:48rem){.live-field+.leaderboard{margin-top:var(--space-3)}.live-field+.live-game-grid{margin-top:var(--space-4)}}
.admin-test-form{display:grid;gap:var(--space-3);margin-top:var(--space-3)}.admin-test-form label{color:var(--muted);display:grid;font-size:.72rem;font-weight:850;gap:.4rem}.admin-test-form input[type="number"]{background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;color:var(--ink);min-height:3rem;padding:.65rem}.admin-check{align-items:center!important;grid-template-columns:auto 1fr!important}.admin-test-links{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4)}.admin-filter-tabs{display:flex;gap:.4rem;margin-bottom:var(--space-3)}.admin-filter-tabs a{border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.68rem;font-weight:900;padding:.65rem 1rem;text-decoration:none}.admin-filter-tabs a[aria-current="page"]{background:var(--accent);color:var(--accent-ink)}.test-badge{background:#654fd0;border-radius:999px;color:#fff;font-size:.55rem;letter-spacing:.08em;padding:.25rem .45rem;vertical-align:middle}.test-data-danger{border-color:#6e443d}.admin-delete-user{border-color:#93463d;color:var(--danger);margin-top:var(--space-2)}.admin-delete-user:hover,.admin-delete-user:focus-visible{background:#4c211d}
.logout-form { margin: 0; }.logout-form button { background: transparent; border: 0; color: var(--muted); cursor: pointer; font-size: .7rem; padding: .35rem 0; }.logout-form button:hover,.logout-form button:focus-visible { color: var(--ink); }.logout-form .header-icon-action{border:1px solid transparent;color:var(--accent);padding:0}.logout-form .header-icon-action:hover,.logout-form .header-icon-action:focus-visible{background:var(--surface);border-color:var(--border);color:var(--accent)}
.landing { max-width: 45rem; padding: 16vh 0 8vh; }.landing h1 { font-size: clamp(3.2rem,13vw,7rem); }.landing-actions { display: grid; gap: var(--space-2); margin-top: var(--space-5); max-width: 28rem; }
.auth-shell { display: grid; min-height: calc(100vh - 5rem); place-items: center; }.auth-card { max-width: 30rem; width: 100%; }.auth-card h1 { font-size: clamp(2.5rem,10vw,4.5rem); }.auth-form { display: grid; gap: var(--space-3); margin-top: var(--space-4); }.auth-form label { color: var(--muted); display: grid; font-size: .75rem; font-weight: 800; gap: .4rem; }.auth-form input { background: var(--surface); border: 1px solid var(--border); border-radius: 9px; color: var(--ink); min-height: 3.25rem; padding: .75rem; }.auth-form input:focus { border-color: var(--accent); outline: 2px solid transparent; }.auth-switch { color: var(--muted); font-size: .8rem; margin-top: var(--space-4); }.auth-switch a { color: var(--accent); }.turnstile-widget{max-width:100%;min-height:4.1rem;overflow:hidden}.turnstile-widget .cf-turnstile{max-width:100%}
.simulator-user-selector { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); margin-bottom: var(--space-3); padding: var(--space-3); }.simulator-user-selector label { color: var(--muted); display: grid; font-size: .7rem; font-weight: 850; gap: .45rem; }.simulator-user-selector select { background: var(--surface-raised); border: 1px solid var(--border); border-radius: 8px; color: var(--ink); min-height: 2.8rem; padding: .5rem; }
.leaderboard { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }.leaderboard--compact { margin-top: var(--space-5); }.leaderboard > header { align-items: center; display: flex; justify-content: space-between; padding: var(--space-3); }.leaderboard > header h2 { font-size: .8rem; letter-spacing: .12em; margin: 0; }.leaderboard > header a { color: var(--accent); font-size: .72rem; }.leaderboard-row { align-items: center; border-top: 1px solid var(--border); display: grid; gap: var(--space-2); grid-template-columns: 2rem 1fr auto; min-height: 3.8rem; padding: .7rem var(--space-3); }.leaderboard-row:first-child { border-top: 0; }.leaderboard-row.is-current { background: #284519; box-shadow: inset 3px 0 var(--accent); }.leaderboard-rank { color: var(--muted); font-size: 1.05rem; font-variant-numeric: tabular-nums; }.leaderboard-name { font-weight: 800; }.leaderboard-name small { color: var(--accent); display: block; font-size: .55rem; letter-spacing: .07em; margin-top: .12rem; }.leaderboard-score { font-size: 1.25rem; font-variant-numeric: tabular-nums; }.leaderboard-score span { color: var(--muted); font-size: .72rem; }.leaderboard-empty { color: var(--muted); padding: var(--space-3); }.hero + .leaderboard { margin-bottom: var(--space-5); }

/* Public landing page */
:where(a,button,input,summary):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.button{transition:background-color .15s,border-color .15s,color .15s,transform .15s}.button:hover{background:#d5ff6e;transform:translateY(-1px)}.button--secondary:hover{background:rgb(200 255 61/10%);color:var(--accent)}.button--compact{max-width:none;padding:.7rem 1rem;width:auto}
.marketing-page{background:radial-gradient(circle at 75% 4%,#294b39 0,transparent 28rem),var(--pitch)}.public-header,.public-footer{align-items:center;display:flex;margin:auto;max-width:var(--container-wide);padding:var(--space-3)}.public-header{box-sizing:border-box;justify-content:space-between;min-height:4.75rem}.public-header__brand,.public-header__actions{align-items:center;display:flex}.public-header__brand{flex:0 0 auto}.public-header__actions{justify-content:flex-end;min-width:0}.public-header nav{align-items:center;display:flex;gap:var(--space-2)}.public-login{color:var(--ink);font-size:.72rem;font-weight:900;letter-spacing:.05em;padding:.6rem .25rem;text-decoration:none;text-transform:uppercase}.public-login:hover{color:var(--accent)}.marketing-main{max-width:var(--container-wide);padding-bottom:0}
.marketing-hero{display:grid;gap:var(--space-5);min-height:calc(100svh - 4.5rem);padding:clamp(3.5rem,12vh,8rem) 0 5rem}.marketing-hero-copy{align-self:center}.marketing-hero h1,.final-cta h2{font-size:clamp(3.6rem,16vw,7.5rem);letter-spacing:-.075em;line-height:.82;margin:0}.marketing-hero h1 span,.final-cta h2 span,.saturday-loop h2 span{color:var(--accent)}.marketing-lead{color:var(--muted);font-size:clamp(1.05rem,4.8vw,1.35rem);line-height:1.5;margin:var(--space-4) 0 0;max-width:36rem}.marketing-actions{display:grid;gap:var(--space-2);margin-top:var(--space-4);max-width:26rem}.no-fee{color:var(--muted);font-size:.72rem;margin:.65rem 0 0;text-align:center;width:min(100%,26rem)}
.live-demo{align-self:center;background:#111e18;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 28px 70px rgb(0 0 0/35%);overflow:hidden;padding:var(--space-3);transform:rotate(-1deg)}.live-demo header{align-items:center;display:flex;font-size:.7rem;font-weight:950;justify-content:space-between;letter-spacing:.12em;padding:.2rem 0 var(--space-3)}.live-demo header strong{color:var(--accent)}.live-demo header i{background:var(--accent);border-radius:50%;display:inline-block;height:.45rem;margin-right:.35rem;width:.45rem}.demo-label{color:var(--muted);font-size:.58rem;letter-spacing:.15em;margin:0 0 .45rem}.demo-team{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:grid;gap:.5rem;grid-template-columns:1fr auto 4.2rem;margin-top:.45rem;min-height:3.5rem;padding:.75rem}.demo-team strong{font-size:.9rem}.demo-team b{font-size:1.1rem}.demo-team span{color:var(--muted);font-size:.58rem;font-weight:950;text-align:right}.demo-team.is-scored{background:#284519;border-color:#5f8f46}.demo-team.is-scored span{color:var(--accent)}.live-demo footer{align-items:end;background:var(--accent);border-radius:12px;color:var(--accent-ink);display:flex;justify-content:space-between;margin-top:var(--space-3);padding:var(--space-3)}.live-demo footer strong{font-size:3.4rem;letter-spacing:-.08em;line-height:.85}.live-demo footer strong span{font-size:1.15rem}.live-demo footer>b{font-size:.7rem;letter-spacing:.12em}
.marketing-section{border-top:1px solid var(--border);padding:clamp(4.5rem,11vw,8rem) 0}.marketing-section h2,.final-cta h2{font-size:clamp(2.6rem,10vw,5.8rem);letter-spacing:-.065em;line-height:.9;margin:0}.steps{display:grid;gap:var(--space-2);list-style:none;margin:var(--space-5) 0 0;padding:0}.steps li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);display:grid;gap:var(--space-3);grid-template-columns:auto 1fr;padding:var(--space-4)}.steps>li>span{color:var(--accent);font-size:2.3rem;font-weight:950;letter-spacing:-.07em}.steps h3{font-size:1rem;margin:.25rem 0 .5rem}.steps p,.benefit-list p,.winning-copy p,.saturday-loop>p{color:var(--muted);line-height:1.55;margin:0}
.why-play{display:grid;gap:var(--space-5)}.benefit-list{border-bottom:1px solid var(--border)}.benefit-list article{border-top:1px solid var(--border);display:grid;gap:.35rem;padding:var(--space-3) 0}.benefit-list strong{color:var(--accent);font-size:.78rem;letter-spacing:.08em}.winning{background:linear-gradient(135deg,#1b3126,#111f19);border:1px solid var(--border);border-radius:var(--radius-lg);margin:2rem 0;padding:clamp(2rem,7vw,5rem)}.winning-copy{display:grid;gap:var(--space-3);margin-top:var(--space-4);max-width:50rem}.saturday-loop{text-align:center}.saturday-loop>p{margin:var(--space-4) auto 0;max-width:36rem}
.faq-list{border-bottom:1px solid var(--border);margin-top:var(--space-4)}.faq details{border-top:1px solid var(--border)}.faq summary{cursor:pointer;font-size:.95rem;font-weight:850;list-style:none;padding:1.2rem 2.5rem 1.2rem 0;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary::after{color:var(--accent);content:'+';font-size:1.4rem;position:absolute;right:.25rem;top:.9rem}.faq details[open] summary::after{content:'−'}.faq details p{color:var(--muted);line-height:1.5;margin:0;padding:0 2rem 1.2rem 0}.final-cta{border-top:1px solid var(--border);padding:clamp(5rem,14vw,9rem) 0;text-align:center}.final-cta .marketing-actions{margin-left:auto;margin-right:auto}.public-footer{border-top:1px solid var(--border);flex-wrap:wrap;gap:var(--space-3);justify-content:space-between}.public-footer nav{display:flex;gap:var(--space-3)}.public-footer nav a,.public-footer small{color:var(--muted);font-size:.72rem}
@media(min-width:48rem){.public-header,.public-footer{padding-left:var(--space-5);padding-right:var(--space-5)}.marketing-hero{align-items:center;grid-template-columns:minmax(0,1.2fr) minmax(20rem,.8fr)}.marketing-actions{grid-template-columns:1fr 1fr}.steps{grid-template-columns:repeat(3,minmax(0,1fr))}.steps li{display:block}.steps h3{margin-top:var(--space-4)}.why-play{align-items:start;grid-template-columns:1fr 1fr}.winning-copy{grid-template-columns:repeat(2,minmax(0,1fr))}.faq{display:grid;gap:var(--space-5);grid-template-columns:.7fr 1.3fr}.faq-list{margin-top:0}}
@media(min-width:80rem){.marketing-hero{gap:7rem}.live-demo{padding:var(--space-4)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}.button:hover{transform:none}}

/* Approved landing-page refinements */
@media(max-width:47.999rem){.marketing-hero{padding-top:2rem}.demo-team strong{font-size:1rem}.demo-team b{font-size:1.2rem}.demo-team span{font-size:.64rem}}

/* Pick Your 12 gameplay */
.pick-hero{display:grid;gap:var(--space-3);padding:var(--space-4) 0 var(--space-5)}.pick-hero-copy h1{font-size:clamp(3rem,15vw,5.5rem);line-height:.78}.pick-hero-copy h1 span{color:var(--muted);display:block;font-size:.36em;letter-spacing:.02em;line-height:1.4}.pick-hero-copy h2{color:var(--accent);font-size:1rem;letter-spacing:.12em;margin:var(--space-4) 0 var(--space-2)}.pick-hero-copy>p:not(.eyebrow){color:var(--muted);font-size:.9rem;line-height:1.45;margin:0}.pick-deadline{display:block;font-size:.7rem;letter-spacing:.05em;margin-top:var(--space-3);text-transform:uppercase}
.selection-progress{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-3)}.selection-progress>div:first-child{align-items:end;display:flex;justify-content:space-between}.selection-progress strong{align-items:baseline;color:var(--accent);display:flex;font-size:3.3rem;letter-spacing:-.08em;line-height:.85}.selection-progress strong small{font-size:1.15rem;letter-spacing:-.03em}.selection-progress b{font-size:.62rem;letter-spacing:.12em;text-align:right}.progress-track{background:#0c1712;border-radius:99px;height:.4rem;margin-top:var(--space-3);overflow:hidden}.progress-track i{background:var(--accent);display:block;height:100%;transition:width .18s ease}.review-trigger{background:transparent;border:0;color:var(--accent);cursor:pointer;font-size:.68rem;font-weight:900;letter-spacing:.08em;margin-top:var(--space-3);padding:.35rem 0;text-decoration:underline;text-underline-offset:.25rem}.pick-layout{display:grid}.fixture-column{min-width:0}.entry-form .league-section{margin-bottom:var(--space-4)}.entry-form .league-section>header{border-bottom:2px solid var(--ink);padding-bottom:.55rem}.entry-form .league-section h2{font-size:.78rem;letter-spacing:.1em}.entry-form .league-section header span{font-size:.62rem;font-weight:850;letter-spacing:.08em}.entry-form .fixtures{gap:var(--space-2)}.entry-form .fixture-card{border-radius:12px}.entry-form .fixture-card time{font-size:.58rem;font-weight:850;letter-spacing:.1em;padding:.5rem .75rem .3rem}.entry-form .team-option{grid-template-columns:2rem 1fr 1.4rem;min-height:3.15rem;padding:.45rem .75rem}.entry-form .team-option strong{font-size:.9rem}.entry-form .team-side{font-size:.58rem}.entry-form .checkmark{height:1.3rem;width:1.3rem}.entry-form .team-option.is-selected{box-shadow:inset 4px 0 var(--accent-ink)}
.pick-sidebar{display:none}.submit-dock{align-items:center;background:rgb(12 23 18/96%);border-top:1px solid var(--border);display:grid;gap:var(--space-2);grid-template-columns:1fr minmax(9.5rem,1.25fr);padding:.75rem max(var(--space-3),env(safe-area-inset-right)) calc(.75rem + env(safe-area-inset-bottom)) max(var(--space-3),env(safe-area-inset-left));text-align:left}.submit-dock .button{font-size:.72rem;padding:.85rem .65rem}.dock-status strong{display:block;font-size:clamp(.9rem,3.8vw,1.05rem);font-weight:950;letter-spacing:.02em;text-transform:uppercase}.entry-form{position:relative}
.picks-dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--ink);margin:auto;max-height:min(80vh,42rem);max-width:30rem;padding:var(--space-3);width:calc(100% - 2rem)}.picks-dialog::backdrop{background:rgb(4 12 8/78%);backdrop-filter:blur(4px)}.picks-dialog-head{align-items:start;display:flex;justify-content:space-between}.picks-dialog-head h2{font-size:1.35rem;margin:0}.picks-dialog-head h2 span{color:var(--accent);font-size:.75rem}.picks-dialog-head button{background:var(--surface-raised);border:1px solid var(--border);border-radius:50%;color:var(--ink);cursor:pointer;font-size:1.4rem;height:2.4rem;width:2.4rem}.review-picks{margin-top:var(--space-3)}.review-pick{align-items:center;border-top:1px solid var(--border);display:flex;justify-content:space-between;min-height:3rem}.review-pick button{background:transparent;border:0;color:var(--danger);cursor:pointer;font-size:.6rem;font-weight:900}.review-empty{color:var(--muted);padding:var(--space-4) 0}.desktop-picks{display:grid;gap:.3rem}.desktop-picks span{border-bottom:1px solid var(--border);font-size:.76rem;padding:.45rem 0}
@media(max-width:47.999rem){.site-header{align-items:flex-start}.site-header .header-actions{gap:.35rem;max-width:78%;overflow-x:auto;padding-bottom:.25rem}.site-header .simulator-link{font-size:.62rem;padding:.35rem .5rem}.site-header .dev-badge{max-width:7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-form button{padding:.35rem}.pick-hero{padding-top:var(--space-2)}}
@media(min-width:48rem){.pick-hero{align-items:end;grid-template-columns:1.3fr .7fr}.pick-layout{align-items:start;gap:var(--space-5);grid-template-columns:minmax(0,1fr) 18rem}.pick-sidebar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:block;padding:var(--space-3);position:sticky;top:var(--space-3)}.entry-form .fixtures{grid-template-columns:repeat(2,minmax(0,1fr))}.submit-dock{left:auto;transform:none;width:100%}}
@media(min-width:80rem){.pick-hero,.entry-form{margin-left:auto;margin-right:auto;max-width:64rem}.pick-layout{grid-template-columns:minmax(0,1fr) 20rem}}
@media(prefers-reduced-motion:reduce){.progress-track i{transition:none}}

/* Pick-screen state and league refinements */
.entry-form .league-section{padding-top:var(--space-2)}.entry-form .league-section>header{display:block}.league-toggle{align-items:center;background:transparent;border:0;color:var(--ink);cursor:pointer;display:grid;gap:.55rem;grid-template-columns:1fr auto auto auto;padding:.55rem 0;text-align:left;width:100%}.league-toggle strong{font-size:.78rem;letter-spacing:.1em}.league-toggle span,.league-toggle b{color:var(--muted);font-size:.62rem;letter-spacing:.08em}.league-toggle b{color:var(--accent)}.league-toggle i{color:var(--accent);font-size:.62rem;font-style:normal;transition:transform .16s ease}.league-section.is-collapsed .league-toggle i{transform:rotate(180deg)}.league-section [data-league-fixtures][hidden]{display:none}.clear-picks{background:transparent;border:0;color:var(--muted);cursor:pointer;font-size:.58rem;font-weight:900;letter-spacing:.07em;margin-top:.4rem;padding:.2rem 0;text-decoration:underline;text-underline-offset:.2rem}.clear-picks:hover,.clear-picks:focus-visible{color:var(--danger)}.submit-dock:has([data-submit-button][hidden]){grid-template-columns:1fr}.submit-dock [hidden]{display:none}
@media(prefers-reduced-motion:reduce){.league-toggle i{transition:none}}
.app-page-shell{max-width:64rem}.history-shell,.account-shell{padding-bottom:var(--space-6)}.history-index-hero,.history-detail-hero,.account-heading{padding:var(--space-5) 0}.history-index-hero h1,.account-heading h1{font-size:clamp(2.6rem,12vw,5.5rem);margin:.2rem 0}.history-index-hero>p:last-child,.account-heading>p:last-child,.account-card>p{color:var(--muted)}.history-card-list,.account-card-grid{display:grid;gap:var(--space-3)}.history-gameweek-card,.history-empty-state,.history-empty-card,.account-card,.prize-result-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4)}.history-gameweek-card{display:grid;gap:var(--space-4)}.history-gameweek-card h2{font-size:1.25rem;margin:.25rem 0 0}.history-card-result{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between}.history-card-result strong{font-size:2.6rem;font-variant-numeric:tabular-nums;line-height:1}.history-card-result strong span{color:var(--muted);font-size:1rem}.history-card-result b{color:var(--accent);font-size:.72rem;letter-spacing:.08em}.history-card-result.is-empty strong{color:var(--muted);font-size:1rem;letter-spacing:.08em}.history-view-link{border-top:1px solid var(--border);color:var(--accent);font-size:.72rem;font-weight:950;letter-spacing:.08em;padding-top:var(--space-3);text-decoration:none}.history-empty-state{display:grid;gap:var(--space-4);text-align:center}.history-empty-state h2{font-size:1.45rem;margin:0}.history-empty-state .button{justify-self:center}.history-detail-hero h1{font-size:clamp(2.25rem,10vw,4.5rem);margin:.25rem 0}.history-result-grid{display:grid;gap:var(--space-3)}.history-final-score{min-width:0}.history-final-score .history-position{font-size:1.15rem;margin-top:.4rem}.history-did-not-enter{font-size:clamp(1.8rem,8vw,3rem);line-height:1}.prize-result-card{display:flex;flex-direction:column;gap:.45rem}.prize-result-card h2{font-size:1.65rem;margin:.2rem 0}.prize-result-card>strong{font-size:1.1rem}.prize-result-card>p:not(.eyebrow),.prize-result-card>small{color:var(--muted)}.history-teams,.history-final-board,.history-back{margin-top:var(--space-5)}.history-teams .player-team-main small{color:var(--accent);display:block;font-size:.65rem;margin-top:.35rem}.history-back{display:inline-flex}.account-card h2{font-size:.9rem;letter-spacing:.1em;margin:0}.account-card .auth-form{margin-top:var(--space-3)}
.reminder-setting-form{align-items:start}.reminder-choice{border:0;display:inline-grid;grid-template-columns:repeat(2,minmax(4.5rem,1fr));margin:0;max-width:12rem;padding:0}.reminder-choice legend{height:1px;overflow:hidden;position:absolute;width:1px;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.auth-form .reminder-choice label{cursor:pointer;display:block}.auth-form .reminder-choice input{height:1px;margin:0;min-height:1px;opacity:0;padding:0;position:absolute;width:1px}.reminder-choice span{align-items:center;background:var(--surface-raised);border:1px solid var(--border);color:var(--muted);display:flex;font-size:.72rem;font-weight:950;justify-content:center;letter-spacing:.09em;min-height:2.6rem;padding:.55rem .9rem}.reminder-choice label:first-of-type span{border-radius:9px 0 0 9px}.reminder-choice label:last-of-type span{border-left:0;border-radius:0 9px 9px 0}.reminder-choice input:checked+span{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.reminder-choice input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.reminder-choice label:hover span{border-color:var(--accent)}
@media(min-width:48rem){.history-card-list{grid-template-columns:repeat(2,minmax(0,1fr))}.history-result-grid{grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr)}.account-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-card:last-child{grid-column:1/-1}.history-gameweek-card{min-height:14rem}}
.account-close-entry{border-top:1px solid var(--border);margin-top:var(--space-5);padding-top:var(--space-3);text-align:center}.account-close-entry a{color:var(--muted);font-size:.68rem;font-weight:900;letter-spacing:.08em}.account-close-shell{max-width:48rem}.account-close-shell>.account-card{margin-bottom:var(--space-3)}.account-close-explainer ul{color:var(--muted);display:grid;gap:var(--space-2);padding-left:1.15rem}.account-transfer-card select{appearance:none;background:var(--surface-raised);border:1px solid var(--border);border-radius:9px;color:var(--ink);min-height:3.25rem;padding:.7rem .8rem;width:100%}.account-transfer-card select:focus{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}.account-close-button{border-color:#9b4a43;color:#ffd8d3}.account-close-button:hover,.account-close-button:focus-visible{background:#5a2925;border-color:#d8756b}.account-close-dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--ink);max-width:28rem;padding:var(--space-4);width:calc(100% - 2rem)}.account-close-dialog::backdrop{background:rgba(0,0,0,.72)}.account-close-dialog h2{margin-top:0}.account-close-dialog p{color:var(--muted)}.account-close-dialog>div{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.account-close-dialog .button{width:auto}.account-close-back{margin-top:var(--space-2)}
body:has(> .site-header){background:radial-gradient(circle at 75% 0,#1b3328 0,transparent 24rem),var(--pitch)}
.public-beta-shell{margin:auto;max-width:42rem;padding-top:var(--space-5)}.public-beta-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:grid;gap:var(--space-3);padding:var(--space-5)}.public-beta-card h1{font-size:clamp(2.8rem,11vw,5rem);margin:0}.public-beta-card p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.6;margin:0}.public-beta-card .button{justify-self:start}.public-beta-feedback{border-top:1px solid var(--border);display:grid;gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-4)}.public-beta-feedback .eyebrow{margin:0}.public-beta-feedback .button{font-size:.75rem;padding:.75rem 1rem;width:auto}
.rehearsal-date-label{color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.06em;margin:var(--space-2) 0;text-align:center;text-transform:uppercase}
.authenticated-footer{border-top:1px solid var(--border);margin:var(--space-5) auto 0;max-width:var(--container);padding:var(--space-4) var(--space-3)}.authenticated-footer nav{display:flex;flex-wrap:wrap;gap:var(--space-4)}.authenticated-footer a{color:var(--muted);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-decoration:none}.authenticated-footer a:hover,.authenticated-footer a:focus-visible{color:var(--accent)}body:has(> .authenticated-footer)>main{padding-bottom:var(--space-5)}
.feedback-shell{max-width:42rem}.feedback-heading{padding:var(--space-3) 0 var(--space-5)}.feedback-heading h1{font-size:clamp(2.5rem,11vw,4.75rem)}.feedback-heading>p:last-child{color:var(--muted);line-height:1.55}.feedback-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4)}.feedback-card select,.feedback-card textarea{appearance:none;background:var(--surface-raised);border:1px solid var(--border);border-radius:9px;color:var(--ink);padding:.9rem;width:100%}.feedback-card textarea{line-height:1.5;resize:vertical}.feedback-card select:focus,.feedback-card textarea:focus{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}.feedback-card small{color:var(--muted);text-align:right}.admin-quick-links{display:flex;margin-bottom:var(--space-3)}.admin-quick-links .button{width:auto}.feedback-inbox{display:grid;gap:var(--space-3)}.feedback-inbox-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:grid;gap:var(--space-3);padding:var(--space-4)}.feedback-sender{display:grid;gap:.2rem}.feedback-sender span,.feedback-sender time,.feedback-dialog-meta{color:var(--muted);font-size:.75rem}.feedback-preview{line-height:1.5;margin:0}.feedback-inbox-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.feedback-inbox-actions .button{font-size:.7rem;padding:.7rem .9rem;width:auto}.feedback-dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--ink);max-height:85vh;max-width:38rem;padding:0;width:calc(100% - 2rem)}.feedback-dialog::backdrop{background:rgb(0 0 0 / 72%)}.feedback-dialog-content{display:grid;gap:var(--space-3);padding:var(--space-4)}.feedback-dialog-content h2{margin:0}.feedback-dialog-meta{line-height:1.5;margin:0}.feedback-full-message{background:var(--pitch);border:1px solid var(--border);border-radius:9px;line-height:1.55;max-height:45vh;overflow:auto;padding:var(--space-3);overflow-wrap:anywhere}.feedback-dialog form{display:grid}.feedback-dialog .button{width:100%}@media(min-width:48rem){.authenticated-footer{padding-left:var(--space-5);padding-right:var(--space-5)}}
.history-index-hero,.history-detail-hero,.account-heading{padding-top:var(--space-2)}
.league-shell{max-width:64rem}.league-heading{padding:var(--space-3) 0 var(--space-5)}.league-heading h1{font-size:clamp(2.7rem,12vw,5rem)}.league-heading>p:last-child{color:var(--muted)}.league-card-list,.league-actions-grid{display:grid;gap:var(--space-3)}.league-card,.league-form-card,.league-invite-card,.league-standings,.league-history,.league-owner,.league-invite-strip,.league-empty{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4)}.league-card{display:grid;gap:var(--space-2)}.league-card h2,.league-form-card h2,.league-history h2,.league-owner h2{margin:0}.league-card p,.league-empty p,.league-empty-copy{color:var(--muted)}.league-card .button{justify-self:start;width:auto}.league-actions-grid{margin-top:var(--space-5)}.league-invite-card{display:grid;gap:var(--space-3);margin-top:var(--space-5);text-align:center}.league-invite-card h1,.league-invite-card h2{margin:0}.league-invite-actions{display:grid;gap:var(--space-2)}.league-invite-strip{align-items:center;display:grid;gap:var(--space-3);margin-bottom:var(--space-4)}.league-invite-strip span,.league-invite-strip code{display:block}.league-invite-strip span{color:var(--muted);font-size:.65rem;font-weight:900;letter-spacing:.1em}.league-invite-strip code{font-size:.72rem;margin-top:.35rem;overflow-wrap:anywhere}.league-invite-strip .button{width:auto}.league-standings,.league-history,.league-owner{margin-top:var(--space-4)}.league-standings>header{align-items:end;display:flex;justify-content:space-between}.league-standings h2{margin:0}.league-history{display:grid;gap:var(--space-3)}.league-history-card{border-top:1px solid var(--border);padding-top:var(--space-3)}.league-history-card h3,.league-history-card p{margin:.3rem 0}.league-members>article{align-items:center;border-top:1px solid var(--border);display:flex;gap:var(--space-2);justify-content:space-between;padding:var(--space-3) 0}.league-members span{color:var(--muted);display:block;font-size:.7rem}.league-members .button{font-size:.65rem;padding:.65rem;width:auto}.league-leave{margin-top:var(--space-4)}@media(min-width:48rem){.league-actions-grid{grid-template-columns:1fr 1fr}.league-invite-strip{grid-template-columns:1fr auto}.league-invite-actions{grid-template-columns:1fr 1fr}}
.live-scope{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.65rem;margin-block:1rem;padding:.65rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.live-scope label{font-size:.72rem;font-weight:900;letter-spacing:.12em}.live-scope select{min-width:0;width:100%;min-height:42px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-raised);color:var(--ink);font:inherit;font-weight:800;padding:.55rem 2rem .55rem .75rem;text-overflow:ellipsis}.live-scope strong{grid-column:1/-1;color:var(--accent);font-size:.78rem;letter-spacing:.08em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(min-width:700px){.live-scope{grid-template-columns:auto minmax(12rem,22rem) 1fr}.live-scope strong{grid-column:auto}}
.trophy-shell{max-width:64rem}.trophy-heading{display:grid;gap:var(--space-2);padding:var(--space-3) 0 var(--space-5)}.trophy-heading h1{font-size:clamp(3rem,13vw,5.5rem);margin:0}.trophy-heading>strong{color:var(--accent);font-size:clamp(1.1rem,4vw,1.5rem)}.trophy-heading>p:last-child{color:var(--muted)}.trophy-grid{display:grid;gap:var(--space-3)}.trophy-card{align-items:start;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:grid;gap:var(--space-3);grid-template-columns:3.25rem 1fr;padding:var(--space-4)}.trophy-card.is-earned{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.trophy-card.is-locked{opacity:.58}.trophy-mark{align-items:center;background:var(--pitch);border:1px solid var(--border);border-radius:50%;color:var(--muted);display:flex;height:3.25rem;justify-content:center;width:3.25rem}.trophy-card.is-earned .trophy-mark{background:var(--accent);color:var(--accent-ink)}.trophy-mark svg{height:1.75rem;width:1.75rem}.trophy-card span{color:var(--muted);font-size:.65rem;font-weight:900;letter-spacing:.12em}.trophy-card.is-earned span{color:var(--accent)}.trophy-card h2{font-size:1.35rem;margin:.2rem 0}.trophy-card p{color:var(--muted);line-height:1.45;margin:0}.trophy-card time{color:var(--ink);display:block;font-size:.72rem;font-weight:800;margin-top:.75rem}.account-logout{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-top:var(--space-4);padding:var(--space-4)}.account-logout .button{width:auto}.authenticated-footer form{margin:0}.authenticated-footer button{background:none;border:0;color:var(--muted);cursor:pointer;font:inherit;font-size:.68rem;font-weight:900;letter-spacing:.12em;padding:0}.authenticated-footer button:hover,.authenticated-footer button:focus-visible{color:var(--accent)}@media(min-width:42rem){.trophy-grid{grid-template-columns:1fr 1fr}}
.pick-popularity{color:var(--muted);font-size:.66rem;font-weight:900;letter-spacing:.08em;line-height:1.2;margin-top:.15rem}.player-team.has-scored .pick-popularity{color:inherit;opacity:.75}
.authenticated-footer nav{align-items:stretch;display:grid;gap:.25rem;grid-template-columns:repeat(4,minmax(0,1fr))}.authenticated-footer nav>a,.authenticated-footer nav>form{align-items:stretch;display:flex;justify-content:center;min-width:0}.authenticated-footer nav>a,.authenticated-footer nav button{align-items:center;display:flex;justify-content:center;min-height:44px;text-align:center;width:100%}
.live-field.is-expanded .score-ladder{padding-top:var(--space-1)}.live-scope{grid-template-columns:auto minmax(0,1fr)}@media(min-width:700px){.live-scope{grid-template-columns:auto minmax(12rem,22rem)}}

/* Shared live/simulation hierarchy and comparison switch */
.player-state-hero.live-game-hero{padding-bottom:var(--space-3)}
.player-state-hero.live-game-hero .hero-date{margin:0;text-align:center}
.player-live-score .score-scope{align-items:baseline;display:flex;gap:.35rem;margin-top:var(--space-3)}
.player-live-score .score-scope strong{font-size:.72rem;letter-spacing:.08em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.match-status{align-items:end;border-top:1px solid rgb(10 30 20/22%);display:grid;gap:.15rem .65rem;grid-template-columns:1fr auto;margin-top:var(--space-3);padding-top:var(--space-3)}
.match-status>span{font-size:.6rem;font-weight:950;grid-column:1/-1;letter-spacing:.14em}.match-status>strong{font-size:1.45rem;font-variant-numeric:tabular-nums}.match-status>b{background:var(--accent-ink);border-radius:999px;color:var(--accent);font-size:.58rem;letter-spacing:.12em;padding:.38rem .55rem}
.live-comparison{display:grid;gap:var(--space-3);margin-bottom:var(--space-5)}
.live-comparison-tabs{background:var(--surface);border:1px solid var(--border);border-radius:999px;display:grid;grid-template-columns:1fr 1fr;padding:.25rem}
.live-comparison-tabs button{background:transparent;border:0;border-radius:999px;color:var(--muted);cursor:pointer;font:inherit;font-size:.68rem;font-weight:950;letter-spacing:.08em;min-height:42px;padding:.65rem}
.live-comparison-tabs button[aria-selected="true"]{background:var(--accent);color:var(--accent-ink)}
.live-comparison-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.live-comparison [data-comparison-panel][hidden]{display:none}
.live-comparison .live-field,.live-comparison .leaderboard{margin:0}
.live-comparison .score-ladder{display:block;padding-top:0}
.live-comparison .leaderboard header h2{font-size:.78rem;letter-spacing:.1em}
.live-field>header{align-items:center;display:flex;justify-content:space-between;padding:var(--space-3)}.live-field>header h2{font-size:.78rem;letter-spacing:.1em;margin:0}
.live-team-panel{margin-top:0}
.rehearsal-hero{padding:0}.rehearsal-hero .player-live-score{max-width:none}.rehearsal-page>.live-scope{margin-top:0}
@media(min-width:48rem){.player-live-score,.rehearsal-hero .player-live-score{max-width:36rem}.live-comparison{max-width:42rem}.rehearsal-page>.live-scope{max-width:42rem}}
.league-invite-trigger{margin-top:var(--space-3);width:auto}.league-share-dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--ink);margin:auto;max-height:calc(100dvh - 2rem);max-width:38rem;padding:var(--space-3);width:calc(100% - 2rem)}.league-share-dialog::backdrop{background:rgb(4 12 8/82%);backdrop-filter:blur(5px)}.league-share-head{align-items:start;display:flex;gap:var(--space-3);justify-content:space-between}.league-share-head span{color:var(--accent);font-size:.62rem;font-weight:950;letter-spacing:.12em}.league-share-head h2{font-size:clamp(1.5rem,7vw,2.4rem);margin:.25rem 0}.league-share-head p,.league-share-copy p{color:var(--muted);margin:0}.league-share-head>button{align-items:center;background:var(--surface-raised);border:1px solid var(--border);border-radius:50%;color:var(--ink);cursor:pointer;display:flex;font-size:1.35rem;height:44px;justify-content:center;min-width:44px}.league-share-preview{aspect-ratio:1200/630;border:1px solid var(--border);border-radius:10px;display:block;margin-top:var(--space-3);object-fit:contain;width:100%}.league-share-copy{display:grid;gap:var(--space-1);margin-top:var(--space-3)}.league-share-copy strong{font-size:.8rem;letter-spacing:.08em}.league-share-actions{display:grid;gap:var(--space-2);margin-top:var(--space-3)}.league-share-feedback{color:var(--accent);font-size:.68rem;font-weight:950;letter-spacing:.08em;min-height:1em;text-align:center}.league-share-dialog:focus-visible{outline:2px solid var(--accent)}@media(min-width:32rem){.league-share-actions{grid-template-columns:1fr 1fr}}
.mfa-card details{margin-top:var(--space-4)}.mfa-card summary{cursor:pointer;font-weight:800}.mfa-enabled{color:var(--accent)}.mfa-qr{display:block;width:min(260px,100%);height:auto;margin:var(--space-4) auto;background:#fff;border-radius:var(--radius)}.mfa-secret{display:block;overflow-wrap:anywhere;padding:var(--space-3);background:var(--pitch);border-radius:var(--radius);letter-spacing:.08em}.mfa-recovery-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);padding:0;list-style:none}.mfa-recovery-codes code{display:block;padding:var(--space-2);text-align:center;background:var(--pitch);border-radius:var(--radius)}@media(max-width:480px){.mfa-recovery-codes{grid-template-columns:1fr}}
