:root{--bg: #0b0f16;--fg: #e8edf7;--muted: #8a97ad;--line: #1d2739;--good: #35d07f;--warn: #ffd166;--bad: #ff6b6b;--accent: #2f6fed;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--fg);font:16px/1.4 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}#stage{display:block;width:100vw;height:100vh}.overlay{position:fixed;inset:0;pointer-events:none;display:grid;grid-template-rows:1fr auto}.overlay-center{display:grid;place-items:center;padding:4vmin}.overlay-center:empty{display:none}.panel{display:grid;justify-items:center;gap:1.1rem;padding:2.4rem 2.8rem;border:1px solid var(--line);border-radius:20px;background:#0b0f16d1;backdrop-filter:blur(6px);text-align:center;max-width:min(90vw,34rem)}.panel-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;color:var(--muted)}.panel-title{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:650}.panel-label{font-size:.92rem;color:var(--muted)}.panel-url{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.72rem;color:var(--muted);overflow-wrap:anywhere;max-width:100%}.room-code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:clamp(3rem,9vw,5.5rem);font-weight:700;letter-spacing:.16em;text-indent:.16em;line-height:1}.qr-slot{display:grid;place-items:center;min-height:320px;min-width:320px}.qr{display:block;width:320px;height:320px;border-radius:12px;background:#fff;padding:8px}.qr-failed{color:var(--warn);font-size:.9rem;max-width:18rem}.overlay-status{grid-row:2;align-self:end;padding:1rem 1.4rem;font-size:.9rem;letter-spacing:.02em;color:var(--muted)}.overlay-status[data-tone=good]{color:var(--good)}.overlay-status[data-tone=warn]{color:var(--warn)}.overlay-status[data-tone=bad]{color:var(--bad)}.overlay-hud{position:fixed;top:1rem;right:1rem;display:grid;gap:.15rem;padding:.75rem .9rem;border:1px solid var(--line);border-radius:12px;background:#0b0f16b3;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.82rem}.overlay-hud:empty{display:none}.hud-row{display:grid;grid-template-columns:4.5rem 1fr;gap:.9rem}.hud-label{color:var(--muted)}.hud-value{font-variant-numeric:tabular-nums;text-align:right}.hud-row[data-tone=good] .hud-value{color:var(--good)}.hud-row[data-tone=warn] .hud-value{color:var(--warn)}.hud-row[data-tone=bad] .hud-value{color:var(--bad)}.game-list{display:grid;gap:.5rem;width:100%}.game-row{display:grid;gap:.1rem;padding:.75rem .9rem;border:1px solid var(--line);border-radius:12px;text-align:left;border-width:1px}.game-row[data-selected=true]{border-color:var(--accent);background:#2f6fed1f}.game-title{font-weight:650;font-size:1.05rem}.game-blurb{font-size:.85rem;color:var(--muted)}.game-grip{font-size:.74rem;color:var(--muted);opacity:.75}.score{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:clamp(3.5rem,12vw,7rem);font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.audio-hint{font-size:.82rem;letter-spacing:.02em;color:var(--muted)}.audio-hint:empty{display:none}.audio-hint[data-tone=blocked]{color:var(--warn)}.panel-record{font-size:.86rem;font-weight:650;text-transform:uppercase;letter-spacing:.18em;color:var(--good)}
