@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--gold:#e8c064;--cream:#faf7f2;--wine:#82003a}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#152024;color:var(--cream);font-family:Manrope,Arial,sans-serif}button,select{font:inherit}button{cursor:pointer;touch-action:none;color:inherit;border:0}button:disabled{opacity:.4;cursor:wait}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}#game{position:relative;width:100%;height:100%;outline:0}#world{display:block;width:100%;height:100%;touch-action:none}.hidden{display:none!important}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#101a2280,transparent 23%,transparent 58%,#08121b85),radial-gradient(ellipse,transparent 35%,#08132042)}header{position:absolute;inset:26px 34px auto;display:flex;justify-content:space-between;align-items:center;z-index:5}.brand{display:flex;gap:14px;align-items:center;color:white;text-decoration:none;text-shadow:0 2px 10px #0008}.brand img{width:57px;height:57px;border-radius:50%;box-shadow:0 3px 20px #0002}.brand span{font-size:12px;font-weight:800;letter-spacing:.13em}.brand small{display:block;margin-top:5px;font-size:9px;letter-spacing:.25em;font-weight:500}.header-actions{display:flex;gap:12px;align-items:center}.header-actions button,#camera{background:#16252e70;backdrop-filter:blur(12px);padding:11px 14px;border:1px solid #ffffff22;border-radius:6px;font-size:10px;letter-spacing:.08em}#pause{font-size:16px;padding:7px 14px}#intro{position:absolute;left:6%;top:25%;max-width:570px;text-shadow:0 2px 24px #182326}#intro:before{content:'';position:absolute;inset:-100px -50px -100px -130px;z-index:-1;background:radial-gradient(ellipse,#10202abc,transparent 72%)}.eyebrow{font-size:10px;letter-spacing:.22em;font-weight:700;color:var(--gold);display:flex;align-items:center;gap:11px}.eyebrow i{width:6px;height:6px;background:var(--gold);border-radius:50%}h1{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-size:clamp(66px,6.7vw,112px);line-height:.93;letter-spacing:-.02em;margin:25px 0;font-weight:700}h1 em{font-style:normal;color:var(--gold)}.intro-copy{font-size:15px;line-height:1.85;color:#f4f0e7e8;margin-bottom:27px}.start-actions{display:flex;gap:10px}.primary{background:var(--wine);border:1px solid #cb75954f;box-shadow:0 7px 25px #250b2180;border-radius:5px;color:#fff;padding:17px 25px;font-weight:800;font-size:11px;letter-spacing:.08em;display:flex;align-items:center;justify-content:space-between;gap:35px;min-height:51px}.primary:hover{background:#9c104e;transform:translateY(-1px)}.primary span{font-size:21px;font-weight:400}.secondary{background:#17252cb0;border:1px solid #ffffff40;border-radius:5px;padding:15px 20px;font-size:10px;font-weight:700;backdrop-filter:blur(12px)}.secondary:hover{background:#35414b}.intro-features{display:flex;gap:25px;margin-top:34px;font-size:9px;color:var(--gold)}.intro-features b{display:block;font-weight:500;color:#fff;margin-top:5px}footer{position:absolute;left:34px;right:34px;bottom:35px;display:flex;justify-content:space-between;letter-spacing:.14em;font-size:9px;color:#e5e8e9}.credit{position:absolute;bottom:9px;left:34px;font-size:8px;color:#fff9;text-decoration:none;z-index:4}.mission{position:absolute;left:34px;top:110px;border-left:2px solid var(--gold);padding:12px 20px;background:linear-gradient(90deg,#112029d9,#14263150);max-width:400px;border-radius:0 8px 8px 0;backdrop-filter:blur(7px)}.mission>span{font-size:8px;letter-spacing:.17em;color:var(--gold)}.mission>div{display:flex;align-items:center;gap:15px;margin-top:8px}.mission strong{font-size:13px;font-weight:700;display:block}.mission small{font-size:10px;color:#c3c8c9;display:block;margin-top:6px}.mission i{display:block;font-size:28px;font-style:normal;color:var(--gold)}.stats{position:absolute;right:34px;top:110px;display:flex;gap:30px;text-align:right}.stats span{display:block;font-size:8px;letter-spacing:.12em;color:#d0d7d6}.stats strong{font-family:'Barlow Condensed',Arial,sans-serif;font-size:29px;font-weight:500;text-shadow:0 2px 10px #000}.map-widget{position:absolute;bottom:65px;left:34px;width:228px}.map-widget button{padding:0;background:#162027e0;border:1px solid #ffffff38;border-radius:10px;overflow:hidden;width:100%;box-shadow:0 3px 15px #0005}#minimap{width:100%;height:auto;display:block;opacity:.93}.map-widget button span{display:block;padding:8px;font-size:8px;letter-spacing:.12em;color:#e0d8c9;background:#111b21}.map-widget strong{display:block;font-size:11px;margin-top:12px;letter-spacing:.03em;text-shadow:0 2px 7px #000}.instruments{position:absolute;right:34px;bottom:64px;text-align:right;width:140px}.speed strong{font-family:'Barlow Condensed',sans-serif;font-weight:500;font-size:85px;line-height:.95}.speed>span{display:block;font-size:9px;letter-spacing:.16em;color:#c8cece;margin:5px 0 22px}.turbo{width:140px;text-align:left}.turbo>span{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.13em}.turbo small{color:#adb8ba}.turbo>div{height:3px;background:#ffffff28;margin:9px 0 15px}.turbo i{display:block;width:100%;height:3px;background:var(--gold);transition:width .1s}#camera{font-size:8px;padding:7px 10px}.keyboard-help{position:absolute;bottom:23px;left:50%;transform:translateX(-50%);display:flex;gap:19px;white-space:nowrap;font-size:8px;color:#d3d7d9}kbd{font:inherit;font-weight:800;color:white}#toast{position:absolute;top:24%;left:50%;transform:translate(-50%,-8px);padding:13px 23px;border:1px solid #dab46a80;background:#112026ed;border-radius:7px;font-size:12px;opacity:0;transition:.25s;pointer-events:none;z-index:20;text-align:center;max-width:90vw}#toast.visible{opacity:1;transform:translate(-50%,0)}#interact{position:absolute;bottom:23%;left:50%;transform:translateX(-50%);background:var(--wine);border:1px solid #ffd69a87;border-radius:6px;padding:15px 24px;font-size:12px;box-shadow:0 3px 25px #0007}#air{position:absolute;top:37%;left:50%;transform:translateX(-50%);font-family:'Barlow Condensed',sans-serif;font-size:32px;letter-spacing:.07em;text-shadow:0 3px 10px #000}.modal{position:absolute;inset:0;background:#0b1825bd;backdrop-filter:blur(12px);z-index:30;display:grid;place-items:center;padding:25px}.panel{width:min(520px,100%);padding:42px;border:1px solid #ffffff20;background:#15212ce8;border-radius:14px}.panel h2,.map-head h2{font-family:'Barlow Condensed',sans-serif;font-size:46px;line-height:1.05;margin:20px 0}.panel p{font-size:12px;line-height:1.95;color:#c2c9cb}.panel button{width:100%;margin-top:12px}.quality{display:flex;gap:15px;align-items:center;font-size:11px;margin:24px 0}.quality select{color:white;background:#253944;border:1px solid #ffffff30;padding:9px;border-radius:5px;font-size:11px}.result-stats{display:flex;gap:50px;font-size:9px;letter-spacing:.1em;margin:25px 0}.result-stats strong{display:block;font-size:37px;font-family:'Barlow Condensed',sans-serif;letter-spacing:0;margin-top:9px}.map-panel{width:min(950px,100%);max-height:95vh;overflow:auto;background:#162128;padding:24px;border:1px solid #ffffff25;border-radius:12px}.map-head{display:flex;justify-content:space-between;align-items:center}.map-head h2{font-size:32px;margin:8px 0 16px}.map-head .eyebrow{margin:0}#close-map{font-size:29px;background:transparent;padding:10px}#full-map{width:100%;height:53vh;min-height:210px;object-fit:fill;background:#172023;border:1px solid #ffffff12;border-radius:7px}.map-destinations{display:flex;gap:8px;margin:14px 0}.map-destinations button{background:#30404a;border:1px solid #ffffff20;padding:10px 17px;border-radius:5px;font-size:11px}.map-panel p,.map-panel details{font-size:10px;line-height:1.7;color:#c4c9c8}.map-panel a{color:var(--gold)}#touch-controls{display:none;position:absolute;bottom:45px;left:20px;right:20px;justify-content:space-between;pointer-events:none}#touch-controls>div{display:flex;align-items:end;gap:6px}#touch-controls button{pointer-events:auto;padding:17px 13px;border-radius:9px;border:1px solid #fff5;background:#132631ac;backdrop-filter:blur(10px);font-size:11px;user-select:none}#touch-controls .gas{background:var(--wine);padding:25px 22px}#impact{position:absolute;inset:0;box-shadow:inset 0 0 150px #e9324270;opacity:0;pointer-events:none;transition:opacity .15s}#impact.flash{opacity:1}#loading{position:absolute;inset:0;z-index:60;background:#112029;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px}#loading img{width:90px;border-radius:50%;margin-bottom:10px}#loading strong{font-size:23px;font-weight:500}#loading span{font-size:11px;color:#b7c0c4}#loading i{width:130px;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);animation:pulse 1.2s infinite}@keyframes pulse{50%{opacity:.2;transform:scaleX(.5)}}
@media(pointer:coarse){#touch-controls:not(.hidden){display:flex}.keyboard-help{display:none}.map-widget{bottom:155px;width:145px}.instruments{bottom:157px}.credit{bottom:10px}#interact{bottom:35%}}@media(max-width:750px){header{inset:17px 18px auto}.brand img{width:43px;height:43px}.brand span{font-size:9px}.brand small{font-size:7px}.header-actions button{font-size:8px;padding:9px}#intro{left:7%;top:24%}h1{font-size:77px}.intro-copy{font-size:12px}.start-actions{flex-direction:column;max-width:270px}.primary{padding:14px 20px}.intro-features{gap:20px;margin-top:24px}footer{left:20px;right:20px;bottom:31px;font-size:7px}footer span:last-child{display:none}.mission{left:18px;top:80px;padding:10px 12px;max-width:260px}.mission strong{font-size:11px}.mission small{font-size:8px}.stats{right:18px;top:80px;gap:12px;flex-direction:column}.stats strong{font-size:23px}.stats span{font-size:7px}.map-widget{left:18px;width:140px}.instruments{right:18px;width:100px}.turbo{width:100px}.speed strong{font-size:64px}.map-destinations{flex-wrap:wrap}.map-destinations button{font-size:9px;padding:8px}.panel{padding:25px}#toast{top:33%;font-size:10px}.keyboard-help{display:none}.credit{left:18px}#touch-controls{left:15px;right:15px}#touch-controls button{padding:16px 10px;font-size:9px}}@media(max-height:600px){#intro{top:25%}h1{font-size:61px;margin:14px 0}.intro-copy{font-size:11px;margin:12px 0}.start-actions{flex-direction:row;max-width:none}.intro-features{display:none}footer{bottom:26px}.map-widget{width:125px;bottom:47px}.instruments{bottom:42px}.mission{top:84px}.stats{top:88px;flex-direction:row}.keyboard-help{display:none}.speed strong{font-size:55px}#touch-controls:not(.hidden){bottom:20px}.map-panel{padding:15px}.map-head h2{font-size:24px}.map-panel p{margin:7px 0}}

@media(max-width:750px){#touch-controls:not(.hidden){display:flex}.map-widget{bottom:157px}.instruments{bottom:157px}#interact{bottom:35%}}

#world-hint{position:absolute;bottom:75px;left:50%;transform:translateX(-50%);font-size:12px;color:#f1d28d;text-shadow:0 2px 7px #000;text-align:center;max-width:45vw}#neighbor-dialogue{position:absolute;bottom:120px;left:50%;transform:translateX(-50%);width:min(390px,45vw);background:#16262de8;border-left:2px solid #e8c064;border-radius:5px;padding:14px 18px;pointer-events:none}#neighbor-name{font-size:9px;font-weight:800;color:#e8c064;letter-spacing:.16em}#neighbor-copy{margin:6px 0 0;font-size:13px;line-height:1.5}@media(max-width:750px){#neighbor-dialogue{bottom:280px;width:58vw;max-width:none;left:18px;transform:none}#neighbor-copy{font-size:11px}#world-hint{bottom:110px;max-width:90vw;width:90vw;font-size:11px}}

#dispatch-caption{position:absolute;bottom:7%;left:50%;transform:translateX(-50%);width:min(650px,84vw);padding:22px 27px;border:1px solid #e8c06455;border-left:3px solid var(--gold);border-radius:8px;background:#13212df2;z-index:22;box-shadow:0 8px 40px #0005}#dispatch-caption>span{font-size:10px;letter-spacing:.15em;color:var(--gold);font-weight:800}#dispatch-caption p{font-size:17px;line-height:1.55;margin:10px 0}#dispatch-caption small{font-size:9px;color:#b5c0c1}.urgent{color:#ff8765}.performance{margin-top:-12px!important;font-size:10px!important;color:var(--gold)!important}.mode-actions{display:flex;gap:8px}.mode-actions button{font-size:9px;min-width:0}#turbo-status{font-size:7px}.turbo{width:165px;margin-left:-25px}#touch-controls>div{gap:5px}#touch-controls button[data-drive=wheelie]{color:var(--gold)}@media(max-width:750px){#dispatch-caption{bottom:7%;padding:17px}#dispatch-caption p{font-size:13px}.turbo{width:120px;margin-left:-20px}.quality{flex-wrap:wrap}#touch-controls button{padding:14px 8px;font-size:8px}#touch-controls .gas{padding:22px 16px}}@media(max-height:600px){#dispatch-caption{bottom:5%;padding:12px 20px}#dispatch-caption p{font-size:13px;margin:6px 0}.panel{max-height:94vh;overflow:auto}}
@media(max-width:650px){#touch-controls>div:last-child{display:grid;grid-template-columns:repeat(3,auto)}#touch-controls .gas{grid-column:3;grid-row:1/3;height:100%}#touch-controls button[data-drive=brake]{grid-column:1;grid-row:2}#touch-controls button[data-drive=boost]{grid-column:2;grid-row:2}}

html,body{overscroll-behavior:none}#game{height:100dvh}#game,button{-webkit-tap-highlight-color:transparent}button{-webkit-user-select:none;-webkit-touch-callout:none}.phone-note,.phone-instructions{display:none}#touch-controls button.pressed{background:#c99936;color:#101a20;border-color:#ffe2a1;transform:scale(.95)}
.touch-device .phone-note,.touch-device .phone-instructions{display:block}.phone-note{font-size:10px;color:#ead1a1;margin:16px 0}.touch-device .desktop-instructions{display:none}.touch-device .keyboard-help{display:none}.touch-device header{top:max(12px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right))}.touch-device .brand span{display:none}.touch-device .brand img{width:38px;height:38px}.touch-device #touch-controls:not(.hidden){display:flex;bottom:max(16px,env(safe-area-inset-bottom));left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));z-index:24}.touch-device #touch-controls>div:first-child{gap:10px}.touch-device #touch-controls>div:first-child button{width:64px;height:64px;padding:0;font-size:29px;border-radius:50%;background:#12242ecc}.touch-device #touch-controls>div:last-child{display:grid;grid-template-columns:58px 64px 72px;grid-template-rows:48px 62px;gap:7px;align-items:stretch}.touch-device #touch-controls button{min-height:44px;padding:6px;font-size:9px;font-weight:800;backdrop-filter:none;box-shadow:0 3px 12px #0004}.touch-device #touch-controls .gas{grid-column:3;grid-row:1/3;height:auto;padding:0;border-radius:32px;font-size:18px}.touch-device #touch-controls button[data-drive=boost]{grid-column:2;grid-row:2;background:#ac8031;color:#111e26}.touch-device #touch-controls button[data-drive=brake]{grid-column:1;grid-row:2}.touch-device #touch-controls button[data-drive=jump]{grid-column:2;grid-row:1}.touch-device #touch-controls button[data-drive=wheelie]{grid-column:1;grid-row:1}.touch-device #world-hint{bottom:140px;font-size:10px}.touch-device #interact{bottom:145px;padding:16px 20px;z-index:25;min-height:48px}.touch-device #toast{max-width:60vw;top:110px;padding:9px 14px;font-size:10px}.touch-device .map-widget{bottom:146px;width:115px;left:max(16px,env(safe-area-inset-left))}.touch-device .instruments{bottom:145px;right:max(16px,env(safe-area-inset-right));width:105px}.touch-device #camera{min-width:60px;min-height:35px}.touch-device .turbo{width:105px;margin-left:0}.touch-device #neighbor-dialogue{display:none!important}.touch-device .credit{left:max(16px,env(safe-area-inset-left));bottom:3px;font-size:7px}.touch-device .speed strong{font-size:44px}.touch-device .speed>span{margin:3px 0 10px}.touch-device .map-widget strong{font-size:9px;margin-top:5px}.touch-device .mission{top:60px;max-width:270px;padding:6px 10px;left:max(16px,env(safe-area-inset-left));backdrop-filter:none}.touch-device .mission strong{font-size:10px}.touch-device .mission small{font-size:8px}.touch-device .mission>div{margin-top:4px;gap:8px}.touch-device .stats{top:62px;right:max(16px,env(safe-area-inset-right));gap:15px;flex-direction:row}.touch-device .stats strong{font-size:24px}.touch-device .stats span{font-size:7px}
@media(orientation:landscape) and (max-height:500px){.touch-device #intro{top:70px;left:6%;max-width:510px}.touch-device h1{font-size:56px;line-height:.91;margin:12px 0}.touch-device .intro-copy{margin:8px 0;font-size:11px;line-height:1.5}.touch-device .eyebrow{font-size:8px;margin:0}.touch-device .start-actions{flex-direction:row}.touch-device .primary,.touch-device .secondary{min-height:44px;padding:10px 17px;font-size:9px}.touch-device .phone-note{margin:10px 0;font-size:9px}.touch-device #intro-footer{bottom:18px}.touch-device .map-widget{width:95px;bottom:104px}.touch-device #minimap{height:65px;object-fit:cover}.touch-device .map-widget button span{padding:4px;font-size:6px}.touch-device .instruments{right:245px;bottom:18px;width:76px}.touch-device .speed strong{font-size:36px}.touch-device .turbo{width:76px}.touch-device .turbo small{display:none}.touch-device #camera{min-height:30px;padding:5px;font-size:7px}.touch-device .speed>span{font-size:7px;margin-bottom:8px}.touch-device #dispatch-caption{bottom:14px;padding:12px 16px;width:min(560px,76vw)}.touch-device #dispatch-caption p{font-size:12px;margin:6px 0}.touch-device #dispatch-caption small{font-size:8px}.touch-device #interact{bottom:125px}.touch-device #air{top:29%;font-size:24px}.touch-device .panel{max-height:90dvh;padding:20px}.touch-device .panel h2{font-size:32px;margin:12px 0}.touch-device .panel p{font-size:10px}.touch-device .quality{margin:12px 0}.touch-device #world-hint{bottom:18px;left:47%;width:27vw;font-size:9px}}
@media(orientation:portrait) and (max-width:600px){.touch-device #intro{top:20%;left:7%}.touch-device h1{font-size:74px}.touch-device #touch-controls>div:first-child{gap:5px}.touch-device #touch-controls>div:first-child button{width:51px;height:58px}.touch-device #touch-controls>div:last-child{grid-template-columns:48px 51px 59px;gap:5px}.touch-device #touch-controls:not(.hidden){left:12px;right:12px}.touch-device .mission{max-width:245px;top:65px}.touch-device .stats{top:145px;right:16px}.touch-device .map-widget{bottom:155px}.touch-device .instruments{bottom:155px}.touch-device #toast{top:210px;max-width:88vw;width:88vw}.touch-device #interact{bottom:285px}.touch-device #dispatch-caption{width:91vw;bottom:25px}.touch-device #dispatch-caption p{font-size:12px}}

/* The mobile cockpit keeps the road clear and reserves the corners for thumbs. */
#steering-pad{display:none}
.touch-device .vignette{opacity:.2}
.touch-device #touch-controls .steering-controls>button{display:none}
.touch-device #touch-controls .steering-controls{width:120px;height:116px;display:block}
.touch-device #steering-pad{display:block;position:relative;width:120px;height:112px;border:1px solid #ffffff48;border-radius:56px;background:#15253145;touch-action:none;pointer-events:auto;user-select:none;-webkit-user-select:none}
.steering-track{position:absolute;left:12px;right:12px;top:52px;height:2px;background:#ffffff40}
.steering-knob{position:absolute;left:36px;top:29px;width:48px;height:48px;border:2px solid #ffefd0aa;border-radius:50%;background:#f5e9c740;box-shadow:0 2px 8px #0003;transform:translateX(var(--steer-x,0px));pointer-events:none}
#steering-pad small{position:absolute;bottom:9px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:.16em;color:#ffeed3;pointer-events:none}
#steering-pad.pressed .steering-knob{background:#e8c064aa;border-color:#fff3d4}
.touch-device #touch-controls:not(.hidden){bottom:max(12px,env(safe-area-inset-bottom));left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right))}
.touch-device #touch-controls>div:last-child{grid-template-columns:48px 50px 62px;grid-template-rows:44px 62px;gap:5px}
.touch-device #touch-controls button{background:#13263185;border-color:#ffffff50;box-shadow:none;font-size:8px}
.touch-device #touch-controls .gas{font-size:17px;background:#82003ab8}
.touch-device #touch-controls button[data-drive=boost]{background:#ac8031b5}
.touch-device #game[data-mode=free] .brand,.touch-device #game[data-mode=job] .brand,.touch-device #game[data-mode=loading] .brand,.touch-device #game[data-mode=handover] .brand{visibility:hidden}
.touch-device header{top:max(8px,env(safe-area-inset-top))}
.touch-device .header-actions{gap:5px;margin-left:auto}
.touch-device .header-actions button{height:38px;min-width:38px;padding:6px;font-size:8px}
.touch-device .mission{top:max(8px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));right:150px;max-width:360px;padding:4px 8px;background:#12232f95}
.touch-device .mission>span{display:none}.touch-device .mission>div{margin:0;gap:8px}.touch-device .mission strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.touch-device .mission small{font-size:9px;margin-top:3px}.touch-device .mission i{font-size:26px;min-width:26px}.touch-device .mission>div>div{min-width:0}
.touch-device .stats{right:16px;top:51px;gap:0}.touch-device .stats>div:not(:last-child){display:none}.touch-device .stats strong{font-size:25px}.touch-device .stats span{font-size:7px}
.touch-device #minimap,.touch-device .map-widget strong{display:none}
.touch-device .map-widget{left:calc(50% - 10px);transform:translateX(-50%);bottom:max(12px,env(safe-area-inset-bottom));width:62px;height:34px}
.touch-device .map-widget button{height:34px;box-shadow:none;background:#13263185;border-radius:8px}.touch-device .map-widget button span{background:none;padding:5px;font-size:8px}
.touch-device .instruments{left:calc(50% - 10px);right:auto;transform:translateX(-50%);bottom:max(54px,calc(env(safe-area-inset-bottom) + 42px));width:70px;text-align:center}
.touch-device .speed{display:flex;align-items:baseline;justify-content:center;gap:4px}.touch-device .speed strong{font-size:28px}.touch-device .speed>span{font-size:6px;margin:0}.touch-device .turbo{width:70px;margin:4px 0 0}.touch-device .turbo>span{font-size:7px;justify-content:center}.touch-device .turbo small{display:none}.touch-device .turbo>div{margin:4px 0;height:4px}
.touch-device #camera{position:absolute;left:0;bottom:60px;min-width:70px;min-height:30px;padding:4px;font-size:8px;background:#13263185}
.touch-device #toast{top:auto;bottom:163px;max-width:62vw;padding:7px 10px;font-size:9px;background:#112026c9}
.touch-device #world-hint{bottom:185px;left:50%;width:55vw;max-width:55vw;font-size:9px;transform:translateX(-50%)}
.touch-device #interact{bottom:165px;min-height:44px;padding:10px 18px;font-size:11px}
.touch-device #air{top:70px;font-size:20px}.touch-device .credit{bottom:2px;font-size:6px}
@media(orientation:portrait) and (max-width:600px){.touch-device .mission{right:178px;max-width:none}.touch-device .mission strong{font-size:9px}.touch-device .mission small{font-size:8px}.touch-device .mission i{font-size:21px;min-width:21px}.touch-device .stats{top:52px}.touch-device #toast{width:auto;max-width:88vw}.touch-device #touch-controls .steering-controls{width:104px}.touch-device #steering-pad{width:104px;height:108px}.touch-device .steering-knob{left:28px}.touch-device #touch-controls>div:last-child{grid-template-columns:44px 44px 54px;gap:4px}.touch-device .map-widget,.touch-device .instruments{left:calc(50% - 16px)}.touch-device #camera{min-width:54px;width:54px;left:8px}.touch-device .map-widget{width:54px}.touch-device .instruments{width:60px}.touch-device .turbo{width:60px}}
@media(max-width:350px){.touch-device #touch-controls .steering-controls,.touch-device #steering-pad{width:86px}.touch-device .steering-knob{left:19px}.touch-device .map-widget,.touch-device .instruments{left:calc(50% - 24px)}}

.touch-device .map-widget{top:60px;bottom:auto;left:max(12px,env(safe-area-inset-left));right:auto;transform:none;display:flex;gap:6px;width:128px;height:34px}
.touch-device .map-widget button,.touch-device .map-widget #camera{position:static;width:60px;min-width:60px;height:34px;min-height:34px;padding:4px;font-size:8px}
.touch-device .instruments{left:auto;right:16px;top:98px;bottom:auto;transform:none;width:65px}.touch-device .speed strong{font-size:23px}.touch-device .turbo{width:65px}
.touch-device #game[data-mode=free] .stats{display:none}.touch-device #game[data-mode=free] .instruments{top:55px}

#controller-status{font-size:10px;color:var(--gold);min-height:14px}.gamepad-instructions{font-size:10px!important;color:#ead1a1!important;line-height:1.8!important}#interact:disabled{opacity:1;background:#182b35d9;color:#f3d894;cursor:default;box-shadow:none}
.touch-device #touch-controls>div:last-child{grid-template-columns:66px 66px;grid-template-rows:46px 58px 44px;gap:6px;align-items:stretch}
.touch-device #touch-controls .gas{grid-column:1;grid-row:1;min-height:46px;height:auto;padding:4px;border-radius:12px;font-size:14px;background:#82003ac9}
.touch-device #touch-controls button[data-drive=brake]{grid-column:2;grid-row:1;border-radius:12px;font-size:10px;background:#1b2d36c9}
.touch-device #touch-controls button[data-drive=jump]{grid-column:1;grid-row:2;border-radius:25px;font-size:10px}
.touch-device #touch-controls button[data-drive=boost]{grid-column:2;grid-row:2;border-radius:25px;font-size:10px}
.touch-device #touch-controls button[data-drive=wheelie]{grid-column:1;grid-row:3;border-radius:12px}
.touch-device #touch-controls button[data-drive=deliver]{grid-column:2;grid-row:3;border-radius:12px;color:#ffe8ae;background:#73551fc9}
.touch-device #touch-controls button[data-drive=deliver]:disabled{opacity:.45}.touch-device #touch-controls .gas.pressed{background:#ae8236;color:#13212a}.touch-device #touch-controls button[aria-pressed=true]{border:2px solid #ffdf8a;box-shadow:0 0 10px #efc06355}
.touch-device #interact{bottom:182px}.touch-device .phone-note{line-height:1.65;max-width:360px}.touch-device #toast{bottom:184px}.touch-device #world-hint{bottom:210px}
#game[data-controller=gamepad] .phone-instructions,#game[data-controller=gamepad] .desktop-instructions{display:none}#game[data-controller=gamepad] #touch-controls{opacity:.28}
@media(orientation:portrait) and (max-width:600px){.touch-device #touch-controls>div:last-child{grid-template-columns:62px 62px;grid-template-rows:46px 58px 44px;gap:5px}.touch-device .phone-note{font-size:10px}.touch-device #intro{top:17%}.touch-device #controller-status{font-size:9px}}

#phone-control{margin-top:14px;padding:13px 20px;color:#f2cf80;border:1px solid #f2cf8050}#phone-pair{z-index:80}.phone-pair-panel{text-align:center;max-width:610px;max-height:94vh;overflow:auto;position:relative}.phone-pair-panel h2{margin:10px 0 18px}#phone-pair-close{position:absolute;right:15px;top:12px;font-size:28px;background:none;color:inherit}#phone-qr{width:min(280px,42vh);margin:auto;background:white;border-radius:12px;padding:6px}#phone-qr:empty{display:none}#phone-qr svg{display:block;width:100%;height:auto}#phone-pair-link{display:block;color:#efc971;font-size:13px;padding:12px}#phone-pair-link:not([href]){display:none}#phone-new-qr{margin:10px auto 0}.phone-pair-panel p{font-size:13px;line-height:1.5}

/* A short neighbourhood exchange appears only while the phone rider is stopped. */
.touch-device #neighbor-dialogue:not(.hidden){display:block!important;top:116px;bottom:auto;left:50%;transform:translateX(-50%);width:min(320px,calc(100vw - 36px));padding:8px 12px}.touch-device #neighbor-copy{font-size:11px;line-height:1.35;margin:4px 0 0}
