@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;src:url(../fonts/BarlowCondensed-500.woff2) format("woff2");font-display:block}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;src:url(../fonts/BarlowCondensed-600.woff2) format("woff2");font-display:block}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;src:url(../fonts/BarlowCondensed-700.woff2) format("woff2");font-display:block}:root{--hud-amber: #ffc61a;--hud-cyan: #35e0e8;--hud-white: #f4f6f7;--hud-red: #ff4d4d;--hud-shadow: 0 2px 10px rgba(0,0,0,.75), 0 0 2px rgba(0,0,0,.9)}#hud,.screen{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}#hud{position:fixed;inset:0;pointer-events:none;z-index:10;font-family:Barlow Condensed,Helvetica Neue,Arial,sans-serif;color:var(--hud-white);-webkit-font-smoothing:antialiased;text-shadow:var(--hud-shadow);opacity:0;transition:opacity .35s ease}#hud.on{opacity:1}.hud-corner{position:absolute;display:flex;flex-direction:column}.hud-tl{top:clamp(14px,2.2vh,26px);left:clamp(16px,2.4vw,34px)}.hud-tr{top:clamp(14px,2.2vh,26px);right:clamp(16px,2.4vw,34px);align-items:flex-end;text-align:right}.hud-bl{bottom:clamp(16px,3vh,34px);left:clamp(16px,2.4vw,34px)}.hud-br{bottom:clamp(16px,3vh,34px);right:clamp(16px,2.4vw,34px);align-items:flex-end}.lbl{font-weight:700;font-size:clamp(11px,1.35vh,15px);letter-spacing:.16em;color:var(--hud-amber);line-height:1.1}.val{font-weight:600;font-size:clamp(30px,4.4vh,52px);line-height:.96;letter-spacing:.005em;font-variant-numeric:tabular-nums}.val.sm{font-size:clamp(20px,2.9vh,34px)}.unit{font-size:.42em;font-weight:700;letter-spacing:.12em;margin-left:.3em;opacity:.8}.stat+.stat{margin-top:clamp(6px,1.1vh,13px)}#combo{font-weight:700;font-size:clamp(17px,2.3vh,27px);letter-spacing:.1em;color:var(--hud-amber);margin-top:.25em;opacity:0;transition:opacity .2s}#combo.on{opacity:1}#combo.hot{color:#ff8a2b}#combo.blaze{color:var(--hud-red)}#lastAward{font-weight:600;font-size:clamp(13px,1.7vh,19px);letter-spacing:.09em;margin-top:.2em;min-height:1.2em;opacity:0;transition:opacity .25s}#lastAward.on{opacity:1}#lastAward b{color:var(--hud-amber);font-weight:700}#comboBar{margin-top:.5em;width:clamp(120px,13vw,190px);height:7px;background:#ffffff24;border-radius:4px;overflow:hidden;box-shadow:0 1px 6px #00000080;opacity:0;transition:opacity .2s}#comboBar.on{opacity:1}#comboBarFill{height:100%;width:0%;background:var(--hud-amber);border-radius:4px;transition:width .08s linear}#lives{display:flex;gap:5px;justify-content:flex-end;margin-bottom:2px}#lives .life{font-size:clamp(11px,1.4vh,15px);line-height:1;color:var(--hud-amber);filter:drop-shadow(0 0 5px rgba(255,187,58,.5));transition:color .3s,opacity .3s}#lives .life.spent{color:#ffffff38;filter:none}#lives.grace .life{animation:lifeBlink .32s steps(2) infinite}@keyframes lifeBlink{0%{opacity:1}to{opacity:.35}}#boostDial{position:relative;width:clamp(74px,9vh,106px);aspect-ratio:1;appearance:none;-webkit-appearance:none;background:none;border:0;padding:0;margin:0;color:inherit;font:inherit;text-shadow:inherit;cursor:pointer}#boostDial:focus-visible{outline:2px solid var(--hud-cyan);outline-offset:4px}@media(hover:none)and (pointer:coarse){#boostDial{width:clamp(92px,13vh,128px)}#boostDial:after{content:"TAP / SWIPE UP";position:absolute;left:50%;transform:translate(-50%);top:100%;margin-top:4px;white-space:nowrap;font-size:9px;letter-spacing:.1em;opacity:.62}#boostDial:active{transform:scale(.94)}}#boostDial svg{position:absolute;inset:0;overflow:visible}#boostFill{fill:#06090ded}#boostTrack{fill:none;stroke:#ffffff29;stroke-width:7}#boostArc{fill:none;stroke:var(--hud-cyan);stroke-width:7;stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(53,224,232,.55));transition:stroke .2s}#boostDial.ready #boostArc{stroke:#7cf6a0}#boostDial.firing #boostArc{stroke:#ffd23f;filter:drop-shadow(0 0 12px rgba(255,210,63,.9))}#boostInner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}#boostMark{width:77%;height:auto;display:block;filter:brightness(1.75) saturate(.78) drop-shadow(0 1px 3px rgba(0,0,0,.95)) drop-shadow(0 0 10px rgba(248,90,245,.5));transition:opacity .25s ease,filter .25s ease}#boostDial:not(.ready):not(.firing) #boostMark{opacity:.82}#boostDial.firing #boostMark{filter:brightness(1.75) saturate(.78) drop-shadow(0 1px 3px rgba(0,0,0,.95)) drop-shadow(0 0 16px rgba(255,210,63,.85))}#boostDial.firing #boostFill{fill:#160d04f0}#boostDial.firing #boostInner{animation:pulse .35s ease-in-out infinite alternate}@keyframes pulse{0%{transform:scale(1)}to{transform:scale(1.07)}}#laneStrip{width:clamp(26px,3vw,38px);height:clamp(110px,17vh,180px)}.screen{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:Barlow Condensed,Helvetica Neue,Arial,sans-serif;color:var(--hud-white);text-shadow:var(--hud-shadow);background:radial-gradient(ellipse at 50% 55%,#04080c52,#030609c7 78%);opacity:0;pointer-events:none;transition:opacity .4s ease;visibility:hidden}.screen.on{opacity:1;pointer-events:auto;visibility:visible}.title{font-weight:700;font-size:clamp(56px,12vh,138px);line-height:.84;letter-spacing:.015em;margin:0}.title .accent{color:var(--hud-amber)}.wordmark{margin:0;line-height:0}.wordmark img{display:block;width:min(640px,88vw);height:auto;max-height:34vh;object-fit:contain;filter:drop-shadow(0 6px 22px rgba(0,0,0,.6))}.tagline{font-weight:500;font-size:clamp(14px,1.9vh,21px);letter-spacing:.34em;margin-top:.9em;opacity:.82;text-transform:uppercase}.keys{margin-top:clamp(24px,4.5vh,52px);display:flex;gap:clamp(18px,3vw,40px);flex-wrap:wrap;justify-content:center}.keys.touch,.hint .touch{display:none}@media(hover:none)and (pointer:coarse){.keys.desk{display:none}.keys.touch{display:flex}.hint .desk{display:none}.hint .touch{display:inline}}.key{display:flex;flex-direction:column;align-items:center;gap:.45em}.key .caps{display:flex;gap:5px}.key kbd{font-family:inherit;font-weight:700;font-size:clamp(12px,1.5vh,16px);letter-spacing:.06em;padding:.34em .62em;min-width:2.1em;text-align:center;border:1.5px solid rgba(255,255,255,.42);border-radius:5px;background:#ffffff12;text-shadow:none}.key span{font-size:clamp(11px,1.3vh,14px);letter-spacing:.17em;opacity:.68;text-transform:uppercase;font-weight:600}.cta{margin-top:clamp(28px,5vh,58px);cursor:pointer;font-family:inherit;font-weight:700;font-size:clamp(19px,2.5vh,28px);letter-spacing:.22em;text-transform:uppercase;color:#0b0f12;background:var(--hud-amber);border:0;border-radius:3px;padding:.62em 2.1em;text-shadow:none;box-shadow:0 6px 26px #ffc61a4d;transition:transform .14s ease,box-shadow .14s ease}.cta:hover{transform:translateY(-2px);box-shadow:0 10px 34px #ffc61a73}.cta:active{transform:translateY(0)}.credit{position:absolute;left:0;right:0;bottom:clamp(10px,2vh,20px);text-align:center;padding:0 16px;font-size:clamp(13px,1.8vh,16px);letter-spacing:.08em;font-weight:500;opacity:.55;text-shadow:var(--hud-shadow);user-select:text;-webkit-user-select:text}.credit a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(244,246,247,.3);transition:opacity .2s ease}.credit a:hover{opacity:.8}.gover .title{font-size:clamp(38px,7.5vh,88px)}.scoreline{font-weight:600;font-size:clamp(46px,9vh,104px);line-height:1;font-variant-numeric:tabular-nums}.scorelabel{font-weight:700;font-size:clamp(11px,1.4vh,15px);letter-spacing:.3em;color:var(--hud-amber)}.pbflag{font-weight:700;letter-spacing:.22em;color:var(--hud-amber);font-size:clamp(13px,1.7vh,18px);margin-top:.5em}.grid{margin-top:clamp(22px,3.6vh,42px);display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:clamp(14px,2.4vw,40px);max-width:min(620px,86vw);width:100%}.cell{text-align:center}.cell .k{font-weight:700;font-size:clamp(9px,1.15vh,12px);letter-spacing:.19em;color:var(--hud-amber);opacity:.92}.cell .v{font-weight:600;font-size:clamp(20px,3vh,34px);line-height:1.1;font-variant-numeric:tabular-nums}.hint{margin-top:clamp(18px,3vh,34px);font-size:clamp(11px,1.4vh,15px);letter-spacing:.2em;opacity:.55;text-transform:uppercase;font-weight:600}.paused .title{font-size:clamp(34px,6vh,64px)}
