/* Every gameplay/layout override is gated by device detection, never viewport width alone. */
#mobileControls{display:none}.parking-mobile #mobileControls:not([hidden]){position:absolute;inset:0;z-index:8;display:block;pointer-events:none;--control-bottom:max(14px,env(safe-area-inset-bottom));--control-side:12px;--pedal-h:116px;--pedal-w:76px;--steer-size:76px}.parking-mobile #mobileControls[hidden]{display:none}.parking-mobile .game>.touch{display:none!important}.parking-mobile .mobile-steering,.parking-mobile .mobile-pedals{position:absolute;bottom:var(--control-bottom);display:flex;align-items:end;gap:9px;pointer-events:none}.parking-mobile .mobile-steering{left:calc(var(--control-side) + env(safe-area-inset-left))}.parking-mobile .mobile-pedals{right:calc(var(--control-side) + env(safe-area-inset-right))}.parking-mobile #mobileControls button{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:contain;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px;border:1px solid #d8f5ff70;border-radius:20px;background:linear-gradient(145deg,#d5f2ff23,#183a4c60 50%,#0b172956);box-shadow:inset 0 1px 0 #ffffff47,inset 0 -2px 0 #0003,0 5px 20px #0002;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#edffff;transform:none;transition:background .06s,border-color .06s,box-shadow .06s;will-change:auto}.parking-mobile .mobile-steering button{width:var(--steer-size);height:var(--steer-size)}.parking-mobile .mobile-pedals button{width:var(--pedal-w);height:var(--pedal-h)}.parking-mobile #mobileControls button svg{width:40px;height:56px;fill:#cbeaff12;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.parking-mobile .mobile-steering button svg{width:40px;height:40px;stroke-width:3.5;fill:none}.parking-mobile #mobileControls button span{font:800 8px/1.2 system-ui;letter-spacing:.8px;margin-top:7px;white-space:nowrap;pointer-events:none}.parking-mobile #mobileControls button.active{background:linear-gradient(145deg,#8fffd460,#1b77665c);border-color:#c9ffef;box-shadow:inset 0 0 18px #b3ffde32,0 0 16px #67efcd24;color:#e9fff4}.parking-mobile #mobileControls .mobile-brake.active{background:linear-gradient(145deg,#ffb4a65c,#7c3b4e60);border-color:#ffd6cb}.parking-mobile .game{touch-action:none}.parking-mobile body>header{top:max(9px,env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right))}.parking-mobile .game>.top{top:calc(50px + env(safe-area-inset-top));left:calc(10px + env(safe-area-inset-left));right:calc(10px + env(safe-area-inset-right))}.parking-mobile .levelinfo{padding:8px 10px;max-width:calc(100% - 105px)}.parking-mobile .levelinfo h2{font-size:12px;margin:5px 0}.parking-mobile .levelinfo p{font-size:9px}.parking-mobile #hullHUD{margin-top:6px;padding-top:5px}.parking-mobile .stats{margin:0;padding:8px;gap:10px}.parking-mobile .stats b{font-size:17px}.parking-mobile .stats small{font-size:7px}.parking-mobile .game>.bottom{left:calc(50% - 43px);right:auto;bottom:calc(150px + env(safe-area-inset-bottom));transform:none}.parking-mobile .speed{width:86px;height:86px}.parking-mobile .speed b{top:42px;font-size:21px}.parking-mobile .speed>span{top:63px;font-size:5px}.parking-mobile .speed em{left:38px;top:72px;font-size:10px}.parking-mobile .speed-needle{height:26px;top:15px;transform-origin:50% 26px}.parking-mobile .speed-dial small{top:25px;font-size:4px}.parking-mobile .tools{position:fixed;top:calc(150px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));left:auto;width:172px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;transform:none}.parking-mobile .tools button{min-height:44px;padding:7px 4px;font-size:8px;letter-spacing:0}.parking-mobile .tools .driving-tools{position:static;display:block;max-width:none;margin:0;padding:0;left:auto;bottom:auto;width:100%}.parking-mobile .tools .driving-tools>button{width:100%}.parking-mobile .driving-tools small{display:none}.parking-mobile #vehiclePanel{position:fixed;bottom:calc(145px + env(safe-area-inset-bottom));right:calc(12px + env(safe-area-inset-right));left:auto;max-height:50dvh;overflow:auto;width:180px;z-index:10}.parking-mobile .game>.goal{bottom:calc(250px + env(safe-area-inset-bottom));width:190px;max-width:47vw;padding:7px 8px}.parking-mobile .game>.goal>span{font-size:7px}.parking-mobile #tutor{top:calc(160px + env(safe-area-inset-top));left:12px;right:auto;width:min(48vw,250px)}.parking-mobile body.photo-mode #mobileControls{display:none!important}@media(orientation:landscape){.parking-mobile .game>.bottom{bottom:calc(13px + env(safe-area-inset-bottom))}.parking-mobile #mobileControls{--pedal-h:94px;--pedal-w:76px;--steer-size:72px;--control-side:14px}.parking-mobile .levelinfo{max-width:min(48vw,390px)}.parking-mobile .levelinfo p{display:none}.parking-mobile .tools{top:calc(112px + env(safe-area-inset-top));width:250px;grid-template-columns:repeat(3,minmax(0,1fr))}.parking-mobile .game>.goal{bottom:auto;top:calc(9px + env(safe-area-inset-top));width:220px;max-width:30vw;padding:5px 7px}.parking-mobile .game>.goal>span{font-size:6px}.parking-mobile #vehiclePanel{bottom:calc(115px + env(safe-area-inset-bottom))}.parking-mobile #tutor{top:calc(127px + env(safe-area-inset-top));max-width:34vw}.parking-mobile #mobileControls button svg{height:42px}.parking-mobile #mobileControls button span{margin-top:4px}}@media(min-width:600px) and (orientation:portrait){.parking-mobile #mobileControls{--pedal-h:130px;--pedal-w:90px;--steer-size:88px;--control-side:22px}.parking-mobile .game>.goal{max-width:40vw}}@media(prefers-reduced-motion:reduce){.parking-mobile #mobileControls button{transition:none}}

@media(max-width:360px) and (orientation:portrait){.parking-mobile #mobileControls{--pedal-w:64px;--steer-size:64px}.parking-mobile .mobile-steering,.parking-mobile .mobile-pedals{gap:7px}.parking-mobile #mobileControls button span{font-size:7px}}

.parking-mobile .game>.top>.stats{position:static;min-height:0;align-self:flex-start;margin:0!important;padding:8px;gap:10px}.parking-mobile #globalMenu{left:calc(10px + env(safe-area-inset-left));top:max(9px,env(safe-area-inset-top));min-height:34px}.parking-mobile body>header #home{display:none}html.parking-mobile body:not(:has(.shell:not([hidden]))) #masterMute{left:calc(128px + env(safe-area-inset-left));right:auto;top:max(9px,env(safe-area-inset-top));transform:none;font-size:8px;min-height:34px;padding:8px}.parking-mobile #servicePanel{top:calc(140px + env(safe-area-inset-top));left:calc(10px + env(safe-area-inset-left));right:auto;transform:none;width:min(44vw,220px);max-width:44vw;padding:8px 10px}.parking-mobile #servicePanel>strong{font-size:12px}.parking-mobile #servicePanel>span{font-size:9px}@media(orientation:landscape){.parking-mobile #servicePanel{top:calc(112px + env(safe-area-inset-top));width:min(34vw,250px);max-width:34vw}}
