/* Match the navy, brass and teal garage; keep the battlefield itself visible. */
.cmd{--map-bar-bottom:52px;--map-team:#e2a640;container-type:inline-size;color:#e8eced}
.cmd .cbar{gap:5px;top:8px;left:12px;right:12px;align-items:center}
.cmd .chip{background:#101e2bea;border-color:#45616b;color:#e8eced;font-size:12px;padding:4px 9px}
.cmd .cbar .chip b{font-size:14px}.cmd .hpbar{width:54px;height:6px}
.cmd .mapFleetStatus{min-height:44px;text-align:left;cursor:pointer;line-height:1.2}.cmd .mapFleetStatus span{display:block;font-size:11px;color:#b9d9dc}.cmd .mapFleetStatus span:empty{display:none}
.cmd .mapnav{position:absolute;left:12px;right:12px;top:var(--map-bar-bottom);display:flex;gap:5px;align-items:start;z-index:5;pointer-events:none}
.cmd .mapnav>*{pointer-events:auto}.cmd .mapnav .cb{font-size:12px;padding:5px 9px;white-space:nowrap}
.cmd .mapnav .mapReturn{border-color:#e2a640}.cmd .mapnav .mapReset{background:#244950}
.cmd button.cb{background:#122532f5;border-color:#45616b;color:#e8eced}
.cmd button.cb:disabled{opacity:.5;cursor:not-allowed}.cmd button.cb.drive{background:#e2a640;color:#111d28;border-color:#f8d28b;font-weight:700}
.cmd button:focus-visible,.cmd .tap:focus-visible,.cmd summary:focus-visible{outline:3px solid #fff4b3;outline-offset:3px}
.cmd .mapTools{margin-left:auto}.cmd .mapTools summary{min-height:44px;min-width:44px;padding:10px;background:#122532f5;border:1px solid #45616b;border-radius:10px;font-size:12px;cursor:pointer;list-style:none}
.cmd .mapTools summary:after{content:' ▾'}.cmd .mapTools[open] summary:after{content:' ▴'}
.cmd .mapTools .cside{top:50px;right:0;width:190px;max-height:var(--map-tool-height,240px);overflow-y:auto;overscroll-behavior:contain;padding:8px;border:1px solid #45616b;border-radius:12px;background:#0d1a27f5;box-shadow:0 8px 28px #0008}
.cmd .cside .cb{padding:4px;font-size:12px}.cmd .mapTools:not([open]) .cside{display:none}
.cmd .mapLegend{position:absolute;top:calc(var(--map-bar-bottom) + 48px);left:14px;right:14px;font-size:11px;color:#d0dcde;text-shadow:0 1px 3px #000;pointer-events:none}
.cmd .checkpointStatus{top:auto;bottom:78px;left:auto;right:12px;max-width:160px;font-size:11px;white-space:pre-line;pointer-events:none}
.cmd .cpanel{top:calc(var(--map-bar-bottom) + 52px);right:12px;max-height:calc(100% - var(--map-bar-bottom) - 140px);background:#101e2bf7;border-color:#45616b;z-index:6}
.cmd .csel{bottom:76px;left:12px;max-width:calc(100% - 196px);z-index:4;gap:5px;max-height:45%;overflow-y:auto;overscroll-behavior:contain}.cmd .csel .chip{border-radius:12px;line-height:1.35}.cmd .csel .row{gap:4px}.cmd .csel .cb{font-size:12px;padding:4px 8px}
.cmd .mapOrders summary{min-height:44px;padding:10px;border:1px solid #45616b;border-radius:10px;background:#122532f5;font-size:12px;cursor:pointer}.cmd .mapOrderButtons{display:flex;flex-wrap:wrap;gap:4px;padding-top:5px}.cmd .mapOrders:not([open]) .mapOrderButtons{display:none}
.cmd .tray{left:12px;right:12px;bottom:10px;background:#0d1a2799;border-radius:12px;scrollbar-width:thin;z-index:4}
.cmd .tray button{background:#132737ed;border-color:#42606c;min-height:56px}.cmd .tray button b{font-size:12px}.cmd .tray button span{font-size:11px}
.cmd .ctoast,.quad .cmd .ctoast{top:auto;bottom:78px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);max-height:3em;overflow:hidden;padding:4px 8px;font-size:12px;line-height:1.25;z-index:8;background:#152c39f7;pointer-events:none}
.cmd .umark{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:transparent!important;color:#f8fafb;pointer-events:auto;cursor:pointer;touch-action:none;z-index:2;outline:none}
.cmd .umark svg{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 2px 3px #000b)}
.cmd .umark[data-team="0"]{--marker:#efba55}.cmd .umark[data-team="1"]{--marker:#64dad0}
.cmd .umark .mapDisc{fill:#102331;stroke:var(--marker);stroke-width:1.5}.cmd .umark .mapSilhouette{fill:var(--marker);stroke:var(--marker);stroke-width:1;stroke-linejoin:round;fill-rule:evenodd}
.cmd .mapHealth path{fill:none;stroke:#3e4f58;stroke-width:2.5;stroke-dasharray:24 8}.cmd .mapHealth .filled{stroke:var(--marker)}
.cmd .mapHeading{fill:#fff2cf}.cmd .umark.flag{width:50px;height:50px;z-index:3}.cmd .umark.sel{outline:2px solid #fff;outline-offset:2px;z-index:4;background:#ffffff12!important}.cmd .umark.occupied .mapDisc{stroke-dasharray:3 2}
.cmd .mapAssignment{position:absolute;right:-3px;bottom:-2px;border:1px solid var(--marker);border-radius:5px;min-width:19px;padding:1px 3px;background:#101b27;color:#fff;font:700 10px system-ui;line-height:1.2;pointer-events:none}
.cmd .cmark{font-size:10px;opacity:.85}.cmd .cmark.site span{display:none}.cmd .cmark i{width:14px;height:14px;border-width:2px}.cmd .cmark.site i{width:7px;height:7px}
@container(max-width:600px){.cmd .cbar .chip{font-size:10px;padding:3px 6px}.cmd .cbar .chip b{font-size:12px}.cmd .mapnav{gap:3px;left:8px;right:8px}.cmd .mapnav .cb{padding:4px 7px;font-size:11px}.cmd .mapTools summary{font-size:11px;padding:10px 7px}.cmd .mapLegend{font-size:10px}.cmd .checkpointStatus{display:none}.cmd .csel{max-width:calc(100% - 24px);max-height:34%;bottom:70px}.cmd .csel .chip{font-size:11px}.cmd .csel .cb{font-size:11px}.cmd .tray{bottom:6px}.cmd .tray button{min-width:92px;min-height:52px}.cmd .cpanel{width:calc(100% - 24px);max-height:55%;font-size:12px}.cmd .umark.flag{width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){.cmd *{scroll-behavior:auto}}

/* Keep a 44px exit outside the scrolling content, including short split seats. */
.cmd .cpanel,.quad .cmd .cpanel{top:calc(var(--map-bar-bottom) + 52px);right:12px;z-index:6;display:flex;flex-direction:column;padding:0;overflow:hidden;min-height:64px;max-height:calc(100% - var(--map-bar-bottom) - 64px)}
.cmd .commandPanelHeader{flex:none;padding:8px;border-bottom:1px solid #45616b;background:#101e2b}
.cmd .commandPanelHeader .panelClose{min-height:44px;width:100%;font-weight:600}
.cmd .commandPanelBody{min-height:0;overflow:auto;overscroll-behavior:contain;padding:8px 14px 14px}
