/* Touch HUD: fixed anchors, one abilities drawer, original controls. */
#mbChrome{display:none}
body:is(.preparing,.choosing-mission,.main-menu,.menu-fleet) :is(#mbChrome,#battleSide,#reconChart),body:has(#fireTree:not([hidden])) :is(#mbChrome,#battleSide,#reconChart){display:none!important}
@media(orientation:landscape){
body.mobile-battle-v3{--mb-left:max(8px,env(safe-area-inset-left));--mb-right:max(8px,env(safe-area-inset-right));--mb-bottom:max(8px,env(safe-area-inset-bottom));--mb-height:var(--naval-vh,100dvh);--mb-ink:#f2e4c8;--mb-panel:#12343b;--mb-raised:#12343b;--mb-border:#b59c67;--mb-font:var(--naval-ui-font,system-ui,sans-serif)}
body.mobile-battle-v3 #ui{position:fixed!important;inset:0!important;width:100vw!important;height:var(--mb-height)!important;left:0!important;transform:none!important;pointer-events:none!important;z-index:60!important}
body.mobile-battle-v3 #hud{position:absolute!important;inset:auto 0 0!important;width:100%!important;height:0!important;transform:none!important;display:block!important;pointer-events:none!important;background:none!important;border:0!important;box-shadow:none!important;padding:0!important}
body.mobile-battle-v3 #hud:before,body.mobile-battle-v3 #hud:after,body.mobile-battle-v3 :is(#hud>.hud-paper,#hudCore,#initiative,#mission,#ownedFleet,#modeHint,#coursePreview){display:none!important}
body.mobile-battle-v3.mb-in-battle>:is(.fullscreen-button,.global-sound-button){display:none!important}body.mobile-battle-v3.mb-in-battle #mbChrome{display:block;pointer-events:none;color:var(--mb-ink);font:600 16px/20px var(--mb-font)}body.mobile-battle-v3.mb-in-battle>header{display:block!important;position:fixed!important;inset:0 0 auto!important;width:100vw!important;height:60px!important;padding:0!important;visibility:hidden!important;pointer-events:none!important}body.mobile-battle-v3.mb-in-battle>header *{visibility:hidden!important;pointer-events:none!important}
body.mobile-battle-v3 #mbChrome button{min-width:44px!important;min-height:44px!important;padding:7px!important;pointer-events:auto!important;touch-action:manipulation!important;border:1px solid var(--mb-border)!important;border-radius:4px!important;background:var(--mb-raised)!important;background-image:none!important;box-shadow:none!important;clip-path:none!important;color:var(--mb-ink)!important;font:600 16px/20px var(--mb-font)!important;letter-spacing:0!important;text-shadow:none!important;cursor:pointer!important}
body.mobile-battle-v3 #mbChrome button:disabled{opacity:.46!important;cursor:default!important}
body.mobile-battle-v3 #mbChrome button:focus-visible{outline:2px solid #e3c884!important;outline-offset:2px!important}
body.mobile-battle-v3 #mbChrome button>img{display:block!important;width:28px!important;height:28px!important;object-fit:contain!important;pointer-events:none!important}
body.mobile-battle-v3 #mbHeader{position:fixed!important;left:var(--mb-left)!important;right:var(--mb-right)!important;top:max(8px,env(safe-area-inset-top))!important;display:flex!important;align-items:center!important;gap:8px!important;height:48px!important;z-index:30!important;pointer-events:none!important}
body.mobile-battle-v3 #mbHeader #mbShip{position:relative!important;display:flex!important;align-items:center!important;gap:8px!important;width:clamp(218px,30vw,288px)!important;height:48px!important;text-align:left!important;overflow:hidden!important;padding:5px 8px!important}
body.mobile-battle-v3 #mbShip>span{min-width:0!important;flex:1!important}
body.mobile-battle-v3 #mbShipName{display:block!important;font:650 16px/20px var(--mb-font)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;letter-spacing:0!important}
body.mobile-battle-v3 #mbVitals{display:flex!important;gap:10px!important;align-items:center!important;font:600 16px/20px var(--mb-font)!important;color:var(--mb-ink)!important}
body.mobile-battle-v3 #mbVitals>span{display:flex!important;align-items:center!important;gap:3px!important;white-space:nowrap!important}
body.mobile-battle-v3 #mbVitals svg{width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}
body.mobile-battle-v3 #mbVitals b{font:inherit!important}
body.mobile-battle-v3 #mbHullGauge{position:absolute!important;left:0!important;bottom:0!important;height:2px!important;width:calc(var(--hp,1)*100%)!important;background:#adc297!important}
body.mobile-battle-v3 #mbTurn{flex:1!important;text-align:center!important;white-space:nowrap!important;font:600 16px/20px var(--mb-font)!important;text-shadow:0 2px 3px #061b24!important}
body.mobile-battle-v3 #mbHeader :is(#mbRecon,#mbMore){flex:0 0 48px!important;width:48px!important;height:48px!important;display:grid!important;place-items:center!important}
body.mobile-battle-v3 #mbLeft{position:fixed!important;left:var(--mb-left)!important;bottom:var(--mb-bottom)!important;display:flex!important;z-index:30!important}
body.mobile-battle-v3 #mbLeft #mbOfficers{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:148px!important;height:56px!important}
body.mobile-battle-v3 #mbLeft #mbOfficers>img{width:30px!important;height:30px!important}
body.mobile-battle-v3 #mbActions{position:fixed!important;right:var(--mb-right)!important;bottom:var(--mb-bottom)!important;display:flex!important;align-items:end!important;gap:8px!important;z-index:30!important;pointer-events:auto!important}
body.mobile-battle-v3 #hud #mbActions :is(#fireAction,#endTurn){position:relative!important;inset:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:1px!important;width:76px!important;height:56px!important;min-height:56px!important;padding:4px 6px!important;transform:none!important;background:#12343b!important;background-image:none!important;border:1px solid #b59c67!important;border-image:none!important;border-radius:4px!important;clip-path:none!important;box-shadow:none!important;color:#f2e4c8!important;text-shadow:none!important}
body.mobile-battle-v3 #hud #mbActions #fireAction{background:#12343b!important;border-color:#b59c67!important}
body.mobile-battle-v3 #hud #mbActions :is(#fireAction,#endTurn):before,body.mobile-battle-v3 #hud #mbActions :is(#fireAction,#endTurn):after{display:none!important}
body.mobile-battle-v3 #hud #mbActions :is(#fireAction,#endTurn) .painted-ui-icon{position:static!important;inset:auto!important;width:27px!important;height:27px!important;flex:0 0 27px!important;transform:none!important;object-fit:contain!important}
body.mobile-battle-v3 #hud #mbActions :is(#fireAction,#endTurn) .command-copy{position:static!important;inset:auto!important;display:block!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;transform:none!important}
body.mobile-battle-v3 #hud #mbActions :is(#fireAction,#endTurn) .command-copy b{display:block!important;font:650 16px/20px var(--mb-font)!important;letter-spacing:0!important;white-space:nowrap!important;padding:0!important;margin:0!important;height:auto!important;color:inherit!important}
body.mobile-battle-v3 #hud #mbActions :is(kbd,.command-key,.command-copy small){display:none!important}
body.mobile-battle-v3 #mbPath{position:fixed!important;left:auto!important;right:var(--mb-right)!important;bottom:var(--mb-bottom)!important;transform:none!important;display:flex!important;align-items:center!important;gap:8px!important;max-width:calc(100vw - 180px)!important;min-height:56px!important;padding:5px 6px 5px 12px!important;background:var(--mb-panel)!important;border:1px solid var(--mb-border)!important;border-radius:4px!important;z-index:45!important;pointer-events:auto!important}
body.mobile-battle-v3 #mbPath[hidden]{display:none!important}
body.mobile-battle-v3 #mbPathCost{font:600 16px/21px var(--mb-font)!important;white-space:nowrap!important}
body.mobile-battle-v3 #mbConfirmMove{min-width:72px!important;height:44px!important;background:#29494b!important}
body.mobile-battle-v3 #mbCancelMove{width:44px!important;height:44px!important;padding:10px!important}
body.mobile-battle-v3 #mbCancelMove img,body.mobile-battle-v3 #mbTrayClose img{width:24px!important;height:24px!important;filter:brightness(0) invert(.93)!important}
body.mobile-battle-v3 #mbTray{position:fixed!important;left:var(--mb-left)!important;bottom:calc(var(--mb-bottom) + 66px)!important;width:min(440px,calc(100vw - 16px))!important;max-height:calc(var(--mb-height) - var(--mb-bottom) - 74px)!important;overflow:hidden!important;box-sizing:border-box!important;padding:10px!important;background:var(--mb-panel)!important;color:var(--mb-ink)!important;border:1px solid var(--mb-border)!important;border-radius:4px!important;box-shadow:0 7px 20px #04172070!important;z-index:50!important;pointer-events:auto!important}
body.mobile-battle-v3 #mbTray[hidden]{display:none!important}
body.mobile-battle-v3 #mbTray>header{position:static!important;inset:auto!important;display:flex!important;align-items:center!important;gap:8px!important;justify-content:space-between!important;height:44px!important;min-height:44px!important;padding:0!important;margin:0 0 8px!important;background:none!important;pointer-events:auto!important}
body.mobile-battle-v3 #mbTrayTitle{flex:1!important;font:650 18px/22px var(--mb-font)!important;letter-spacing:0!important}
body.mobile-battle-v3 #mbTrayClose{flex:0 0 44px!important;width:44px!important;height:44px!important;padding:10px!important}
body.mobile-battle-v3 #mbAbilityCategories{display:flex!important;gap:8px!important;flex:1!important;min-width:0!important}
body.mobile-battle-v3 #mbAbilityCategories button{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;flex:1!important;padding:6px!important;min-width:0!important;height:44px!important}
body.mobile-battle-v3 #mbAbilityCategories button>img{width:24px!important;height:24px!important}
body.mobile-battle-v3 #mbAbilityCategories [aria-selected=true],body.mobile-battle-v3 #mbOfficerTabs [aria-selected=true]{background:#29494b!important;border-color:#d3b46f!important}
body.mobile-battle-v3 #mbTray:not([data-pane=more]) #mbTrayTitle,body.mobile-battle-v3 #mbTray[data-pane=more] #mbAbilityCategories,body.mobile-battle-v3 #mbTray:not([data-pane=officers]) :is(#mbOfficerTabs,#mbOfficersHost),body.mobile-battle-v3 #mbTray:not([data-pane=ship]) #mbShipHost,body.mobile-battle-v3 #mbTray:not([data-pane=more]) #mbToolsHost{display:none!important}
body.mobile-battle-v3 #mbOfficerTabs{position:static!important;display:flex!important;justify-content:space-between!important;gap:6px!important;width:100%!important;height:44px!important;margin:0 0 8px!important;padding:0!important;border:0!important}
body.mobile-battle-v3 #mbOfficerTabs button{display:grid!important;place-items:center!important;flex:1!important;min-width:44px!important;width:44px!important;height:44px!important;padding:2px!important}
body.mobile-battle-v3 #mbOfficerTabs button>img{width:28px!important;height:38px!important;object-fit:contain!important}
body.mobile-battle-v3 #mbOfficerTabs button>span{display:none!important}
body.mobile-battle-v3 #hud #mbOfficersHost :is(#hudLeft,#hudRight){display:contents!important;position:static!important;inset:auto!important;width:auto!important;height:auto!important;padding:0!important;gap:0!important;transform:none!important;grid-template-columns:none!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post{display:none!important;position:relative!important;inset:auto!important;width:100%!important;transform:none!important;pointer-events:auto!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post.mb-selected-post{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:24px 24px!important;column-gap:10px!important;align-items:center!important;height:52px!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .portrait{display:none!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post :is(.officer-name,.post-name){position:static!important;inset:auto!important;grid-column:1!important;width:auto!important;height:auto!important;text-align:left!important;font:600 16px/22px var(--mb-font)!important;letter-spacing:0!important;color:var(--mb-ink)!important;text-shadow:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .officer-name{grid-row:1!important;font-weight:650!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .post-name{grid-row:2!important;color:#c5d3d1!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .ability-column{position:static!important;inset:auto!important;grid-column:2!important;grid-row:1/3!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;width:auto!important;height:52px!important;margin:0!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .ability{position:relative!important;width:48px!important;height:48px!important;min-height:48px!important;padding:3px!important;margin:0!important;border:1px solid var(--mb-border)!important;border-radius:4px!important;background:var(--mb-raised)!important;background-image:none!important;box-shadow:none!important;clip-path:none!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .ability:not(:has(img,svg)){display:none!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .ability:before{inset:0!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .ability .ability-art{position:static!important;inset:auto!important;display:block!important;width:40px!important;height:40px!important;max-width:100%!important;max-height:100%!important;margin:0!important;transform:none!important;object-fit:contain!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .ability .slot-cost{position:absolute!important;right:0!important;bottom:0!important;width:24px!important;height:22px!important;min-width:22px!important;padding:0 2px!important;transform:none!important;background:#142b31!important;border:1px solid #b59c67!important;border-radius:3px!important;color:var(--mb-ink)!important;font:650 16px/20px var(--mb-font)!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .ability.passive .slot-cost{display:none!important}
body.mobile-battle-v3 #hud #mbOfficersHost .post .cooldown-counter{font:650 16px/20px var(--mb-font)!important;color:var(--mb-ink)!important}
body.mobile-battle-v3 #mbShipHost{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important;padding:0!important}
body.mobile-battle-v3 #hud #mbShipHost :is(#mbMove,#ammoToggle,#sailToggle,#boardingAction,.ship-ability-button){position:relative!important;inset:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:0!important;width:56px!important;height:56px!important;min-height:56px!important;padding:4px!important;margin:0!important;transform:none!important;border:1px solid var(--mb-border)!important;border-radius:4px!important;background:var(--mb-raised)!important;background-image:none!important;box-shadow:none!important;clip-path:none!important;color:var(--mb-ink)!important}
body.mobile-battle-v3 #hud #mbShipHost :is(#mbMove,#ammoToggle,#sailToggle,#boardingAction,.ship-ability-button)>img{display:block!important;width:36px!important;height:36px!important;object-fit:contain!important}
body.mobile-battle-v3 #mbMove>span,body.mobile-battle-v3 #mbShipHost .command-copy{display:none!important}
body.mobile-battle-v3 #hud #mbShipHost .ship-abilities-hud{position:static!important;inset:auto!important;display:flex!important;align-items:center!important;gap:8px!important;width:auto!important;height:56px!important;padding:0!important;margin:0!important;transform:none!important}
body.mobile-battle-v3 #hud #mbShipHost .ship-ability-cost,body.mobile-battle-v3 #hud #mbShipHost .ship-ability-recovery{font:650 16px/20px var(--mb-font)!important;color:var(--mb-ink)!important;background:#142b31!important;border-radius:3px!important}
body.mobile-battle-v3 #hud #mbShipHost .ship-ability-passive .ship-ability-cost{display:none!important}
body.mobile-battle-v3 #mbToolsHost{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
body.mobile-battle-v3 #mbToolsHost .mb-tool,body.mobile-battle-v3 #mbToolsHost #journalToggle{position:static!important;inset:auto!important;display:flex!important;align-items:center!important;gap:8px!important;width:auto!important;height:44px!important;min-height:44px!important;padding:6px 10px!important;margin:0!important;background:var(--mb-raised)!important;background-image:none!important;border:1px solid var(--mb-border)!important;border-radius:4px!important;box-shadow:none!important;clip-path:none!important;color:var(--mb-ink)!important;font:600 16px/20px var(--mb-font)!important;letter-spacing:0!important}
body.mobile-battle-v3 #mbToolsHost .mb-tool>img{width:28px!important;height:28px!important;object-fit:contain!important}
body.mobile-battle-v3 #mbToolsHost :is(.mb-tool,#journalToggle){min-width:0!important;gap:6px!important;padding:6px!important}
body.mobile-battle-v3 #mbToolsHost .mb-tool>span{display:block!important;font:inherit!important;white-space:nowrap!important}
body.mobile-battle-v3.mb-controls-open #mbHeader,body.mobile-battle-v3.mb-reading #mbChrome{visibility:hidden}body.mobile-battle-v3.aiming #mbChrome,body.mobile-battle-v3.mb-boarding #mbActions,body.mobile-battle-v3.mb-boarding #mbLeft{display:none!important}
body.mobile-battle-v3 .shipLabel{width:160px!important;min-width:160px!important;max-width:160px!important;height:44px!important;padding:3px 6px!important;pointer-events:auto!important}
body.mobile-battle-v3 .shipLabel.mb-actor-label,body.mobile-battle-v3 .shipHoverTip{visibility:hidden!important;pointer-events:none!important}
body.mobile-battle-v3 .shipLabel .ship-title{font:600 16px/19px var(--mb-font)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.mobile-battle-v3 .shipLabel :is(.inspect-world,.board-target){display:none!important}
body.mobile-battle-v3 :is(#inspect,#hover,#instructions,#boardingLoot,.ship-ability-info){position:fixed!important;top:8px!important;bottom:auto!important;max-height:calc(var(--mb-height) - 16px)!important;overflow:hidden!important}
body.mobile-battle-v3 :is(#inspect,#hover,#battleJournal,#boardingLoot,.ship-ability-info).mbPaged{display:flex!important;flex-direction:column!important;height:calc(var(--mb-height) - 16px)!important;max-height:calc(var(--mb-height) - 16px)!important;overflow:hidden!important}
body.mobile-battle-v3 .mbPageHost{min-height:0!important;flex:1!important;max-height:none!important;overflow:hidden!important}
body.mobile-battle-v3 [data-mb-page-item][hidden]{display:none!important}
body.mobile-battle-v3 .mbPageNav{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;flex:0 0 44px!important;height:44px!important;min-height:44px!important;margin-top:6px!important;pointer-events:auto!important}
body.mobile-battle-v3 .mbPageNav button{position:static!important;inset:auto!important;display:grid!important;place-items:center!important;width:44px!important;height:44px!important;min-height:44px!important;padding:9px!important;transform:none!important}
body.mobile-battle-v3 .mbPageNav button img{width:24px!important;height:24px!important;object-fit:contain!important}
body.mobile-battle-v3 .mbPageNav span{font:600 16px/20px var(--mb-font)!important}
body.mobile-battle-v3 :is(#inspect,#hover,#battleJournal,#boardingLoot,#instructions,.ship-ability-info)[hidden]{display:none!important}
body.mobile-battle-v3 #result.mbResultPaged{width:min(700px,calc(100vw - 16px))!important;height:calc(var(--mb-height) - 16px)!important;max-height:calc(var(--mb-height) - 16px)!important;padding:10px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:minmax(0,1fr) 48px!important;gap:8px!important;overflow:hidden!important}
body.mobile-battle-v3 #mbResultBody{grid-column:1/-1!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
body.mobile-battle-v3 #result #resultTag{display:none!important}
body.mobile-battle-v3 #result .mbResultNav{grid-row:2!important;grid-column:1!important;margin:0!important}
body.mobile-battle-v3 #result.mbResultPaged #retry{position:static!important;inset:auto!important;grid-row:2!important;grid-column:2!important;min-height:48px!important;margin:0!important}
body.mobile-battle-v3 #result.mbResultPaged #salvage{flex:1!important;min-height:0!important;overflow:hidden!important;margin:0!important}
body.mobile-battle-v3 #result.mbResultPaged .collected-trophies,body.mobile-battle-v3 #result.mbResultPaged .salvage-grid{display:flex!important;flex-direction:column!important;gap:6px!important}
body.mobile-battle-v3 #result .salvage-card input{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
body.mobile-battle-v3 #result.mbResultPaged [hidden]{display:none!important}
}

/* Native hidden means no ability exists; never expose an empty hull slot. */
@media(orientation:landscape){body.mobile-battle-v3 #hud #mbShipHost :is(#mbMove,#ammoToggle,#sailToggle,#boardingAction,.ship-abilities-hud,.ship-ability-button)[hidden]{display:none!important}}

@media(orientation:landscape){body.mobile-battle-v3 #result.mbResultPaged .reward-resources{margin:0!important}}

/* World information never intercepts a touch on the actual vessel or sea. */
body.naval-mobile #shipLabels :is(.shipLabel,.shipHoverTip){display:none!important;pointer-events:none!important}

body.mobile-battle-v3 #mbActions[hidden]{display:none!important}
