:root{color-scheme:light;--bg:#f3f5f9;--bg-accent:#f8faff;--card:#fff;--text:#0f172a;--muted:#526075;--line:#d6dde7;--line-strong:#c3cedd;--shadow:0 18px 48px rgba(15,23,42,.08);--go:#15803d;--go-soft:#e8f9ef;--warn:#9a3412;--warn-soft:#fff2e7}:root[data-theme=dark]{color-scheme:dark;--bg:#0a1020;--bg-accent:#111a2f;--card:#121b2d;--text:#e7edf8;--muted:#9da9bf;--line:#243149;--line-strong:#32425f;--shadow:0 22px 48px rgba(4,8,16,.45);--go-soft:#0f3822;--warn-soft:#402418}*{box-sizing:border-box}body,html{margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at top,var(--bg-accent) 0,var(--bg) 45%);color:var(--text)}.page{min-height:100dvh;display:grid;place-items:center;padding:1.2rem}.container{width:min(680px,100%);display:grid;grid-gap:.9rem;gap:.9rem}.top-bar{display:flex;justify-content:space-between;align-items:center;gap:.7rem}.back-link{display:inline-flex;align-items:center;min-height:36px;padding:.15rem .5rem;border-radius:8px;border:1px solid transparent;color:var(--muted);text-decoration:none;font-size:.86rem;font-weight:520;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.back-link:hover{border-color:var(--line);background:color-mix(in srgb,var(--card) 84%,var(--bg) 16%);color:var(--text)}.back-link:focus-visible{outline:2px solid #7fa5db;outline-offset:2px}.header{display:grid;grid-gap:.35rem;gap:.35rem}.header h1{margin:0;font-size:clamp(1.52rem,3.8vw,1.95rem);line-height:1.2;letter-spacing:-.015em}.header p{margin:0;color:var(--muted);font-size:.98rem;max-width:58ch}.game-card,.leaderboard{border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--shadow);padding:1rem}.game-card{display:grid;grid-gap:.78rem;gap:.78rem}.status-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.instruction{margin:0;color:var(--muted);font-size:.95rem;line-height:1.45}.primary-btn,.secondary-btn{border-radius:10px;border:1px solid transparent;font:inherit;font-size:.94rem;min-height:42px;padding:.56rem .95rem;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}.primary-btn{background:#0f172a;color:#fff;white-space:nowrap}:root[data-theme=dark] .primary-btn{background:#3b82f6;color:#f8fbff}.primary-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px rgba(15,23,42,.18)}.primary-btn:disabled{cursor:not-allowed;opacity:.6}.actions-top{display:flex;justify-content:flex-start}.secondary-btn{border-color:var(--line);background:color-mix(in srgb,var(--card) 84%,var(--bg) 16%);color:var(--text);font-size:.88rem}.secondary-btn:hover{border-color:var(--line-strong)}.theme-toggle{min-height:36px;padding:.42rem .72rem}.panel{width:100%;min-height:min(300px,50dvh);border-radius:14px;border:1px solid var(--line-strong);background:linear-gradient(180deg,color-mix(in srgb,var(--card) 85%,var(--bg) 15%) 0,var(--bg) 100%);display:grid;place-content:center;text-align:center;color:var(--text);padding:1rem;transition:background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.panel:not(:disabled){cursor:pointer}.panel:not(:disabled):hover{transform:translateY(-1px)}.panel-content{display:grid;justify-items:center;grid-gap:.42rem;gap:.42rem;max-width:38ch}.panel-kicker{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:650}.panel-instruction{margin:0;font-size:clamp(1.05rem,2.25vw,1.25rem);font-weight:640;line-height:1.32}.panel-helper{color:var(--muted);font-size:.9rem}.panel-waiting{border-color:#6f7e9e}.panel-go{background:linear-gradient(180deg,color-mix(in srgb,var(--go-soft) 85%,#0a0f0b 15%) 0,var(--go-soft) 100%);border-color:#1e8b49;box-shadow:inset 0 0 0 1px rgba(21,128,61,.22),0 10px 26px rgba(21,128,61,.13)}.panel-go .panel-helper,.panel-go .panel-kicker{color:#77d39e}:root:not([data-theme=dark]) .panel-go .panel-helper,:root:not([data-theme=dark]) .panel-go .panel-kicker{color:#136533}.panel-go .panel-instruction{font-size:clamp(1.2rem,3.2vw,1.58rem)}.panel-tooSoon{background:linear-gradient(180deg,color-mix(in srgb,var(--warn-soft) 75%,var(--card) 25%) 0,var(--warn-soft) 100%);border-color:#c7673b}.panel-result{background:linear-gradient(180deg,color-mix(in srgb,var(--card) 82%,var(--bg) 18%) 0,var(--bg) 100%)}.result-stack{display:grid;grid-gap:.62rem;gap:.62rem}.result-card,.submit-card,.too-soon-card{border:1px solid var(--line);border-radius:12px;padding:.85rem .9rem;background:color-mix(in srgb,var(--card) 90%,var(--bg) 10%)}.muted,.result-feedback,.result-label{color:var(--muted)}.result-feedback,.result-label{margin:0}.result-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:620}.result-value{margin:.22rem 0 .18rem;font-size:clamp(2.2rem,8vw,2.9rem);font-weight:730;line-height:1;letter-spacing:-.02em}.result-feedback{font-size:.95rem}.too-soon-card strong{display:block;margin-bottom:.2rem}.too-soon-card p{margin:0;color:var(--muted)}.submit-card label{display:block;font-weight:600;margin-bottom:.45rem}.submit-row{display:flex;gap:.62rem}.submit-row input{flex:1 1;min-height:42px;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--text);padding:0 .72rem;font:inherit}.submit-row input:focus-visible{outline:2px solid #7fa5db;outline-offset:1px}.leaderboard-wrap{display:grid;grid-gap:.48rem;gap:.48rem}.leaderboard{box-shadow:0 8px 24px rgba(15,23,42,.06)}.leaderboard h2{margin:0;font-size:1.02rem}.leaderboard-header{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem}.leaderboard-header .muted{margin:0;font-size:.8rem}.error-text{color:#e36969}.score-list{list-style:none;margin:.68rem 0 0;padding:0;display:grid;grid-gap:.42rem;gap:.42rem}.score-item{border:1px solid var(--line);border-radius:10px;padding:.52rem .68rem;display:flex;justify-content:space-between;gap:.75rem;align-items:center;background:color-mix(in srgb,var(--card) 90%,var(--bg) 10%)}.score-main{display:inline-flex;align-items:center;gap:.55rem;min-width:0}.score-name{font-weight:580;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-rank{width:1.35rem;height:1.35rem;display:inline-grid;place-items:center;border-radius:999px;border:1px solid var(--line-strong);font-size:.75rem;color:var(--muted)}.score-metrics{display:grid;justify-items:end;grid-gap:.1rem;gap:.1rem}.score-time{font-size:.76rem}@media (max-width:640px){.page{align-items:start}.container{gap:.82rem}.top-bar{flex-wrap:wrap;justify-content:space-between}.game-card,.leaderboard{padding:.84rem}.status-row{align-items:stretch;flex-direction:column}.primary-btn{width:100%}.panel{min-height:min(280px,46dvh)}.leaderboard-header,.submit-row{flex-direction:column}.leaderboard-header{align-items:flex-start;gap:.2rem}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}