/* Stable windows above the real cockpit controls, without rising/folding motion. */
body[data-bridge="on"] #page:has(.bridge-sheet),
body[data-bridge="on"][data-bridge-operations="open"] #page{
 z-index:90!important;pointer-events:none!important;
}
body[data-bridge="on"] #page#page .bridge-sheet,
body[data-bridge="on"][data-bridge-operations="open"] #page#page .bridge-operations{
 top:calc(var(--bridge-header) + 10px)!important;
 bottom:max(12px,calc(100dvh - var(--helm-console-top,75dvh) + 106px))!important;
 max-height:none!important;min-height:0!important;
 padding:16px!important;overflow:auto!important;overscroll-behavior:contain;
 -webkit-overflow-scrolling:touch;scroll-padding:58px 0 16px;
 background:linear-gradient(135deg,#123b4edb,#071c2ce8)!important;
 border-color:#8de8f0b3!important;box-shadow:inset 0 0 24px #55dfff0c,0 0 18px #4bd5f529,0 10px 25px #0007!important;
 backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
 transform:none!important;filter:none!important;pointer-events:auto!important;
}
body[data-bridge="on"] #page#page .bridge-sheet::before{display:none!important}
body[data-bridge="on"]:has(#page#page .bridge-sheet) :is(#resources,.helm-right-display,.helm-side-desk),
body[data-bridge="on"][data-bridge-operations="open"] :is(#resources,.helm-right-display,.helm-side-desk){
 display:none!important;visibility:hidden!important;pointer-events:none!important;
}
body[data-bridge="on"]:has(#page#page .bridge-sheet) #bridge-computer-board,
body[data-bridge="on"][data-bridge-operations="open"] #bridge-computer-board#bridge-computer-board{
 visibility:visible!important;pointer-events:auto!important;
}
body[data-bridge="on"] .bridge-sheet-close{
 position:sticky!important;top:0!important;z-index:100!important;
 width:44px!important;height:44px!important;min-height:44px!important;
 touch-action:manipulation;box-shadow:0 0 0 5px #0b2130;
}
/* Keep all targets in their final location throughout opening. */
body[data-bridge="on"][data-holo-entering="on"] #page :is(.bridge-sheet,.bridge-operations),
body[data-bridge="on"][data-holo-entering="on"] dialog[open]{animation:interface-appear .16s ease-out both!important;transform:none!important}
@keyframes interface-appear{from{opacity:0}to{opacity:1}}
@media(max-width:760px){
 body[data-bridge="on"] #page#page .bridge-sheet,
 body[data-bridge="on"][data-bridge-operations="open"] #page#page .bridge-operations{
  top:calc(var(--bridge-header) + 8px)!important;left:8px!important;right:8px!important;
  bottom:max(8px,calc(100dvh - var(--helm-console-top,75dvh) + 96px))!important;
  padding:10px!important;
 }
}
@media(prefers-reduced-motion:reduce){body[data-bridge="on"][data-holo-entering="on"] #page :is(.bridge-sheet,.bridge-operations),body[data-bridge="on"][data-holo-entering="on"] dialog[open]{animation:none!important}}

/* A visible projection lives in the gap above the controls, never over their hit targets. */
body[data-bridge="on"][data-bridge-projection="on"]>.bridge-holo-projection{display:block!important;visibility:visible!important;z-index:95!important;pointer-events:none!important}
.pirate-world-marker{position:absolute;left:52%;top:57%;transform:translate(-50%,-50%);z-index:17;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:104px;min-height:76px;padding:3px 6px;border:0;background:none!important;color:#f6c39a;cursor:pointer;text-shadow:0 1px 4px #000}
.pirate-world-marker>img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 0 8px #ed795b66)}
.pirate-world-marker>strong{font-size:12px;padding:3px 7px;border:1px solid #e5b47e80;border-radius:7px;background:#0a1729ef}
.pirate-world-marker>small{font-size:10px;color:#d7e6ee;background:#071522dc;padding:2px 5px;border-radius:4px}
.pirate-resting>img{filter:saturate(.5)}
.pirate-briefing{padding:12px;border:1px solid #ad895a66;border-radius:10px;background:#1e2c3599;margin:8px 0 14px;display:grid;gap:9px}
.pirate-briefing>b{font-size:13px;color:#e4cb9a}.pirate-briefing>small{font-size:11px;color:#bfced7}
.pirate-preview{height:110px!important;width:110px!important;object-fit:contain!important}
@media(max-width:760px){.pirate-world-marker{left:52%;top:57%;min-width:96px}.pirate-world-marker>img{width:38px;height:38px}}
/* Pirate encounters use the same explicit attack/spying choice as PvP. */
.pirate-target-heading{display:flex;align-items:center;gap:14px;margin:6px 0 14px;min-width:0}
.pirate-target-heading>img{width:90px;height:90px;object-fit:contain}.pirate-target-heading h2{margin:0 0 5px!important;font-size:22px}.pirate-target-heading small{font-size:11px;color:#b6d0dc}
.pirate-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.pirate-mode-switch>button{min-height:46px;border:1px solid #76bac47a;border-radius:10px;background:#0a2839;color:#def5ff;font-weight:700}
.pirate-mode-switch>button[aria-pressed=true]{border-color:#e3c48a;background:#3a3629;color:#ffe5b4}
#pirate-attack-ships[hidden],#pirate-spy-ships[hidden]{display:none!important}
#pirate-attack-ships h3,#pirate-spy-ships h3{font-size:16px;margin:14px 0 10px}
#pirate-spy-ships{padding:12px;border:1px solid #649fb65c;border-radius:12px;margin-bottom:14px;display:grid;gap:10px}
#pirate-spy-ships>.flight-cutout{width:100px;height:80px;object-fit:contain}#pirate-spy-ships small{font-size:11px;color:#bed7df}
.bridge-operations:has(.pirate-mode-switch){overflow-x:hidden!important}
.bridge-operations:has(.pirate-mode-switch) .mission-layout{grid-template-columns:minmax(0,1fr)!important}
.bridge-operations:has(.pirate-mode-switch) #mission-panel{min-width:0!important;width:100%!important}
