:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0c0a12;--cream:#fff4fb;--ash:#8a83a6;--depth:#2a2140;--arcade:"Consolas", "Courier New", monospace;--sans:"Archivo", "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);width:100%;height:100%;font-family:var(--arcade);color:var(--cream);overflow:hidden}#app{width:100vw;height:100dvh;position:relative}.game-canvas{touch-action:none;display:block;position:absolute;inset:0}.hud{pointer-events:none;z-index:10;flex-direction:column;align-items:center;display:flex;position:absolute;inset:0}.hud__score{letter-spacing:2px;color:var(--cream);text-shadow:2px 2px 0 var(--depth), -2px 2px 0 var(--depth), 0 5px 14px #0009;margin-top:44px;font-size:58px;font-weight:700}.hud__best{letter-spacing:3px;color:var(--cream);opacity:.85;text-shadow:0 2px 4px #0009;margin-top:6px;font-size:13px}.overlay{padding:32px 22px calc(32px + env(safe-area-inset-bottom));text-align:center;pointer-events:auto;z-index:20;background:radial-gradient(circle,#28143c59 0%,#06040cbf 90%);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex;position:absolute;inset:0;overflow-y:auto}.overlay.hidden{display:none}.overlay__title{line-height:1}.overlay__wordmark{letter-spacing:4px;background:linear-gradient(100deg,#ff3d81 0%,#2ee6ff 36%,#b8ff3d 68%,#ffb03d 100%);color:#0000;filter:drop-shadow(0 4px 14px #00000080)drop-shadow(0 0 18px #ff3d8140);-webkit-background-clip:text;background-clip:text;font-size:clamp(40px,10vw,68px);font-weight:700;display:inline-block}.overlay__subtitle{letter-spacing:1.5px;max-width:32ch;color:var(--cream);text-shadow:0 2px 6px #0009;font-size:15px;line-height:1.5}.overlay__score{letter-spacing:1.5px;color:var(--cream);text-shadow:0 2px 6px #0009;font-size:19px}.overlay__hint{letter-spacing:2px;text-transform:uppercase;color:var(--ash);text-shadow:0 2px 6px #0009;margin-top:8px;font-size:13px}.countdown{pointer-events:none;z-index:25;letter-spacing:6px;color:var(--cream);text-shadow:4px 4px 0 var(--depth), 0 8px 28px #0009;opacity:0;justify-content:center;align-items:center;font-size:clamp(100px,26vw,168px);font-weight:700;display:flex;position:absolute;inset:0}.countdown.is-shown{animation:.75s ease-out countdown-pop}@keyframes countdown-pop{0%{opacity:0;transform:scale(.4)}20%{opacity:1;transform:scale(1.12)}40%{transform:scale(1)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.3)}}@media (prefers-reduced-motion:reduce){.countdown.is-shown{animation-duration:.01ms}}
