:root{--sand:#e6ad62;--clay:#cc583c;--teal:#238f91;--cream:#fff0cc;--charcoal:#33363b;--lilac:#a58ba9;--amber:#f2a33a;--p2:#52c8f0;--font:"Trebuchet MS", "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%;font-family:var(--font);color:var(--charcoal);background:#1d1f22;margin:0;overflow:hidden}#scene{width:100vw;height:100vh;display:block;position:fixed;inset:0}[hidden]{display:none!important}html,body{overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}#scene,.touch,.pause-btn{touch-action:none}.overlay{-webkit-overflow-scrolling:touch;overflow-y:auto}.touch-note{display:none}body.touch-mode .touch-note{color:var(--teal);font-weight:700;display:block}body.mobile #btn-local,body.mobile .controls,body.mobile .keyboard-note{display:none!important}body.mobile .touch-note{color:var(--teal);font-weight:700;display:block}.pause-btn{z-index:20;top:calc(8px + env(safe-area-inset-top));right:calc(8px + env(safe-area-inset-right));border:3px solid var(--cream);cursor:pointer;background:#33363bbf;border-radius:12px;justify-content:center;align-items:center;gap:6px;width:46px;height:46px;display:flex;position:fixed}.pause-btn span{background:var(--cream);border-radius:2px;width:6px;height:18px;display:block}.pause-btn:active{transform:scale(.94)}.pause-btn:focus-visible{outline:3px solid var(--teal);outline-offset:2px}.hud-chip{right:64px!important}.touch{z-index:15;pointer-events:none;height:0;position:fixed;inset:auto 0 0}.t-steer{pointer-events:auto;left:calc(10px + env(safe-area-inset-left));bottom:calc(12px + env(safe-area-inset-bottom));color:#fff0cccc;background:#33363b47;border:3px solid #fff0cc8c;border-radius:22px;justify-content:space-between;align-items:center;width:min(46vw,300px);height:min(26vh,160px);min-height:110px;padding:0 16px;display:flex;position:fixed}.t-steer .t-arrow{font-size:28px;transition:color .1s,transform .1s}.t-steer[data-dir=left] .t-arrow.l,.t-steer[data-dir=right] .t-arrow.r{color:var(--amber);transform:scale(1.25)}.t-steer .t-hint{text-align:center;font-size:11px;font-weight:700;position:absolute;bottom:8px;left:0;right:0}.t-knob{border:3px solid var(--charcoal);opacity:.5;background:#fff0ccd9;border-radius:50%;width:58px;height:58px;transition:opacity .1s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.t-steer.active .t-knob{opacity:1}.t-steer.active .t-hint{opacity:0}.t-pedals{pointer-events:auto;right:calc(10px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));grid-template-columns:auto auto;grid-template-areas:"horn gas""brake gas";align-items:end;gap:10px;display:grid;position:fixed}.t-btn{font:inherit;color:var(--cream);border:3px solid var(--cream);text-shadow:0 2px #0000004d;touch-action:none;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;font-weight:900;transition:transform 60ms,filter 60ms;display:flex}.t-btn small{opacity:.85;font-size:9px;font-weight:700}.t-gas{background:#3faf54d9;grid-area:gas;width:min(22vw,120px);height:min(30vh,170px);min-height:120px;font-size:20px}.t-brake{background:#cc583cd9;grid-area:brake;width:min(20vw,104px);height:min(17vh,96px);min-height:72px;font-size:15px}.t-horn{width:min(20vw,104px);height:min(10vh,58px);min-height:44px;color:var(--charcoal);text-shadow:none;background:#f2a33ae6;grid-area:horn;font-size:13px}body.touch-mode .hud-minimap{width:96px;height:96px;bottom:calc(min(26vh,160px) + 24px)}body.touch-mode .hud-speed{bottom:calc(min(30vh,170px) + 24px)}.overlay{place-items:center;padding:16px;display:grid;position:fixed;inset:0}.title{background:linear-gradient(90deg,#fff0cceb 0%,#fff0ccbf 42%,#fff0cc00 70%);justify-items:start}.title-card{max-width:560px;padding:8px 0 8px clamp(8px,5vw,72px)}.kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--teal);margin:0;font-size:13px;font-weight:700}h1{color:var(--charcoal);text-transform:uppercase;margin:4px 0 2px;font-size:clamp(38px,6vw,68px);font-style:italic;font-weight:900;line-height:.95}h1 span{color:var(--clay);display:block}.sub{color:#5b5550;margin:8px 0 22px;font-size:15px}.menu{flex-wrap:wrap;gap:12px;margin-bottom:22px;display:flex}.btn{font:inherit;border:3px solid var(--charcoal);background:var(--cream);min-width:200px;color:var(--charcoal);cursor:pointer;box-shadow:0 4px 0 var(--charcoal);text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 18px;transition:transform 80ms,box-shadow 80ms;display:flex}.btn b{font-size:18px}.btn.primary{background:var(--clay);color:var(--cream)}.btn:hover{transform:translateY(-1px)}.btn:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.stat{grid-template-columns:70px 1fr 66px;align-items:center;gap:6px;margin-top:3px;font-size:12px;display:grid}.stat i{background:#33363b26;border-radius:4px;height:8px;display:block;overflow:hidden}.stat i b{background:var(--c);height:100%;display:block}.stat em{text-align:right;font-style:normal;font-weight:700}.pill{font:inherit;border:2px solid var(--charcoal);background:var(--cream);cursor:pointer;border-radius:999px;padding:4px 12px;font-weight:800}.pill[aria-pressed=true]{background:var(--charcoal);color:var(--cream)}.pill:focus-visible{outline:3px solid var(--teal);outline-offset:2px}.controls{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.ctl h2{align-items:center;gap:6px;margin:0 0 6px;font-size:13px;display:flex}.ctl dl{grid-template-columns:auto 1fr;gap:3px 10px;margin:0;font-size:13px;display:grid}.ctl dt{background:var(--charcoal);color:var(--cream);text-align:center;border-radius:4px;padding:0 6px;font-weight:800}.ctl dd{margin:0}.dot{border:2px solid var(--charcoal);border-radius:50%;width:12px;height:12px;display:inline-block}.dot.p1{background:var(--amber)}.dot.p2{background:var(--p2)}.note{color:#6b625a;margin-top:14px;font-size:12px}.setup{background:linear-gradient(#fff0ccdb,#fff0cc8c 60%,#fff0cc33);align-items:start}.setup-card{width:min(860px,100%);padding-top:8px}.setup-card>h2{text-transform:uppercase;margin:0 0 10px;font-size:clamp(24px,3.4vw,36px);font-style:italic;font-weight:900}.setup-env{flex-wrap:wrap;align-items:center;gap:6px;margin:-4px 0 10px;font-size:13px;font-weight:700;display:flex}.setup-env .gap{width:10px}.setup-env .hint{color:#6b625a;font-size:12px;font-weight:400}.pill:disabled{opacity:.35;cursor:default}.setup-panels{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.setup-panel{border:2px solid #33363b26;border-top:6px solid var(--c);background:#ffffffd9;border-radius:12px;padding:10px 14px}.setup-panel h2{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px;font-size:16px;display:flex}.setup-panel h2 small{color:#6b625a;font-size:12px;font-weight:400}.car-pick{gap:6px;margin-bottom:4px;display:flex}.blurb{color:#5b5550;min-height:2.6em;margin:4px 0 6px;font-size:12px}.setup-panel .stat b{background:var(--c)}.swatches{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.swatch{border:3px solid var(--cream);background:var(--s);cursor:pointer;border-radius:50%;width:28px;height:28px;padding:0;box-shadow:0 0 0 2px #33363b4d}.swatch[aria-pressed=true]{box-shadow:0 0 0 3px var(--charcoal);transform:scale(1.12)}.swatch:disabled{opacity:.25;cursor:not-allowed}.swatch:focus-visible{outline:3px solid var(--teal);outline-offset:2px}.colour-name{margin:4px 0 0;font-size:12px;font-weight:700}.setup-actions{justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.pause{background:#1d1f2273}.pause-card{background:var(--cream);border:3px solid var(--charcoal);border-radius:16px;flex-direction:column;gap:10px;min-width:280px;padding:20px 22px;display:flex;box-shadow:0 8px #00000040}.pause-card h2{text-transform:uppercase;margin:0;font-size:28px;font-style:italic}.pause-card p{color:#5b5550;margin:0 0 6px}.pause-card .btn{min-width:0}.route-label{font-weight:800;color:var(--teal)!important}.opt.slider{justify-content:space-between}.opt.slider input{width:60%;accent-color:var(--teal)}.opt{align-items:center;gap:8px;margin-top:4px;font-size:14px;display:flex}#hud{pointer-events:none;position:fixed;inset:0}.hud{color:var(--cream);text-shadow:0 2px #00000059;position:absolute;overflow:hidden}.hud+.hud{border-left:4px solid #1d1f22}.hud-tag{position:absolute;top:12px;left:14px}.hud-player{background:var(--charcoal);letter-spacing:.05em;border-left:6px solid var(--amber);text-shadow:none;border-radius:8px;padding:4px 10px;font-size:14px;font-weight:800;display:inline-block}.hud-pos{margin-top:4px;font-size:clamp(20px,3.4vmin,32px);font-style:italic;font-weight:900;display:block}.hud-honk{vertical-align:top;background:var(--amber);color:var(--charcoal);text-shadow:none;opacity:0;border-radius:10px;margin-left:8px;padding:2px 8px;font-size:13px;font-style:normal;font-weight:900;transition:opacity 80ms,transform 80ms;display:inline-block;transform:scale(.8)}.hud-honk.on{opacity:1;transform:scale(1)}.hud-progress{text-align:center;width:min(46%,300px);position:absolute;top:14px;left:50%;transform:translate(-50%)}.hud-progress-bar{background:#33363b8c;border:2px solid #fff0ccd9;border-radius:6px;height:10px;overflow:hidden}.hud-progress-fill{background:linear-gradient(90deg, var(--teal), #3fd1c4);width:0;height:100%}.hud-progress-text{font-size:12px;font-weight:700}.hud-speed{font-size:clamp(30px,4.4vw,54px);font-style:italic;font-weight:900;line-height:1;position:absolute;bottom:14px;right:16px}.hud-reverse{vertical-align:middle;background:var(--clay);color:var(--cream);text-shadow:none;opacity:0;border-radius:6px;margin-right:8px;padding:0 8px;font-size:.5em;font-style:normal;transition:opacity .1s;display:inline-block}.hud-reverse.on{opacity:1}.hud-minimap{background:#33363b8c;border:2px solid #fff0ccd9;border-radius:14px;width:clamp(110px,16vmin,170px);height:clamp(110px,16vmin,170px);position:absolute;bottom:12px;left:12px}.hud-speed small{margin-left:4px;font-size:.35em;font-style:normal}.hud-chip{opacity:0;text-shadow:none;border-radius:8px;padding:4px 10px;font-size:13px;font-weight:800;transition:opacity .15s,transform .15s;position:absolute;top:12px;right:16px;transform:translateY(-4px)}.hud-chip.on{opacity:1;transform:none}.hud-sand{background:var(--sand);color:var(--charcoal)}.hud-slip{color:var(--charcoal);background:#3fd1c4;align-items:center;gap:8px;display:flex;top:76px}.hud-slip i{background:#33363b59;border-radius:4px;width:54px;height:8px;display:block;overflow:hidden}.hud-slip b{background:var(--charcoal);width:0;height:100%;display:block}.hud-slip.full{background:var(--cream);box-shadow:0 0 0 2px #3fd1c4}.hud-sliding{background:var(--cream);color:var(--clay);border:2px solid var(--clay);top:140px}.hud-slimed{color:#23461a;background:#8be04e;top:172px}.hud-hazard{opacity:0;text-shadow:none;white-space:nowrap;border-radius:10px;padding:6px 14px;font-size:18px;font-style:italic;font-weight:900;transition:opacity .15s,transform .15s;position:absolute;top:36%;left:50%;transform:translate(-50%)scale(.9)}.hud-hazard.on{opacity:1;transform:translate(-50%)scale(1)}.hud-hazard.stones{color:var(--cream);background:#8d8a86}.hud-hazard.critter{color:#e9ffd2;background:#8e6fa8}.hud-stink{opacity:0;pointer-events:none;background:radial-gradient(circle at 30% 60%,#a0d662d9 0 14%,#0000 30%),radial-gradient(circle at 62% 48%,#b9e88acc 0 16%,#0000 34%),radial-gradient(circle at 48% 75%,#8cc450bf 0 12%,#0000 28%),radial-gradient(circle at 75% 70%,#b9e88ab3 0 10%,#0000 24%),radial-gradient(at 50% 55%,#aadc6e59,#0000 70%);transition:opacity .3s;position:absolute;inset:0}.hud-lights{opacity:0;text-shadow:none;flex-direction:column;align-items:center;gap:6px;transition:opacity .2s,transform .2s;display:flex;position:absolute;top:30%;left:50%;transform:translate(-50%,-8px)scale(.95)}.hud-lights.on{opacity:1;transform:translate(-50%)scale(1)}.hud-lights span{border:3px solid var(--cream);background:#26282c;border-radius:14px;gap:10px;padding:8px 12px;display:flex}.hud-lights i{background:#3a1512;border-radius:50%;width:clamp(22px,4vmin,40px);height:clamp(22px,4vmin,40px);display:block}.hud-lights i.red{background:#ff3b2f;box-shadow:0 0 14px #ff3b2f}.hud-lights i.green{background:#4dff7a;box-shadow:0 0 16px #4dff7a}.hud-lights b{color:var(--cream);text-shadow:0 3px #00000059;font-size:clamp(30px,6vmin,64px);font-style:italic;font-weight:900}.hud-lights.go b{color:#4dff7a}.hud-time{flex-direction:column;align-items:center;margin-top:4px;display:flex}.hud-clock{font-variant-numeric:tabular-nums;font-size:clamp(16px,2.6vmin,24px);font-weight:900}.hud-best{opacity:.9;font-size:11px;font-weight:700}.hud-finish-title{display:block}.hud-finish-time{font-variant-numeric:tabular-nums;font-size:30px;display:block}.hud-finish-record{background:var(--amber);color:var(--charcoal);border-radius:8px;margin:4px auto 2px;padding:2px 10px;font-size:16px;display:block}.records{background:#1d1f228c}.records-card{background:var(--cream);border:3px solid var(--charcoal);border-radius:16px;width:min(760px,100%);max-height:100%;padding:16px 20px;overflow:auto}.records-card h2{text-transform:uppercase;margin:0 0 4px;font-style:italic}.records-card h3{margin:12px 0 4px;font-size:15px}.records-card table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.records-card th,.records-card td{text-align:left;border-bottom:1px solid #33363b1f;padding:4px 6px}.records-card td.rank{width:2em;font-weight:900}.records-card .sw{vertical-align:-1px;border:1px solid #0000004d;border-radius:50%;width:12px;height:12px;margin-right:4px;display:inline-block}.records-card .empty{color:#6b625a;font-style:italic}.records-card .storage-note{color:#6b625a;font-size:12px}.hud-parked{background:var(--charcoal);color:var(--cream);border:3px solid var(--amber);text-align:center;opacity:0;text-shadow:none;border-radius:12px;padding:10px 18px;font-size:20px;font-style:italic;font-weight:900;transition:opacity .2s;position:absolute;top:32%;left:50%;transform:translate(-50%,-50%)}.hud-parked small{font-size:13px;font-style:normal;font-weight:600;display:block}.hud-parked.on{opacity:1}.hud-sand[data-biome=grass]{background:#8fc46a}.hud-sand[data-biome=snow]{background:#e8f1f8}.hud-slimed[data-kind=mud]{color:var(--cream);background:#8f6a46}.hud-iced{color:#1f4a66;background:#bfe9f7;border:2px solid #fff;top:204px}.hud-stink[data-biome=grass]{background:radial-gradient(circle at 30% 60%,#faf8f2e6 0 14%,#0000 30%),radial-gradient(circle at 62% 48%,#ece8ddd9 0 16%,#0000 34%),radial-gradient(circle at 48% 75%,#faf8f2cc 0 12%,#0000 28%),radial-gradient(at 50% 55%,#f0ece266,#0000 70%)}.hud-stink[data-biome=snow]{background:radial-gradient(circle at 30% 60%,#ffffffeb 0 15%,#0000 32%),radial-gradient(circle at 62% 48%,#e6f2fce0 0 17%,#0000 35%),radial-gradient(circle at 48% 75%,#ffffffd9 0 13%,#0000 29%),radial-gradient(at 50% 55%,#dcecfa73,#0000 70%)}.hud-section{text-align:center;text-shadow:none;opacity:0;border:3px solid var(--cream);border-radius:12px;padding:8px 18px;transition:opacity .25s,transform .25s;position:absolute;top:22%;left:50%;transform:translate(-50%,-6px)}.hud-section.on{opacity:1;transform:translate(-50%)}.hud-section b{font-size:20px;font-style:italic;font-weight:900;display:block}.hud-section small{font-size:12px;font-weight:700}.hud-section.fast{background:var(--teal);color:var(--cream)}.hud-section.technical{background:var(--amber);color:var(--charcoal)}.hud-section.feature-canyon,.hud-section.feature-bridge{background:var(--clay);color:var(--cream)}.hud-section.feature-wide{background:var(--teal);color:var(--cream)}.hud-section.feature-hill{background:var(--lilac);color:var(--cream)}.hud-catch{background:var(--amber);color:var(--charcoal);top:108px}.hud-lines{opacity:0;pointer-events:none;background:repeating-conic-gradient(at 50% 46%,#ffffff8c 0deg .6deg,#0000 .6deg 7deg);transition:opacity .15s linear;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 50% 46%,#0000 38%,#000 78%);mask-image:radial-gradient(at 50% 46%,#0000 38%,#000 78%)}.hud-bump{background:var(--clay);color:var(--cream);top:44px}.hud-finish{background:var(--teal);border:3px solid var(--cream);text-align:center;opacity:0;text-shadow:none;border-radius:12px;padding:12px 20px;font-size:22px;font-style:italic;font-weight:900;transition:opacity .2s,transform .2s;position:absolute;top:32%;left:50%;transform:translate(-50%,-50%)scale(.9)}.hud-finish small{font-size:13px;font-style:normal;font-weight:600;display:block}.hud-finish.on{opacity:1;transform:translate(-50%,-50%)scale(1)}#toast{background:var(--charcoal);color:var(--cream);opacity:0;pointer-events:none;border-radius:10px;padding:8px 14px;font-weight:700;transition:opacity .2s,transform .2s;position:fixed;bottom:22px;left:50%;transform:translate(-50%,10px)}#toast.on{opacity:1;transform:translate(-50%)}#debug{color:#b8ffdf;pointer-events:none;background:#0009;border-radius:6px;margin:0;padding:6px 8px;font:12px/1.35 ui-monospace,Consolas,monospace;position:fixed;bottom:8px;left:8px}@media (max-width:720px){.title{background:#fff0cce0}.btn{flex:1;min-width:0}}@media (max-width:560px){.hud-tag{max-width:calc(100% - 70px);top:8px;left:8px}.hud-player{white-space:nowrap;text-overflow:ellipsis;max-width:100%;padding:3px 7px;font-size:11px;overflow:hidden}.hud-progress{width:62%;top:64px}.hud-chip{font-size:11px;top:120px!important}.hud-chip.hud-bump{top:146px!important}.hud-chip.hud-slip{top:172px!important}.hud-chip.hud-catch{top:198px!important}.hud-chip.hud-sliding,.hud-chip.hud-slimed,.hud-chip.hud-iced{top:224px!important}.hud-section b{font-size:16px}.hud-finish{width:86%;font-size:17px}}:root{--cream:#fff3da;--clay:#d9543b;--teal:#187f80;--charcoal:#30333e;--amber:#f2b65e;--display:"Bahnschrift", "Arial Narrow", "Trebuchet MS", sans-serif}button,input,summary{-webkit-tap-highlight-color:transparent}.title{background:linear-gradient(90deg,#fff3daf5 0%,#fff3daf0 25%,#fff3dac2 40%,#fff3da00 67%);align-items:flex-start;display:flex}.title-card{width:min(43vw,510px);max-width:none;margin-block:auto;padding:16px 0}.kicker{letter-spacing:.025em;text-transform:none;align-items:center;gap:9px;margin-bottom:25px;font-size:13px;display:flex}.kicker span{width:29px;height:29px;color:var(--cream);background:var(--teal);border-radius:50%;place-items:center;font-size:15px;display:grid}h1{font-family:var(--display);color:var(--cream);letter-spacing:-.045em;background:#255b66;width:-moz-fit-content;width:fit-content;margin:0 0 28px 5px;padding:12px 25px 4px 17px;font-size:clamp(25px,3.8vw,46px);line-height:.92;transform:rotate(-3deg);box-shadow:0 6px #193f49}h1 span{color:var(--cream);background:var(--clay);text-shadow:0 4px #a44230;margin:3px -39px -14px -18px;padding:9px 20px 10px 16px;font-size:clamp(58px,7.2vw,104px);box-shadow:0 7px #ae432f,0 11px #efb561}.menu{grid-template-columns:1fr;gap:11px;max-width:360px;margin-bottom:22px;display:grid}.btn{background:#fff9ed;border:1px solid #d4b991;border-radius:10px;gap:5px;min-width:0;padding:13px 18px;box-shadow:0 4px #d6bc95}.btn b{font-family:var(--display);width:100%;font-size:18px;font-weight:750}.btn b>span{float:right}.btn small{opacity:.8;font-size:11px}.btn.primary{background:var(--teal);color:var(--cream);border-color:#126668;box-shadow:0 4px #105c60}.btn:hover{filter:brightness(1.045);transform:translateY(-2px)}.btn:active{box-shadow:none;transform:translateY(3px)}.record-link{box-shadow:none;background:0 0;border-color:#0000;flex-direction:row;align-items:center;padding:9px 1px;display:flex}.record-link b{font:700 13px var(--font);width:auto}.title-destinations i{background:#ba9271;border-radius:50%;width:3px;height:3px}.controls-guide summary{cursor:pointer;color:#63584c;justify-content:space-between;font-size:12px;font-weight:700;list-style:none;display:flex}.ctl h2,.ctl dl{font-size:11px}.ctl dt{background:#5d625e;border-radius:3px}.note{color:#85715e;max-width:48ch;font-size:11px;line-height:1.65}.setup{background:linear-gradient(90deg,#fff3dafc 0%,#fff3daf3 28%,#fff3dacf 40%,#fff3da00 65%);place-items:center start}.setup-card{width:min(420px,43vw);padding:10px 0}.setup-kicker{color:var(--teal);margin:0 0 8px;font-size:12px;font-weight:700}.setup-card>h2{font-family:var(--display);text-transform:none;letter-spacing:-.04em;margin-bottom:21px;font-size:34px;font-style:normal}.option-label{color:#7d6c59;flex-basis:100%;justify-content:space-between;align-items:center;margin:1px 0 3px;font-size:11px;display:flex}.option-label kbd{font:10px var(--font);color:#7e8279;border:1px solid #d8c8b1;border-radius:3px;padding:1px 5px}#setup-cpu .option-label:not(:first-child){margin-top:8px}.setup-env .hint{color:#8d7b65;flex-basis:100%;margin-top:2px;font-size:10px}.setup-env .gap{display:none}.pill{background:#fff9ed;border:1px solid #d9c7ac;border-radius:7px;padding:6px 10px;font-size:11px;font-weight:600}.pill[aria-pressed=true]{background:var(--teal);border-color:var(--teal);color:var(--cream)}.pill:hover:not(:disabled){border-color:var(--teal)}.setup-env .env-desert[aria-pressed=true]{background:#b9753c;border-color:#b9753c}.setup-env .env-grass[aria-pressed=true]{background:#608349;border-color:#608349}.setup-env .env-snow[aria-pressed=true]{background:#618ca0;border-color:#618ca0}.setup-panels{grid-template-columns:1fr;gap:10px}.setup-panel{border:1px solid #dac6a9;border-left:4px solid var(--c);background:#fffaf0e8;border-radius:10px;padding:13px 15px;box-shadow:0 7px 20px #9d6c3510}.setup-panel h2 small{color:#9c8c78;margin-left:auto;font-size:9px}.car-pick{gap:7px}.car-pick .pill{text-align:left;flex:1;padding:9px 11px;font-size:13px;font-weight:800}.car-pick .pill small{opacity:.75;margin-top:3px;font-size:9px;font-weight:400;display:block}.car-pick .pill[aria-pressed=true]{background:var(--charcoal);border-color:var(--charcoal)}.blurb{margin:10px 0;font-size:11px;line-height:1.55}.stat{grid-template-columns:65px 1fr 60px;gap:10px;margin-top:5px;font-size:10px}.stat i{background:#e8dfd1;height:5px}.stat em{color:#655f56}.swatches{gap:8px;margin-top:14px}.swatch{border-width:2px;width:21px;height:21px;box-shadow:0 0 0 1px #b5a893}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--teal)}.colour-name{color:#8b775d;margin-top:8px;font-size:10px}.setup-actions{justify-content:stretch;gap:10px;margin-top:17px}.setup-actions .btn{flex:1}.showroom-note{text-align:center;color:#5e544c;pointer-events:none;position:absolute;bottom:40px;left:62%}.showroom-note span{font-family:var(--display);font-size:21px;font-weight:700;display:block}.showroom-note small{margin-top:6px;font-size:11px;display:block}.setup[data-players="2"] .setup-panel{padding:10px 12px}.setup[data-players="2"] .stat:nth-of-type(n+4){display:none}.setup[data-players="2"] .blurb{min-height:0;margin:6px 0}.setup[data-players="2"] .setup-card>h2,.setup[data-players="2"] .setup-env{margin-bottom:10px}.setup[data-players="2"] .swatches{margin-top:9px}.hud{text-shadow:0 1px 5px #2a22353d}.hud-player{border:1px solid #fff3da55;border-left:4px solid var(--amber);letter-spacing:.02em;background:#30333ee0;border-radius:7px;padding:7px 11px;font-size:10px}.hud-pos{font-family:var(--display);margin-top:8px;padding-left:2px;font-size:25px}.hud-progress{background:#30333edb;border:1px solid #fff3da4d;border-radius:10px;width:min(33%,260px);padding:10px 13px 9px;top:18px;box-shadow:0 4px 16px #251b2c14}.hud-progress-fill{background:#f4c977}.hud-progress-text{color:#efdab3;margin:5px 0 1px;font-size:10px;display:block}.hud-clock{font-family:var(--display);font-size:19px;font-weight:650}.hud-best{opacity:.65;font-size:9px}.hud[data-split=true] .hud-player{white-space:nowrap;text-overflow:ellipsis;max-width:145px;overflow:hidden}.hud[data-split=true] .hud-progress{width:35%;left:59%}.hud[data-split=true] .hud-best{display:none}.hud-speed{color:var(--charcoal);text-shadow:none;text-align:right;min-width:119px;font-family:var(--display);letter-spacing:-.05em;background:#fff3daee;border-bottom:4px solid #dbaa68;border-radius:14px 14px 5px;padding:13px 17px 13px 22px;font-size:clamp(36px,4vw,57px);bottom:22px;right:22px;box-shadow:0 4px 18px #28222f22}.hud-speed small{font:700 10px var(--font);letter-spacing:.02em;color:#89765d;margin:4px 0 0;display:block}.hud-reverse{padding:4px 6px;font-size:18px;position:absolute;top:-12px;left:-12px}.hud-reverse:not(.on){display:none}.hud-minimap{background:#30333ed4;border:1px solid #fff3da88;border-radius:15px;padding:7px;bottom:18px;left:18px;box-shadow:0 5px 20px #2921331f}.hud-chip{border-radius:6px;padding:6px 9px;font-size:10px;right:18px}.hud-section{border:1px solid #fff3dabb;border-radius:7px;padding:8px 17px}.hud-section b{font:750 17px var(--display)}.hud-section small{font-size:10px}.hud-finish,.hud-parked{border-width:1px;border-radius:14px;padding:20px;box-shadow:0 12px 35px #25202f35}.hud-finish-title{font:700 20px var(--display)}.pause-btn{width:37px;height:37px;top:calc(16px + env(safe-area-inset-top));right:calc(16px + env(safe-area-inset-right));background:#30333edb;border-width:1px;border-radius:9px}.pause-btn span{width:4px;height:14px}.pause-card,.records-card{background:#fff5e4;border:1px solid #e8cfaa;border-radius:18px;padding:25px;box-shadow:0 20px 80px #1d1e3433}.pause-card{gap:10px;width:min(360px,100%)}.pause-card h2,.records-card h2{font:750 30px var(--display);text-transform:none;letter-spacing:-.035em}.pause-card>p{font-size:12px}.pause-card .btn{padding:10px 14px}.pause-card .opt{font-size:12px}.route-label{background:#e1e8d4;border-radius:6px;padding:7px 10px;font-size:11px!important}.records-card{max-width:720px}.records-card th{color:#8a745a;font-weight:600}.records-card th,.records-card td{padding:9px 7px}@media (max-height:780px) and (min-width:761px){.kicker,.sub{margin-bottom:17px}.menu{gap:9px;margin-bottom:16px}.btn{padding-top:10px;padding-bottom:10px}.title-destinations{margin-bottom:17px}.setup{align-items:start}.setup-card{padding-top:0}.setup-panel .stat{margin-top:3px}.setup[data-players="2"] .blurb,.setup[data-players="2"] .colour-name{display:none}.setup[data-players="2"] .setup-panel h2{margin-bottom:6px}.setup[data-players="2"] .setup-env{margin-bottom:8px}}@media (max-width:1000px){.hud-player{max-width:165px;font-size:9px}.hud-progress{width:min(32%,210px)}.hud-best,.setup-panel h2 small{display:none}}@media (max-width:760px){.overlay{padding:20px}.title{background:linear-gradient(90deg,#fff3daf5,#fff3daeb 62%,#fff3dabb)}.title-card{width:min(440px,100%);margin:auto;padding:16px 0}h1{font-size:30px}h1 span{font-size:clamp(57px,13vw,90px)}.kicker{margin-bottom:20px}.menu{max-width:none}.sub{font-size:14px}.setup{background:#fff3daed;place-items:start center}.setup-card{width:min(500px,100%)}.setup-card>h2{font-size:29px}.showroom-note{display:none}.setup[data-players="2"] .setup-panels{grid-template-columns:repeat(2,minmax(0,1fr))}.setup[data-players="2"] .car-pick{flex-direction:column}.setup[data-players="2"] .stat{grid-template-columns:50px 1fr}.setup[data-players="2"] .stat em,.setup[data-players="2"] .blurb{display:none}.hud-player{max-width:135px;font-size:9px}.hud-tag{top:12px;left:10px}.hud-progress{width:32%;top:12px}.hud-speed{min-width:95px;padding:10px 12px;font-size:38px;bottom:14px;right:13px}.hud-minimap{width:115px;height:115px;bottom:14px;left:10px}}@media (max-width:560px){.hud-progress{width:51%;padding:7px 10px;top:68px}.hud-clock{font-size:16px}.hud-minimap{width:100px;height:100px}.pause-card{padding:18px}.pause-card h2{font-size:26px}.title-destinations{gap:6px;font-size:10px}}.hud{container-type:inline-size}@container (width<=550px){.hud-progress,.hud[data-split=true] .hud-progress{width:48%;top:75px;left:50%}.hud-clock{font-size:16px}.hud-minimap{width:100px;height:100px}.hud-speed{min-width:95px;font-size:36px;bottom:14px;right:12px}.hud-tag{top:12px;left:10px}.hud-section b{font-size:14px}}@media (pointer:coarse) and (max-height:560px){.title-card{max-width:540px;padding:0}.title-card h1{margin-bottom:17px;font-size:19px}.title-card h1 span{font-size:49px}.title-card .kicker,.title-destinations,.controls-guide{display:none}.title-card .sub{margin:23px 0 12px;font-size:12px}.title-card .menu{gap:10px;margin-bottom:6px;display:flex}.title-card .record-link{padding-left:10px}.title-card .record-link small{display:none}.title-card .note{margin-top:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:0s!important;animation-duration:0s!important}}.touch{height:auto;inset:0}.t-steer{left:calc(14px + env(safe-area-inset-left));bottom:calc(16px + env(safe-area-inset-bottom));width:var(--touch-pad);height:var(--touch-pad);touch-action:none;background:radial-gradient(circle,#fff3da0a 0 30%,#30333e52 31% 60%,#fff3da08 61% 62%,#30333e45 63%);border:1px solid #fff3da85;border-radius:50%;min-height:0;padding:0 10px;box-shadow:inset 0 0 0 5px #ffffff08}.t-steer .t-arrow{opacity:.8;text-shadow:none;font-size:13px}.t-steer .t-hint{opacity:.8;font-size:9px;font-weight:600;bottom:11px}.t-knob{opacity:.82;background:radial-gradient(circle at 35% 25%,#fff5dfed,#cab796c9);border:1px solid #fff3dac4;width:42px;height:42px;box-shadow:0 3px 10px #171f3033}.t-steer.active{background-color:#30333e22;border-color:#f2b65e}.t-steer[data-dir=left] .t-arrow.l,.t-steer[data-dir=right] .t-arrow.r{opacity:1}.t-pedals{right:calc(14px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));pointer-events:none;grid-template-columns:auto auto;grid-template-areas:"brake gas";gap:10px}.t-btn{pointer-events:auto;text-shadow:none;border:1px solid #fff3da9c;border-radius:14px;padding:10px 6px;font-weight:600;box-shadow:inset 0 -3px #00000014,0 3px 10px #10182812}.t-gas{width:var(--pedal-width);height:var(--pedal-height);background:#287f6bba;border-bottom:3px solid #a5d6b4;min-height:0}.t-brake{width:var(--pedal-width);height:calc(var(--pedal-height) * .76);background:#494954c9;border-bottom:3px solid #e9a16e;min-height:0}.t-btn b{font:700 11px var(--font)}.t-btn small{margin-top:3px;font-size:7px;font-weight:400}.pedal-bars{letter-spacing:1px;opacity:.7;margin-bottom:10px;font-size:17px;line-height:.62}.t-btn.down{filter:brightness(1.16);transform:scale(.96)}.t-horn{right:calc(14px + env(safe-area-inset-right));color:#393b43;background:#e6b56ddb;border-color:#fff3daaa;border-radius:50%;grid-area:auto;width:50px;height:50px;min-height:0;padding:11px;position:fixed;top:50%;bottom:auto;transform:translateY(-50%)}.t-horn svg{width:100%;height:100%;display:block}.t-horn.down{transform:translateY(-50%)scale(.94)}body.touch-mode .hud-minimap{left:calc(14px + env(safe-area-inset-left));bottom:calc(var(--touch-pad) + 29px + env(safe-area-inset-bottom));background:#30333e9c;border-radius:10px;width:78px;height:78px;padding:4px}body.touch-mode .hud-speed{right:calc(14px + env(safe-area-inset-right));bottom:calc(var(--pedal-height) + 29px + env(safe-area-inset-bottom));background:#fff3dade;border-bottom-width:2px;border-radius:10px;min-width:72px;padding:8px 10px;font-size:34px}body.touch-mode .hud-speed small{margin-top:2px;font-size:8px}body.touch-mode .hud-progress-text{margin:4px 0 0;font-size:9px}body.touch-mode .hud-clock{font-size:16px}body.touch-mode .hud-time{margin-top:0}body.touch-mode .hud-best{display:none}body.touch-mode .hud-tag{top:calc(12px + env(safe-area-inset-top))}body.touch-mode .hud-pos{margin-top:5px;font-size:24px}@media (max-height:500px){body.touch-mode{--touch-pad:100px;--pedal-width:58px;--pedal-height:90px}.t-steer,.t-pedals{bottom:calc(10px + env(safe-area-inset-bottom))}.t-horn{width:44px;height:44px;padding:9px;top:44%}body.touch-mode .hud-minimap{width:64px;height:64px;bottom:calc(120px + env(safe-area-inset-bottom))}body.touch-mode .hud-speed{bottom:calc(110px + env(safe-area-inset-bottom));font-size:30px}body.touch-mode .hud-progress{top:calc(12px + env(safe-area-inset-top));width:28%;padding:6px 10px}}:root{--cream:#fffaf0;--clay:#d4573f;--teal:#176f70;--charcoal:#26383a;--amber:#f2b65e;--display:"Trebuchet MS", "Segoe UI", system-ui, sans-serif;--panel:#fffaf0f0;--line:#33363b21;--muted:#6f7067;--shadow:0 24px 70px #18222333, 0 3px 12px #1822231a}html,body{font-family:var(--font)}button,input,summary{font:inherit}button:focus-visible,summary:focus-visible,input:focus-visible{outline-offset:4px;outline:3px solid #258f8b}.overlay{padding:clamp(14px,3vw,42px)}.title{background:linear-gradient(90deg,#172b2c2e 0%,#172b2c14 34%,#0000 70%);place-items:center start;padding-left:clamp(16px,5vw,72px);display:flex}.title-card{width:min(430px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);color:var(--charcoal);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px)saturate(1.15);border:1px solid #ffffffc7;border-radius:24px;margin:0;padding:clamp(22px,3vw,34px);overflow:auto}.kicker{color:#176f70;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:9px;margin:0 0 18px;font-size:11px;font-weight:800;display:inline-flex}.kicker span{color:#fffaf0;background:var(--teal);border-radius:9px;place-items:center;width:28px;height:28px;font-size:14px;display:grid;box-shadow:0 4px 9px #176f7033}.title h1{color:#27393a;width:auto;box-shadow:none;font-family:var(--display);letter-spacing:-.055em;text-transform:none;background:0 0;margin:0;padding:0;font-size:clamp(28px,3.4vw,43px);font-style:normal;font-weight:850;line-height:.98;transform:none}.title h1 span{color:var(--clay);box-shadow:none;letter-spacing:-.065em;text-shadow:none;background:0 0;margin:4px 0 0;padding:0;font-size:clamp(48px,6vw,72px);line-height:.96;display:block}.sub{color:#62645e;max-width:34ch;margin:15px 0 23px;font-size:14px;line-height:1.6}.menu{grid-template-columns:1fr;gap:10px;max-width:none;margin:0 0 17px;display:grid}.btn{min-width:0;color:var(--charcoal);text-align:left;background:#ffffffc7;border:1px solid #33363b24;border-radius:13px;gap:5px;padding:14px 16px;transition:transform .16s,box-shadow .16s,background .16s;display:flex;box-shadow:0 3px #2537381a,0 5px 14px #2537380a}.btn b{letter-spacing:-.02em;width:100%;font-size:16px;font-weight:800}.btn small{color:currentColor;opacity:.72;font-size:11px}.btn.primary{color:#fffaf0;background:linear-gradient(135deg,#187f80,#126869);border-color:#126869;box-shadow:0 4px #0d5355,0 9px 20px #176f7033}.btn:hover{transform:translateY(-2px);box-shadow:0 5px #2537381c,0 9px 18px #2537381a}.btn.primary:hover{box-shadow:0 5px #0d5355,0 12px 24px #176f703d}.btn:active{transform:translateY(1px);box-shadow:0 1px #2537381f}.btn.primary:active{box-shadow:0 1px #0d5355}.btn b>span{float:right;opacity:.84}.record-link{box-shadow:none;background:0 0;border:0;flex-direction:row;align-items:center;padding:9px 3px 2px;display:flex}.record-link:hover{box-shadow:none;background:0 0}.record-link b{width:auto;font-size:12px}.record-link small{margin-left:auto;font-size:11px}.title-destinations{color:#6f7067;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 18px;font-size:10px;display:flex}.title-destinations span{background:#ffffff94;border:1px solid #33363b1a;border-radius:999px;padding:5px 9px}.title-destinations i{display:none}.controls-guide{border-top:1px solid var(--line);max-width:none;padding-top:13px}.controls-guide summary{cursor:pointer;color:#485957;justify-content:space-between;align-items:center;font-size:12px;font-weight:800;list-style:none;display:flex}.controls-guide summary::-webkit-details-marker{display:none}.controls-guide summary span{color:var(--teal);font-size:17px;transition:transform .2s}.controls-guide[open] summary span{transform:rotate(45deg)}.controls-guide[open] .controls{margin-top:12px}.controls{gap:8px}.ctl{background:#ffffffa3;border:1px solid #33363b17;border-radius:11px;padding:10px}.ctl h2,.ctl dl{font-size:11px}.ctl h2{margin-bottom:8px}.ctl dt{background:#344644;border-radius:5px;min-width:30px;padding:2px 6px}.note{color:#77766d;max-width:47ch;margin:13px 0 0;font-size:10px;line-height:1.55}.setup{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#18252785;place-items:center;display:grid}.setup-card{background:var(--panel);width:min(860px,100%);max-height:calc(100dvh - 36px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #fffc;border-radius:24px;padding:clamp(20px,3vw,32px);overflow:auto}.setup-kicker{color:var(--teal);letter-spacing:.1em;text-transform:uppercase;margin:0 0 7px;font-size:11px;font-weight:800}.setup-card>h2{letter-spacing:-.045em;text-transform:none;margin:0 0 18px;font-size:clamp(26px,3vw,36px);font-style:normal}.setup-env{gap:7px;margin:0 0 14px;font-size:12px}.setup-env .hint{color:var(--muted);font-size:11px}.pill{background:#ffffffc7;border:1px solid #33363b26;border-radius:9px;padding:7px 11px;font-size:11px;transition:transform .14s,border-color .14s,background .14s}.pill:hover:not(:disabled){border-color:var(--teal);transform:translateY(-1px)}.pill[aria-pressed=true]{color:#fff;background:var(--teal);border-color:var(--teal)}.setup-panels{gap:12px}.setup-panel{border:1px solid #33363b1f;border-top:4px solid var(--c);background:#ffffffc7;border-radius:14px;padding:14px;box-shadow:0 4px 14px #202e2e0d}.setup-panel h2{margin-bottom:10px;font-size:15px}.setup-panel h2 small,.blurb{color:var(--muted)}.swatches{gap:8px}.swatch{width:30px;height:30px}.setup-actions{gap:10px;margin-top:18px}.setup-actions .btn{min-width:170px}.showroom-note{color:#fffaf0e0;text-shadow:0 2px 10px #00000080}.pause,.records{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#14202294}.pause-card,.records-card{background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #ffffffc2;border-radius:22px}.pause-card{gap:9px;min-width:min(360px,100vw - 32px);padding:26px}.pause-card h2,.records-card h2{letter-spacing:-.04em;text-transform:none;margin:0 0 2px;font-size:28px;font-style:normal}.pause-card p{color:var(--muted);margin-bottom:8px}.pause-card .btn{min-width:0;padding:11px 14px}.pause-card .btn b{font-size:14px}.pause-card .btn small{font-size:10px}.opt{color:#515f5c;font-size:12px}.opt.slider{margin-top:8px}.opt.slider input{accent-color:var(--teal)}.records-card{width:min(760px,100%);max-height:100%;padding:24px}.records-card table{font-size:12px}.records-card th,.records-card td{border-bottom-color:#26383a1c;padding:8px 7px}.records-card #btn-records-close{margin-top:16px}.hud-player{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#223333e0;border-radius:9px;padding:6px 11px}.hud-progress-bar{background:#223333a8;border-radius:999px;height:11px}.hud-progress-fill{border-radius:inherit}.hud-minimap{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2233339e;border-radius:18px}.hud-chip{border-radius:10px;box-shadow:0 5px 18px #00000024}.pause-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#223333b3;border:1px solid #fffaf0b8;border-radius:14px;box-shadow:0 6px 18px #0000002e}.t-steer{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#22333361;border:1px solid #fffaf0b3;border-radius:26px}.t-knob{background:#fffaf0e0;border:3px solid #fffaf0f2;box-shadow:0 5px 16px #0003}.t-btn{border:1px solid #ffffffb8;border-radius:22px;box-shadow:0 8px 20px #0000002b}.t-gas{background:#289151e0}.t-brake{background:#c54a38e6}.t-horn{background:#f2b65ef0}.hud-tag{top:calc(14px + env(safe-area-inset-top));left:calc(14px + env(safe-area-inset-left))}.hud-player{border-left:3px solid var(--amber);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;max-width:min(36vw,190px);padding:7px 12px;font-size:10px}.hud-p2 .hud-player{border-left-color:#52c8f0}.hud-pos{font-variant-numeric:tabular-nums;margin-top:8px;font-size:clamp(20px,3.1vmin,30px);line-height:1}.hud-progress{top:calc(14px + env(safe-area-inset-top));-webkit-backdrop-filter:blur(12px);background:#263439e0;border:1px solid #fffaf09e;border-radius:16px;width:clamp(176px,30vw,280px);padding:10px 14px 9px;box-shadow:0 10px 28px #0d181b3d}.hud-progress-bar{background:#ffffff40;border:0;height:6px}.hud-progress-fill{background:linear-gradient(90deg,#f2b65e,#88d3a6);box-shadow:0 0 10px #88d3a659}.hud-progress-text{color:#fffaf0c7;letter-spacing:.035em;margin-top:6px;font-size:10px;font-weight:700;display:block}.hud-time{margin-top:1px}.hud-clock{color:#fffaf0;letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-size:clamp(18px,2.4vmin,25px);font-weight:900;line-height:1.1}.hud-best{color:#fffaf09e;margin-top:3px;font-size:9px}.hud-speed{color:#26383a;--speed-fill:0%;--speed-angle:-135deg;background:conic-gradient(from 225deg, #187f80 0 var(--speed-fill), #26383a2e var(--speed-fill) 75%, transparent 75% 100%);width:86px;min-width:86px;height:86px;min-height:86px;text-shadow:none;font-variant-numeric:tabular-nums;isolation:isolate;border:0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:0;font-size:36px;font-style:normal;font-weight:900;line-height:.95;display:flex;position:absolute;box-shadow:0 9px 24px #141e2038}.hud-speed:before{z-index:0;content:"";background:#fffaf0f7;border-radius:50%;position:absolute;inset:6px;box-shadow:inset 0 2px 7px #26383a1a}.hud-speed:after{z-index:1;width:4px;height:8px;transform-origin:50% var(--dial-radius,36px);transform:rotate(var(--speed-angle,-135deg));content:"";background:#d4573f;border-radius:99px;position:absolute;top:7px;left:calc(50% - 2px);box-shadow:0 1px 4px #26383a47}.hud-speed-val{z-index:2;line-height:.95;position:relative}.hud-dial-label{z-index:2;color:#66716d;font-variant-numeric:tabular-nums;font-size:8px;font-style:normal;font-weight:800;line-height:1;position:absolute;bottom:12px}.hud-dial-min{left:12px}.hud-dial-max{right:10px}.hud-speed small{z-index:2;color:#66716d;letter-spacing:.12em;text-transform:uppercase;margin:1px 0 0;font-size:8px;font-style:normal;font-weight:800;line-height:1;display:block;position:relative}.hud-speed .hud-reverse{border-radius:6px;margin:0 0 4px;padding:2px 7px;font-size:10px;font-style:normal;font-weight:900;position:absolute;top:6px;left:7px}.hud-minimap{border:2px solid #fffaf0d9;border-radius:16px;box-shadow:0 8px 22px #141e2033}.hud-chip{letter-spacing:.025em;border:1px solid #ffffff80;border-radius:999px;padding:7px 11px;font-size:11px}.hud-chip.hud-catch{color:#26383a;background:#f2b65e}.hud-chip.hud-slip{color:#183e3d;background:#67c9b4}.hud-hazard,.hud-parked,.hud-finish{border-radius:16px;box-shadow:0 12px 30px #0f191c3d}.pause-btn{top:calc(12px + env(safe-area-inset-top));right:calc(12px + env(safe-area-inset-right));width:48px;height:48px}body.touch-mode .touch{--touch-pad:116px;--pedal-width:68px;--pedal-height:104px}body.touch-mode .t-steer{background:radial-gradient(circle,#fffaf01a 0 30%,#26383a75 31% 60%,#fffaf014 61% 62%,#26383a66 63%);border:1px solid #fffaf0c7;border-radius:50%;box-shadow:inset 0 0 0 5px #ffffff0f,0 8px 22px #0f191c29}body.touch-mode .t-steer .t-arrow{color:#fffaf0e6;text-shadow:0 1px 4px #00000040;font-size:15px}body.touch-mode .t-steer .t-hint{color:#fffaf0e0;letter-spacing:.08em;text-transform:uppercase;font-size:9px;bottom:11px}body.touch-mode .t-knob{background:radial-gradient(circle at 35% 28%,#fffdf5,#d8dfd2);border:2px solid #ffffffe6;width:60px;height:60px;box-shadow:0 5px 16px #0000003d,inset 0 1px 2px #ffffffd9}body.touch-mode .t-pedals{right:calc(14px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));gap:10px}body.touch-mode .t-btn{color:#26383a;-webkit-backdrop-filter:blur(8px);text-shadow:none;background:#fffaf080;border:1px solid #ffffffc7;border-radius:18px;padding:10px 7px;transition:background-color .12s,filter .12s,transform .12s,box-shadow .12s;box-shadow:inset 0 0 0 4px #ffffff0f,0 8px 22px #0f191c29}body.touch-mode .t-btn b{color:inherit;font:800 11px var(--display);letter-spacing:.08em;text-transform:uppercase}body.touch-mode .t-btn small{color:#26383acc;margin-top:4px;font-size:8px;line-height:1.2}body.touch-mode .pedal-bars{opacity:.88;margin-bottom:7px;font-size:19px;line-height:.66}body.touch-mode .t-btn.down{filter:brightness(1.14);background:#fffaf0bf;transform:translateY(2px)scale(.97);box-shadow:0 2px 8px #0f191c33,inset 0 -1px #0000001f}body.touch-mode .t-horn{top:50%;right:calc(14px + env(safe-area-inset-right));border-radius:50%;width:54px;height:54px;padding:12px;position:fixed;transform:translateY(-50%)}body.touch-mode .hud-progress{top:calc(12px + env(safe-area-inset-top));width:clamp(170px,46vw,250px);padding:9px 12px}body.touch-mode .hud-minimap{--minimap-size:clamp(130px, 38vw, 170px);left:calc(6px + env(safe-area-inset-left));width:var(--minimap-size);height:var(--minimap-size);box-shadow:none;-webkit-backdrop-filter:none;opacity:.55;background:0 0;border:0;border-radius:0;padding:0;top:50%;bottom:auto;transform:translateY(-50%)}body.touch-mode .hud-speed{--dial-radius:36px;right:calc(14px + env(safe-area-inset-right));bottom:calc(var(--pedal-height) + 42px + env(safe-area-inset-bottom));border-radius:50%;width:86px;min-width:86px;height:86px;min-height:86px;padding:0;font-size:36px}@media (max-width:720px){.title{background:#1a292a38;align-items:flex-start;padding:12px 14px;overflow-y:auto}.title-card{border-radius:20px;width:min(500px,100vw - 28px);max-height:calc(100dvh - 28px);margin-inline:auto;padding:22px}.title h1{font-size:clamp(27px,8vw,38px)}.title h1 span{font-size:clamp(47px,13vw,64px)}.sub{margin:12px 0 17px}.menu{gap:8px}.btn{padding:12px 14px}.setup{padding:12px}.setup-card{border-radius:20px;max-height:calc(100dvh - 24px)}}@media (max-width:420px){body.touch-mode .touch{--touch-pad:108px;--pedal-width:62px;--pedal-height:96px}body.touch-mode .t-steer{width:var(--touch-pad);height:var(--touch-pad)}body.touch-mode .hud-progress{width:43vw;padding:8px 10px}body.touch-mode .hud-clock{font-size:17px}body.touch-mode .hud-pos{font-size:19px}body.touch-mode .hud-speed{--dial-radius:33px;width:80px;min-width:80px;height:80px;min-height:80px;font-size:32px}}@media (max-height:700px) and (min-width:721px){.title-card{padding:20px 24px}.kicker{margin-bottom:10px}.sub{margin:10px 0 14px}.menu{gap:7px;margin-bottom:11px}.btn{padding:10px 14px}.title-destinations{margin-bottom:11px}.note{margin-top:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--instrument:"Bahnschrift", "Arial Narrow", "Trebuchet MS", sans-serif}.title h1,.title h1 span{letter-spacing:-.025em;font-family:Chango,Trebuchet MS,sans-serif;font-style:normal;font-weight:400}.title h1{line-height:1.1}.title h1 span{font-size:clamp(45px,5.6vw,68px);line-height:1.06}.setup-card>h2{font-size:clamp(23px,2.7vw,31px);line-height:1.25}.pause-card h2,.records-card h2{font-size:25px;line-height:1.25}.btn b{font-family:var(--font)}.hud-speed,.hud-clock,.hud-pos{font-family:var(--instrument)}.hud-finish-title{font-size:clamp(14px,2vw,20px)}.hud-section b{font-size:14px}.showroom-note{white-space:nowrap;bottom:12px;left:50%;transform:translate(-50%)}.showroom-note span{font-family:var(--font);font-size:13px}.showroom-note small{font-size:10px}.setup-panels{grid-template-columns:minmax(0,1fr)}.setup[data-players="2"] .setup-panels{grid-template-columns:repeat(2,minmax(0,1fr))}.setup-panel,.setup[data-players="2"] .setup-panel{border-left:1px solid #33363b1f;border-top:4px solid var(--c);padding:14px}.setup-panel h2 small{font-size:10px}.setup[data-players="2"] .stat{display:grid}.setup[data-players="2"] .blurb{min-height:2.6em;margin:8px 0;display:block}.setup[data-players="2"] .colour-name{display:block}.setup-actions .btn:first-child{flex:0 170px}.setup-actions{flex-wrap:wrap}.car-pick .pill small{font-size:10px}.setup .swatches{gap:10px}.setup .swatch{width:30px;height:30px}.setup-panel .stat{grid-template-columns:70px minmax(35px,1fr) 65px;font-size:11px}.records-card{overflow:auto}.records-card table{min-width:470px}.pause-card{max-height:calc(100dvh - 28px);overflow:auto}.opt.slider input{min-height:28px}.pill:disabled,.swatch:disabled{cursor:not-allowed}.t-horn{border-radius:50%}.t-steer.active{background-color:#2233337a}body.touch-mode .hud-progress-bar{height:6px}body.touch-mode{--touch-pad:116px;--pedal-width:68px;--pedal-height:104px}body.touch-mode .t-btn b{font-family:var(--font)}body.touch-mode .t-horn.down{transform:translateY(calc(2px - 50%))scale(.97)}.hud[data-split=true] .hud-progress{width:min(42%,230px)}@media (max-width:720px){.title h1{font-size:clamp(24px,7.2vw,34px)}.title h1 span{font-size:clamp(42px,12vw,60px)}.setup[data-players="2"] .setup-panels{grid-template-columns:minmax(0,1fr)}.setup[data-players="2"] .car-pick{flex-direction:row}.setup[data-players="2"] .stat em{display:block}.setup-actions .btn{min-width:110px}.setup-card{padding-bottom:20px}.showroom-note{display:none}.pause-card{width:min(360px,100vw - 28px);min-width:0;padding:20px}}@media (pointer:coarse) and (max-height:500px){.title-card{width:min(430px,100vw - 28px)}.title-card .menu{display:grid}.title-card .record-link{padding:8px 3px}.title-card .record-link small{display:block}.title-card .kicker{display:inline-flex}.title-card .title-destinations{display:flex}}@media (max-width:420px){body.touch-mode{--touch-pad:108px;--pedal-width:62px;--pedal-height:96px}}@media (max-width:560px){body.touch-mode .hud-progress{top:calc(64px + env(safe-area-inset-top));width:min(54vw,210px)}}@container (width<=550px){.hud[data-split=true] .hud-progress{width:min(54%,230px);top:75px;left:50%}}@media (max-height:500px){body.touch-mode,body.touch-mode .touch{--touch-pad:100px;--pedal-width:58px;--pedal-height:90px}body.touch-mode .hud-minimap{--minimap-size:clamp(90px, 28dvh, 130px)}body.touch-mode .hud-progress{top:calc(12px + env(safe-area-inset-top));width:28%}body.touch-mode .hud-speed{--dial-radius:33px;width:80px;min-width:80px;height:80px;min-height:80px;font-size:32px}}.hud-chip.hud-catch.turbo{color:#fff3da;background:#d8432e}.online-card{width:min(640px,100%)}.online input[type=text]{-webkit-user-select:text;user-select:text;font:inherit;color:var(--charcoal);background:#ffffffe6;border:1px solid #33363b33;border-radius:11px;padding:10px 12px;font-size:16px}.online input[type=text]:focus{border-color:var(--teal);outline-offset:1px;outline:3px solid #176f7040}.online-field{gap:6px;max-width:280px;margin:0 0 16px;font-size:12px;font-weight:800;display:grid}.online-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.online-choice{background:#ffffffb3;border:1px solid #33363b1f;border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex}.online-choice h3{margin:0;font-size:15px}.online-choice p{color:var(--muted);flex:1;margin:0 0 4px;font-size:12px}.online-join{gap:8px;display:flex}.online-join input[type=text]{text-transform:uppercase;letter-spacing:.3em;text-align:center;flex:1;width:0;font-weight:800}.online-join .btn{flex:none;min-width:0;padding-inline:18px}.online-status{min-height:1.4em;color:var(--teal);margin:12px 0 0;font-size:13px;font-weight:700}.online-status.error{color:#b23a26}.online-hint{color:var(--muted);margin:14px 0 8px;font-size:12px}.room-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.room-head h2{letter-spacing:-.04em;margin:0;font-size:clamp(23px,2.7vw,31px)}.room-code{background:var(--charcoal);color:var(--cream);letter-spacing:.14em;font-family:var(--instrument,var(--font));border-radius:10px;margin-left:6px;padding:2px 12px;display:inline-block}.room-players{gap:6px;margin:0;padding:0;list-style:none;display:grid}.room-players li{border:1px solid #33363b1f;border-left:4px solid var(--c,transparent);background:#ffffffc7;border-radius:11px;grid-template-columns:16px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:9px 12px;font-size:13px;display:grid}.room-players li.empty{color:var(--muted);background:#ffffff59;border-style:dashed;border-left-width:1px}.room-dot{background:var(--c,#33363b26);border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 1px #33363b40}.room-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.room-name small{color:var(--teal);letter-spacing:.06em;text-transform:uppercase;margin-left:8px;font-size:10px;font-weight:800}.room-car{color:var(--muted);font-size:12px}.room-ready{color:var(--muted);background:#33363b14;border-radius:99px;padding:3px 9px;font-size:11px;font-weight:800}.room-ready.on{background:var(--teal);color:#fff}.room-look{gap:8px;margin-top:4px;font-size:12px;font-weight:700;display:grid}.room-look .car-pick{max-width:380px}.room-look .swatches{margin-top:0}#room-env .pill:disabled,#room-cpu .pill:disabled{opacity:.6}#room-env .pill:disabled:not([aria-pressed=true]),#room-cpu .pill:disabled:not([aria-pressed=true]){background:0 0}#btn-room-ready[aria-pressed=true]{background:var(--charcoal);border-color:var(--charcoal)}@media (max-width:560px){.online-choices{grid-template-columns:minmax(0,1fr)}.room-players li{grid-template-columns:14px minmax(0,1fr) auto}.room-car{display:none}.online .setup-actions{flex-wrap:wrap}.online .setup-actions .btn{flex:1;min-width:0}}.swatch:disabled{opacity:.55;position:relative}.swatch:disabled:after{content:"";background:var(--charcoal);border-radius:2px;width:120%;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg)}.results-card{width:min(420px,100vw - 32px)}.results-list{gap:5px;margin:4px 0 0;padding:0;list-style:none;display:grid}.results-list li{background:#ffffffc7;border:1px solid #33363b1f;border-radius:10px;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 11px;font-size:13px;display:grid}.results-list li b{font-family:var(--instrument,var(--font));color:var(--teal);font-size:17px}.results-list li span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:700;overflow:hidden}.results-list li span small{color:var(--teal);letter-spacing:.06em;text-transform:uppercase;margin-left:6px;font-size:10px;font-weight:800}.results-list li em{font-style:normal;font-family:var(--instrument,var(--font));color:var(--muted)}.results-list li.you{border-color:var(--teal);box-shadow:inset 3px 0 0 var(--teal)}.results-list li .room-dot{vertical-align:-1px;width:11px;height:11px;margin-right:8px;display:inline-block}
