*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:#071018;color:#f2f5e7;font-family:system-ui,Arial,sans-serif;overscroll-behavior:none}body{display:grid;place-items:center}#shell{position:relative;width:240px;height:282px;overflow:hidden;background:#101f2b;box-shadow:0 14px 40px #0009;touch-action:none;user-select:none;-webkit-user-select:none}canvas{display:block;width:240px;height:282px}button{border:1px solid #7bcfca;background:#102b3a;color:#f5fff6;border-radius:7px;font-size:11px;font-weight:800;min-height:31px;touch-action:none}button:focus-visible{outline:2px solid #ffdb81}#hud{position:absolute;top:0;left:0;right:0;height:29px;display:flex;align-items:center;justify-content:space-between;padding:0 7px;background:#071018dd;font-size:9px;font-weight:900;letter-spacing:.04em}#time{font-size:16px;color:#ffe093;font-variant-numeric:tabular-nums}#audio{width:28px;height:27px;min-height:27px;padding:3px;display:grid;place-items:center;color:#f5aa91}#audio svg{width:21px;height:21px}#audio .waves{display:none}#audio[aria-pressed=true]{color:#8debd0}#audio[aria-pressed=true] .waves{display:block}#audio[aria-pressed=true] .slash{display:none}#message{position:absolute;top:32px;left:7px;right:7px;text-align:center;font-size:10px;font-weight:800;text-shadow:0 2px 4px #000;pointer-events:none}#controls{position:absolute;bottom:6px;left:6px;display:flex;gap:5px}#controls button{min-width:69px;min-height:35px;background:#123647e8}#brake:active{background:#a15d50}#overlay,#help,#result{position:absolute;inset:0;background:#0b1b27f5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px;gap:9px}#overlay[hidden],#help[hidden],#result[hidden]{display:none}.emblem{font-size:43px;color:#ffc57a;text-shadow:0 0 22px #f69b52}h1{font-size:26px;line-height:.94;letter-spacing:-.05em;margin:0}h1 b{color:#7de5d1}#overlay p{font-size:10px;letter-spacing:.13em;color:#aee8df;margin:3px}#overlay small{font-size:10px;line-height:1.5;color:#c5d7d8}#start,#resume,#restart,#replay{background:#78e2cd;color:#082330;border:0;padding:0 15px;min-height:35px}#help{z-index:5;left:22px;border-left:2px solid #78e2cd;gap:8px;box-shadow:-12px 0 25px #0008}#help h2,#result h2{margin:0;font-size:18px}#help p,#result p{margin:0;font-size:11px;line-height:1.4;text-align:left}#result{z-index:4}#result p{text-align:center}

.pick{display:flex;gap:7px}.pick label{font-size:9px;font-weight:800;color:#aee8df;text-align:left}.pick select{display:block;max-width:105px;background:#193748;color:#fff;border:1px solid #7bcfca;border-radius:5px;height:29px;font-size:11px}#overlay{gap:6px}#overlay h1{font-size:23px}#overlay .emblem{font-size:27px}#overlay small{font-size:9px}#hud #label{max-width:135px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#hud #time{font-size:12px;white-space:nowrap}#next{background:#ffdb81;color:#102b3a;border:0;padding:0 10px}#next[hidden]{display:none}
/* Compact instrument-panel finish: hierarchy and tactility without consuming course pixels. */
#shell{background:#0c2531;box-shadow:0 20px 50px #000a}
#hud{height:29px;background:#071a25ee;border-bottom:1px solid #a9e6d531;letter-spacing:.065em}
#time{font-variant-numeric:tabular-nums;text-shadow:0 0 9px #edce7044}
#message{font-size:9px;letter-spacing:.015em;text-shadow:0 1px 4px #06141b,0 1px 4px #06141b}
#controls button,#audio{background:#102f3ddf;border:1px solid #98dbd2a0;box-shadow:inset 0 1px #ffffff25,0 2px 9px #03121b66;border-radius:8px}
#controls button{font-size:10px;letter-spacing:.07em}
#brake:active{background:#a76752}
#overlay,#help,#result{background:linear-gradient(155deg,#102d39f8,#071922fa 70%)}
#overlay{justify-content:center;gap:7px}
#overlay .emblem{font-size:31px;line-height:1;color:#f6d696;text-shadow:0 0 17px #e9a66277}
#overlay h1{font-size:24px;line-height:1;letter-spacing:-.055em;text-shadow:0 2px 12px #0008}
#overlay p{font-size:9px;letter-spacing:.14em;color:#9ce4d8}
#overlay small{font-size:9px;color:#c6dddd;line-height:1.45}
.pick{gap:8px}.pick label{letter-spacing:.1em;color:#95d5cf}.pick select{background:#173948;border:1px solid #82cfc4;border-radius:7px;padding:0 5px}
#start,#resume,#restart,#replay{background:#a2ebd6;box-shadow:inset 0 1px #fff9,0 4px 12px #0005;border-radius:8px;letter-spacing:.06em}
#help{border-left:2px solid #a2ebd6;box-shadow:-10px 0 22px #000a}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Scoreboard instruments: compact, explicit state, no bottom brake control. */
#hud{padding:0 4px;gap:3px;letter-spacing:0;height:32px}
#score{display:flex;min-width:0;flex:1;align-items:center;gap:3px}
#hud #label{min-width:0;max-width:none;flex:1;font-size:8px}
#hud #time{font-size:10px;flex:none}
#instruments{display:flex;align-items:center;gap:2px;flex:none}
#instruments button{min-height:25px;height:25px;padding:0 3px;font-size:9px;white-space:nowrap;border-radius:5px;background:#102f3d;box-shadow:inset 0 1px #ffffff25}
#speed{min-width:24px;color:#ffe093}
#brake-state{min-width:35px;color:#c8dddb}
#brake-state[aria-pressed=true]{color:#071a25;background:#ffca82;border-color:#ffe0aa}
#hud #audio{flex:none;width:25px;height:25px;min-height:25px;padding:2px}
#hud #audio svg{width:19px;height:19px}
