/* One entry point to the map, settings and screen density for every vehicle. */
.vehicle-menu-button57,.pilot-status57,.weapon-readout57,.weapon-name57{display:none}
.hud.vehicle-menu57-enabled>.hud-tools,
.hud.vehicle-menu57-enabled>.minimap,
.hud.vehicle-menu57-enabled>.bmw-menu55{display:none!important}
.hud.vehicle-menu57-enabled>.vehicle-menu-button57{display:block;position:absolute;z-index:12;right:max(14px,env(safe-area-inset-right));top:max(14px,env(safe-area-inset-top));width:46px;height:46px;min-height:46px;border:1px solid #b9d9dc65;border-radius:50%;padding:0;background:#102e39df;color:#f0fff7;font:700 21px system-ui;letter-spacing:1px;pointer-events:auto;touch-action:manipulation;box-shadow:0 3px 12px #0004}
.vehicle-menu-button57:focus-visible{outline:3px solid #ffe398;outline-offset:3px}
.vehicle-menu57 h2{margin:8px 0 18px}.vehicle-menu57 .eyebrow{margin-top:8px}
.vehicle-menu-grid57{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.vehicle-menu-grid57 .secondary-btn{margin:0;min-height:62px;padding:10px 4px;display:flex;flex-direction:column;align-items:center;gap:5px}
.vehicle-menu-grid57 span{font-size:23px}.vehicle-menu57>.secondary-btn{width:100%;min-height:46px;margin:5px 0}
.density-choice57 small{display:block;font-size:11px;opacity:.75;margin-top:3px}
.combat-help57{font:12px/1.6 system-ui;color:#365356;text-align:left;margin:14px 0}

/* Compact vehicles retain the same pointer-owning elements. Only their layout changes. */
.hud.combat-hud57{--combat-bottom57:max(20px,env(safe-area-inset-bottom));--combat-right57:max(14px,env(safe-area-inset-right));--combat-left57:max(14px,env(safe-area-inset-left));--combat-wheel57:132px;--combat-weapon-lift57:0px}
.hud.combat-hud57.split-controls38 .steer-panel38{right:var(--combat-right57);left:auto;bottom:var(--combat-bottom57);width:var(--combat-wheel57);height:var(--combat-wheel57)}
.hud.combat-hud57 .steering-wheel38{height:var(--combat-wheel57)}
.hud.combat-hud57 .steer-panel38>small{display:none}
.hud.combat-hud57 .steering-wheel38 button{top:40px;width:44px;height:48px;min-height:44px;font-size:32px}
.hud.combat-hud57 .wheel-art38{inset:10px}
.hud.combat-hud57.split-controls38 .thumb-left{left:var(--combat-left57);right:auto;bottom:var(--combat-bottom57);width:74px;height:148px}
.hud.combat-hud57 .drive-lever38{border-radius:24px;background:linear-gradient(125deg,#284c56e0,#122d39e8)}
.hud.combat-hud57 .drive-lever38>button{min-height:48px;padding:7px;font-size:19px}
.hud.combat-hud57 .drive-lever38 small{font-size:7px;letter-spacing:.5px}
.hud.combat-hud57 .lever-slot38{width:6px;left:calc(50% - 3px)}
.hud.combat-hud57 .lever-slot38 i{left:-17px;width:40px;height:26px;transform:translateY(calc(var(--lever,0)*-38px))}
.hud.combat-hud57.split-controls38 .thumb-right{display:grid;grid-template-columns:48px 48px;grid-auto-rows:48px;align-content:end;justify-content:start;gap:8px;left:var(--combat-left57);right:auto;bottom:calc(var(--combat-bottom57) + 162px);width:104px;height:auto}
.hud.combat-hud57.split-controls38 .thumb-right>button{position:relative;width:48px;height:48px;min-height:48px;border-radius:50%;padding:2px;box-sizing:border-box;border:1px solid #b2d4d8a6;background:#193c49e8;box-shadow:0 3px 8px #0005;touch-action:none}
.hud.combat-hud57 .thumb-right>button small{font-size:7px;line-height:1;margin-top:0}
.hud.combat-hud57 .thumb-right>button b,.hud.combat-hud57 .thumb-right>button>span,.hud.combat-hud57 .thumb-right>button strong{font-size:19px}
.hud.combat-hud57[data-vehicle=tank] .drive-power,.hud.combat-hud57[data-vehicle=tank] .drive-drift{display:none!important}
.hud.combat-hud57.combat-compact57 .drive-view,.hud.combat-hud57.combat-compact57 .drive-brake{display:none!important}
.hud.combat-hud57>.reset-btn{display:none!important}

/* Three skill bubbles arc above the steering wheel without covering its touch area. */
.hud.combat-hud57.split-controls38>.ufo-weapons{position:absolute;display:block;left:auto;right:var(--combat-right57);bottom:calc(var(--combat-bottom57) + var(--combat-weapon-lift57));width:210px;height:238px;pointer-events:none;z-index:6}
.hud.combat-hud57>.ufo-weapons[hidden]{display:none!important}
.hud.combat-hud57.split-controls38 .ufo-weapons>button{position:absolute;display:block;width:48px;height:48px;min-height:48px;padding:0 0 10px;border-radius:50%;border:2px solid #7eb9c7;box-sizing:border-box;background:#123b4deb;color:#effffb;font-size:21px;line-height:1;pointer-events:auto;touch-action:none;user-select:none;box-shadow:0 4px 12px #0006;overflow:visible}
.hud.combat-hud57.split-controls38 .ufo-weapons>button[data-control=laser]{right:4px;bottom:140px;width:56px;height:56px;font-size:25px;border-color:#86e8ed}
.hud.combat-hud57.split-controls38 .ufo-weapons>button[data-control=super]{right:66px;bottom:182px;border-color:#ddbaff;background:#40315be8;color:#f7e7ff}
.hud.combat-hud57.split-controls38 .ufo-weapons>button[data-control=bomb]{right:128px;bottom:134px;border-color:#f2c977;background:#514127e8}
.hud.combat-hud57 .ufo-weapons>button>small{display:none}
.hud.combat-hud57 .ufo-weapons>button::before{content:'';position:absolute;inset:-3px;border-radius:50%;padding:3px;background:conic-gradient(#fff0ac var(--weapon-charge57,0deg),transparent 0);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none}
.hud.combat-hud57 .ufo-weapons>button.held{background:#326a78;transform:scale(.95)}
.hud.combat-hud57 .ufo-weapons>button.weapon-cooldown57{opacity:.7;filter:saturate(.35)}
.hud.combat-hud57 .weapon-name57{display:block;position:absolute;bottom:5px;left:0;right:0;text-align:center;font:800 7px system-ui;letter-spacing:.3px;pointer-events:none}
.hud.combat-hud57 .weapon-readout57:not(:empty){display:block;position:absolute;top:-10px;left:50%;transform:translateX(-50%);padding:2px 5px;border-radius:8px;background:#142932;color:#fff1b9;border:1px solid #9bd8d563;white-space:nowrap;font:700 10px system-ui;pointer-events:none;font-variant-numeric:tabular-nums}
.hud.combat-hud57 .ufo-weapons>button:focus-visible{outline:3px solid #fff1ae;outline-offset:5px}

.hud.combat-hud57.combat-compact57>.hud-score,.hud.combat-hud57.combat-compact57>.street-sign,.hud.combat-hud57.combat-compact57>.next-direction,.hud.combat-hud57.combat-compact57>.active-effect,.hud.combat-hud57.combat-compact57>.balloon-score,.hud.combat-hud57.combat-compact57>.sound-retry,.hud.combat-hud57.combat-compact57>.speed-lines{display:none!important}
.hud.combat-hud57.combat-compact57>.pilot-status57{display:block;position:absolute;left:var(--combat-left57);top:max(17px,env(safe-area-inset-top));padding:6px 10px;border-radius:14px;background:#12323bbb;color:#e1f8e8;font:700 12px system-ui;pointer-events:none;max-width:calc(100% - 90px)}
.hud.combat-hud57.split-controls38>.speed{left:calc(50% - 22px);right:auto;bottom:calc(var(--combat-bottom57) + 24px);transform:translateX(-50%);width:62px;text-align:center;pointer-events:none;padding:0;background:none}
.hud.combat-hud57>.speed>span{display:none}.hud.combat-hud57>.speed b{font:500 28px system-ui;font-variant-numeric:tabular-nums}.hud.combat-hud57>.speed small{font-size:8px}
.hud.combat-hud57.combat-compact57 .dashboard38{height:75px;bottom:-37px;opacity:.85}.hud.combat-hud57.combat-compact57 .instrument38,.hud.combat-hud57.combat-compact57 .cockpit-wheel38,.hud.combat-hud57.combat-compact57 .tank-yoke38{display:none}
body.combat-hud57 #ufo-rescue53,body.combat-hud57 #marine48{display:none!important}

@media(max-width:360px){.hud.combat-hud57{--combat-left57:10px;--combat-right57:10px}.hud.combat-hud57.split-controls38>.speed{width:54px}.hud.combat-hud57>.speed b{font-size:25px}}
@media(orientation:landscape) and (max-height:560px){
 .hud.combat-hud57{--combat-wheel57:120px;--combat-bottom57:max(12px,env(safe-area-inset-bottom));--combat-weapon-lift57:-10px}
 .hud.combat-hud57 .steering-wheel38 button{top:34px}
 .hud.combat-hud57.split-controls38 .thumb-left{height:132px}
 .hud.combat-hud57 .drive-lever38>button{min-height:44px}
 .hud.combat-hud57 .lever-slot38 i{transform:translateY(calc(var(--lever,0)*-30px))}
 .hud.combat-hud57.split-controls38 .thumb-right{left:calc(var(--combat-left57) + 88px);bottom:var(--combat-bottom57);grid-template-columns:46px 46px;grid-auto-rows:46px;gap:6px;width:98px}
 .hud.combat-hud57.split-controls38 .thumb-right>button{width:46px;height:46px;min-height:46px}
 .hud.combat-hud57.split-controls38>.speed{left:50%;bottom:calc(var(--combat-bottom57) + 9px)}
 .hud.combat-hud57:not(.combat-compact57)>.hud-score{transform:scale(.75);transform-origin:top left}
 .hud.combat-hud57:not(.combat-compact57)>.street-sign{top:12px;font-size:12px;max-width:32vw}
}

/* Live radio occupies one small touch target next to the shared menu. */
.easy-radio61{display:none}
.hud.vehicle-menu57-enabled>.easy-radio61{display:flex;position:absolute;z-index:12;right:calc(max(14px,env(safe-area-inset-right)) + 56px);top:max(15px,env(safe-area-inset-top));width:44px;height:44px;min-height:44px;padding:5px;flex-direction:column;justify-content:center;align-items:center;border:1px solid #b9d9dc65;border-radius:50%;background:#102e39df;color:#f0fff7;pointer-events:auto;touch-action:manipulation;box-shadow:0 3px 12px #0004}
.easy-radio61 svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.easy-radio61 small{font:800 7px/1 system-ui;letter-spacing:.8px;pointer-events:none}
.easy-radio61[data-state=playing]{background:#176855!important;border-color:#d8f8ae!important;color:#f7ffe5!important}
.easy-radio61[data-state=loading]{border:2px dashed #ffe29b!important}
.easy-radio61[data-state=error]{border-color:#ffb890!important}
.easy-radio61:focus-visible{outline:3px solid #ffe398;outline-offset:3px}
.hud.combat-hud57.combat-compact57>.pilot-status57{max-width:calc(100% - 140px);font-size:11px}

.easy-radio61[data-state="blocked"]{border-color:#ffd26a!important;color:#ffd26a!important}

.hud.ufo-flight [data-control="gas"]{display:none!important}

/* Fourth weapon stays outside the steering surface, including narrow phones. */
.hud.combat-hud57.split-controls38 .ufo-weapons>button[data-control=planet]{right:128px;bottom:202px;border-color:#ffc46c;background:#673b22ed;color:#fff1cf}
.hud.combat-hud57 .ufo-weapons>button[hidden],.hud[data-vehicle=tank] [data-control=planet]{display:none!important}
