:root{--bg:#0a1018;--panel:#121c28;--panel2:#172331;--ink:#f0f4fa;--muted:#8999ac;--line:#283748;--lime:#d3ff66;--orange:#ff713e;--cyan:#3cc7ed}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 20% 0,#142335 0,transparent 48%),var(--bg);font:14px 'Segoe UI',Arial,sans-serif;color:var(--ink)}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--lime);outline-offset:4px}a{text-decoration:none;color:inherit}button{color:inherit}p{line-height:1.65}input,select{color:var(--ink);background:#0e1721;border:1px solid #344559;border-radius:8px;padding:12px;min-width:0;max-width:100%;color-scheme:dark}select{cursor:pointer}input:focus,select:focus{border-color:var(--cyan)}.masthead{display:flex;justify-content:space-between;align-items:center;max-width:1680px;margin:auto;padding:24px 38px;border-bottom:1px solid var(--line);gap:20px}.wordmark{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:900;letter-spacing:-.7px}.wordmark>span>span{font-weight:400;margin-left:3px}.wordmark small{display:block;color:#8b9cb1;font-size:7px;letter-spacing:2.8px;margin-top:3px}.brand-mark{display:grid;place-items:center;width:39px;height:41px;background:var(--lime);color:#142013;border-radius:10px;transform:skew(-5deg);font-size:32px}.masthead nav{display:flex;align-items:center;gap:20px}.masthead nav>a:not(.button),.text-btn{font-size:11px;background:transparent;color:#b7c4d4;padding:5px 0}.text-btn:hover,.masthead nav>a:hover{color:var(--ink)}.mode-badge{font-size:8px;letter-spacing:1px;font-weight:800;color:#9fb1c2;display:flex;align-items:center;gap:7px}.mode-badge i,.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px #bfff4244}.button{display:flex;align-items:center;justify-content:center;gap:10px;font-size:12px;font-weight:800;border-radius:8px;padding:14px 18px;transition:filter .15s,transform .15s}.button:not(:disabled):hover{filter:brightness(1.1);transform:translateY(-1px)}.accent{background:var(--lime);color:#192819}.outline{border:1px solid #405066;background:transparent;color:#d6e1ef}.small{padding:10px 14px;font-size:10px}.wide{width:100%}.green{background:#244d35;border:1px solid #367a4d;color:#a3f3ba}.orange{background:var(--orange);color:#21140d}.shell{max-width:1680px;margin:auto;padding:32px 38px 22px}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:20px}.eyebrow{font-size:8px;letter-spacing:1.8px;font-weight:850;color:var(--lime)}h1{font-size:clamp(26px,3.4vw,49px);line-height:1.05;letter-spacing:-1.9px;font-weight:950;margin:10px 0}h1 em{font-style:normal;color:var(--lime)}.intro p{font-size:12px;color:var(--muted);margin:0}.round-info{display:grid;justify-items:end;gap:10px;flex-shrink:0}#roundLabel{font-size:13px;font-weight:800;letter-spacing:1px}#roundLabel small{font-size:12px;color:#6e8197;font-weight:500}.round-info>b{font-size:8px;letter-spacing:1px;padding:7px 9px;color:#bad99a;border:1px solid #3d5039;border-radius:5px;background:#203023}.online-bar{padding:14px 18px;background:#152a36;border:1px solid #2a5062;border-radius:12px;margin-bottom:20px;display:flex;justify-content:space-between;gap:12px;align-items:center}.online-bar[hidden],.notice[hidden],[hidden]{display:none!important}.online-bar>div{display:flex;gap:16px;align-items:center}.online-bar .eyebrow{color:var(--cyan)}#roomCode{letter-spacing:3px;font-size:17px}#connectionStatus{font-size:10px;color:#8eafbf}.notice{padding:12px 16px;border:1px solid #7d6241;background:#32291f;border-radius:9px;color:#f0c99a;font-size:12px;margin-bottom:16px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 338px;gap:22px}.left-column,.right-column{min-width:0}.scene-card{position:relative;border-radius:17px;background:#0b1820;border:1px solid #2a3d48;overflow:hidden;box-shadow:0 15px 55px #0004}.scene-top{position:relative;z-index:2;padding:18px 20px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.scene-top>span:first-child{display:flex;gap:8px;align-items:center}.scene-top b{font-size:9px;letter-spacing:1.3px}.scene-top small{font-size:8px;color:#6a8a97;letter-spacing:.8px}.scene-edition{font-size:7px;border:1px solid #304754;border-radius:5px;letter-spacing:1.4px;padding:5px 7px;color:#98b0bc}#scene{height:590px;position:relative;cursor:grab;touch-action:pan-y}#scene:active{cursor:grabbing}#scene canvas{width:100%;height:100%;display:block}.loading{position:absolute;inset:0;display:grid;place-items:center;color:#95b590;font-size:12px}.scene-tools{padding:0 18px 15px;display:flex;justify-content:space-between;align-items:center;gap:10px}.scene-tools>span{font-size:7px;letter-spacing:.6px;color:#6e8a98}.scene-tools i{font-style:normal;padding:0 4px}.scene-tools>div{display:flex;gap:5px}.scene-tools button{background:#182b35;border:1px solid #29434f;color:#9ab3bf;min-width:26px;height:26px;border-radius:5px;font-size:13px}#viewBtn{font-size:8px;padding:0 9px}.scene-footer{border-top:1px solid #233941;display:flex;justify-content:space-between;padding:14px 18px;font-size:7px;gap:15px;align-items:center}.scene-footer>div{display:flex;gap:16px}.scene-footer>b{letter-spacing:.7px;color:#7f9b90;white-space:nowrap}.key{letter-spacing:.6px;color:#8b9eae;font-weight:750}.key:before{content:'';display:inline-block;height:5px;width:5px;margin-right:5px;border-radius:2px;background:var(--color)}.city-key{--color:#e269d7}.jungle-key{--color:#71d760}.speed-key{--color:#36b8f0}.corner-key{--color:#f9a246}.track-event{position:absolute;top:55px;left:50%;transform:translateX(-50%);border-radius:7px;z-index:3;padding:10px 14px;border:1px solid #9a8848;background:#34301ee8;color:#ffe597;font-size:9px;letter-spacing:1px;font-weight:800;white-space:nowrap;box-shadow:0 6px 20px #0005}.track-event.photo{color:#ffb5ed;border-color:#854e83;background:#352039ec}.track-event.shortcut{color:#bbff97;border-color:#507f44;background:#243b1feb}.track-event.mud{color:#ffc68c;border-color:#896444;background:#3a2a1be8}.build-section{margin-top:23px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.section-heading h2{font-size:11px;letter-spacing:1.15px;font-weight:850;margin:0}.section-heading>span{color:#7c91a6;font-size:8px;letter-spacing:.6px}.build-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.build-card{border:1px solid #293a4c;border-radius:11px;background:linear-gradient(140deg,#1a2938,#101c28);padding:14px;text-align:left;transition:border .15s,transform .15s}.build-card:hover{border-color:#688378;transform:translateY(-2px)}.build-card.chosen{border-color:#8ebd5b;background:linear-gradient(140deg,#263c2b,#142622)}.build-number{font-size:7px;letter-spacing:.8px;color:#87a0b2;display:flex;justify-content:space-between;align-items:center}.build-number>b{color:var(--lime);font-size:10px}.car-illustration{height:57px;display:flex;align-items:center;justify-content:center;margin:8px 0}.car-illustration svg{height:55px;max-width:130px;width:100%;overflow:visible}.build-card h3{font-size:17px;letter-spacing:-.5px;margin:4px 0}.build-card p{font-size:10px;line-height:1.6;color:#8fa5b7;margin:6px 0 12px;min-height:46px}.build-spec{border-top:1px solid #2d4252;padding-top:9px;display:flex;justify-content:space-between;font-size:7px;font-weight:800;letter-spacing:.5px;color:#acbfcc}.district-guide{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:16px}.district-card{padding:13px 12px;min-width:0;border-radius:8px;border:1px solid var(--edge);background:linear-gradient(140deg,var(--tint),#10202b)}.district-card>b{font-size:7px;letter-spacing:1px;color:var(--accent)}.district-card>strong{font-size:12px;letter-spacing:-.2px;display:block;margin-top:10px}.district-card>p{font-size:9px;color:#90a4b5;min-height:28px;margin:7px 0 10px}.district-card>span{font-size:6px;font-weight:800;letter-spacing:.7px;color:var(--accent)}.city-art{--edge:#533955;--tint:#332238;--accent:#ed9bdc}.mud-art{--edge:#365741;--tint:#233c2b;--accent:#9ee68d}.speed-art{--edge:#2a536c;--tint:#183951;--accent:#67d4ff}.corner-art{--edge:#675137;--tint:#393120;--accent:#f4c27b}.timeline{display:flex;align-items:center;gap:22px;padding-top:22px;border-top:1px solid var(--line);margin-top:21px}.timeline>div{display:grid;gap:5px;opacity:.5}.timeline>.active{opacity:1}.timeline>span{font-size:22px;color:#405974}.timeline div>span{font-size:8px;color:var(--lime);letter-spacing:.7px}.timeline b{font-size:8px;letter-spacing:1px}.timeline small{font-size:9px;color:#7a8fa6}.timeline>.finish-goal{margin-left:auto;display:flex;align-items:center;gap:10px;opacity:1}.finish-goal>span{font-size:24px!important}.finish-goal small{display:block;font-size:8px;margin-top:5px;letter-spacing:0;font-weight:400}.right-column{display:flex;flex-direction:column;gap:14px}.turn-panel{padding:21px;background:linear-gradient(140deg,#233927,#15271f);border:1px solid #3a5138;border-radius:16px}.turn-top{display:flex;align-items:center;justify-content:space-between}.turn-top .eyebrow{font-size:7px}.turn-top>span:last-child{font-size:7px;color:#89a184;letter-spacing:1px}.driver-title{display:flex;align-items:center;gap:7px;margin-top:14px}.driver-title>i{width:7px;height:7px;border-radius:50%;flex-shrink:0}.driver-title h2{font-size:26px;letter-spacing:-1px;margin:0;max-width:175px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#driverBuild{margin-left:auto;border:1px solid #536a4b;color:#b9cbb0;font-size:8px;padding:5px 6px;border-radius:4px;max-width:104px;line-height:1.4}.dice-row{display:flex;align-items:center;gap:14px;margin-top:21px}.dice-face{width:62px;min-width:62px;height:64px;border-radius:11px;background:#edf5de;color:#19301d;box-shadow:0 4px #829a68,inset 0 0 0 1px #fff9;display:grid;place-items:center;font-weight:900;font-size:30px}.dice-face.rolling{animation:dice-shake .14s infinite}.dice-row strong{font-size:12px;font-weight:700;line-height:1.5;display:block}.dice-row p{font-size:9px;color:#9cb393;margin:4px 0;line-height:1.5}.dice-range{display:flex;gap:3px;flex-wrap:wrap;margin-top:5px}.dice-range i{font-style:normal;font-size:7px;min-width:15px;height:15px;padding:0 3px;background:#3c5637;color:#c1d5ad;border-radius:3px;display:grid;place-items:center}.car-perks{display:flex;gap:4px;flex-wrap:wrap;margin-top:15px}.car-perks span{font-size:7px;padding:4px 5px;border-radius:4px;background:#344c32;color:#bacfae}.turn-message{font-size:10px;line-height:1.7;color:#aec6a5;margin:17px 0 14px}#turnActions{display:grid;gap:8px}#turnActions .button{font-size:11px}.action-pair{display:grid;grid-template-columns:1.3fr 1fr;gap:7px}.route-choice{display:grid;gap:7px}.route-choice>div{padding:10px;background:#42452c;border:1px solid #676c40;border-radius:7px}.route-choice b{display:block;font-size:11px;color:#f0dfa2}.route-choice span{display:block;font-size:9px;margin-top:5px;color:#c5c69f}.route-choice small{font-size:8px;color:#9fb397;line-height:1.6}.cpu-controls{border-top:1px solid #45603c;padding-top:11px;margin-top:15px}.cpu-controls>div{display:flex;justify-content:space-between;align-items:center}.cpu-controls>div>span{font-size:7px;letter-spacing:1px;color:#d3ebad}.cpu-controls .text-btn{font-size:9px;padding:3px}.cpu-controls select{padding:6px;font-size:9px;background:#23351f;border-color:#4a603b;width:100%;margin-top:7px}.cpu-controls p{font-size:9px;color:#9ab38a;line-height:1.5;margin:9px 0 0}.panel{padding:18px;border:1px solid var(--line);background:linear-gradient(140deg,#15212e,#111a26);border-radius:12px}.part-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px}.part-slot{min-height:58px;border:1px dashed #34465a;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;background:#101a25;color:#5f748b;padding:5px}.part-slot.fitted{border:1px solid var(--rarity);box-shadow:inset 0 0 17px color-mix(in srgb,var(--rarity) 10%,transparent)}.part-slot>span{font-size:8px;font-weight:750;color:var(--rarity,#6c7d91);text-align:center}.part-slot small{font-size:6px;color:var(--rarity,#6c7d91);letter-spacing:.6px}.part-slot b{font-size:11px;color:#d5e3ed}.part-offer{background:#1d2b3b;border:1px solid var(--rarity,#34485f);padding:12px;border-radius:8px}.part-offer .eyebrow{font-size:6px;color:var(--rarity)}.part-offer>div{display:flex;justify-content:space-between;gap:10px;margin-top:7px;font-size:11px}.part-offer p{font-size:9px;color:#8fa8bc;line-height:1.6;margin:7px 0 0}.rarity-tag{color:var(--rarity);font-size:8px}.part-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}.upgrade-button{display:flex;justify-content:space-between;align-items:center;gap:8px;background:#263d31;border:1px solid #4b6c40;color:#c7ebaf;font-size:9px;font-weight:800;padding:10px;border-radius:6px;width:100%}.part-actions .upgrade-button{justify-content:center}.part-pass{font-size:8px;color:#8e9fb0;background:transparent;border:1px solid #35475b;border-radius:6px}.build-advice,.garage-description{font-size:9px;line-height:1.6;color:#94a4b5;margin:10px 0}.garage-description strong{color:#c9d8e6}.parts-note,.rent-funds{font-size:8px;line-height:1.6;color:#647c91;margin-top:10px}.rent-funds{display:flex;justify-content:space-between}.delivery-closed{font-size:10px;padding:8px 0;color:#97adbd}.delivery-closed p{font-size:9px;color:#70889c}.garage-swap{border-top:1px solid #2b3e51;margin-top:13px;padding-top:12px}.garage-swap b{font-size:8px;letter-spacing:.8px;color:#a1b2c2}.garage-swap>div{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.garage-swap select,.track-editor select,#replaceSlot{font-size:9px;padding:8px;width:100%}.garage-swap button{margin-top:7px}.track-editor{display:grid;gap:9px}.player-row{display:flex;gap:10px;align-items:center;padding:11px 0;border-top:1px solid #243447}.player-row.active{background:#1c2d32;margin:0 -7px;padding:11px 7px;border-radius:7px}.player-dot{width:29px;height:29px;display:grid;place-items:center;border-radius:7px;font-size:10px;font-weight:800;background:color-mix(in srgb,var(--driver) 15%,transparent);color:var(--driver);border:1px solid color-mix(in srgb,var(--driver) 30%,transparent)}.player-info{flex:1;min-width:0}.player-info strong{font-size:11px}.player-info small{display:block;font-size:8px;color:#728ba2;margin-top:4px}.player-money{text-align:right}.player-money b{font-size:14px;display:block;letter-spacing:-.4px}.player-money small{font-size:7px;color:#6d879e}.control-chip{font-size:6px;border:1px solid #365363;padding:2px 4px;color:#71a3bb;border-radius:3px;margin-left:5px}.radio-live{font-size:7px!important;color:var(--orange)!important;letter-spacing:1px}.log{font-size:9px;color:#738ba1;line-height:1.6;max-height:132px;overflow:auto}.log p{padding:7px 0;margin:0;border-top:1px solid #25384a}.log p:first-child{border:0;padding-top:0;color:#c6d4df}.page-footer{display:flex;justify-content:space-between;gap:20px;margin-top:27px;font-size:7px;color:#4d667d;letter-spacing:1px}.page-footer>span:last-child{letter-spacing:0}.room-panel .section-heading>span{font-size:7px;color:var(--cyan)}.room-member{display:flex;align-items:center;gap:8px;font-size:11px;padding:8px 0;border-top:1px solid #293d50}.room-member i{width:9px;height:9px;border-radius:50%;background:var(--driver)}.room-member small{margin-left:auto;font-size:7px;color:#7b95aa}#lobbyActions{display:grid;gap:8px;margin-top:10px}#lobbyActions p{font-size:10px;color:#88a6bc;margin:0}.room-panel .button{font-size:10px;padding:10px}dialog{background:linear-gradient(135deg,#182638,#0e1722);border:1px solid #3b526a;color:var(--ink);border-radius:18px;padding:28px;width:640px;max-width:calc(100vw - 24px);max-height:90vh;overflow:auto;box-shadow:0 35px 120px #0009}dialog::backdrop{background:#02070dcc;backdrop-filter:blur(7px)}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.dialog-heading h2{font-size:32px;letter-spacing:-1.2px;margin:7px 0 0}.close-button{font-size:26px;padding:0 3px;background:transparent;color:#6e879f}.muted{font-size:12px;color:#8da3b9;line-height:1.7}.field-label{display:block;font-size:8px;font-weight:800;letter-spacing:1px;color:#a0b3c6;margin:20px 0 8px}#playerCount,#roomCapacity{width:100%}.setup-labels{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:9px;font-size:7px;color:#708a9f;letter-spacing:1px;margin-top:22px}.setup-driver{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:9px;margin-top:9px}.setup-driver input,.setup-driver select{font-size:11px;padding:10px;min-width:0;width:100%}.all-computers{font-size:10px;color:var(--cyan);background:#192e3e;border:1px solid #305069;border-radius:6px;padding:10px;width:100%;margin-top:15px}.setup-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:25px}.setup-bottom>span{font-size:9px;line-height:1.7;color:#718a9f}.setup-bottom .button{font-size:11px}.color-picker{display:flex;gap:11px;flex-wrap:wrap}.color-picker label{position:relative;cursor:pointer}.color-picker input{position:absolute;opacity:0;width:1px;height:1px}.color-picker i{display:block;width:30px;height:30px;border-radius:50%;background:var(--swatch);border:3px solid #1b2c3f;box-shadow:0 0 0 1px #3d5066}.color-picker input:checked+i{border-color:#edf6e6;box-shadow:0 0 0 2px var(--swatch)}#onlineName{width:100%}.online-create{display:grid;grid-template-columns:1fr 1.5fr;gap:9px;align-items:center;margin-top:20px}.online-create .field-label{grid-column:1/-1;margin:0}.online-create select,.online-create button{font-size:11px;height:43px}.join-divider{display:flex;align-items:center;gap:15px;font-size:8px;letter-spacing:1px;color:#617b92;margin:25px 0 0}.join-divider:before,.join-divider:after{content:'';height:1px;background:#2b4054;flex:1}.join-row{display:grid;grid-template-columns:1fr 135px;gap:9px}#joinCode{letter-spacing:3px;text-transform:uppercase;width:100%}.form-error{font-size:11px;color:#ff9f84;min-height:17px}.fine-print{font-size:9px;line-height:1.7;color:#617d94}.rules-content{font-size:12px;color:#99aec3;line-height:1.8}.rules-content h3{font-size:13px;color:#dbe6f1;margin:23px 0 5px}.rules-content b{color:#d2e0ec}.detail-stat{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #2c4055;padding:14px 0;font-size:12px;color:#97b0c6}.detail-stat b{color:#e2edf7;max-width:62%;text-align:right}.tile-note{font-size:11px;color:#7f9ab1;line-height:1.8}.result-row{display:flex;gap:12px;align-items:center;padding:15px 0;border-top:1px solid #2f465c}.result-row>b{color:var(--lime);font-size:18px}.result-row>div{flex:1}.result-row strong{display:block;font-size:14px}.result-row small{font-size:9px;color:#7792a9}.result-row>span{font-size:23px;font-weight:850}#results{margin:20px 0}.round-fallback{position:absolute;inset:15px;background:#123323;border-radius:20%;transform:perspective(900px) rotateX(15deg)}.fallback-tile{position:absolute;transform:translate(-50%,-50%);width:8%;font-size:6px;background:#1a2b3c;border:1px solid #3d526a;color:#d0deea;padding:5px;border-radius:4px}.fallback-tile small{font-size:6px;display:block}.fallback-center{position:absolute;inset:30%;display:grid;place-content:center;text-align:center;color:#c7f79a;font-weight:900}.fallback-center small{font-size:8px;color:#739583;font-weight:400;margin-top:9px}@keyframes dice-shake{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@media(min-width:1500px){.game-layout{grid-template-columns:minmax(0,1fr) 365px}#scene{height:670px}}@media(max-width:1150px){.masthead,.shell{padding-left:24px;padding-right:24px}.masthead nav{gap:13px}.mode-badge{display:none}.game-layout{grid-template-columns:minmax(0,1fr) 300px;gap:17px}#scene{height:530px}.panel,.turn-panel{padding:16px}.district-guide{grid-template-columns:1fr 1fr}.finish-goal{display:none!important}.scene-tools>span{font-size:6px}.scene-footer>div{gap:9px}.scene-footer{font-size:6px}.build-card{padding:11px}.build-card h3{font-size:15px}.build-card p{font-size:9px}.build-spec{font-size:6px}}@media(max-width:850px){.game-layout{grid-template-columns:1fr}.right-column{display:grid;grid-template-columns:1fr 1fr;align-items:start}.room-panel{grid-column:1/-1}.radio{align-self:stretch}#scene{height:550px}.masthead nav{gap:12px}.masthead nav>a:not(.button),.masthead .text-btn{font-size:9px}.wordmark{font-size:16px}.brand-mark{width:31px;height:35px;font-size:27px}.wordmark small{font-size:6px}.intro{align-items:flex-start}.intro h1{font-size:36px}.intro p{font-size:11px}.online-bar{flex-wrap:wrap}.online-bar>div{gap:12px}.online-bar .button{padding:8px;font-size:9px}.scene-footer>div{gap:18px}.district-card>strong{font-size:14px}.build-card h3{font-size:17px}}@media(max-width:540px){.masthead{padding:17px 14px;align-items:flex-start}.wordmark{font-size:14px;gap:7px}.wordmark small{font-size:5px;letter-spacing:1.7px}.brand-mark{width:28px;height:32px;font-size:24px}.masthead nav{justify-content:flex-end;flex-wrap:wrap;gap:9px;max-width:175px}.masthead .button{font-size:8px;padding:6px 8px}.masthead nav>a:not(.button),.masthead .text-btn{font-size:8px;padding:0}.shell{padding:25px 13px 15px}.intro{display:block;margin-bottom:20px}.intro h1{font-size:33px;line-height:1.1;max-width:320px}.intro h1 em{display:block}.intro .eyebrow{font-size:7px}.intro p{font-size:10px}.round-info{margin-top:20px;display:flex;justify-content:space-between;align-items:center}#roundLabel{font-size:11px}#roundLabel small{font-size:10px}.round-info>b{font-size:7px;padding:6px}#scene{height:400px}.scene-top{padding:13px 12px 0}.scene-top small{display:none}.scene-top b{font-size:8px}.scene-edition{font-size:6px}.scene-tools{padding:0 11px 12px;align-items:flex-end}.scene-tools>span{font-size:6px;max-width:125px;line-height:1.8}.scene-tools i{padding:0 2px}.scene-tools>div{gap:3px}.scene-tools button{min-width:24px;height:25px}.scene-footer{padding:11px;font-size:6px}.scene-footer>div{gap:8px;flex-wrap:wrap}.scene-footer>b{font-size:6px}.key{font-size:6px}.key:before{height:4px;width:4px;margin-right:3px}.build-section .section-heading>span{font-size:7px;max-width:140px;text-align:right;line-height:1.5}.section-heading h2{font-size:10px;line-height:1.5}.build-cards{gap:7px}.build-card{padding:8px}.build-number{font-size:6px;letter-spacing:.2px}.build-number>b{font-size:8px}.build-card h3{font-size:13px}.build-card p{font-size:8px;min-height:56px;margin-bottom:9px}.car-illustration{height:45px}.car-illustration svg{height:44px}.build-spec{display:block;line-height:1.7}.build-spec span{display:block}.timeline{gap:13px;padding-top:18px}.timeline b{font-size:7px;letter-spacing:.5px}.timeline small{font-size:8px}.timeline div>span{font-size:7px}.right-column{grid-template-columns:1fr;gap:12px}.panel,.turn-panel{padding:20px}.online-bar{padding:12px}.online-bar>div{gap:10px;flex-wrap:wrap}.online-bar .eyebrow{font-size:6px}#connectionStatus{font-size:8px}#roomCode{font-size:14px}.online-bar .text-btn{font-size:9px}.online-bar .button{font-size:8px}.page-footer{font-size:6px;line-height:1.8}.page-footer>span:first-child{max-width:125px}dialog{padding:21px}.dialog-heading h2{font-size:27px}.setup-driver,.setup-labels{grid-template-columns:1.1fr 1fr .95fr;gap:5px}.setup-driver input,.setup-driver select{font-size:10px;padding:9px 5px}.setup-bottom{gap:12px}.setup-bottom .button{font-size:10px;padding:12px}.setup-bottom>span{font-size:8px}.track-event{font-size:7px;padding:8px 10px;letter-spacing:.6px;max-width:92%}.district-card{padding:12px}.district-card strong{font-size:12px}.district-card p{font-size:8px}.district-card span{font-size:6px}.cpu-controls>div>span{font-size:8px}.join-row{grid-template-columns:1fr 110px}.join-row .button{font-size:10px}.color-picker{gap:10px}.color-picker i{width:27px;height:27px}}
.camera-toolbar{padding:0 18px 16px}.camera-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.camera-heading>span{font-size:7px;color:#91acbd;letter-spacing:.7px;line-height:1.7}.camera-heading>button{padding:6px 8px;border:1px solid #42535b;border-radius:5px;background:#1b2c35;color:#a8bbc7;font-size:9px;white-space:nowrap}.camera-heading>button[aria-pressed=true]{color:#d1ff6a;background:#273824;border-color:#5a7439}.camera-options{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.camera-presets{display:flex;gap:5px;flex:1}.camera-presets>button{flex:1;border:1px solid #2b4555;border-radius:6px;background:#142632;color:#9db4c5;font-size:10px;font-weight:700;padding:9px 8px;white-space:nowrap}.camera-presets>button[aria-pressed=true]{color:#e8f4ff;border-color:#6b9fb5;background:#29475a;box-shadow:inset 0 -2px #73d1ef}.free-camera-tools{display:flex;gap:4px}.free-camera-tools>button{border:1px solid #345267;background:#172c3a;color:#b4cbdb;border-radius:5px;width:28px;height:31px;font-size:15px}#scene.camera-locked,#scene.camera-locked:active{cursor:pointer}@media(max-width:540px){.camera-toolbar{padding:0 11px 12px}.camera-heading{gap:9px}.camera-heading>span{font-size:6px;max-width:180px}.camera-heading>button{font-size:8px;padding:6px}.camera-presets>button{font-size:9px;padding:9px 5px}.camera-presets{min-width:100%}.camera-options{gap:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.ownership-key{margin-top:10px;padding:13px 16px;border:1px solid #2b414f;border-radius:10px;background:#101e2a}.ownership-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.ownership-heading>b{color:#d3e3ec;font-size:9px;letter-spacing:1px}.ownership-heading>span{font-size:9px;color:#8ca5b7}.ownership-drivers{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}.owner-chip{display:flex;align-items:center;gap:7px;min-width:0;padding:6px 9px 6px 6px;border:1px solid color-mix(in srgb,var(--owner-color) 30%,#1b2b38);border-radius:7px;background:color-mix(in srgb,var(--owner-color) 6%,#12202c)}.owner-chip>span:not(.owner-number){font-size:10px;color:#d5e2ec;max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.owner-chip>small{font-size:9px;color:#8ca5b7;margin-left:3px}.owner-number{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;flex-shrink:0;border-radius:4px;background:var(--owner-color);color:#08141b;font-size:12px;font-weight:900;font-style:normal;box-shadow:0 0 0 1px #ffffff16}.detail-owner{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.fallback-tile.claimed{border-width:2px;box-shadow:0 0 0 1px var(--owner-color),inset 0 0 12px color-mix(in srgb,var(--owner-color) 20%,transparent)}.fallback-owner{display:block;background:var(--owner-color);color:#08141b;font-size:7px;padding:2px;margin-top:3px;border-radius:2px}@media(max-width:540px){.ownership-key{padding:12px}.ownership-heading{align-items:flex-start}.ownership-heading>span{max-width:145px;text-align:right;line-height:1.5;font-size:8px}.owner-chip{gap:5px;padding:5px}.owner-chip>span:not(.owner-number){font-size:9px;max-width:90px}.owner-chip>small{font-size:8px}.owner-number{width:21px;height:21px;font-size:11px}}

#winnerDialog{max-height:90vh;overflow:auto;width:min(680px,94vw)}.review-awards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin:12px 0}.review-table{overflow-x:auto;margin:12px 0}.review-row{display:grid;grid-template-columns:28px 1.3fr repeat(7,1fr);gap:6px;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:12px;min-width:560px}.review-head{font-size:10px;opacity:.7;letter-spacing:.08em}
.review-story{font-size:14px;margin:6px 0 10px}.review-h{font-size:11px;letter-spacing:.12em;margin:18px 0 8px;opacity:.8}.review-card{border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:12px;margin:8px 0}.review-top{display:grid;grid-template-columns:40px 26px 1fr auto;gap:10px;align-items:center}.place{font-size:18px}.review-money{text-align:right;display:grid}.review-money small{opacity:.7}.review-label{font-size:10px;letter-spacing:.1em;opacity:.6;margin:10px 0 4px}.review-parts{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-block;border:1px solid var(--rarity,#52687e);border-radius:999px;padding:3px 9px;font-size:11px}.chip.award{border-color:#ffd14c}.chip small{opacity:.75;margin-left:4px}.moment-row{display:grid;grid-template-columns:44px 26px 1fr;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:13px}
.conditions-bar{display:flex;align-items:center;gap:15px;padding:15px 18px;margin-bottom:18px;border:1px solid #3c545b;border-radius:12px;background:linear-gradient(115deg,#203a37,#14232f);box-shadow:0 8px 25px #02091430}.conditions-bar.rain{background:linear-gradient(115deg,#173a52,#152434);border-color:#387496}.conditions-bar.storm{background:linear-gradient(115deg,#352c56,#19293e);border-color:#6c6298}.weather-icon{display:grid;place-items:center;min-width:40px;height:40px;border-radius:10px;background:#ffffff0b;color:#ffe69c;font-size:27px}.rain .weather-icon{color:#9fdcff}.storm .weather-icon{color:#dcbdff}.conditions-bar>div>b{display:block;font-size:15px;letter-spacing:-.3px}.conditions-bar small{font-size:7px;letter-spacing:.8px;color:#9bb6c8;display:block;margin-top:5px}.condition-chips{display:flex;gap:7px;flex-wrap:wrap;margin-left:auto;justify-content:flex-end;max-width:55%}.condition-chips>span{font-size:9px;padding:6px 8px;border-radius:5px;background:#0003;color:#c6dce9;border:1px solid #ffffff0b}.jungle-studio{display:flex;align-items:center;gap:15px;text-align:left;margin-top:15px;width:100%;padding:17px;border:1px solid #634069;border-radius:12px;background:linear-gradient(120deg,#382241,#182a30);box-shadow:inset 0 1px #ffffff09}.studio-symbol{display:grid;place-items:center;min-width:45px;height:45px;color:#ffaae9;font-size:32px;background:#f782dd15;border-radius:10px}.jungle-studio>span>small{display:block;color:#f394dc;font-size:7px;letter-spacing:1.4px}.jungle-studio strong{display:block;margin:6px 0;font-size:18px;color:#f5e6f5;letter-spacing:-.4px}.jungle-studio em{display:block;font-size:10px;line-height:1.6;color:#ab9fb8;font-style:normal;max-width:400px}.jungle-studio>b{font-size:8px;letter-spacing:.6px;color:#efb6df;margin-left:auto;max-width:120px;text-align:right;line-height:1.8}.jungle-studio.unlocked{border-color:#9cc951;background:linear-gradient(120deg,#31432c,#25303a)}.jungle-studio.unlocked>b{color:var(--lime)}.part-slot{min-height:87px;padding:8px 4px;cursor:pointer}.part-slot>span{line-height:1.4;font-size:9px}.part-slot>small{line-height:1.5;font-size:6px}.part-slot:disabled{cursor:default;opacity:1}.skill-description{font-size:16px;line-height:1.8;color:#e0eff6}.car-perks .buff{background:#235f42;color:#b1ffc9}.car-perks .debuff{background:#6b3b31;color:#ffd1ae}.track-event.jungle-photo,.track-event.exhibition{background:#3a2247eb;color:#ffc3ed;border-color:#ad67b0}.track-event.draft{background:#174559eb;color:#a4ebff;border-color:#4f9caf}.track-event.tree,.track-event.rival{background:#48331feb;color:#ffce94;border-color:#a47f4f}.part-catalogue{display:grid;grid-template-columns:1fr 1fr;gap:8px}.part-catalogue>button{padding:12px;border:1px solid #3b536a;border-radius:7px;background:#1a2b3d;text-align:left;color:#c8dfed}.part-catalogue strong{display:block;font-size:11px}.part-catalogue small{display:block;font-size:8px;line-height:1.6;color:#8faabe;margin-top:6px}@media(max-width:850px){.conditions-bar{flex-wrap:wrap}.condition-chips{margin:0;max-width:100%;justify-content:flex-start}}@media(max-width:540px){.conditions-bar{padding:12px;gap:10px}.conditions-bar>div>b{font-size:13px}.conditions-bar small{font-size:6px}.weather-icon{min-width:32px;height:34px;font-size:23px}.condition-chips>span{font-size:8px}.jungle-studio{gap:10px;padding:13px;flex-wrap:wrap}.jungle-studio>span:nth-child(2){flex:1}.jungle-studio>b{margin-left:55px;text-align:left;max-width:none}.jungle-studio em{font-size:9px}.part-catalogue{grid-template-columns:1fr}}
.sub-build-section{margin:24px 0}.sub-build-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sub-build-card{text-align:left;border:1px solid #34495b;border-radius:11px;background:linear-gradient(135deg,#1d3042,#14212f);padding:16px;color:#cfdeec;min-width:0;transition:border-color .2s}.sub-build-card.active{border-color:#d3ff66;box-shadow:inset 0 0 0 1px #d3ff6640;background:linear-gradient(135deg,#2d422d,#192a30)}.sub-build-card small{display:block;color:#9db7c7;font-size:7px;letter-spacing:.5px;line-height:1.7}.sub-build-card strong{display:block;font-size:17px;letter-spacing:-.4px;margin:7px 0;color:#f1f6fb}.sub-build-card span{font-size:10px;color:#9db4c5;line-height:1.65;display:block}.drawn-card{position:relative;border-radius:12px;border:1px solid #ad8a3f;background:linear-gradient(125deg,#403720,#232c35);padding:18px;margin:16px 0;box-shadow:0 8px 25px #0004}.drawn-card>small{font-size:8px;letter-spacing:2px;color:#f5ce75}.drawn-card h3{margin:8px 0;color:#fff2ce;font-size:22px;letter-spacing:-.5px}.drawn-card p{margin:8px 0;font-size:12px;color:#dfd9c8}.drawn-card>b{font-size:17px;color:#d3ff66}.track-event.card{background:#3f321fed;color:#ffe3a6;border-color:#b28b45}.track-event{max-width:90%;white-space:normal;text-align:center;line-height:1.5}.range-dash{color:#778d9d}.dice-range small{font-size:8px;color:#8da4b8;align-self:center}.review-income{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:9px 0 15px}.review-income>span{padding:9px;border:1px solid #344454;border-radius:7px;color:#9fb6c7;font-size:9px}.review-income b{display:block;color:#eaf4fc;font-size:13px;margin-top:5px}.camera-presets{flex-wrap:wrap}.camera-presets button{min-height:34px}.scene-card:has([data-camera="showcase"][aria-pressed="true"]){border-color:#60794b;box-shadow:0 0 0 1px #d3ff661f,0 15px 50px #0004}
@media(max-width:1050px){.sub-build-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.game-layout{display:flex;flex-direction:column;gap:16px}.left-column,.right-column{display:contents}.scene-card{order:1}.turn-panel{order:2}.garage{order:3}.standings{order:5}.ownership-key{order:4}.build-section{order:6}.sub-build-section{order:7}.district-guide{order:8}.timeline{order:9}.room-panel{order:0}.radio{order:10}.turn-panel{scroll-margin-top:12px}.conditions-bar{margin-bottom:14px}.sub-build-section{margin:10px 0}.build-section{margin-top:14px}}
@media(max-width:540px){#scene{height:360px}.sub-build-cards{gap:8px}.sub-build-card{padding:12px}.sub-build-card strong{font-size:15px}.sub-build-card span{font-size:9px}.review-income{grid-template-columns:repeat(3,1fr)}.scene-top{padding:14px 12px 0}.scene-top small{font-size:6px}.camera-toolbar{padding:0 12px 12px}.camera-presets{display:grid;grid-template-columns:repeat(2,1fr);width:100%}.camera-options{display:block}.camera-presets button{padding:10px 7px}.camera-heading{align-items:center}.conditions-bar .condition-chips{gap:4px}.condition-chips>span{padding:5px}.drawn-card h3{font-size:20px}.scene-footer>div{flex-wrap:wrap;gap:8px}.masthead nav{gap:10px}.round-info{gap:6px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.sub-build-card,.button{transition:none}}
.review-top>div>strong,.review-top>div>small{display:block}.review-top>div>small{margin-top:5px;line-height:1.5}.review-top{gap:10px}.review-money{flex-shrink:0}
/* Sector workshops: compact, touch-friendly controls. */
.part-life{display:block;font-style:normal;font-size:10px;font-weight:800;letter-spacing:.04em;color:#9cc7b1;margin-top:7px}.part-life.limited{color:#ffc277}.part-slot .part-life{font-size:9px}.reserve-bays{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0}.reserve-bay{border:1px dashed #385064;background:#101e2b;border-radius:9px;padding:10px 8px;min-width:0}.reserve-bay.occupied{border-style:solid;border-color:#4e677e}.reserve-bay small{display:block;color:#91a8bd;font-size:9px;letter-spacing:.08em}.reserve-bay strong{display:block;font-size:11px;line-height:1.35;margin:7px 0;color:#e8f0f8}.reserve-bay span{font-size:9px;color:#c2d6b6}.full-swap{margin-top:8px!important;background:#1d4146!important;border:1px solid #3a858b!important}.tutorial-check{display:flex;align-items:center;gap:12px;padding:14px 0;font-size:13px;color:#d1dfec}.tutorial-check input{width:20px;height:20px;accent-color:#ff7b46;flex-shrink:0}.first-tip{margin:12px 0 0;padding:14px;border:1px solid #3b667f;border-radius:11px;background:#142c3c}.first-tip strong{display:block;margin:5px 0;color:#e8f7ff;font-size:14px}.first-tip p{font-size:12px;line-height:1.6;color:#bdd0df;margin:5px 0}.first-tip>div{display:flex;justify-content:space-between}.first-tip button{min-height:40px}.learn-dialog{max-width:680px}.learn-goal{font-size:17px;line-height:1.6;color:#bbcbdb}.learn-goal b{color:#fff}.learn-classes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.learn-classes>div{padding:14px 12px;border-radius:12px;border-top:3px solid #4fcaff;background:#142b3b}.learn-classes>div:nth-child(2){border-color:#8cda6d;background:#1a3028}.learn-classes>div:nth-child(3){border-color:#ed85ca;background:#322239}.learn-classes span{font-size:10px;font-weight:800;letter-spacing:.08em;color:#b5cde0}.learn-classes b{display:block;margin:8px 0;font-size:15px}.learn-classes p{font-size:12px;line-height:1.5;margin:0;color:#c6d1da}.learn-steps{padding-left:21px;color:#b9cbd9;font-size:13px;line-height:1.6}.learn-steps li{padding:5px 0}.learn-steps b{color:#f4f7fb}.learn-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:18px}.garage-swap select{max-width:100%;min-width:0}.camera-presets{flex-wrap:wrap}.part-actions>*{min-height:44px}.garage-swap>.text-btn{min-height:44px;font-size:11px}
@media(max-width:650px){.learn-dialog{padding:20px!important}.learn-classes{gap:6px}.learn-classes>div{padding:11px 9px}.learn-classes b{font-size:13px}.learn-classes p{font-size:11px}.learn-actions{flex-wrap:wrap}.camera-presets button{min-height:42px;font-size:10px!important}.masthead nav{flex-wrap:wrap}.reserve-bay strong{font-size:11px}}
/* The circuit is the play surface. Keep every turn within the same card. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body{background:radial-gradient(ellipse at 20% -10%,#20384a 0,transparent 55%),#080f17}
.masthead{padding:14px 24px;max-width:1580px;gap:12px}.masthead nav{gap:20px;flex-wrap:nowrap}.masthead .text-btn{font-size:12px;min-height:40px}.table-menu{position:relative}.table-menu>summary{list-style:none;display:grid;place-items:center;width:42px;height:40px;border:1px solid #375064;background:#172836;border-radius:9px;cursor:pointer;font-size:20px}.table-menu>summary::-webkit-details-marker{display:none}.table-menu>div{position:absolute;right:0;top:48px;z-index:30;width:210px;display:grid;padding:9px;border:1px solid #40576a;border-radius:12px;background:#12212f;box-shadow:0 14px 45px #0008}.table-menu>div>*{text-align:left;padding:12px!important;font-size:12px!important;border-radius:6px}.table-menu>div>*:hover{background:#22384a}
.shell{max-width:1580px;padding:14px 24px 22px}.intro{margin-bottom:12px;gap:12px;align-items:center}.intro h1{font-size:20px;letter-spacing:-.7px;margin:0}.intro h1 em{display:inline}.intro .eyebrow,.intro p{display:none}.round-info{display:flex;gap:13px;align-items:center;margin:0}.round-info>b{font-size:8px}#roundLabel{font-size:12px}
.conditions-bar{margin-bottom:12px;padding:8px 12px;gap:10px;border-radius:9px;box-shadow:none}.weather-icon{min-width:28px;height:28px;font-size:21px}.conditions-bar>div>b{font-size:12px}.conditions-bar small{font-size:7px;margin-top:3px}.condition-chips{max-width:70%;gap:5px}.condition-chips>span{font-size:9px;padding:5px 7px}
.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start}.left-column,.right-column{display:block;min-width:0}.right-column .panel{padding:18px;margin:0 0 14px;border-radius:13px}.scene-card{border-color:#38505b;border-radius:18px;box-shadow:0 22px 70px #0005;background:linear-gradient(150deg,#14252e,#0a1720)}.scene-top{padding:11px 16px;border-bottom:1px solid #ffffff08}.scene-top b{font-size:8px;letter-spacing:.9px}.scene-top #trackPowerLabel{color:#a7c99e;font-size:8px}.scene-top small{font-size:7px}
.map-stage{position:relative;padding-top:60px;background:radial-gradient(ellipse at 50% 40%,#1a3034,#0a1820 80%)}#scene{height:clamp(350px,49svh,590px);cursor:pointer}#scene:active{cursor:pointer}.map-hud{position:absolute;inset:10px 13px auto;display:flex;align-items:center;justify-content:space-between;gap:10px;pointer-events:none;z-index:4}.map-hud>*{pointer-events:auto}.driver-chip{display:flex;align-items:center;gap:9px;min-width:0;max-width:75%;border:1px solid #38535d;border-left:3px solid var(--driver,#ff713e);border-radius:11px;background:#0c1b25eb;padding:8px 12px;box-shadow:0 5px 20px #0003}.driver-chip>i{width:9px;height:9px;border-radius:50%;flex-shrink:0;box-shadow:0 0 14px color-mix(in srgb,var(--driver) 55%,transparent)}.driver-chip>div{min-width:0}.driver-chip #playerNumber{font-size:7px;letter-spacing:1.1px;color:#8eaebd}.driver-chip h2{font-size:17px;line-height:1.1;margin:3px 0;letter-spacing:-.4px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.driver-chip #driverBuild{font-size:9px;display:block;color:#b5cbd5;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.driver-chip>strong{margin-left:18px;font-size:16px;white-space:nowrap}.driver-chip>strong>small{display:block;color:#91aaaf;font-size:7px;letter-spacing:1.2px;margin-top:4px;text-align:right}
.camera-cycle{display:grid;grid-template-columns:22px 1fr;column-gap:4px;align-items:center;text-align:left;padding:8px 10px;border-radius:10px;border:1px solid #45616d;background:#18313ce8;color:#d4e9ef;min-width:108px;min-height:44px;box-shadow:0 4px 15px #0002}.camera-cycle>span:first-child{grid-row:1/3;font-size:22px;color:#9de8e0}.camera-cycle #cameraName{font-size:11px;font-weight:750}.camera-cycle>small{font-size:8px;color:#8eb2bc;margin-top:2px}
.map-stage .track-event{top:auto;bottom:14px;z-index:3;padding:9px 13px;font-size:10px;max-width:86%;animation:event-arrive .25s ease-out}.map-stage .drawn-card{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:4;width:min(360px,90%);margin:0;padding:14px 16px;background:linear-gradient(135deg,#544124f2,#182b35f5);backdrop-filter:blur(12px);animation:event-arrive .25s ease-out}.map-stage .drawn-card h3{font-size:18px;margin:5px 0}.map-stage .drawn-card p{font-size:12px;margin:6px 0}.map-stage:has(.drawn-card:not([hidden])) .track-event{display:none}
.map-console{position:relative;padding:14px 16px 10px;border-top:1px solid #3d555a;background:linear-gradient(125deg,#1d3434,#142832 52%,#142331);box-shadow:0 -10px 32px #0002;z-index:5}.drive-row{display:grid;grid-template-columns:104px minmax(0,1fr);gap:16px;align-items:center}.map-dice{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:104px;min-height:105px;border:1px solid #e2f5b1;border-bottom:5px solid #78984e;border-radius:18px;background:linear-gradient(145deg,#f1ffd4,#ceee95);color:#173024;box-shadow:inset 0 1px 0 #fff,0 6px 22px #b2f65b16;transform:rotate(-2deg);transition:transform .18s,box-shadow .18s;overflow:hidden}.map-dice:before,.map-dice:after{content:'';position:absolute;width:5px;height:5px;border-radius:50%;background:#486b3b;opacity:.5;top:32px;left:13px}.map-dice:after{top:auto;left:auto;right:13px;bottom:28px}.map-dice:hover:not(:disabled){transform:rotate(0) translateY(-2px);box-shadow:0 7px 25px #cfff6733}.map-dice:active:not(:disabled){transform:scale(.96)}.map-dice:disabled{opacity:1;background:linear-gradient(145deg,#dbe9dd,#aec8b7);border-color:#b9d3c2;border-bottom-color:#66857c;cursor:default}.map-dice>span{font-size:8px;font-weight:900;letter-spacing:1.3px}.map-dice .dice-face{display:block;width:auto;height:auto;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;font-size:40px;font-weight:950;line-height:1.1;color:#163628;transform:none}.map-dice>small{font-size:7px;font-weight:850;letter-spacing:.7px}.map-dice.rolling{animation:die-tumble .42s ease-in-out infinite}.map-dice .dice-face.rolling{animation:none}
.drive-status{min-width:0}.roll-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.roll-heading>strong{font-size:15px;letter-spacing:-.3px}.roll-heading .dice-range{margin:0;display:flex;gap:4px;align-items:center}.roll-heading .dice-range i{font-size:10px;padding:3px 5px;background:#345347;border-radius:4px;color:#d9eccb;font-style:normal}.roll-heading .dice-range small{display:none}.drive-status .turn-message{font-size:12px;line-height:1.5;margin:8px 0 10px;color:#bad0d7;padding:0;min-height:0;max-width:650px}.drive-status #turnActions>.button{padding:11px 13px;min-height:44px;font-size:12px}.drive-status .action-pair{display:grid;grid-template-columns:1fr .6fr;gap:8px}.drive-status .action-pair>.button{min-height:44px;padding:10px;font-size:12px}.roll-prompt{display:inline-block;padding:7px 11px;border:1px solid #7e995138;border-radius:6px;color:#ddf2ae;font-size:11px;background:#5a78231a}.map-pit{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:9px;margin-top:14px}.fitted-dock{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;min-width:0}.dock-part{display:block;text-align:left;padding:9px 10px;border:1px solid #3e5966;border-top:2px solid var(--rarity,#6f96a6);border-radius:9px;background:linear-gradient(140deg,#233a47,#132632);min-width:0;color:#c8dbe6;min-height:66px;transition:transform .15s,background .15s}.dock-part:hover{background:#294756;transform:translateY(-2px)}.dock-part>span{display:block;color:#7fabbc;font-size:7px;letter-spacing:1px}.dock-part>b{display:block;font-size:11px;line-height:1.25;margin:5px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-part>small{display:block;font-size:8px;color:var(--rarity)}.dock-part.empty{border-style:dashed;background:#0e222c80}.dock-part.offroad>span{color:#a0dc88}.dock-part.track>span{color:#6cd3f1}.dock-part.show>span{color:#eda0d4}.garage-entry{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;border:1px solid #d8a959;border-radius:10px;background:linear-gradient(135deg,#7c562b,#40341f);color:#ffe2a6;min-height:66px}.garage-entry>span{font-size:21px;line-height:.75}.garage-entry>b{font-size:11px;letter-spacing:1.2px}.garage-entry>small{font-size:6px;letter-spacing:.4px;line-height:1.4;max-width:88px}.part-arrived .dock-part{animation:part-slot-in .6s ease-out}
.car-details{margin-top:9px;border-top:1px solid #ffffff10;padding-top:7px}.car-details>summary{display:flex;justify-content:space-between;align-items:center;gap:8px;list-style:none;cursor:pointer;font-size:9px;color:#8eabb6;min-height:25px}.car-details>summary>span:last-child{white-space:nowrap;color:#bed0b2}.car-details .car-perks{margin:8px 0 3px;gap:6px}.cpu-controls{border-radius:8px;margin-top:8px;padding:7px 10px;background:#09202d80}.cpu-controls>summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:12px;list-style:none}.cpu-controls summary>span{font-size:8px;letter-spacing:.8px;color:#a9c78b}.cpu-controls summary button{padding:4px;font-size:10px}.cpu-controls select{padding:8px;margin-top:8px;min-height:38px}.cpu-controls p{font-size:10px}.first-tip{position:relative;margin:0;border-radius:0;border:0;border-top:1px solid #466b7a;background:#1a3544;padding:12px 16px}.first-tip>strong{font-size:13px}.first-tip p{font-size:12px;margin-right:0}.first-tip>div{justify-content:flex-end;gap:22px}.first-tip button{min-height:32px}.scene-footer{padding:9px 16px;font-size:7px;background:#0c1b25;gap:10px}.scene-footer>span{color:#91aa9d;font-size:7px;letter-spacing:1px;white-space:nowrap}.scene-footer>div{gap:16px}
.route-choice{margin:0;padding:0;border:0;background:none}.route-choice>div{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0 0 8px}.route-choice>div>b{font-size:14px}.route-choice>div>span{font-size:11px;color:#f0ce98}.route-choice>div>small{font-size:9px;color:#a3bdc5;flex-basis:100%;line-height:1.4}.route-choice>.button{display:inline-flex;width:auto;min-height:42px;font-size:11px;padding:10px 12px;margin:0 6px 6px 0}.route-choice>small{font-size:9px;line-height:1.5;display:block;max-width:520px}.choosing-route .drive-row{align-items:start}.choosing-route .map-dice{margin-top:5px}
.ownership-key{padding:10px 12px;margin:12px 0}.ownership-heading{gap:10px}.ownership-heading>span{font-size:9px}.ownership-drivers{margin-top:9px}.field-guide{margin-top:12px;border:1px solid #2e4655;border-radius:12px;padding:0 15px;background:#101f2c}.field-guide>summary{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:48px;cursor:pointer;font-size:10px;font-weight:800;letter-spacing:.7px;color:#b2c9d7}.field-guide>summary>span{font-size:9px;font-weight:400;color:#83a4b8;letter-spacing:0}.field-guide>div{padding-bottom:16px}.field-guide .build-section{margin-top:6px}.field-guide .build-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.field-guide .district-guide{margin:16px 0}.field-guide .timeline{margin:0}.page-footer{padding-top:20px}
.garage-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.garage-dialog{width:min(680px,96vw);height:min(800px,94dvh);max-height:94dvh;padding:0;border-radius:19px;overflow:hidden;background:#101f2c;border:1px solid #496272}.pit-header,.learn-header{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:21px 24px;border-bottom:1px solid #314856}.pit-header h2,.learn-header h2{font-size:26px;letter-spacing:-.8px;margin:7px 0 0;line-height:1.1}.pit-header .close-button,.learn-header .close-button{position:static;align-self:flex-start;min-width:36px;min-height:36px;font-size:23px}.pit-content{overflow:auto;overscroll-behavior:contain;min-height:0;padding:18px 24px}.pit-content .garage{margin:0;padding:0;border:0;box-shadow:none;background:none}.pit-content .section-heading h2{font-size:12px}.pit-content .part-slots{gap:9px}.pit-content .part-slot{min-height:100px;padding:10px 7px}.pit-content .part-slot>span{font-size:12px}.pit-content .part-slot>small{font-size:9px}.pit-content .part-slot>b{font-size:12px}.pit-content .part-slot .part-life{font-size:9px}.pit-content .part-offer{margin:12px 0;padding:16px;background:linear-gradient(135deg,#23384a,#192b3a)}.pit-content .part-offer strong{font-size:19px}.pit-content .part-offer p{font-size:13px;line-height:1.65}.pit-content .parts-note,.pit-content .garage-description{font-size:12px}.pit-content .field-label{font-size:10px;line-height:1.5}.pit-content select{min-height:44px;font-size:13px;width:100%}.pit-content .upgrade-button{min-height:46px;font-size:13px}.pit-content .part-pass{min-height:46px;font-size:12px}.pit-content .reserve-bay strong{font-size:12px}.pit-content .reserve-bay span,.pit-content .reserve-bay small{font-size:9px}.pit-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 24px;border-top:1px solid #314856;background:#142733}.pit-footer>span{font-size:10px;color:#a0b8c5;line-height:1.5;max-width:160px}.pit-footer .button{min-height:44px;font-size:12px}
.learn-dialog[open]{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}.learn-dialog{width:min(600px,94vw);height:min(730px,94dvh);max-height:94dvh;padding:0!important;border:1px solid #486373;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#1b3040,#101d2b)}.learn-header{padding:22px 24px 18px}.learn-header h2{font-size:28px;max-width:380px}.learn-progress{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;color:#8fadb9;font-size:9px;letter-spacing:1px}.learn-progress>span:first-child{color:#d4eea3;font-size:12px;font-weight:850}.learn-progress>div{display:flex;gap:6px}.learn-progress i{display:block;width:24px;height:3px;border-radius:3px;background:#3c5362}.learn-progress i.active{background:#d3ff66}.learn-pages{min-height:0;overflow:auto;overscroll-behavior:contain;padding:4px 24px 20px;scrollbar-width:thin;scrollbar-color:#5e7c8a transparent}.learn-page{animation:lesson-enter .18s ease-out}.learn-fortune{padding:21px;border:1px solid #607a43;border-radius:15px;background:linear-gradient(125deg,#33492c,#1e3540);margin:0 0 16px}.learn-fortune>span{font-size:9px;letter-spacing:1.7px;color:#d3ed9d}.learn-fortune>b{display:block;font-size:34px;letter-spacing:-1.2px;margin:7px 0;color:#f1ffd9}.learn-fortune p{font-size:14px;line-height:1.5;color:#b9cec3;margin:0}.lesson-steps{display:grid;gap:15px}.lesson-steps>article{display:flex;gap:13px;align-items:flex-start}.lesson-steps i{display:grid;place-items:center;width:31px;height:31px;flex-shrink:0;border:1px solid #506f7d;border-radius:9px;background:#243f4d;color:#d8f5cf;font-size:15px;font-weight:850;font-style:normal}.lesson-steps b{font-size:15px;color:#eaf3f7;line-height:1.4;display:block}.lesson-steps p{font-size:13px;line-height:1.6;margin:4px 0 0;color:#b0c5d2}.lesson-intro{font-size:14px;line-height:1.6;color:#bed0dc;margin:0 0 16px}.lesson-class{display:flex;align-items:center;gap:14px;padding:15px 12px;border-radius:13px;border:1px solid #387493;background:#18374a;margin:10px 0}.lesson-class.offroad{border-color:#587b45;background:#233c2c}.lesson-class.show{border-color:#7e5282;background:#362c42}.lesson-car{width:83px;flex-shrink:0}.lesson-car svg{width:100%;display:block}.lesson-class span{font-size:9px;letter-spacing:1.5px;color:#8ed7f6}.lesson-class.offroad span{color:#b2e699}.lesson-class.show span{color:#f0afe1}.lesson-class b{display:block;font-size:14px;line-height:1.4;margin:5px 0}.lesson-class p{font-size:12px;line-height:1.5;margin:0;color:#c2d1d7}.lesson-route{padding:18px;border-radius:14px;border:1px solid #6d9153;background:linear-gradient(130deg,#2a442f,#1a2e33);margin:0 0 15px}.lesson-route.mountain{border-color:#a38758;background:linear-gradient(130deg,#4a412e,#24353a)}.lesson-route>span{font-size:9px;letter-spacing:1.3px;color:#c7e0a9}.lesson-route.mountain>span{color:#f1d5a5}.lesson-route>b{display:block;font-size:20px;letter-spacing:-.4px;line-height:1.3;margin:8px 0}.lesson-route p{font-size:13px;color:#c8d5d6;line-height:1.6;margin:0}.lesson-route>strong{display:block;font-size:9px;letter-spacing:.7px;margin-top:13px;color:#f3d699}.lesson-note{padding:10px 0 0;font-size:12px;line-height:1.6;color:#95afbd}.lesson-garage{display:grid;grid-template-columns:1fr 1fr;gap:6px 15px;align-items:center;text-align:center;margin:0 0 20px;padding:16px;background:#132c3b;border:1px solid #375668;border-radius:13px}.lesson-garage>span{font-size:9px;letter-spacing:1.4px;color:#a4c1cf;grid-row:1}.lesson-garage>div{font-size:35px;letter-spacing:6px;color:#bcdba3;line-height:1.2;grid-row:2}.lesson-garage>div:last-child{color:#6e9dab}.learn-footer{padding:15px 24px 12px;border-top:1px solid #36505f;background:#142a38}.learn-nav{display:grid;grid-template-columns:.7fr 1.3fr;gap:12px}.learn-nav .button{min-height:46px;font-size:13px}.learn-footer>.text-btn{display:block;margin:8px auto 0;padding:6px;font-size:11px;min-height:30px;color:#a4becb}
@keyframes die-tumble{0%,100%{transform:rotate(-4deg) translateY(0)}30%{transform:rotate(6deg) translateY(-4px)}70%{transform:rotate(-6deg) translateY(-2px)}}@keyframes part-slot-in{0%{transform:translateY(7px);box-shadow:0 0 0 2px #d3ff66}100%{transform:translateY(0);box-shadow:0 0 0 0 transparent}}@keyframes event-arrive{from{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}@keyframes lesson-enter{from{opacity:.4;transform:translateX(7px)}to{opacity:1;transform:translateX(0)}}
@media(min-width:1500px){.game-layout{grid-template-columns:minmax(0,1fr) 310px}#scene{height:clamp(450px,55svh,680px)}}
@media(max-width:1050px){.game-layout{grid-template-columns:minmax(0,1fr) 235px;gap:12px}.shell,.masthead{padding-left:16px;padding-right:16px}.drive-row{gap:12px}.roll-heading{flex-wrap:wrap;gap:5px}.right-column .panel{padding:14px}.driver-chip>strong{margin-left:8px}}
@media(max-width:850px){.game-layout{display:block}.left-column,.right-column{display:block}.right-column{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.right-column .panel{margin:0}.right-column .room-panel{grid-column:1/-1}.scene-card{order:unset}.intro h1{font-size:18px}.scene-footer{font-size:7px}#scene{height:clamp(330px,48svh,520px)}.build-section,.sub-build-section{margin:16px 0}.mode-badge{display:none}}
@media(max-width:540px){.masthead{padding:8px 12px;align-items:center;min-height:55px}.masthead nav{max-width:none;gap:12px;flex-wrap:nowrap}.masthead .text-btn{font-size:11px;padding:5px;min-height:36px}.wordmark{font-size:13px}.brand-mark{width:27px;height:31px}.wordmark small{font-size:5px}.table-menu>summary{width:35px;height:35px;font-size:18px}.table-menu>div{right:0;top:43px}.shell{padding:8px 9px 15px}.intro{display:flex;margin-bottom:7px}.intro>div:first-child{display:none}.round-info{width:100%;margin:0;justify-content:space-between;gap:10px}.round-info>b{font-size:7px;padding:4px 6px}#roundLabel{font-size:10px}#roundLabel small{font-size:9px}.conditions-bar{padding:6px 9px;gap:8px;flex-wrap:nowrap;margin-bottom:8px;min-height:37px}.weather-icon{min-width:23px;height:23px;font-size:18px}.conditions-bar>div>b{font-size:11px;white-space:nowrap}.conditions-bar small{font-size:6px;letter-spacing:.3px}.conditions-bar .condition-chips{margin-left:auto;max-width:44%;gap:3px;justify-content:flex-end}.condition-chips>span{display:none;font-size:7px;padding:3px 5px;line-height:1.4}.condition-chips>span:first-child{display:inline}.scene-card{border-radius:13px}.scene-top{padding:9px 11px}.scene-top b{font-size:7px}.scene-top small{display:none}.scene-top #trackPowerLabel{font-size:6px}.map-stage{padding-top:57px}.map-hud{inset:8px 9px auto;gap:7px}.driver-chip{padding:7px 8px;gap:6px;max-width:71%;border-radius:9px}.driver-chip>i{width:7px;height:7px}.driver-chip h2{font-size:14px;max-width:105px;margin:2px 0}.driver-chip #playerNumber{font-size:6px;letter-spacing:.8px}.driver-chip #driverBuild{font-size:8px;max-width:108px}.driver-chip>strong{font-size:12px;margin-left:7px}.driver-chip>strong>small{font-size:6px;margin-top:3px}.camera-cycle{min-width:89px;min-height:43px;padding:7px;column-gap:2px;grid-template-columns:18px 1fr}.camera-cycle>span:first-child{font-size:19px}.camera-cycle #cameraName{font-size:9px}.camera-cycle>small{font-size:7px}#scene{height:clamp(235px,37svh,340px)}.map-console{padding:11px 10px 7px}.drive-row{grid-template-columns:78px minmax(0,1fr);gap:10px}.map-dice{width:78px;min-height:91px;border-radius:13px;border-bottom-width:4px}.map-dice .dice-face{font-size:34px}.map-dice>span{font-size:7px;letter-spacing:.8px}.map-dice>small{font-size:6px;letter-spacing:.3px}.map-dice:before{left:9px;top:30px;width:4px;height:4px}.map-dice:after{right:9px;bottom:25px;width:4px;height:4px}.roll-heading{gap:4px}.roll-heading>strong{font-size:12px}.roll-heading .dice-range{gap:3px}.roll-heading .dice-range i{font-size:8px;padding:2px 4px}.range-dash{font-size:9px}.drive-status .turn-message{font-size:10px;line-height:1.45;margin:5px 0 7px}.drive-status #turnActions>.button,.drive-status .action-pair>.button{font-size:10px;min-height:40px;padding:9px 7px}.roll-prompt{font-size:10px;padding:6px 8px}.map-pit{grid-template-columns:minmax(0,1fr) 73px;gap:6px;margin-top:11px}.fitted-dock{gap:5px}.dock-part{min-height:62px;padding:7px 6px;border-radius:7px}.dock-part>span{font-size:6px;letter-spacing:.6px}.dock-part>b{font-size:9px;margin:4px 0;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:21px;overflow:hidden}.dock-part>small{font-size:7px}.garage-entry{min-height:62px;border-radius:8px;gap:4px}.garage-entry>b{font-size:9px;letter-spacing:.8px}.garage-entry>small{font-size:5px;max-width:64px}.garage-entry>span{font-size:18px}.car-details{margin-top:7px;padding-top:5px}.car-details>summary{font-size:8px;min-height:22px}.car-details>summary>span:first-child{max-width:230px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cpu-controls{margin-top:5px;padding:4px 8px}.cpu-controls summary>span{font-size:7px}.cpu-controls summary button{font-size:9px;min-height:25px}.scene-footer{padding:7px 10px;font-size:5px}.scene-footer>div{gap:9px}.scene-footer>span{font-size:5px;letter-spacing:.5px}.scene-footer .key{font-size:5px}.route-choice>div>b{font-size:12px}.route-choice>div>small{font-size:8px}.route-choice>div>span{font-size:9px}.route-choice>.button{display:flex;width:100%;font-size:10px;min-height:37px;margin-bottom:5px;padding:8px}.route-choice>small{font-size:8px;line-height:1.4}.choosing-route #scene{height:225px}.choosing-route .drive-row{grid-template-columns:58px minmax(0,1fr);gap:8px}.choosing-route .map-dice{width:58px;min-height:77px}.choosing-route .map-dice .dice-face{font-size:27px}.choosing-route .map-dice>small{font-size:5px}.first-tip{padding:10px 12px}.first-tip p{font-size:11px;line-height:1.5}.first-tip strong{font-size:12px}.first-tip .eyebrow{font-size:6px}.map-stage .track-event{bottom:10px;font-size:8px;padding:8px 10px;max-width:85%}.ownership-key{padding:9px 10px}.ownership-heading>b{font-size:8px}.ownership-heading>span{font-size:8px;max-width:125px}.field-guide{padding:0 11px}.field-guide>summary{font-size:9px;min-height:44px}.field-guide>summary>span{font-size:8px}.right-column{grid-template-columns:1fr}.right-column .panel{padding:15px}.pit-header,.learn-header{padding:18px}.pit-header h2,.learn-header h2{font-size:24px;line-height:1.15}.garage-dialog{height:94dvh;border-radius:16px;width:96vw}.pit-content{padding:15px}.pit-content .part-slots{gap:6px}.pit-content .part-slot{min-height:96px;padding:8px 4px}.pit-content .part-slot>span{font-size:10px}.pit-content .part-slot>small{font-size:7px}.pit-content .part-slot .part-life{font-size:8px}.pit-content .part-offer{padding:13px}.pit-content .part-offer strong{font-size:17px}.pit-content .part-offer p{font-size:12px}.pit-content .part-actions{gap:6px}.pit-content .upgrade-button{font-size:12px}.pit-content .reserve-bay{padding:8px 6px}.pit-content .reserve-bay strong{font-size:10px}.pit-content .parts-note{font-size:11px}.pit-footer{padding:11px 15px;gap:8px}.pit-footer>span{font-size:9px;max-width:105px}.pit-footer .button{font-size:10px;padding:11px 12px}.learn-dialog{height:min(740px,94dvh);width:94vw;padding:0!important;border-radius:16px}.learn-header{padding:18px 18px 14px;gap:8px}.learn-header h2{font-size:24px;max-width:250px;margin-top:5px}.learn-header .eyebrow{font-size:7px;letter-spacing:1.1px}.learn-header .close-button{min-width:30px;min-height:30px}.learn-progress{padding:10px 18px;font-size:8px}.learn-pages{padding:3px 18px 16px}.learn-fortune{padding:17px;margin-bottom:16px}.learn-fortune>b{font-size:30px}.learn-fortune p{font-size:13px}.lesson-steps{gap:13px}.lesson-steps>article{gap:10px}.lesson-steps i{width:27px;height:27px;font-size:13px}.lesson-steps b{font-size:14px}.lesson-steps p{font-size:12px;line-height:1.6}.lesson-intro{font-size:13px;line-height:1.6;margin-bottom:12px}.lesson-class{padding:13px 10px;gap:11px;margin:9px 0}.lesson-car{width:65px}.lesson-class b{font-size:13px;line-height:1.4}.lesson-class p{font-size:12px}.lesson-class span{font-size:8px}.lesson-route{padding:15px;margin-bottom:12px}.lesson-route>b{font-size:19px}.lesson-route p{font-size:12px;line-height:1.6}.lesson-route>span,.lesson-route>strong{font-size:8px}.lesson-note{font-size:11px}.lesson-garage{padding:13px;margin-bottom:17px;gap:7px}.lesson-garage>div{font-size:28px;letter-spacing:4px}.learn-footer{padding:12px 18px 8px}.learn-nav{gap:9px}.learn-nav .button{min-height:44px;font-size:12px}.learn-footer>.text-btn{font-size:10px;min-height:29px;margin-top:5px}.page-footer{padding-top:15px}}
@media(max-height:700px) and (max-width:540px){#scene{height:220px}.map-stage{padding-top:55px}.map-console{padding-top:9px}.learn-header{padding-top:13px;padding-bottom:10px}.learn-header h2{font-size:22px}.learn-fortune{padding:13px}.learn-fortune>b{font-size:27px}.lesson-steps{gap:11px}}
@media(prefers-reduced-motion:reduce){.map-dice,.map-dice.rolling,.part-arrived .dock-part,.learn-page,.map-stage .track-event,.map-stage .drawn-card{animation:none!important;transition:none!important}}
/* Wide screens keep the driving console beside the circuit, inside the same surface. */
@media(min-width:851px){
 .game-layout{display:block}.right-column{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}.right-column .panel{margin:0}.right-column .room-panel{grid-column:1/-1}
 .scene-card{display:grid;grid-template-columns:minmax(0,1fr) 285px}.scene-top{grid-column:1/-1}.map-stage{grid-column:1;min-width:0}.map-console{grid-column:2;grid-row:2;border-top:0;border-left:1px solid #3d555a;display:flex;flex-direction:column;justify-content:center;padding:22px 18px;box-shadow:-10px 0 35px #0002}
 #scene{height:clamp(350px,calc(100svh - 260px),610px)}.drive-row{display:flex;flex-direction:column;gap:18px;align-items:stretch}.map-dice{width:116px;min-height:120px;align-self:center}.map-dice .dice-face{font-size:47px}.roll-heading{align-items:center;flex-wrap:wrap;gap:8px}.drive-status .turn-message{font-size:12px;min-height:40px}.map-pit{display:flex;flex-direction:column;margin-top:22px;gap:10px}.garage-entry{min-height:46px;display:grid;grid-template-columns:25px auto 1fr;gap:7px;padding:10px}.garage-entry>small{font-size:7px;max-width:none;text-align:right}.garage-entry>b{font-size:10px}.dock-part{padding:8px 6px;min-height:77px}.dock-part>b{font-size:10px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:25px}.dock-part>small{font-size:8px}.car-details{margin-top:15px}.first-tip,.scene-footer{grid-column:1/-1}.choosing-route .map-dice{min-height:76px;width:80px}.choosing-route .map-dice .dice-face{font-size:29px}.choosing-route .map-console{justify-content:flex-start;padding-top:20px}.choosing-route .drive-row{gap:12px}.route-choice>.button{display:flex;width:100%;margin-right:0}.scene-footer{padding-top:8px;padding-bottom:8px}
}
@media(min-width:541px) and (max-width:850px){#scene{height:clamp(420px,59svh,540px)}}
/* Chance lives on the board: reveal, choose, then keep a tactical hand. */
.pocket-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pocket-controls .garage-entry,.cards-entry{min-width:0;min-height:48px}.cards-entry{display:grid;grid-template-columns:22px 1fr;gap:2px 5px;align-items:center;padding:9px;border:1px solid #8f9259;border-radius:10px;background:linear-gradient(135deg,#4c4c2a,#293e3e);color:#f4e8a7}.cards-entry>span{grid-row:1/3;font-size:22px}.cards-entry>b{font-size:10px;letter-spacing:1px}.cards-entry>small{font-size:8px;color:#d5d8ba}.cards-entry.has-cards{border-color:#f5d275;box-shadow:inset 0 0 0 1px #ffe89833,0 0 18px #edc95c14}.pocket-controls .garage-entry{display:grid;grid-template-columns:22px 1fr;gap:2px 5px;padding:9px}.pocket-controls .garage-entry>span{grid-row:1/3}.pocket-controls .garage-entry>small{font-size:6px;max-width:none;text-align:left}.pocket-controls .garage-entry>b{font-size:10px;letter-spacing:.7px}
.chance-dialog[open],.cards-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.chance-dialog,.cards-dialog{width:min(470px,94vw);max-height:94dvh;padding:0;border:1px solid #b69b58;border-radius:19px;overflow:hidden;background:#132631;box-shadow:0 25px 100px #0009}.cards-dialog{width:min(620px,95vw);height:min(780px,94dvh);border-color:#557588}.chance-content,.cards-content{overflow:auto;min-height:0;overscroll-behavior:contain;padding:18px 22px}.chance-dialog .pit-header{padding:19px 22px;border-color:#75663b55}.chance-dialog .pit-header h2{font-size:23px;line-height:1.2}.chance-face{position:relative;padding:22px;border:1px solid #ddba65;border-radius:15px;background:radial-gradient(ellipse at 30% 0,#7e6735,#393e2b 60%,#243641);color:#fff1c9;box-shadow:inset 0 0 0 4px #172a3255,0 10px 25px #0003;transform-origin:50% 60%;animation:card-flip-in .55s cubic-bezier(.2,.8,.2,1)}.chance-face.prize{border-color:#78cbd9;background:radial-gradient(ellipse at 30% 0,#256477,#1b3648 60%,#23373b);color:#d3f7ff}.chance-face.negative{border-color:#de8a70;background:radial-gradient(ellipse at 30% 0,#713c32,#403333 60%,#23323d);color:#ffe0d4}.card-seal{display:grid;place-items:center;width:43px;height:49px;border:2px solid currentColor;border-radius:8px;color:#ffe099;font-size:31px;font-weight:950;box-shadow:4px 4px 0 #0002;margin:0 0 18px;rotate:-5deg}.negative .card-seal{color:#ffbc9d}.prize .card-seal{color:#9ae4f0}.card-kicker{font-size:9px;letter-spacing:1.5px;color:#dfd1a3;font-weight:800;display:block}.chance-face h3{font-size:28px;letter-spacing:-.8px;line-height:1.15;margin:9px 0 13px}.chance-face p{font-size:14px;line-height:1.65;margin:0;color:#e3dfce}.chance-face>strong{display:block;font-size:17px;line-height:1.4;color:#e6ffaa;margin-top:20px}.negative>strong{color:#ffc4ad}.chance-face>small{display:block;color:#b7c7c6;font-size:9px;letter-spacing:1px;margin-top:12px}.chance-actions{padding:14px 22px 10px;border-top:1px solid #3b5661;background:#142b37}.chance-actions>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.chance-actions .button{min-height:45px;font-size:12px;padding:11px}.chance-actions>.text-btn{display:block;min-height:30px;margin:7px auto 0;padding:5px;font-size:11px}.chance-content select,.held-card select{width:100%;font-size:12px;min-height:44px}.chance-content .field-label,.held-card .field-label{display:block;font-size:9px;letter-spacing:.8px;line-height:1.5;margin:17px 0 8px}.card-rule,.card-hand-rule{font-size:12px;line-height:1.6;color:#a7c4cf;margin:13px 0 0}.card-hand-rule{margin:0 0 18px}.held-card{padding:18px;border:1px solid #9c844b;border-left:3px solid #edc46c;border-radius:13px;margin:12px 0;background:linear-gradient(125deg,#3c3f29,#19303c)}.held-card.prize{border-color:#4c92a6;border-left-color:#8ed8e7;background:linear-gradient(125deg,#214354,#192f3b)}.held-card .card-seal{float:right;width:29px;height:34px;font-size:21px;margin:0 0 0 12px}.held-card .card-kicker{font-size:8px}.held-card h3{font-size:21px;line-height:1.25;letter-spacing:-.5px;margin:7px 0 11px;color:#f4efd5}.held-card p{font-size:13px;line-height:1.6;color:#bed0d5;margin:0}.held-card>strong{display:block;margin:12px 0 6px;color:#dbeda6;font-size:13px;line-height:1.5}.held-card>small{font-size:8px;letter-spacing:1px;color:#91b0bd}.held-card-actions{display:flex;gap:18px;justify-content:space-between;align-items:center;margin-top:15px}.held-card-actions>.button{font-size:12px;min-height:43px;padding:11px 20px;flex:1}.held-card-actions>.text-btn{font-size:11px;min-height:40px}.empty-hand{text-align:center;padding:32px 18px;border:1px dashed #4f6b7a;border-radius:14px;background:#182d3a}.empty-hand>span{font-size:45px;color:#d9cf8e}.empty-hand h3{font-size:22px;line-height:1.3;margin:15px 0;color:#e3edf2}.empty-hand p{font-size:13px;line-height:1.7;color:#a2bdca;max-width:350px;margin:auto}.drawn-card{border-width:2px!important}.drawn-card small{text-transform:uppercase}.track-event.card{border-color:#f6cd71;color:#ffe9b0;background:#443b21ee}
@keyframes card-flip-in{0%{opacity:.1;transform:perspective(800px) rotateY(-85deg) translateY(30px) scale(.87)}70%{opacity:1;transform:perspective(800px) rotateY(7deg) translateY(-3px) scale(1.01)}100%{transform:perspective(800px) rotateY(0) translateY(0) scale(1)}}
@media(min-width:851px){.map-pit .pocket-controls{display:grid;grid-template-columns:1fr 1fr}.pocket-controls .garage-entry>small{font-size:6px}.pocket-controls .garage-entry>b{font-size:9px}.pocket-controls .garage-entry,.cards-entry{min-height:51px;padding:8px}.cards-entry>small{font-size:7px}.cards-entry>b{font-size:9px}}
@media(max-width:540px){.pocket-controls{display:flex;flex-direction:column;gap:4px}.pocket-controls .garage-entry,.cards-entry{display:grid;grid-template-columns:14px 1fr;gap:1px 3px;padding:6px 5px;min-height:42px;border-radius:7px}.pocket-controls .garage-entry>span,.cards-entry>span{font-size:16px}.pocket-controls .garage-entry>b,.cards-entry>b{font-size:8px;letter-spacing:.4px}.pocket-controls .garage-entry>small,.cards-entry>small{font-size:5px;letter-spacing:0;line-height:1.5;text-align:left}.chance-dialog,.cards-dialog{border-radius:15px;max-height:94dvh}.chance-dialog .pit-header{padding:16px}.chance-dialog .pit-header h2{font-size:22px}.chance-content,.cards-content{padding:15px}.chance-face{padding:20px}.chance-face h3{font-size:25px}.chance-face p{font-size:13px;line-height:1.65}.chance-face>strong{font-size:15px;margin-top:17px}.card-seal{width:36px;height:42px;font-size:27px;margin-bottom:15px}.chance-actions{padding:12px 15px 8px}.chance-actions .button{font-size:11px;min-height:44px}.chance-actions>.text-btn{font-size:10px}.held-card{padding:15px}.held-card h3{font-size:20px}.held-card p{font-size:12px}.held-card>strong{font-size:12px}.card-rule,.card-hand-rule{font-size:11px}}
@media(prefers-reduced-motion:reduce){.chance-face{animation:none!important;transform:none!important}}
.map-stage .drawn-card{pointer-events:none}.map-stage .drawn-card[data-status=held],.map-stage .drawn-card[data-status=played],.map-stage .drawn-card[data-status=negative],.map-stage .drawn-card[data-status=discarded]{animation:card-receipt 4s both}@keyframes card-receipt{0%,75%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}@media(prefers-reduced-motion:reduce){.map-stage .drawn-card{animation:none!important}}
.plots-open{border:1px solid #b3cd78;background:#293b2e;border-radius:7px;color:#e4f7b2;padding:8px 12px;font:800 11px inherit;min-height:36px;cursor:pointer}.ownership-heading{flex-wrap:wrap}.ownership-heading .plots-open{margin-left:auto}.ownership-heading>span{width:100%}.plots-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.plots-dialog{width:min(690px,95vw);height:min(790px,94dvh);max-height:94dvh;padding:0;border:1px solid #637e77;background:#132631;border-radius:18px;overflow:hidden}.plots-content{padding:20px 24px;min-height:0;overflow:auto;overscroll-behavior:contain}.plots-summary{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid #435c5e;border-radius:10px;background:#203642}.plots-summary .owner-number{width:34px;height:34px;flex-shrink:0;font-size:18px}.plots-summary b,.plots-summary span{display:block}.plots-summary b{font-size:15px}.plots-summary span{font-size:11px;color:#c2d1c8;line-height:1.6;margin-top:3px}.plots-rule{font-size:12px;line-height:1.7;color:#bdcdc7;margin:14px 0 19px}#plotList{display:grid;grid-template-columns:1fr 1fr;gap:13px}.plot-card{padding:15px;border:1px solid #49616a;border-top:4px solid var(--owner-color);border-radius:12px;background:linear-gradient(140deg,#243e47,#182e38);min-width:0}.plot-card.shop-open{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--owner-color) 24%,transparent)}.plot-card-top{display:flex;align-items:center;gap:9px;min-height:65px}.plot-card-top>div{flex:1;min-width:0}.plot-card-top small{font-size:8px;letter-spacing:1px;color:#b0c7c8}.plot-card-top h3{font-size:17px;line-height:1.2;margin:5px 0;letter-spacing:-.4px}.plot-card-top span:not(.plot-mini):not(.owner-number){font-size:8px;font-weight:800;color:#d5e3d2}.plot-card-top>.owner-number{width:23px;height:23px;flex-shrink:0;font-size:11px}.plot-mini{display:block;position:relative;flex-shrink:0;width:48px;height:43px;background:#536270;border:2px solid #81979b;border-radius:3px;border-top:7px solid #81979b;opacity:.55}.plot-mini.built{border-top-color:var(--owner-color);background:#dde5df;opacity:1}.plot-mini i{position:absolute;left:9px;bottom:0;width:25px;height:20px;background:repeating-linear-gradient(0deg,#182733 0 4px,#4b6370 4px 5px)}.plot-mini b{position:absolute;left:-1px;right:-1px;top:-20px;background:var(--owner-color);color:#091b21;padding:3px 0;text-align:center;font-size:8px;border:2px solid #12242c;border-radius:4px}.plot-rents{display:flex;justify-content:space-between;gap:8px;margin:16px 0;padding:12px 0;border-top:1px solid #4b666555;border-bottom:1px solid #4b666555}.plot-rents>span{font-size:9px;color:#b8d0cc}.plot-rents b{display:block;color:#f1f5e9;font-size:19px;margin-top:5px}.plot-rents em{font-size:14px;font-style:normal;color:#d2fb83}.plot-card .button{font-size:11px;min-height:44px;padding:10px 7px}.plot-note{font-size:10px;line-height:1.65;color:#b9cbc5;margin:11px 0 0}.plots-empty{grid-column:1/-1;padding:40px 25px;text-align:center;border:1px dashed #547267;border-radius:12px}.plots-empty b{font-size:20px}.plots-empty p{font-size:13px;line-height:1.8;color:#b8ceca}.fallback-shop{display:block;color:#fff;background:var(--owner-color,#405e49);border:2px solid #e5eecf;border-radius:3px;font-size:7px;padding:2px;margin-top:2px}.track-event.shop{color:#dcff9e;border-color:#b9da7d;background:#254332}
@media(max-width:540px){.plots-dialog{width:95vw;border-radius:14px}.plots-dialog .pit-header{padding:16px}.plots-dialog .pit-header h2{font-size:22px}.plots-content{padding:15px}#plotList{grid-template-columns:1fr}.plot-card{padding:15px}.plot-card-top h3{font-size:18px}.plot-card .button{font-size:12px}.plots-open{font-size:10px;padding:7px 10px}.plots-dialog .pit-footer{padding:12px 15px}.plots-dialog .pit-footer span{font-size:9px}.plots-dialog .pit-footer .button{font-size:10px;min-height:44px}}
.plots-open{font:inherit;font-weight:800;font-size:11px}.plots-summary .owner-number{display:grid;place-items:center;color:#081b23;margin:0;line-height:1}.track-event.shop{animation:shop-toast-out .35s 2.8s forwards}@keyframes shop-toast-out{to{opacity:0;visibility:hidden}}@media(prefers-reduced-motion:reduce){.track-event.shop{animation:shop-toast-out .01s 3s forwards!important}}
.fresh-set-cue{display:inline-flex;align-items:center;margin:7px 0 2px;padding:6px 9px;border:1px solid #95ba64;border-radius:6px;background:#2b422d;color:#e1ffae;font-size:9px;font-weight:850;letter-spacing:.7px}.fresh-set-cue[hidden]{display:none}.track-event.fresh-set{color:#e1ffae;border-color:#95ba64;background:#2b422d;animation:shop-toast-out .35s 3s forwards}.plot-mini{width:54px;height:44px;border-radius:6px 6px 3px 3px;border:1px solid #59717b;border-top:4px solid #6b7b81;background:linear-gradient(140deg,#344750,#172830)}.plot-mini.built{background:linear-gradient(140deg,#344750,#172830);border-top-color:var(--owner-color)}.plot-mini b{top:3px;left:4px;right:4px;padding:2px 0;border:0;border-radius:2px;font-size:6px;background:#11242e;color:#e8eee7;letter-spacing:1px}.plot-mini i{left:5px;bottom:3px;width:42px;height:20px;background:repeating-linear-gradient(0deg,#0d202c 0 4px,#4d6974 4px 5px);border-left:1px solid #718890;border-right:1px solid #718890}.plot-mini i:after{content:'';position:absolute;left:19px;top:0;bottom:0;width:3px;background:#b4c7ca}@media(max-width:540px){.fresh-set-cue{font-size:8px;letter-spacing:.3px;padding:6px 7px}}@media(prefers-reduced-motion:reduce){.track-event.fresh-set{animation:shop-toast-out .01s 3s forwards!important}}
.neutral-key{--color:#a8c8ce}.neutral-art{background:linear-gradient(135deg,#344c59,#172a35)}.neutral-market{padding:13px;border:1px solid #648692;background:linear-gradient(135deg,#263f4c,#1a303c);border-radius:11px;margin:14px 0}.neutral-market>b{font-size:10px;letter-spacing:1px;color:#d2e8ed}.neutral-market>p{font-size:12px;color:#bdd0d7;margin:7px 0 13px;line-height:1.6}.neutral-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.neutral-offer{min-width:0;text-align:left;border:1px solid #4d6976;border-top:3px solid var(--family);padding:11px 9px;border-radius:7px;background:#172a35;min-height:66px}.neutral-offer.selected{border-color:var(--family);box-shadow:inset 0 0 0 1px var(--family)}.neutral-offer strong{display:block;color:#f1f6f3;font-size:12px}.neutral-offer span{display:block;color:#b5cbd0;font-size:9px;margin-top:7px}@media(max-width:540px){.neutral-market{padding:11px}.neutral-offers{gap:5px}.neutral-offer{padding:10px 6px;min-height:66px}.neutral-offer strong{font-size:10px}.neutral-offer span{font-size:8px}.neutral-market>b{font-size:9px}.neutral-market>p{font-size:11px}}
.conditions-bar .hazard-forecast{display:block;color:#ffd38b!important;font-size:10px!important;font-weight:850;letter-spacing:.2px;margin-top:4px;line-height:1.45}.conditions-bar .hazard-forecast.active{color:#ffb59c!important}.track-event.rock{background:#493d30;border-color:#b39b75;color:#fff0c9}.fallback-hazard{display:block;background:#6b4c24;color:#ffe4ac;font-size:7px;padding:2px;border-radius:3px;margin-top:2px}@media(max-width:540px){.conditions-bar .hazard-forecast{font-size:8px!important;max-width:220px;white-space:normal;line-height:1.5}.conditions-bar:has(.hazard-forecast) .condition-chips{max-width:26%}}
.driving-systems{padding:0 0 14px;border-bottom:1px solid #35505a;margin-bottom:16px}.drive-instruments{display:grid;grid-template-columns:1.1fr 1fr;gap:12px;margin-bottom:10px}.drive-instruments b{display:flex;justify-content:space-between;color:#b4cbd1;font-size:9px;letter-spacing:.6px}.drive-instruments strong{color:#eaf6f2;font-size:12px}.drive-instruments strong small{font-size:8px;color:#a4bac2}.drive-instruments>div>small{font-size:8px;line-height:1.5;color:#a3bac3;display:block;margin-top:4px;letter-spacing:0}.engine-bar{height:5px;border-radius:8px;background:#10242d;display:block;overflow:hidden;margin-top:8px}.engine-bar i{display:block;height:100%;background:#92dbb5;transition:width .3s}.engine-dial.hot .engine-bar i{background:#ffd06b}.engine-dial.danger .engine-bar i{background:#ff8868}.police-dial>span{display:flex;gap:8px;margin-top:4px;height:9px;align-items:center}.police-dial i{font-size:10px;font-style:normal;color:#3c5a68}.police-dial i.strike{color:#ff987d}.driving-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.driving-modes button{min-height:45px;border-radius:8px;border:1px solid #42616d;background:#142c36;padding:8px 3px;text-align:center}.driving-modes button b{font-size:11px;display:block}.driving-modes button small{font-size:7px;letter-spacing:.4px;display:block;margin-top:5px;color:#b3c6ca}.driving-modes button[aria-pressed=true]{background:#c7f179;color:#172932;border-color:#c7f179}.driving-modes button[aria-pressed=true] small{color:#365141}.driving-modes button:disabled{opacity:.55;cursor:default}.engine-warning{font-size:10px;line-height:1.5;color:#ffd09b;margin:8px 0 0}.impound-choice{padding:12px;background:#172c3c;border-left:3px solid #6fc9ff;border-radius:7px}.impound-choice>b{font-size:10px;color:#b8e8ff;letter-spacing:.8px}.impound-choice p{font-size:11px;line-height:1.6;color:#c9dbe2}.impound-choice button{width:100%;margin-top:7px;min-height:42px}.zoom-controls{position:absolute;right:14px;bottom:12px;display:flex;gap:2px;padding:3px;background:#102832df;border:1px solid #405965;border-radius:10px;z-index:7}.zoom-controls button{width:34px;height:34px;min-height:34px;background:transparent;border:0;border-radius:7px;color:#e2eee9;font-size:16px;font-weight:750}.zoom-controls button[data-zoom=reset]{font-size:10px}.zoom-controls button:hover{background:#3b5663}.part-legality{padding:9px 12px;border-radius:7px;color:#b9ebc7;background:#244032;font-size:11px;line-height:1.6}.part-legality.competition{color:#ffd6a8;background:#4a3828}.scene-card{border-radius:16px}.scene-top{letter-spacing:.8px}.build-card,.sub-build-card{border-radius:12px}.drawn-card{max-width:290px;border-radius:12px;box-shadow:0 9px 22px #05121b70}.drawn-card p{line-height:1.6;overflow-wrap:anywhere}.chance-face h3{line-height:1.2;overflow-wrap:anywhere}.chance-face p{line-height:1.65}.track-event.police{background:#263c58;border-color:#71b5ed;color:#e1f4ff}.track-event.release{background:#234638;border-color:#8fd2a0;color:#e5ffe5}@media(max-width:540px){.driving-systems{padding:11px 12px;margin-bottom:10px;border-radius:10px;background:#152c35}.drive-instruments{gap:12px;margin-bottom:8px}.drive-instruments>div>small{font-size:8px}.driving-modes button{min-height:42px}.driving-modes button b{font-size:11px}.driving-modes button small{font-size:7px}.zoom-controls{right:10px;bottom:10px}.zoom-controls button{width:33px;height:34px}.map-stage{min-height:360px}.impound-choice p{font-size:11px}.drawn-card{left:12px;right:12px;max-width:none}.scene-top{letter-spacing:.5px}}@media(prefers-reduced-motion:reduce){.engine-bar i{transition:none}}
.track-event{bottom:58px}.track-event:not(.police):not(.release){animation:shop-toast-out .35s 3s forwards}.offer-legality{display:block;color:#efd9ab;font-size:10px;line-height:1.6;margin:5px 0 8px}.zoom-controls{bottom:4px}@media(prefers-reduced-motion:reduce){.track-event:not(.police):not(.release){animation:shop-toast-out .01s 3s forwards!important}}
.map-symbol-key{display:flex;flex-wrap:wrap;gap:6px 15px;align-items:center;padding:10px 14px;color:#bed7de;background:#101f29;border:1px solid #29404a;border-radius:12px;font-size:13px}.map-symbol-key span{color:#d5ff78;font-weight:800}.map-symbol-key b{font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:#a9c0ca;margin-left:3px}.neutral-offer span{line-height:1.3;white-space:normal}
.fresh-set-cue{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.5}
/* Compact part controls keep the class silhouette, rarity colour and touch targets. */
.map-pit{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin-top:14px}.parts-bar{display:flex;align-items:center;gap:8px;min-width:0}.map-pit .fitted-dock{display:flex;flex:1;gap:7px;min-width:0}.map-pit .dock-part.compact{position:relative;display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;min-height:52px;padding:10px;border:1px solid var(--rarity);border-radius:11px;background:linear-gradient(145deg,#233a47,#12232d);color:var(--rarity)}.map-pit .dock-part.compact.empty{border-style:dashed;border-color:#56707b;color:#90aab4;background:#10232d}.map-pit .dock-part svg,.map-pit .cards-entry svg,.map-pit .garage-entry svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.map-pit .dock-part .dock-uses{position:absolute;top:2px;right:3px;display:grid;place-items:center;min-width:14px;height:14px;margin:0;padding:0 2px;border-radius:7px;background:#0a1720;color:#f2f7fa;font-size:9px;line-height:1}.map-pit .parts-bar>.cards-entry{position:relative;display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;min-width:52px;min-height:52px;padding:8px;border-radius:11px}.map-pit .cards-entry svg{width:27px;height:27px}.map-pit .cards-entry>small{position:absolute;right:3px;bottom:3px;padding:1px 3px;border-radius:4px;background:#172c30;color:#f4e8a7;font-size:8px;line-height:1}.map-pit>.garage-entry{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:9px;width:100%;min-height:50px;padding:10px 14px;border-radius:11px}.map-pit>.garage-entry>span{display:grid;place-items:center;line-height:1}.map-pit>.garage-entry svg{width:21px;height:21px}.map-pit>.garage-entry>b{font-size:11px;letter-spacing:1px}.map-pit>.garage-entry>small{max-width:none;margin-left:3px;font-size:8px;line-height:1.3;text-align:left}
@media(max-width:380px){.map-pit .dock-part.compact,.map-pit .parts-bar>.cards-entry{flex-basis:46px;width:46px;height:46px;min-width:46px;min-height:46px;padding:8px}.map-pit .fitted-dock{gap:5px}.map-pit>.garage-entry{min-height:48px}}
/* A single, touch-friendly cockpit: pedals above the die, parts and pit below it. */
.driving-systems{border:1px solid #42606a;border-radius:12px;padding:12px 13px;background:linear-gradient(155deg,#1d3841,#112630);box-shadow:inset 0 1px #ffffff0c;margin-bottom:12px}
.pace-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 1px 7px;color:#dceeea}.pace-heading b{font-size:9px;letter-spacing:1.2px}.pace-heading span{font-size:8px;letter-spacing:.55px;color:#96b3b8}
.driving-modes{gap:7px}.driving-modes button.throttle-pedal{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:60px;padding:7px 5px;border:1px solid #506b73;border-bottom:4px solid #0b1a21;border-radius:9px;background:linear-gradient(160deg,#2b444c,#172c35);color:#d5e8e7;box-shadow:inset 0 1px #ffffff18,0 2px 5px #0003;transition:transform .13s,box-shadow .13s,border-color .13s}
.pedal-grip{width:22px;height:39px;flex:0 0 22px;display:flex;flex-direction:column;justify-content:space-evenly;padding:5px 4px;border:1px solid #829b9a;border-radius:5px;background:linear-gradient(100deg,#557079,#a1b3ae 48%,#4b656d);box-shadow:0 2px 3px #0008;transform:skewY(-7deg);transition:transform .14s,filter .14s}.pedal-grip i{height:2px;border-radius:2px;background:#273f45}.pedal-copy{min-width:0;text-align:left}.driving-modes .throttle-pedal b{font-size:11px;line-height:1.1}.driving-modes .throttle-pedal small{font-size:8px;line-height:1.2;letter-spacing:.1px;margin-top:5px;color:#b5c8c9}
.driving-modes button.throttle-pedal[aria-pressed=true]{border-color:#c9ef88;border-bottom-color:#668d42;background:linear-gradient(155deg,#385c48,#203f39);color:#eaffcf;box-shadow:inset 0 0 0 1px #c9ef8833,0 0 15px #c0ec4d1a}.driving-modes button.throttle-pedal[aria-pressed=true] small{color:#c5e9ad}.driving-modes button.throttle-pedal[aria-pressed=true] .pedal-grip{background:linear-gradient(100deg,#8dbd69,#e4ffb1 48%,#76a85f);border-color:#e3ffa8;transform:skewY(-7deg) translateY(3px)}.driving-modes button.throttle-pedal:active:not(:disabled){transform:translateY(3px);box-shadow:inset 0 2px 7px #0005}.driving-modes button.throttle-pedal:disabled{opacity:.68}.driving-modes button.throttle-pedal[aria-pressed=true]:disabled{opacity:.9}
.map-pit .fitted-dock{flex:3}.map-pit .dock-part.compact{flex:1 1 0;width:auto;min-width:0}.map-pit .parts-bar>.cards-entry{flex:1 1 0;width:auto;min-width:44px;grid-template-columns:1fr;grid-template-rows:1fr}.map-pit>.garage-entry{position:relative;overflow:hidden;border-color:#e7b967;background:linear-gradient(105deg,#8d5d2c,#604625 65%,#4a3d25);box-shadow:inset 0 1px #ffffff26,0 3px 9px #0003;transition:transform .15s,box-shadow .2s,border-color .2s}.map-pit>.garage-entry:active{transform:translateY(2px)}.map-pit>.garage-entry.offer-ready{border-color:#ffdd89;box-shadow:inset 0 0 0 1px #ffda8033,0 0 18px #e5aa4038}.map-pit>.garage-entry.offer-ready>small{color:#fff5c8;font-weight:900}.map-pit>.garage-entry.offer-ready>small:before{content:'●';color:#d9ff91;margin-right:5px}
@media(max-width:540px){.driving-systems{padding:10px;margin-bottom:10px}.pace-heading{margin:10px 1px 6px}.pace-heading b{font-size:8px}.pace-heading span{font-size:7px}.driving-modes{gap:5px}.driving-modes button.throttle-pedal{min-height:56px;gap:5px;padding:6px 3px}.pedal-grip{width:17px;flex-basis:17px;height:35px;padding:4px 3px}.driving-modes .throttle-pedal b{font-size:10px}.driving-modes .throttle-pedal small{font-size:7px}.map-pit .fitted-dock{gap:5px}.parts-bar{gap:5px}}
@media(prefers-reduced-motion:reduce){.throttle-pedal,.pedal-grip,.map-pit>.garage-entry{transition:none!important}}

/* Optional class demonstrations live inside the existing scrollable tutorial. */
.class-more{display:inline-flex;align-items:center;min-height:40px;margin-top:6px;padding:7px 10px;border:1px solid #789c98;border-radius:7px;background:#193741;color:#dcf5db;font:inherit;font-size:10px;font-weight:800;letter-spacing:.2px;cursor:pointer}.class-more:hover,.class-more:focus-visible{background:#284c50;border-color:#c7edaa}.class-demo[hidden],.class-demo [hidden]{display:none}.class-demo{--demo-color:#5fd3ff;margin:16px 0 5px;padding:15px;border:1px solid color-mix(in srgb,var(--demo-color) 55%,#3d5c60);border-radius:14px;background:linear-gradient(145deg,#1b353e,#101f29);box-shadow:0 8px 24px #0003}.demo-top{display:flex;align-items:start;justify-content:space-between;gap:12px}.demo-top span,.demo-narration>span{font-size:9px;font-weight:850;letter-spacing:1px;color:var(--demo-color)}.demo-top h3{font-size:18px;line-height:1.2;margin:5px 0 0;color:#f0f8ee}.demo-skip,.demo-replay{flex-shrink:0;min-height:40px;padding:8px 10px;border:1px solid #6f8b8c;border-radius:8px;background:#273f48;color:#e5f2ed;font-size:10px;font-weight:800;cursor:pointer}.demo-skip:hover,.demo-replay:hover{background:#38575d}.demo-intro,.demo-tip{font-size:12px;line-height:1.55;color:#c1d5d1;margin:10px 0}.demo-board{position:relative;overflow:hidden;border:1px solid #45636a;border-radius:11px;background:#12252c}.demo-board svg{width:100%;display:block}.demo-cash,.demo-roll{position:absolute;top:8px;padding:5px 7px;border-radius:5px;background:#091a20df;color:#b5d0ca;font-size:8px;font-weight:800;letter-spacing:.4px}.demo-cash{left:8px}.demo-cash b{color:#dfffaa;font-size:11px}.demo-roll{right:8px;color:#e7f5ec}.demo-narration{padding:10px 11px;margin-top:9px;border-left:3px solid var(--demo-color);border-radius:6px;background:#243d43}.demo-narration p{font-size:12px;line-height:1.5;color:#f1f6ed;margin:5px 0 0}.demo-tip{font-size:11px;color:#b4c9c5;margin-bottom:0}.demo-replay{margin-top:10px;color:#e7ffb7;border-color:#95be76}.class-demo button:focus-visible,.class-more:focus-visible{outline:2px solid #e1ffad;outline-offset:2px}
@media(max-width:540px){.class-more{font-size:10px;min-height:42px}.class-demo{padding:11px}.demo-top h3{font-size:16px}.demo-top span,.demo-narration>span{font-size:8px}.demo-intro,.demo-narration p{font-size:11px}.demo-tip{font-size:10px}.demo-skip{font-size:9px;padding:7px;min-height:40px}.demo-board svg{max-height:190px}}
.approach-animation{padding:9px 11px 7px;margin:0 0 14px;border:1px solid #496760;border-radius:10px;background:linear-gradient(135deg,#213f3e,#172d34)}.approach-labels{display:flex;justify-content:space-between;gap:4px;color:#c5d9c8;font-size:8px;font-weight:850;letter-spacing:.5px}.approach-road{height:26px;position:relative;margin-top:5px;border-bottom:3px dashed #778c7b}.approach-swap{position:absolute;left:2%;bottom:0;color:#d8fda5;font-size:14px}.approach-gate{position:absolute;right:2%;bottom:0;color:#e3c792;font-size:20px}.approach-car{position:absolute;left:8%;bottom:-4px;width:34px;height:20px;z-index:1;animation:approach-drive 9s ease-in-out infinite}.approach-car svg{display:block;width:100%;height:100%}@keyframes approach-drive{0%,16%{left:8%;opacity:1}70%,86%{left:84%;opacity:1}96%,100%{left:84%;opacity:0}}@media(max-width:540px){.approach-animation{padding:7px 9px;margin-bottom:11px}.approach-labels{font-size:7px;letter-spacing:.2px}}@media(prefers-reduced-motion:reduce){.approach-car{animation:none;left:50%}}
.camera-actions{display:flex;align-items:stretch;gap:5px;flex-shrink:0}.camera-free{display:grid;grid-template-columns:17px auto;align-content:center;align-items:center;gap:1px 3px;min-width:61px;min-height:44px;padding:6px 7px;border:1px solid #45616d;border-radius:10px;background:#18313ce8;color:#d4e9ef;box-shadow:0 4px 15px #0002}.camera-free>span{grid-row:1/3;font-size:19px;line-height:1;color:#9de8e0}.camera-free>b{font-size:9px;letter-spacing:.4px}.camera-free>small{font-size:8px;color:#8eb2bc}.camera-free[aria-pressed=true]{border-color:#c2ee88;background:#2c5040;color:#efffd3;box-shadow:inset 0 0 0 1px #c2ee8838,0 0 14px #c1ee6325}.camera-free[aria-pressed=true]>span,.camera-free[aria-pressed=true]>small{color:#d4ff9e}.map-hud .driver-chip{min-width:0}@media(max-width:540px){.camera-free{min-width:49px;min-height:43px;padding:5px;grid-template-columns:14px auto;gap:0 2px}.camera-free>span{font-size:16px}.camera-free>b{font-size:8px}.camera-free>small{font-size:7px}.camera-actions{gap:4px}.map-hud .driver-chip>strong{flex-shrink:0}.map-hud .driver-chip>div{min-width:0}}
