*{box-sizing:border-box}html,body{overscroll-behavior:none;color:#f1e6d6;background:#1b1410;height:100%;margin:0;font:16px/1.4 system-ui,sans-serif;overflow:hidden}#app{display:flex;position:fixed;inset:0}#game{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;flex:1;min-width:0;position:relative;overflow:hidden}#stage{width:100%;height:100%;display:block;position:absolute;inset:0}[hidden]{display:none!important}.hud{padding:max(14px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) 14px max(20px, env(safe-area-inset-left));pointer-events:none;color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 1px 6px #00000073;font-weight:700;position:absolute;inset:0}.hud-score{font-size:34px;line-height:1.1}.hud-combo{min-height:28px;font-size:20px}.hud-rush .hud-combo{color:#ffe9a8;text-shadow:0 0 10px #ff8a2a}.hud-pause{top:max(12px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));color:#fff;cursor:pointer;pointer-events:auto;background:#1b141066;border:0;border-radius:50%;width:48px;height:48px;font-size:20px;font-weight:700;position:absolute}.hud-banner{text-align:center;letter-spacing:.3em;opacity:0;font-size:36px;position:absolute;top:22%;left:0;right:0}.hud-banner-show{animation:2.2s ease-out banner}@keyframes banner{0%{opacity:0;transform:translateY(12px)}15%,70%{opacity:1;transform:none}to{opacity:0}}.hud-tutorial{text-align:center;letter-spacing:.08em;font-size:26px;position:absolute;bottom:12%;left:0;right:0}@media (prefers-reduced-motion:reduce){.hud-banner-show{animation-timing-function:step-end}}.overlay{text-align:center;z-index:10;background:#1b1410b3;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;display:flex;position:absolute;inset:0}.overlay h1{letter-spacing:.12em;margin:0;font-size:44px}.overlay p{margin:0}.overlay button{min-width:180px;font:inherit;color:#1b1410;cursor:pointer;background:#e0a458;border:0;border-radius:999px;padding:12px 28px;font-size:20px;font-weight:700}.overlay button.secondary{color:#f1e6d6;background:#f1e6d629}.overlay button:focus-visible,.hud-pause:focus-visible{outline-offset:2px;outline:3px solid #fff}.title{cursor:pointer;text-shadow:0 2px 12px #00000080;background:linear-gradient(#1b14101a,#1b141099)}.title h1{letter-spacing:.2em;margin-right:-.2em;font-size:64px}.title-sub{letter-spacing:.3em;opacity:.85;font-size:18px}.title-best{font-variant-numeric:tabular-nums;min-height:24px;font-weight:700}.title-hint{font-size:20px;animation:1.6s ease-in-out infinite pulse;margin-top:18px!important}@keyframes pulse{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.title-hint{animation:none}}.results-score{font-variant-numeric:tabular-nums;font-size:64px;font-weight:800;line-height:1}.results-best{color:#1b1410;background:#ffd98a;border-radius:999px;padding:2px 14px;font-weight:700}.rotate{z-index:30;background:#1b1410;font-size:22px}.rotate-icon{font-size:64px;line-height:1}
