:root{--bg:#f4f6f8;--surface:#fff;--surface-2:#e9eef3;--text:#17212f;--muted:#647284;--border:#dbe2e9;--accent:#5570da;--accent-2:#4059bd;--success:#397d64;--success-bg:#e0f0e9;--failure:#a94f57;--failure-bg:#f7e5e6;--shadow:0 10px 35px rgba(26,39,54,.07);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:light}
:root[data-theme=dark]{--bg:#151c26;--surface:#202a36;--surface-2:#293646;--text:#f1f5f8;--muted:#a6b2c1;--border:#354353;--accent:#8297ed;--accent-2:#9cadf1;--success:#71b99b;--success-bg:#243d35;--failure:#df8b91;--failure-bg:#452e33;--shadow:0 12px 40px rgba(0,0,0,.2);color-scheme:dark}
*{box-sizing:border-box}html{background:var(--bg);color:var(--text)}body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% 0,rgba(104,126,220,.1),transparent 34rem),var(--bg);font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:auto;padding:0 24px}.brand{font-size:20px;font-weight:750;letter-spacing:-.04em}.brand span{color:var(--accent)}.top-actions{display:flex;align-items:center;gap:14px}.top-actions form{margin:0}.icon-button{width:44px;height:44px;border:1px solid var(--border);border-radius:50%;background:var(--surface);cursor:pointer;font-size:22px}.text-link,.button-link{color:var(--muted);font-weight:650}.button-link{border:0;background:none;padding:8px;cursor:pointer}.shell{max-width:1120px;margin:0 auto;padding:52px 24px 90px}.shell.narrow{max-width:720px}.shell.center{display:grid;grid-template-columns:1fr minmax(300px,410px);align-items:center;gap:70px;min-height:calc(100vh - 150px)}h1,h2,p{margin-top:0}h1{font-size:clamp(2.15rem,5vw,4.5rem);line-height:1.02;letter-spacing:-.055em;margin-bottom:18px}h2{letter-spacing:-.025em}.hero p:not(.eyebrow),.page-head p{color:var(--muted);max-width:620px;font-size:1.05rem}.eyebrow{color:var(--accent);font-size:.75rem;font-weight:800;letter-spacing:.16em;margin-bottom:14px}.card{background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow)}.form-card{padding:28px;display:grid;gap:19px}.form-card label,.label{font-weight:700;font-size:.9rem}.field{display:grid;gap:7px}.form-card input:not([type=checkbox]):not([type=radio]),.form-card select,.form-card textarea{width:100%;min-height:51px;border:1px solid var(--border);border-radius:12px;background:var(--bg);padding:12px 14px}.form-card textarea{min-height:100px}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{outline:3px solid color-mix(in srgb,var(--accent) 25%,transparent);border-color:var(--accent)}.errorlist{list-style:none;margin:0;padding:0;color:var(--failure);font-size:.88rem}.helptext,.field small{color:var(--muted)}.segmented{display:grid;grid-template-columns:1fr 1fr;border:0;padding:0;margin:0}.segmented input{position:absolute;opacity:0}.segmented label{text-align:center;padding:12px;border:1px solid var(--border);cursor:pointer}.segmented label:first-of-type{border-radius:12px 0 0 12px}.segmented label:last-of-type{border-radius:0 12px 12px 0}.segmented input:checked+label{background:var(--accent);border-color:var(--accent);color:#fff}.primary,.secondary{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:13px;padding:11px 20px;font-weight:750;border:0;cursor:pointer}.primary{background:var(--accent);color:#fff}.primary:hover{background:var(--accent-2)}.primary:disabled{opacity:.45}.secondary{background:var(--surface);border:1px solid var(--border)}.full{width:100%}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:36px}.page-head h1{font-size:clamp(2.1rem,4vw,3.5rem);margin-bottom:10px}.back{display:inline-block;color:var(--muted);font-weight:650;margin-bottom:28px}.match-list,.object-list,.session-list{display:grid;gap:12px}.match-card,.object-row,.session-row{padding:21px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.match-card:hover,.session-row:hover{border-color:var(--accent);transform:translateY(-1px)}.match-card h2,.session-row h2{margin:8px 0 3px}.match-card p,.session-row p{margin:0;color:var(--muted)}.arrow{font-size:28px;color:var(--accent)}.badge{display:inline-block;color:var(--muted);background:var(--surface-2);padding:3px 9px;border-radius:99px;font-size:.72rem;font-weight:750}.badge.completed{color:var(--success);background:var(--success-bg)}.badge.active{color:var(--accent)}.empty{text-align:center;padding:60px 20px;color:var(--muted)}.resume{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;margin-bottom:24px;border-color:var(--accent)}.resume p{margin:4px 0 0;color:var(--muted)}.field-row{display:flex;gap:14px}.field-row>div{display:grid;gap:7px}.field-row .grow{flex:1}.selection{display:grid;gap:10px;padding-top:5px}.selected-item{display:flex;align-items:flex-start;gap:10px;background:var(--surface-2);border-radius:12px;padding:12px}.selected-item small{display:block;color:var(--muted)}.check{color:var(--success);font-weight:900}.selection ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.selection ul label{display:flex;gap:10px;align-items:center;background:var(--surface-2);border-radius:12px;padding:12px}.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.admin-tile{padding:23px}.admin-tile>span{font-size:2rem;color:var(--accent);font-weight:800}.admin-tile h2{margin:12px 0 5px}.admin-tile p{color:var(--muted);margin:0}.accent-tile{border-color:var(--accent)}.info-card{margin-top:30px;padding:28px}.row-actions{display:flex;gap:16px;color:var(--accent);font-weight:650}.roster-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.roster-player{padding:17px}.choice-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.choice-row input{position:absolute;opacity:0}.choice-row label{padding:7px 10px;background:var(--surface-2);border:1px solid transparent;border-radius:9px;font-size:.83rem;cursor:pointer}.choice-row input:checked+label{border-color:var(--accent);color:var(--accent)}.sticky-save{position:sticky;bottom:20px;float:right;margin-top:20px;box-shadow:var(--shadow)}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.check-grid input{position:absolute;opacity:0}.check-grid label{padding:16px;display:flex;gap:10px;align-items:center;cursor:pointer}.check-grid label .check{margin-left:auto;opacity:0}.check-grid input:checked+label{border-color:var(--accent)}.check-grid input:checked+label .check{opacity:1}.jersey{display:inline-grid;place-items:center;min-width:30px;height:30px;border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:.8rem;font-weight:800}.session-row time{color:var(--muted);white-space:nowrap}.report,.comparison{padding:24px;margin:16px 0}.report-grid{display:grid;grid-template-columns:minmax(120px,1fr) repeat(var(--cols),minmax(75px,auto));gap:0}.report-grid>div,.report-grid>strong{padding:10px 4px;border-bottom:1px solid var(--border)}.report-head{color:var(--muted);font-size:.78rem;font-weight:700}.number{text-align:right}.action-row{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.comparison-wrap{overflow:auto}.comparison table{width:100%;border-collapse:collapse}.comparison th,.comparison td{padding:10px;border-bottom:1px solid var(--border);text-align:right}.comparison th:first-child,.comparison td:first-child{text-align:left;position:sticky;left:0;background:var(--surface)}
.record-shell{max-width:820px;padding-top:20px}.record-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:30px}.record-head h1{font-size:clamp(2rem,6vw,3.5rem);margin-bottom:8px}.record-head p{color:var(--muted)}.sync-state{flex:none;font-size:.75rem;color:var(--success);padding:7px 10px;border-radius:99px;background:var(--success-bg)}.sync-state.pending{color:var(--muted);background:var(--surface-2)}.stat-section{margin:34px 0}.section-title h2{font-size:1.45rem;margin-bottom:5px}.section-title p{color:var(--muted)}.players{display:grid;gap:9px}.player-card{background:var(--surface);border:1px solid var(--border);border-radius:17px;padding:13px 15px}.player-card header{display:flex;align-items:center;gap:10px;margin-bottom:9px}.counter-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:52px}.counter-row>span{font-size:.83rem;color:var(--muted);font-weight:700}.counter-row.success>span{color:var(--success)}.counter-row.failure>span{color:var(--failure)}.stepper{display:grid;grid-template-columns:52px 58px 52px;align-items:center;text-align:center}.stepper button{width:48px;height:48px;border:0;border-radius:13px;background:var(--surface-2);font-size:1.65rem;cursor:pointer;touch-action:manipulation}.stepper strong{font-size:1.4rem}.success .stepper button:last-child{background:var(--success-bg);color:var(--success)}.failure .stepper button:last-child{background:var(--failure-bg);color:var(--failure)}.player-picks{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.player-pick{border:1px solid var(--border);background:var(--surface);border-radius:15px;padding:13px;text-align:left;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;cursor:pointer;touch-action:manipulation}.player-pick.picked{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.player-pick>strong{font-size:1.1rem}.event-button{margin-top:12px;min-height:58px}.text-action{display:block;margin:12px auto 0;border:0;background:none;color:var(--muted);padding:10px;cursor:pointer}.text-action:disabled{opacity:.35}.comment-card{padding:20px;margin-top:40px}.comment-card label{display:block;font-weight:750;margin-bottom:8px}.comment-card textarea{width:100%;resize:vertical;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:12px}.finish{min-height:60px;margin-top:14px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.topbar{padding:0 16px}.shell{padding:32px 16px 80px}.shell.center{display:block}.hero{margin-bottom:35px}.hero h1{font-size:2.65rem}.page-head{align-items:flex-start;flex-direction:column}.page-head .primary,.page-head .secondary{width:100%}.admin-grid{grid-template-columns:1fr 1fr}.roster-grid{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr 1fr}.record-head{display:block}.sync-state{display:inline-block}.object-row{align-items:flex-start}.row-actions{flex-direction:column;gap:6px}.session-row{align-items:flex-start;flex-direction:column}.field-row{display:grid}.action-row>*{flex:1}.top-actions{gap:7px}.text-link{font-size:.86rem}}
@media(max-width:390px){.admin-grid,.check-grid{grid-template-columns:1fr}.player-picks{grid-template-columns:1fr}.stepper{grid-template-columns:48px 52px 48px}.stepper button{width:44px;height:44px}}
@media(prefers-reduced-motion:no-preference){.card,.primary{transition:.15s ease}}
.choice-row input,.check-grid input{width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.choice-row input:focus-visible+label,.check-grid input:focus-visible+label{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent)}

/* Simplified event-based administration */
.admin-nav{display:flex;gap:6px;overflow:auto;margin:-20px 0 42px;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:14px}.admin-nav a{white-space:nowrap;padding:10px 14px;border-radius:10px;color:var(--muted);font-weight:700}.admin-nav a.active{background:var(--surface-2);color:var(--text)}
.quick-grid,.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.quick-card{padding:24px;display:grid;gap:5px}.quick-card strong{font-size:2.2rem;color:var(--accent)}.quick-card span{color:var(--muted)}
.section-block{margin-top:42px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:15px}.section-head h2{margin:0}.event-grid,.definition-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.event-card{padding:24px;display:flex;justify-content:space-between;align-items:center;gap:18px}.event-card h2,.definition-card h2{margin:11px 0 5px}.event-card p,.event-card small,.definition-card p,.definition-card small{display:block;color:var(--muted);margin:0}.badge.open{color:var(--success);background:var(--success-bg)}.empty.compact{padding:24px;text-align:left}.empty.compact p{margin:0}
.codes-card{padding:28px;margin-top:42px}.code-list{display:grid;gap:11px}.code-row{display:grid;grid-template-columns:minmax(190px,1fr) minmax(180px,1fr) auto auto;align-items:center;gap:9px;padding:13px 0;border-bottom:1px solid var(--border)}.code-row small{display:block;color:var(--muted);margin-top:3px}.code-row input{min-height:43px;border:1px solid var(--border);border-radius:10px;background:var(--bg);padding:9px 12px;color:var(--text)}.secondary.small{min-height:42px;padding:8px 12px}.rotate-codes{margin-top:20px}.rotate-codes summary{cursor:pointer;color:var(--accent);font-weight:700}.form-card.flat{box-shadow:none;border:0;padding:22px 0 0}
.inline-create{display:flex;align-items:end;gap:12px;padding:18px;margin-bottom:24px}.inline-create input{width:100%;min-height:48px;border:1px solid var(--border);border-radius:11px;background:var(--bg);padding:10px 12px}.inline-create .number-field{width:120px}.object-main{display:flex;align-items:center;gap:13px}.object-main small{display:block;color:var(--muted);margin-top:3px}.muted-row{opacity:.58}.definition-create{margin-bottom:24px}.definition-grid{grid-template-columns:repeat(3,1fr)}.definition-card{padding:22px}
.event-form{display:grid;gap:15px;max-width:900px}.form-section{padding:24px;display:grid;grid-template-columns:44px 1fr;gap:17px}.form-section .step{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;font-weight:800}.form-section input[type=text],.form-section textarea{width:100%;min-height:48px;border:1px solid var(--border);border-radius:11px;background:var(--bg);padding:11px 13px}.form-section textarea{min-height:80px}.radio-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.radio-card{position:relative}.radio-card input{position:absolute;opacity:0}.radio-card span{display:block;padding:16px;border:1px solid var(--border);border-radius:13px;cursor:pointer}.radio-card input:checked+span{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.player-checkboxes{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.player-checkbox{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid var(--border);border-radius:12px;cursor:pointer}.player-checkbox input{position:absolute;opacity:0}.player-checkbox:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.player-checkbox .check{margin-left:auto;opacity:0}.player-checkbox:has(input:checked) .check{opacity:1}.player-checkbox:has(input:disabled){opacity:.7;cursor:default}.segmented.standalone{max-width:360px}.lock-note{color:var(--muted)}.event-summary{display:flex;justify-content:space-between;padding:14px;background:var(--surface-2);border-radius:12px}.head-actions{display:flex;gap:9px}.head-actions form{margin:0}.detail-grid{grid-template-columns:1fr 2fr}.info-card p:last-child{margin-bottom:0}.chip-list{display:flex;flex-wrap:wrap;gap:8px}.chip-list span{display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:99px;background:var(--surface-2)}.chip-list b{color:var(--accent)}.clone-action{margin-top:32px}
@media(max-width:760px){.admin-nav{margin-top:-12px;margin-bottom:30px}.quick-grid,.detail-grid,.event-grid,.definition-grid{grid-template-columns:1fr}.code-row{grid-template-columns:1fr auto auto}.code-row>div{grid-column:1/-1}.code-row input{min-width:0}.inline-create{display:grid;grid-template-columns:1fr 100px}.inline-create button{grid-column:1/-1}.form-section{grid-template-columns:1fr}.radio-cards,.player-checkboxes{grid-template-columns:1fr 1fr}.head-actions{width:100%}.head-actions>*{flex:1}.head-actions button{width:100%}}
@media(max-width:420px){.radio-cards,.player-checkboxes{grid-template-columns:1fr}.code-row{grid-template-columns:1fr 1fr}.code-row input{grid-column:1/-1}.top-actions .text-link:not(.button-link){display:none}}

/* Compact recording and list-based administration. */
.record-shell{padding-top:8px}.record-head{display:flex;margin-bottom:8px}.record-head h1{font-size:1.35rem;margin:0}.record-shell .stat-section{margin:12px 0}.record-shell .section-title h2{font-size:1.1rem;margin-bottom:4px}.record-shell .section-title p{font-size:.85rem;margin-bottom:10px}.record-shell .player-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 8px;padding:7px 9px;border-radius:12px}.record-shell .player-card header{margin:0;min-width:0;gap:6px}.record-shell .player-card header strong{overflow-wrap:anywhere;font-size:.92rem}.record-shell .counter-row{min-height:44px;gap:4px}.record-shell .single-counter .counter-row>span{display:none}.record-shell .stepper{grid-template-columns:44px 30px 44px}.record-shell .stepper button{width:44px;height:44px}.record-shell .stepper strong{font-size:1.1rem}.record-shell .dual-counter header{grid-row:1/3}.record-shell .dual-counter .counter-row{grid-column:2}.record-shell .counter-row>span{font-size:.65rem;max-width:58px}.record-shell .jersey{min-width:25px;width:25px;height:30px;font-size:.75rem}.record-shell .players{gap:5px}.record-shell .comment-card{margin-top:14px;padding:12px}.record-shell .finish{min-height:48px}.save-feedback{position:fixed;right:14px;bottom:16px;z-index:20;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--surface);box-shadow:0 2px 12px #0003;pointer-events:none}.save-icon::before{content:'✓';color:var(--success)}.save-feedback.saved{animation:save-fade 1.2s forwards}.save-feedback.saving .save-icon{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:save-spin .7s linear infinite}.save-feedback.saving .save-icon::before{content:''}.save-feedback.offline .save-icon::before{content:'!';color:var(--failure);font-weight:bold}@keyframes save-spin{to{transform:rotate(360deg)}}@keyframes save-fade{0%,65%{opacity:1}100%{opacity:0}}dialog{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:24px;max-width:calc(100% - 32px);width:430px}dialog::backdrop{background:#0009}dialog h2{font-size:1.3rem}.list-actions{display:flex;align-items:center;gap:18px;flex-shrink:0}.danger-link{color:var(--failure)}.object-row p{margin:4px 0}.object-main small{color:var(--muted)}.form-card>div{display:grid;gap:6px}.form-card>div>label{font-weight:650}.form-card ul{list-style:none;padding:0}.object-row details{margin-top:8px}@media(max-width:600px){.object-row{gap:10px;align-items:center}.object-main{flex-wrap:wrap}.object-main small{flex-basis:100%}.list-actions{gap:10px;font-size:.85rem}.record-shell{padding:8px 10px 60px}.record-shell .player-picks{grid-template-columns:1fr 1fr}.record-shell .player-pick{padding:9px;gap:5px}.record-shell .player-pick span{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){.save-feedback.saving .save-icon{animation:none}.save-feedback.saved{animation:none;opacity:0}}

.form-card fieldset{border:0;margin:0;padding:0}.form-card legend{font-weight:650;margin-bottom:8px}.form-card fieldset>div{display:grid;gap:8px}.form-card input[type=radio],.form-card input[type=checkbox]{accent-color:var(--accent)}
