@font-face{font-family:Bungee;font-style:normal;font-display:swap;font-weight:400;src:url(./bungee-vietnamese-400-normal-B6gKbkHm.woff2)format("woff2"),url(./bungee-vietnamese-400-normal-CmjDSWyd.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bungee;font-style:normal;font-display:swap;font-weight:400;src:url(./bungee-latin-ext-400-normal-DWzJMwsA.woff2)format("woff2"),url(./bungee-latin-ext-400-normal-DXe9_7Rr.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bungee;font-style:normal;font-display:swap;font-weight:400;src:url(./bungee-latin-400-normal-Dfnurram.woff2)format("woff2"),url(./bungee-latin-400-normal-DA8IEVW_.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(./atkinson-hyperlegible-latin-ext-400-normal-DRk46D-x.woff2)format("woff2"),url(./atkinson-hyperlegible-latin-ext-400-normal-Bbz-b3yf.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(./atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2)format("woff2"),url(./atkinson-hyperlegible-latin-400-normal-BbWidj28.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(./atkinson-hyperlegible-latin-ext-700-normal-BoVPHkS0.woff2)format("woff2"),url(./atkinson-hyperlegible-latin-ext-700-normal-CKkU2Dpt.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(./atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2)format("woff2"),url(./atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--night:#1a0b3d;--night-deep:#0f0629;--plum:#3a1170;--pink:#ff3b8b;--cyan:#3ff0ff;--citrus:#ffe83d;--steel:#8fb0ff;--paper:#f6f0ff;--muted:#b9acd9;--display:"Bungee", "Arial Black", sans-serif;--body:"Atkinson Hyperlegible", system-ui, -apple-system, sans-serif;--st:env(safe-area-inset-top,0px);--sb:env(safe-area-inset-bottom,0px);--sl:env(safe-area-inset-left,0px);--sr:env(safe-area-inset-right,0px)}*{box-sizing:border-box}html,body{overscroll-behavior:none;height:100%;margin:0;overflow:hidden}body{color:var(--paper);font:400 18px/1.5 var(--body);background:radial-gradient(140% 60% at 50% 115%, var(--plum) 0%, #3a117000 62%), radial-gradient(90% 40% at 15% -5%, #ff3b8b29 0%, #ff3b8b00 70%), linear-gradient(180deg, var(--night-deep) 0%, var(--night) 100%);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;position:fixed;top:0;bottom:0;left:0;right:0}body:before{content:"";pointer-events:none;background-image:radial-gradient(#d6c4ff17 1.1px,#0000 1.6px);background-size:16px 16px;position:fixed;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(#00000040,#000 70%);mask-image:linear-gradient(#00000040,#000 70%)}#app{height:100%;height:100dvh;height:var(--app-h,100dvh);display:flex;position:fixed;top:0;left:0;right:0}.screen{width:100%;max-width:32rem;padding:calc(var(--st) + 72px) calc(var(--sr) + 26px) calc(var(--sb) + 26px) calc(var(--sl) + 26px);touch-action:pan-y;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;margin:0 auto;display:flex;overflow-y:auto}.screen>.go{flex-shrink:0;position:sticky;bottom:0}@media (max-height:700px){.screen{padding-top:calc(var(--st) + 56px)}}.screen.center{text-align:center;align-items:center}.sign{font:400 clamp(2.5rem, 13.5vw, 4rem) / .98 var(--display);color:#fff6fb;text-shadow:0 0 2px #fff, 0 0 10px var(--pink), 0 0 24px var(--pink), 0 0 54px #ff3b8bbf;margin:0 0 .35em}.sign.cyan{color:#f2feff;text-shadow:0 0 2px #fff, 0 0 10px var(--cyan), 0 0 24px var(--cyan), 0 0 54px #3ff0ffb3}.sign.off{color:#3a2a66;text-shadow:0 0 1px #ffffff26}.sign.flicker{animation:1.3s linear both flicker}@keyframes flicker{0%{opacity:.12}8%{opacity:1}11%{opacity:.2}16%{opacity:1}30%{opacity:.55}33%{opacity:1}to{opacity:1}}h2{font:700 1.7rem/1.15 var(--body);letter-spacing:-.01em;margin:0 0 .6em}p{max-width:38ch;margin:0 0 .9em}.lede{color:var(--paper);font-size:1.15rem}.quiet{color:var(--muted);font-size:.98rem}.spacer{flex:1;min-height:16px}.go{width:100%;min-height:64px;font:700 1.3rem/1 var(--body);color:var(--night-deep);background:var(--citrus);cursor:pointer;touch-action:manipulation;border:0;border-radius:16px;padding:0 24px;transition:transform 90ms ease-out;display:block;box-shadow:inset 0 0 0 2px #ffffff8c,0 0 26px #ffe83d73}.go:active{transform:scale(.97)}.go:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.mute:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.mute{z-index:50;top:calc(var(--st) + 14px);right:calc(var(--sr) + 14px);width:46px;height:46px;color:var(--paper);cursor:pointer;touch-action:manipulation;background:#0f06298c;border:2px solid #d6c4ff59;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed}.mute svg{width:22px;height:22px}.consent-text{touch-action:pan-y;-webkit-overflow-scrolling:touch;margin-bottom:16px;overflow-y:auto}.consent-text ul{margin:0 0 1em;padding:0;list-style:none}.consent-text li{margin-bottom:.35em;padding-left:1.3em;position:relative}.consent-text li:before{content:"";background:var(--cyan);width:.42em;height:.42em;box-shadow:0 0 8px var(--cyan);border-radius:50%;position:absolute;top:.62em;left:.15em}.steps{counter-reset:step;margin:8px 0 0;padding:0;list-style:none}.steps li{counter-increment:step;color:var(--muted);align-items:center;gap:14px;padding:10px 0;display:flex}.steps li:before{content:counter(step);width:34px;height:34px;font:400 .95rem/1 var(--display);border:2px solid #d6c4ff4d;border-radius:50%;flex:none;place-items:center;display:grid}.steps li.now{color:var(--paper);font-weight:700}.steps li.now:before{border-color:var(--citrus);color:var(--citrus);box-shadow:0 0 12px #ffe83d80}.steps li.done:before{content:"";border-color:var(--steel);background:var(--steel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f0629' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 20px no-repeat}.legend{text-align:left;grid-template-columns:auto 1fr;align-items:center;gap:12px 16px;margin:18px 0 8px;display:grid}.legend-row{gap:0;margin:-6px 0;display:flex}.legend .yes{color:var(--citrus);font-weight:700}.legend .no{color:var(--steel);font-weight:700}.score-big{font:400 clamp(4.2rem, 26vw, 7rem) / 1 var(--display);color:#f2feff;text-shadow:0 0 2px #fff, 0 0 14px var(--cyan), 0 0 40px #3ff0ff99;margin:6px 0 4px}.best-line{color:var(--muted);margin:0 0 18px}.best-line.new{color:var(--citrus);font-size:1.2rem;font-weight:700}.stats{grid-template-columns:1fr 1fr;gap:14px 18px;width:100%;margin:8px 0 0;display:grid}.stats div{text-align:left;border-top:2px solid #d6c4ff29;padding:10px 0 0}.stats dt{color:var(--muted);font-size:.95rem}.stats dd{font:400 1.6rem/1.2 var(--display);margin:0}.stage{height:100%;height:100dvh;height:var(--app-h,100dvh);position:fixed;top:0;left:0;right:0}.shoot{touch-action:none;position:absolute;top:0;bottom:0;left:0;right:0}.shoot-canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.hud{padding:calc(var(--st) + 10px) calc(var(--sr) + 72px) 0 calc(var(--sl) + 18px);pointer-events:none;position:absolute;top:0;left:0;right:0}.hud-timer{background:#d6c4ff24;border-radius:3px;height:6px;margin-top:6px;overflow:hidden}.hud-timer-fill{transform-origin:0;background:linear-gradient(90deg, var(--cyan), var(--citrus));height:100%;box-shadow:0 0 10px var(--cyan);will-change:transform}.final .hud-timer-fill{background:var(--pink);box-shadow:0 0 12px var(--pink)}.hud-row{align-items:baseline;gap:12px;margin-top:8px;display:flex}.hud-score{font:400 2.1rem/1 var(--display);color:#fff;text-shadow:0 0 12px #3ff0ffb3;font-variant-numeric:tabular-nums}.hud-combo{font:400 1.25rem/1 var(--display);color:var(--citrus);text-shadow:0 0 10px #ffe83dcc;opacity:0;transition:opacity .12s,transform .16s cubic-bezier(.3,1.6,.5,1);transform:scale(.6)}.hud-combo.on{opacity:1;transform:scale(1)}.shoot-flash{pointer-events:none;opacity:0;position:absolute;top:0;bottom:0;left:0;right:0;box-shadow:inset 0 0 140px 30px #ff285ad9}.shoot-flash.on{animation:.38s ease-out flash}@keyframes flash{0%{opacity:1}to{opacity:0}}.shoot-veil{text-align:center;font:700 1.5rem/1.3 var(--body);background:#0f0629db;place-items:center;padding:32px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.shoot-veil[hidden]{display:none}.shoot-banner,.countdown{pointer-events:none;font:400 clamp(4rem, 30vw, 9rem) / 1 var(--display);color:#fff6fb;text-shadow:0 0 3px #fff, 0 0 16px var(--pink), 0 0 48px var(--pink);place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.shoot-banner{animation:.42s cubic-bezier(.2,1.6,.4,1) both pop}.countdown span{animation:.52s cubic-bezier(.2,1.6,.4,1) both pop;display:block}.countdown span.go-word{color:#fffbe0;text-shadow:0 0 3px #fff, 0 0 16px var(--citrus), 0 0 48px var(--citrus)}@keyframes pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@media (orientation:landscape) and (pointer:coarse) and (max-height:600px){body:after{content:"Turn your phone upright to play.";z-index:100;text-align:center;font:700 1.4rem/1.3 var(--body);color:var(--paper);background:var(--night-deep);place-items:center;padding:24px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}}@media (prefers-reduced-motion:reduce){.sign.flicker,.shoot-banner,.countdown span,.shoot-flash.on{animation-duration:1ms}.go,.hud-combo{transition:none}}
