:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--accent:#42f5ff;--accent-rgb:66, 245, 255;--hazard:#ff304f;--ink:#ecfbff;--muted:#7f9ba3;color:var(--ink);font-synthesis:none;text-rendering:geometricprecision;background:#03050a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#game-shell{width:100%;height:100%;margin:0;overflow:hidden}body{-webkit-user-select:none;user-select:none;overscroll-behavior:none;background:#020307}button,select,input{font:inherit}button{color:inherit}#game-shell{isolation:isolate;background:radial-gradient(circle at 50% 35%,#0b1730,#020307 65%);position:relative}#game-canvas{touch-action:none;outline:none;width:100%;height:100%;position:absolute;inset:0}#vignette{pointer-events:none;mix-blend-mode:multiply;background:radial-gradient(#0000 35%,#0000006b 100%),linear-gradient(#04070e2e,#0000 45%,#0000005c);position:absolute;inset:0}.screen{z-index:4;pointer-events:none;display:none;position:absolute;inset:0}.screen.is-visible{pointer-events:auto;display:flex}#loading-screen{text-transform:uppercase;background:radial-gradient(circle,#081e37db,#020409fa 60%);flex-direction:column;justify-content:center;align-items:center;gap:.6rem}#loading-screen h1{text-transform:uppercase;letter-spacing:.14em;margin:0;font-size:clamp(2.1rem,6vw,5rem)}#loading-status{color:var(--muted);letter-spacing:.2em;font-size:.66rem}.recovery-button{border:1px solid color-mix(in srgb, var(--cyan) 52%, transparent);color:var(--text);background:color-mix(in srgb, var(--cyan) 9%, var(--panel));font:700 .7rem/1 var(--font-display);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;border-radius:.32rem;margin-top:1rem;padding:.7rem 1.1rem}.recovery-button:hover,.recovery-button:focus-visible{border-color:var(--cyan);box-shadow:0 0 1.3rem color-mix(in srgb, var(--cyan) 22%, transparent)}.recovery-button:disabled{cursor:wait;opacity:.66}.brand-mark{gap:.35rem;display:flex;transform:skew(-20deg)}.brand-mark span{background:var(--accent);width:5px;height:32px;box-shadow:0 0 15px var(--accent)}.brand-mark span:nth-child(2){height:48px}.loader{background:#ffffff1a;width:min(280px,58vw);height:2px;margin-top:1rem;overflow:hidden}.loader i{background:var(--accent);width:38%;height:100%;box-shadow:0 0 12px var(--accent);animation:1.2s ease-in-out infinite load;display:block}@keyframes load{0%{transform:translate(-110%)}to{transform:translate(370%)}}#menu-screen{padding:max(2rem, env(safe-area-inset-top)) max(5vw, env(safe-area-inset-right)) max(2rem, env(safe-area-inset-bottom)) max(7vw, env(safe-area-inset-left));background:linear-gradient(90deg,#01040aed,#02050b94 40%,#0000 72%);align-items:center}.menu-copy{max-width:42rem}.eyebrow{color:var(--accent);letter-spacing:.26em;text-transform:uppercase;text-shadow:0 0 12px rgba(var(--accent-rgb), .7);margin:0 0 .7rem;font:700 .68rem/1.3 ui-monospace,monospace}.menu-copy h1{letter-spacing:-.075em;text-transform:uppercase;filter:drop-shadow(0 0 35px rgba(var(--accent-rgb), .16));margin:0;font-size:clamp(4rem,10vw,9.5rem);font-weight:900;line-height:.74}.menu-copy h1 span{color:#0000;-webkit-text-stroke:1px #ecfbffbf}.tagline{color:#b4c9ce;letter-spacing:.04em;margin:2rem 0;line-height:1.65}.mode-picker{background:#030a12c2;border:1px solid #91b9c633;width:-moz-fit-content;width:fit-content;margin-bottom:.45rem;display:flex}.mode-picker button{min-width:5.6rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-right:1px solid #91b9c629;padding:.55rem .72rem;font:800 .62rem ui-monospace,monospace}.mode-picker button:last-child{border-right:0}.mode-picker button:hover,.mode-picker button:focus-visible{color:#fff;outline:none}.mode-picker button.is-selected{color:var(--accent);background:rgba(var(--accent-rgb),.12);box-shadow:inset 0 -2px var(--accent)}.mode-detail{min-height:1em;color:rgba(var(--accent-rgb),.75);letter-spacing:.13em;margin:0 0 .75rem;font:700 .58rem ui-monospace,monospace}.menu-actions{align-items:center;gap:.7rem;display:flex}.primary-button{border:1px solid var(--accent);background:rgba(var(--accent-rgb), .12);color:#fff;text-transform:uppercase;letter-spacing:.22em;cursor:pointer;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);min-width:12rem;box-shadow:inset 0 0 22px rgba(var(--accent-rgb), .07), 0 0 22px rgba(var(--accent-rgb), .16);padding:.9rem 2.2rem;font-weight:800;transition:background .15s,transform .15s}.primary-button:hover,.primary-button:focus-visible{background:rgba(var(--accent-rgb), .28);outline:none;transform:translateY(-1px)}.secondary-button{border:1px solid rgba(var(--accent-rgb), .36);color:#cce4e9;text-transform:uppercase;letter-spacing:.14em;cursor:pointer;background:#040c16c2;padding:.9rem 1.25rem;font-size:.72rem;font-weight:800}.secondary-button:hover,.secondary-button:focus-visible{border-color:var(--accent);color:#fff;background:rgba(var(--accent-rgb), .12);outline:none}.icon-button,.hud-button{cursor:pointer;background:#030a11bf;border:1px solid #96dce64d;width:3rem;height:3rem}.icon-button:hover,.hud-button:hover{border-color:var(--accent)}.menu-best{color:var(--muted);letter-spacing:.16em;margin-top:1.4rem;font:700 .72rem ui-monospace,monospace}.mode-status{color:rgba(var(--accent-rgb), .78);letter-spacing:.16em;margin:.45rem 0 0;font:700 .62rem ui-monospace,monospace}.control-hint{right:max(3vw, env(safe-area-inset-right));bottom:max(3vh, env(safe-area-inset-bottom));color:var(--muted);letter-spacing:.15em;align-items:center;gap:.35rem;font:700 .62rem ui-monospace,monospace;display:flex;position:absolute}kbd{background:#050c14bf;border:1px solid #ffffff47;place-items:center;width:2rem;height:2rem;display:grid;box-shadow:inset 0 -3px #00000059}.hud{padding:max(1.2rem, env(safe-area-inset-top)) max(1.2rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1.5rem, env(safe-area-inset-left));justify-content:space-between;align-items:flex-start}.distance-block{filter:drop-shadow(0 2px 5px #000);grid-template-columns:auto auto;align-items:end;column-gap:.55rem;display:grid}.distance-block span{color:var(--muted);letter-spacing:.24em;grid-column:1/-1;font:700 .6rem ui-monospace,monospace}.distance-block strong{letter-spacing:-.08em;font:800 clamp(1.8rem,4vw,3.7rem)/1 ui-monospace,monospace}.distance-block small{color:var(--accent);margin-bottom:.3rem;font:800 .62rem ui-monospace,monospace}.milestone{color:var(--accent);letter-spacing:.25em;text-shadow:0 0 18px var(--accent);font:800 .75rem ui-monospace,monospace;position:absolute;top:18%;left:50%;transform:translate(-50%)}.hud-button{pointer-events:auto;width:2.5rem;height:2.5rem;margin-left:auto}.rival-standings{top:max(4.8rem, calc(env(safe-area-inset-top) + 4rem));right:max(1.2rem, env(safe-area-inset-right));letter-spacing:.08em;gap:.35rem;width:min(14rem,34vw);margin:0;padding:0;font:700 .62rem ui-monospace,monospace;list-style:none;display:grid;position:absolute}.rival-standings li{color:#93aeb7;background:linear-gradient(90deg,#040a12b8,#0000);border-left:2px solid #8cbecd3d;justify-content:space-between;gap:.75rem;padding:.35rem .48rem;display:flex}.rival-standings li.is-player{color:#fff;border-color:var(--accent)}.rival-standings li.is-eliminated{opacity:.36;text-decoration:line-through}.rival-standings strong{color:var(--accent);font:inherit}.death,.pause-panel{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(circle,#0c08124d,#010205c7);flex-direction:column;justify-content:center;align-items:center}.death:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 5px,#ff304f06 6px);position:absolute;inset:0}.result-grid{grid-template-columns:auto auto;align-items:baseline;gap:.2rem 2rem;min-width:min(24rem,80vw);display:grid}.result-grid span{color:var(--muted);letter-spacing:.2em;font:700 .7rem ui-monospace,monospace}.result-grid strong{text-align:right;letter-spacing:-.08em;font:800 clamp(2.2rem,6vw,4.4rem) ui-monospace,monospace}.death .primary-button{margin-top:1.6rem}.new-best{color:#ffd75b;letter-spacing:.2em;text-shadow:0 0 15px #ffb300;font-weight:800}.retry-hint{color:var(--muted);letter-spacing:.18em;font:700 .62rem ui-monospace,monospace}.pause-panel h2{text-transform:uppercase;margin:0 0 1.4rem;font-size:clamp(2.5rem,7vw,5rem)}.text-button{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;cursor:pointer;background:0 0;border:0;margin-top:1rem}dialog{border:1px solid rgba(var(--accent-rgb), .35);width:min(34rem,100vw - 2rem);max-height:calc(100vh - 2rem);color:var(--ink);box-shadow:0 0 80px #000, inset 0 0 60px rgba(var(--accent-rgb), .025);background:#03080ff5;padding:0;overflow:auto}dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000206b8}dialog form{gap:1rem;padding:1.3rem 1.5rem 1.7rem;display:grid}dialog header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding-bottom:1rem;display:flex}dialog h2{text-transform:uppercase;letter-spacing:.06em;margin:0}dialog label{color:#b4c9ce;letter-spacing:.06em;gap:.45rem;font-size:.8rem;display:grid}dialog select{color:#fff;background:#07101b;border:1px solid #ffffff2e;width:100%;padding:.65rem}dialog .toggle{grid-template-columns:1fr auto;align-items:center}.toggle span{gap:.2rem;display:grid}.toggle small{color:var(--muted);font-size:.65rem}input[type=checkbox]{appearance:none;background:#09121a;border:1px solid #41606b;border-radius:1rem;width:2.6rem;height:1.35rem;position:relative}input[type=checkbox]:after{content:"";background:#77929a;border-radius:50%;width:.85rem;height:.85rem;transition:all .15s;position:absolute;top:.19rem;left:.22rem}input[type=checkbox]:checked{border-color:var(--accent);background:rgba(var(--accent-rgb), .18)}input[type=checkbox]:checked:after{background:var(--accent);box-shadow:0 0 9px var(--accent);left:1.45rem}input[type=range]{accent-color:var(--accent)}.garage-dialog{width:min(68rem,100vw - 2rem)}.garage-dialog form{grid-template-columns:14rem 1fr;gap:1.4rem 1.8rem}.garage-dialog header{grid-column:1/-1}.garage-dialog h3{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;margin:0 0 .7rem;font:800 .66rem ui-monospace,monospace}.garage-summary{border:1px solid rgba(var(--accent-rgb), .25);background:radial-gradient(circle at 50% 28%, rgba(var(--accent-rgb), .2), transparent 32%), linear-gradient(145deg, #08131e, #03070d);flex-direction:column;justify-content:flex-end;min-height:18rem;padding:1.2rem;display:flex;position:relative;overflow:hidden}.garage-summary:before{content:"◉";text-align:center;color:var(--accent);text-shadow:0 0 35px var(--accent);opacity:.88;font-size:7rem;line-height:1;position:absolute;inset:1.2rem 0 auto}.garage-summary span{color:var(--muted);letter-spacing:.2em;font:700 .58rem ui-monospace,monospace}.garage-summary strong{letter-spacing:.08em;margin:.3rem 0;font-size:1.25rem}.garage-summary small{color:var(--muted);line-height:1.45}.cosmetic-grid{grid-template-columns:repeat(4,minmax(7rem,1fr));gap:.55rem;display:grid}.cosmetic-card{text-align:left;color:#c8dde2;cursor:pointer;background:#050d16c7;border:1px solid #91b9c62e;grid-template-columns:1.3rem 1fr;align-content:center;gap:.25rem .55rem;min-height:6.4rem;padding:.7rem;display:grid}.cosmetic-card i{border:2px solid;border-radius:50%;grid-row:1/3;align-self:center;width:1.1rem;height:1.1rem;box-shadow:inset 0 0 8px,0 0 8px}.cosmetic-card strong{text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}.cosmetic-card small{color:var(--muted);font-size:.56rem;line-height:1.35}.cosmetic-card:hover,.cosmetic-card:focus-visible{border-color:var(--accent);outline:none}.cosmetic-card.is-equipped{border-color:var(--accent);color:var(--accent);background:rgba(var(--accent-rgb), .1);box-shadow:inset 0 0 22px rgba(var(--accent-rgb), .06)}.cosmetic-card.is-locked{filter:grayscale();opacity:.38}.cosmetic-card.is-locked i{box-shadow:none;border-radius:2px}.replays-dialog{width:min(46rem,100vw - 2rem)}.replay-list{gap:.55rem;min-height:7rem;display:grid}.replay-row{background:linear-gradient(100deg, rgba(var(--accent-rgb),.055), #050d16d1 42%);border:1px solid #91b9c62e;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.replay-row div{gap:.28rem;min-width:0;display:grid}.replay-row strong{color:#f2fcff;letter-spacing:.04em;font:800 1.1rem ui-monospace,monospace}.replay-row small{color:var(--muted);letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap;font:700 .58rem ui-monospace,monospace;overflow:hidden}.replay-row .secondary-button{flex:none;padding:.65rem .9rem}.empty-state{color:var(--muted);text-align:center;letter-spacing:.18em;align-self:center;margin:2rem 0;font:700 .66rem ui-monospace,monospace}#orientation-gate{z-index:20;text-align:center;background:#03060c;align-content:center;place-items:center;display:none;position:absolute;inset:0}.rotate-icon{color:var(--accent);font-size:4rem;animation:1.8s ease-in-out infinite rotate-device}#orientation-gate h2{text-transform:uppercase;letter-spacing:.08em}#orientation-gate p{color:var(--muted)}@keyframes rotate-device{0%,30%{transform:rotate(90deg)}70%,to{transform:rotate(0)}}#status-toast{z-index:30;left:50%;bottom:max(1rem, env(safe-area-inset-bottom));border:1px solid var(--accent);color:#dffcff;background:#040c14eb;padding:.7rem 1rem;font-size:.72rem;transition:transform .25s;position:absolute;transform:translate(-50%,150%)}#status-toast.is-visible{transform:translate(-50%)}.high-contrast{--ink:#fff;--muted:#bcd4da}.high-contrast #vignette{opacity:.55}.reduced-motion *,.reduced-motion :before,.reduced-motion :after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important}@media (orientation:portrait) and (pointer:coarse){#orientation-gate{display:grid}}@media (max-height:500px){#menu-screen{align-items:center}.menu-copy h1{font-size:clamp(3rem,14vh,5.6rem)}.tagline{margin:.8rem 0;font-size:.75rem}.control-hint{display:none}dialog{max-height:calc(100vh - .5rem)}dialog form{grid-template-columns:1fr 1fr;gap:.6rem 1rem;padding:.8rem 1rem}dialog header{grid-column:1/-1}.garage-dialog form{grid-template-columns:10rem 1fr;display:grid}.garage-summary{min-height:12rem}.garage-summary:before{font-size:4rem}.cosmetic-grid{grid-template-columns:repeat(4,minmax(5.8rem,1fr))}.cosmetic-card{min-height:4.6rem}}@media (max-width:760px){.cosmetic-grid{grid-template-columns:repeat(2,minmax(7rem,1fr))}.garage-dialog form{grid-template-columns:1fr}.garage-dialog header{grid-column:1}.garage-summary{min-height:10rem}.rival-standings{width:12rem}}
