:root{--bg: #16181f;--panel: #22252f;--panel2: #2b2f3b;--text: #f2f0ea;--muted: #9aa0ae;--accent: #e5484d;--accent2: #ffb020;--good: #30c463}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,-apple-system,sans-serif;-webkit-user-select:none;user-select:none;touch-action:manipulation;overscroll-behavior:none}h1,h2,h3{margin:.2em 0}a{color:var(--accent2);text-decoration:none}button{background:var(--panel2);color:var(--text);border:1px solid #3a3f4d;border-radius:10px;padding:10px 18px;font-size:16px;cursor:pointer;min-height:44px}button:hover{filter:brightness(1.15)}button.primary{background:var(--accent);border-color:#b13a3e;font-weight:700}button.good{background:#1f7a43;border-color:#2c9e58}button:disabled{opacity:.45;cursor:default}input,select{background:var(--panel2);color:var(--text);border:1px solid #3a3f4d;border-radius:8px;padding:10px 12px;font-size:16px;min-height:44px}.menu{display:flex;flex-direction:column;gap:12px;max-width:520px;margin:0 auto;padding:24px 16px}.menu-wide{max-width:900px}.panel{background:var(--panel);border:1px solid #303542;border-radius:14px;padding:16px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.muted{color:var(--muted);font-size:14px}.badge{display:inline-block;background:var(--panel2);border-radius:8px;padding:2px 10px;font-size:13px;color:var(--muted)}.seat{display:flex;align-items:center;gap:10px;background:var(--panel2);border-radius:10px;padding:8px 12px;margin:6px 0}.dot{width:18px;height:18px;border-radius:50%;border:2px solid #111;flex:none}.title-xl{font-size:40px;font-weight:900;letter-spacing:1px;color:var(--accent);text-shadow:3px 3px 0 #00000055}.error-box{background:#4a2026;border:1px solid #8a3a42;border-radius:10px;padding:10px 14px;color:#ffd7d9}.warn-box{background:#4a3c1f;border:1px solid #8a7a3a;border-radius:10px;padding:10px 14px;color:#ffe9b8}.race-wrap{position:fixed;inset:0}.race-wrap canvas{display:block}.hud{position:absolute;top:max(10px,env(safe-area-inset-top));left:12px;display:flex;gap:10px;z-index:5;pointer-events:none}.hud .chip{background:#000000a0;border-radius:10px;padding:6px 12px;font-size:18px;font-weight:700;color:#fff}.gas-btn{position:absolute;right:max(16px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:34vw;max-width:220px;aspect-ratio:1.2;border-radius:50%;background:#30c463cc;border:4px solid #1a6b37;color:#fff;font-size:30px;font-weight:900;z-index:6;touch-action:none}.gas-btn.left{right:auto;left:max(16px,env(safe-area-inset-left))}.steer-zone{position:absolute;bottom:0;top:50%;width:30vw;z-index:6;background:transparent;border:none}.steer-zone.l{left:0}.steer-zone.r{left:30vw;width:26vw}.overlay{position:absolute;inset:0;background:#000000b0;display:flex;align-items:center;justify-content:center;z-index:10;padding:16px}.overlay .card{max-width:640px;width:100%}.countdown{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:90px;font-weight:900;color:#fff;text-shadow:0 4px 0 #000;z-index:9;pointer-events:none}table.results{width:100%;border-collapse:collapse}table.results td,table.results th{padding:6px 8px;text-align:left;border-bottom:1px solid #3a3f4d}.qr{background:#fff;padding:12px;border-radius:12px;display:inline-block}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:640px){.grid2{grid-template-columns:1fr}}.rotate-hint{position:absolute;inset:0;z-index:20;background:var(--bg);display:none;align-items:center;justify-content:center;text-align:center;font-size:22px;padding:20px}@media(orientation:portrait)and (max-width:820px){.rotate-hint.on-race{display:flex}}.upgrade-box{position:sticky;top:0;z-index:60;display:flex;gap:10px;align-items:center;justify-content:center}.vehicle-picker{display:flex;flex-direction:column;gap:10px}.vehicle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.vehicle-card{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;padding:10px 8px;border-radius:12px;border:2px solid #ffffff22;background:#ffffff0d;color:inherit;cursor:pointer;min-width:0;transition:transform .12s ease,border-color .12s ease}.vehicle-card:hover:not(:disabled){transform:translateY(-2px);border-color:#fff5}.vehicle-card:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.vehicle-card.selected{border-color:var(--accent);background:#ffffff1a;box-shadow:0 0 0 2px #0005 inset}.vehicle-card:disabled{opacity:.45;cursor:default}.vehicle-card.mystery{cursor:help;border-style:dashed}.vehicle-card.reveal{animation:vehicle-reveal 1.5s ease}@keyframes vehicle-reveal{0%{transform:scale(.6) rotate(-8deg)}40%{transform:scale(1.15) rotate(4deg)}to{transform:none}}.vehicle-mystery{width:64px;height:64px;display:grid;place-items:center;font-size:40px;font-weight:900;color:var(--muted)}.vehicle-name{font-weight:800}.vehicle-blurb{font-size:12px;line-height:1.3;min-height:2.6em}.vehicle-icon{image-rendering:auto;flex:none}.vehicle-icon-fallback{font-size:20px}.stat-bars{width:100%;display:flex;flex-direction:column;gap:2px;margin-top:4px}.stat{display:flex;justify-content:space-between;align-items:center;font-size:11px;gap:6px}.stat .bar{display:inline-flex;gap:2px}.stat .bar i{width:10px;height:6px;border-radius:2px;background:#fff2}.stat .bar i.on{background:var(--accent)}.picker-hint{font-style:italic}.honk-btn{font-weight:800}.tabs{display:flex;gap:6px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px}.chip.on{background:var(--accent);color:#111}.chip-label{font-size:12px}@media(max-width:600px){.vehicle-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.vehicle-card{flex:0 0 72%;scroll-snap-align:center}.chip-label{display:none}}@media(prefers-reduced-motion:reduce){.vehicle-card,.vehicle-card.reveal{transition:none;animation:none}}input{-webkit-user-select:text;user-select:text}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.home-fab{position:fixed;top:10px;right:10px;z-index:50}.home{position:relative;min-height:100%;overflow-x:hidden;--rally: #ff6a13;--rally2: #ffd23f}.rally-splash{position:fixed;inset:0;z-index:0;display:block}.home-vignette{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 60% 55% at 50% 50%,#0c0e14b8,#0c0e1459 70%,#0c0e141a)}.home-content{position:relative;z-index:2;max-width:1080px;margin:0 auto;padding:max(20px,env(safe-area-inset-top)) 20px max(20px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:18px;min-height:100vh}.logo{display:inline-flex;flex-direction:column;line-height:.85;transform:skew(-12deg);user-select:none}.logo-top,.logo-bottom{font-family:var(--display);font-weight:900;font-style:italic;letter-spacing:1px}.logo-top{font-size:22px;color:var(--rally2);text-shadow:2px 2px 0 #000a}.logo-bottom{font-size:44px;color:#fff;padding:2px 14px 4px 8px;margin-top:2px;position:relative;margin-right:34px;background:var(--rally);text-shadow:3px 3px 0 #0008}.logo-bottom:after{content:"";position:absolute;top:0;bottom:0;left:100%;width:30px;background:linear-gradient(90deg,transparent 0 12%,var(--rally2) 12% 40%,transparent 40% 55%,#fff 55% 75%,transparent 75%)}.logo-xl .logo-top{font-size:clamp(28px,6vw,56px)}.logo-xl .logo-bottom{font-size:clamp(56px,13vw,128px);padding:4px 28px 8px 14px}.home-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.driver-card{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#10121ac7;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid #ffffff1f;border-left:4px solid var(--rally);border-radius:12px;padding:8px 12px}.driver-plate{display:flex;flex-direction:column;line-height:1.1}.driver-plate strong{font-size:17px}.driver-label{font-size:10px;letter-spacing:2px;color:var(--rally2);font-weight:800}.driver-stats{display:flex;gap:12px;font-weight:700;font-variant-numeric:tabular-nums}.driver-actions{display:flex;gap:6px}.chip-btn{min-height:36px;padding:6px 14px;border-radius:999px;font-size:14px;font-weight:700;background:#ffffff14;border-color:#ffffff2a}.chip-btn.accent{background:var(--rally);border-color:var(--rally);color:#160b03}.home-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px;align-items:start}@media(max-width:820px){.home-grid{grid-template-columns:1fr}}.stage-menu{display:flex;flex-direction:column;gap:10px}.stage-btn{position:relative;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;column-gap:14px;align-items:center;text-align:left;min-height:72px;padding:12px 18px;background:#10121acc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid #ffffff1f;border-radius:14px;overflow:hidden;transition:transform .12s ease,border-color .12s ease,background .12s ease}.stage-btn:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:#fff3;transition:width .15s ease,background .15s}.stage-btn:hover,.stage-btn:focus-visible{transform:translate(4px) skew(-2deg);border-color:var(--rally);filter:none;background:#1c1e28e6}.stage-btn:hover:before,.stage-btn:focus-visible:before{background:var(--rally);width:8px}.stage-btn:focus-visible{outline:3px solid var(--rally2);outline-offset:2px}.stage-no{grid-row:1 / span 2;font-family:var(--display);font-style:italic;font-weight:900;font-size:14px;color:#160b03;background:var(--rally2);border-radius:6px;padding:6px 8px;transform:skew(-12deg)}.stage-name{font-family:var(--display);font-weight:900;font-style:italic;font-size:22px;letter-spacing:.5px;text-transform:uppercase}.stage-desc{grid-column:2;color:var(--muted);font-size:14px}.stage-arrow{grid-column:3;grid-row:1 / span 2;font-size:22px;color:#fff6;transition:transform .15s,color .15s}.stage-btn:hover .stage-arrow{transform:translate(4px);color:var(--rally2)}.stage-btn.hero{min-height:104px;background:repeating-linear-gradient(-60deg,transparent 0 18px,#ffffff0d 18px 36px),linear-gradient(100deg,#ff6a13,#e5341f 60%,#b81d2d);border-color:#ff9a50}.stage-btn.hero:before{background:var(--rally2);width:8px}.stage-btn.hero .stage-name{font-size:30px;text-shadow:2px 2px 0 #0006}.stage-btn.hero .stage-desc{color:#ffe8d6}.stage-btn.hero .stage-arrow{color:#fff}.stage-btn.hero:hover{background:repeating-linear-gradient(-60deg,transparent 0 18px,#ffffff14 18px 36px),linear-gradient(100deg,#ff7a2a,#ee4a2a 60%,#c52a38)}.stage-btn.small{min-height:54px;display:flex;justify-content:center}.stage-btn.small .stage-name{font-size:16px}.stage-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.join-row{display:flex;gap:8px}.join-row input{flex:1;min-width:0;text-transform:uppercase;letter-spacing:4px;font-weight:800;background:#10121ad9;border-color:#ffffff2a;border-radius:12px}.join-row button{border-radius:12px}.side{display:flex;flex-direction:column;gap:12px}.glass{background:#10121acc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid #ffffff1f;border-radius:14px;padding:14px 16px}.section-kicker{font-size:11px;letter-spacing:2.5px;font-weight:900;color:var(--rally2);margin-bottom:8px}.chaos-feature{display:flex;gap:12px;align-items:flex-start;min-height:74px;animation:chaos-in .35s ease-out}.chaos-icon{font-size:34px;line-height:1;filter:drop-shadow(2px 2px 0 #0006)}.chaos-title{font-family:var(--display);font-style:italic;font-weight:900;font-size:18px;text-transform:uppercase}@keyframes chaos-in{0%{opacity:0;transform:translateY(8px) rotate(-1deg)}to{opacity:1;transform:none}}.chaos-dots{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}.chaos-dots button{min-height:30px;padding:2px 6px;font-size:15px;border-radius:8px;background:transparent;border-color:transparent;opacity:.55}.chaos-dots button.on{opacity:1;background:#ffffff1a;border-color:#fff3}.track-list{display:grid;grid-template-columns:1fr 1fr;gap:6px}.track-pill{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:10px;background:#ffffff0d;border-left:3px solid var(--rally)}.track-pill strong{font-size:14px}.track-pill .muted{font-size:12px;text-transform:capitalize}.toggles{display:flex;flex-direction:column;gap:4px;padding:8px}.toggle-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;text-align:left;width:100%;min-height:48px;padding:8px 10px;border-radius:10px;background:transparent;border:0;cursor:pointer;font-size:15px}.toggle-row:hover{background:#ffffff0d;filter:none}.toggle-row:focus-within{outline:2px solid var(--rally2)}.toggle-sub{display:block;font-size:12px}.age{font-size:10px;font-weight:900;background:#e5484d;color:#fff;border-radius:4px;padding:1px 4px;vertical-align:2px}.switch{width:42px;height:24px;border-radius:999px;background:#ffffff26;position:relative;transition:background .15s}.switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s}.switch.on{background:var(--rally)}.switch.on:after{transform:translate(18px)}.home-footer{margin-top:auto;text-align:center;color:#d8dbe3;font-size:13px;text-shadow:0 1px 2px #000}kbd{font-family:inherit;font-weight:800;font-size:11px;background:#10121acc;border:1px solid #ffffff33;border-bottom-width:2px;border-radius:5px;padding:1px 6px}.intro{position:fixed;inset:0;z-index:80;width:100%;border:0;border-radius:0;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:radial-gradient(ellipse at center,#0a0c128c,#0a0c12eb);cursor:pointer;animation:intro-in .5s ease-out}.intro:hover{filter:none}.intro .logo{animation:logo-slam .7s cubic-bezier(.2,1.6,.4,1) both}.intro-stripes{position:absolute;left:0;right:0;top:50%;height:220px;transform:translateY(-50%) skewY(-6deg);z-index:-1;background:repeating-linear-gradient(90deg,#ffffff10 0 40px,transparent 40px 80px);border-top:6px solid var(--rally);border-bottom:6px solid var(--rally2)}.intro-tag{font-size:clamp(14px,2.4vw,20px);color:#f2f0ea;text-shadow:0 2px 4px #000;text-align:center}.intro-press{font-family:var(--display);font-weight:900;letter-spacing:3px;font-size:clamp(14px,2.6vw,20px);color:var(--rally2);animation:blink 1.1s steps(2,start) infinite}@keyframes intro-in{0%{opacity:0}to{opacity:1}}@keyframes logo-slam{0%{transform:skew(-12deg) scale(2.4) rotate(-6deg);opacity:0}to{transform:skew(-12deg);opacity:1}}@keyframes blink{to{visibility:hidden}}.modal-backdrop{position:fixed;inset:0;z-index:90;background:#05060ab3;display:grid;place-items:center;padding:16px}.modal{width:min(420px,100%);background:#1b1e27;border:1px solid #ffffff22;border-top:5px solid var(--rally, #ff6a13);border-radius:16px;padding:18px 20px 20px;display:flex;flex-direction:column;gap:12px;box-shadow:0 20px 60px #000a}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#ffffff0d;border-radius:10px;padding:4px}.auth-tabs button{border:0;background:transparent;min-height:38px;font-weight:800}.auth-tabs button.active{background:var(--rally, #ff6a13);color:#160b03}.auth-title{font-family:var(--display);font-style:italic;font-size:22px;margin:4px 0 0}.auth-sub{margin:0}.field{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700;color:#c9ccd6}.field input{width:100%}.pw-row{display:flex;gap:6px}.pw-row input{flex:1;min-width:0}.pw-toggle{min-width:48px;padding:0 10px}.auth-error{background:#4a2026;border:1px solid #8a3a42;border-radius:8px;padding:8px 12px;color:#ffd7d9;font-size:14px}.auth-actions{justify-content:flex-end}.toast{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:95;background:#10121a;border:1px solid var(--rally, #ff6a13);border-radius:999px;padding:10px 18px;font-weight:700;box-shadow:0 8px 30px #0008}@media(max-width:520px){.logo-bottom{font-size:34px}.stage-name{font-size:18px}.stage-btn.hero .stage-name{font-size:24px}.track-list{grid-template-columns:1fr}.driver-card{width:100%;justify-content:space-between}}@media(prefers-reduced-motion:reduce){.intro,.intro .logo,.chaos-feature,.intro-press{animation:none}.stage-btn{transition:none}}.home-vignette.strong{background:#0a0c128c}.modal-backdrop.clear{background:transparent;z-index:5}.modal.gate{align-items:stretch;gap:14px;padding:24px}.modal.gate .logo{align-self:center;margin-bottom:4px}button.big{min-height:52px;font-size:18px}:root{--display: "Russo One", "Arial Black", Impact, system-ui, sans-serif;--rally: #ff6a13;--rally2: #ffd23f;--bg: #0e1016;--panel: rgba(22, 25, 34, .86);--panel2: #232734;--line: #ffffff1a;--text: #f4f2ec;--muted: #9ba1b0;--accent: #ff6a13;--accent2: #ffd23f;--radius: 16px}body{font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;background-color:var(--bg);background-image:radial-gradient(1200px 600px at 85% -10%,rgba(255,106,19,.16),transparent 60%),radial-gradient(900px 500px at -10% 110%,rgba(255,210,63,.08),transparent 60%),repeating-linear-gradient(-45deg,rgba(255,255,255,.018) 0 2px,transparent 2px 9px);background-attachment:fixed}#root:before{content:"";position:fixed;left:0;right:0;top:0;height:4px;z-index:40;pointer-events:none;background:linear-gradient(90deg,var(--rally) 0 60%,var(--rally2) 60% 80%,#fff 80% 90%,transparent 90%)}h1,h2,h3{font-family:var(--display);font-weight:400;letter-spacing:.5px}h1{font-size:clamp(30px,5vw,44px);text-transform:uppercase;font-style:italic;transform:skew(-6deg);margin:.1em 0 .2em}h1:after{content:"";display:block;width:72px;height:5px;margin-top:6px;background:linear-gradient(90deg,var(--rally) 0 60%,var(--rally2) 60%);border-radius:3px}h2{font-size:18px;text-transform:uppercase;letter-spacing:1px;color:#fff}.title-xl{font-family:var(--display);color:var(--rally)}.menu{padding:28px 18px 40px;gap:14px}.menu-wide{max-width:1000px}.panel{background:var(--panel);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 10px 30px #00000040}button{background:var(--panel2);border:1px solid #ffffff1f;border-radius:12px;font-weight:600;transition:transform .08s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}button:hover:not(:disabled){filter:none;background:#2c3141;border-color:#ffffff3a}button:active:not(:disabled){transform:translateY(1px) scale(.99)}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--rally2);outline-offset:2px}button.primary{background:linear-gradient(100deg,#ff7a22,#ef4a20);border-color:#ff9a50;color:#fff;font-family:var(--display);font-weight:400;letter-spacing:.5px;text-transform:uppercase;box-shadow:0 6px 18px #ff6a1347}button.primary:hover:not(:disabled){background:linear-gradient(100deg,#ff8a3a,#f45a2e);border-color:#ffb27a}button.good{background:linear-gradient(100deg,#2fbf62,#1f8f4a);border-color:#4fd884;font-weight:700}input,select{background:#151821;border:1px solid #ffffff22;border-radius:12px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus{border-color:var(--rally);box-shadow:0 0 0 3px #ff6a1333;outline:none}.badge{background:#ffffff12;border:1px solid #ffffff1a;border-radius:999px;font-weight:600}.seat{background:#ffffff0a;border:1px solid #ffffff12;border-radius:12px}.tabs{background:#ffffff0a;border:1px solid var(--line);border-radius:999px;padding:4px;display:inline-flex}.chip{border:0;background:transparent;min-height:36px;padding:6px 14px;border-radius:999px;font-weight:700}.chip.on{background:var(--rally);color:#160b03}.vehicle-card{background:#ffffff08;border:1px solid #ffffff17;border-radius:14px}.vehicle-card.selected{border-color:var(--rally);background:#ff6a131f;box-shadow:0 0 0 2px #ff6a1359 inset}.vehicle-name{font-family:var(--display);font-weight:400;letter-spacing:.3px}.stat .bar i.on{background:linear-gradient(90deg,var(--rally),var(--rally2))}table.results{border-collapse:separate;border-spacing:0 4px;width:100%}table.results th{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);text-align:left;padding:4px 10px}table.results td{background:#ffffff08;padding:8px 10px}table.results td:first-child{border-radius:10px 0 0 10px;font-family:var(--display);color:var(--rally2)}table.results td:last-child{border-radius:0 10px 10px 0}.error-box{border-radius:12px}.home-fab{top:max(12px,env(safe-area-inset-top));right:12px;width:46px;height:46px;padding:0;border-radius:50%;background:#161922e6;backdrop-filter:blur(8px);box-shadow:0 6px 18px #0006}.stage-name,.chaos-title,.auth-title,.stage-no,.intro-press{font-weight:400}.vehicle-card .vehicle-icon{width:100%;max-width:150px;height:64px;object-fit:cover;object-position:center;border-radius:10px;background:repeating-linear-gradient(90deg,transparent 0 22px,rgba(255,255,255,.07) 22px 34px) center / 100% 3px no-repeat,radial-gradient(ellipse at center,#3a3f4d,#232734 70%)}.vehicle-card .vehicle-mystery{height:64px}.start-notice{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px;padding:8px 10px 8px 14px;border-radius:12px;background:#ffd23f1a;border:1px solid rgba(255,210,63,.35);color:#ffe9a8;font-size:14px}.start-notice button{min-height:38px;padding:6px 14px}.warn-box{position:relative;padding-right:44px}.warn-dismiss{position:absolute;top:6px;right:6px;min-height:30px;width:30px;padding:0;border-radius:50%;background:transparent;border-color:transparent}.gs-overlay{z-index:30}.gs-panel{width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-y:auto}.gs-panel h3{margin:14px 0 6px;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em;opacity:.7}.gs-row{display:flex;align-items:center;gap:10px;padding:4px 0}.gs-row>span:first-child{min-width:72px}.gs-row input[type=range]{flex:1;min-width:0}.gs-val{width:2.4em;text-align:right;font-variant-numeric:tabular-nums;opacity:.75}.gs-toggle{cursor:pointer}.gs-toggle>span:first-child{min-width:0}.gs-keys{font-size:.8rem;margin-top:12px}.race-toasts{position:absolute;top:64px;left:50%;transform:translate(-50%);z-index:6;display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none}.race-toast{background:#0e1016d9;color:#fff;padding:6px 14px;border-radius:999px;font-weight:700;font-size:.95rem;border:2px solid rgba(255,255,255,.15);animation:race-toast-in .18s ease-out}.race-toast.warn{border-color:#ffb02e;color:#ffd98a}.race-toast.bad{border-color:#e5484d;color:#ffb3b5}.race-toast.hint{border-color:#6cc4ff;color:#cdeaff}@keyframes race-toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.race-toast{animation:none}}.hud .chip.stun{background:#ffe14a;color:#1b1b22}.horn-btn{position:absolute;z-index:6;bottom:max(120px,calc(env(safe-area-inset-bottom) + 120px));right:max(28px,env(safe-area-inset-right));width:64px;height:64px;border-radius:50%;font-size:1.6rem;touch-action:none;user-select:none}.horn-btn.left{right:auto;left:max(28px,env(safe-area-inset-left))}@font-face{font-family:Russo One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/russo-one-latin-400-normal-DqvwhL13.woff2) format("woff2"),url(/assets/russo-one-latin-400-normal-CV3riu6B.woff) format("woff")}
