/*
 * FlightOps Operations Console Theme
 *
 * Purpose:
 * - Layer a dark, map-first visual system over the existing FlightOps shell.
 * - Preserve all current IDs, bindings, and realtime behavior.
 *
 * Does not:
 * - Change backend routes or data flow.
 * - Rename JavaScript-driven elements.
 * - Replace panel logic or panel ownership.
 */

html {
  overflow-x: clip;
}

:root {
  --fo-font-sans: Inter, "Segoe UI", system-ui, -apple-system, sans-serif;
  --fo-bp-sm: 960px;
  --fo-bp-md: 1180px;
  --fo-bp-lg: 1440px;
  --fo-bp-xl: 1680px;
  --fo-bp-2xl: 1920px;
  --fo-font-scale-min: 0.85;
  --fo-font-scale-max: 1;
  --fo-topbar-height-default: 64px;
  --fo-topbar-height-stacked: 118px;
  --auth-topbar-height: var(--fo-topbar-height-default);

  --fo-bg-page: #111214;
  --fo-bg-map: #111214;
  --fo-bg-topbar: linear-gradient(180deg, #1e2024, #191b1f);
  --fo-bg-overlay: rgba(17, 18, 20, 0.74);
  --fo-bg-surface: #191b1f;
  --fo-bg-surface-2: #1e2024;
  --fo-bg-surface-3: #24262b;
  --fo-bg-card: #1e2024;
  --fo-bg-card-soft: #24262b;
  --fo-bg-card-hover: #24262b;
  --fo-bg-input: #15171a;
  --fo-bg-elevated: #28292e;

  --fo-text-primary: #e8e4df;
  --fo-text-secondary: #9e9890;
  --fo-text-muted: #6b6660;
  --fo-text-strong: #f5f2ee;

  --fo-border-subtle: rgba(180, 170, 155, 0.12);
  --fo-border-medium: rgba(180, 170, 155, 0.20);
  --fo-border-strong: rgba(210, 170, 90, 0.34);

  --fo-accent: #d4a84a;
  --fo-accent-hover: #e0b85e;
  --fo-accent-soft: rgba(212, 168, 74, 0.10);
  --fo-success: #34b866;
  --fo-warning: #e8a832;
  --fo-danger: #e05454;
  --fo-clear: var(--fo-success);
  --fo-warn: var(--fo-warning);
  --fo-critical: var(--fo-danger);
  --fo-stale: #5f625f;

  --strip-font: "JetBrains Mono", "SF Mono", Consolas, "Roboto Mono", monospace;
  --strip-cell-label: 8px;
  --strip-cell-value: 12px;
  --strip-radius: 4px;
  --strip-bg: var(--fo-bg-card);
  --strip-border: var(--fo-border-medium);
  --strip-cell-divider: var(--fo-border-subtle);
  --src-adsb: #d4a84a;
  --src-radar: #58c4d4;
  --src-drone: #c47ed4;
  --src-beacon: #8fb8a0;
  --src-rid: #d4886a;
  --src-optical: #9ec48a;

  --alert-card-bg: rgba(22, 24, 28, 0.95);
  --alert-card-border: rgba(180, 170, 155, 0.32);
  --alert-card-rule: rgba(180, 170, 155, 0.18);
  --alert-card-shadow: 0 14px 38px rgba(0, 0, 0, 0.5);
  --alert-card-blur: 10px;
  --alert-card-width: 380px;
  --alert-card-advisory: #ffbf00;
  --alert-card-warning: #ffe100;
  --alert-card-critical: #ff2b2b;
  --alert-row-adv-tint: rgba(255, 191, 0, 0.11);
  --alert-row-warn-tint: rgba(255, 225, 0, 0.14);
  --alert-row-crit-tint: rgba(255, 43, 43, 0.18);
  --alert-badge-adv-bg: rgba(255, 191, 0, 0.18);
  --alert-badge-adv-border: rgba(255, 191, 0, 0.68);
  --alert-badge-warn-bg: rgba(255, 225, 0, 0.2);
  --alert-badge-warn-border: rgba(255, 225, 0, 0.78);
  --alert-badge-crit-bg: rgba(255, 43, 43, 0.22);
  --alert-badge-crit-border: rgba(255, 43, 43, 0.84);

  --fo-shadow-1: 0 12px 30px rgba(0, 0, 0, 0.22);
  --fo-shadow-2: 0 22px 48px rgba(0, 0, 0, 0.34);

  --fo-radius-xs: 6px;
  --fo-radius-sm: 8px;
  --fo-radius-md: 12px;
  --fo-radius-lg: 16px;
  --fo-radius-pill: 999px;

  --fo-space-1: 4px;
  --fo-space-2: 8px;
  --fo-space-3: 12px;
  --fo-space-4: 16px;
  --fo-space-5: 20px;
  --fo-space-6: 24px;
  --fo-space-7: 32px;

  --fo-topbar-height: 64px;
  --fo-panel-width: 360px;
  --fo-panel-gap: 14px;
}

html,
body {
  background: var(--fo-bg-page);
  color: var(--fo-text-primary);
  font-family: var(--fo-font-sans);
  min-height: 100%;
}

body.flightops-ops-console {
  --mission-telemetry-shell-height: 0px;
  min-height: 100svh;
  background: linear-gradient(180deg, #111214 0%, #0f1012 100%);
  color: var(--fo-text-primary);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.flightops-ops-console #map {
  background:
    linear-gradient(180deg, rgba(7, 15, 26, 0.84), rgba(5, 10, 18, 0.84)),
    var(--fo-bg-map);
}

body.flightops-ops-console a {
  color: var(--fo-accent-hover);
}

body.flightops-ops-console button,
body.flightops-ops-console input,
body.flightops-ops-console select,
body.flightops-ops-console textarea {
  font-family: inherit;
}

body.flightops-ops-console button {
  border-radius: var(--fo-radius-pill);
  border: 1px solid var(--fo-border-subtle);
  background: linear-gradient(180deg, rgba(212, 168, 74, 0.18), rgba(184, 145, 46, 0.28));
  color: var(--fo-text-primary);
  box-shadow: none;
  transition:
    border-color 140ms ease,
    background-color 140ms ease,
    transform 140ms ease,
    opacity 140ms ease;
}

body.flightops-ops-console button:hover {
  background: linear-gradient(180deg, rgba(212, 168, 74, 0.28), rgba(184, 145, 46, 0.38));
  border-color: var(--fo-border-strong);
  transform: none;
}

body.flightops-ops-console button.secondary,
body.flightops-ops-console button.ghost,
body.flightops-ops-console .authUtilityBtn,
body.flightops-ops-console .topNavBtn,
body.flightops-ops-console .sectionToggle,
body.flightops-ops-console .sensorBlockToggle {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(180, 170, 155, 0.14);
  color: var(--fo-text-secondary);
}

body.flightops-ops-console button.secondary:hover,
body.flightops-ops-console button.ghost:hover,
body.flightops-ops-console .authUtilityBtn:hover,
body.flightops-ops-console .topNavBtn:hover,
body.flightops-ops-console .sectionToggle:hover,
body.flightops-ops-console .sensorBlockToggle:hover {
  color: var(--fo-text-primary);
  background: rgba(255, 255, 255, 0.08);
}

body.flightops-ops-console button:focus-visible,
body.flightops-ops-console input:focus-visible,
body.flightops-ops-console select:focus-visible,
body.flightops-ops-console textarea:focus-visible {
  outline: none;
  border-color: var(--fo-accent);
  box-shadow: 0 0 0 2px rgba(212, 168, 74, 0.25);
}

body.flightops-ops-console input[type="text"],
body.flightops-ops-console input[type="password"],
body.flightops-ops-console input[type="email"],
body.flightops-ops-console input[type="number"],
body.flightops-ops-console input[type="file"],
body.flightops-ops-console select,
body.flightops-ops-console textarea {
  background: var(--fo-bg-input);
  border: 1px solid rgba(180, 170, 155, 0.18);
  border-radius: var(--fo-radius-sm);
  color: var(--fo-text-primary);
}

body.flightops-ops-console input[type="range"] {
  accent-color: var(--fo-accent);
}

body.flightops-ops-console .phase1Check {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(180, 170, 155, 0.18);
  border-radius: var(--fo-radius-sm);
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .phase1Check input {
  accent-color: var(--fo-accent);
}

body.flightops-ops-console .label {
  color: var(--fo-text-muted);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

body.flightops-ops-console .value,
body.flightops-ops-console .name {
  color: var(--fo-text-primary);
}

body.flightops-ops-console .sub,
body.flightops-ops-console .error,
body.flightops-ops-console .phase1SaveStatus,
body.flightops-ops-console .authGateHint,
body.flightops-ops-console .authGatePasswordStatus {
  color: var(--fo-text-muted);
}

body.flightops-ops-console .error,
body.flightops-ops-console .phase1SaveStatus.error,
body.flightops-ops-console .authGatePasswordStatus.error {
  color: #ff8d8d;
}

body.flightops-ops-console .badge {
  min-width: 30px;
  border-radius: var(--fo-radius-pill);
  background: rgba(58, 130, 247, 0.14);
  color: #a8ccff;
}

body.flightops-ops-console .pill {
  border-radius: var(--fo-radius-pill);
  border: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 10px;
  letter-spacing: 0.08em;
}

body.flightops-ops-console .pill.ok,
body.flightops-ops-console .pill.empty {
  background: rgba(34, 197, 94, 0.14);
  color: #86efac;
}

body.flightops-ops-console .pill.stale {
  background: rgba(245, 158, 11, 0.14);
  color: #fcd34d;
}

body.flightops-ops-console .pill.disabled,
body.flightops-ops-console .pill.offline {
  background: rgba(239, 68, 68, 0.14);
  color: #fca5a5;
}

body.flightops-ops-console .pill.idle {
  background: rgba(148, 163, 184, 0.14);
  color: #cbd5e1;
}

body.flightops-ops-console #authTopbar {
  height: var(--fo-topbar-height);
  padding: 0 18px;
  gap: 18px;
  background:
    linear-gradient(180deg, rgba(16, 29, 48, 0.98), rgba(9, 18, 31, 0.98));
  border-bottom: 1px solid rgba(121, 149, 187, 0.18);
  box-shadow: var(--fo-shadow-1);
  backdrop-filter: none;
}

body.flightops-ops-console .authTopbarTitle {
  gap: 14px;
}

body.flightops-ops-console .topoLegendControl {
  margin-top: 70px;
  margin-right: 10px;
  border-radius: 14px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(12, 18, 28, 0.22);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22);
  color: #0f1723;
}

body.flightops-ops-console .topoLegendShell {
  min-width: 92px;
}

body.flightops-ops-console .topoLegendTitle {
  padding: 8px 10px 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(15, 23, 35, 0.72);
  background: rgba(255, 255, 255, 0.96);
}

body.flightops-ops-console .topoLegendScale {
  display: flex;
  flex-direction: column;
}

body.flightops-ops-console .topoLegendStep {
  min-height: 28px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 10px;
  font-weight: 800;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.22);
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}

body.flightops-ops-console .topoLegendMeta {
  padding: 7px 10px 8px;
  font-size: 10px;
  font-weight: 600;
  color: rgba(15, 23, 35, 0.68);
  background: rgba(255, 255, 255, 0.96);
}

body.flightops-ops-console .authTopbarMenuBtn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
}

body.flightops-ops-console .authTopbarMenuBtn span {
  width: 18px;
  height: 2px;
}

body.flightops-ops-console .authTopbarTitleText {
  position: relative;
  gap: 3px;
}

body.flightops-ops-console .authTopbarTitleText strong {
  color: var(--fo-text-strong);
  font-size: 15px;
  letter-spacing: 0.01em;
}

body.flightops-ops-console .authTopbarSubtitle {
  color: var(--fo-text-muted);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body.flightops-ops-console .releaseVersionBadge {
  color: #c8d9ee;
  text-shadow: 0 1px 2px rgba(3, 10, 18, 0.72);
}

body.flightops-ops-console #topNav {
  justify-content: center;
  gap: 10px;
  flex-wrap: nowrap;
}

body.flightops-ops-console .topNavBtn {
  min-height: 38px;
  padding: 0 15px;
  border-radius: var(--fo-radius-pill);
  background: rgba(255, 255, 255, 0.04);
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .topNavBtn.active {
  background: linear-gradient(180deg, var(--fo-accent-hover), var(--fo-accent));
  border-color: rgba(130, 176, 255, 0.58);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

/* Keep active/open command states visually obvious even under the broader theme button rules. */
body.flightops-ops-console button.topNavBtn.active,
body.flightops-ops-console button.authUtilityBtn.active,
body.flightops-ops-console button.authAccountMenuBtn.active,
body.flightops-ops-console .authAccountMenuBtn.open {
  background: linear-gradient(180deg, var(--fo-accent-hover), var(--fo-accent));
  border-color: rgba(130, 176, 255, 0.58);
  color: #fff;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 0 0 1px rgba(58, 130, 247, 0.18);
}

body.flightops-ops-console .authTopbarRight,
body.flightops-ops-console .authTopSignedIn {
  gap: 10px;
}

body.flightops-ops-console #authTopSignedIn {
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: 0;
  overflow: visible;
}

body.flightops-ops-console .authUtilityBtn {
  min-width: 40px;
  min-height: 40px;
  padding: 0 12px;
  font-size: 13px;
}

body.flightops-ops-console .authQuickLogoutBtn {
  min-height: 40px;
  padding: 0 14px;
  font-size: 12px;
}

body.flightops-ops-console .authAccountMenuBtn {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  column-gap: 10px;
  row-gap: 1px;
  align-items: center;
  min-width: 122px;
  min-height: 40px;
  padding: 7px 10px 7px 11px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.04);
}

body.flightops-ops-console .authAccountMenuBtn::after {
  content: "";
  grid-column: 2;
  grid-row: 1 / span 2;
  justify-self: end;
  align-self: center;
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  margin-left: 10px;
  opacity: 0.78;
}

body.flightops-ops-console .authAccountName {
  grid-column: 1;
  grid-row: 1;
  max-width: 84px;
  font-size: 11px;
  line-height: 1.05;
  color: var(--fo-text-primary);
}

body.flightops-ops-console .authAccountRole {
  grid-column: 1;
  grid-row: 2;
  font-size: 9px;
  line-height: 1;
  letter-spacing: 0.1em;
  color: var(--fo-text-muted);
}

body.flightops-ops-console .authAccountMenu {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  min-width: 226px;
  padding: 8px;
  background: var(--fo-bg-surface-2);
  border: 1px solid rgba(121, 149, 187, 0.18);
  border-radius: var(--fo-radius-md);
  box-shadow: var(--fo-shadow-2);
  z-index: 2305;
  gap: 6px;
}

body.flightops-ops-console .authAccountMenuItem {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  width: 100%;
  min-height: 38px;
  padding: 0 11px;
  border-radius: var(--fo-radius-sm);
  background: transparent;
  border: 1px solid transparent;
  color: var(--fo-text-primary);
  font-size: 12px;
  text-align: left;
}

body.flightops-ops-console .authAccountMenuItem:hover,
body.flightops-ops-console .authAccountMenuItem:focus-visible {
  background: rgba(255, 255, 255, 0.07);
  border-color: rgba(121, 149, 187, 0.18);
  color: var(--fo-text-strong);
}

body.flightops-ops-console .authAccountMenuItem.active {
  background: rgba(58, 130, 247, 0.16);
  border-color: rgba(96, 165, 250, 0.2);
  box-shadow: inset 0 0 0 1px rgba(96, 165, 250, 0.16);
}

body.flightops-ops-console .authAccountMenuItem::before {
  content: none !important;
  display: none !important;
}

body.flightops-ops-console #authGate {
  top: 0;
  z-index: 2300;
  background: #111214;
}

html.flightopsAuthBooting,
html.flightopsAuthBooting body {
  background: #050607 !important;
}

html.flightopsAuthBooting body {
  visibility: hidden !important;
  overflow: hidden !important;
}

html.flightopsAuthBooting::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 2147483646;
  background: #050607;
  pointer-events: auto;
}

html.flightopsAuthBooting::after {
  content: "Loading FlightOps";
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 2147483647;
  transform: translate(-50%, -50%);
  color: #f5f2ee;
  font: 800 18px/1.2 "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  letter-spacing: 0.04em;
  pointer-events: none;
}

body.flightops-ops-console.authBootPending #authGate .authGateCard > * {
  visibility: hidden !important;
}

body.flightops-ops-console.authBootPending #authGate .authGateCard::before {
  content: "Loading FlightOps...";
  visibility: visible;
  display: block;
  color: #f5f2ee;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 0.04em;
}

body.flightops-ops-console.authBootPending #authGate .authGateCard::after {
  content: "Checking session";
  visibility: visible;
  display: block;
  margin-top: 6px;
  color: #9e9890;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console #authGate::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 28% 22%, rgba(212, 168, 74, 0.08), transparent 34%),
    radial-gradient(circle at 78% 76%, rgba(52, 184, 102, 0.05), transparent 30%),
    linear-gradient(180deg, #111214 0%, #0e0f11 100%);
  pointer-events: none;
}

body.flightops-ops-console .authGateCard {
  position: relative;
  background: rgba(25, 27, 31, 0.92);
  border: 1px solid rgba(180, 170, 155, 0.14);
  border-radius: 12px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(180, 170, 155, 0.06) inset;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

body.flightops-ops-console .authGateCard h2 {
  color: #f5f2ee;
}

body.flightops-ops-console .authGateCard p {
  color: #9e9890;
}

body.flightops-ops-console .authGateCard .phase1Field {
  gap: 6px;
}

body.flightops-ops-console .authGateCard .phase1Field span {
  color: var(--fo-text-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.06em;
}

body.flightops-ops-console .authGateCard input[type="text"],
body.flightops-ops-console .authGateCard input[type="password"] {
  min-height: 46px;
  border: 1px solid rgba(180, 170, 155, 0.14);
  border-radius: 10px;
  background: rgba(21, 23, 26, 0.78);
  color: #f5f2ee;
}

body.flightops-ops-console .authGateCard input::placeholder {
  color: #6b6660;
}

body.flightops-ops-console #authGateSignInActions,
body.flightops-ops-console #authMagicLinkActions,
body.flightops-ops-console #authGatePasswordActions {
  grid-template-columns: 1fr auto;
  gap: 10px;
}

body.flightops-ops-console #authGateLoginBtn,
body.flightops-ops-console #authMagicLinkBtn,
body.flightops-ops-console #authGatePasswordBtn {
  border-color: rgba(210, 170, 90, 0.34);
  background: linear-gradient(180deg, var(--fo-accent), #b8912e);
  color: #1a1408;
  box-shadow: 0 12px 28px rgba(212, 168, 74, 0.22);
}

body.flightops-ops-console #authGateRecoveryBtn {
  border-color: rgba(180, 170, 155, 0.14);
  background: rgba(255, 255, 255, 0.05);
  color: var(--fo-text-primary);
}

body.flightops-ops-console.authLocked #authTopbar,
body.flightops-ops-console.authLocked #sidebar,
body.flightops-ops-console.authLocked #map {
  opacity: 0;
  pointer-events: none;
  filter: none;
}

body.flightops-ops-console.authLocked .maplibregl-control-container,
body.flightops-ops-console.authLocked .flightopsMapDomControls,
body.flightops-ops-console.authLocked #monitoringDock,
body.flightops-ops-console.authLocked #mapUtilityDrawer,
body.flightops-ops-console.authLocked #mapUtilityDrawerToggle,
body.flightops-ops-console.authLocked #monitoringDockToggle,
body.flightops-ops-console.authLocked #mapChatLauncher,
body.flightops-ops-console.authLocked #commsCompact,
body.flightops-ops-console.authLocked #alertDetachedHost,
body.flightops-ops-console.authLocked #flightopsMapEngineV2InfoCard,
body.flightops-ops-console.authLocked #mapCoordinateMenu,
body.flightops-ops-console.authLocked .panelSection {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.flightops-ops-console #sidebar {
  background: transparent;
}

body.flightops-ops-console .shell,
body.flightops-ops-console .body {
  background: transparent;
  pointer-events: none;
}

body.flightops-ops-console .panelSection {
  top: 88px;
  left: 16px;
  width: min(360px, calc(100vw - 32px));
  max-height: calc(100vh - 108px);
  overflow: auto;
  border-radius: var(--fo-radius-lg);
}

body.flightops-ops-console .card {
  background: linear-gradient(180deg, rgba(18, 35, 56, 0.95), rgba(11, 22, 37, 0.95));
  border: 1px solid rgba(121, 149, 187, 0.16);
  border-radius: var(--fo-radius-lg);
  box-shadow: var(--fo-shadow-1);
}

body.flightops-ops-console .head {
  padding: 14px 16px 12px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent),
    rgba(255, 255, 255, 0.02);
  border-top: 0;
  border-bottom: 1px solid rgba(121, 149, 187, 0.12);
}

body.flightops-ops-console .head h2 {
  color: var(--fo-text-strong);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.01em;
}

body.flightops-ops-console .headActions {
  gap: 8px;
}

body.flightops-ops-console .sectionBody {
  display: grid;
  gap: 12px;
  padding: 14px 16px 16px;
}

body.flightops-ops-console .grid,
body.flightops-ops-console .controls,
body.flightops-ops-console .stats,
body.flightops-ops-console .details,
body.flightops-ops-console .list {
  gap: 10px;
}

body.flightops-ops-console .stats,
body.flightops-ops-console .details {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.flightops-ops-console .row,
body.flightops-ops-console .item,
body.flightops-ops-console .sensorBlock,
body.flightops-ops-console .alertClosestCard,
body.flightops-ops-console .alertCountCard,
body.flightops-ops-console .monitorCard,
body.flightops-ops-console .monitorMini,
body.flightops-ops-console .phase1Check,
body.flightops-ops-console #accountSettingsCard,
body.flightops-ops-console #smtpSettingsCard,
body.flightops-ops-console #mpu5SettingsCard,
body.flightops-ops-console #downloadsAdminCard,
body.flightops-ops-console #videoPlayerCard {
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(121, 149, 187, 0.14);
  box-shadow: none;
}

body.flightops-ops-console .row {
  padding: 10px 12px;
  border-radius: var(--fo-radius-sm);
}

body.flightops-ops-console .value {
  margin-top: 6px;
  font-size: 14px;
  font-weight: 600;
  color: var(--fo-text-primary);
}

body.flightops-ops-console .value.muted,
body.flightops-ops-console .empty {
  color: var(--fo-text-muted);
}

body.flightops-ops-console .empty {
  padding: 10px 0 2px;
}

body.flightops-ops-console .sensorBlock {
  padding: 12px;
  border-radius: var(--fo-radius-md);
}

body.flightops-ops-console .sensorBlockHead {
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(121, 149, 187, 0.12);
}

body.flightops-ops-console .sensorBlockBody {
  display: grid;
  gap: 10px;
  padding-top: 10px;
}

body.flightops-ops-console .sensorBlockTitleText {
  color: var(--fo-text-primary);
  font-size: 12px;
  letter-spacing: 0.08em;
}

body.flightops-ops-console .phase1Toolbar {
  padding: 4px 0 0;
}

body.flightops-ops-console .phase1Config {
  gap: 10px;
}

body.flightops-ops-console .trail,
body.flightops-ops-console .upload {
  gap: 10px;
}

body.flightops-ops-console .controls.settingsControls {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.flightops-ops-console .mergeControl,
body.flightops-ops-console #accountSettingsCard,
body.flightops-ops-console #smtpSettingsCard,
body.flightops-ops-console #mpu5SettingsCard,
body.flightops-ops-console #videoIngestSettingsCard,
body.flightops-ops-console #viewAccessCard {
  padding: 12px;
  border-radius: var(--fo-radius-md);
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(121, 149, 187, 0.14);
}

body.flightops-ops-console .alertCardOptionB,
body.flightops-ops-console .alertHeroPanel,
body.flightops-ops-console .alertClosestCard,
body.flightops-ops-console .alertCountCard {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(121, 149, 187, 0.14);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .alertHeroPanel {
  border-bottom: 1px solid rgba(121, 149, 187, 0.12);
}

body.flightops-ops-console .alertHeroLabel,
body.flightops-ops-console .alertClosestLabel,
body.flightops-ops-console .alertWindowMeta,
body.flightops-ops-console .alertTrafficMeta {
  color: var(--fo-text-muted);
}

body.flightops-ops-console .alertClosestName,
body.flightops-ops-console .alertCountValue,
body.flightops-ops-console .alertListTitle {
  color: var(--fo-text-strong);
}

body.flightops-ops-console .alertTrafficChip.advisory {
  background: rgba(245, 158, 11, 0.16);
  color: #fcd34d;
}

body.flightops-ops-console .alertTrafficChip.warning {
  background: rgba(251, 146, 60, 0.16);
  color: #fdba74;
}

body.flightops-ops-console .alertTrafficChip.critical {
  background: rgba(239, 68, 68, 0.16);
  color: #fca5a5;
}

body.flightops-ops-console .alertTrafficChip.clear {
  background: rgba(34, 197, 94, 0.16);
  color: #86efac;
}

body.flightops-ops-console .panelSection[data-panel="video"] {
  min-width: 420px;
  min-height: 180px;
}

body.flightops-ops-console .panelSection[data-panel="video"] #videoPlayerCard {
  border-radius: var(--fo-radius-md);
  overflow: hidden;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineShell {
  background: rgba(3, 8, 15, 0.82);
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineBar {
  padding: 12px 14px;
  background: rgba(16, 29, 48, 0.96);
  border-bottom: 1px solid rgba(121, 149, 187, 0.14);
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineLabel {
  color: var(--fo-text-muted);
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineSource {
  color: var(--fo-text-strong);
  font-size: 15px;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoPlayerHint {
  background: rgba(239, 68, 68, 0.1);
  border-bottom: 1px solid rgba(239, 68, 68, 0.16);
  color: #fca5a5;
}

body.flightops-ops-console .panelSection[data-panel="video"] #videoInlinePlayer {
  background: #000;
}

body.flightops-ops-console .videoInlineSelectWrap {
  color: var(--fo-text-secondary);
}

body.flightops-ops-console #videoInlineSelect {
  background: var(--fo-bg-input);
  color: var(--fo-text-primary);
  border: 1px solid rgba(121, 149, 187, 0.18);
  border-radius: var(--fo-radius-pill);
  min-height: 38px;
  padding: 0 12px;
}

body.flightops-ops-console #monitoringDock {
  top: calc(var(--auth-topbar-height, 64px) + 24px);
  transform: translateX(calc(100% - 38px));
  z-index: 2142 !important;
}

/* The JS toggles .open; the theme must preserve that state with matching specificity. */
body.flightops-ops-console #monitoringDock.open {
  transform: translateX(0);
}

body.flightops-ops-console #monitoringDockToggle {
  width: 38px;
  min-width: 38px;
  height: 42px;
  border-radius: var(--fo-radius-sm) 0 0 var(--fo-radius-sm);
  border: 1px solid rgba(121, 149, 187, 0.18);
  border-right: 0;
  background: rgba(10, 20, 33, 0.96);
  color: var(--fo-text-primary);
  box-shadow: var(--fo-shadow-1);
}

body.flightops-ops-console #monitoringDockRail {
  width: 300px;
  gap: 10px;
  padding-left: 10px;
}

body.flightops-ops-console #monitoringDock .monitorCard {
  gap: 8px;
  padding: 12px 14px;
  border-radius: var(--fo-radius-md);
  background: linear-gradient(180deg, rgba(18, 35, 56, 0.98), rgba(10, 20, 33, 0.98));
  border: 1px solid rgba(121, 149, 187, 0.18);
  box-shadow: var(--fo-shadow-1);
}

body.flightops-ops-console #monitoringDock .monitorTitle,
body.flightops-ops-console .monitorTitle {
  color: var(--fo-text-strong);
}

body.flightops-ops-console #monitoringDock .monitorStatus,
body.flightops-ops-console .monitorStatus,
body.flightops-ops-console .monitorMeta .sub,
body.flightops-ops-console .monitorMiniMeta,
body.flightops-ops-console .monitorMiniLabel {
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .monitorMini,
body.flightops-ops-console .monitorSubgrid .monitorMini {
  border-radius: var(--fo-radius-sm);
}

body.flightops-ops-console .monitorLamp.ok,
body.flightops-ops-console .monitorLamp.up,
body.flightops-ops-console .monitorMiniLamp.up,
body.flightops-ops-console .monitorFortemPanelLamp.up {
  background: var(--fo-success);
}

body.flightops-ops-console .monitorLamp.stale,
body.flightops-ops-console .monitorMiniLamp.stale,
body.flightops-ops-console .monitorFortemPanelLamp.stale {
  background: var(--fo-warning);
}

body.flightops-ops-console .monitorLamp.down,
body.flightops-ops-console .monitorMiniLamp.down,
body.flightops-ops-console .monitorFortemPanelLamp.down {
  background: var(--fo-danger);
}

body.flightops-ops-console #mapUtilityDrawer {
  top: calc(var(--auth-topbar-height, 64px) + 74px);
  transform: translateX(calc(100% - 40px));
  z-index: 2140 !important;
}

/* The drawer still uses the legacy .open state, so keep the theme in sync with that contract. */
body.flightops-ops-console #mapUtilityDrawer.open {
  transform: translateX(0);
}

body.flightops-ops-console #mapUtilityDrawerToggle {
  width: 40px;
  min-width: 40px;
  height: 42px;
  border-radius: var(--fo-radius-sm) 0 0 var(--fo-radius-sm);
  border: 1px solid rgba(121, 149, 187, 0.18);
  border-right: 0;
  background: rgba(10, 20, 33, 0.96);
  color: var(--fo-text-primary);
  box-shadow: var(--fo-shadow-1);
}

body.flightops-ops-console #mapUtilityDrawerPanel,
body.flightops-ops-console .mapUtilityDrawerPanel {
  width: 172px;
  padding: 12px;
  background: linear-gradient(180deg, rgba(18, 35, 56, 0.98), rgba(10, 20, 33, 0.98));
  border: 1px solid rgba(121, 149, 187, 0.18);
  box-shadow: var(--fo-shadow-1);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .mapUtilityDrawerHeader {
  padding: 10px 8px;
  border-radius: var(--fo-radius-sm);
  border: 1px solid rgba(121, 149, 187, 0.14);
  background: rgba(255, 255, 255, 0.03);
}

body.flightops-ops-console .mapUtilityDrawerTitle {
  color: var(--fo-text-strong);
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .mapUtilityDrawerSection {
  gap: 8px;
}

body.flightops-ops-console #mapUtilityLayersButtons,
body.flightops-ops-console #mapUtilityOverlayControls,
body.flightops-ops-console #mapUtilityAttachmentMount,
body.flightops-ops-console #mapUtilityReloadMount {
  gap: 8px;
}

body.flightops-ops-console #mapUtilityDrawer .item,
body.flightops-ops-console #mapUtilityDrawer .field,
body.flightops-ops-console #mapUtilityDrawer .upload {
  border-radius: var(--fo-radius-sm);
}

body.flightops-ops-console .flightopsMapDomZoomControl .flightopsMapDomZoomBtn,
body.flightops-ops-console .basemapBtn,
body.flightops-ops-console .clearPinsBtn {
  background: rgba(10, 20, 33, 0.96);
  border: 1px solid rgba(121, 149, 187, 0.18);
  color: var(--fo-text-primary);
  box-shadow: var(--fo-shadow-1);
}

/*
 * Map utility controls need stable hit targets. Avoid hover motion here and
 * explicitly keep pointer events enabled so the first interaction acts on the
 * control rather than just establishing focus.
 */
body.flightops-ops-console .measureControl,
body.flightops-ops-console .measureControl *,
body.flightops-ops-console .basemapControl,
body.flightops-ops-console .basemapControl *,
body.flightops-ops-console .clearPinsControl,
body.flightops-ops-console .clearPinsControl * {
  pointer-events: auto;
}

body.flightops-ops-console .measureControl,
body.flightops-ops-console .basemapBtn,
body.flightops-ops-console .clearPinsBtn {
  background: rgba(10, 20, 33, 0.96);
  border: 1px solid rgba(121, 149, 187, 0.18);
  color: var(--fo-text-primary);
  box-shadow: var(--fo-shadow-1);
}

body.flightops-ops-console .measureControl.compact {
  position: relative !important;
  z-index: 2600 !important;
  width: 46px !important;
  height: 34px !important;
  min-width: 46px !important;
  min-height: 34px !important;
  max-width: 46px !important;
  max-height: 34px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: stretch !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  isolation: isolate !important;
}

body.flightops-ops-console .measureControl.compact::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  border-radius: var(--fo-radius-sm) !important;
  pointer-events: none !important;
}

body.flightops-ops-console .measureControl.compact .measureCompactBtn {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  place-items: center !important;
  pointer-events: auto !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}

body.flightops-ops-console .measureControl.compact .measureCompactBtn svg {
  pointer-events: none !important;
}

body.flightops-ops-console #topbarNotificationsBtn {
  position: relative;
  display: grid;
  place-items: center;
  min-width: 34px;
  width: 34px;
  height: 34px;
  padding: 0 !important;
  pointer-events: auto;
}

body.flightops-ops-console #topbarNotificationsBtn * {
  pointer-events: none !important;
}

body.flightops-ops-console .measureControl button:hover,
body.flightops-ops-console .basemapBtn:hover,
body.flightops-ops-console .clearPinsBtn:hover,
body.flightops-ops-console .flightopsMapDomZoomControl .flightopsMapDomZoomBtn:hover {
  transform: none;
}

body.flightops-ops-console .mapCoordinateToast {
  position: fixed;
  left: 50%;
  bottom: 26px;
  z-index: 2195;
  transform: translateX(-50%);
  min-width: 220px;
  max-width: min(88vw, 420px);
  padding: 10px 14px;
  border-radius: 6px;
  background: rgba(10, 20, 33, 0.98);
  border: 1px solid rgba(121, 149, 187, 0.22);
  box-shadow: var(--fo-shadow-1);
  color: var(--fo-text-primary);
  pointer-events: none;
  backdrop-filter: blur(10px);
}

body.flightops-ops-console .mapCoordinateToast[data-state="error"] {
  border-color: rgba(239, 68, 68, 0.34);
  color: #fecaca;
}

body.flightops-ops-console .mapCoordinateToastText {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.35;
  text-align: center;
}

body.flightops-ops-console .mapContextMenu {
  position: fixed;
  z-index: 2196;
  min-width: 248px;
  max-width: min(86vw, 292px);
  padding: 10px;
  border-radius: 6px;
  background: rgba(10, 20, 33, 0.98);
  border: 1px solid rgba(121, 149, 187, 0.22);
  box-shadow: var(--fo-shadow-1);
  color: var(--fo-text-primary);
  backdrop-filter: blur(10px);
  display: grid;
  gap: 8px;
}

body.flightops-ops-console .mapContextMenu[hidden],
body.flightops-ops-console .mapContextMenuFlyout[hidden] {
  display: none !important;
}

body.flightops-ops-console .mapContextMenuHead {
  display: grid;
  gap: 4px;
  padding: 2px 2px 8px;
  border-bottom: 1px solid rgba(121, 149, 187, 0.12);
}

body.flightops-ops-console .mapContextMenuTitleRow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.flightops-ops-console .mapContextMenuTitle {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--fo-text-muted);
}

body.flightops-ops-console .mapContextMenuClose {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  border: 1px solid rgba(121, 149, 187, 0.16);
  background: rgba(12, 25, 38, 0.92);
  color: var(--fo-text-muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
}

body.flightops-ops-console .mapContextMenuClose:hover,
body.flightops-ops-console .mapContextMenuClose:focus-visible {
  border-color: rgba(92, 161, 255, 0.44);
  background: rgba(18, 38, 60, 0.98);
  color: var(--fo-text-primary);
  outline: none;
}

body.flightops-ops-console .mapContextMenuCoords {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--fo-text-primary);
  word-break: break-word;
}

body.flightops-ops-console .mapContextMenuChips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding-top: 2px;
}

body.flightops-ops-console .mapContextMenuChip {
  padding: 5px 9px;
  border-radius: 999px;
  border: 1px solid rgba(121, 149, 187, 0.18);
  background: rgba(13, 28, 43, 0.92);
  color: #dbeeff;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
}

body.flightops-ops-console .mapContextMenuActions {
  display: grid;
  gap: 6px;
}

body.flightops-ops-console .mapContextMenuBtn {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 38px;
  padding: 9px 10px;
  border-radius: 6px;
  border: 1px solid rgba(121, 149, 187, 0.18);
  background: rgba(16, 32, 50, 0.94);
  color: var(--fo-text-primary);
  font-size: 12px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

body.flightops-ops-console .mapContextMenuBtn:hover,
body.flightops-ops-console .mapContextMenuBtn:focus-visible {
  border-color: rgba(92, 161, 255, 0.44);
  background: rgba(18, 38, 60, 0.98);
  outline: none;
}

body.flightops-ops-console .mapContextMenuBtn.primary {
  border-color: rgba(92, 161, 255, 0.32);
  background: rgba(18, 38, 60, 0.98);
}

body.flightops-ops-console .mapContextMenuBtnContent {
  min-width: 0;
}

body.flightops-ops-console .mapContextMenuBtnContent strong {
  display: block;
  font-size: 12px;
  line-height: 1.1;
}

body.flightops-ops-console .mapContextMenuBtnContent small {
  display: block;
  font-size: 11px;
  line-height: 1.25;
  color: var(--fo-text-muted);
  margin-top: 3px;
}

body.flightops-ops-console .mapContextMenuIcon {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 6px;
  border: 1px solid rgba(121, 149, 187, 0.14);
  background: rgba(7, 18, 30, 0.8);
  color: #d8ebff;
  font-size: 11px;
  font-weight: 800;
}

body.flightops-ops-console .mapContextMenuChevron {
  min-width: 10px;
  color: var(--fo-text-muted);
  font-size: 11px;
  font-weight: 800;
  text-align: right;
}

body.flightops-ops-console .mapContextMenuFooter {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  padding: 2px 4px 0;
  font-size: 11px;
  line-height: 1.35;
  color: var(--fo-text-muted);
}

body.flightops-ops-console .mapContextMenuFlyout {
  position: absolute;
  top: 10px;
  left: calc(100% + 10px);
  min-width: 220px;
  max-width: 248px;
  padding: 8px;
  border-radius: 6px;
  border: 1px solid rgba(121, 149, 187, 0.22);
  background: rgba(10, 20, 33, 0.98);
  box-shadow: var(--fo-shadow-1);
  backdrop-filter: blur(10px);
  display: grid;
  gap: 6px;
}

body.flightops-ops-console .mapContextMenu.flyoutLeft .mapContextMenuFlyout {
  left: auto;
  right: calc(100% + 10px);
}

body.flightops-ops-console .mapContextMenuFlyoutTitle {
  padding: 2px 4px 6px;
  border-bottom: 1px solid rgba(121, 149, 187, 0.12);
  color: var(--fo-text-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

body.flightops-ops-console .mapContextMenuFlyoutActions {
  display: grid;
  gap: 6px;
}

body.flightops-ops-console .mapContextMenuHint {
  margin-top: 10px;
  font-size: 11px;
  line-height: 1.35;
  color: var(--fo-text-muted);
}

body.flightops-ops-console .basemapControl {
  margin-bottom: 8px !important;
}

body.flightops-ops-console .basemapControlShell {
  position: relative;
  display: grid;
  justify-items: end;
  gap: 8px;
}

body.flightops-ops-console .basemapBtn {
  position: relative;
  z-index: 2;
  min-width: 112px;
}

body.flightops-ops-console .basemapBtn.open {
  border-color: rgba(92, 161, 255, 0.44);
  background: rgba(14, 28, 45, 0.98);
}

body.flightops-ops-console .basemapPopover {
  min-width: 206px;
  padding: 10px;
  border-radius: 6px;
  background: rgba(10, 20, 33, 0.98);
  border: 1px solid rgba(121, 149, 187, 0.22);
  box-shadow: var(--fo-shadow-1);
  backdrop-filter: blur(10px);
}

body.flightops-ops-console .basemapPopover[hidden] {
  display: none !important;
}

body.flightops-ops-console .basemapPopoverHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .basemapPopoverTitle {
  color: var(--fo-text-muted);
  font-weight: 700;
}

body.flightops-ops-console .basemapPopoverCurrent {
  color: var(--fo-text-secondary);
  font-weight: 700;
}

body.flightops-ops-console .basemapThumbGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.flightops-ops-console .basemapThumb {
  display: grid;
  gap: 5px;
  padding: 6px;
  border-radius: 6px;
  min-width: 0;
  background: rgba(248, 250, 252, 0.06);
  border: 1px solid rgba(121, 149, 187, 0.16);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .basemapThumb[hidden] {
  display: none !important;
}

body.flightops-ops-console .basemapThumb:hover {
  background: rgba(248, 250, 252, 0.1);
  border-color: rgba(92, 161, 255, 0.3);
}

body.flightops-ops-console .basemapThumb.active {
  background: rgba(58, 130, 247, 0.16);
  border-color: rgba(92, 161, 255, 0.44);
}

body.flightops-ops-console .basemapThumbPreview {
  position: relative;
  height: 48px;
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

body.flightops-ops-console .basemapThumbPreview::after {
  content: "";
  position: absolute;
  right: 5px;
  bottom: 5px;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(248, 250, 252, 0.84);
  box-shadow: 0 0 0 2px rgba(15, 23, 42, 0.28);
}

body.flightops-ops-console .basemapThumbPreview-street {
  background:
    linear-gradient(rgba(100, 116, 139, 0.22) 1px, transparent 1px),
    linear-gradient(90deg, rgba(100, 116, 139, 0.22) 1px, transparent 1px),
    linear-gradient(180deg, #e2e8f0, #cbd5e1);
  background-size: 16px 16px, 16px 16px, 100% 100%;
}

body.flightops-ops-console .basemapThumbPreview-dark {
  background:
    linear-gradient(rgba(100, 116, 139, 0.2) 1px, transparent 1px),
    linear-gradient(90deg, rgba(100, 116, 139, 0.2) 1px, transparent 1px),
    linear-gradient(180deg, #0f172a, #1f2937);
  background-size: 16px 16px, 16px 16px, 100% 100%;
}

body.flightops-ops-console .basemapThumbPreview-vfr {
  background:
    linear-gradient(35deg, rgba(34, 197, 94, 0.15), transparent 34%),
    linear-gradient(125deg, rgba(244, 114, 182, 0.16), transparent 42%),
    linear-gradient(180deg, #fef9c3, #d9f99d);
}

body.flightops-ops-console .basemapThumbPreview-satellite {
  background:
    radial-gradient(circle at 18% 30%, rgba(34, 197, 94, 0.44), transparent 18%),
    radial-gradient(circle at 70% 36%, rgba(132, 204, 22, 0.44), transparent 22%),
    radial-gradient(circle at 58% 66%, rgba(120, 113, 108, 0.28), transparent 18%),
    linear-gradient(180deg, #365314, #1f2937);
}

body.flightops-ops-console .basemapThumbPreview-flightops {
  background:
    linear-gradient(25deg, transparent 0 39%, rgba(244, 201, 91, 0.95) 40% 43%, transparent 44%),
    linear-gradient(115deg, transparent 0 48%, rgba(94, 234, 212, 0.42) 49% 52%, transparent 53%),
    linear-gradient(180deg, #101728 0%, #15213a 48%, #07111f 100%);
}

body.flightops-ops-console .basemapThumbLabel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  min-width: 0;
  font-size: 11px;
  font-weight: 700;
}

body.flightops-ops-console .basemapThumbLabel span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .basemapThumbStatus {
  font-size: 9px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--fo-text-muted);
}

body.flightops-ops-console .tip::before {
  border-top-color: rgba(121, 149, 187, 0.18);
}

body.flightops-ops-console .tip,
body.flightops-ops-console .maplibregl-popup.tip .maplibregl-popup-content,
body.flightops-ops-console .maplibregl-popup.tip .maplibregl-popup-tip {
  background: rgba(10, 20, 33, 0.96);
  border: 1px solid rgba(121, 149, 187, 0.18);
  color: var(--fo-text-primary);
  box-shadow: var(--fo-shadow-1);
}

body.flightops-ops-console .maplibregl-popup.tip .maplibregl-popup-content {
  color: var(--fo-text-primary);
}

body.flightops-ops-console .tip.trackDetailTip {
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  color: inherit;
}

body.flightops-ops-console .tip.trackDetailTip::before {
  border-top-color: rgba(77, 100, 129, 0.96);
}

body.flightops-ops-console .trackTooltipCard {
  min-width: 220px;
  max-width: 238px;
  display: grid;
  gap: 7px;
  padding: 7px 8px 8px;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(10, 21, 37, 0.96), rgba(8, 17, 31, 0.98));
  border: 1px solid rgba(120, 150, 188, 0.28);
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.34);
  color: #edf5ff;
}

body.flightops-ops-console .trackTooltipHeader {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
}

body.flightops-ops-console .trackTooltipHeader.compact {
  gap: 6px;
  align-items: center;
}

body.flightops-ops-console .trackTooltipTitleBlock {
  display: grid;
  gap: 4px;
  min-width: 0;
}

body.flightops-ops-console .trackTooltipTitle {
  font-size: 12px;
  line-height: 1.08;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #f8fbff;
  word-break: break-word;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

body.flightops-ops-console .trackTooltipSourceChip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  width: fit-content;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #a9bfd8;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

body.flightops-ops-console .trackTooltipExpandBtn {
  width: 22px;
  height: 22px;
  min-width: 22px;
  padding: 0;
  border-radius: 7px;
  display: grid;
  place-items: center;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #edf5ff;
  box-shadow: none;
}

body.flightops-ops-console .trackTooltipExpandBtn:hover {
  background: rgba(58, 130, 247, 0.22);
  border-color: rgba(97, 162, 255, 0.42);
}

body.flightops-ops-console .trackTooltipMetricGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px 6px;
}

body.flightops-ops-console .trackTooltipMetric {
  min-width: 0;
  padding: 4px 6px 5px;
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.05);
}

body.flightops-ops-console .trackTooltipMetricLabel {
  font-size: 7px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8ea6c2;
}

body.flightops-ops-console .trackTooltipMetricValue {
  margin-top: 2px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.15;
  color: #f8fbff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .trackExpandedDetailCard {
  position: fixed;
  top: 96px;
  left: calc(100vw - 380px);
  width: 356px;
  z-index: 2148;
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(8, 18, 31, 0.98), rgba(5, 12, 21, 0.98));
  border: 1px solid rgba(120, 150, 188, 0.24);
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.42);
  color: #edf5ff;
  user-select: none;
}

body.flightops-ops-console .trackExpandedDetailCard[hidden] {
  display: none !important;
}

body.flightops-ops-console .trackExpandedDetailInner {
  display: grid;
  gap: 0;
  max-height: calc(100vh - 116px);
}

body.flightops-ops-console .trackExpandedDetailHead {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px 12px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  cursor: grab;
}

body.flightops-ops-console .trackExpandedDetailCard.is-dragging .trackExpandedDetailHead {
  cursor: grabbing;
}

body.flightops-ops-console .trackExpandedDetailTitleBlock {
  display: grid;
  gap: 4px;
  min-width: 0;
}

body.flightops-ops-console .trackExpandedDetailKicker {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #bfd3e8;
}

body.flightops-ops-console .trackExpandedDetailTitle {
  font-size: 22px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -0.04em;
  color: #f8fbff;
  word-break: break-word;
}

body.flightops-ops-console .trackExpandedDetailSub {
  font-size: 11px;
  color: #8ea6c2;
}

body.flightops-ops-console .trackExpandedDetailActions {
  display: flex;
  align-items: center;
  gap: 8px;
}

body.flightops-ops-console .trackExpandedDetailState {
  min-width: 46px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #bfd3e8;
  text-align: center;
}

body.flightops-ops-console .trackExpandedDetailState.live {
  background: rgba(34, 197, 94, 0.14);
  border-color: rgba(74, 222, 128, 0.22);
  color: #8df0b3;
}

body.flightops-ops-console .trackExpandedDetailClose {
  width: 28px;
  height: 28px;
  min-width: 28px;
  padding: 0;
  border-radius: 9px;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #edf5ff;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}

body.flightops-ops-console .trackExpandedDetailClose:hover {
  background: rgba(239, 68, 68, 0.18);
  border-color: rgba(248, 113, 113, 0.28);
}

body.flightops-ops-console .trackExpandedDetailBody {
  display: grid;
  gap: 14px;
  padding: 14px 16px 16px;
  overflow: auto;
  max-height: calc(100vh - 196px);
}

body.flightops-ops-console .trackExpandedMetricGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.flightops-ops-console .trackExpandedMetric {
  padding: 10px 11px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.05);
}

body.flightops-ops-console .trackExpandedMetricLabel {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #8ea6c2;
}

body.flightops-ops-console .trackExpandedMetricValue {
  margin-top: 5px;
  font-size: 14px;
  font-weight: 800;
  color: #f8fbff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .trackSourceTruthPanel {
  display: grid;
  gap: 0;
  padding: 0;
  border-radius: 0;
  background: rgba(15, 14, 13, 0.72);
  border-top: 1px solid var(--strip-cell-divider);
  border-bottom: 1px solid var(--strip-cell-divider);
}

body.flightops-ops-console .trackSourceTruthHead {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  padding: 6px 9px;
  background: rgba(12, 12, 11, 0.72);
  border-bottom: 1px solid var(--strip-cell-divider);
}

body.flightops-ops-console .trackSourceTruthTitle {
  color: var(--family-color);
  font: 900 8px/1 var(--strip-font);
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body.flightops-ops-console .trackSourceTruthSelected {
  min-width: 0;
  max-width: 156px;
  padding: 3px 6px;
  border-radius: 3px;
  background: rgba(212, 168, 74, 0.12);
  border: 1px solid rgba(212, 168, 74, 0.34);
  color: var(--fo-text-strong);
  font: 900 9px/1 var(--strip-font);
  letter-spacing: 0.04em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-transform: uppercase;
}

body.flightops-ops-console .trackSourceTruthRows {
  display: grid;
  gap: 0;
}

body.flightops-ops-console .trackSourceTruthRow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 76px;
  gap: 8px;
  align-items: center;
  min-height: 44px;
  padding: 7px 9px;
  border-radius: 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--strip-cell-divider);
}

body.flightops-ops-console .trackSourceTruthRow.selected {
  background: rgba(212, 168, 74, 0.1);
  box-shadow: inset 3px 0 0 var(--family-color);
}

body.flightops-ops-console .trackSourceTruthRow.degraded {
  box-shadow: inset 3px 0 0 var(--fo-warn);
}

body.flightops-ops-console .trackSourceTruthMain {
  min-width: 0;
}

body.flightops-ops-console .trackSourceTruthName {
  color: var(--fo-text-strong);
  font: 900 11px/1.05 var(--strip-font);
  letter-spacing: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .trackSourceTruthMeta {
  margin-top: 4px;
  color: var(--fo-text-muted);
  font: 800 8px/1 var(--strip-font);
  letter-spacing: 0.08em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-transform: uppercase;
}

body.flightops-ops-console .trackSourceTruthValue {
  display: grid;
  gap: 3px;
  justify-items: end;
  color: var(--fo-text-primary);
  font: 900 9px/1 var(--strip-font);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body.flightops-ops-console .trackSourceTruthReason {
  padding: 7px 9px;
  color: var(--fo-text-secondary);
  font: 800 9px/1.35 var(--strip-font);
  word-break: break-word;
}

/* 2026-05-20 - target card pill polish. */
body.flightops-ops-console .trackTooltipCard {
  border-radius: 8px;
  background: rgba(20, 22, 27, 0.98);
  border-color: rgba(212, 168, 74, 0.26);
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.46);
}

body.flightops-ops-console .trackTooltipTitle {
  letter-spacing: 0;
}

body.flightops-ops-console .trackTooltipMetric {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 26px;
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(27, 30, 36, 0.96);
  border-color: rgba(180, 170, 155, 0.14);
}

body.flightops-ops-console .trackTooltipMetricLabel,
body.flightops-ops-console .trackTooltipMetricValue {
  margin: 0;
  line-height: 1;
}

body.flightops-ops-console .trackTooltipMetricLabel {
  color: rgba(232, 228, 223, 0.68);
}

body.flightops-ops-console .trackTooltipMetricValue {
  min-width: 0;
  max-width: 112px;
  color: #f5f1e8;
  text-align: right;
}

body.flightops-ops-console .trackExpandedDetailCard {
  border-radius: 8px;
  background: rgba(20, 22, 27, 0.98);
  border-color: rgba(212, 168, 74, 0.24);
}

body.flightops-ops-console .trackExpandedDetailTitle {
  letter-spacing: 0;
}

body.flightops-ops-console .trackExpandedMetric {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 34px;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(27, 30, 36, 0.96);
  border-color: rgba(180, 170, 155, 0.14);
}

body.flightops-ops-console .trackExpandedMetricLabel,
body.flightops-ops-console .trackExpandedMetricValue {
  margin: 0;
  line-height: 1;
}

body.flightops-ops-console .trackExpandedMetricValue {
  max-width: 170px;
  text-align: right;
}

body.flightops-ops-console .trackExpandedRows {
  display: grid;
  gap: 8px;
}

body.flightops-ops-console .trackExpandedRow {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

body.flightops-ops-console .trackExpandedRowLabel {
  font-size: 11px;
  font-weight: 700;
  color: #8ea6c2;
}

body.flightops-ops-console .trackExpandedRowValue {
  font-size: 12px;
  line-height: 1.35;
  color: #edf5ff;
  word-break: break-word;
}

/* 2026-05-20 - Claude Operator Strip target cards. */
body.flightops-ops-console .trackOperatorStrip {
  --family-color: var(--src-adsb);
  --family-ink: #1a1410;
  width: 282px;
  min-width: 0;
  max-width: min(360px, calc(100vw - 28px));
  display: grid;
  gap: 0;
  padding: 0;
  border-radius: var(--strip-radius);
  overflow: hidden;
  background: var(--strip-bg);
  border: 1px solid var(--strip-border);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.5);
  color: var(--fo-text-primary);
  font-family: var(--strip-font);
}

body.flightops-ops-console .trackOperatorStrip[data-src="adsb"] { --family-color: var(--src-adsb); --family-ink: #1a1410; }
body.flightops-ops-console .trackOperatorStrip[data-src="radar"] { --family-color: var(--src-radar); --family-ink: #0a1316; }
body.flightops-ops-console .trackOperatorStrip[data-src="drone"] { --family-color: var(--src-drone); --family-ink: #1a0e1f; }
body.flightops-ops-console .trackOperatorStrip[data-src="beacon"] { --family-color: var(--src-beacon); --family-ink: #0d1410; }
body.flightops-ops-console .trackOperatorStrip[data-src="rid"] { --family-color: var(--src-rid); --family-ink: #1e0f08; }
body.flightops-ops-console .trackOperatorStrip[data-src="optical"] { --family-color: var(--src-optical); --family-ink: #0d150b; }

body.flightops-ops-console {
  --cls-adsb: #6cb869;
  --cls-prob: #58c4d4;
  --cls-poss: #e8a832;
  --cls-lowpers: #df6a32;
  --cls-unk: #6b6660;
}

body.flightops-ops-console .alertPill {
  --assessment-color: var(--cls-unk);
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: fit-content;
  max-width: 100%;
  padding: 1px 6px;
  border-radius: 3px;
  border: 1px solid color-mix(in srgb, var(--assessment-color) 78%, transparent);
  background: color-mix(in srgb, var(--assessment-color) 10%, transparent);
  color: var(--assessment-color);
  font-family: "JetBrains Mono", Consolas, monospace;
  font-size: 11px;
  line-height: 1.25;
  vertical-align: 0.06em;
}

body.flightops-ops-console .alertPill[data-class="adsb"] { --assessment-color: var(--cls-adsb); }
body.flightops-ops-console .alertPill[data-class="prob"] { --assessment-color: var(--cls-prob); }
body.flightops-ops-console .alertPill[data-class="poss"] { --assessment-color: var(--cls-poss); }
body.flightops-ops-console .alertPill[data-class="lowpers"] { --assessment-color: var(--cls-lowpers); }
body.flightops-ops-console .alertPill[data-class="unk"] { --assessment-color: var(--cls-unk); }

body.flightops-ops-console .alertPill.stale {
  background: color-mix(in srgb, var(--assessment-color) 4%, transparent);
  color: color-mix(in srgb, var(--assessment-color) 70%, #8a8a82);
}

body.flightops-ops-console .alertPill-pct {
  font-weight: 800;
  white-space: nowrap;
}

body.flightops-ops-console .alertPill-tag {
  font-size: 8.5px;
  font-weight: 900;
  letter-spacing: 0.14em;
  opacity: 0.85;
  text-transform: uppercase;
  white-space: nowrap;
}

body.flightops-ops-console .trackOperatorStrip.strip-hover {
  pointer-events: none;
}

body.flightops-ops-console .trackOperatorStrip.strip-click {
  width: 320px;
  border-left: 3px solid var(--family-color);
  pointer-events: auto;
}

body.flightops-ops-console .trackOperatorStrip.strip-expanded {
  width: 360px;
}

body.flightops-ops-console .trackRadarAssessmentRow {
  --assessment-color: var(--cls-unk);
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  padding: 4px 9px;
  border-bottom: 1px solid var(--strip-cell-divider);
  color: var(--fo-text-secondary);
  font: 800 10px/1.25 var(--strip-font);
}

body.flightops-ops-console .trackRadarAssessmentRow.pinned {
  background: color-mix(in srgb, var(--assessment-color) 4%, transparent);
}

body.flightops-ops-console .trackRadarAssessmentReason {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .trackOperatorStrip.state-emergency {
  border-top: 3px solid var(--fo-critical);
}

body.flightops-ops-console .trackOperatorStrip .strip-banner,
body.flightops-ops-console .trackExpandedDetailHead.trackStripBanner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
  padding: 5px 9px;
  min-height: 30px;
  background: var(--family-color);
  color: var(--family-ink);
  border-bottom: 1px solid rgba(0, 0, 0, 0.22);
}

body.flightops-ops-console .trackOperatorStrip.state-stale .strip-banner {
  background: var(--fo-stale);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .trackOperatorStrip .call,
body.flightops-ops-console .trackExpandedDetailTitle.call {
  min-width: 0;
  color: currentColor;
  font: 900 12px/1.05 var(--strip-font);
  letter-spacing: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .trackOperatorStrip .src,
body.flightops-ops-console .trackTooltipSourceChip.src {
  width: auto;
  max-width: 116px;
  padding: 0;
  border: 0;
  background: transparent;
  color: currentColor;
  opacity: 0.82;
  font: 900 9px/1 var(--strip-font);
  letter-spacing: 0.12em;
  text-align: right;
}

body.flightops-ops-console .trackStripClose,
body.flightops-ops-console .trackOperatorStrip .trackStripClose {
  width: 24px;
  height: 24px;
  min-width: 24px;
  display: grid;
  place-items: center;
  padding: 0;
  border-radius: 4px;
  border: 1px solid rgba(0, 0, 0, 0.24);
  background: rgba(26, 20, 16, 0.18);
  color: currentColor;
  font: 900 12px/1 var(--strip-font);
}

body.flightops-ops-console .trackOperatorStrip .strip-row,
body.flightops-ops-console .trackExpandedMetricGrid.primary,
body.flightops-ops-console .trackExpandedMetricGrid.position-fix,
body.flightops-ops-console .trackExpandedMetricGrid.report {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border-bottom: 1px solid var(--strip-cell-divider);
}

body.flightops-ops-console .trackOperatorStrip .strip-row.cols-4,
body.flightops-ops-console .trackStripIdent {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.flightops-ops-console .trackOperatorStrip .strip-cell,
body.flightops-ops-console .trackExpandedMetric.strip-cell,
body.flightops-ops-console .trackStripIdent .cell {
  min-height: 44px;
  display: grid;
  align-content: center;
  gap: 3px;
  padding: 6px 7px;
  border: 0;
  border-right: 1px solid var(--strip-cell-divider);
  border-radius: 0;
  background: transparent;
}

body.flightops-ops-console .trackOperatorStrip .strip-cell:last-child,
body.flightops-ops-console .trackStripIdent .cell:last-child {
  border-right: 0;
}

body.flightops-ops-console .trackOperatorStrip .l,
body.flightops-ops-console .trackExpandedMetricLabel.l,
body.flightops-ops-console .trackStripIdent .l {
  color: var(--fo-text-muted);
  font: 900 var(--strip-cell-label)/1 var(--strip-font);
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.flightops-ops-console .trackOperatorStrip .v,
body.flightops-ops-console .trackExpandedMetricValue.v,
body.flightops-ops-console .trackStripIdent .v {
  min-width: 0;
  max-width: none;
  margin: 0;
  color: var(--fo-text-strong);
  font: 900 var(--strip-cell-value)/1.05 var(--strip-font);
  letter-spacing: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
}

body.flightops-ops-console .trackOperatorStrip.state-aging .v,
body.flightops-ops-console .trackOperatorStrip .v.warn {
  color: var(--fo-warn);
}

body.flightops-ops-console .trackOperatorStrip.state-stale .v,
body.flightops-ops-console .trackOperatorStrip .v.stale {
  color: #9a9f99;
}

body.flightops-ops-console .trackOperatorStrip .v.crit {
  color: var(--fo-critical);
}

body.flightops-ops-console .trackStripIdent {
  display: grid;
  background: rgba(15, 14, 13, 0.72);
  border-bottom: 1px solid var(--strip-cell-divider);
}

body.flightops-ops-console .trackStripFoot {
  padding: 5px 9px 6px;
  color: var(--fo-text-secondary);
  font: 800 9px/1.2 var(--strip-font);
  letter-spacing: 0.04em;
}

body.flightops-ops-console .trackOperatorStrip.state-aging .trackStripFoot {
  color: var(--fo-warn);
}

body.flightops-ops-console .trackOperatorStrip.state-emergency .trackStripFoot {
  color: var(--fo-critical);
}

body.flightops-ops-console .trackStripActions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--strip-cell-divider);
}

body.flightops-ops-console .trackExpandedDetailBody > .trackStripActions {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.flightops-ops-console .trackStripActions button {
  min-height: 40px;
  border: 0;
  border-right: 1px solid var(--strip-cell-divider);
  border-radius: 0;
  background: transparent;
  color: var(--fo-text-primary);
  font: 900 10px/1 var(--strip-font);
  letter-spacing: 0.04em;
}

body.flightops-ops-console .trackStripActions button:last-child {
  border-right: 0;
}

body.flightops-ops-console .trackStripActions button.primary {
  color: var(--family-color);
}

body.flightops-ops-console .trackStripActions button.exp {
  color: var(--fo-accent);
  width: auto;
  height: auto;
  min-width: 0;
}

body.flightops-ops-console .trackStripActions button:hover,
body.flightops-ops-console .trackStripActions button:focus-visible {
  background: var(--fo-bg-surface-3);
  outline: none;
}

body.flightops-ops-console .trackStripDivider {
  padding: 7px 9px;
  background: rgba(15, 14, 13, 0.84);
  border-top: 1px solid var(--strip-cell-divider);
  border-bottom: 1px solid var(--strip-cell-divider);
  color: var(--family-color);
  font: 900 8px/1 var(--strip-font);
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body.flightops-ops-console .trackStripDivider.radarAssessmentDivider {
  color: var(--assessment-color, var(--cls-prob));
}

body.flightops-ops-console .radarAssessmentPanel {
  --assessment-color: var(--cls-unk);
  display: grid;
  gap: 7px;
  padding: 8px 9px 9px;
  border-bottom: 1px solid var(--strip-cell-divider);
  background: color-mix(in srgb, var(--assessment-color) 4%, rgba(15, 14, 13, 0.62));
}

body.flightops-ops-console .radarAssessmentSummary {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: var(--fo-text-secondary);
  font: 800 10px/1.3 var(--strip-font);
}

body.flightops-ops-console .radarAssessmentSummary > span:last-child {
  min-width: 0;
}

body.flightops-ops-console .radarAssessmentScoreTable {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  color: var(--fo-text-primary);
}

body.flightops-ops-console .radarAssessmentScoreTable td {
  padding: 4px 0;
  border-bottom: 1px solid rgba(180, 170, 155, 0.08);
  font: 800 10px/1.15 var(--fo-font-sans);
}

body.flightops-ops-console .radarAssessmentScoreTable tr:last-child td {
  border-bottom: 0;
}

body.flightops-ops-console .radarAssessmentScoreTable td:first-child {
  width: 55%;
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .radarAssessmentScoreTable td:nth-child(2) {
  width: 40px;
  color: var(--fo-text-strong);
  font-family: "JetBrains Mono", Consolas, monospace;
  text-align: right;
}

body.flightops-ops-console .radarAssessmentScoreTable td:nth-child(3) {
  width: 84px;
  padding-left: 7px;
}

body.flightops-ops-console .radarAssessmentScoreBar {
  display: block;
  width: 80px;
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(180, 170, 155, 0.12);
}

body.flightops-ops-console .radarAssessmentScoreBar .fill {
  display: block;
  height: 100%;
  min-width: 2px;
  border-radius: inherit;
  background: var(--assessment-color);
}

body.flightops-ops-console .radarAssessmentScoreBar .fill.weak {
  background: #e8a832;
}

body.flightops-ops-console .radarAssessmentSignals {
  color: var(--fo-text-muted);
  font: 800 9px/1.25 "JetBrains Mono", Consolas, monospace;
}

body.flightops-ops-console .trackExpandedDetailCard {
  width: 360px;
  left: calc(100vw - 374px);
  border-radius: var(--strip-radius);
  background: var(--strip-bg);
  border-color: var(--strip-border);
}

body.flightops-ops-console .trackExpandedDetailInner {
  max-height: calc(100vh - 116px);
}

body.flightops-ops-console .trackExpandedDetailHead {
  padding: 7px 9px;
}

body.flightops-ops-console .trackExpandedDetailKicker {
  color: currentColor;
  font: 900 9px/1 var(--strip-font);
  letter-spacing: 0.12em;
}

body.flightops-ops-console .trackExpandedDetailBody {
  gap: 0;
  padding: 0;
}

body.flightops-ops-console .trackExpandedRows {
  gap: 0;
}

body.flightops-ops-console .trackExpandedRow {
  grid-template-columns: 102px minmax(0, 1fr);
  padding: 7px 9px;
  border-bottom: 1px solid var(--strip-cell-divider);
}

body.flightops-ops-console .flightopsExpandedTrackPulseMarker {
  overflow: visible !important;
}

body.flightops-ops-console .flightopsExpandedTrackPulseMarker::before {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 18px;
  border: 2px solid rgba(74, 222, 128, 0.92);
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.16), 0 0 18px rgba(34, 197, 94, 0.28);
  pointer-events: none;
  animation: expandedTrackMarkerPulse 1.38s ease-out infinite;
}

body.flightops-ops-console .flightopsExpandedTrackPulseMarker > div {
  animation: expandedTrackMarkerCoreFlash 1.38s ease-in-out infinite;
}

body.flightops-ops-console .flightopsOverlayTextLabel {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  width: auto !important;
  height: auto !important;
  pointer-events: none;
  white-space: nowrap;
}

body.flightops-ops-console .flightopsOverlayTextLabel .flightopsOverlayTextLabelText {
  display: inline-block;
  font: 700 12px/1 "Segoe UI", system-ui, sans-serif;
  color: #ffd000;
  text-shadow: 0 0 2px #000, 0 0 3px #000, 1px 1px 0 #000;
  transform: translate(-50%, -50%);
  padding: 0 2px;
}

/* Phase 2a - block-mode map context menu styling.
   Distinguish the block-mode chips and primary action visually so operators
   know they are about to create a flight-area monitor rather than a generic
   map action. */
body.flightops-ops-console .mapContextMenu[data-open="true"] .mapContextMenuChips .mapContextMenuChip.flightopsBlockChip,
body.flightops-ops-console .mapContextMenu .mapContextMenuChip.flightopsBlockChip {
  background: rgba(255, 208, 0, 0.18);
  color: #fbbf24;
  border-color: rgba(255, 208, 0, 0.35);
}
body.flightops-ops-console .mapContextMenu .mapContextMenuBtn[data-action="alert-on-this-block"] {
  border-color: rgba(255, 208, 0, 0.6);
}
body.flightops-ops-console .mapContextMenu .mapContextMenuBtn[data-action="alert-on-this-block"] .mapContextMenuIcon {
  background: rgba(255, 208, 0, 0.18);
  color: #fbbf24;
}

/* 2026-05-17 - Map V2 right-click context menu modernization.
   Map actions and alert-quadrant block actions now render as distinct
   surfaces instead of sharing the old vertical Leaflet-era menu shell. */
body.flightops-ops-console .mapContextMenu[data-context-mode="map"],
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] {
  padding: 0;
  gap: 0;
  border-radius: 7px;
  background: rgba(20, 22, 27, 0.98);
  border: 1px solid rgba(212, 168, 74, 0.3);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(12px);
}

body.flightops-ops-console .mapActionsContextMenu {
  min-width: 278px;
  max-width: min(90vw, 324px);
  overflow: hidden;
}

body.flightops-ops-console .mapActionsHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 12px 8px;
  border-bottom: 1px solid rgba(212, 168, 74, 0.16);
}

body.flightops-ops-console .mapActionsLabel {
  color: var(--fo-text-muted);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

body.flightops-ops-console .mapActionsCoords {
  color: var(--fo-text-primary);
  font: 800 12px/1.2 "JetBrains Mono", Consolas, monospace;
  text-align: right;
  white-space: nowrap;
}

body.flightops-ops-console .mapActionsPillRow {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px 11px;
}

body.flightops-ops-console .mapActionsPillRowMore {
  justify-content: flex-end;
  padding-top: 9px;
  border-top: 1px solid rgba(212, 168, 74, 0.14);
  background: rgba(11, 15, 20, 0.34);
}

body.flightops-ops-console .mapActionsPillRowMore[hidden] {
  display: none !important;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="map"] .mapContextPill,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapContextPill,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockListAction,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockFooterAction,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockCartPill {
  display: inline-flex !important;
  grid-template-columns: none !important;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 0;
  min-height: 30px;
  height: 30px;
  padding: 0 11px;
  border-radius: 999px;
  border: 1px solid rgba(121, 149, 187, 0.22);
  background: rgba(27, 30, 36, 0.98);
  color: var(--fo-text-primary);
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  box-shadow: none;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="map"] .mapContextPill:hover,
body.flightops-ops-console .mapContextMenu[data-context-mode="map"] .mapContextPill:focus-visible,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapContextPill:hover,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapContextPill:focus-visible,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockListAction:hover,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockListAction:focus-visible,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockFooterAction:hover,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockFooterAction:focus-visible,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockCartPill:hover,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockCartPill:focus-visible {
  border-color: rgba(212, 168, 74, 0.56);
  background: rgba(38, 42, 49, 0.98);
  outline: none;
}

body.flightops-ops-console .mapContextPill.primary,
body.flightops-ops-console .mapBlockListAction.alert {
  border-color: rgba(212, 168, 74, 0.72) !important;
  background: rgba(212, 168, 74, 0.16) !important;
  color: #f6d479 !important;
}

body.flightops-ops-console .mapContextPill.active {
  border-color: rgba(96, 165, 250, 0.56) !important;
  background: rgba(96, 165, 250, 0.14) !important;
  color: #bfdbfe !important;
}

body.flightops-ops-console .mapContextPill.success {
  border-color: rgba(52, 211, 153, 0.56) !important;
  background: rgba(52, 211, 153, 0.14) !important;
  color: #bbf7d0 !important;
}

body.flightops-ops-console .mapContextPill.remove,
body.flightops-ops-console .mapContextPill.clear {
  border-color: rgba(248, 113, 113, 0.48) !important;
  background: rgba(127, 29, 29, 0.2) !important;
  color: #fecaca !important;
}

body.flightops-ops-console .mapContextPill.measure:hover {
  color: #bfdbfe;
  border-color: rgba(96, 165, 250, 0.58);
}

body.flightops-ops-console .mapContextPill.snapshot:hover {
  color: #bbf7d0;
  border-color: rgba(52, 211, 153, 0.58);
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] {
  padding: 0;
  gap: 0;
  border-radius: 8px;
  background: rgba(20, 22, 27, 0.98);
  border: 1px solid rgba(212, 168, 74, 0.3);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(12px);
  overflow: hidden;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuHead {
  padding: 10px 12px 8px;
  border-bottom-color: rgba(212, 168, 74, 0.16);
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuTitle,
body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuCoords {
  letter-spacing: 0;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuChips,
body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuActions,
body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuFlyoutActions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuActions {
  padding: 10px 11px;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuFlyoutActions {
  padding-top: 8px;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuChip,
body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuBtn {
  display: inline-flex !important;
  grid-template-columns: none !important;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 0;
  min-height: 30px;
  height: 30px;
  padding: 0 11px;
  border-radius: 999px;
  border: 1px solid rgba(121, 149, 187, 0.22);
  background: rgba(27, 30, 36, 0.98);
  color: var(--fo-text-primary);
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  box-shadow: none;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuBtn:hover,
body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuBtn:focus-visible {
  border-color: rgba(212, 168, 74, 0.56);
  background: rgba(38, 42, 49, 0.98);
  outline: none;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuBtn.primary {
  border-color: rgba(212, 168, 74, 0.72);
  background: rgba(212, 168, 74, 0.16);
  color: #f6d479;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuIcon,
body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuChevron,
body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuBtnContent small {
  display: none !important;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuBtnContent strong {
  font-size: 11px;
  line-height: 1;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="target"] .mapContextMenuFooter {
  padding: 0 12px 10px;
}

body.flightops-ops-console .targetContextMenu {
  --family-color: var(--src-adsb);
  min-width: 230px;
  max-width: 230px;
  border-radius: var(--strip-radius);
  background: var(--strip-bg);
  border-color: var(--strip-border);
  font-family: var(--fo-font-sans);
}

body.flightops-ops-console .targetContextMenu[data-src="radar"] { --family-color: var(--src-radar); }
body.flightops-ops-console .targetContextMenu[data-src="drone"] { --family-color: var(--src-drone); }
body.flightops-ops-console .targetContextMenu[data-src="beacon"] { --family-color: var(--src-beacon); }
body.flightops-ops-console .targetContextMenu[data-src="rid"] { --family-color: var(--src-rid); }
body.flightops-ops-console .targetContextMenu[data-src="optical"] { --family-color: var(--src-optical); }

body.flightops-ops-console .targetContextHead {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 24px;
  gap: 8px;
  align-items: center;
  padding: 9px 9px 8px;
  border-bottom: 1px solid var(--strip-cell-divider);
}

body.flightops-ops-console .targetContextTitle {
  color: var(--fo-text-secondary);
  font: 900 9px/1 var(--strip-font);
  letter-spacing: 0.14em;
}

body.flightops-ops-console .targetContextIdentity {
  max-width: 92px;
  color: var(--family-color);
  font: 900 11px/1 var(--strip-font);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .targetContextSource {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 7px 9px 9px;
  border-bottom: 1px solid var(--strip-cell-divider);
}

body.flightops-ops-console .targetContextSourcePill {
  min-width: 0;
  max-width: 116px;
  padding: 5px 7px;
  border-radius: 999px;
  background: rgba(27, 30, 36, 0.96);
  border: 1px solid rgba(180, 170, 155, 0.14);
  color: var(--fo-text-muted);
  font: 900 8px/1 var(--strip-font);
  letter-spacing: 0.07em;
  overflow: hidden;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

body.flightops-ops-console .targetContextSourcePill.primary {
  border-color: color-mix(in srgb, var(--family-color) 48%, rgba(180, 170, 155, 0.18));
  background: color-mix(in srgb, var(--family-color) 14%, rgba(22, 22, 20, 0.96));
  color: var(--fo-text-strong);
}

body.flightops-ops-console .targetContextSourcePill.live {
  color: var(--family-color);
}

body.flightops-ops-console .targetContextAssessment {
  --assessment-color: var(--cls-unk);
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  padding: 6px 10px;
  border-bottom: 1px solid var(--strip-cell-divider);
  background: color-mix(in srgb, var(--assessment-color) 6%, transparent);
}

body.flightops-ops-console .targetContextAssessment[data-class="adsb"] { --assessment-color: var(--cls-adsb); }
body.flightops-ops-console .targetContextAssessment[data-class="prob"] { --assessment-color: var(--cls-prob); }
body.flightops-ops-console .targetContextAssessment[data-class="poss"] { --assessment-color: var(--cls-poss); }
body.flightops-ops-console .targetContextAssessment[data-class="lowpers"] { --assessment-color: var(--cls-lowpers); }

body.flightops-ops-console .targetContextAssessmentText {
  min-width: 0;
  overflow: hidden;
  color: var(--fo-text-secondary);
  font: 800 10px/1.25 var(--fo-font-sans);
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .targetContextActions {
  display: grid !important;
  gap: 0 !important;
  padding: 0 !important;
}

body.flightops-ops-console .targetContextGroupLabel {
  padding: 8px 9px 5px;
  color: var(--family-color);
  font: 900 8px/1 var(--strip-font);
  letter-spacing: 0.18em;
}

body.flightops-ops-console .targetContextAction.mapContextMenuBtn {
  width: 100%;
  height: 34px;
  justify-content: stretch;
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) auto !important;
  gap: 8px;
  padding: 0 9px;
  border: 0;
  border-radius: 0;
  border-top: 1px solid rgba(180, 170, 155, 0.08);
  background: transparent;
  font-size: 11px;
}

body.flightops-ops-console .targetContextAction.mapContextMenuBtn:hover,
body.flightops-ops-console .targetContextAction.mapContextMenuBtn:focus-visible {
  background: var(--fo-bg-surface-3);
  border-color: rgba(180, 170, 155, 0.12);
}

body.flightops-ops-console .targetContextAction.primary {
  color: var(--family-color);
}

body.flightops-ops-console .targetContextHotkey {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 4px;
  border: 1px solid rgba(180, 170, 155, 0.18);
  background: rgba(255, 255, 255, 0.04);
  font: 900 10px/1 var(--strip-font);
}

body.flightops-ops-console .targetContextLabel {
  min-width: 0;
  color: var(--fo-text-primary);
  font: 800 11px/1 var(--fo-font-sans);
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .targetContextDetail {
  max-width: 72px;
  color: var(--fo-text-muted);
  font: 800 9px/1 var(--strip-font);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .blockMinimalContextMenu {
  min-width: 220px;
  max-width: min(90vw, 236px);
  overflow: hidden;
}

body.flightops-ops-console .blockBuilderContextMenu,
body.flightops-ops-console .blockConfirmContextMenu {
  min-width: 288px;
  max-width: min(90vw, 312px);
  overflow: hidden;
}

body.flightops-ops-console .mapBlockMinimalHead {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 10px 11px;
  border-bottom: 1px solid rgba(212, 168, 74, 0.16);
}

body.flightops-ops-console .mapBlockCode {
  display: inline-grid;
  place-items: center;
  min-width: 35px;
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  border: 1px solid rgba(212, 168, 74, 0.46);
  background: rgba(212, 168, 74, 0.16);
  color: #f6d479;
  font: 900 11px/1 "JetBrains Mono", Consolas, monospace;
}

body.flightops-ops-console .mapBlockName {
  min-width: 0;
  overflow: hidden;
  color: var(--fo-text-primary);
  font-size: 12px;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .mapBlockAlt {
  color: var(--fo-text-muted);
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

body.flightops-ops-console .mapBlockMinimalActions,
body.flightops-ops-console .mapBlockMinimalFooter {
  display: grid;
  gap: 7px;
  padding: 9px 10px;
}

body.flightops-ops-console .mapBlockMinimalFooter {
  padding-top: 0;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockListAction,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockFooterAction {
  justify-content: flex-start;
  width: 100%;
  height: 34px;
  padding: 0 12px;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockListAction .mapContextMenuIcon,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockFooterAction .mapContextMenuIcon {
  width: 20px;
  height: 20px;
  margin-right: 7px;
  border-radius: 999px;
  font-size: 10px;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockListAction .mapContextMenuBtnContent,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockFooterAction .mapContextMenuBtnContent {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockListAction .mapContextMenuBtnContent strong,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockFooterAction .mapContextMenuBtnContent strong {
  font-size: 11px;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockListAction .mapContextMenuBtnContent small,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockFooterAction .mapContextMenuBtnContent small {
  margin: 0;
  font-size: 10px;
}

body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockListAction .mapContextMenuChevron,
body.flightops-ops-console .mapContextMenu[data-context-mode="block"] .mapBlockFooterAction .mapContextMenuChevron {
  display: none;
}

body.flightops-ops-console .mapBlockBuilderStrip {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 9px 11px;
  border-bottom: 1px solid rgba(52, 211, 153, 0.2);
  background: rgba(20, 83, 45, 0.18);
}

body.flightops-ops-console .mapBlockBuilderStrip strong {
  color: #d1fae5;
  font-size: 12px;
  font-weight: 900;
}

body.flightops-ops-console .mapBlockBuilderStrip span:not(.mapBlockLiveDot) {
  color: var(--fo-text-muted);
  font-size: 10px;
  font-weight: 800;
}

body.flightops-ops-console .mapBlockLiveDot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #34d399;
  box-shadow: 0 0 0 4px rgba(52, 211, 153, 0.12);
}

body.flightops-ops-console .mapBlockCart {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 10px 11px;
}

body.flightops-ops-console .mapBlockCart .mapContextMenuChip,
body.flightops-ops-console .mapBlockCartPill {
  height: 24px !important;
  min-height: 24px !important;
  padding: 0 8px !important;
  font-size: 10px !important;
}

body.flightops-ops-console .mapBlockCartPill.current {
  border-color: rgba(52, 211, 153, 0.54) !important;
  background: rgba(52, 211, 153, 0.16) !important;
  color: #d1fae5 !important;
}

body.flightops-ops-console .mapBlockCartPill.preview {
  border-style: dashed !important;
  border-color: rgba(96, 165, 250, 0.48) !important;
  background: rgba(96, 165, 250, 0.08) !important;
  color: #bfdbfe !important;
}

body.flightops-ops-console .mapBlockTargetRow {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  margin: 0 10px 10px;
  padding: 8px 9px;
  border-radius: 6px;
  border: 1px solid rgba(96, 165, 250, 0.25);
  background: rgba(37, 99, 235, 0.09);
}

body.flightops-ops-console .mapBlockTargetRow.in-area {
  border-color: rgba(52, 211, 153, 0.34);
  background: rgba(20, 83, 45, 0.16);
}

body.flightops-ops-console .mapBlockTargetRow.in-area .mapBlockCode {
  border-color: rgba(52, 211, 153, 0.5);
  background: rgba(52, 211, 153, 0.16);
  color: #bbf7d0;
}

body.flightops-ops-console .mapBlockBuilderActions,
body.flightops-ops-console .mapBlockConfirmActions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
  padding: 0 11px 10px;
}

body.flightops-ops-console .mapBlockBuilderActions .mapContextPill,
body.flightops-ops-console .mapBlockConfirmActions .mapContextPill {
  width: 100%;
}

body.flightops-ops-console .mapBlockBuilderFooter {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 9px 11px 10px;
  border-top: 1px solid rgba(212, 168, 74, 0.12);
}

body.flightops-ops-console .mapBlockConfirmBody {
  display: grid;
  gap: 10px;
  padding: 12px 12px 10px;
}

body.flightops-ops-console .mapBlockConfirmCopy {
  margin: 0;
  color: var(--fo-text-muted);
  font-size: 12px;
  line-height: 1.35;
}

body.flightops-ops-console .mapBlockConfirmChip {
  border-color: rgba(212, 168, 74, 0.42) !important;
  background: rgba(212, 168, 74, 0.14) !important;
  color: #f6d479 !important;
}

body.flightops-ops-console .mapBlockConfirmLabel {
  display: grid;
  gap: 6px;
  color: var(--fo-text-muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

body.flightops-ops-console .mapBlockConfirmInput {
  width: 100%;
  min-height: 34px;
  border-radius: 6px;
  border: 1px solid rgba(121, 149, 187, 0.24);
  background: rgba(8, 12, 18, 0.74);
  color: var(--fo-text-primary);
  font: 800 12px/1.2 "Segoe UI", system-ui, sans-serif;
  padding: 0 10px;
}

body.flightops-ops-console .mapBlockConfirmInput:focus {
  border-color: rgba(212, 168, 74, 0.68);
  outline: none;
  box-shadow: 0 0 0 2px rgba(212, 168, 74, 0.18);
}

/* Phase 1c - KMZ sublayer toggle UI in the overlay catalog table.
   Mirrors Codex's Blackbird beta commit 2493138. */
body.flightops-ops-console .mapUtilityOverlayExpand {
  width: 20px;
  height: 20px;
  margin-right: 6px;
  border: 1px solid rgba(148, 163, 184, 0.34);
  border-radius: 4px;
  background: rgba(15, 23, 42, 0.78);
  color: #e2e8f0;
  font: 800 12px/1 "Segoe UI", system-ui, sans-serif;
  vertical-align: middle;
}

body.flightops-ops-console .mapUtilityOverlayFillToggle {
  width: 16px;
  height: 16px;
  accent-color: #eab308;
}

body.flightops-ops-console .mapUtilityOverlayChildRow td {
  padding: 4px 6px 8px 34px;
  background: rgba(15, 23, 42, 0.28);
}

body.flightops-ops-console .mapUtilityOverlayChildList {
  display: grid;
  gap: 5px;
  max-height: 180px;
  overflow: auto;
}

body.flightops-ops-console .mapUtilityOverlayChildToggle {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: #cbd5e1;
  font: 600 11px/1.25 "Segoe UI", system-ui, sans-serif;
}

body.flightops-ops-console .mapUtilityOverlaySubhead {
  color: #94a3b8;
  font: 800 10px/1.2 "Segoe UI", system-ui, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* Phase 2b - Flight Box floating widget. Bottom-right of the viewport,
   shows the current multi-block selection set with remove + activate
   actions. Hidden when the selection is empty. */
.flightopsFlightBoxWidget {
  position: fixed;
  bottom: 16px;
  right: 16px;
  z-index: 5200;
  min-width: 240px;
  max-width: 320px;
  max-height: 60vh;
  display: flex;
  flex-direction: column;
  background: rgba(15, 23, 42, 0.94);
  border: 1px solid rgba(255, 208, 0, 0.45);
  border-radius: 6px;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.45);
  color: #e2e8f0;
  font: 600 12px/1.35 "Segoe UI", system-ui, sans-serif;
}
.flightopsFlightBoxWidget[hidden] { display: none !important; }
.flightopsFlightBoxHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 10px;
  border-bottom: 1px solid rgba(255, 208, 0, 0.28);
}
.flightopsFlightBoxTitle {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 800;
  color: #fbbf24;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.flightopsFlightBoxCount {
  display: inline-block;
  min-width: 22px;
  padding: 2px 6px;
  background: rgba(255, 208, 0, 0.16);
  color: #fbbf24;
  border-radius: 9999px;
  font-size: 11px;
  font-weight: 800;
  text-align: center;
}
.flightopsFlightBoxClose {
  background: transparent;
  border: 1px solid rgba(148, 163, 184, 0.35);
  color: #e2e8f0;
  width: 24px;
  height: 24px;
  border-radius: 4px;
  font: 800 14px/1 "Segoe UI", system-ui, sans-serif;
  cursor: pointer;
}
.flightopsFlightBoxList {
  flex: 1 1 auto;
  overflow: auto;
  padding: 6px 8px;
  display: grid;
  gap: 4px;
}
.flightopsFlightBoxRow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 6px 8px;
  background: rgba(15, 23, 42, 0.6);
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 4px;
}
.flightopsFlightBoxRowName {
  font-weight: 700;
  color: #fde68a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.flightopsFlightBoxRowRemove {
  background: transparent;
  border: 1px solid rgba(248, 113, 113, 0.45);
  color: #fca5a5;
  width: 22px;
  height: 22px;
  border-radius: 4px;
  font: 800 14px/1 "Segoe UI", system-ui, sans-serif;
  cursor: pointer;
}
.flightopsFlightBoxActions {
  display: flex;
  gap: 6px;
  padding: 8px 10px;
  border-top: 1px solid rgba(255, 208, 0, 0.28);
}
.flightopsFlightBoxActivate {
  flex: 1 1 auto;
  background: rgba(255, 208, 0, 0.18);
  border: 1px solid rgba(255, 208, 0, 0.6);
  color: #fbbf24;
  padding: 8px 10px;
  border-radius: 4px;
  font: 700 12px/1.2 "Segoe UI", system-ui, sans-serif;
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.flightopsFlightBoxActivate:disabled { opacity: 0.6; cursor: progress; }
.flightopsFlightBoxClear {
  background: transparent;
  border: 1px solid rgba(148, 163, 184, 0.45);
  color: #cbd5e1;
  padding: 8px 10px;
  border-radius: 4px;
  font: 700 12px/1.2 "Segoe UI", system-ui, sans-serif;
  cursor: pointer;
}
.flightopsFlightBoxSaveAs {
  background: rgba(96, 165, 250, 0.18);
  border: 1px solid rgba(96, 165, 250, 0.55);
  color: #93c5fd;
  padding: 8px 10px;
  border-radius: 4px;
  font: 700 12px/1.2 "Segoe UI", system-ui, sans-serif;
  cursor: pointer;
}
.flightopsFlightBoxSaveAs:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* Phase 2d - saved-flight-box section inside the widget. Each saved box has
   its own color swatch, name, count, and a row of actions (Edit/Alert/
   Hide/Delete). */
.flightopsFlightBoxSavedSection {
  border-top: 1px solid rgba(255, 208, 0, 0.28);
  padding: 8px 10px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.flightopsFlightBoxSavedSection[hidden] { display: none !important; }
.flightopsFlightBoxSavedHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.flightopsFlightBoxSavedTitle {
  display: flex;
  align-items: center;
  gap: 8px;
  font: 700 11px/1.3 "Segoe UI", system-ui, sans-serif;
  color: #e2e8f0;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.flightopsFlightBoxSavedCount {
  display: inline-block;
  min-width: 22px;
  padding: 1px 6px;
  background: rgba(96, 165, 250, 0.18);
  color: #93c5fd;
  border-radius: 9999px;
  font-size: 11px;
  font-weight: 800;
  text-align: center;
}
.flightopsFlightBoxSavedList {
  display: grid;
  gap: 4px;
  max-height: 38vh;
  overflow: auto;
}
.flightopsFlightBoxSavedRow {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  background: rgba(15, 23, 42, 0.6);
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 4px;
}
.flightopsFlightBoxSwatch {
  display: inline-block;
  width: 14px;
  height: 14px;
  border-radius: 4px;
  border: 1px solid rgba(15, 23, 42, 0.7);
}
.flightopsFlightBoxSavedMeta {
  min-width: 0;
}
.flightopsFlightBoxSavedName {
  font: 700 12px/1.2 "Segoe UI", system-ui, sans-serif;
  color: #fde68a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.flightopsFlightBoxSavedSub {
  font: 500 10px/1.2 "Segoe UI", system-ui, sans-serif;
  color: #94a3b8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.flightopsFlightBoxSavedActions {
  display: flex;
  gap: 4px;
}
.flightopsFlightBoxSavedVolume {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  padding-top: 2px;
}
.flightopsFlightBoxSavedVolume label {
  display: grid;
  gap: 3px;
  color: #94a3b8;
  font: 700 9px/1 "Segoe UI", system-ui, sans-serif;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.flightopsFlightBoxSavedVolume input {
  min-width: 0;
  height: 24px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 4px;
  background: rgba(15, 23, 42, 0.74);
  color: #e2e8f0;
  font: 700 11px/1 "Segoe UI", system-ui, sans-serif;
  text-align: center;
}
.flightopsFlightBoxSavedEdit,
.flightopsFlightBoxSavedActivate,
.flightopsFlightBoxSavedHide,
.flightopsFlightBoxSavedDelete {
  background: transparent;
  border: 1px solid rgba(148, 163, 184, 0.35);
  color: #cbd5e1;
  padding: 4px 7px;
  border-radius: 4px;
  font: 700 11px/1 "Segoe UI", system-ui, sans-serif;
  cursor: pointer;
}
.flightopsFlightBoxSavedActivate {
  border-color: rgba(255, 208, 0, 0.55);
  color: #fbbf24;
}
.flightopsFlightBoxSavedDelete {
  border-color: rgba(248, 113, 113, 0.5);
  color: #fca5a5;
}
.flightopsFlightBoxSavedEdit:disabled,
.flightopsFlightBoxSavedActivate:disabled,
.flightopsFlightBoxSavedHide:disabled,
.flightopsFlightBoxSavedDelete:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

@keyframes expandedTrackMarkerPulse {
  0% {
    transform: scale(0.86);
    opacity: 0.94;
  }
  76% {
    transform: scale(1.56);
    opacity: 0;
  }
  100% {
    transform: scale(1.66);
    opacity: 0;
  }
}

@keyframes expandedTrackMarkerCoreFlash {
  0%,
  100% {
    opacity: 1;
    filter: none;
  }
  50% {
    opacity: 1;
    filter: brightness(1.16) saturate(1.22);
  }
}

body.flightops-ops-console .panelSection::-webkit-scrollbar,
body.flightops-ops-console #monitoringDockRail::-webkit-scrollbar,
body.flightops-ops-console #mapUtilityDrawerPanel::-webkit-scrollbar,
body.flightops-ops-console .mapUtilityDrawerPanel::-webkit-scrollbar {
  width: 10px;
}

body.flightops-ops-console .panelSection::-webkit-scrollbar-thumb,
body.flightops-ops-console #monitoringDockRail::-webkit-scrollbar-thumb,
body.flightops-ops-console #mapUtilityDrawerPanel::-webkit-scrollbar-thumb,
body.flightops-ops-console .mapUtilityDrawerPanel::-webkit-scrollbar-thumb {
  background: rgba(121, 149, 187, 0.28);
  border-radius: 999px;
}

@media (max-width: 1100px) {
  body.flightops-ops-console #topNav {
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  body.flightops-ops-console #authTopbar {
    height: auto;
    align-items: flex-start;
    padding: 10px 14px 12px;
  }

  body.flightops-ops-console #authTopSignedIn {
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  body.flightops-ops-console .panelSection {
    left: 12px !important;
    width: min(360px, calc(100vw - 24px)) !important;
  }
}

@media (max-width: 720px) {
  body.flightops-ops-console .stats,
  body.flightops-ops-console .details,
  body.flightops-ops-console .controls.settingsControls,
  body.flightops-ops-console .phase1Config {
    grid-template-columns: 1fr;
  }

  body.flightops-ops-console #monitoringDockRail {
    width: min(76vw, 300px);
  }

  body.flightops-ops-console #mapUtilityDrawerPanel,
  body.flightops-ops-console .mapUtilityDrawerPanel {
    width: min(60vw, 190px);
  }
}

/* -----------------------------------------------------------------------------
 * Panel readability and density refinement
 * -----------------------------------------------------------------------------
 * Keep this pass CSS-only so the existing panel DOM, IDs, and JS bindings stay
 * intact. The goal is to make the left rail and support cards easier to scan
 * under load without changing panel ownership or behavior.
 */
body.flightops-ops-console .panelSection .head {
  gap: 10px;
  padding: 12px 14px 10px;
}

body.flightops-ops-console .panelSection .head h2,
body.flightops-ops-console .monitorTitle {
  font-size: 14px;
  line-height: 1.15;
  letter-spacing: 0.02em;
}

body.flightops-ops-console .panelSection .sectionBody {
  gap: 10px !important;
  padding: 12px 14px 14px !important;
}

body.flightops-ops-console .panelSection .grid,
body.flightops-ops-console .panelSection .controls,
body.flightops-ops-console .panelSection .stats,
body.flightops-ops-console .panelSection .details,
body.flightops-ops-console .panelSection .list,
body.flightops-ops-console .panelSection .trail,
body.flightops-ops-console .panelSection .upload,
body.flightops-ops-console .panelSection .phase1Config,
body.flightops-ops-console .panelSection .contextCheckGroup {
  gap: 8px;
}

body.flightops-ops-console .panelSection .row,
body.flightops-ops-console .panelSection .item,
body.flightops-ops-console .panelSection .sensorBlock,
body.flightops-ops-console .panelSection .phase1Check,
body.flightops-ops-console .panelSection #accountSettingsCard,
body.flightops-ops-console .panelSection #smtpSettingsCard,
body.flightops-ops-console .panelSection #mpu5SettingsCard,
body.flightops-ops-console .panelSection #videoIngestSettingsCard,
body.flightops-ops-console .panelSection #viewAccessCard,
body.flightops-ops-console .panelSection #downloadsAdminCard {
  padding: 11px 12px;
  border-radius: var(--fo-radius-sm);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.025));
  border-color: rgba(132, 161, 202, 0.18);
}

body.flightops-ops-console .panelSection .itemMain,
body.flightops-ops-console .panelSection .sensorBlockBody,
body.flightops-ops-console .panelSection .phase1Toolbar,
body.flightops-ops-console .panelSection .headActions {
  gap: 6px;
}

body.flightops-ops-console .panelSection .sensorBlockHead {
  padding-bottom: 8px;
}

body.flightops-ops-console .panelSection .sensorBlockBody {
  padding-top: 8px;
}

body.flightops-ops-console .panelSection .label,
body.flightops-ops-console .panelSection .phase1Field > span,
body.flightops-ops-console .panelSection .field .label,
body.flightops-ops-console .panelSection .colorField span,
body.flightops-ops-console .panelSection .sensorBlockTitleText,
body.flightops-ops-console .panelSection .monitorMiniLabel {
  color: #cfdced;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .panelSection .value,
body.flightops-ops-console .panelSection .name,
body.flightops-ops-console .panelSection .monitorTitle,
body.flightops-ops-console .panelSection .alertListTitle {
  margin-top: 4px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
}

body.flightops-ops-console .panelSection .sub,
body.flightops-ops-console .panelSection .error,
body.flightops-ops-console .panelSection .phase1SaveStatus,
body.flightops-ops-console .panelSection .monitorMiniMeta,
body.flightops-ops-console .panelSection .monitorStatus,
body.flightops-ops-console .panelSection .monitorMeta .sub {
  font-size: 11px;
  line-height: 1.35;
}

body.flightops-ops-console .panelSection .phase1Field,
body.flightops-ops-console .panelSection .field,
body.flightops-ops-console .panelSection .colorField {
  display: grid;
  gap: 5px;
}

body.flightops-ops-console .panelSection input[type="text"],
body.flightops-ops-console .panelSection input[type="password"],
body.flightops-ops-console .panelSection input[type="email"],
body.flightops-ops-console .panelSection input[type="number"],
body.flightops-ops-console .panelSection input[type="file"],
body.flightops-ops-console .panelSection select,
body.flightops-ops-console .panelSection textarea {
  min-height: 38px;
  padding-left: 11px;
  padding-right: 11px;
}

body.flightops-ops-console .panelSection textarea {
  min-height: 88px;
  padding-top: 10px;
}

body.flightops-ops-console .panelSection .controls.settingsControls {
  align-items: start;
}

body.flightops-ops-console .panelSection .contextCheckGroup {
  display: grid;
}

body.flightops-ops-console .panelSection .contextCheckGroup .phase1Check {
  min-height: 38px;
}

body.flightops-ops-console #monitoringDockRail {
  gap: 8px;
}

body.flightops-ops-console #monitoringDock .monitorCard {
  gap: 7px;
  padding: 11px 12px;
}

body.flightops-ops-console .monitorMini,
body.flightops-ops-console .monitorSubgrid .monitorMini {
  gap: 7px;
  padding: 6px 8px;
  min-height: 34px;
  background: rgba(255, 255, 255, 0.045);
  border-color: rgba(132, 161, 202, 0.18);
}

body.flightops-ops-console #mapUtilityDrawerPanel,
body.flightops-ops-console .mapUtilityDrawerPanel {
  width: 186px;
  gap: 8px;
  padding: 10px;
}

body.flightops-ops-console .mapUtilityDrawerHeader {
  padding: 9px 8px;
}

body.flightops-ops-console .mapUtilityDrawerTitle {
  font-size: 13px;
  letter-spacing: 0.06em;
}

body.flightops-ops-console #mapUtilityDrawer .controls button,
body.flightops-ops-console #mapUtilityDrawer #mapUtilityOverlayControls button,
body.flightops-ops-console #mapUtilityDrawer .mapUtilitySectionToggle,
body.flightops-ops-console #mapUtilityReloadMount button,
body.flightops-ops-console #mapUtilityDrawer #uploadOverlayBtn {
  min-height: 34px;
  padding: 7px 8px;
  font-size: 11px;
}

body.flightops-ops-console #mapUtilityDrawer .item,
body.flightops-ops-console #mapUtilityDrawer .field,
body.flightops-ops-console #mapUtilityDrawer .upload {
  padding: 8px 9px;
  background: rgba(255, 255, 255, 0.045);
  border-color: rgba(132, 161, 202, 0.18);
}

body.flightops-ops-console #mapUtilityDrawer .label,
body.flightops-ops-console #mapUtilityDrawer .field .label,
body.flightops-ops-console #mapUtilityDrawer .colorField span {
  color: #d1deee;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console #mapUtilityDrawer .name,
body.flightops-ops-console #mapUtilityDrawer .value {
  font-size: 13px;
  line-height: 1.25;
}

body.flightops-ops-console #mapUtilityDrawer .sub,
body.flightops-ops-console #mapUtilityDrawer .phase1SaveStatus {
  font-size: 10px;
  line-height: 1.3;
}

@media (max-width: 720px) {
  body.flightops-ops-console #mapUtilityDrawerPanel,
  body.flightops-ops-console .mapUtilityDrawerPanel {
    width: min(62vw, 196px);
  }
}

/* -----------------------------------------------------------------------------
 * Fixed sidebar panel theme ownership pass
 * -----------------------------------------------------------------------------
 * Keep Display Controls visually owned by the main stylesheet so runtime panel
 * JS only has to manage geometry/open state. Settings is owned by its workspace
 * stylesheet.
 */
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] {
  left: 0 !important;
  top: var(--auth-topbar-height, var(--fo-topbar-height)) !important;
  width: 360px !important;
  max-height: calc(100vh - var(--auth-topbar-height, var(--fo-topbar-height))) !important;
  resize: none !important;
  border-radius: 0 !important;
  overflow: auto !important;
  box-shadow: 0 24px 46px rgba(2, 6, 23, 0.38) !important;
  background: linear-gradient(180deg, rgba(18, 29, 44, 0.985), rgba(10, 18, 30, 0.992)) !important;
  border: 1px solid rgba(89, 118, 151, 0.42) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] {
  border-left: 0 !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .head {
  cursor: default;
  align-items: center;
  padding: 12px 14px !important;
  border-top: 0 !important;
  background: linear-gradient(180deg, rgba(35, 50, 74, 0.99), rgba(25, 39, 58, 0.99)) !important;
  border-bottom: 1px solid rgba(82, 110, 142, 0.34) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .head h2 {
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
  color: #f8feff !important;
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .sectionBody {
  display: grid !important;
  gap: 12px !important;
  padding: 12px !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .grid,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .list {
  gap: 8px !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] button,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] button.secondary {
  border-radius: 12px !important;
  border-color: rgba(148, 163, 184, 0.18) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.04)) !important;
  color: #eef8fb !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] button:hover,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] button.secondary:hover {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.06)) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .item,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .row {
  background: rgba(236, 244, 250, 0.08) !important;
  border-color: rgba(120, 151, 186, 0.18) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .label,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .value,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .name,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .phase1SaveStatus {
  color: #e7f3ff !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .sub,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .phase1SaveStatus {
  font-size: 11px !important;
  color: #9fb7d0 !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .phase1Field span,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerBlockTitle {
  color: #9fc0de !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] select,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] input[type="number"],
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] input[type="text"],
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] input[type="password"],
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] input[type="file"] {
  border-radius: 10px !important;
  border-color: rgba(125, 155, 192, 0.26) !important;
  background: rgba(248, 250, 252, 0.98) !important;
  color: #0f172a !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .phase1Toolbar button {
  white-space: nowrap !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #opsDrawerCloseBtn {
  min-width: 34px !important;
  padding: 7px 9px !important;
  font-size: 16px !important;
  line-height: 1 !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerBlock {
  display: grid;
  gap: 10px;
  padding: 12px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(28, 41, 61, 0.98), rgba(18, 28, 43, 0.995));
  border: 1px solid rgba(97, 126, 160, 0.24);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerBlock.opsDrawerUtilityBlock {
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerBlockTitle {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerBlock.opsDrawerUtilityBlock .opsDrawerBlockTitle {
  padding: 0 2px;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerMount {
  display: grid;
  gap: 10px;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerActionRow {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .trail {
  grid-template-columns: minmax(0, 1fr) 88px;
  gap: 10px;
  align-items: center;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .mapUtilityDrawerSection {
  display: grid;
  gap: 8px;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .mapUtilitySectionToggle,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #mapUtilityOverlayControls button,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #mapUtilityReloadMount button {
  width: 100%;
  min-height: 44px;
  padding: 11px 14px;
  font-size: 12px;
  color: #eef8fb;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.03));
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 16px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .mapUtilitySectionToggle:hover,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #mapUtilityOverlayControls button:hover,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #mapUtilityReloadMount button:hover {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));
  border-color: rgba(148, 163, 184, 0.26);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .mapUtilitySectionToggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-weight: 700;
  letter-spacing: 0.01em;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #uploadOverlayBtn {
  width: 100%;
  min-height: 46px;
  padding: 12px 16px;
  font-size: 12px;
  color: #f3fffd;
  background: linear-gradient(180deg, #1aa39a, #0e6f69);
  border: 1px solid rgba(78, 205, 196, 0.34);
  border-radius: 14px;
  box-shadow: 0 14px 28px rgba(9, 68, 63, 0.28);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #uploadOverlayBtn:hover {
  background: linear-gradient(180deg, #22b5ab, #107d76);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #mapUtilityTopoBody,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #mapUtilityAttachmentsBody {
  display: grid;
  gap: 10px;
  min-height: 0;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #mapUtilityOverlayControls,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #mapUtilityAttachmentsBody {
  padding: 14px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(29, 41, 58, 0.98), rgba(21, 31, 44, 0.995));
  border: 1px solid rgba(111, 145, 184, 0.18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 14px 30px rgba(2, 6, 23, 0.24);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .mapUtilityAttachmentsHeader {
  margin-bottom: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 96px;
  gap: 10px;
  align-items: start;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #mapUtilityReloadMount {
  display: grid;
  width: 96px;
}

@media (max-width: 900px) {
  body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] {
    width: min(88vw, 360px);
  }

  body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerActionRow {
    grid-template-columns: 1fr;
  }

  body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .mapUtilityAttachmentsHeader {
    grid-template-columns: 1fr;
  }

  body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] #mapUtilityReloadMount {
    width: 100%;
  }
}

body.flightops-ops-console .casiaPreviewDock {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 2144;
  width: min(176px, calc(100vw - 44px));
  display: grid;
  gap: 8px;
  padding: 8px;
  border-radius: var(--fo-radius-md);
  background: rgba(9, 16, 28, 0.96);
  border: 1px solid rgba(129, 157, 198, 0.28);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.36);
  color: #eef5ff;
  backdrop-filter: blur(10px);
  transition: width 180ms ease, padding 180ms ease;
}

body.flightops-ops-console .casiaPreviewDock.is-expanded {
  width: min(360px, calc(100vw - 44px));
  gap: 10px;
  padding: 12px;
}

body.flightops-ops-console .casiaPreviewDock[hidden] {
  display: none !important;
}

body.flightops-ops-console .casiaPreviewDetails[hidden] {
  display: none !important;
}

body.flightops-ops-console .casiaPreviewHead,
body.flightops-ops-console .casiaPreviewHeadActions,
body.flightops-ops-console .casiaPreviewMeta,
body.flightops-ops-console .casiaPreviewDetails {
  display: grid;
  gap: 8px;
}

body.flightops-ops-console .casiaPreviewHead {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

body.flightops-ops-console .casiaPreviewHeadMain {
  display: grid;
  gap: 4px;
}

body.flightops-ops-console .casiaPreviewTitle {
  font-size: 16px;
  font-weight: 800;
  line-height: 1.15;
  color: #f8fbff;
  word-break: break-word;
}

body.flightops-ops-console .casiaPreviewSub,
body.flightops-ops-console .casiaPreviewStatus {
  font-size: 11px;
  line-height: 1.35;
  color: #b8c9df;
}

body.flightops-ops-console .casiaPreviewMeta {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.flightops-ops-console .casiaPreviewMeta .diagRow {
  margin: 0;
  padding: 8px 10px;
  border-radius: var(--fo-radius-sm);
  background: rgba(255, 255, 255, 0.045);
  border: 1px solid rgba(129, 157, 198, 0.16);
}

body.flightops-ops-console .casiaPreviewMeta .diagRow span:first-child {
  color: #9eb4cf;
}

body.flightops-ops-console .casiaPreviewMeta .diagRow span:last-child {
  color: #f8fbff;
  font-weight: 700;
}

body.flightops-ops-console .casiaPreviewBadge[data-state="live"] {
  background: rgba(34, 197, 94, 0.18);
  color: #86efac;
}

body.flightops-ops-console .casiaPreviewBadge[data-state="loading"] {
  background: rgba(59, 130, 246, 0.18);
  color: #bfdbfe;
}

body.flightops-ops-console .casiaPreviewBadge[data-state="stale"],
body.flightops-ops-console .casiaPreviewBadge[data-state="no-image"] {
  background: rgba(245, 158, 11, 0.18);
  color: #fde68a;
}

body.flightops-ops-console .casiaPreviewBadge[data-state="error"] {
  background: rgba(239, 68, 68, 0.18);
  color: #fecaca;
}

body.flightops-ops-console .casiaPreviewHero {
  display: grid;
  place-items: center;
  position: relative;
  min-height: 144px;
  padding: 4px;
  border-radius: var(--fo-radius-sm);
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(129, 157, 198, 0.16);
  overflow: hidden;
}

body.flightops-ops-console .casiaPreviewDock.is-expanded .casiaPreviewHero {
  min-height: 180px;
  padding: 8px;
}

body.flightops-ops-console .casiaPreviewHeroImg {
  width: 100%;
  max-height: 144px;
  object-fit: contain;
  border-radius: var(--fo-radius-sm);
  background: #02060c;
}

body.flightops-ops-console .casiaPreviewDock.is-expanded .casiaPreviewHeroImg {
  max-height: 280px;
}

body.flightops-ops-console .casiaPreviewHeroEmpty {
  width: 100%;
  padding: 18px 16px;
  text-align: center;
  font-size: 12px;
  line-height: 1.5;
  color: #b8c9df;
}

body.flightops-ops-console .casiaPreviewHeroCaption {
  position: absolute;
  left: 8px;
  bottom: 8px;
  max-width: calc(100% - 16px);
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(6, 12, 21, 0.78);
  border: 1px solid rgba(148, 163, 184, 0.24);
  color: #e6f0fb;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  box-shadow: 0 6px 16px rgba(2, 6, 12, 0.28);
}

body.flightops-ops-console .casiaPreviewOverlay {
  position: absolute;
  top: 8px;
  right: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
}

body.flightops-ops-console .casiaPreviewOverlayBtn {
  width: 28px;
  height: 28px;
  min-width: 28px;
  padding: 0;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(6, 12, 21, 0.82);
  border: 1px solid rgba(148, 163, 184, 0.32);
  color: #f8fbff;
  font-size: 14px;
  line-height: 1;
  box-shadow: 0 6px 16px rgba(2, 6, 12, 0.34);
}

body.flightops-ops-console .casiaPreviewOverlayBtn:hover {
  background: rgba(15, 23, 42, 0.92);
}

body.flightops-ops-console .casiaPreviewCloseBtn {
  font-size: 16px;
}

body.flightops-ops-console .casiaPreviewThumbs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
  gap: 8px;
}

body.flightops-ops-console .casiaPreviewThumb {
  display: grid;
  gap: 6px;
  padding: 8px;
  border-radius: var(--fo-radius-sm);
  border: 1px solid rgba(129, 157, 198, 0.16);
  background: rgba(255, 255, 255, 0.035);
  color: inherit;
}

body.flightops-ops-console .casiaPreviewThumb.active {
  border-color: rgba(56, 189, 248, 0.72);
  box-shadow: inset 0 0 0 1px rgba(56, 189, 248, 0.32);
}

body.flightops-ops-console .casiaPreviewThumbImg {
  width: 100%;
  height: 84px;
  object-fit: contain;
  border-radius: var(--fo-radius-sm);
  background: #02060c;
}

body.flightops-ops-console .casiaPreviewThumbCaption {
  font-size: 10px;
  line-height: 1.3;
  color: #c9d8ea;
  text-align: left;
  word-break: break-word;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerCasiaStatus {
  display: grid;
  gap: 5px;
  padding: 12px;
  border-radius: 14px;
  background: rgba(8, 16, 27, 0.74);
  border: 1px solid rgba(92, 126, 166, 0.2);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerCasiaStatusTitle {
  font-size: 14px;
  font-weight: 800;
  color: #eef8fb;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerCasiaStatusSub,
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerCasiaStatusMeta {
  font-size: 11px;
  line-height: 1.35;
  color: #9fb7d0;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerCasiaStatusPills {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerStatusPill {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 9px;
  border-radius: 999px;
  border: 1px solid rgba(112, 143, 182, 0.22);
  background: rgba(255, 255, 255, 0.045);
  color: #d8e7f5;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerStatusPill.live {
  background: rgba(34, 197, 94, 0.16);
  border-color: rgba(34, 197, 94, 0.26);
  color: #86efac;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerStatusPill.info {
  background: rgba(56, 189, 248, 0.16);
  border-color: rgba(56, 189, 248, 0.28);
  color: #bae6fd;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerStatusPill.warn {
  background: rgba(245, 158, 11, 0.16);
  border-color: rgba(245, 158, 11, 0.3);
  color: #fde68a;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerStatusPill.danger {
  background: rgba(239, 68, 68, 0.16);
  border-color: rgba(239, 68, 68, 0.3);
  color: #fecaca;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerStatusPill.active {
  background: rgba(59, 130, 246, 0.18);
  border-color: rgba(96, 165, 250, 0.34);
  color: #dbeafe;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] button.active {
  color: #e9f6ff;
  border-color: rgba(56, 189, 248, 0.76);
  background: linear-gradient(180deg, rgba(14, 116, 144, 0.92), rgba(10, 74, 112, 0.94));
  box-shadow: inset 0 0 0 1px rgba(125, 211, 252, 0.18), 0 12px 24px rgba(2, 8, 23, 0.16);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerCasiaSummaryGrid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerCasiaSummaryCard {
  display: grid;
  gap: 2px;
  padding: 9px 10px;
  border-radius: 12px;
  background: rgba(8, 16, 27, 0.62);
  border: 1px solid rgba(92, 126, 166, 0.18);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerCasiaSummaryLabel {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8ea6c2;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"] .opsDrawerCasiaSummaryValue {
  font-size: 17px;
  font-weight: 800;
  color: #eef8fb;
}

body.flightops-ops-console .casiaSensorMarkerShell {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 9px 4px 4px;
  border-radius: 999px;
  background: rgba(8, 17, 29, 0.9);
  border: 1px solid rgba(191, 219, 254, 0.18);
  box-shadow: 0 10px 24px rgba(2, 8, 23, 0.26);
  color: #e2e8f0;
  white-space: nowrap;
}

body.flightops-ops-console .casiaSensorMarkerCore {
  width: 12px;
  height: 12px;
  display: inline-block;
  border-radius: 2px;
  background: var(--casia-sensor-color, #38bdf8);
  border: 2px solid rgba(255, 255, 255, 0.92);
  transform: rotate(45deg);
  box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.42);
}

body.flightops-ops-console .casiaSensorMarkerLabel {
  font: 700 10px/1 "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .casiaSensorMarkerShell--compact {
  gap: 0;
  padding: 4px;
  background: rgba(8, 17, 29, 0.78);
}

body.flightops-ops-console .opsSiteMarker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 8px 3px 4px;
  border-radius: 999px;
  background: rgba(8, 17, 29, 0.88);
  border: 1px solid rgba(191, 219, 254, 0.16);
  box-shadow: 0 10px 24px rgba(2, 8, 23, 0.22);
  color: #e2e8f0;
  white-space: nowrap;
}

body.flightops-ops-console .opsSiteMarker--icon {
  padding-right: 4px;
}

body.flightops-ops-console .opsSiteMarker--label-only {
  padding-left: 8px;
}

body.flightops-ops-console .opsSiteMarkerSvg {
  width: 18px;
  height: 18px;
  display: block;
}

body.flightops-ops-console .opsSiteMarkerLabel {
  font: 700 10px/1 "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body.flightops-ops-console .remoteIdOperatorMarkerShell {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 8px 3px 4px;
  border-radius: 999px;
  background: rgba(17, 24, 39, 0.92);
  border: 1px solid rgba(251, 146, 60, 0.28);
  box-shadow: 0 8px 20px rgba(2, 8, 23, 0.24);
  color: #fff7ed;
  white-space: nowrap;
}

body.flightops-ops-console .remoteIdOperatorMarkerCore {
  width: 10px;
  height: 10px;
  display: inline-block;
  border-radius: 999px;
  background: var(--rid-operator-color, #fb923c);
  border: 2px solid rgba(255, 255, 255, 0.92);
  box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.42);
}

body.flightops-ops-console .remoteIdOperatorMarkerLabel {
  font: 700 10px/1 "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console {
  --auth-topbar-height: var(--fo-topbar-height-default);
}

body.flightops-ops-console #authTopbar {
  min-height: var(--auth-topbar-height);
  height: var(--auth-topbar-height);
  padding: 10px 16px;
  gap: 14px;
  background: linear-gradient(180deg, rgba(6, 18, 29, 0.97), rgba(10, 24, 38, 0.94));
  border-bottom: 1px solid rgba(150, 184, 216, 0.16);
  box-shadow: 0 16px 40px rgba(2, 9, 18, 0.34);
  backdrop-filter: blur(16px);
}

body.flightops-ops-console .authTopbarTitle {
  min-width: 280px;
  flex: 0 0 auto;
  gap: 14px;
}

body.flightops-ops-console .authTopbarTitleText strong {
  color: var(--fo-text-primary);
  font-size: 17px;
  letter-spacing: -0.02em;
}

body.flightops-ops-console .authTopbarSubtitle {
  color: rgba(175, 197, 221, 0.72);
}

body.flightops-ops-console .releaseVersionBadge {
  color: rgba(148, 174, 203, 0.76);
  text-shadow: none;
}

body.flightops-ops-console .authTopbarMenuBtn,
body.flightops-ops-console .topbarIconBtn,
body.flightops-ops-console .topNavBtn,
body.flightops-ops-console .authAccountMenuBtn {
  border-radius: 14px;
}

body.flightops-ops-console .authTopbarMenuBtn,
body.flightops-ops-console .topbarIconBtn {
  width: 44px;
  height: 44px;
  min-width: 44px;
  padding: 0;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(150, 184, 216, 0.18);
  color: var(--fo-text-primary);
  box-shadow: 0 10px 26px rgba(2, 8, 23, 0.18);
}

body.flightops-ops-console .authTopbarMenuBtn:hover,
body.flightops-ops-console .topbarIconBtn:hover,
body.flightops-ops-console .topNavBtn:hover,
body.flightops-ops-console .authAccountMenuBtn:hover,
body.flightops-ops-console .authAccountMenuBtn.open {
  background: rgba(255, 255, 255, 0.08);
}

body.flightops-ops-console .authTopbarMenuBtn.active,
body.flightops-ops-console .topbarWorkspaceGridBtn.active,
body.flightops-ops-console .topbarIconBtn.active,
body.flightops-ops-console .topNavBtn.active {
  background: linear-gradient(180deg, rgba(58, 130, 247, 0.98), rgba(37, 99, 235, 0.96));
  border-color: rgba(88, 153, 255, 0.86);
  color: #ffffff;
  box-shadow: 0 14px 30px rgba(37, 99, 235, 0.32);
}

body.flightops-ops-console .authTopbarCenter {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
}

body.flightops-ops-console .weatherTopbarStrip {
  position: relative;
  display: flex;
  align-items: stretch;
  gap: 0;
  width: 100%;
  min-width: 0;
  padding: 4px;
  border-radius: 20px;
  border: 1px solid rgba(148, 184, 221, 0.18);
  background: linear-gradient(180deg, rgba(16, 33, 53, 0.97), rgba(10, 22, 36, 0.97));
  box-shadow: 0 16px 36px rgba(2, 9, 18, 0.22);
}

body.flightops-ops-console .connectionDegradeBanner {
  position: fixed;
  top: calc(var(--runtime-health-top, var(--auth-topbar-height, 56px)) + var(--runtime-health-height, 0px) + 10px);
  right: 14px;
  z-index: 2170;
  display: flex;
  align-items: center;
  gap: 12px;
  width: min(620px, calc(100vw - 28px));
  padding: 10px 14px;
  border-radius: 16px;
  border: 1px solid rgba(245, 158, 11, 0.28);
  background: rgba(17, 25, 39, 0.94);
  color: #f8fafc;
  box-shadow: 0 16px 38px rgba(2, 9, 18, 0.28);
  backdrop-filter: blur(14px);
  pointer-events: none;
}

body.flightops-ops-console .connectionDegradeBanner[hidden] {
  display: none !important;
}

body.flightops-ops-console .connectionDegradeBanner[data-state="degraded"] {
  border-color: rgba(245, 158, 11, 0.38);
  background: linear-gradient(180deg, rgba(72, 44, 12, 0.96), rgba(39, 27, 10, 0.95));
}

body.flightops-ops-console .connectionDegradeBanner[data-state="offline"] {
  border-color: rgba(248, 113, 113, 0.44);
  background: linear-gradient(180deg, rgba(86, 22, 31, 0.97), rgba(50, 13, 19, 0.96));
}

body.flightops-ops-console .connectionDegradeBannerState {
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 88px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  color: #fff7ed;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .connectionDegradeBanner[data-state="offline"] .connectionDegradeBannerState {
  color: #fff1f2;
}

body.flightops-ops-console .connectionDegradeBannerBody {
  display: grid;
  gap: 3px;
  min-width: 0;
}

body.flightops-ops-console .connectionDegradeBannerText {
  color: #f8fafc;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
}

body.flightops-ops-console .connectionDegradeBannerMeta {
  color: rgba(226, 232, 240, 0.82);
  font-size: 11px;
  line-height: 1.35;
}

body.authLocked .connectionDegradeBanner {
  display: none !important;
}

body.flightops-ops-console .weatherTopbarStrip.is-collapsed .weatherTopbarDetails {
  display: none;
}

body.flightops-ops-console .weatherTopbarStrip:not(.is-collapsed) .weatherTopbarCollapsedSummary {
  display: none;
}

body.flightops-ops-console .weatherTopbarStatusBtn,
body.flightops-ops-console .weatherTopbarSourceBtn,
body.flightops-ops-console .weatherTopbarCollapseBtn {
  border: 0;
  box-shadow: none;
}

body.flightops-ops-console .weatherTopbarStatusBtn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 156px;
  padding: 0 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(148, 184, 221, 0.14);
  color: var(--fo-text-primary);
  transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

body.flightops-ops-console .weatherTopbarStatusBtn:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(148, 184, 221, 0.22);
}

body.flightops-ops-console .weatherTopbarStatusBtn.is-active {
  background: rgba(58, 130, 247, 0.18);
  border-color: rgba(96, 165, 250, 0.24);
  box-shadow: inset 0 0 0 1px rgba(96, 165, 250, 0.12);
}

body.flightops-ops-console .weatherTopbarStatusIcon {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  color: #b7d2ff;
  flex: 0 0 auto;
}

body.flightops-ops-console .weatherTopbarStatusIcon svg {
  width: 20px;
  height: 20px;
}

body.flightops-ops-console .weatherTopbarStatusTextWrap {
  display: grid;
  gap: 2px;
  min-width: 0;
  justify-items: start;
  text-align: left;
}

body.flightops-ops-console .weatherTopbarStatusTextWrap strong {
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .weatherTopbarStatusTextWrap small {
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(226, 236, 247, 0.72);
}

body.flightops-ops-console .weatherTopbarSourceWrap {
  position: relative;
  flex: 0 1 178px;
  min-width: 0;
}

body.flightops-ops-console .weatherTopbarSourceBtn,
body.flightops-ops-console .weatherTopbarCollapsedSummary,
body.flightops-ops-console .weatherTopbarCell {
  min-height: 46px;
}

body.flightops-ops-console .weatherTopbarSourceBtn,
body.flightops-ops-console .weatherTopbarCollapsedSummary,
body.flightops-ops-console .weatherTopbarCell {
  display: grid;
  align-content: center;
  gap: 2px;
}

body.flightops-ops-console .weatherTopbarSourceBtn,
body.flightops-ops-console .weatherTopbarCollapsedSummary {
  padding: 0 14px;
}

body.flightops-ops-console .weatherTopbarSourceBtn {
  position: relative;
  width: 100%;
  min-width: 0;
  text-align: left;
  background: transparent;
  color: var(--fo-text-primary);
}

body.flightops-ops-console .weatherTopbarSourceNote {
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(148, 184, 221, 0.72);
}

body.flightops-ops-console .weatherTopbarSourceBtn::after {
  content: "v";
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -6px;
  font-size: 11px;
  color: var(--fo-text-muted);
}

body.flightops-ops-console .weatherTopbarCellLabel {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--fo-text-muted);
}

body.flightops-ops-console .weatherTopbarCellValue,
body.flightops-ops-console .weatherTopbarCollapsedSummary {
  font-size: 12px;
  font-weight: 700;
  color: var(--fo-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .weatherTopbarCollapsedSummary {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .weatherTopbarDetails {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(86px, 1fr);
  align-items: stretch;
  flex: 1 1 auto;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  padding-right: 4px;
}

body.flightops-ops-console .weatherTopbarDetails::-webkit-scrollbar {
  display: none;
}

body.flightops-ops-console .weatherTopbarCell {
  min-width: 0;
  min-height: 46px;
  padding: 0 12px;
  border-left: 1px solid rgba(148, 184, 221, 0.12);
}

body.flightops-ops-console .weatherTopbarWideOptional {
  min-width: 108px;
}

body.flightops-ops-console .weatherTopbarCell[data-tone="good"] .weatherTopbarCellValue {
  color: #99f6b2;
}

body.flightops-ops-console .weatherTopbarCell[data-tone="watch"] .weatherTopbarCellValue {
  color: #ffd58b;
}

body.flightops-ops-console .weatherTopbarCell[data-tone="stop"] .weatherTopbarCellValue {
  color: #ffb0b0;
}

body.flightops-ops-console .weatherTopbarFlightCategoryCell {
  flex: 0 0 92px;
}

body.flightops-ops-console .weatherTopbarChip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  color: var(--fo-text-primary);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .weatherTopbarChip.is-vfr {
  background: rgba(34, 197, 94, 0.16);
  color: #9ef3c1;
}

body.flightops-ops-console .weatherTopbarChip.is-mvfr {
  background: rgba(59, 130, 246, 0.18);
  color: #abd7ff;
}

body.flightops-ops-console .weatherTopbarChip.is-ifr,
body.flightops-ops-console .weatherTopbarChip.is-lifr {
  background: rgba(239, 68, 68, 0.18);
  color: #ffb0b0;
}

body.flightops-ops-console .weatherTopbarCollapseBtn {
  min-width: 36px;
  padding: 0 10px;
  background: transparent;
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .weatherTopbarCollapseBtn:hover {
  color: var(--fo-text-primary);
}

body.flightops-ops-console .weatherTopbarSourceMenu,
body.flightops-ops-console .topbarWorkspaceMenu,
body.flightops-ops-console .authAccountMenu {
  background: linear-gradient(180deg, rgba(10, 25, 40, 0.99), rgba(7, 18, 29, 0.99));
  border: 1px solid rgba(148, 184, 221, 0.18);
  box-shadow: 0 24px 56px rgba(1, 9, 18, 0.42);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .weatherTopbarSourceMenu[hidden],
body.flightops-ops-console .topbarWorkspaceMenu[hidden],
body.flightops-ops-console .authAccountMenu[hidden],
body.flightops-ops-console .topbarIconBadge[hidden] {
  display: none !important;
}

body.flightops-ops-console .weatherTopbarSourceMenu {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  width: 220px;
  padding: 8px;
  border-radius: 16px;
  display: grid;
  gap: 4px;
  z-index: 2215;
}

body.flightops-ops-console .weatherTopbarSourceMenu button,
body.flightops-ops-console .topbarWorkspaceMenuItem {
  border-radius: 14px;
  text-align: left;
}

body.flightops-ops-console .weatherTopbarSourceMenu button {
  display: grid;
  gap: 3px;
  width: 100%;
  padding: 10px 12px;
  border: 0;
  background: transparent;
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .weatherTopbarSourceMenu button strong {
  color: var(--fo-text-primary);
  font-size: 13px;
}

body.flightops-ops-console .weatherTopbarSourceMenu button span {
  font-size: 11px;
}

body.flightops-ops-console .weatherTopbarSourceMenu button small {
  font-size: 10px;
  line-height: 1.3;
  color: rgba(148, 184, 221, 0.76);
  font-variant-numeric: tabular-nums;
}

body.flightops-ops-console .weatherTopbarSourceMenu button.active,
body.flightops-ops-console .weatherTopbarSourceMenu button:hover {
  background: rgba(255, 255, 255, 0.06);
}

body.flightops-ops-console .topNav {
  flex: 0 0 auto;
  justify-content: flex-end;
  gap: 8px;
}

body.flightops-ops-console .topNavBtn {
  padding: 10px 14px;
  border-radius: 14px;
  border: 1px solid rgba(148, 184, 221, 0.16);
  background: rgba(255, 255, 255, 0.04);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .authTopbarRight {
  flex: 0 0 auto;
  gap: 12px;
}

body.flightops-ops-console .authTopSignedIn {
  gap: 10px;
}

body.flightops-ops-console .topbarIconBtn {
  position: relative;
  display: grid;
  place-items: center;
}

body.flightops-ops-console .topbarIconBtn svg,
body.flightops-ops-console .topbarWorkspaceMenuIcon svg {
  width: 20px;
  height: 20px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.flightops-ops-console .topbarIconBadge {
  position: absolute;
  top: -5px;
  right: -4px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: #ef4444;
  color: #ffffff;
  font-size: 10px;
  font-weight: 900;
  box-shadow: 0 0 0 3px rgba(7, 18, 29, 0.96);
}

body.flightops-ops-console .topbarWorkspaceMenuWrap {
  position: relative;
  --topbar-workspace-menu-width: 326px;
  --topbar-workspace-menu-gap: 28px;
}

body.flightops-ops-console .topbarWorkspaceDots {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3px;
  width: 16px;
  height: 16px;
}

body.flightops-ops-console .topbarWorkspaceDots span {
  width: 4px;
  height: 4px;
  border-radius: 999px;
  background: currentColor;
}

body.flightops-ops-console .topbarWorkspaceMenu {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: var(--topbar-workspace-menu-width);
  padding: 14px;
  border-radius: 22px;
  display: grid;
  gap: 12px;
  z-index: 2215;
}

body.flightops-ops-console .topbarTrackLegendPanel {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: 312px;
  padding: 14px;
  border-radius: 22px;
  display: grid;
  gap: 12px;
  z-index: 2214;
  background: linear-gradient(180deg, rgba(10, 25, 40, 0.99), rgba(7, 18, 29, 0.99));
  border: 1px solid rgba(148, 184, 221, 0.18);
  box-shadow: 0 24px 56px rgba(1, 9, 18, 0.42);
  color: var(--fo-text-primary);
  opacity: 0;
  transform: translateX(18px) scale(0.97);
  transform-origin: top right;
  pointer-events: none;
  transition: opacity 0.22s ease, transform 0.24s ease;
}

body.flightops-ops-console .topbarTrackLegendPanel[hidden] {
  display: none !important;
}

body.flightops-ops-console .topbarTrackLegendPanel.is-open {
  opacity: 1;
  transform: translateX(0) scale(1);
  pointer-events: auto;
}

body.flightops-ops-console .topbarWorkspaceMenuHeader {
  display: grid;
  gap: 4px;
}

body.flightops-ops-console .topbarTrackLegendHeader {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}

body.flightops-ops-console .topbarTrackLegendHeaderCopy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

body.flightops-ops-console .topbarTrackLegendCloseBtn {
  min-width: 34px;
  width: 34px;
  height: 34px;
  padding: 0;
  border-radius: 12px;
  display: grid;
  place-items: center;
  font-size: 22px;
  line-height: 1;
  background: rgba(255, 255, 255, 0.06);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .topbarTrackLegendCloseBtn:hover {
  background: rgba(255, 255, 255, 0.12);
}

body.flightops-ops-console .topbarWorkspaceMenuTitle {
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--fo-text-primary);
}

body.flightops-ops-console .topbarTrackLegendTitle {
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--fo-text-primary);
}

body.flightops-ops-console .topbarWorkspaceMenuMeta {
  font-size: 12px;
  line-height: 1.4;
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .topbarTrackLegendMeta,
body.flightops-ops-console .topbarTrackLegendFoot {
  font-size: 12px;
  line-height: 1.45;
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .topbarWorkspaceMenuList {
  display: grid;
  gap: 10px;
}

body.flightops-ops-console .topbarTrackLegendList {
  display: grid;
  gap: 8px;
}

body.flightops-ops-console .topbarWorkspaceMenuItem {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 12px 13px;
  border: 1px solid rgba(148, 184, 221, 0.12);
  background: linear-gradient(180deg, rgba(17, 36, 58, 0.96), rgba(12, 26, 42, 0.98));
  color: var(--fo-text-primary);
}

body.flightops-ops-console .topbarWorkspaceMenuItem:hover {
  background: linear-gradient(180deg, rgba(21, 43, 68, 0.98), rgba(14, 30, 48, 0.99));
}

body.flightops-ops-console .topbarWorkspaceMenuItem.active {
  border-color: rgba(96, 165, 250, 0.34);
  box-shadow: inset 0 0 0 1px rgba(96, 165, 250, 0.16);
}

body.flightops-ops-console .topbarWorkspaceMenuIcon {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.06);
}

body.flightops-ops-console .topbarTrackLegendItem {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: start;
  padding: 11px 12px;
  border-radius: 16px;
  border: 1px solid rgba(148, 184, 221, 0.12);
  background: linear-gradient(180deg, rgba(17, 36, 58, 0.9), rgba(12, 26, 42, 0.96));
}

body.flightops-ops-console .topbarTrackLegendSwatch {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.06);
  flex: 0 0 auto;
}

body.flightops-ops-console .topbarTrackLegendSvg {
  width: 22px;
  height: 22px;
  overflow: visible;
}

body.flightops-ops-console .topbarTrackLegendBody {
  display: grid;
  gap: 3px;
  min-width: 0;
}

body.flightops-ops-console .topbarTrackLegendBody strong {
  font-size: 14px;
  color: var(--fo-text-primary);
}

body.flightops-ops-console .topbarTrackLegendBody small {
  font-size: 11px;
  line-height: 1.38;
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .topbarWorkspaceMenuBody {
  display: grid;
  gap: 3px;
  min-width: 0;
}

body.flightops-ops-console .topbarWorkspaceMenuBody strong {
  font-size: 15px;
  color: var(--fo-text-primary);
}

body.flightops-ops-console .topbarWorkspaceMenuBody small {
  font-size: 11px;
  line-height: 1.35;
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .topbarWorkspaceMenuBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  color: var(--fo-text-secondary);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .authAccountMenuBtn {
  min-width: 170px;
  padding: 9px 14px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(148, 184, 221, 0.16);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .authAccountRole {
  color: var(--fo-text-muted);
}

body.flightops-ops-console .authAccountMenu {
  min-width: 226px;
  padding: 8px;
  border-radius: 18px;
  gap: 4px;
}

body.flightops-ops-console .authAccountMenu button {
  color: var(--fo-text-primary);
  background: transparent;
  border: 0;
  border-radius: 12px;
  padding: 10px 12px;
}

body.flightops-ops-console .authAccountMenu button.active {
  background: rgba(58, 130, 247, 0.16);
  box-shadow: inset 0 0 0 1px rgba(96, 165, 250, 0.16);
}

body.flightops-ops-console .authAccountMenu button:hover {
  background: rgba(255, 255, 255, 0.06);
}

@media (max-width: 1460px) {
  body.flightops-ops-console .weatherTopbarWideOptional {
    display: none;
  }
}

@media (max-width: 1024px) {
  body.flightops-ops-console .topbarTrackLegendPanel {
    right: 0;
    top: calc(100% + 10px);
    width: 326px;
    transform: translateY(-18px) scale(0.97);
    transform-origin: top center;
  }

  body.flightops-ops-console .topbarTrackLegendPanel.is-open {
    transform: translateY(0) scale(1);
  }
}

@media (max-width: 1320px) {
  body.flightops-ops-console .weatherTopbarOptional {
    display: grid;
  }
}

@media (max-width: 1280px) {
  body.flightops-ops-console .weatherTopbarStrip {
    flex-wrap: wrap;
    row-gap: 4px;
  }

  body.flightops-ops-console .weatherTopbarStatusBtn {
    min-width: 48px;
    padding: 0 12px;
  }

  body.flightops-ops-console .weatherTopbarStatusTextWrap {
    display: none;
  }

  body.flightops-ops-console .weatherTopbarSourceWrap {
    flex: 0 1 132px;
  }

  body.flightops-ops-console .weatherTopbarCollapsedSummary {
    order: 4;
    flex: 1 1 100%;
  }

  body.flightops-ops-console .weatherTopbarDetails {
    order: 3;
    flex: 1 1 100%;
    grid-auto-columns: minmax(72px, 1fr);
    padding-right: 0;
    scrollbar-width: thin;
  }

  body.flightops-ops-console .weatherTopbarDetails::-webkit-scrollbar {
    display: block;
    height: 5px;
  }

  body.flightops-ops-console .weatherTopbarCellValue,
  body.flightops-ops-console .weatherTopbarCollapsedSummary {
    white-space: normal;
    text-overflow: clip;
  }
}

@media (max-width: 1180px) {
  body.flightops-ops-console #authTopbar {
    gap: 10px;
    padding: 10px 12px;
  }

  body.flightops-ops-console .authTopbarTitle {
    min-width: 240px;
  }

  body.flightops-ops-console .weatherTopbarStatusBtn {
    min-width: 148px;
  }

  body.flightops-ops-console .weatherTopbarSourceBtn {
    min-width: 0;
  }

  body.flightops-ops-console .weatherTopbarSourceWrap {
    flex-basis: 166px;
  }

  body.flightops-ops-console .weatherTopbarCellLabel {
    font-size: 8px;
    letter-spacing: 0.12em;
  }

  body.flightops-ops-console .weatherTopbarCellValue {
    font-size: 11px;
  }
}

@media (max-width: 1024px) {
  body.flightops-ops-console .weatherTopbarSourceWrap {
    display: none;
  }
}

/* BP: sm-plus (980) - stacked topbar */
@media (max-width: 980px) {
  body.flightops-ops-console {
    --auth-topbar-height: var(--fo-topbar-height-stacked);
  }

  body.flightops-ops-console #authTopbar {
    height: auto;
    align-items: flex-start;
    flex-wrap: wrap;
  }

  body.flightops-ops-console .authTopbarCenter {
    order: 3;
    flex: 1 1 100%;
  }

  body.flightops-ops-console .topNav {
    justify-content: flex-start;
  }

  body.flightops-ops-console .weatherTopbarStrip {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }

  body.flightops-ops-console .weatherTopbarDetails {
    grid-auto-columns: minmax(78px, 1fr);
  }

  body.flightops-ops-console .connectionDegradeBanner {
    left: 10px;
    right: 10px;
    width: auto;
    padding: 10px 12px;
    border-radius: 14px;
  }

  body.flightops-ops-console .connectionDegradeBannerState {
    min-width: 78px;
    font-size: 10px;
  }

  body.flightops-ops-console .connectionDegradeBannerText {
    font-size: 12px;
  }
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] {
  left: 0 !important;
  right: 0 !important;
  top: var(--auth-topbar-height, 64px) !important;
  bottom: 0 !important;
  width: 100% !important;
  min-width: 0 !important;
  height: calc(100vh - var(--auth-topbar-height, 64px)) !important;
  max-width: none !important;
  max-height: calc(100vh - var(--auth-topbar-height, 64px)) !important;
  resize: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  grid-template-rows: auto minmax(0, 1fr);
  background: #08101c !important;
  transition:
    width 160ms ease,
    max-width 160ms ease,
    left 160ms ease,
    right 160ms ease,
    box-shadow 160ms ease;
  --comms-safe-bottom: 18px;
  --comms-bg-page: #08101c;
  --comms-bg-surface: #0b1728;
  --comms-bg-surface2: #0f1d2f;
  --comms-bg-surface3: #12253c;
  --comms-bg-card: #0e1b2c;
  --comms-bg-input: #0b1828;
  --comms-text-pri: #edf4fb;
  --comms-text-sec: #b6c6d8;
  --comms-text-muted: #8192a8;
  --comms-accent: #3a82f7;
  --comms-accent-dim: #1e4482;
  --comms-success: #22c55e;
  --comms-warning: #f59e0b;
  --comms-danger: #ef4444;
  --comms-border-sub: #1e2837;
  --comms-border-med: #28374b;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"]:not(.panelOpen) {
  display: none !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"].panelOpen {
  display: grid !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"][data-comms-view-mode="split"] {
  left: auto !important;
  right: 0 !important;
  width: clamp(560px, 50vw, 920px) !important;
  min-width: 560px !important;
  max-width: 920px !important;
  box-shadow: -18px 0 42px rgba(0, 0, 0, 0.34) !important;
  border-left: 1px solid rgba(121, 149, 187, 0.2) !important;
  background: rgba(8, 16, 28, 0.985) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .head {
  cursor: default;
  padding: 0;
  border: 0;
  background: transparent;
  min-height: 0;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .sectionBody {
  padding: 0;
  min-height: 0;
  height: auto;
  min-width: 0;
  overflow: hidden;
  background: var(--comms-bg-page);
}

body.flightops-ops-console .commsVoiceBar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 18px 18px 12px;
  background: linear-gradient(180deg, #152538, #101d2d);
  border-top: 1px solid rgba(58, 130, 247, 0.24);
  border-bottom: 1px solid var(--comms-border-sub);
  color: var(--comms-text-pri);
}

body.flightops-ops-console .commsVoiceBarMain {
  display: flex;
  align-items: center;
  gap: 18px;
  min-width: 0;
  padding-top: 2px;
}

body.flightops-ops-console .commsVoiceBarBrand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

body.flightops-ops-console .commsVoicePulse {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: #64748b;
  box-shadow: 0 0 0 0 rgba(100, 116, 139, 0.22);
  flex: 0 0 auto;
}

body.flightops-ops-console .commsVoicePulse.is-live {
  background: var(--comms-success);
  box-shadow: 0 0 0 6px rgba(34, 197, 94, 0.14);
}

body.flightops-ops-console .commsVoiceBrandCopy,
body.flightops-ops-console .commsVoiceSpeakerCopy,
body.flightops-ops-console .commsSidebarIdentityCopy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

body.flightops-ops-console .commsVoiceBrandTop {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  min-width: 0;
}

body.flightops-ops-console .commsVoiceBrandLabel {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #d9e7f6;
}

body.flightops-ops-console .commsVoiceStatusBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: rgba(129, 146, 168, 0.16);
  border: 1px solid rgba(129, 146, 168, 0.24);
  color: #dce6f1;
}

body.flightops-ops-console .commsVoiceStatusBadge.is-live {
  background: rgba(34, 197, 94, 0.18);
  border-color: rgba(34, 197, 94, 0.32);
  color: #d9ffe6;
}

body.flightops-ops-console .commsVoiceParticipantCount,
body.flightops-ops-console .commsVoiceBrandSub {
  font-size: 13px;
  color: var(--comms-text-sec);
}

body.flightops-ops-console .commsVoiceBrandSub {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .commsVoiceSpeakerState {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding-left: 4px;
}

body.flightops-ops-console .commsVoiceSpeakerState[hidden] {
  display: none !important;
}

body.flightops-ops-console .commsVoiceSpeakerDot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--comms-success);
  box-shadow: 0 0 0 5px rgba(34, 197, 94, 0.12);
}

body.flightops-ops-console .commsVoiceSpeakerName {
  font-size: 17px;
  font-weight: 700;
  color: #f4fbff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .commsVoiceSpeakerLabel {
  font-size: 12px;
  color: var(--comms-success);
  font-weight: 700;
  letter-spacing: 0.02em;
}

body.flightops-ops-console .commsVoiceParticipantStrip {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  min-width: 0;
}

body.flightops-ops-console .commsVoiceBarActions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
  padding-top: 2px;
}

body.flightops-ops-console .commsVoiceActionBtn,
body.flightops-ops-console .commsVoiceCloseBtn {
  min-height: 40px;
  padding: 10px 14px !important;
  border-radius: 12px !important;
  border: 1px solid var(--comms-border-med) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  color: var(--comms-text-pri) !important;
  white-space: nowrap;
}

body.flightops-ops-console .commsVoiceActionBtn[hidden] {
  display: none !important;
}

body.flightops-ops-console .commsVoiceActionBtn.is-active {
  background: rgba(58, 130, 247, 0.2) !important;
  border-color: rgba(58, 130, 247, 0.44) !important;
}

body.flightops-ops-console .commsVoiceActionBtn.is-live {
  background: rgba(239, 68, 68, 0.14) !important;
  border-color: rgba(239, 68, 68, 0.32) !important;
  color: #ffe4e4 !important;
}

body.flightops-ops-console .commsVoiceActionBtn.is-ready {
  background: rgba(34, 197, 94, 0.12) !important;
  border-color: rgba(34, 197, 94, 0.28) !important;
}

body.flightops-ops-console .commsVoiceActionBtn:disabled {
  opacity: 0.48;
}

body.flightops-ops-console .commsVoiceCloseBtn {
  min-width: 42px;
  padding: 10px 0 !important;
  font-size: 18px;
  line-height: 1;
}

body.flightops-ops-console .commsSplitViewBtn {
  min-width: 112px;
}

body.flightops-ops-console .commsPrimaryLayout {
  display: grid;
  grid-template-columns: clamp(240px, 24vw, 290px) minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"][data-comms-view-mode="split"] .commsPrimaryLayout {
  grid-template-columns: clamp(190px, 23vw, 248px) minmax(0, 1fr);
}

body.flightops-ops-console .commsSidebar {
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  min-height: 0;
  min-width: 0;
  background: linear-gradient(180deg, #0c1726, #0a1422);
  border-right: 1px solid var(--comms-border-sub);
}

body.flightops-ops-console .commsSidebarIdentity {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  padding: 18px 18px 14px;
}

body.flightops-ops-console .commsSidebarName {
  font-size: 16px;
  font-weight: 800;
  color: var(--comms-text-pri);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .commsSidebarRole {
  font-size: 12px;
  color: var(--comms-text-sec);
}

body.flightops-ops-console .commsSidebarSearch {
  padding: 0 18px 16px;
}

body.flightops-ops-console .commsSidebarSearch input,
body.flightops-ops-console .commsSidebarFooter select,
body.flightops-ops-console .commsCompose textarea,
body.flightops-ops-console .commsCompact textarea {
  width: 100%;
  border: 1px solid var(--comms-border-med);
  border-radius: 14px;
  padding: 11px 12px;
  background: var(--comms-bg-input);
  color: var(--comms-text-pri);
  box-sizing: border-box;
  font: inherit;
}

body.flightops-ops-console .commsSidebarSearch input::placeholder,
body.flightops-ops-console .commsCompose textarea::placeholder,
body.flightops-ops-console .commsCompact textarea::placeholder {
  color: var(--comms-text-muted);
}

body.flightops-ops-console .commsSidebarSection {
  display: grid;
  gap: 10px;
  padding: 0 18px 18px;
}

body.flightops-ops-console .commsSidebarSection.commsDirectSection {
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 0;
  padding-top: 4px;
}

body.flightops-ops-console .commsSidebarLabel,
body.flightops-ops-console .commsSidebarFooterLabel {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #89a3bf;
}

body.flightops-ops-console .commsPrimaryThreadSection,
body.flightops-ops-console .commsDirectoryList,
body.flightops-ops-console .commsMessages {
  display: grid;
  gap: 10px;
  align-content: start;
}

body.flightops-ops-console .commsDirectoryScroll {
  min-height: 0;
  overflow-y: auto;
  padding-right: 6px;
}

body.flightops-ops-console .commsSidebarFooter {
  display: grid;
  gap: 10px;
  padding: 14px 18px 18px;
  border-top: 1px solid var(--comms-border-sub);
  background: rgba(6, 13, 21, 0.84);
}

body.flightops-ops-console .commsAudioDeviceGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.flightops-ops-console .commsAudioField {
  display: grid;
  gap: 6px;
}

body.flightops-ops-console .commsAudioField span {
  font-size: 12px;
  color: var(--comms-text-sec);
}

body.flightops-ops-console .commsSidebarFooterActions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

body.flightops-ops-console .commsSidebarStatus {
  min-height: 16px;
  font-size: 12px;
  line-height: 1.35;
  color: var(--comms-text-muted);
}

body.flightops-ops-console .commsThreadCard {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: flex-start;
  padding: 13px 14px;
  border-radius: 18px !important;
  border: 1px solid rgba(40, 55, 75, 0.9);
  background: rgba(17, 31, 49, 0.82);
  color: var(--comms-text-pri);
  text-align: left;
  transition: border-color 0.16s ease, background 0.16s ease, transform 0.16s ease;
}

body.flightops-ops-console .commsThreadCard:hover {
  border-color: rgba(58, 130, 247, 0.34);
  background: rgba(19, 35, 56, 0.92);
}

body.flightops-ops-console .commsThreadCard.active {
  background: rgba(41, 83, 144, 0.58);
  border-color: rgba(58, 130, 247, 0.48);
  box-shadow: inset 0 0 0 1px rgba(58, 130, 247, 0.08);
}

body.flightops-ops-console .commsThreadCard.voiceActive {
  box-shadow: inset 0 0 0 1px rgba(34, 197, 94, 0.1);
}

body.flightops-ops-console .commsThreadCard.offline .commsThreadTitle,
body.flightops-ops-console .commsThreadCard.offline .commsThreadPreview,
body.flightops-ops-console .commsThreadCard.offline .commsThreadTimestamp {
  opacity: 0.74;
}

body.flightops-ops-console .commsThreadLead {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-width: 0;
}

body.flightops-ops-console .commsThreadCopy {
  display: grid;
  gap: 5px;
  min-width: 0;
}

body.flightops-ops-console .commsThreadTop {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

body.flightops-ops-console .commsThreadTitle {
  font-size: 15px;
  font-weight: 700;
  color: var(--comms-text-pri);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .commsThreadPreview {
  font-size: 12px;
  color: var(--comms-text-sec);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .commsThreadMeta {
  display: grid;
  justify-items: end;
  gap: 8px;
  align-content: start;
}

body.flightops-ops-console .commsThreadTimestamp {
  font-size: 11px;
  color: var(--comms-text-muted);
}

body.flightops-ops-console .commsThreadVoicePill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.18);
  border: 1px solid rgba(34, 197, 94, 0.28);
  color: #dcffe8;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .commsChannelDot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  flex: 0 0 auto;
}

body.flightops-ops-console .commsChannelDot.is-live {
  background: var(--comms-success);
  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.12);
}

body.flightops-ops-console .commsChannelDot.is-idle {
  background: #64748b;
}

body.flightops-ops-console .commsBadge {
  min-width: 22px;
  height: 22px;
  padding: 0 7px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(58, 130, 247, 0.22);
  color: #eff6ff;
  font-size: 11px;
  font-weight: 800;
}

body.flightops-ops-console .commsOverflowBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 26px;
  padding: 0 8px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.06);
  color: var(--comms-text-sec);
  font-size: 11px;
  font-weight: 700;
}

body.flightops-ops-console .commsPaneTitle {
  font-size: 14px;
  font-weight: 800;
  color: var(--comms-text-pri);
}

body.flightops-ops-console .commsPaneSub {
  font-size: 12px;
  color: var(--comms-text-muted);
}

body.flightops-ops-console .commsAvatar {
  position: relative;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 999px;
  color: #f8fbff;
  font-size: 15px;
  font-weight: 800;
  overflow: hidden;
  flex: 0 0 auto;
  background: #64748b;
}

body.flightops-ops-console .commsAvatar.small {
  width: 26px;
  height: 26px;
  font-size: 12px;
}

body.flightops-ops-console .commsAvatar[data-role="range_controller"] {
  background: #3a82f7;
}

body.flightops-ops-console .commsAvatar[data-role="pilot"] {
  background: #22c55e;
}

body.flightops-ops-console .commsAvatar[data-role="observer"] {
  background: #8192a8;
}

body.flightops-ops-console .commsAvatar[data-role="comms_supervisor"] {
  background: #f59e0b;
}

body.flightops-ops-console .commsAvatar.is-speaking {
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.24);
}

body.flightops-ops-console .commsPresenceDot {
  position: absolute;
  right: 1px;
  bottom: 1px;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  border: 2px solid #08101c;
  background: #64748b;
}

body.flightops-ops-console .commsPresenceDot.is-online {
  background: var(--comms-success);
}

body.flightops-ops-console .commsPresenceDot.is-offline {
  background: #64748b;
}

body.flightops-ops-console .commsAvatarSlash {
  position: absolute;
  inset: 5px 16px;
  background: rgba(239, 68, 68, 0.96);
  border-radius: 999px;
  transform: rotate(45deg);
}

body.flightops-ops-console .commsRoleBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #e6eff8;
}

body.flightops-ops-console .commsRoleBadge[data-role="range_controller"] {
  background: rgba(58, 130, 247, 0.2);
  border-color: rgba(58, 130, 247, 0.3);
  color: #dcebff;
}

body.flightops-ops-console .commsRoleBadge[data-role="pilot"] {
  background: rgba(34, 197, 94, 0.2);
  border-color: rgba(34, 197, 94, 0.3);
  color: #dcffe8;
}

body.flightops-ops-console .commsRoleBadge[data-role="observer"] {
  background: rgba(129, 146, 168, 0.18);
  border-color: rgba(129, 146, 168, 0.26);
  color: #dde7f2;
}

body.flightops-ops-console .commsRoleBadge[data-role="comms_supervisor"] {
  background: rgba(245, 158, 11, 0.2);
  border-color: rgba(245, 158, 11, 0.32);
  color: #fff0cf;
}

body.flightops-ops-console .commsMessagePane {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  min-height: 0;
  min-width: 0;
  background:
    radial-gradient(circle at top left, rgba(58, 130, 247, 0.09), transparent 32%),
    linear-gradient(180deg, #09111d, #08121e 82%);
}

body.flightops-ops-console .commsThreadHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 22px 12px;
  border-bottom: 1px solid rgba(30, 40, 55, 0.95);
}

body.flightops-ops-console .commsThreadHeading {
  display: grid;
  gap: 6px;
  min-width: 0;
}

body.flightops-ops-console #commsActiveThreadTitle {
  font-size: 28px;
  font-weight: 800;
  line-height: 1.04;
  color: var(--comms-text-pri);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .commsThreadMetaRow {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

body.flightops-ops-console #commsActiveThreadSub {
  font-size: 13px;
  color: var(--comms-text-sec);
}

body.flightops-ops-console .commsThreadHeaderMeta,
body.flightops-ops-console .commsThreadAudience,
body.flightops-ops-console .commsComposeActions,
body.flightops-ops-console .commsCompactActions,
body.flightops-ops-console .commsChipRow {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

body.flightops-ops-console .commsThreadMetaPill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.05);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--comms-text-sec);
}

body.flightops-ops-console .commsThreadMetaPill.is-live {
  background: rgba(34, 197, 94, 0.18);
  border-color: rgba(34, 197, 94, 0.28);
  color: #dcffe8;
}

body.flightops-ops-console .commsThreadHeaderSide {
  display: grid;
  justify-items: end;
  gap: 10px;
}

body.flightops-ops-console #commsMainContent {
  padding: 18px 22px 10px;
  overflow: hidden;
  min-height: 0;
}

body.flightops-ops-console #commsMessageList {
  height: 100%;
  min-height: 0;
  overflow-y: auto;
  padding-right: 10px;
}

body.flightops-ops-console .commsMessages {
  gap: 12px;
  padding: 2px 0 10px;
}

body.flightops-ops-console .commsMessage {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: flex-end;
  max-width: min(820px, 86%);
}

body.flightops-ops-console .commsMessage.outbound {
  grid-template-columns: minmax(0, 1fr);
  margin-left: auto;
}

body.flightops-ops-console .commsMessage.stacked {
  margin-top: -4px;
  grid-template-columns: minmax(0, 1fr);
}

body.flightops-ops-console .commsMessage.stacked:not(.outbound) {
  margin-left: 50px;
}

body.flightops-ops-console .commsMessage.stacked .commsAvatar,
body.flightops-ops-console .commsMessage.stacked .commsMessageMeta {
  display: none;
}

body.flightops-ops-console .commsMessageBubble {
  display: grid;
  gap: 8px;
  padding: 12px 14px;
  border-radius: 18px;
  background: rgba(13, 25, 42, 0.92);
  border: 1px solid rgba(74, 101, 136, 0.35);
  box-shadow: 0 12px 22px rgba(0, 0, 0, 0.18);
}

body.flightops-ops-console .commsMessage.outbound .commsMessageBubble {
  background: rgba(20, 45, 80, 0.98);
  border-color: rgba(58, 130, 247, 0.36);
}

body.flightops-ops-console .commsMessage.rangeControl .commsMessageBubble {
  border-color: rgba(58, 130, 247, 0.34);
}

body.flightops-ops-console .commsMessageMeta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

body.flightops-ops-console .commsMessageIdentity {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

body.flightops-ops-console .commsMessageSender {
  font-size: 15px;
  font-weight: 800;
  color: #f4f9ff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.flightops-ops-console .commsMessageStamp {
  font-size: 12px;
  color: var(--comms-text-muted);
}

body.flightops-ops-console .commsMessageBody {
  font-size: 15px;
  line-height: 1.52;
  color: #d7e3f1;
  word-break: break-word;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageBody {
  color: #eaf4ff;
}

body.flightops-ops-console .commsSystemEvent {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 10px 0 4px;
  color: var(--comms-text-muted);
  font-size: 12px;
}

body.flightops-ops-console .commsSystemLine {
  flex: 1 1 42px;
  height: 1px;
  background: rgba(129, 146, 168, 0.22);
}

body.flightops-ops-console .commsSystemLabel {
  white-space: nowrap;
}

body.flightops-ops-console .commsCompose {
  display: grid;
  gap: 10px;
  padding: 16px 22px calc(18px + var(--comms-safe-bottom)) 22px;
  border-top: 1px solid rgba(30, 40, 55, 0.95);
  background: linear-gradient(180deg, rgba(8, 14, 24, 0.84), rgba(8, 14, 24, 0.98));
}

body.flightops-ops-console .commsCompose textarea {
  min-height: 68px;
  resize: vertical;
}

body.flightops-ops-console .commsComposeHint {
  margin-right: auto;
  max-width: 70%;
  font-size: 12px;
  line-height: 1.4;
  color: var(--comms-text-sec);
}

body.flightops-ops-console #commsSendBtn {
  min-width: 112px;
  height: 42px;
  padding: 0 18px;
  border-radius: 12px;
  border: 1px solid rgba(58, 130, 247, 0.38);
  background: linear-gradient(180deg, rgba(58, 130, 247, 0.3), rgba(30, 68, 130, 0.42));
  color: #eef6ff;
  font-weight: 800;
}

body.flightops-ops-console .commsEmpty {
  padding: 16px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px dashed rgba(255, 255, 255, 0.1);
  color: var(--comms-text-muted);
  font-size: 13px;
}

body.flightops-ops-console .commsLogCard,
body.flightops-ops-console .commsAssignmentRow,
body.flightops-ops-console .commsSpeaker {
  display: grid;
  gap: 6px;
  padding: 14px 16px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #dbe7f3;
}

body.flightops-ops-console .commsLogTop,
body.flightops-ops-console .commsSpeakerControls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.flightops-ops-console .commsArchiveActionRow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

body.flightops-ops-console .commsArchiveDetail {
  display: grid;
  gap: 10px;
  margin-top: 8px;
}

body.flightops-ops-console .commsArchiveThreadCard {
  background: rgba(9, 18, 29, 0.72);
}

body.flightops-ops-console .commsArchiveMessageList {
  display: grid;
  gap: 8px;
  max-height: 260px;
  padding-right: 4px;
  overflow: auto;
}

body.flightops-ops-console .commsArchiveMessageRow {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.05);
}

body.flightops-ops-console .commsSpeakerTag {
  padding: 6px 8px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.04);
  font-size: 11px;
  color: #dbe7f3;
}

body.flightops-ops-console .commsSpeakerTag.controller {
  background: rgba(58, 130, 247, 0.18);
  border-color: rgba(58, 130, 247, 0.28);
}

body.flightops-ops-console .commsSpeakerTag.live {
  background: rgba(34, 197, 94, 0.18);
  border-color: rgba(34, 197, 94, 0.26);
}

body.flightops-ops-console .commsSettingsSlider {
  display: grid;
  gap: 6px;
}

body.flightops-ops-console .commsSettingsSlider .sub {
  margin: 0;
}

body.flightops-ops-console .commsSettingsGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.flightops-ops-console .commsAssignmentRow {
  grid-template-columns: minmax(0, 1fr) 150px 180px;
  align-items: center;
}

body.flightops-ops-console .commsAssignmentMeta {
  display: grid;
  gap: 2px;
}

body.flightops-ops-console .commsAssignmentMeta .sub {
  margin: 0;
  color: #97aac0;
}

body.flightops-ops-console .commsChip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #d5e3f4;
  font-size: 12px;
}

body.flightops-ops-console .commsChip.selected,
body.flightops-ops-console .commsChip.controller {
  background: rgba(58, 130, 247, 0.18);
  border-color: rgba(58, 130, 247, 0.3);
}

body.flightops-ops-console .commsCompact {
  position: fixed;
  left: 18px;
  bottom: 18px;
  z-index: 2144;
  display: flex;
  align-items: flex-end;
  gap: 0;
  max-width: min(420px, calc(100vw - 36px));
}

body.flightops-ops-console .commsCompact[hidden] {
  display: none !important;
}

body.flightops-ops-console .commsCompactLauncher {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 62px;
  height: 62px;
  padding: 0;
  border-radius: 16px;
  border: 1px solid rgba(95, 131, 167, 0.22);
  background: linear-gradient(180deg, rgba(15, 28, 45, 0.98), rgba(8, 17, 30, 0.99));
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  color: #edf6ff;
}

body.flightops-ops-console .commsCompactLauncher svg {
  width: 22px;
  height: 22px;
  stroke: currentColor;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.flightops-ops-console .commsCompactMain {
  width: min(374px, calc(100vw - 36px));
  display: grid;
  grid-template-rows: auto 1fr auto;
  background: linear-gradient(180deg, rgba(15, 28, 45, 0.98), rgba(8, 17, 30, 0.99));
  border: 1px solid rgba(95, 131, 167, 0.22);
  border-radius: 18px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  overflow: hidden;
}

body.flightops-ops-console .commsCompact.collapsed .commsCompactLauncher {
  display: flex;
}

body.flightops-ops-console .commsCompact.collapsed .commsCompactMain {
  display: none;
}

body.flightops-ops-console .commsCompactHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(95, 131, 167, 0.18);
}

body.flightops-ops-console .commsCompactBody {
  display: grid;
  gap: 10px;
  padding: 12px 14px 10px;
  min-height: 0;
}

body.flightops-ops-console .commsCompactFooter {
  display: grid;
  gap: 8px;
  padding: 12px 14px;
  border-top: 1px solid rgba(95, 131, 167, 0.18);
}

body.flightops-ops-console .commsCompactTop {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: start;
}

body.flightops-ops-console .commsCompactTopCard {
  padding: 9px 10px;
  border: 1px solid rgba(95, 131, 167, 0.18);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.03);
}

body.flightops-ops-console .commsCompactVoicePill {
  padding: 10px 11px;
  border: 1px solid rgba(95, 131, 167, 0.18);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.05);
  min-width: 84px;
  text-align: center;
  font-size: 12px;
  color: #dbe7f3;
}

body.flightops-ops-console .commsCompactMessages {
  height: 152px;
  overflow-y: auto;
  display: grid;
  gap: 8px;
  padding-right: 4px;
}

body.flightops-ops-console .commsCompactVoiceBtn {
  min-width: 98px;
  padding: 11px 12px !important;
}

body.flightops-ops-console .commsCompactSendPrimary {
  flex: 1;
  padding: 12px 14px !important;
  border: 1px solid rgba(109, 183, 255, 0.42) !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, rgba(109, 183, 255, 0.28), rgba(40, 97, 158, 0.36)) !important;
  color: #edf6ff !important;
  font-weight: 700;
}

body.flightops-ops-console .commsCompact .commsMessage {
  max-width: 100%;
  gap: 8px;
}

body.flightops-ops-console .commsCompact .commsMessage.stacked:not(.outbound) {
  margin-left: 32px;
}

body.flightops-ops-console .commsCompact .commsMessageBubble {
  padding: 10px 12px;
  border-radius: 14px;
}

body.flightops-ops-console .commsCompact .commsMessageSender {
  font-size: 13px;
}

body.flightops-ops-console .commsCompact .commsMessageBody {
  font-size: 13px;
}

body.flightops-ops-console .commsCompact .commsAvatar {
  width: 24px;
  height: 24px;
  font-size: 11px;
}

body.flightops-ops-console .commsHidden {
  display: none !important;
}

body.flightops-ops-console .commsMapToastHost {
  position: fixed;
  top: 74px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2146;
  width: min(520px, calc(100vw - 28px));
  display: grid;
  pointer-events: none;
}

body.flightops-ops-console .commsMapToastHost[hidden] {
  display: none !important;
}

body.flightops-ops-console .commsMapToast {
  pointer-events: auto;
  display: grid;
  gap: 6px;
  padding: 12px 14px;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(15, 28, 45, 0.98), rgba(8, 17, 30, 0.99));
  border: 1px solid rgba(95, 131, 167, 0.28);
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.28);
  color: #edf6ff;
}

body.flightops-ops-console .commsMapToastTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.flightops-ops-console .commsMapToastLabel {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8fb5de;
}

body.flightops-ops-console .commsMapToastClose {
  min-width: 30px;
  height: 30px;
  padding: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  color: #edf6ff !important;
  display: grid;
  place-items: center;
  font-size: 18px;
  line-height: 1;
}

body.flightops-ops-console .commsMapToastClose:hover {
  background: rgba(255, 255, 255, 0.14) !important;
}

body.flightops-ops-console .commsMapToastSender {
  font-size: 13px;
  font-weight: 700;
  color: #eef7ff;
}

body.flightops-ops-console .commsMapToastBody {
  font-size: 14px;
  line-height: 1.35;
  color: #dce9f8;
  word-break: break-word;
}

body.flightops-ops-console .commsMapToastMeta {
  font-size: 12px;
  color: #8ea8c0;
}

body.commsPanelActive #commsCompact {
  display: none !important;
}

body.commsPanelActive:not(.commsSplitViewActive) #mapUtilityDrawer,
body.commsPanelActive:not(.commsSplitViewActive) #monitoringDock {
  display: none !important;
}

@media (max-width: 1250px) {
  body.flightops-ops-console .commsVoiceBar {
    grid-template-columns: 1fr;
  }

  body.flightops-ops-console .commsVoiceBarActions {
    justify-content: flex-start;
  }

  body.flightops-ops-console .commsVoiceParticipantStrip {
    order: 3;
  }

  body.flightops-ops-console .commsVoiceSpeakerState {
    order: 2;
    width: 100%;
  }
}

@media (max-width: 980px) {
  body.flightops-ops-console #sidebar .panelSection[data-panel="comms"][data-comms-view-mode="split"] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    box-shadow: none !important;
    border-left: 0 !important;
  }

  body.flightops-ops-console .commsPrimaryLayout {
    grid-template-columns: 1fr;
  }

  body.flightops-ops-console .commsSidebar {
    grid-template-rows: auto auto auto minmax(200px, 32vh) auto;
    border-right: 0;
    border-bottom: 1px solid var(--comms-border-sub);
  }

  body.flightops-ops-console .commsAudioDeviceGrid {
    grid-template-columns: 1fr;
  }

  body.flightops-ops-console .commsComposeHint {
    max-width: none;
  }
}

@media (max-width: 720px) {
  body.flightops-ops-console .commsVoiceBar {
    padding: 15px 14px 11px;
  }

  body.flightops-ops-console .commsSidebarIdentity,
  body.flightops-ops-console .commsSidebarSearch,
  body.flightops-ops-console .commsSidebarSection,
  body.flightops-ops-console .commsSidebarFooter,
  body.flightops-ops-console .commsThreadHeader,
  body.flightops-ops-console #commsMainContent,
  body.flightops-ops-console .commsCompose {
    padding-left: 14px;
    padding-right: 14px;
  }

  body.flightops-ops-console .commsMessage {
    max-width: 100%;
  }

  body.flightops-ops-console .commsMessage.stacked:not(.outbound) {
    margin-left: 34px;
  }

  body.flightops-ops-console .commsThreadHeaderSide {
    justify-items: start;
  }

  body.flightops-ops-console .commsThreadHeader {
    flex-direction: column;
    align-items: flex-start;
  }

  body.flightops-ops-console .commsVoiceBarActions {
    width: 100%;
  }

  body.flightops-ops-console .commsVoiceActionBtn {
    flex: 1 1 auto;
  }

  body.flightops-ops-console .commsSplitViewBtn {
    min-width: 0;
  }

  body.flightops-ops-console .commsVoiceCloseBtn {
    flex: 0 0 42px;
  }
}

.telemetryMissionWaypointShell{
  background:transparent;
  border:none;
}

.telemetryMissionWaypointIcon{
  width:22px;
  height:22px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(8,19,33,.92);
  border:1px solid rgba(125,211,252,.7);
  box-shadow:0 8px 18px rgba(2,6,23,.36);
}

.telemetryMissionWaypointIcon.is-active{
  background:rgba(59,130,246,.96);
  border-color:rgba(191,219,254,.96);
  box-shadow:0 0 0 2px rgba(96,165,250,.28),0 10px 22px rgba(30,64,175,.38);
}

.telemetryMissionWaypointNumber{
  color:#e0f2fe;
  font-size:11px;
  line-height:1;
  font-weight:700;
  letter-spacing:.01em;
}

body.flightops-ops-console .telemetryMissionPanel{
  display:grid;
  gap:12px;
  margin-top:10px;
  padding:12px;
  border-radius:14px;
  background:rgba(8,19,33,.68);
  border:1px solid rgba(125,211,252,.16);
}

body.flightops-ops-console .telemetryMissionTelemetryCard{
  display:grid;
  gap:10px;
  margin-top:10px;
  padding:12px;
  border-radius:14px;
  background:linear-gradient(180deg, rgba(9,24,39,.84), rgba(8,19,33,.72));
  border:1px solid rgba(125,211,252,.16);
}

body.flightops-ops-console .telemetryMissionTelemetryHead{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

body.flightops-ops-console .telemetryMissionTelemetryTop{
  display:grid;
  gap:3px;
  min-width:0;
}

body.flightops-ops-console .telemetryMissionTelemetryKicker{
  color:#8ea8c0;
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

body.flightops-ops-console .telemetryMissionTelemetryTitle{
  color:#eef7ff;
  font-size:18px;
  font-weight:800;
  line-height:1.05;
  overflow-wrap:anywhere;
}

body.flightops-ops-console .telemetryMissionTelemetryMeta{
  color:#9fb7d0;
  font-size:12px;
  line-height:1.4;
}

body.flightops-ops-console .missionWorkspaceBody{
  padding:12px;
}

body.flightops-ops-console .missionWorkspaceShell{
  display:grid;
  grid-template-columns:minmax(236px,268px) minmax(0,1fr);
  gap:12px;
  align-items:start;
}

body.flightops-ops-console .missionWorkspaceMenu{
  display:grid;
  gap:10px;
  align-content:start;
}

body.flightops-ops-console .missionWorkspaceMenuCard,
body.flightops-ops-console .missionWorkspaceOwnshipCard{
  display:grid;
  gap:10px;
  padding:12px;
  border-radius:14px;
  background:linear-gradient(180deg, rgba(9,24,39,.84), rgba(8,19,33,.72));
  border:1px solid rgba(125,211,252,.16);
}

body.flightops-ops-console .missionWorkspaceMenuLabel{
  color:#8ea8c0;
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

body.flightops-ops-console .missionWorkspaceMenu select{
  width:100%;
}

body.flightops-ops-console .missionWorkspaceButtonStack{
  display:grid;
  gap:8px;
}

body.flightops-ops-console .missionWorkspaceButtonStack button{
  min-width:0;
}

body.flightops-ops-console .missionWorkspaceMenu button.is-active:not(.missionToolToggle){
  background:#1d4ed8 !important;
  border-color:#1d4ed8 !important;
  color:#fff !important;
  box-shadow:0 0 0 1px rgba(29,78,216,.18),0 10px 22px rgba(37,99,235,.18);
}

body.flightops-ops-console .missionTabbedPanel{
  --fo-mp:#5da7ff;
  --fo-qgc:#a36ce0;
  --fo-sky:#f97316;
  --fo-mpu:#34b866;
  display:grid;
  gap:8px;
  width:100%;
  min-width:0;
}

body.flightops-ops-console .missionPickerRow{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
}

body.flightops-ops-console .missionPickerField{
  display:grid;
  gap:2px;
  min-width:0;
  padding:5px 7px;
  border-radius:4px;
  background:rgba(3,7,18,.36);
  border:1px solid rgba(154,179,214,.14);
}

body.flightops-ops-console .missionPickerLabel{
  color:#8798aa;
  font-size:8.5px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.flightops-ops-console .missionPickerSelect{
  width:100%;
  min-width:0;
  height:24px;
  padding:1px 4px !important;
  border:none !important;
  border-radius:3px !important;
  background:transparent !important;
  color:var(--fo-text-primary) !important;
  font-size:11px !important;
}

body.flightops-ops-console .missionTabs.ptabs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  position:relative;
  z-index:2;
  overflow:hidden;
  border-radius:5px;
  background:rgba(3,7,18,.38);
  border:1px solid rgba(154,179,214,.14);
}

body.flightops-ops-console .missionTabbedPanel.missionRtkUnavailable .missionTabs.ptabs{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

body.flightops-ops-console .missionTabButton.ptab{
  position:relative;
  min-width:0;
  min-height:28px;
  padding:6px 5px;
  border:0;
  border-right:1px solid rgba(154,179,214,.12);
  border-radius:0;
  background:transparent;
  color:#9fb7d0;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
}

body.flightops-ops-console .missionTabButton.ptab:last-child{
  border-right:0;
}

body.flightops-ops-console .missionTabButton.ptab.active{
  background:rgba(212,168,74,.14);
  color:#f0c56c;
}

body.flightops-ops-console .missionLiveDot{
  display:none;
  width:5px;
  height:5px;
  margin-right:4px;
  border-radius:999px;
  background:#34b866;
  box-shadow:0 0 8px rgba(52,184,102,.65);
  vertical-align:middle;
}

body.flightops-ops-console .missionTelemetryFresh .missionLiveDot{
  display:inline-block;
}

body.flightops-ops-console .missionTabBody{
  display:grid;
  gap:7px;
  min-width:0;
}

body.flightops-ops-console .missionTabBody[hidden]{
  display:none !important;
}

body.flightops-ops-console .missionLiveBanner{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  padding:6px 8px;
  border-radius:4px;
  background:rgba(3,7,18,.36);
  border:1px solid rgba(154,179,214,.14);
}

body.flightops-ops-console .missionLiveName{
  flex:1;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#eef7ff;
  font-size:11.5px;
  font-weight:700;
}

body.flightops-ops-console .missionProviderChip{
  display:inline-flex;
  align-items:center;
  height:15px;
  padding:0 5px;
  border-radius:3px;
  font-size:8.5px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.flightops-ops-console .missionProviderChip.mp{background:rgba(93,167,255,.14);color:var(--fo-mp);}
body.flightops-ops-console .missionProviderChip.qgc{background:rgba(163,108,224,.16);color:var(--fo-qgc);}
body.flightops-ops-console .missionProviderChip.sky{background:rgba(249,115,22,.14);color:var(--fo-sky);}
body.flightops-ops-console .missionProviderChip.mpu{background:rgba(52,184,102,.14);color:var(--fo-mpu);}

body.flightops-ops-console .missionArmedPill{
  height:15px;
  padding:0 5px;
  border-radius:3px;
  font-size:8.5px;
}

body.flightops-ops-console .missionLiveInspector{
  display:grid;
  grid-template-columns:1fr !important;
  gap:7px;
  padding:0;
  border:0;
  background:transparent;
  position:relative;
  z-index:0;
  min-width:0;
}

body.flightops-ops-console .missionTabbedPanel .missionTelemetryInspector{
  position:relative !important;
  top:auto !important;
  right:auto !important;
  width:100% !important;
  max-height:none !important;
  overflow:visible !important;
  z-index:auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.flightops-ops-console .missionTabbedPanel .missionLiveTabBody{
  position:relative;
  overflow:visible;
}

body.flightops-ops-console .missionTabbedPanel .missionTabBody{
  min-width:0;
}

body.flightops-ops-console .missionInspectorGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px;
  min-width:0;
}

body.flightops-ops-console .missionInspectorCell{
  display:grid;
  gap:1px;
  min-width:0;
  padding:5px 7px;
  border-radius:4px;
  background:rgba(3,7,18,.36);
  border:1px solid rgba(154,179,214,.13);
}

body.flightops-ops-console .missionInspectorCell.full{
  grid-column:1 / -1;
}

body.flightops-ops-console .missionInspectorCell .k{
  color:#8798aa;
  font-size:8.5px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.flightops-ops-console .missionInspectorValue{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#eef7ff;
  font-family:"JetBrains Mono","Consolas",monospace;
  font-size:11.5px;
  font-weight:700;
}

body.flightops-ops-console .missionToolsHint{
  color:#8798aa;
  font-size:10px;
  font-style:italic;
}

body.flightops-ops-console .missionToolGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
}

body.flightops-ops-console button.missionToolToggle{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 24px;
  align-items:center;
  gap:6px;
  min-height:48px;
  padding:7px 8px !important;
  border-radius:5px !important;
  background:rgba(3,7,18,.36) !important;
  border:1px solid rgba(154,179,214,.14) !important;
  color:#dce8f4 !important;
  font-size:11px !important;
  font-weight:700 !important;
  text-align:left;
  white-space:normal;
}

body.flightops-ops-console .missionToolCopy{
  display:grid;
  gap:2px;
  min-width:0;
}

body.flightops-ops-console .missionToolName{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body.flightops-ops-console .missionToolSub{
  color:#8798aa;
  font-size:9.5px;
  font-weight:600;
  line-height:1.15;
}

body.flightops-ops-console .sw-small,
body.flightops-ops-console .missionToolSwitch{
  width:22px;
  height:12px;
  border-radius:999px;
  background:#3a3f47;
  box-shadow:inset 1px 1px 0 rgba(255,255,255,.08), inset 11px 0 0 #cfc9c0;
  transition:background .16s ease, box-shadow .16s ease;
}

body.flightops-ops-console button.missionToolToggle.is-active .missionToolSwitch,
body.flightops-ops-console button.missionToolToggle.on .missionToolSwitch{
  background:#d4a84a;
  box-shadow:inset -1px 1px 0 rgba(255,255,255,.18), inset -11px 0 0 #111214;
}

body.flightops-ops-console .missionToolCarry{
  display:grid;
  gap:6px;
  padding-top:2px;
}

body.flightops-ops-console .missionLayerDisplayButton{
  min-height:30px;
}

body.flightops-ops-console .missionHiddenValueDepot,
body.flightops-ops-console .missionHiddenValueDepot[hidden]{
  display:none !important;
}

body.flightops-ops-console .missionToolsOwnshipMount:empty{
  display:none;
}

body.flightops-ops-console .missionToolsOwnshipMount .missionWorkspaceOwnshipCard{
  gap:6px;
  padding:7px 8px;
  border-radius:5px;
  background:rgba(3,7,18,.36);
  border:1px solid rgba(154,179,214,.14);
}

body.flightops-ops-console .missionWaypointPanel.telemetryMissionPanel{
  margin-top:0;
  padding:0;
  border:0;
  background:transparent;
}

body.flightops-ops-console .missionWaypointSummary .telemetryMissionSummaryCard{
  padding:6px 5px;
  border-radius:4px;
  text-align:center;
  background:rgba(3,7,18,.36);
}

body.flightops-ops-console .missionProgressBlock{
  display:grid;
  gap:5px;
  padding:7px 8px;
  border-radius:4px;
  background:rgba(3,7,18,.36);
  border:1px solid rgba(154,179,214,.13);
}

body.flightops-ops-console .missionProgressHead{
  display:flex;
  align-items:center;
  gap:8px;
  color:#8798aa;
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.flightops-ops-console .missionProgressText{
  margin-left:auto;
  color:#b8c7d7;
  font-family:"JetBrains Mono","Consolas",monospace;
  letter-spacing:0;
  text-transform:none;
}

body.flightops-ops-console .missionProgressBar{
  height:6px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(154,179,214,.12);
}

body.flightops-ops-console .missionProgressFill{
  height:100%;
  width:0;
  border-radius:inherit;
  background:linear-gradient(90deg,#34b866,#d4a84a);
}

body.flightops-ops-console .wp-list{
  display:grid;
  gap:3px;
  max-height:210px;
  overflow:auto;
}

body.flightops-ops-console .wp-row{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  align-items:center;
  gap:6px;
  padding:5px 7px;
  border-radius:4px;
  background:rgba(3,7,18,.36);
  border:1px solid rgba(154,179,214,.12);
}

body.flightops-ops-console .wp-row.active{
  background:linear-gradient(180deg, rgba(52,184,102,.08), rgba(3,7,18,.36));
  border-color:rgba(52,184,102,.38);
}

body.flightops-ops-console .wp-row .seq{
  color:#9fb7d0;
  font-family:"JetBrains Mono","Consolas",monospace;
  font-size:10px;
  font-weight:800;
}

body.flightops-ops-console .wp-row.active .seq{
  color:#34b866;
}

body.flightops-ops-console .wp-row .cmd{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body.flightops-ops-console .wp-row .meta{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#8798aa;
  font-family:"JetBrains Mono","Consolas",monospace;
  font-size:9px;
}

body.flightops-ops-console .active-badge{
  display:inline-flex;
  align-items:center;
  height:14px;
  padding:0 5px;
  border-radius:3px;
  background:rgba(52,184,102,.16);
  border:1px solid rgba(52,184,102,.48);
  color:#34b866;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}

body.flightops-ops-console .missionWorkspaceMenu button:disabled{
  opacity:.55;
  cursor:default;
}

body.flightops-ops-console .missionWorkspaceStage{
  position:relative;
  display:grid;
  gap:10px;
  min-width:0;
  align-content:start;
}

body.flightops-ops-console .telemetryMissionTelemetryToggle{
  min-width:118px;
  align-self:start;
}

body.flightops-ops-console .telemetryMissionTelemetryGrid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:8px;
}

body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"]{
  margin-top:0;
  padding:10px 12px;
  gap:10px;
  grid-template-columns:minmax(200px, 248px) minmax(0, 1fr);
  align-items:stretch;
  position:relative;
  z-index:2;
}

body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"] .telemetryMissionTelemetryHead{
  align-items:center;
  padding-right:10px;
  border-right:1px solid rgba(154,179,214,.12);
}

body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"] .telemetryMissionTelemetryTop{
  gap:2px;
}

body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"] .telemetryMissionTelemetryTitle{
  font-size:16px;
}

body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"] .telemetryMissionTelemetryMeta{
  font-size:11px;
}

body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"] .telemetryMissionTelemetryToggle{
  min-width:132px;
}

body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"] .telemetryMissionTelemetryGrid{
  grid-template-columns:repeat(6, minmax(0, 1fr));
}

body.flightops-ops-console .telemetryMissionTelemetryCell{
  display:grid;
  gap:4px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(154,179,214,.1);
}

body.flightops-ops-console .telemetryMissionTelemetryValue{
  color:var(--fo-text-primary);
  font-size:15px;
  font-weight:700;
  line-height:1.2;
  overflow-wrap:anywhere;
}

body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"] .telemetryMissionTelemetryCell{
  min-height:0;
  padding:8px 10px;
}

body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"] .telemetryMissionTelemetryValue{
  font-size:14px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body.flightops-ops-console .telemetryMissionToggleRow{
  align-items:center;
  gap:12px;
}

body.flightops-ops-console .telemetryMissionToggleButtons{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  min-width:min(320px,100%);
}

body.flightops-ops-console .telemetryMissionToggleButtons button{
  min-width:0;
}

body.flightops-ops-console .telemetryMissionPanelHead{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

body.flightops-ops-console .telemetryMissionSummaryGrid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}

body.flightops-ops-console .telemetryMissionSummaryCard{
  display:grid;
  gap:4px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(154,179,214,.1);
}

body.flightops-ops-console .telemetryMissionSummaryValue{
  color:var(--fo-text-primary);
  font-size:18px;
  font-weight:700;
  line-height:1.1;
}

body.flightops-ops-console .telemetryMissionCommandList{
  display:grid;
  gap:8px;
  max-height:196px;
  overflow:auto;
}

body.flightops-ops-console .telemetryMissionCommandItem{
  align-items:center;
}

body.flightops-ops-console .telemetryMissionCommandBadge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:58px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(58,130,247,.18);
  border:1px solid rgba(96,165,250,.24);
  color:#bfdbfe;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
}

body.flightops-ops-console .telemetryRtkMissionSummaryGrid{
  grid-template-columns:repeat(4, minmax(0, 1fr));
}

body.flightops-ops-console .telemetryRtkMissionActions{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

body.flightops-ops-console .telemetryRtkMissionActions button{
  min-width:0;
}

body.flightops-ops-console .telemetryRtkMissionSelectedShell{
  display:grid;
  gap:8px;
}

body.flightops-ops-console .telemetryRtkMissionSelectedCard{
  display:grid;
  gap:7px;
  padding:12px 12px 11px;
  border-radius:14px;
  background:linear-gradient(180deg, rgba(9,24,39,.96), rgba(5,16,28,.94));
  border:1px solid rgba(96,126,158,.22);
  box-shadow:0 14px 32px rgba(1,9,18,.26);
}

body.flightops-ops-console .telemetryRtkMissionSelectedTop{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

body.flightops-ops-console .telemetryRtkMissionModeToggle{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:2px;
  border-radius:999px;
  background:rgba(15,23,42,.5);
  border:1px solid rgba(96,126,158,.2);
}

body.flightops-ops-console .telemetryRtkMissionModeButton,
body.flightops-ops-console .telemetryRtkMissionSelectedState{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 9px;
  border-radius:999px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.flightops-ops-console .telemetryRtkMissionModeButton{
  cursor:pointer;
  background:transparent;
  border:0;
  color:#8ea8c0;
}

body.flightops-ops-console .telemetryRtkMissionModeButton[data-rtk-mission-active="1"]{
  color:#bfdbfe;
  background:rgba(58,130,247,.18);
  box-shadow:inset 0 0 0 1px rgba(96,165,250,.24);
}

body.flightops-ops-console .telemetryRtkMissionSelectedState{
  color:#e2e8f0;
  background:rgba(71,85,105,.28);
  border:1px solid rgba(148,163,184,.2);
}

body.flightops-ops-console .telemetryRtkMissionSelectedCard[data-rtk-mission-selected-tone="up"] .telemetryRtkMissionSelectedState{
  color:#dcfce7;
  background:rgba(34,197,94,.16);
  border-color:rgba(34,197,94,.26);
}

body.flightops-ops-console .telemetryRtkMissionSelectedCard[data-rtk-mission-selected-tone="survey"] .telemetryRtkMissionSelectedState{
  color:#fef3c7;
  background:rgba(245,158,11,.16);
  border-color:rgba(245,158,11,.24);
}

body.flightops-ops-console .telemetryRtkMissionSelectedCard[data-rtk-mission-selected-tone="stale"] .telemetryRtkMissionSelectedState{
  color:#fed7aa;
  background:rgba(249,115,22,.16);
  border-color:rgba(249,115,22,.24);
}

body.flightops-ops-console .telemetryRtkMissionSelectedCard[data-rtk-mission-selected-tone="down"] .telemetryRtkMissionSelectedState{
  color:#fecaca;
  background:rgba(239,68,68,.16);
  border-color:rgba(239,68,68,.24);
}

body.flightops-ops-console .telemetryRtkMissionSelectedName{
  color:#eef7ff;
  font-size:17px;
  font-weight:800;
  line-height:1.08;
}

body.flightops-ops-console .telemetryRtkMissionSelectedRoute{
  color:#d7e7f8;
  font-size:12px;
  font-weight:700;
  line-height:1.2;
}

body.flightops-ops-console .telemetryRtkMissionSelectedNote,
body.flightops-ops-console .telemetryRtkMissionSelectedMeta{
  color:#9fb7d0;
  font-size:11px;
  line-height:1.35;
}

body.flightops-ops-console .telemetryRtkMissionBaseSection{
  display:grid;
  gap:8px;
}

body.flightops-ops-console .telemetryRtkMissionBaseGrid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(118px, 1fr));
  gap:8px;
}

body.flightops-ops-console .telemetryRtkMissionBaseCard{
  display:grid;
  gap:4px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(154,179,214,.1);
}

body.flightops-ops-console .telemetryRtkMissionBaseTop{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}

body.flightops-ops-console .telemetryRtkMissionBaseState{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#64748b;
  box-shadow:0 0 0 4px rgba(100,116,139,.12);
  flex:0 0 auto;
}

body.flightops-ops-console .telemetryRtkMissionBaseState.up{
  background:#22c55e;
  box-shadow:0 0 0 4px rgba(34,197,94,.14);
}

body.flightops-ops-console .telemetryRtkMissionBaseState.stale{
  background:#f59e0b;
  box-shadow:0 0 0 4px rgba(245,158,11,.15);
}

body.flightops-ops-console .telemetryRtkMissionBaseState.survey{
  background:#facc15;
  box-shadow:0 0 0 4px rgba(250,204,21,.14);
}

body.flightops-ops-console .telemetryRtkMissionBaseState.down{
  background:#ef4444;
  box-shadow:0 0 0 4px rgba(239,68,68,.14);
}

body.flightops-ops-console .telemetryRtkMissionBaseName{
  color:#eef7ff;
  font-size:13px;
  font-weight:700;
  line-height:1.2;
  overflow-wrap:anywhere;
}

body.flightops-ops-console .telemetryRtkMissionBaseMeta{
  color:#9fb7d0;
  font-size:11px;
  line-height:1.35;
}

body.flightops-ops-console .telemetryRtkMissionInfoCard{
  display:grid;
  gap:10px;
  padding:12px;
  border-radius:14px;
  background:rgba(3,13,24,.72);
  border:1px solid rgba(96,126,158,.2);
}

body.flightops-ops-console .telemetryRtkMissionInfoGrid{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryMissionToggleButtons{
  grid-template-columns:1fr;
  min-width:0;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionPanel{
  margin-top:0;
  padding:10px;
  gap:10px;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionSummaryGrid{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionBaseGrid{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionActions{
  grid-template-columns:1fr;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionSelectedCard{
  gap:6px;
  padding:10px 11px;
  border-radius:12px;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionModeToggle{
  gap:3px;
  padding:2px;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionModeButton,
body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionSelectedState{
  min-height:20px;
  padding:0 8px;
  font-size:9px;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionSelectedName{
  font-size:15px;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionSelectedRoute{
  font-size:11px;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionInfoGrid{
  grid-template-columns:1fr;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionInfoCard{
  padding:10px;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionUrlList input{
  font-size:11px;
}

body.flightops-ops-console .missionTelemetryInspector{
  position:absolute;
  top:86px;
  right:0;
  width:min(380px, calc(100% - 12px));
  max-height:min(460px, calc(100vh - 260px));
  overflow:auto;
  z-index:4;
  padding:12px;
  border-radius:14px;
  background:rgba(3,13,24,.96);
  border:1px solid rgba(96,126,158,.24);
  box-shadow:0 24px 56px rgba(1,9,18,.42);
}

body.flightops-ops-console .missionTelemetryInspector .row{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(154,179,214,.08);
  border-radius:10px;
  padding:8px 10px;
}

body.flightops-ops-console .missionWorkspaceStage > [hidden]{
  display:none !important;
}

body.flightops-ops-console .telemetryMissionPanel[hidden],
body.flightops-ops-console .telemetryRtkMissionInfoCard[hidden]{
  display:none !important;
}

@media (max-width: 1100px){
  body.flightops-ops-console .telemetryMissionTelemetryGrid,
  body.flightops-ops-console .telemetryRtkMissionSummaryGrid,
  body.flightops-ops-console .telemetryRtkMissionInfoGrid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  body.flightops-ops-console .missionWorkspaceShell{
    grid-template-columns:1fr;
  }

  body.flightops-ops-console .missionTelemetryInspector{
    position:relative;
    top:auto;
    right:auto;
    width:100%;
    max-height:none;
  }
}

@media (max-width: 900px){
  body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"] .telemetryMissionTelemetryGrid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"]{
    grid-template-columns:1fr;
  }

  body.flightops-ops-console .telemetryMissionTelemetryCard[data-telemetry-summary-surface="main"] .telemetryMissionTelemetryHead{
    border-right:0;
    padding-right:0;
  }
}

body.flightops-ops-console .missionWorkspaceBody{
  padding:10px 10px 12px;
}

body.flightops-ops-console .missionWorkspaceShell{
  grid-template-columns:minmax(180px,190px) minmax(0,1fr);
  gap:10px;
}

body.flightops-ops-console .missionWorkspaceMenu{
  gap:8px;
}

body.flightops-ops-console .missionWorkspaceMenuCard,
body.flightops-ops-console .missionWorkspaceOwnshipCard{
  gap:8px;
  padding:10px 11px;
  border-radius:12px;
}

body.flightops-ops-console .missionWorkspaceMenuLabel{
  font-size:9px;
  letter-spacing:.14em;
}

body.flightops-ops-console .missionWorkspaceMenu .sub{
  display:none;
}

body.flightops-ops-console .missionWorkspaceButtonStack{
  gap:6px;
}

body.flightops-ops-console .missionWorkspaceButtonStack button{
  min-width:0;
  padding:8px 10px;
  border-radius:10px;
  font-size:12px;
}

body.flightops-ops-console .missionWorkspaceStage{
  gap:8px;
}

body.flightops-ops-console .missionWorkspaceStage .missionTelemetryInspector{
  display:none !important;
}

body.flightops-ops-console .telemetryMissionPanel{
  margin-top:0;
  padding:10px 11px;
  border-radius:12px;
}

body.flightops-ops-console .telemetryMissionPanelHead{
  gap:10px;
}

body.flightops-ops-console .telemetryMissionSummaryGrid{
  gap:6px;
}

body.flightops-ops-console .telemetryMissionSummaryCard{
  padding:8px 10px;
  border-radius:10px;
}

body.flightops-ops-console .telemetryMissionSummaryValue{
  font-size:16px;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryMissionToggleButtons{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionPanel{
  margin-top:0;
  padding:0;
  gap:8px;
  background:transparent;
  border:0;
  overflow:visible;
}

body.flightops-ops-console .missionWorkspaceMenu .telemetryRtkMissionPanel > .telemetryMissionPanelHead{
  gap:8px;
}

body.flightops-ops-console .telemetryRtkMissionActions{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:6px;
}

body.flightops-ops-console .telemetryRtkMissionActions button{
  min-width:0;
  padding:8px 10px;
  border-radius:10px;
  font-size:12px;
}

body.flightops-ops-console .telemetryRtkMissionBaseSection{
  gap:6px;
}

body.flightops-ops-console .telemetryRtkMissionBaseGrid{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:6px;
}

body.flightops-ops-console .telemetryRtkMissionBaseCard.telemetryRtkMissionBaseChip{
  display:flex;
  align-items:center;
  min-height:0;
  padding:7px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(154,179,214,.12);
}

body.flightops-ops-console button.telemetryRtkMissionBaseCard.telemetryRtkMissionBaseChip{
  width:100%;
  appearance:none;
  cursor:pointer;
  color:inherit;
  text-align:left;
}

body.flightops-ops-console .telemetryRtkMissionBaseCard.telemetryRtkMissionBaseChip[data-rtk-mission-base-tone="stale"]{
  background:rgba(245,158,11,.12);
  border-color:rgba(245,158,11,.22);
}

body.flightops-ops-console .telemetryRtkMissionBaseCard.telemetryRtkMissionBaseChip[data-rtk-mission-base-tone="survey"]{
  background:rgba(250,204,21,.12);
  border-color:rgba(250,204,21,.22);
}

body.flightops-ops-console .telemetryRtkMissionBaseCard.telemetryRtkMissionBaseChip[data-rtk-mission-base-tone="down"]{
  background:rgba(239,68,68,.1);
  border-color:rgba(239,68,68,.18);
}

body.flightops-ops-console .telemetryRtkMissionBaseCard.telemetryRtkMissionBaseChip[data-rtk-mission-selected="1"]{
  background:rgba(37,99,235,.16);
  border-color:rgba(96,165,250,.3);
  box-shadow:0 0 0 1px rgba(96,165,250,.14);
}

body.flightops-ops-console .telemetryRtkMissionBaseCard.telemetryRtkMissionBaseChip .telemetryRtkMissionBaseTop{
  width:100%;
  gap:7px;
}

body.flightops-ops-console .telemetryRtkMissionBaseCard.telemetryRtkMissionBaseChip .telemetryRtkMissionBaseState{
  width:8px;
  height:8px;
  box-shadow:none;
}

body.flightops-ops-console .telemetryRtkMissionBaseCard.telemetryRtkMissionBaseChip .telemetryRtkMissionBaseName{
  font-size:11px;
  font-weight:700;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body.flightops-ops-console .telemetryRtkMissionBaseCard.telemetryRtkMissionBaseChip .telemetryRtkMissionBaseMeta{
  display:none;
}

body.flightops-ops-console .telemetryRtkMissionInfoCard{
  gap:8px;
  padding:10px 11px;
  border-radius:12px;
  background:rgba(3,13,24,.94);
  border:1px solid rgba(96,126,158,.22);
  box-shadow:0 16px 34px rgba(1,9,18,.34);
}

body.flightops-ops-console .telemetryRtkMissionSummaryGrid{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:6px;
}

body.flightops-ops-console .telemetryRtkMissionInfoGrid{
  grid-template-columns:1fr;
  gap:6px;
}

body.flightops-ops-console .telemetryRtkMissionUrlList{
  grid-template-columns:1fr;
}

body.flightops-ops-console .telemetryRtkMissionUrlList input{
  font-size:11px;
  padding:7px 9px;
}

body.flightops-ops-console .missionTelemetryFloatingShell{
  position:fixed;
  top:calc(var(--runtime-health-top, var(--auth-topbar-height, 56px)) + var(--runtime-health-height, 0px));
  left:0;
  right:0;
  z-index:2190;
  display:grid;
  gap:0;
  padding:0;
  pointer-events:none;
}

body.flightops-ops-console .missionTelemetryFloatingShell[hidden]{
  display:none !important;
}

body.flightops-ops-console .missionTelemetryFloatingRibbon{
  display:grid;
  grid-template-columns:minmax(220px, 300px) minmax(0, 1fr);
  gap:8px;
  align-items:stretch;
  width:100%;
  padding:10px 14px 12px;
  border-radius:0 0 16px 0;
  background:linear-gradient(180deg, rgba(9,24,39,.98), rgba(6,18,31,.96));
  border:1px solid rgba(125,211,252,.18);
  border-top:0;
  box-shadow:0 18px 40px rgba(2,8,18,.28);
  pointer-events:auto;
}

body.flightops-ops-console .missionTelemetryFloatingIdentity{
  display:grid;
  gap:4px;
  min-width:0;
  padding-right:10px;
  align-content:center;
}

body.flightops-ops-console .missionTelemetryFloatingKicker{
  color:#8ea8c0;
  font-size:9px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

body.flightops-ops-console .missionTelemetryFloatingTitle{
  color:#eef7ff;
  font-size:16px;
  font-weight:800;
  line-height:1.05;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body.flightops-ops-console .missionTelemetryFloatingMeta{
  color:#9fb7d0;
  font-size:11px;
  line-height:1.35;
  overflow-wrap:anywhere;
}

body.flightops-ops-console .missionTelemetryFloatingMetrics{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(92px, 1fr));
  gap:6px;
  min-width:0;
}

body.flightops-ops-console .missionTelemetryFloatingMetric{
  display:grid;
  gap:4px;
  min-width:0;
  padding:8px 10px;
  border-radius:10px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(154,179,214,.1);
}

body.flightops-ops-console .missionTelemetryFloatingMetricLabel{
  color:#8ea8c0;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

body.flightops-ops-console .missionTelemetryFloatingMetricValue{
  color:#eef7ff;
  font-size:13px;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body.flightops-ops-console .missionTelemetryFloatingMetric.is-muted .missionTelemetryFloatingMetricValue{
  color:#8ea8c0;
}

body.flightops-ops-console .missionTelemetryFloatingCard{
  display:none !important;
}

body.flightops-ops-console.authLocked .missionTelemetryFloatingShell{
  display:none !important;
}

@media (max-width: 1340px){
  body.flightops-ops-console .missionTelemetryFloatingRibbon{
    grid-template-columns:minmax(208px, 260px) minmax(0, 1fr);
  }
}

@media (max-width: 1180px){
  body.flightops-ops-console .missionWorkspaceShell{
    grid-template-columns:1fr;
  }

  body.flightops-ops-console .telemetryRtkMissionBaseGrid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  body.flightops-ops-console .missionTelemetryFloatingShell{
    padding:0;
  }
}

@media (max-width: 900px){
  body.flightops-ops-console .missionWorkspaceMenu .telemetryMissionToggleButtons,
  body.flightops-ops-console .telemetryRtkMissionActions,
  body.flightops-ops-console .telemetryMissionSummaryGrid{
    grid-template-columns:1fr;
  }

  body.flightops-ops-console .missionTelemetryFloatingRibbon{
    grid-template-columns:1fr;
  }

  body.flightops-ops-console .missionTelemetryFloatingIdentity{
    padding-right:0;
    padding-bottom:6px;
    border-bottom:1px solid rgba(154,179,214,.12);
  }
}

body.flightops-ops-console{
  --flightops-comms-drawer-width:clamp(320px,21vw,392px);
  --flightops-comms-drawer-gap:16px;
  --flightops-comms-control-offset:0px;
  --flightops-comms-map-edge-gap:0px;
}

body.flightops-ops-console.commsPanelActive{
  --flightops-comms-control-offset:calc(var(--flightops-comms-drawer-width) + var(--flightops-comms-drawer-gap));
  --flightops-comms-map-edge-gap:10px;
}

body.flightops-ops-console #commsCompact{
  display:none !important;
}

body.flightops-ops-console.commsPanelActive #mapUtilityDrawer,
body.flightops-ops-console.commsPanelActive #monitoringDock{
  display:flex !important;
  right:var(--flightops-comms-control-offset) !important;
}

body.flightops-ops-console.commsPanelActive #monitoringDock.monitoringHidden{
  display:none !important;
}



body.flightops-ops-console #mapUtilityDrawer,
body.flightops-ops-console #monitoringDock{
  right:0;
  transition:transform .24s ease;
}

body.flightops-ops-console.commsPanelActive #sidebar{
  z-index:2190 !important;
}

body.flightops-ops-console .connectionDegradeBanner{
  right:calc(14px + var(--flightops-comms-control-offset));
  transition:translate .24s ease,opacity .18s ease;
  will-change:translate;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"],
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"]:not(.panelOpen),
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"].panelOpen{
  display:grid !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"]{
  position:fixed;
  left:auto !important;
  right:0 !important;
  top:calc(var(--auth-topbar-height,64px) + 16px) !important;
  bottom:16px !important;
  width:var(--flightops-comms-drawer-width) !important;
  min-width:0 !important;
  height:auto !important;
  max-width:none !important;
  max-height:calc(100vh - var(--auth-topbar-height,64px) - 32px) !important;
  border:1px solid rgba(120,150,188,.22) !important;
  border-right:0 !important;
  border-radius:0 !important;
  box-shadow:-24px 0 46px rgba(2,9,18,.34) !important;
  background:linear-gradient(180deg,rgba(7,18,31,.985),rgba(8,17,29,.992)) !important;
  overflow:hidden !important;
  opacity:0;
  pointer-events:none;
  transform:translateX(24px);
  transition:opacity .2s ease,transform .24s ease;
  z-index:2191 !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"].panelOpen{
  opacity:1;
  transform:translateX(0);
  pointer-events:auto;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .head{
  min-height:0;
  padding:calc(var(--auth-topbar-height,64px) + 12px) 12px 6px;
  background:linear-gradient(180deg,rgba(15,32,52,.94),rgba(10,21,35,.78));
  border-bottom:1px solid rgba(120,150,188,.14);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .sectionBody{
  padding:0 12px 20px;
  min-height:0;
  overflow:hidden;
  background:transparent;
}

body.flightops-ops-console .commsDrawerHeader{
  display:grid;
  gap:10px;
}

body.flightops-ops-console .commsDrawerPrimaryRow{
  display:grid;
  gap:10px;
}

body.flightops-ops-console .commsDrawerBrand{
  display:grid;
  gap:4px;
  min-width:0;
}

body.flightops-ops-console .commsDrawerControls{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto auto auto;
  gap:8px;
  align-items:end;
}

body.flightops-ops-console .commsMicField{
  display:grid;
  gap:4px;
  min-width:0;
}

body.flightops-ops-console .commsMicField span{
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--fo-text-muted);
}

body.flightops-ops-console .commsMicField select{
  min-width:0;
  min-height:36px;
  border-radius:12px;
}

body.flightops-ops-console .commsDrawerVoiceRow{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}

body.flightops-ops-console .commsDrawerVoiceMeta{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

body.flightops-ops-console .commsDrawerModeRow{
  display:grid;
  gap:10px;
}

body.flightops-ops-console .commsLaneStrip{
  display:flex;
  align-items:center;
  gap:8px;
}

body.flightops-ops-console .commsLaneBtn{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:96px;
  min-height:34px;
  padding:0 12px !important;
  border-radius:999px !important;
}

body.flightops-ops-console .commsLaneLead{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-width:0;
}

body.flightops-ops-console .commsLaneLabel{
  font-size:12px;
  font-weight:700;
  color:inherit;
}

body.flightops-ops-console .commsLaneDot{
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--fo-success);
  box-shadow:0 0 0 4px rgba(34,197,94,.12);
}

body.flightops-ops-console .commsDirectQuickStrip{
  display:flex;
  align-items:center;
  gap:8px;
  overflow:auto;
  min-height:36px;
  padding:2px 0;
}

body.flightops-ops-console .commsDirectQuickStrip::-webkit-scrollbar{
  height:6px;
}

body.flightops-ops-console .commsQuickRecipientBtn{
  position:relative;
  width:34px;
  height:34px;
  min-width:34px;
  padding:0 !important;
  display:grid;
  place-items:center;
  border-radius:999px !important;
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(148,184,221,.14) !important;
}

body.flightops-ops-console .commsQuickRecipientBtn.active{
  border-color:rgba(96,165,250,.52) !important;
  box-shadow:0 0 0 1px rgba(96,165,250,.24);
}

body.flightops-ops-console .commsQuickRecipientBtn .commsAvatar{
  width:30px;
  height:30px;
  font-size:12px;
}

body.flightops-ops-console .commsQuickRecipientBadge{
  position:absolute;
  top:-3px;
  right:-2px;
  min-width:16px;
  height:16px;
  padding:0 4px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(58,130,247,.96);
  color:#fff;
  font-size:9px;
  font-weight:800;
  box-shadow:0 6px 12px rgba(2,9,18,.2);
}

body.flightops-ops-console .commsQuickRecipientEmpty{
  font-size:11px;
  color:var(--fo-text-muted);
}

body.flightops-ops-console .commsDrawerMessagePane{
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  min-height:0;
  border:1px solid rgba(148,184,221,.12);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(10,21,36,.96),rgba(7,16,27,.98));
  overflow:hidden;
}

body.flightops-ops-console .commsDrawerMessagePane .commsThreadHeader{
  display:grid;
  gap:10px;
  padding:12px 14px 10px;
  border-bottom:1px solid rgba(148,184,221,.12);
  background:rgba(255,255,255,.02);
}

body.flightops-ops-console .commsThreadHeading{
  display:grid;
  gap:6px;
  min-width:0;
}

body.flightops-ops-console .commsThreadMetaRow{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

body.flightops-ops-console .commsThreadHeaderSide{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

body.flightops-ops-console #commsActiveThreadTitle{
  font-size:18px;
  font-weight:800;
  color:var(--fo-text-primary);
  letter-spacing:-.02em;
}

body.flightops-ops-console #commsActiveThreadSub{
  font-size:12px;
  color:var(--fo-text-secondary);
}

body.flightops-ops-console .commsThreadHeaderMeta{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}

body.flightops-ops-console .commsThreadMetaPill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:0 9px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(148,184,221,.14);
  color:var(--fo-text-secondary);
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.flightops-ops-console .commsThreadMetaPill.is-live{
  background:rgba(34,197,94,.16);
  border-color:rgba(34,197,94,.24);
  color:#dcfce7;
}

body.flightops-ops-console .commsThreadAudience{
  display:flex;
  align-items:center;
  gap:6px;
}

body.flightops-ops-console .commsMessageStage{
  min-height:0;
  overflow:hidden;
  padding:0 12px 0 14px;
}

body.flightops-ops-console #commsMessageList{
  height:100%;
  min-height:0;
  overflow-y:auto;
  padding:12px 2px 12px 0;
}

body.flightops-ops-console .commsMessages{
  display:grid;
  gap:9px;
  align-content:start;
}

body.flightops-ops-console .commsMessage{
  max-width:92%;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(148,184,221,.14);
}

body.flightops-ops-console .commsMessage.outbound{
  margin-left:auto;
  background:rgba(58,130,247,.18);
  border-color:rgba(96,165,250,.24);
}

body.flightops-ops-console .commsMessageMeta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  flex-wrap:wrap;
  font-size:11px;
  color:var(--fo-text-muted);
}

body.flightops-ops-console .commsMessageMeta strong{
  color:var(--fo-text-primary);
}

body.flightops-ops-console .commsMessage.rangeControl .commsMessageMeta strong{
  color:#bfdbfe;
}

body.flightops-ops-console .commsMessageBody{
  font-size:13px;
  line-height:1.45;
  color:var(--fo-text-primary);
}

body.flightops-ops-console .commsCompose{
  display:grid;
  gap:10px;
  padding:12px 14px 14px;
  border-top:1px solid rgba(148,184,221,.12);
  background:rgba(255,255,255,.02);
}

body.flightops-ops-console .commsDrawerStatus{
  font-size:11px;
  color:var(--fo-text-secondary);
  line-height:1.35;
}

body.flightops-ops-console .commsCompose textarea{
  min-height:74px;
  max-height:180px;
  border-radius:14px;
}

body.flightops-ops-console .commsComposeActions{
  display:flex;
  align-items:flex-start;
  gap:10px;
}

body.flightops-ops-console #commsSendBtn{
  min-width:88px;
  min-height:38px;
  padding:0 14px;
}

body.flightops-ops-console .commsComposeHint{
  margin-right:auto;
  font-size:11px;
  line-height:1.35;
  color:var(--fo-text-muted);
}

body.flightops-ops-console .commsVoiceActionBtn,
body.flightops-ops-console .commsVoiceCloseBtn{
  min-height:36px;
  padding:0 12px !important;
  border-radius:12px !important;
  font-size:12px;
  white-space:nowrap;
}

body.flightops-ops-console .commsVoiceCloseBtn{
  width:36px;
  min-width:36px;
  padding:0 !important;
}

body.flightops-ops-console .commsVoiceParticipantStrip{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  min-height:30px;
}

body.flightops-ops-console .commsVoiceParticipantStrip .commsAvatar{
  width:28px;
  height:28px;
  font-size:11px;
}

body.flightops-ops-console .commsVoiceSpeakerState{
  display:flex;
  align-items:center;
  gap:8px;
}

body.flightops-ops-console .commsVoiceSpeakerName{
  font-size:13px;
  line-height:1.1;
}

body.flightops-ops-console .commsVoiceSpeakerLabel,
body.flightops-ops-console .commsVoiceParticipantCount{
  font-size:11px;
}

body.flightops-ops-console .commsCondensedHeader{
  display:grid;
  gap:4px;
}

body.flightops-ops-console .commsCondensedTopbar{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:6px;
}

body.flightops-ops-console .commsCondensedStatus{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  min-width:0;
  width:100%;
}

body.flightops-ops-console .commsCondensedActions{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:4px;
  flex-wrap:wrap;
  width:100%;
  min-width:0;
  position:relative;
  overflow:visible;
}

body.flightops-ops-console .commsCondensedActions > *{
  flex:0 0 auto;
}

body.flightops-ops-console .commsConversationSwitch{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
}

body.flightops-ops-console .commsLaneBtn{
  min-width:58px;
}

body.flightops-ops-console .commsLaneBtn.active{
  background:rgba(58,130,247,.14) !important;
  border-color:rgba(96,165,250,.42) !important;
  color:#f5fbff !important;
  box-shadow:0 0 0 1px rgba(96,165,250,.18) !important;
}

body.flightops-ops-console .commsCondensedMuteBtn,
body.flightops-ops-console .commsCondensedVoiceBtn{
  min-width:auto;
}

body.flightops-ops-console .commsAudioPopover{
  position:relative;
}

body.flightops-ops-console .commsDirectPicker{
  position:relative;
  overflow:visible;
  z-index:20;
}

body.flightops-ops-console .commsDirectPicker > summary{
  list-style:none;
}

body.flightops-ops-console .commsDirectPicker > summary::-webkit-details-marker{
  display:none;
}

body.flightops-ops-console .commsDirectPickerPanel{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  right:auto;
  z-index:18;
  width:min(236px,calc(var(--flightops-comms-drawer-width) - 16px));
  max-width:calc(var(--flightops-comms-drawer-width) - 16px);
  max-height:min(320px,calc(100vh - var(--auth-topbar-height,64px) - 72px));
  overflow:auto;
  display:grid;
  gap:6px;
  padding:8px;
  border-radius:14px;
  border:1px solid rgba(120,150,188,.22);
  background:linear-gradient(180deg,rgba(16,31,49,.98),rgba(10,20,34,.99));
  box-shadow:0 18px 32px rgba(2,9,18,.36);
}

body.flightops-ops-console .commsDirectPickerList{
  display:grid;
  gap:6px;
}

body.flightops-ops-console .commsDirectPickerItem{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(148,184,221,.12);
  background:rgba(255,255,255,.03);
  color:#eaf4ff;
  text-align:left;
}

body.flightops-ops-console .commsDirectPickerItem:hover{
  border-color:rgba(96,165,250,.28);
  background:rgba(58,130,247,.09);
}

body.flightops-ops-console .commsDirectPickerItem.active{
  border-color:rgba(96,165,250,.42);
  background:rgba(58,130,247,.14);
}

body.flightops-ops-console .commsDirectPickerMain{
  min-width:0;
  flex:1 1 auto;
}

body.flightops-ops-console .commsDirectPickerName{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
  font-weight:700;
}

body.flightops-ops-console .commsDirectPickerMeta{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}

body.flightops-ops-console .commsDirectPickerPresence{
  width:8px;
  height:8px;
  border-radius:999px;
  background:#64748b;
}

body.flightops-ops-console .commsDirectPickerPresence.is-online{
  background:#22c55e;
}

body.flightops-ops-console .commsDirectPickerPresence.is-offline{
  background:#64748b;
}

body.flightops-ops-console .commsDirectPickerLive{
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
  color:#4ade80;
}

body.flightops-ops-console .commsDirectPickerUnread{
  min-width:18px;
  height:18px;
  padding:0 6px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#ef4444;
  color:#fff;
  font-size:10px;
  font-weight:800;
}

body.flightops-ops-console .commsDirectPickerEmpty{
  padding:10px 12px;
  font-size:11px;
  color:var(--fo-text-muted);
}

body.flightops-ops-console .commsAudioPopover > summary{
  list-style:none;
}

body.flightops-ops-console .commsAudioPopover > summary::-webkit-details-marker{
  display:none;
}

body.flightops-ops-console .commsAudioPopoverPanel{
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  z-index:8;
  width:232px;
  display:grid;
  gap:10px;
  padding:12px;
  border-radius:14px;
  border:1px solid rgba(120,150,188,.22);
  background:linear-gradient(180deg,rgba(16,31,49,.98),rgba(10,20,34,.99));
  box-shadow:0 18px 32px rgba(2,9,18,.36);
}

body.flightops-ops-console .commsAudioPopoverField{
  display:grid;
  gap:4px;
}

body.flightops-ops-console .commsAudioPopoverField span{
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--fo-text-muted);
}

body.flightops-ops-console .commsAudioPopoverField select{
  min-width:0;
  min-height:36px;
  border-radius:10px;
}

body.flightops-ops-console .commsVoiceDeviceRefreshBtn{
  min-height:34px;
  justify-content:center;
  width:100%;
}

body.flightops-ops-console .commsSwitchboardStrip{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  min-height:0;
}

body.flightops-ops-console .commsSwitchboardBtn{
  position:relative;
  width:34px;
  min-width:34px;
  height:34px;
  min-height:34px;
  padding:0 !important;
  display:grid;
  place-items:center;
  border-radius:999px !important;
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(148,184,221,.14) !important;
  box-shadow:none !important;
  overflow:hidden;
}

body.flightops-ops-console .commsSwitchboardBtn.active{
  border-color:rgba(96,165,250,.46) !important;
  box-shadow:0 0 0 1px rgba(96,165,250,.2) !important;
  background:rgba(58,130,247,.1) !important;
}

body.flightops-ops-console .commsSwitchboardBtn.is-speaking{
  box-shadow:0 0 0 1px rgba(34,197,94,.2), 0 0 0 4px rgba(34,197,94,.08) !important;
}

body.flightops-ops-console .commsSwitchboardBtn.is-range{
  width:auto;
  min-width:auto;
  height:30px;
  min-height:30px;
  padding:0 12px !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.flightops-ops-console .commsSwitchboardBtn[data-role="range_controller"]{
  background:rgba(58,130,247,.12) !important;
}

body.flightops-ops-console .commsSwitchboardBtn[data-role="pilot"]{
  background:rgba(34,197,94,.12) !important;
}

body.flightops-ops-console .commsSwitchboardBtn[data-role="observer"]{
  background:rgba(129,146,168,.12) !important;
}

body.flightops-ops-console .commsSwitchboardBtn[data-role="comms_supervisor"]{
  background:rgba(245,158,11,.12) !important;
}

body.flightops-ops-console .commsSwitchboardToken{
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1;
  color:#f5fbff;
}

body.flightops-ops-console .commsSwitchboardPresence{
  position:absolute;
  right:6px;
  bottom:6px;
  width:8px;
  height:8px;
  border-radius:999px;
  border:1px solid rgba(8,17,29,.92);
  background:#64748b;
}

body.flightops-ops-console .commsSwitchboardPresence.is-online{
  background:var(--fo-success);
}

body.flightops-ops-console .commsSwitchboardPresence.is-offline{
  background:#64748b;
}

body.flightops-ops-console .commsSwitchboardSlash{
  position:absolute;
  inset:10px 20px;
  background:rgba(239,68,68,.96);
  border-radius:999px;
  transform:rotate(45deg);
}

body.flightops-ops-console .commsSwitchboardBadge{
  position:absolute;
  top:-4px;
  right:-4px;
  min-width:16px;
  height:16px;
  padding:0 4px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(58,130,247,.98);
  color:#fff;
  font-size:9px;
  font-weight:800;
  box-shadow:0 6px 12px rgba(2,9,18,.22);
}

body.flightops-ops-console .commsThreadHeaderCondensed{
  padding:4px 2px 6px 2px !important;
  gap:2px;
  background:transparent !important;
  border-bottom:1px solid rgba(148,184,221,.08) !important;
}

body.flightops-ops-console .commsThreadHeaderCondensed #commsActiveThreadTitle{
  font-size:14px;
  line-height:1.04;
}

body.flightops-ops-console .commsThreadHeaderCondensed .commsThreadHeaderSide{
  justify-items:end;
  align-content:start;
}

body.flightops-ops-console .commsThreadHeaderCondensed .commsThreadMetaRow{
  gap:6px;
}

body.flightops-ops-console .commsThreadHeaderCondensed .commsThreadHeaderMeta{
  gap:4px;
}

body.flightops-ops-console .commsThreadHeaderCondensed .commsThreadMetaPill{
  padding:3px 7px;
  font-size:10px;
  letter-spacing:.03em;
}

body.flightops-ops-console .commsVoiceBrandSub,
body.flightops-ops-console #commsActiveThreadSub,
body.flightops-ops-console .commsComposeHint{
  display:none !important;
}

body.flightops-ops-console .commsThreadAudience{
  display:none;
}

body.flightops-ops-console .commsDrawerMessagePane{
  border:none;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  min-height:0;
  height:100%;
  width:100%;
  flex:1 1 auto;
  min-width:0;
}

body.flightops-ops-console .commsMessageStage{
  padding:0;
  min-height:0;
}

body.flightops-ops-console #commsMessageList{
  padding:4px 0 8px;
  scrollbar-gutter:stable;
  overflow-y:auto;
  overflow-x:hidden;
}

body.flightops-ops-console .commsMessages{
  gap:6px;
  padding:0;
}

body.flightops-ops-console .commsMessage{
  display:block;
  width:100%;
  max-width:100%;
  padding:0;
  border-radius:0;
  background:transparent;
  border:0;
}

body.flightops-ops-console .commsMessage.outbound{
  margin-left:auto;
  background:transparent;
  border:0;
}

body.flightops-ops-console .commsMessage.stacked{
  margin-top:-3px;
}

body.flightops-ops-console .commsMessage.stacked:not(.outbound){
  margin-left:0;
}

body.flightops-ops-console .commsMessageHeader{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  margin:0 0 2px;
  color:var(--fo-text-muted);
  width:fit-content;
  max-width:min(100%,90%);
  padding:0 2px;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageHeader{
  justify-content:flex-end;
  margin-left:auto;
}

body.flightops-ops-console .commsMessageBubble{
  display:block;
  padding:8px 12px;
  border-radius:12px;
  width:fit-content;
  max-width:min(100%,90%);
  background:rgba(241,245,249,.92);
  border:1px solid rgba(203,213,225,.96);
  box-shadow:none;
  color:#0f172a;
}

body.flightops-ops-console .commsMessageSender{
  display:inline-block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:calc(100% - 64px);
  font-size:11px;
  font-weight:700;
  color:rgba(226,232,240,.94);
}

body.flightops-ops-console .commsMessageStamp{
  flex:0 0 auto;
  margin-left:auto;
  font-size:10px;
  color:rgba(148,163,184,.96);
}

body.flightops-ops-console .commsMessage.outbound .commsMessageBubble{
  margin-left:auto;
  background:rgba(226,232,255,.96);
  border-color:rgba(191,201,255,.98);
}

body.flightops-ops-console .commsMessage.rangeControl:not(.outbound) .commsMessageBubble{
  background:rgba(232,240,255,.96);
  border-color:rgba(191,219,254,.98);
}

body.flightops-ops-console .commsMessage.stacked .commsMessageHeader{
  display:none;
}

body.flightops-ops-console .commsCompose{
  gap:6px;
  padding:8px 0 0;
  border-top:1px solid rgba(148,184,221,.08);
  background:transparent;
}

body.flightops-ops-console .commsCompose textarea{
  min-height:54px;
  max-height:150px;
  padding:10px 12px;
  border-radius:10px;
  resize:none;
}

body.flightops-ops-console .commsComposeActions{
  justify-content:flex-end;
  gap:6px;
}

body.flightops-ops-console .commsComposeActions #commsSendBtn{
  min-width:78px;
  padding:0 14px !important;
  min-height:34px;
}

body.flightops-ops-console .commsVoiceActionBtn,
body.flightops-ops-console .commsVoiceCloseBtn{
  min-height:32px;
  padding:0 10px !important;
  border-radius:10px !important;
  font-size:11px;
}

body.flightops-ops-console .commsVoiceCloseBtn{
  width:32px;
  min-width:32px;
  font-size:16px;
}

body.flightops-ops-console .commsVoiceParticipantCount{
  color:var(--fo-text-muted);
}

body.flightops-ops-console .commsVoiceSpeakerState{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:0;
  border:0;
  background:transparent;
}

body.flightops-ops-console .commsVoiceSpeakerLabel{
  display:none;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"]{
  grid-template-rows:auto minmax(0,1fr);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .head{
  padding:calc(var(--auth-topbar-height,64px) + 6px) 4px 4px;
  overflow:visible;
  position:relative;
  z-index:6;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .sectionBody{
  display:flex;
  padding:0 4px 8px;
  min-width:0;
}

body.flightops-ops-console #commsPanelCloseBtn{
  margin-left:auto;
}

@media (max-width: 1400px){
  body.flightops-ops-console .commsCondensedStatus{
    width:100%;
  }

  body.flightops-ops-console .commsCondensedActions{
    width:100%;
    justify-content:flex-start;
  }
}

@media (max-width: 1120px){
  body.flightops-ops-console{
    --flightops-comms-drawer-width:min(350px,calc(100vw - 12px));
  }

  body.flightops-ops-console .commsVoiceParticipantCount{
    display:none;
  }

  body.flightops-ops-console .commsVoiceSpeakerState{
    display:none !important;
  }

  body.flightops-ops-console .commsVoiceActionBtn,
  body.flightops-ops-console .commsVoiceCloseBtn{
    font-size:10px;
    padding:0 8px !important;
  }

  body.flightops-ops-console .commsLaneBtn{
    min-width:52px;
  }

  body.flightops-ops-console .commsMessage{
    max-width:100%;
  }

  body.flightops-ops-console .commsCompose textarea{
    min-height:52px;
  }

  body.flightops-ops-console .commsDirectPickerPanel{
    width:min(228px,calc(var(--flightops-comms-drawer-width) - 12px));
    max-width:calc(var(--flightops-comms-drawer-width) - 12px);
  }
}

@media (max-width:1180px){
  body.flightops-ops-console{
    --flightops-comms-drawer-width:min(360px,calc(100vw - 18px));
  }

  body.flightops-ops-console #sidebar .panelSection[data-panel="comms"][data-comms-view-mode="split"]{
    width:min(100%,760px) !important;
    min-width:0 !important;
    max-width:760px !important;
  }

  body.flightops-ops-console #sidebar .panelSection[data-panel="comms"][data-comms-view-mode="split"] .commsPrimaryLayout{
    grid-template-columns:220px minmax(0,1fr);
  }

  body.flightops-ops-console .commsDrawerControls{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  body.flightops-ops-console .commsMicField{
    grid-column:1 / -1;
  }
}

@media (max-width:900px){
  body.flightops-ops-console{
    --flightops-comms-drawer-width:min(360px,calc(100vw - 10px));
  }

  body.flightops-ops-console #sidebar .panelSection[data-panel="comms"]{
    top:0 !important;
    bottom:0 !important;
    border-radius:0 !important;
  }

  body.flightops-ops-console .commsComposeActions{
    flex-direction:column;
  }

  body.flightops-ops-console #commsSendBtn{
    width:100%;
  }

  body.flightops-ops-console .commsCondensedActions{
    gap:4px;
  }

  body.flightops-ops-console .commsConversationSwitch{
    width:100%;
  }

  body.flightops-ops-console .commsLaneBtn{
    flex:1 1 0;
  }

  body.flightops-ops-console .commsAudioPopoverPanel{
    left:0;
    right:auto;
    width:min(228px,calc(var(--flightops-comms-drawer-width) - 12px));
  }
}

/* Comms Drawer Option 2 Reset */
body.flightops-ops-console{
  --flightops-comms-drawer-width:min(404px,calc(100vw - 12px));
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"].panelOpen{
  left:auto !important;
  right:0 !important;
  top:var(--auth-topbar-height,64px) !important;
  bottom:0 !important;
  width:var(--flightops-comms-drawer-width) !important;
  min-width:320px !important;
  max-width:calc(100vw - 6px) !important;
  height:calc(100vh - var(--auth-topbar-height,64px)) !important;
  max-height:calc(100vh - var(--auth-topbar-height,64px)) !important;
  background:#f5f7fb !important;
  border-left:1px solid rgba(191,201,219,.9) !important;
  border-top:0 !important;
  border-radius:0 !important;
  box-shadow:-12px 0 34px rgba(15,23,42,.16) !important;
  overflow:hidden !important;
  z-index:2141 !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .head{
  padding:0 10px 0 !important;
  background:#f5f7fb !important;
  border:0 !important;
  min-height:0;
  overflow:visible;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .sectionBody{
  display:flex;
  padding:0 10px 10px !important;
  min-width:0;
  background:#f5f7fb !important;
}

body.flightops-ops-console .commsCondensedHeader{
  display:grid;
  width:100%;
  gap:0;
}

body.flightops-ops-console .commsCondensedTopbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  min-width:0;
  padding:8px 0;
  border-bottom:1px solid rgba(203,213,225,.92);
  background:rgba(255,255,255,.78);
}

body.flightops-ops-console .commsCondensedActions{
  order:1;
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:nowrap;
  min-width:0;
  overflow:visible;
}

body.flightops-ops-console .commsCondensedActions > *{
  flex:0 0 auto;
}

body.flightops-ops-console .commsConversationSwitch{
  display:inline-flex;
  align-items:center;
  gap:4px;
  min-width:0;
  padding:3px;
  border-radius:999px;
  background:rgba(207,215,231,.68);
}

body.flightops-ops-console .commsCondensedStatus{
  order:2;
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
  width:auto;
}

body.flightops-ops-console .commsVoiceBrandTop{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-width:0;
}

body.flightops-ops-console .commsVoiceBrandLabel{
  font-size:11px;
  font-weight:700;
  color:#5f7187;
}

body.flightops-ops-console .commsVoicePulse{
  width:8px;
  height:8px;
  border-radius:999px;
  background:#94a3b8;
}

body.flightops-ops-console .commsVoicePulse.is-live{
  background:#35c76f;
  box-shadow:0 0 0 4px rgba(53,199,111,.16);
}

body.flightops-ops-console .commsVoiceStatusBadge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  border:1px solid rgba(203,213,225,.98);
  background:rgba(241,245,249,.92);
  color:#41536a;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.flightops-ops-console .commsVoiceStatusBadge.is-live{
  border-color:rgba(134,239,172,.96);
  background:rgba(220,252,231,.94);
  color:#166534;
}

body.flightops-ops-console .commsVoiceParticipantCount{
  color:#718399;
  font-size:10px;
  font-weight:700;
  white-space:nowrap;
}

body.flightops-ops-console .commsVoiceBrandSub,
body.flightops-ops-console .commsVoiceSpeakerState,
body.flightops-ops-console #commsActiveThreadSub,
body.flightops-ops-console .commsThreadAudience,
body.flightops-ops-console .commsComposeHint{
  display:none !important;
}

body.flightops-ops-console .commsVoiceActionBtn,
body.flightops-ops-console .commsVoiceCloseBtn,
body.flightops-ops-console .commsLaneBtn,
body.flightops-ops-console .commsAudioPopover > summary,
body.flightops-ops-console .commsDirectPicker > summary{
  min-height:30px;
  padding:0 10px !important;
  border-radius:10px !important;
  border:1px solid rgba(203,213,225,.96) !important;
  background:#ffffff !important;
  box-shadow:none !important;
  color:#122033 !important;
  font-size:11px;
  font-weight:700;
}

body.flightops-ops-console .commsConversationSwitch .commsLaneBtn,
body.flightops-ops-console .commsConversationSwitch .commsDirectPicker > summary{
  border-color:transparent !important;
  background:transparent !important;
}

body.flightops-ops-console .commsLaneBtn{
  min-width:58px;
}

body.flightops-ops-console .commsLaneBtn.active,
body.flightops-ops-console .commsDirectPicker > summary.active{
  background:#ffffff !important;
  border-color:#ffffff !important;
  color:#0f172a !important;
  box-shadow:0 1px 4px rgba(15,23,42,.08) !important;
}

body.flightops-ops-console .commsVoiceActionBtn.is-live,
body.flightops-ops-console .commsVoiceActionBtn.is-ready,
body.flightops-ops-console .commsVoiceActionBtn.is-active{
  border-color:rgba(79,140,255,.9) !important;
  background:rgba(79,140,255,.1) !important;
  color:#214a93 !important;
}

body.flightops-ops-console .commsVoiceActionBtn[disabled],
body.flightops-ops-console .commsVoiceCloseBtn[disabled]{
  opacity:.56;
}

body.flightops-ops-console .commsVoiceCloseBtn{
  width:30px;
  min-width:30px;
  font-size:15px;
}

body.flightops-ops-console .commsDirectPicker{
  position:relative;
  z-index:12;
}

body.flightops-ops-console .commsDirectPickerPanel,
body.flightops-ops-console .commsAudioPopoverPanel{
  top:calc(100% + 8px);
  z-index:20;
  border-radius:14px;
  border:1px solid rgba(203,213,225,.98);
  background:rgba(255,255,255,.98);
  box-shadow:0 16px 32px rgba(15,23,42,.16);
}

body.flightops-ops-console .commsDirectPickerPanel{
  left:0;
  right:auto;
  width:min(236px,calc(var(--flightops-comms-drawer-width) - 28px));
  max-width:calc(var(--flightops-comms-drawer-width) - 28px);
}

body.flightops-ops-console .commsAudioPopoverPanel{
  right:0;
  width:226px;
}

body.flightops-ops-console .commsAudioPopoverField span{
  color:#718399;
}

body.flightops-ops-console .commsAudioPopoverField select{
  min-height:34px;
  border-radius:10px;
  border:1px solid rgba(203,213,225,.96);
  background:#ffffff;
  color:#122033;
}

body.flightops-ops-console .commsDrawerStatus{
  font-size:11px;
  line-height:1.35;
  color:#6b7b91;
}

body.flightops-ops-console .commsDirectPickerItem{
  border-radius:10px;
  border:1px solid rgba(226,232,240,.96);
  background:rgba(248,250,252,.96);
  color:#122033;
}

body.flightops-ops-console .commsDirectPickerItem:hover{
  border-color:rgba(79,140,255,.34);
  background:rgba(79,140,255,.08);
}

body.flightops-ops-console .commsDirectPickerItem.active{
  border-color:rgba(79,140,255,.42);
  background:rgba(79,140,255,.14);
}

body.flightops-ops-console .commsDirectPickerName{
  color:#122033;
}

body.flightops-ops-console .commsDirectPickerUnread{
  background:#ef4444;
}

body.flightops-ops-console .commsThreadHeaderCondensed{
  padding:8px 2px 8px !important;
  gap:4px;
  background:transparent !important;
  border-bottom:1px solid rgba(203,213,225,.92) !important;
}

body.flightops-ops-console .commsThreadHeaderCondensed #commsActiveThreadTitle{
  font-size:15px;
  line-height:1.08;
  color:#0f172a;
}

body.flightops-ops-console .commsThreadHeaderCondensed .commsThreadMetaRow{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}

body.flightops-ops-console .commsThreadHeaderCondensed .commsThreadHeaderMeta{
  display:flex;
  align-items:center;
  gap:4px;
}

body.flightops-ops-console .commsThreadHeaderCondensed .commsThreadMetaPill{
  min-height:20px;
  padding:0 7px;
  border-radius:999px;
  border:1px solid rgba(203,213,225,.96);
  background:rgba(241,245,249,.96);
  color:#526377;
  font-size:10px;
  font-weight:800;
  letter-spacing:.04em;
}

body.flightops-ops-console .commsThreadHeaderCondensed .commsThreadMetaPill.is-live{
  border-color:rgba(134,239,172,.98);
  background:rgba(220,252,231,.96);
  color:#166534;
}

body.flightops-ops-console #commsUnreadBadge{
  min-width:22px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  background:rgba(79,140,255,.12);
  border:1px solid rgba(79,140,255,.24);
  color:#214a93;
  font-size:10px;
  font-weight:800;
}

body.flightops-ops-console .commsDrawerMessagePane{
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  min-height:0;
  height:100%;
  width:100%;
  flex:1 1 auto;
  min-width:0;
  border:0;
  border-radius:0;
  background:#f5f7fb;
  box-shadow:none;
}

body.flightops-ops-console #commsMainContent.commsMessageStage,
body.flightops-ops-console .commsMessageStage{
  padding:0;
  min-height:0;
  overflow:hidden;
}

body.flightops-ops-console #commsMessageList{
  height:100%;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:10px 4px 10px 0;
  scrollbar-gutter:stable;
}

body.flightops-ops-console .commsMessages{
  display:grid;
  align-content:start;
  gap:7px;
  padding:0 2px 0 0;
}

body.flightops-ops-console .commsMessage{
  display:grid;
  justify-items:start;
  width:100%;
  max-width:100%;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
}

body.flightops-ops-console .commsMessage.outbound{
  justify-items:end;
  margin-left:0;
  background:transparent;
  border:0;
}

body.flightops-ops-console .commsMessage.stacked{
  margin-top:-1px;
}

body.flightops-ops-console .commsMessageHeader{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:auto;
  max-width:calc(100% - 10px);
  margin:0 0 2px;
  padding:0 2px;
  color:#718399;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageHeader{
  justify-content:flex-end;
  margin-left:0;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageSender{
  display:none;
}

body.flightops-ops-console .commsMessage.stacked .commsMessageHeader{
  display:none;
}

body.flightops-ops-console .commsMessageBubble{
  display:block;
  width:auto;
  max-width:calc(100% - 8px);
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(203,213,225,.96);
  background:#ffffff;
  box-shadow:none;
  color:#122033;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageBubble{
  margin-left:0;
  background:#e8edff;
  border-color:rgba(191,201,255,.98);
}

body.flightops-ops-console .commsMessage.rangeControl:not(.outbound) .commsMessageBubble{
  background:#edf4ff;
  border-color:rgba(191,219,254,.98);
}

body.flightops-ops-console .commsMessageSender{
  display:inline-block;
  min-width:0;
  max-width:calc(100% - 64px);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#5c6d83;
  font-size:11px;
  font-weight:700;
}

body.flightops-ops-console .commsMessageStamp{
  flex:0 0 auto;
  margin-left:auto;
  color:#8796ab;
  font-size:10px;
}

body.flightops-ops-console .commsMessageBody{
  color:#122033;
  font-size:14px;
  line-height:1.44;
  word-break:break-word;
}

body.flightops-ops-console .commsCompose{
  display:grid;
  gap:8px;
  padding:10px 0 0;
  border-top:1px solid rgba(203,213,225,.92);
  background:rgba(255,255,255,.9);
}

body.flightops-ops-console .commsCompose textarea{
  min-height:46px;
  max-height:120px;
  padding:11px 12px;
  border-radius:10px;
  border:1px solid rgba(203,213,225,.96);
  background:#ffffff;
  color:#122033;
  resize:none;
}

body.flightops-ops-console .commsCompose textarea::placeholder{
  color:#718399;
}

body.flightops-ops-console .commsComposeActions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}

body.flightops-ops-console #commsSendBtn{
  min-width:72px;
  height:34px;
  padding:0 14px;
  border-radius:10px;
  border:1px solid rgba(79,140,255,.95) !important;
  background:#4f8cff !important;
  color:#ffffff !important;
  font-size:12px;
  font-weight:800;
  box-shadow:none !important;
}

@media (max-width:1180px){
  body.flightops-ops-console{
    --flightops-comms-drawer-width:min(392px,calc(100vw - 8px));
  }

  body.flightops-ops-console .commsCondensedTopbar{
    grid-template-columns:1fr;
    gap:6px;
  }

  body.flightops-ops-console .commsCondensedStatus{
    justify-content:flex-start;
  }

  body.flightops-ops-console .commsCondensedActions{
    flex-wrap:wrap;
  }
}

@media (max-width:900px){
  body.flightops-ops-console{
    --flightops-comms-drawer-width:calc(100vw - 6px);
  }

  body.flightops-ops-console #sidebar .panelSection[data-panel="comms"].panelOpen{
    top:calc(var(--auth-topbar-height,64px) + 12px) !important;
    width:var(--flightops-comms-drawer-width) !important;
    min-width:0 !important;
  }

  body.flightops-ops-console .commsConversationSwitch{
    width:auto;
  }

  body.flightops-ops-console .commsAudioPopoverPanel,
  body.flightops-ops-console .commsDirectPickerPanel{
    width:min(232px,calc(100vw - 28px));
    max-width:calc(100vw - 28px);
  }
}

/* Comms Drawer Option 2 Refinement */
body.flightops-ops-console{
  --flightops-comms-drawer-gap:16px;
  --flightops-comms-map-edge-gap:8px;
}

body.flightops-ops-console.commsPanelActive{
  --flightops-comms-control-offset:calc(var(--flightops-comms-drawer-width) + var(--flightops-comms-drawer-gap));
}

body.flightops-ops-console #mapChatLauncher{
  position:fixed;
  top:calc(var(--auth-topbar-height,64px) + 122px);
  right:0;
  z-index:2140 !important;
  width:40px;
  min-width:40px;
  height:42px;
  padding:0;
  display:grid;
  place-items:center;
  border-radius:var(--fo-radius-sm) 0 0 var(--fo-radius-sm);
  border:1px solid rgba(121,149,187,.18);
  border-right:0;
  background:rgba(10,20,33,.96);
  color:var(--fo-text-primary);
  box-shadow:var(--fo-shadow-1);
  transition:translate .24s ease,background .18s ease,color .18s ease,box-shadow .18s ease,opacity .18s ease;
  will-change:translate;
}

body.flightops-ops-console #mapChatLauncher.workspaceSuppressed{
  display:none !important;
}

body.flightops-ops-console #mapChatLauncher svg{
  width:20px;
  height:20px;
  stroke:currentColor;
  fill:none;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

body.flightops-ops-console #mapChatLauncher.active{
  background:linear-gradient(180deg,rgba(59,130,246,.96),rgba(29,78,216,.98));
  color:#fff;
  box-shadow:0 12px 28px rgba(37,99,235,.28);
}

body.flightops-ops-console.commsPanelActive #mapUtilityDrawer,
body.flightops-ops-console.commsPanelActive #monitoringDock,
body.flightops-ops-console.commsPanelActive #mapChatLauncher{
  right:calc(var(--flightops-comms-control-offset) + 5px) !important;
}

body.flightops-ops-console .commsCondensedTopbar{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:10px;
  padding:8px 0 6px;
}

body.flightops-ops-console .commsCondensedStatus{
  min-width:0;
  gap:3px;
}

body.flightops-ops-console .commsCondensedStatus .commsVoiceBrandTop{
  min-width:0;
  flex-wrap:wrap;
  gap:6px;
}

body.flightops-ops-console .commsCondensedActions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
  gap:6px;
  min-width:0;
}

body.flightops-ops-console .commsCondensedActions > *{
  flex:0 0 auto;
}

body.flightops-ops-console .commsCondensedActions .commsVoiceActionBtn,
body.flightops-ops-console .commsCondensedActions .commsAudioPopoverBtn,
body.flightops-ops-console .commsCondensedActions .commsVoiceCloseBtn{
  min-width:auto;
  padding:7px 10px;
}

body.flightops-ops-console .commsThreadHeaderCondensed{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:8px;
  padding:7px 0 8px !important;
}

body.flightops-ops-console .commsThreadHeaderPrimary{
  min-width:0;
  display:grid;
  gap:4px;
}

body.flightops-ops-console .commsThreadLaneBar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-width:0;
}

body.flightops-ops-console .commsConversationSwitch{
  flex:0 0 auto;
  width:auto;
}

body.flightops-ops-console .commsThreadLaneBar .commsThreadMetaRow{
  flex:1 1 auto;
  min-width:0;
  justify-content:flex-end;
}

body.flightops-ops-console .commsThreadLaneBar #commsActiveThreadTitle{
  flex:0 1 auto;
  min-width:0;
  max-width:160px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body.flightops-ops-console #commsActiveThreadSub{
  font-size:11px;
  line-height:1.25;
  color:#6b7d92;
}

body.flightops-ops-console .commsThreadHeaderSide{
  align-items:flex-start;
  gap:6px;
}

body.flightops-ops-console .commsDirectPicker{
  position:relative;
}

body.flightops-ops-console .commsThreadHeaderCondensed .commsDirectPickerPanel{
  left:auto;
  right:0;
  top:calc(100% + 6px);
}

body.flightops-ops-console .commsMessage{
  width:100%;
}

body.flightops-ops-console .commsMessageHeader{
  width:100%;
  max-width:none;
  padding:0 2px;
}

body.flightops-ops-console .commsMessageSender{
  max-width:calc(100% - 78px);
}

body.flightops-ops-console .commsMessageBubble{
  max-width:calc(100% - 2px);
}

body.flightops-ops-console .commsMessage.outbound .commsMessageBubble{
  background:#e8edff;
  color:#122033;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageBody{
  color:#122033 !important;
}

body.flightops-ops-console .commsCompose{
  padding:8px 0 0;
}

body.flightops-ops-console .commsCompose textarea{
  width:100%;
}

@media (max-width:1180px){
  body.flightops-ops-console .commsCondensedTopbar{
    grid-template-columns:1fr;
  }

  body.flightops-ops-console .commsCondensedActions{
    justify-content:flex-start;
  }

  body.flightops-ops-console .commsThreadHeaderCondensed{
    grid-template-columns:1fr;
  }

  body.flightops-ops-console .commsThreadLaneBar{
    flex-wrap:wrap;
    justify-content:flex-start;
  }

  body.flightops-ops-console .commsThreadLaneBar .commsThreadMetaRow{
    justify-content:flex-start;
  }
}

@media (max-width:900px){
  body.flightops-ops-console #mapChatLauncher{
    top:calc(var(--auth-topbar-height,64px) + 118px);
  }

  body.flightops-ops-console .commsCondensedActions{
    gap:5px;
  }

  body.flightops-ops-console .commsCondensedActions .commsVoiceActionBtn,
  body.flightops-ops-console .commsCondensedActions .commsAudioPopoverBtn,
  body.flightops-ops-console .commsCondensedActions .commsVoiceCloseBtn{
    padding:7px 9px;
  }

  body.flightops-ops-console .commsThreadLaneBar #commsActiveThreadTitle{
    max-width:100%;
  }
}

/* Comms Drawer Density Polish */
body.flightops-ops-console .commsCondensedTopbar{
  gap:8px;
  padding:6px 0 4px;
}

body.flightops-ops-console .commsCondensedStatus{
  gap:2px;
}

body.flightops-ops-console #commsVoiceStatusSub{
  font-size:10px;
  line-height:1.18;
}

body.flightops-ops-console .commsCondensedActions{
  gap:5px;
}

body.flightops-ops-console .commsCondensedActions .commsVoiceActionBtn,
body.flightops-ops-console .commsCondensedActions .commsAudioPopoverBtn,
body.flightops-ops-console .commsCondensedActions .commsVoiceCloseBtn{
  min-height:34px;
  padding:6px 10px;
}

body.flightops-ops-console .commsThreadHeaderCondensed{
  gap:6px;
  padding:5px 0 6px !important;
}

body.flightops-ops-console .commsThreadHeaderPrimary{
  gap:3px;
}

body.flightops-ops-console .commsThreadLaneBar{
  gap:6px;
}

body.flightops-ops-console #commsActiveThreadSub{
  font-size:10px;
  line-height:1.18;
}

body.flightops-ops-console #commsUnreadBadge{
  min-width:20px;
  height:20px;
  padding:0 6px;
}

body.flightops-ops-console #commsMessageList{
  padding:8px 2px 8px 0;
}

body.flightops-ops-console .commsMessages{
  gap:5px;
  padding:0;
}

body.flightops-ops-console .commsMessageHeader{
  width:min(88%,520px);
  max-width:calc(100% - 4px);
  margin:0 0 1px;
  padding:0 1px;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageHeader{
  margin-right:0;
}

body.flightops-ops-console .commsMessageBubble{
  max-width:min(88%,520px);
  padding:7px 10px;
  border-radius:9px;
}

body.flightops-ops-console .commsMessageSender{
  flex:1 1 auto;
  min-width:0;
  max-width:none;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageBubble{
  margin-left:auto;
}

body.flightops-ops-console .commsMessageBody{
  font-size:13px;
  line-height:1.38;
}

body.flightops-ops-console .commsCompose{
  padding:6px 0 10px;
}

body.flightops-ops-console .commsCompose textarea{
  min-height:44px;
  max-height:104px;
  padding:10px 12px;
}

body.flightops-ops-console .commsComposeActions{
  gap:6px;
}

body.flightops-ops-console .commsComposeActions #commsSendBtn{
  min-width:86px;
  height:40px;
}

/* Final Comms Drawer Layout Audit */
body.flightops-ops-console{
  --flightops-comms-side-rail-offset:calc(var(--flightops-comms-control-offset) + 8px);
}


body.flightops-ops-console.commsPanelActive #mapUtilityDrawer,
body.flightops-ops-console.commsPanelActive #monitoringDock,
body.flightops-ops-console.commsPanelActive #mapChatLauncher{
  right:var(--flightops-comms-side-rail-offset) !important;
}

body.flightops-ops-console .connectionDegradeBanner{
  right:calc(14px + var(--flightops-comms-side-rail-offset));
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .head{
  padding:calc(var(--auth-topbar-height,64px) + 18px) 12px 8px;
  overflow:visible;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .sectionBody{
  padding:0 12px 24px;
  overflow:visible;
}

body.flightops-ops-console .commsCondensedHeader,
body.flightops-ops-console .commsCondensedTopbar,
body.flightops-ops-console .commsThreadHeaderCondensed,
body.flightops-ops-console .commsThreadHeaderPrimary,
body.flightops-ops-console .commsConversationSwitch,
body.flightops-ops-console .commsAudioPopover,
body.flightops-ops-console .commsDirectPicker,
body.flightops-ops-console .commsDrawerMessagePane{
  overflow:visible;
}

body.flightops-ops-console .commsCondensedTopbar{
  padding:12px 0 8px;
}

body.flightops-ops-console #commsPanelCloseBtn{
  display:none !important;
}

body.flightops-ops-console .commsAudioPopover{
  position:relative;
}

body.flightops-ops-console .commsAudioPopoverPanel{
  left:auto !important;
  right:0 !important;
  width:min(248px,calc(var(--flightops-comms-drawer-width) - 32px));
  max-width:calc(var(--flightops-comms-drawer-width) - 32px);
}

body.flightops-ops-console .commsThreadHeaderCondensed .commsDirectPickerPanel{
  left:0 !important;
  right:auto !important;
  width:min(248px,calc(var(--flightops-comms-drawer-width) - 32px));
  max-width:calc(var(--flightops-comms-drawer-width) - 32px);
}

body.flightops-ops-console #commsMainContent.commsMessageStage,
body.flightops-ops-console .commsMessageStage{
  overflow:hidden;
}

body.flightops-ops-console .commsMessage{
  display:grid !important;
  grid-template-columns:1fr;
  row-gap:2px;
  justify-items:start;
}

body.flightops-ops-console .commsMessage.outbound{
  justify-items:end;
}

body.flightops-ops-console .commsMessageHeader{
  display:flex !important;
  align-items:center;
  gap:8px;
  width:min(88%,520px);
  max-width:100%;
  margin:0;
  padding:0 1px;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageHeader{
  justify-content:flex-end;
}

body.flightops-ops-console .commsMessageSender{
  flex:1 1 auto;
  min-width:0;
  max-width:none;
  overflow:visible;
  text-overflow:clip;
  white-space:nowrap;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageSender{
  display:none;
}

body.flightops-ops-console .commsMessageBubble{
  display:block;
  width:min(88%,520px);
  max-width:100%;
  margin:0;
}

body.flightops-ops-console .commsCompose{
  padding:8px 0 14px;
}

body.flightops-ops-console .commsAudioPopoverBtn{
  min-width:74px;
  padding:4px 8px;
}

body.flightops-ops-console .commsAudioButtonLabel{
  display:grid;
  justify-items:center;
  line-height:1.02;
  font-size:inherit;
  letter-spacing:inherit;
  text-transform:inherit;
}

body.flightops-ops-console .commsAudioButtonLabel span{
  display:block;
}

body.flightops-ops-console .commsMessageHeader{
  width:fit-content !important;
  max-width:min(88%,520px);
  gap:6px;
}

body.flightops-ops-console .commsMessageStamp{
  margin-left:0 !important;
  flex:0 0 auto;
}

body.flightops-ops-console .commsMessageBubble{
  width:fit-content;
  max-width:min(88%,520px);
}

body.flightops-ops-console .commsMessage.outbound .commsMessageBubble{
  justify-self:end;
  margin-left:0;
}

body.flightops-ops-console .commsMessage.rangeControl:not(.outbound) .commsMessageBubble{
  background:#dbeafe;
  border-color:#60a5fa;
  box-shadow:0 0 0 1px rgba(96,165,250,.18) inset;
}

body.flightops-ops-console .commsMessage.rangeControl:not(.outbound) .commsMessageSender{
  color:#1d4ed8;
}

body.flightops-ops-console .commsCondensedActions{
  margin-left:auto;
  justify-content:flex-end;
  align-items:center;
  gap:6px;
}

body.flightops-ops-console .commsCondensedActions .commsAudioPopoverBtn{
  display:grid;
  place-items:center;
  min-width:78px;
  text-align:center;
  padding:0 10px !important;
}

body.flightops-ops-console .commsAudioButtonLabel{
  width:100%;
  min-height:100%;
  align-content:center;
  justify-content:center;
  justify-items:center;
  text-align:center;
}

body.flightops-ops-console .commsCondensedMuteBtn{
  width:38px;
  min-width:38px;
  padding:0 !important;
  display:grid;
  place-items:center;
}

body.flightops-ops-console .commsMicIcon{
  position:relative;
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  color:currentColor;
}

body.flightops-ops-console .commsMicIcon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

body.flightops-ops-console .commsCondensedMuteBtn.is-muted .commsMicIcon::after{
  content:"";
  position:absolute;
  left:-1px;
  top:7px;
  width:21px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transform:rotate(45deg);
  transform-origin:center;
}

body.flightops-ops-console .commsThreadLaneBar .commsThreadMetaRow{
  justify-content:flex-start;
  gap:6px;
}

body.flightops-ops-console .commsThreadLaneBar #commsActiveThreadTitle{
  flex:1 1 auto;
  max-width:none;
}

body.flightops-ops-console .commsThreadHeaderMeta{
  flex:0 0 auto;
}

body.flightops-ops-console .commsThreadPeoplePill{
  min-width:0;
  padding:0 9px;
  white-space:nowrap;
}

body.flightops-ops-console #commsUnreadBadge{
  display:none !important;
}

body.flightops-ops-console .commsCondensedActions{
  position:relative;
  width:100%;
  min-height:38px;
  margin-left:0;
  justify-content:flex-start;
  align-items:center;
  gap:6px;
}

body.flightops-ops-console .commsCondensedMuteBtn{
  width:54px;
  min-width:54px;
}

body.flightops-ops-console .commsCondensedVoiceBtn{
  min-width:64px;
}

body.flightops-ops-console #commsVoiceMonitorBtn{
  margin-left:2px;
}

body.flightops-ops-console .commsCondensedStatus{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:8px 10px;
  width:100%;
  padding-right:0;
}

body.flightops-ops-console .commsVoiceStatusMain{
  min-width:0;
  display:grid;
  gap:4px;
}

body.flightops-ops-console .commsStatusAudioPopover{
  position:relative;
  align-self:start;
  justify-self:end;
  z-index:4;
}

body.flightops-ops-console .commsStatusAudioPopover .commsAudioPopoverBtn{
  width:66px;
  min-width:66px;
  padding:0 8px !important;
}

body.flightops-ops-console .commsStatusAudioPopover .commsAudioPopoverPanel{
  left:auto !important;
  right:0 !important;
  transform:none;
  width:min(220px,calc(var(--flightops-comms-drawer-width) - 36px));
  max-width:calc(var(--flightops-comms-drawer-width) - 36px);
}


body.flightops-ops-console #monitoringDock{
  top:calc(var(--auth-topbar-height,64px) + 24px + var(--mission-telemetry-shell-height, 0px));
}

body.flightops-ops-console #mapUtilityDrawer{
  top:calc(var(--auth-topbar-height,64px) + 74px + var(--mission-telemetry-shell-height, 0px));
}

body.flightops-ops-console #mapChatLauncher{
  top:calc(var(--auth-topbar-height,64px) + 122px + var(--mission-telemetry-shell-height, 0px));
}

body.flightops-ops-console .connectionDegradeBanner{
  top:calc(var(--runtime-health-top, var(--auth-topbar-height,56px)) + var(--runtime-health-height, 0px) + 10px + var(--mission-telemetry-shell-height, 0px));
}

body.flightops-ops-console #sidebar .panelSection.overlaySurface:not([data-panel="opsdrawer"]):not([data-panel="comms"]):not([data-panel="alerts"]){
  translate:0 var(--mission-telemetry-shell-height, 0px);
  max-height:calc(100vh - 110px - var(--mission-telemetry-shell-height, 0px)) !important;
  transition:translate .24s ease,opacity .2s ease,transform .24s ease;
}

body.flightops-ops-console #sidebar .panelSection.workspaceSurface,
body.flightops-ops-console #sidebar .panelSection.sectionSurface,
body.flightops-ops-console #sidebar .panelSection[data-panel="alerts"],
body.flightops-ops-console #sidebar .panelSection[data-panel="settings"],
body.flightops-ops-console #sidebar .panelSection[data-panel="opsdrawer"],
body.flightops-ops-console #sidebar .panelSection[data-panel="notes"],
body.flightops-ops-console #sidebar .panelSection[data-panel="weather"]{
  top:calc(var(--auth-topbar-height,64px) + var(--mission-telemetry-shell-height, 0px)) !important;
  height:calc(100vh - var(--auth-topbar-height,64px) - var(--mission-telemetry-shell-height, 0px)) !important;
  max-height:calc(100vh - var(--auth-topbar-height,64px) - var(--mission-telemetry-shell-height, 0px)) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="alerts"] .sectionBody{
  height:calc(100vh - var(--auth-topbar-height,64px) - var(--mission-telemetry-shell-height, 0px) - 60px) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"]{
  top:calc(var(--auth-topbar-height,64px) + 16px + var(--mission-telemetry-shell-height, 0px)) !important;
  max-height:calc(100vh - var(--auth-topbar-height,64px) - var(--mission-telemetry-shell-height, 0px) - 32px) !important;
}

body.flightops-ops-console .commsMessage.attention-needed .commsMessageBubble{
  border-color:#f59e0b !important;
  box-shadow:0 0 0 1px rgba(245,158,11,.28) inset,0 0 0 0 rgba(245,158,11,.28);
  animation:commsMessageAttentionPulse 1.15s ease-in-out infinite;
  cursor:pointer;
}

body.flightops-ops-console .commsMessage.attention-requested .commsMessageBubble{
  border-color:#f59e0b !important;
  box-shadow:0 0 0 1px rgba(245,158,11,.2) inset;
}

body.flightops-ops-console .commsAttentionBadge{
  display:inline-grid;
  place-items:center;
  width:16px;
  height:16px;
  flex:0 0 16px;
  border-radius:999px;
  background:#f59e0b;
  color:#111827;
  font-size:11px;
  font-weight:900;
  line-height:1;
}

body.flightops-ops-console .commsMessageContextMenu{
  position:fixed;
  z-index:2600;
  width:244px;
  min-width:244px;
  padding:8px;
  border:1px solid rgba(148,163,184,.35);
  border-radius:6px;
  background:#0f172a;
  box-shadow:0 18px 36px rgba(15,23,42,.24);
  display:grid;
  gap:6px;
}

body.flightops-ops-console .commsMessageContextMenu[hidden]{
  display:none !important;
}

body.flightops-ops-console .commsMessageContextMenu button{
  width:100%;
  min-width:0;
  justify-content:flex-start;
  padding:8px 10px;
  border:0;
  border-radius:4px;
  background:transparent;
  color:#f8fafc;
  box-shadow:none;
  text-align:left;
}

body.flightops-ops-console .commsMessageContextMenu button:hover,
body.flightops-ops-console .commsMessageContextMenu button:focus-visible{
  background:rgba(59,130,246,.24);
}

body.flightops-ops-console .commsMessageContextMenu button[hidden]{
  display:none !important;
}

body.flightops-ops-console .commsAttentionTargetField{
  position:relative;
  display:grid;
  gap:4px;
}

body.flightops-ops-console .commsAttentionTargetField input{
  width:100%;
  min-width:0;
  height:32px;
  padding:6px 8px;
  border:1px solid rgba(148,163,184,.38);
  border-radius:4px;
  background:#f8fafc;
  color:#0f172a;
  font-size:12px;
  line-height:1.2;
  outline:none;
}

body.flightops-ops-console .commsAttentionTargetField input:focus{
  border-color:#60a5fa;
  box-shadow:0 0 0 2px rgba(96,165,250,.22);
}

body.flightops-ops-console .commsAttentionSuggestions{
  display:grid;
  gap:2px;
  max-height:148px;
  overflow:auto;
  padding:3px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:4px;
  background:#111827;
}

body.flightops-ops-console .commsAttentionSuggestions[hidden]{
  display:none !important;
}

body.flightops-ops-console .commsAttentionSuggestions button{
  padding:6px 8px;
  font-size:12px;
}

body.flightops-ops-console .commsAttentionActions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
}

body.flightops-ops-console .commsAttentionActions button{
  justify-content:center;
  text-align:center;
}

body.flightops-ops-console .commsThreadMetaPill.is-typing{
  border-color:rgba(14,165,233,.42);
  background:rgba(14,165,233,.12);
  color:#0369a1;
}

body.flightops-ops-console .commsTypingIndicator{
  display:flex;
  align-items:center;
  gap:8px;
  width:fit-content;
  max-width:min(88%,520px);
  margin:2px 0 0;
  padding:6px 10px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:12px;
  background:rgba(248,250,252,.92);
  color:#475569;
  font-size:12px;
  line-height:1.2;
}

body.flightops-ops-console .commsTypingDots{
  display:inline-flex;
  align-items:center;
  gap:3px;
  flex:0 0 auto;
}

body.flightops-ops-console .commsTypingDots span{
  width:5px;
  height:5px;
  border-radius:999px;
  background:#0ea5e9;
  animation:commsTypingDot 1.05s ease-in-out infinite;
}

body.flightops-ops-console .commsTypingDots span:nth-child(2){
  animation-delay:.14s;
}

body.flightops-ops-console .commsTypingDots span:nth-child(3){
  animation-delay:.28s;
}

body.flightops-ops-console .commsCompact .commsTypingIndicator{
  max-width:100%;
  font-size:11px;
  padding:5px 8px;
}

@keyframes commsMessageAttentionPulse{
  0%,100%{
    transform:translateZ(0) scale(1);
    box-shadow:0 0 0 1px rgba(245,158,11,.28) inset,0 0 0 0 rgba(245,158,11,.28);
  }
  50%{
    transform:translateZ(0) scale(1.015);
    box-shadow:0 0 0 1px rgba(245,158,11,.48) inset,0 0 0 8px rgba(245,158,11,0);
  }
}

@keyframes commsTypingDot{
  0%,70%,100%{transform:translateY(0);opacity:.45}
  35%{transform:translateY(-3px);opacity:1}
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"].panelOpen{
  height:calc(100vh - var(--auth-topbar-height,64px) - var(--mission-telemetry-shell-height,0px) - 32px) !important;
  min-height:0;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .sectionBody{
  min-height:0;
  height:100%;
}

body.flightops-ops-console .commsDrawerMessagePane,
body.flightops-ops-console #commsMainContent.commsMessageStage,
body.flightops-ops-console .commsMessageStage{
  min-height:0;
}

body.flightops-ops-console #commsMessageList{
  box-sizing:border-box;
  scroll-padding-bottom:calc(96px + var(--comms-safe-bottom,0px));
  padding-bottom:calc(34px + var(--comms-safe-bottom,0px));
}

body.flightops-ops-console #commsMessageList > .commsMessage:last-child,
body.flightops-ops-console #commsMessageList > .commsTypingIndicator:last-child{
  scroll-margin-bottom:calc(96px + var(--comms-safe-bottom,0px));
}

body.flightops-ops-console .commsCompactMessages{
  box-sizing:border-box;
  scroll-padding-bottom:20px;
  padding-bottom:16px;
}

body.flightops-ops-console .commsMessageEditedNote{
  margin-top:4px;
  font-size:10px;
  line-height:1.1;
  color:rgba(226,232,240,.68);
}

body.flightops-ops-console .commsMessage.outbound .commsMessageEditedNote{
  text-align:right;
  color:rgba(255,255,255,.72);
}

/* Comms drawer motion stabilizer */
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"]{
  display:block !important;
  left:auto !important;
  right:0 !important;
  top:calc(var(--auth-topbar-height,64px) + var(--mission-telemetry-shell-height,0px) + 16px) !important;
  bottom:16px !important;
  width:var(--flightops-comms-drawer-width) !important;
  min-width:320px !important;
  max-width:calc(100vw - 6px) !important;
  height:calc(100vh - var(--auth-topbar-height,64px) - var(--mission-telemetry-shell-height,0px) - 32px) !important;
  max-height:calc(100vh - var(--auth-topbar-height,64px) - var(--mission-telemetry-shell-height,0px) - 32px) !important;
  visibility:hidden;
  opacity:.98;
  pointer-events:none;
  transform:translate3d(var(--flightops-comms-drawer-travel,calc(100% + 18px)),0,0);
  transition:transform var(--flightops-comms-motion-duration,.32s) var(--flightops-comms-motion-ease,cubic-bezier(.22,.68,.25,1)),opacity .22s ease,visibility 0s linear var(--flightops-comms-motion-duration,.32s);
  will-change:transform;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"].panelOpen{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  transform:translate3d(0,0,0);
  transition:transform var(--flightops-comms-motion-duration,.32s) var(--flightops-comms-motion-ease,cubic-bezier(.22,.68,.25,1)),opacity .22s ease,visibility 0s;
}

body.flightops-ops-console #mapChatLauncher{
  transform:translate3d(0,0,0);
  transition:translate .28s cubic-bezier(.22,.68,.25,1),background .18s ease,color .18s ease,box-shadow .18s ease,opacity .18s ease;
  will-change:translate;
}

/* Warm Glass comms/mobile reskin */
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"],
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"].panelOpen{
  background:rgba(25,27,31,.92) !important;
  border-left:1px solid rgba(180,170,155,.13) !important;
  box-shadow:-12px 0 34px rgba(0,0,0,.3) !important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .head,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .sectionBody,
body.flightops-ops-console .commsDrawerMessagePane,
body.flightops-ops-console .commsCondensedTopbar,
body.flightops-ops-console .commsCompose{
  background:transparent !important;
}

body.flightops-ops-console .commsCondensedTopbar,
body.flightops-ops-console .commsThreadHeaderCondensed{
  border-bottom:1px solid rgba(180,170,155,.12) !important;
}

body.flightops-ops-console .commsVoiceBrandLabel,
body.flightops-ops-console .commsVoiceParticipantCount,
body.flightops-ops-console .commsThreadMetaPill,
body.flightops-ops-console .commsMessageHeader,
body.flightops-ops-console .commsMessageStamp{
  color:#6b6660 !important;
}

body.flightops-ops-console .commsDrawerStatus,
body.flightops-ops-console #commsActiveThreadSub,
body.flightops-ops-console .commsMessageSender,
body.flightops-ops-console .commsTypingIndicator{
  color:#9e9890 !important;
}

body.flightops-ops-console .commsVoicePulse{
  background:#6b6660 !important;
}

body.flightops-ops-console .commsVoicePulse.is-live{
  background:#35c76f !important;
  box-shadow:0 0 0 4px rgba(53,199,111,.16) !important;
}

body.flightops-ops-console .commsVoiceStatusBadge,
body.flightops-ops-console .commsThreadMetaPill{
  border:1px solid rgba(180,170,155,.2) !important;
  background:rgba(180,170,155,.06) !important;
  color:#6b6660 !important;
}

body.flightops-ops-console .commsVoiceStatusBadge.is-live,
body.flightops-ops-console .commsThreadMetaPill.is-live{
  border-color:rgba(52,184,102,.32) !important;
  background:rgba(52,184,102,.12) !important;
  color:#86efac !important;
}

body.flightops-ops-console .commsConversationSwitch{
  background:rgba(180,170,155,.08) !important;
}

body.flightops-ops-console .commsVoiceActionBtn,
body.flightops-ops-console .commsVoiceCloseBtn,
body.flightops-ops-console .commsLaneBtn,
body.flightops-ops-console .commsAudioPopover > summary,
body.flightops-ops-console .commsDirectPicker > summary{
  border:1px solid rgba(180,170,155,.2) !important;
  background:rgba(180,170,155,.06) !important;
  color:#e8e4df !important;
}

body.flightops-ops-console .commsConversationSwitch .commsLaneBtn,
body.flightops-ops-console .commsConversationSwitch .commsDirectPicker > summary{
  border-color:transparent !important;
  background:transparent !important;
}

body.flightops-ops-console .commsLaneBtn.active,
body.flightops-ops-console .commsDirectPicker > summary.active{
  border-color:transparent !important;
  background:rgba(212,168,74,.12) !important;
  color:#d4a84a !important;
  box-shadow:0 1px 4px rgba(0,0,0,.15) !important;
}

body.flightops-ops-console .commsVoiceActionBtn.is-live,
body.flightops-ops-console .commsVoiceActionBtn.is-ready,
body.flightops-ops-console .commsVoiceActionBtn.is-active{
  border-color:rgba(212,168,74,.4) !important;
  background:rgba(212,168,74,.1) !important;
  color:#d4a84a !important;
}

body.flightops-ops-console .commsTranscriptionBtn{
  min-width:56px;
}

body.flightops-ops-console .commsTranscriptionBtn.is-active{
  border-color:rgba(185,132,224,.48) !important;
  background:rgba(185,132,224,.18) !important;
  color:#e2c5f7 !important;
}

body.flightops-ops-console .commsVoiceTranscriptPreview{
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin-top:8px;
  padding:8px 10px;
  border:1px solid rgba(185,132,224,.24);
  border-radius:8px;
  background:rgba(17,18,20,.62);
  color:#d8c5ec;
  font-size:11.5px;
  line-height:1.35;
  max-width:100%;
}

body.flightops-ops-console .commsVoiceTranscriptPreview[hidden]{
  display:none !important;
}

body.flightops-ops-console .commsVoiceTranscriptPreviewLabel{
  flex:0 0 auto;
  color:#b984e0;
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

body.flightops-ops-console .commsVoiceTranscriptPreviewText{
  min-width:0;
  color:#efe6f8;
}

body.flightops-ops-console .commsDirectPickerPanel,
body.flightops-ops-console .commsAudioPopoverPanel,
body.flightops-ops-console .commsStatusAudioPopover .commsAudioPopoverPanel{
  border:1px solid rgba(180,170,155,.2) !important;
  background:rgba(25,27,31,.96) !important;
  box-shadow:0 16px 32px rgba(0,0,0,.35) !important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

body.flightops-ops-console .commsAudioPopoverField span{
  color:#9e9890 !important;
}

body.flightops-ops-console .commsAudioPopoverField select{
  border:1px solid rgba(180,170,155,.2) !important;
  background:rgba(21,23,26,.9) !important;
  color:#e8e4df !important;
}

body.flightops-ops-console .commsAudioPopoverField select:focus{
  border-color:rgba(212,168,74,.4) !important;
  outline:none;
}

body.flightops-ops-console .commsVoiceDeviceRefreshBtn{
  border:1px solid rgba(180,170,155,.22) !important;
  background:rgba(36,38,42,.94) !important;
  color:#e8e4df !important;
}

body.flightops-ops-console .commsDirectPickerItem{
  border:1px solid rgba(180,170,155,.14) !important;
  background:rgba(30,32,36,.88) !important;
  color:#e8e4df !important;
}

body.flightops-ops-console .commsDirectPickerItem:hover{
  border-color:rgba(212,168,74,.34) !important;
  background:rgba(212,168,74,.08) !important;
}

body.flightops-ops-console .commsDirectPickerItem.active{
  border-color:rgba(212,168,74,.42) !important;
  background:rgba(212,168,74,.14) !important;
}

body.flightops-ops-console .commsDirectPickerName,
body.flightops-ops-console .commsThreadHeaderCondensed #commsActiveThreadTitle{
  color:#f5f2ee !important;
}

body.flightops-ops-console .commsDirectPickerUnread{
  background:#ef4444 !important;
}

body.flightops-ops-console #commsUnreadBadge{
  background:rgba(212,168,74,.12) !important;
  border:1px solid rgba(212,168,74,.24) !important;
  color:#d4a84a !important;
}

body.flightops-ops-console .commsMessageBubble{
  border:1px solid rgba(180,170,155,.12) !important;
  background:rgba(30,32,36,.88) !important;
  color:#e8e4df !important;
  box-shadow:none !important;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageBubble{
  background:rgba(212,168,74,.1) !important;
  border-color:rgba(212,168,74,.2) !important;
  color:#f5f2ee !important;
}

body.flightops-ops-console .commsMessage.rangeControl:not(.outbound) .commsMessageBubble{
  background:rgba(30,34,42,.92) !important;
  border-color:rgba(180,170,155,.16) !important;
  box-shadow:none !important;
}

body.flightops-ops-console .commsMessageBody{
  color:#e8e4df !important;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageBody{
  color:#f5f2ee !important;
}

body.flightops-ops-console .commsCompose{
  border-top:1px solid rgba(180,170,155,.12) !important;
}

body.flightops-ops-console .commsCompose textarea{
  border:1px solid rgba(180,170,155,.2) !important;
  background:rgba(21,23,26,.9) !important;
  color:#e8e4df !important;
}

body.flightops-ops-console .commsCompose textarea::placeholder{
  color:#6b6660 !important;
}

body.flightops-ops-console .commsCompose textarea:focus{
  border-color:rgba(212,168,74,.4) !important;
  outline:none;
}

body.flightops-ops-console #commsSendBtn{
  border:1px solid rgba(212,168,74,.8) !important;
  background:linear-gradient(135deg,#d4a84a,#b8912e) !important;
  color:#111214 !important;
  box-shadow:0 2px 8px rgba(212,168,74,.2) !important;
}

body.flightops-ops-console #mapChatLauncher{
  border:1px solid rgba(180,170,155,.14) !important;
  border-right:0 !important;
  background:rgba(17,18,20,.96) !important;
}

body.flightops-ops-console #mapChatLauncher.active{
  background:linear-gradient(135deg,#d4a84a,#b8912e) !important;
  color:#111214 !important;
  box-shadow:0 12px 28px rgba(212,168,74,.3) !important;
}

body.flightops-ops-console .commsMapToast{
  background:rgba(25,27,31,.92) !important;
  border:1px solid rgba(180,170,155,.13) !important;
  box-shadow:0 18px 36px rgba(0,0,0,.4) !important;
  color:#e8e4df !important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

body.flightops-ops-console .commsMapToastLabel{
  color:#6b6660 !important;
}

body.flightops-ops-console .commsMapToastClose{
  background:rgba(180,170,155,.06) !important;
  border:1px solid rgba(180,170,155,.2) !important;
  color:#e8e4df !important;
}

body.flightops-ops-console .commsMapToastClose:hover{
  background:rgba(180,170,155,.12) !important;
}

body.flightops-ops-console .commsMapToastSender{
  color:#f5f2ee !important;
}

body.flightops-ops-console .commsMapToastBody{
  color:#e8e4df !important;
}

body.flightops-ops-console .commsMapToastMeta{
  color:#9e9890 !important;
}

body.flightops-ops-console .commsMessageContextMenu{
  border:1px solid rgba(180,170,155,.2) !important;
  background:rgba(25,27,31,.96) !important;
  box-shadow:0 18px 36px rgba(0,0,0,.35) !important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

body.flightops-ops-console .commsMessageContextMenu button{
  color:#e8e4df !important;
}

body.flightops-ops-console .commsMessageContextMenu button:hover,
body.flightops-ops-console .commsMessageContextMenu button:focus-visible{
  background:rgba(212,168,74,.14) !important;
}

body.flightops-ops-console .commsAttentionTargetField input{
  border:1px solid rgba(180,170,155,.2) !important;
  background:rgba(21,23,26,.9) !important;
  color:#e8e4df !important;
}

body.flightops-ops-console .commsAttentionTargetField input:focus{
  border-color:rgba(212,168,74,.4) !important;
  box-shadow:0 0 0 2px rgba(212,168,74,.15) !important;
}

body.flightops-ops-console .commsAttentionSuggestions{
  border:1px solid rgba(180,170,155,.16) !important;
  background:rgba(21,23,26,.9) !important;
}

body.flightops-ops-console .commsThreadMetaPill.is-typing{
  border-color:rgba(212,168,74,.34) !important;
  background:rgba(212,168,74,.1) !important;
  color:#d4a84a !important;
}

body.flightops-ops-console .commsTypingIndicator{
  border:1px solid rgba(180,170,155,.16) !important;
  background:rgba(30,32,36,.88) !important;
}

body.flightops-ops-console .commsTypingDots span{
  background:#d4a84a !important;
}

body.flightops-ops-console .commsMessageEditedNote{
  color:rgba(232,228,223,.6) !important;
}

body.flightops-ops-console .commsMessage.outbound .commsMessageEditedNote{
  color:rgba(245,242,238,.7) !important;
}

/* Right rail motion sync */
body.flightops-ops-console{
  --flightops-comms-motion-duration:.32s;
  --flightops-comms-motion-ease:cubic-bezier(.22,.68,.25,1);
  --flightops-comms-drawer-travel:calc(var(--flightops-comms-drawer-width) + var(--flightops-comms-drawer-gap) + 8px);
  --flightops-comms-rail-shift:0px;
  --flightops-comms-control-shift:0px;
  --flightops-monitoring-rail-width:300px;
  --flightops-monitoring-toggle-width:38px;
  --flightops-monitoring-toggle-gap-nudge:4px;
  --flightops-monitoring-drawer-gap:8px;
  --flightops-monitoring-drawer-travel:calc(var(--flightops-monitoring-rail-width) + var(--flightops-monitoring-toggle-width) + var(--flightops-monitoring-drawer-gap));
  --flightops-monitoring-open-width:calc(var(--flightops-monitoring-rail-width) + var(--flightops-monitoring-toggle-width) + 6px);
  --flightops-weather-toggle-width:40px;
  --flightops-weather-panel-width:208px;
  --flightops-weather-open-width:calc(var(--flightops-weather-toggle-width) + var(--flightops-weather-panel-width));
  --flightops-chat-toggle-width:40px;
  --flightops-monitoring-tab-align-shift:0px;
  --flightops-weather-tab-align-shift:0px;
  --flightops-maputility-align-shift:0px;
  --flightops-chat-align-shift:max(var(--flightops-monitoring-tab-align-shift), var(--flightops-weather-tab-align-shift));
}

body.flightops-ops-console.commsPanelActive{
  --flightops-comms-rail-shift:var(--flightops-comms-drawer-travel);
  --flightops-comms-control-shift:calc(var(--flightops-comms-drawer-width) + var(--flightops-comms-drawer-gap));
}

body.flightops-ops-console.monitoringDockActive{
  --flightops-monitoring-tab-align-shift:calc(var(--flightops-monitoring-open-width) - var(--flightops-chat-toggle-width));
  --flightops-maputility-align-shift:calc(var(--flightops-monitoring-open-width) - var(--flightops-weather-toggle-width));
}

body.flightops-ops-console.weatherLayersDrawerActive{
  --flightops-weather-tab-align-shift:calc(var(--flightops-weather-open-width) - var(--flightops-chat-toggle-width));
}

body.flightops-ops-console.monitoringDockActive.weatherLayersDrawerActive{
  --flightops-maputility-align-shift:calc(var(--flightops-monitoring-open-width) - var(--flightops-monitoring-toggle-gap-nudge));
  --flightops-weather-tab-align-shift:calc(var(--flightops-monitoring-open-width) - var(--flightops-monitoring-toggle-gap-nudge) + var(--flightops-weather-open-width) - var(--flightops-chat-toggle-width));
}

body.flightops-ops-console.monitoringDockActive:not(.weatherLayersDrawerActive) #mapUtilityDrawer #mapUtilityDrawerPanel,
body.flightops-ops-console.monitoringDockActive:not(.weatherLayersDrawerActive) #mapUtilityDrawer .mapUtilityDrawerPanel{
  visibility:hidden;
  pointer-events:none;
  opacity:0;
}

body.flightops-ops-console #mapChatLauncher,
body.flightops-ops-console.commsPanelActive #mapChatLauncher{
  right:0 !important;
  translate:calc(0px - var(--flightops-comms-rail-shift) - var(--flightops-chat-align-shift)) 0;
  transition:translate var(--flightops-comms-motion-duration) var(--flightops-comms-motion-ease),background .18s ease,color .18s ease,box-shadow .18s ease,opacity .18s ease;
  will-change:translate;
}

body.flightops-ops-console #mapUtilityDrawer,
body.flightops-ops-console.commsPanelActive #mapUtilityDrawer{
  right:0 !important;
  translate:calc(0px - var(--flightops-comms-rail-shift) - var(--flightops-maputility-align-shift)) 0;
  transition:translate var(--flightops-comms-motion-duration) var(--flightops-comms-motion-ease),transform var(--flightops-comms-motion-duration) var(--flightops-comms-motion-ease),opacity .18s ease;
  will-change:translate,transform;
}

body.flightops-ops-console #monitoringDock,
body.flightops-ops-console.commsPanelActive #monitoringDock{
  right:0 !important;
  translate:calc(0px - var(--flightops-comms-rail-shift)) 0;
  transition:translate var(--flightops-comms-motion-duration) var(--flightops-comms-motion-ease),transform var(--flightops-comms-motion-duration) var(--flightops-comms-motion-ease),opacity .18s ease;
  will-change:translate,transform;
}

body.flightops-ops-console.monitoringDockActive #monitoringDock{
  z-index:2143 !important;
}

body.flightops-ops-console.monitoringDockActive #monitoringDockToggle{
  translate:var(--flightops-monitoring-toggle-gap-nudge) 0;
  transition:translate var(--flightops-comms-motion-duration) var(--flightops-comms-motion-ease),background .18s ease,color .18s ease,box-shadow .18s ease,opacity .18s ease;
}

body.flightops-ops-console.monitoringDockActive #mapUtilityDrawer,
body.flightops-ops-console.monitoringDockActive #mapChatLauncher{
  z-index:2144 !important;
}


body.flightops-ops-console .connectionDegradeBanner{
  right:22px;
  translate:calc(0px - var(--flightops-comms-control-shift)) 0;
  transition:translate var(--flightops-comms-motion-duration) var(--flightops-comms-motion-ease),opacity .18s ease;
  will-change:translate;
}

@media (max-width:900px){
  body.flightops-ops-console #sidebar .panelSection[data-panel="comms"]{
    top:calc(var(--auth-topbar-height,64px) + var(--mission-telemetry-shell-height,0px) + 12px) !important;
    bottom:0 !important;
    width:var(--flightops-comms-drawer-width) !important;
    min-width:0 !important;
    height:calc(100vh - var(--auth-topbar-height,64px) - var(--mission-telemetry-shell-height,0px) - 12px) !important;
    max-height:calc(100vh - var(--auth-topbar-height,64px) - var(--mission-telemetry-shell-height,0px) - 12px) !important;
  }
}

/* Warm Ops beta topbar */
body.flightops-ops-console #authTopbar {
  font-family: var(--fo-font-sans);
  background: var(--fo-bg-topbar);
  border-bottom: 1px solid var(--fo-border-subtle);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.32);
}

body.flightops-ops-console .authTopbarTitle {
  min-width: 248px;
}

body.flightops-ops-console .authTopbarTitleText strong {
  color: var(--fo-text-strong);
  font-size: 15px;
  letter-spacing: 0;
}

body.flightops-ops-console .authTopbarSubtitle,
body.flightops-ops-console .releaseVersionBadge {
  color: var(--fo-text-muted);
}

body.flightops-ops-console .authTopbarMenuBtn,
body.flightops-ops-console .topbarIconBtn,
body.flightops-ops-console .topNavBtn,
body.flightops-ops-console .authAccountMenuBtn {
  border-radius: var(--fo-radius-sm);
  border-color: var(--fo-border-subtle);
  background: transparent;
  color: var(--fo-text-secondary);
  box-shadow: none;
}

body.flightops-ops-console .authTopbarMenuBtn:hover,
body.flightops-ops-console .topbarIconBtn:hover,
body.flightops-ops-console .topNavBtn:hover,
body.flightops-ops-console .authAccountMenuBtn:hover,
body.flightops-ops-console .authAccountMenuBtn.open {
  background: var(--fo-bg-card);
  border-color: var(--fo-border-medium);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .authTopbarMenuBtn.active,
body.flightops-ops-console .topbarWorkspaceGridBtn.active,
body.flightops-ops-console .topbarIconBtn.active,
body.flightops-ops-console .topNavBtn.active {
  background: var(--fo-accent-soft);
  border-color: var(--fo-border-strong);
  color: var(--fo-accent-hover);
  box-shadow: inset 0 0 0 1px rgba(212, 168, 74, 0.10);
}

body.flightops-ops-console .weatherTopbarStrip {
  padding: 3px;
  border-radius: var(--fo-radius-md);
  border-color: var(--fo-border-subtle);
  background: transparent;
  box-shadow: none;
}

body.flightops-ops-console .weatherTopbarStatusBtn {
  min-width: 148px;
  padding: 0 14px;
  border-radius: var(--fo-radius-sm);
  background: linear-gradient(180deg, rgba(13, 148, 136, 0.18), rgba(13, 148, 136, 0.08));
  border: 1px solid rgba(13, 148, 136, 0.32);
  color: #5eead4;
}

body.flightops-ops-console .weatherTopbarStatusBtn:hover,
body.flightops-ops-console .weatherTopbarStatusBtn.is-active {
  background: linear-gradient(180deg, rgba(13, 148, 136, 0.28), rgba(13, 148, 136, 0.14));
  border-color: rgba(13, 148, 136, 0.48);
  box-shadow: none;
}

body.flightops-ops-console .weatherTopbarStatusIcon {
  width: 20px;
  height: 20px;
  border-radius: 5px;
  background: #0d9488;
  color: #ffffff;
}

body.flightops-ops-console .weatherTopbarStatusIcon svg {
  width: 16px;
  height: 16px;
}

body.flightops-ops-console .weatherTopbarStatusTextWrap strong {
  color: #5eead4;
  font-size: 12px;
  letter-spacing: 0.03em;
  text-transform: none;
}

body.flightops-ops-console .weatherTopbarStatusTextWrap small {
  color: rgba(94, 234, 212, 0.60);
  font-size: 8px;
  letter-spacing: 0.04em;
}

body.flightops-ops-console .weatherTopbarSourceWrap {
  flex: 0 1 164px;
}

body.flightops-ops-console .weatherTopbarSourceBtn {
  padding: 0 26px 0 10px;
  border-radius: var(--fo-radius-xs);
  background: var(--fo-bg-card);
  border: 1px solid var(--fo-border-subtle);
}

body.flightops-ops-console .weatherTopbarSourceBtn:hover,
body.flightops-ops-console .weatherTopbarSourceBtn[aria-expanded="true"] {
  background: var(--fo-bg-card-hover);
  border-color: var(--fo-border-medium);
}

body.flightops-ops-console .weatherTopbarSourceBtn::after {
  right: 10px;
  color: var(--fo-text-muted);
}

body.flightops-ops-console #weatherTopbarSourceValue {
  color: var(--fo-accent);
  font-weight: 800;
}

body.flightops-ops-console .weatherTopbarCell {
  justify-items: center;
  text-align: center;
  border-left: 1px solid rgba(180, 170, 155, 0.10);
}

body.flightops-ops-console .weatherTopbarCellLabel {
  color: var(--fo-text-muted);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.10em;
}

body.flightops-ops-console .weatherTopbarCellValue,
body.flightops-ops-console .weatherTopbarCollapsedSummary {
  color: var(--fo-text-primary);
  font-size: 12px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

body.flightops-ops-console .weatherTopbarCell[data-tone="good"] .weatherTopbarCellValue {
  color: #7edba4;
}

body.flightops-ops-console .weatherTopbarCell[data-tone="watch"] .weatherTopbarCellValue {
  color: #f5cc6e;
}

body.flightops-ops-console .weatherTopbarCell[data-tone="stop"] .weatherTopbarCellValue {
  color: #f09898;
}

body.flightops-ops-console .weatherTopbarCollapseBtn {
  min-width: 32px;
  color: var(--fo-text-muted);
}

body.flightops-ops-console .weatherTopbarCollapseBtn:hover {
  color: var(--fo-text-primary);
  background: var(--fo-bg-card);
}

body.flightops-ops-console .weatherTopbarSourceMenu,
body.flightops-ops-console .topbarWorkspaceMenu,
body.flightops-ops-console .authAccountMenu,
body.flightops-ops-console .topbarTrackLegendPanel {
  border-color: var(--fo-border-subtle);
  background: linear-gradient(180deg, #1e2024, #191b1f);
  box-shadow: 0 22px 44px rgba(0, 0, 0, 0.38);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .weatherTopbarSourceMenu button,
body.flightops-ops-console .topbarWorkspaceMenuItem,
body.flightops-ops-console .authAccountMenuItem {
  border-radius: var(--fo-radius-sm);
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .weatherTopbarSourceMenu button strong,
body.flightops-ops-console .topbarWorkspaceMenuItem strong,
body.flightops-ops-console .authAccountName {
  color: var(--fo-text-strong);
}

body.flightops-ops-console .weatherTopbarSourceMenu button span,
body.flightops-ops-console .weatherTopbarSourceMenu button small,
body.flightops-ops-console .topbarWorkspaceMenuMeta,
body.flightops-ops-console .topbarWorkspaceMenuItem small,
body.flightops-ops-console .authAccountRole {
  color: var(--fo-text-muted);
}

body.flightops-ops-console .weatherTopbarSourceMenu button.active,
body.flightops-ops-console .weatherTopbarSourceMenu button:hover,
body.flightops-ops-console .topbarWorkspaceMenuItem.active,
body.flightops-ops-console .topbarWorkspaceMenuItem:hover,
body.flightops-ops-console .authAccountMenuItem:hover {
  background: var(--fo-bg-card-hover);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .topbarWorkspaceMenuBadge,
body.flightops-ops-console .topbarIconBadge {
  background: var(--fo-accent-soft);
  border-color: var(--fo-border-strong);
  color: var(--fo-accent-hover);
}

/* Beta23 track legend and ruler theme cleanup. */
body.flightops-ops-console .topbarTrackLegendPanel {
  border-color: var(--fo-border-subtle);
  background: linear-gradient(180deg, var(--fo-bg-surface-2), var(--fo-bg-surface));
  box-shadow: var(--fo-shadow-2);
}

body.flightops-ops-console .topbarTrackLegendItem {
  border-color: var(--fo-border-subtle);
  background: var(--fo-bg-card);
  color: var(--fo-text-primary);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

body.flightops-ops-console .topbarTrackLegendItem:hover {
  border-color: var(--fo-border-medium);
  background: var(--fo-bg-card-hover);
}

body.flightops-ops-console .topbarTrackLegendSwatch {
  border: 1px solid var(--fo-border-subtle);
  background: var(--fo-bg-card-soft);
}

body.flightops-ops-console .topbarTrackLegendCloseBtn,
body.flightops-ops-console .measureControl.compact .measureCompactBtn {
  border-color: var(--fo-border-subtle) !important;
  background: var(--fo-bg-card) !important;
  color: var(--fo-accent) !important;
  box-shadow: none !important;
}

body.flightops-ops-console .measureControl.compact {
  background: transparent !important;
  box-shadow: none !important;
  pointer-events: auto !important;
}

body.flightops-ops-console .measureControl.compact::before {
  pointer-events: none !important;
}

body.flightops-ops-console .topbarTrackLegendCloseBtn:hover,
body.flightops-ops-console .measureControl.compact .measureCompactBtn:hover,
body.flightops-ops-console .measureControl.compact .measureCompactBtn.active {
  border-color: var(--fo-border-strong) !important;
  background: var(--fo-accent-soft) !important;
  color: var(--fo-accent-hover) !important;
}

@media (min-width: 1024px) {
  /* Warm Ops Option 3 weather topbar: two-deck micro strip */
  body.flightops-ops-console .weatherTopbarStrip {
    display: grid !important;
    grid-template-columns: 148px minmax(0, 1fr) 34px !important;
    grid-template-rows: 25px 27px !important;
    align-items: stretch !important;
    gap: 2px 4px !important;
    height: 60px !important;
    min-height: 60px !important;
    flex-wrap: initial !important;
  }

  body.flightops-ops-console .weatherTopbarStatusBtn {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    height: 100% !important;
    min-width: 148px !important;
    padding: 0 12px !important;
  }

  body.flightops-ops-console .weatherTopbarStatusTextWrap {
    display: grid !important;
  }

  body.flightops-ops-console .weatherTopbarSourceWrap {
    grid-column: 2 !important;
    grid-row: 1 !important;
    flex: initial !important;
    min-width: 0 !important;
    height: 25px !important;
  }

  body.flightops-ops-console .weatherTopbarSourceBtn {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 0 !important;
    height: 100% !important;
    padding: 0 28px 0 10px !important;
    background: rgba(212, 168, 74, 0.08) !important;
    border-color: rgba(212, 168, 74, 0.16) !important;
  }

  body.flightops-ops-console .weatherTopbarSourceBtn .weatherTopbarCellLabel {
    flex: 1 1 auto !important;
    color: var(--fo-text-strong) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  body.flightops-ops-console #weatherTopbarSourceValue {
    flex: 0 1 auto !important;
    max-width: 46% !important;
    color: var(--fo-accent) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
  }

  body.flightops-ops-console .weatherTopbarCollapsedSummary,
  body.flightops-ops-console .weatherTopbarDetails {
    order: 0 !important;
  }

  body.flightops-ops-console .weatherTopbarCollapsedSummary {
    grid-column: 2 !important;
    grid-row: 2 !important;
    min-height: 0 !important;
    height: 27px !important;
    padding: 0 10px !important;
    border-radius: var(--fo-radius-xs) !important;
    background: var(--fo-bg-card) !important;
    border: 1px solid var(--fo-border-subtle) !important;
    align-content: center !important;
  }

  body.flightops-ops-console .weatherTopbarDetails {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 2px !important;
    flex: 1 1 auto !important;
    grid-auto-columns: initial !important;
    overflow-x: hidden !important;
    padding-right: 0 !important;
    scrollbar-width: none !important;
  }

  body.flightops-ops-console .weatherTopbarDetails::-webkit-scrollbar {
    display: none !important;
    height: 0 !important;
  }

  body.flightops-ops-console .weatherTopbarCell {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    min-height: 0 !important;
    height: 27px !important;
    padding: 0 6px !important;
    border: 1px solid var(--fo-border-subtle) !important;
    border-radius: var(--fo-radius-xs) !important;
    background: var(--fo-bg-card) !important;
    text-align: center !important;
  }

  body.flightops-ops-console .weatherTopbarCellLabel {
    max-width: 42%;
    font-size: 8px !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  body.flightops-ops-console .weatherTopbarCellValue {
    max-width: 58%;
    font-size: 10px !important;
    font-weight: 900 !important;
  }

  body.flightops-ops-console .weatherTopbarWideOptional {
    min-width: 0 !important;
  }

  body.flightops-ops-console #weatherTopbarDewpointCell,
  body.flightops-ops-console #weatherTopbarAltimeterCell {
    display: none !important;
  }

  body.flightops-ops-console .weatherTopbarCollapseBtn {
    grid-column: 3 !important;
    grid-row: 1 / span 2 !important;
    min-width: 0 !important;
    height: 100% !important;
    align-self: stretch !important;
    border-radius: var(--fo-radius-sm) !important;
    background: var(--fo-bg-card) !important;
    border: 1px solid var(--fo-border-subtle) !important;
  }
}

/* Warm Ops beta6 weather topbar: stacked Weather/Source controls with full wind text */
body.flightops-ops-console .weatherTopbarCollapseBtn,
body.flightops-ops-console .weatherTopbarCollapsedSummary {
  display: none !important;
}

@media (min-width: 1024px) {
  body.flightops-ops-console .weatherTopbarStrip {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, 28px) !important;
    align-items: stretch !important;
    gap: 3px !important;
    height: 62px !important;
    min-height: 62px !important;
    padding: 3px !important;
    border-radius: var(--fo-radius-md) !important;
    overflow: visible !important;
  }

  body.flightops-ops-console .weatherTopbarStrip.is-collapsed .weatherTopbarDetails,
  body.flightops-ops-console .weatherTopbarDetails {
    display: contents !important;
  }

  body.flightops-ops-console .weatherTopbarStatusBtn,
  body.flightops-ops-console .weatherTopbarSourceWrap,
  body.flightops-ops-console .weatherTopbarSourceBtn,
  body.flightops-ops-console .weatherTopbarCell {
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 28px !important;
  }

  body.flightops-ops-console .weatherTopbarStatusBtn {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 0 8px !important;
    border-radius: var(--fo-radius-xs) !important;
  }

  body.flightops-ops-console .weatherTopbarStatusIcon {
    width: 16px !important;
    height: 16px !important;
    border-radius: 4px !important;
  }

  body.flightops-ops-console .weatherTopbarStatusIcon svg {
    width: 13px !important;
    height: 13px !important;
  }

  body.flightops-ops-console .weatherTopbarStatusTextWrap {
    display: block !important;
    min-width: 0 !important;
    text-align: left !important;
  }

  body.flightops-ops-console .weatherTopbarStatusTextWrap strong {
    display: block !important;
    font-size: 10px !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  body.flightops-ops-console .weatherTopbarStatusTextWrap small {
    display: none !important;
  }

  body.flightops-ops-console .weatherTopbarSourceWrap {
    grid-column: 1 !important;
    grid-row: 2 !important;
    flex: initial !important;
    position: relative !important;
    justify-self: stretch !important;
    align-self: stretch !important;
    width: 100% !important;
  }

  body.flightops-ops-console .weatherTopbarSourceBtn {
    display: grid !important;
    align-content: center !important;
    gap: 0 !important;
    padding: 0 18px 0 8px !important;
    border-radius: var(--fo-radius-xs) !important;
    background: rgba(212, 168, 74, 0.08) !important;
    border: 1px solid rgba(212, 168, 74, 0.18) !important;
    text-align: left !important;
    width: 100% !important;
  }

  body.flightops-ops-console .weatherTopbarSourceBtn::after {
    right: 7px !important;
    margin-top: -7px !important;
    font-size: 10px !important;
  }

  body.flightops-ops-console .weatherTopbarSourceBtn .weatherTopbarCellLabel,
  body.flightops-ops-console .weatherTopbarCellLabel {
    max-width: none !important;
    color: var(--fo-text-muted) !important;
    font-size: 8px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  body.flightops-ops-console #weatherTopbarSourceValue,
  body.flightops-ops-console .weatherTopbarCellValue {
    max-width: none !important;
    color: var(--fo-text-primary) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.flightops-ops-console #weatherTopbarSourceValue {
    color: var(--fo-accent) !important;
  }

  body.flightops-ops-console .weatherTopbarCell {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px !important;
    padding: 0 8px !important;
    border: 1px solid var(--fo-border-subtle) !important;
    border-left: 1px solid var(--fo-border-subtle) !important;
    border-radius: var(--fo-radius-xs) !important;
    background: var(--fo-bg-card) !important;
    text-align: left !important;
  }

  body.flightops-ops-console #weatherTopbarWindCell {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  body.flightops-ops-console #weatherTopbarVisibilityCell {
    grid-column: 3 !important;
    grid-row: 1 !important;
  }

  body.flightops-ops-console #weatherTopbarCeilingCell {
    grid-column: 4 !important;
    grid-row: 1 !important;
  }

  body.flightops-ops-console #weatherTopbarTempCell {
    grid-column: 5 !important;
    grid-row: 1 !important;
  }

  body.flightops-ops-console #weatherTopbarDewpointCell {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: flex !important;
  }

  body.flightops-ops-console #weatherTopbarAltimeterCell {
    grid-column: 3 !important;
    grid-row: 2 !important;
    display: flex !important;
  }

  body.flightops-ops-console #weatherTopbarDensityCell {
    grid-column: 4 !important;
    grid-row: 2 !important;
    display: flex !important;
  }

  body.flightops-ops-console #weatherTopbarAloftCell {
    grid-column: 5 !important;
    grid-row: 2 !important;
    display: flex !important;
  }

  body.flightops-ops-console .weatherTopbarWideOptional,
  body.flightops-ops-console .weatherTopbarOptional {
    min-width: 0 !important;
  }
}

/* Warm Ops beta weather layout */
body.flightops-ops-console #sidebar .panelSection[data-panel="weather"] {
  background: var(--fo-bg-page) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="weather"] .sectionBody {
  overflow: hidden !important;
}

body.flightops-ops-console .weatherHeroStats,
body.flightops-ops-console .weatherWorkspaceUtilities,
body.flightops-ops-console .weatherReferenceBlock,
body.flightops-ops-console .weatherMapControlsBlock,
body.flightops-ops-console .weatherRadarFocusBlock,
body.flightops-ops-console .weatherReferenceSummaryBlock {
  display: none !important;
}

body.flightops-ops-console .weatherShell {
  display: grid !important;
  grid-template-rows: 1fr !important;
  gap: 0 !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
  align-content: stretch !important;
  background: var(--fo-bg-page) !important;
}

body.flightops-ops-console .weatherWorkspace {
  display: grid !important;
  grid-template-columns: 236px minmax(0, 1fr) !important;
  gap: 0 !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  align-items: stretch !important;
}

body.flightops-ops-console .weatherWorkspacePrimary {
  display: contents !important;
}

body.flightops-ops-console .weatherOpsColumn.weatherOpsLeft {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  background: var(--fo-bg-surface) !important;
  border-right: 1px solid var(--fo-border-subtle) !important;
}

body.flightops-ops-console .weatherOpsColumn.weatherOpsCenter {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  background: var(--fo-bg-page) !important;
}

body.flightops-ops-console .weatherQuickActions {
  margin-top: auto;
  padding: 10px 12px 12px;
  border-top: 1px solid var(--fo-border-subtle);
  background: var(--fo-bg-card);
}

body.flightops-ops-console .weatherQuickActions .weatherSectionHeader {
  padding: 0 0 7px !important;
}

body.flightops-ops-console .weatherQuickActionsList {
  display: grid;
  gap: 5px;
}

body.flightops-ops-console .weatherQuickActionBtn {
  width: 100%;
  min-height: 32px;
  padding: 7px 10px;
  border-radius: var(--fo-radius-sm);
  border: 1px solid var(--fo-border-subtle);
  background: var(--fo-bg-surface);
  color: var(--fo-text-primary);
  font-size: 11px;
  font-weight: 700;
  text-align: left;
}

body.flightops-ops-console .weatherQuickActionBtn:hover {
  background: var(--fo-bg-card-hover);
  border-color: var(--fo-border-medium);
  color: var(--fo-text-strong);
}

body.flightops-ops-console .weatherOpsLeft::-webkit-scrollbar,
body.flightops-ops-console .weatherOpsCenter::-webkit-scrollbar {
  width: 4px;
}

body.flightops-ops-console .weatherOpsLeft::-webkit-scrollbar-thumb,
body.flightops-ops-console .weatherOpsCenter::-webkit-scrollbar-thumb {
  background: rgba(180, 170, 155, 0.18);
  border-radius: 999px;
}

@media (max-width: 980px) {
  body.flightops-ops-console .weatherWorkspace {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: minmax(0, 1fr) auto !important;
  }

  body.flightops-ops-console .weatherOpsColumn.weatherOpsCenter {
    grid-row: 1 !important;
  }

  body.flightops-ops-console .weatherOpsColumn.weatherOpsLeft {
    grid-row: 2 !important;
    max-height: 42vh;
    border-right: 0 !important;
    border-top: 1px solid var(--fo-border-subtle) !important;
  }
}

/* Warm Ops beta weather content */
body.flightops-ops-console .weatherBlock {
  gap: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.flightops-ops-console .weatherSensorNetworkBlock,
body.flightops-ops-console .weatherStationComparisonBlock {
  flex: 0 0 auto;
}

body.flightops-ops-console .weatherSelectedReportBlock {
  flex: 0 0 auto;
  padding: 10px 20px 12px !important;
  border-bottom: 1px solid var(--fo-border-subtle) !important;
  background: var(--fo-bg-surface) !important;
}

body.flightops-ops-console .weatherFieldSummaryWideBlock {
  flex: 1 1 auto;
  min-height: 0;
  padding: 0 !important;
}

body.flightops-ops-console .weatherSectionHeader {
  padding: 10px 12px 5px !important;
}

body.flightops-ops-console .weatherSelectedReportBlock .weatherSectionHeader,
body.flightops-ops-console .weatherFieldSummaryWideBlock .weatherSectionHeader {
  padding: 4px 0 10px !important;
}

body.flightops-ops-console .weatherFieldSummaryWideBlock .weatherSectionHeader {
  padding: 14px 20px 8px !important;
}

body.flightops-ops-console .weatherBlockTitle {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--fo-text-muted) !important;
  font-family: var(--fo-font-sans) !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body.flightops-ops-console .weatherSelectedReportBlock .weatherBlockTitle {
  color: var(--fo-accent) !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
}

body.flightops-ops-console .weatherFieldSummaryWideBlock .weatherBlockTitle {
  color: var(--fo-text-strong) !important;
  font-size: 13px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.flightops-ops-console .weatherBlockMeta {
  margin: 1px 0 0 !important;
  color: var(--fo-text-secondary) !important;
  font-size: 11px !important;
}

body.flightops-ops-console .weatherSelectedReportList,
body.flightops-ops-console .weatherSensorList,
body.flightops-ops-console .weatherStationComparisonList {
  gap: 0 !important;
}

body.flightops-ops-console .weatherSensorList .empty,
body.flightops-ops-console .weatherStationComparisonList .empty,
body.flightops-ops-console .weatherSelectedReportList .empty {
  margin: 8px 12px 12px;
  padding: 10px 12px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: var(--fo-radius-sm);
  background: var(--fo-bg-card);
  color: var(--fo-text-secondary);
}

body.flightops-ops-console #weatherSensorHealthBadge,
body.flightops-ops-console #weatherPinnedAviationCount,
body.flightops-ops-console #weatherSelectedReportBadge {
  border: 1px solid var(--fo-border-subtle);
  border-radius: var(--fo-radius-pill);
  background: var(--fo-bg-card);
  color: var(--fo-text-secondary);
  font-size: 10px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

body.flightops-ops-console #weatherPinnedAviationCount {
  color: #7edba4;
}

body.flightops-ops-console .weatherCompactCompareItem,
body.flightops-ops-console #weatherList .weatherSensorCompareItem {
  display: grid !important;
  gap: 5px !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  padding: 10px 12px !important;
  border: 0 !important;
  border-left: 2px solid transparent !important;
  border-bottom: 1px solid rgba(180, 170, 155, 0.06) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background 120ms ease, border-color 120ms ease;
}

body.flightops-ops-console .weatherCompactCompareItem:hover,
body.flightops-ops-console #weatherList .weatherSensorCompareItem:hover {
  background: var(--fo-bg-card) !important;
  transform: none !important;
}

body.flightops-ops-console .weatherCompactCompareItem.is-selected,
body.flightops-ops-console .weatherCompactCompareItem.active,
body.flightops-ops-console #weatherList .weatherSensorCompareItem.is-selected {
  background: var(--fo-accent-soft) !important;
  border-left-color: var(--fo-accent) !important;
  border-bottom-color: rgba(212, 168, 74, 0.16) !important;
  box-shadow: none !important;
}

body.flightops-ops-console .weatherCompactCompareTop {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 8px !important;
  align-items: center;
  min-width: 0 !important;
}

body.flightops-ops-console .weatherCompactCompareTitle {
  min-width: 0 !important;
  color: var(--fo-text-strong) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.18;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

body.flightops-ops-console .weatherCompactCompareBadge {
  max-width: 86px !important;
  min-width: 0 !important;
  min-height: 20px !important;
  padding: 2px 7px !important;
  border-radius: var(--fo-radius-pill) !important;
  border-color: rgba(94, 234, 212, 0.22) !important;
  background: rgba(13, 148, 136, 0.14) !important;
  color: #99f6e4 !important;
  font-size: 8px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.flightops-ops-console .weatherCompactCompareSummary {
  min-width: 0 !important;
  color: var(--fo-text-secondary) !important;
  font-size: 11px !important;
  line-height: 1.36;
  overflow-wrap: anywhere !important;
  white-space: normal !important;
  word-break: break-word !important;
}

body.flightops-ops-console .weatherCompactCompareMeta {
  min-width: 0 !important;
  color: var(--fo-text-muted) !important;
  font-size: 10px !important;
  line-height: 1.35;
  overflow-wrap: anywhere !important;
  white-space: normal !important;
  word-break: break-word !important;
}

body.flightops-ops-console .weatherPinnedManagerCompact {
  margin: 10px 12px 12px;
  border-color: var(--fo-border-subtle) !important;
  border-radius: var(--fo-radius-sm) !important;
  background: var(--fo-bg-card) !important;
}

body.flightops-ops-console .weatherSelectedReportPanel {
  gap: 8px !important;
}

body.flightops-ops-console .weatherSelectedReportDecoded {
  gap: 8px !important;
  padding: 10px 12px !important;
  border-radius: var(--fo-radius-sm) !important;
  border: 1px solid var(--fo-border-subtle) !important;
  background: rgba(255, 255, 255, 0.02) !important;
}

body.flightops-ops-console .weatherSelectedReportDecoded strong,
body.flightops-ops-console .weatherSelectedReportMetricLabel {
  color: var(--fo-text-muted) !important;
  font-size: 9px !important;
}

body.flightops-ops-console .weatherSelectedReportDecodedBody {
  color: var(--fo-text-primary) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

body.flightops-ops-console .weatherSelectedReportCopyBtn {
  min-height: 26px;
  border-radius: var(--fo-radius-sm);
  border-color: var(--fo-border-subtle);
  background: var(--fo-bg-card);
  color: var(--fo-text-secondary);
}

body.flightops-ops-console .weatherSelectedReportCopyBtn:hover {
  border-color: var(--fo-border-medium);
  background: var(--fo-bg-card-hover);
  color: var(--fo-text-primary);
}

body.flightops-ops-console .weatherSelectedReportMetaGrid {
  grid-template-columns: repeat(auto-fit, minmax(156px, 1fr)) !important;
  gap: 6px !important;
}

body.flightops-ops-console .weatherSelectedReportMetricCard {
  gap: 2px !important;
  padding: 6px 10px !important;
  border-radius: var(--fo-radius-xs) !important;
  border: 1px solid rgba(180, 170, 155, 0.05) !important;
  background: rgba(255, 255, 255, 0.025) !important;
}

body.flightops-ops-console .weatherSelectedReportMetricValue {
  color: var(--fo-text-strong) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

body.flightops-ops-console .weatherSelectedReportMetricDetail {
  color: var(--fo-text-secondary) !important;
  font-size: 10px !important;
}

body.flightops-ops-console .weatherSelectedReportRaw {
  padding: 9px 10px !important;
  border-radius: var(--fo-radius-sm) !important;
  border-color: var(--fo-border-subtle) !important;
  background: var(--fo-bg-input) !important;
  color: var(--fo-text-secondary) !important;
  font-size: 11px !important;
  overflow-wrap: anywhere !important;
  white-space: pre-wrap !important;
  word-break: break-word !important;
}

body.flightops-ops-console .weatherStationCard,
body.flightops-ops-console .weatherStationCardHead,
body.flightops-ops-console .weatherStationHeadMain,
body.flightops-ops-console .weatherStationSummaryStrip,
body.flightops-ops-console .weatherStationRawSection,
body.flightops-ops-console .weatherStationRawBody {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.flightops-ops-console .weatherStationRawBody {
  overflow-x: hidden !important;
  overflow-wrap: anywhere !important;
  white-space: pre-wrap !important;
  word-break: break-word !important;
}

body.flightops-ops-console #weatherFieldSummaryList {
  padding: 0 0 18px;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixPanel {
  gap: 8px !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseLegendChips,
body.flightops-ops-console #weatherFieldSummaryList .weatherForecastMatrixModeSwitch,
body.flightops-ops-console #weatherFieldSummaryList .weatherForecastMatrixModeActions,
body.flightops-ops-console #weatherFieldSummaryList .weatherForecastMatrixActions,
body.flightops-ops-console #weatherFieldSummaryList .weatherForecastMatrixMeta {
  display: none !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixLegend {
  justify-content: flex-start !important;
  padding: 0 20px;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseLegendNote {
  color: var(--fo-text-muted) !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherForecastMatrixSection {
  gap: 8px !important;
  padding: 0 20px 16px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherForecastMatrixSectionTitle {
  color: var(--fo-text-muted) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.06em !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherForecastMatrixSectionNote {
  color: var(--fo-text-secondary) !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixTable {
  overflow: hidden !important;
  border: 1px solid var(--fo-border-subtle) !important;
  border-radius: var(--fo-radius-sm) !important;
  background: var(--fo-bg-card) !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixTable th,
body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixTable td {
  border-color: rgba(180, 170, 155, 0.05) !important;
  color: var(--fo-text-primary) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixTable th {
  background: var(--fo-bg-elevated) !important;
  color: var(--fo-text-muted) !important;
  font-size: 9px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixHeadLabel,
body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixLabel {
  background: var(--fo-bg-card) !important;
  box-shadow: 1px 0 0 rgba(180, 170, 155, 0.08) !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixLabel strong,
body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixTime strong {
  color: var(--fo-text-primary) !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixTime span,
body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixCell .detail,
body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixCell .unit {
  color: var(--fo-text-muted) !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixCell {
  background: var(--fo-bg-card) !important;
  color: var(--fo-text-primary) !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixCell .metric {
  color: inherit !important;
}

body.flightops-ops-console .weatherToneGood,
body.flightops-ops-console td.weatherToneGood,
body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixCell.weatherToneGood {
  background: rgba(52, 184, 102, 0.08) !important;
  color: #7edba4 !important;
}

body.flightops-ops-console .weatherToneWatch,
body.flightops-ops-console td.weatherToneWatch,
body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixCell.weatherToneWatch {
  background: rgba(232, 168, 50, 0.08) !important;
  color: #f5cc6e !important;
}

body.flightops-ops-console .weatherToneStop,
body.flightops-ops-console td.weatherToneStop,
body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixCell.weatherToneStop {
  background: rgba(224, 84, 84, 0.08) !important;
  color: #f09898 !important;
}

body.flightops-ops-console #weatherFieldSummaryList .weatherDenseMatrixCell.weatherToneInfo {
  background: rgba(158, 152, 144, 0.08) !important;
  color: var(--fo-text-secondary) !important;
}

/* Warm Ops beta4 popouts and alert workspace. */
body.flightops-ops-console {
  --fo-warm-panel: rgba(23, 22, 20, 0.98);
  --fo-warm-panel-deep: rgba(14, 14, 13, 0.995);
  --fo-warm-panel-soft: rgba(255, 255, 255, 0.045);
  --fo-warm-line: rgba(214, 181, 111, 0.26);
  --fo-warm-line-soft: rgba(225, 214, 191, 0.13);
  --fo-warm-text: #f1eee7;
  --fo-warm-strong: #fff6da;
  --fo-warm-muted: #b9ad98;
  --fo-warm-dim: #8f8676;
  --fo-warm-accent: #d4a84a;
}

body.flightops-ops-console #monitoringDockToggle,
body.flightops-ops-console #mapUtilityDrawerToggle,
body.flightops-ops-console .flightopsMapDomZoomControl .flightopsMapDomZoomBtn,
body.flightops-ops-console .basemapBtn,
body.flightops-ops-console .clearPinsBtn,
body.flightops-ops-console .measureControl {
  border-color: var(--fo-warm-line) !important;
  background: linear-gradient(180deg, rgba(28, 27, 24, 0.98), rgba(14, 14, 13, 0.985)) !important;
  color: var(--fo-warm-text) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

body.flightops-ops-console #monitoringDock .monitorCard,
body.flightops-ops-console #monitoringDock .empty,
body.flightops-ops-console #mapUtilityDrawerPanel,
body.flightops-ops-console .mapUtilityDrawerPanel,
body.flightops-ops-console .basemapPopover,
body.flightops-ops-console .mapCoordinateToast {
  border-color: var(--fo-warm-line) !important;
  background: linear-gradient(180deg, var(--fo-warm-panel), var(--fo-warm-panel-deep)) !important;
  color: var(--fo-warm-text) !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

body.flightops-ops-console .mapUtilityDrawerHeader,
body.flightops-ops-console .basemapThumb {
  border-color: var(--fo-warm-line-soft) !important;
  background: rgba(255, 255, 255, 0.04) !important;
}

body.flightops-ops-console .basemapBtn.open,
body.flightops-ops-console .basemapThumb.active {
  border-color: rgba(212, 168, 74, 0.56) !important;
  background: rgba(212, 168, 74, 0.14) !important;
}

body.flightops-ops-console .basemapThumb:hover,
body.flightops-ops-console .basemapBtn:hover,
body.flightops-ops-console .clearPinsBtn:hover,
body.flightops-ops-console .measureControl button:hover,
body.flightops-ops-console .flightopsMapDomZoomControl .flightopsMapDomZoomBtn:hover {
  border-color: rgba(212, 168, 74, 0.42) !important;
  background: rgba(212, 168, 74, 0.12) !important;
}

body.flightops-ops-console .mapUtilityDrawerTitle,
body.flightops-ops-console #monitoringDock .monitorTitle,
body.flightops-ops-console .monitorTitle,
body.flightops-ops-console .basemapPopoverCurrent,
body.flightops-ops-console .measureTitle,
body.flightops-ops-console .measureValue {
  color: var(--fo-warm-strong) !important;
}

body.flightops-ops-console #monitoringDock .monitorStatus,
body.flightops-ops-console .monitorStatus,
body.flightops-ops-console #monitoringDock .monitorMeta .sub,
body.flightops-ops-console .monitorMeta .sub,
body.flightops-ops-console .monitorMiniMeta,
body.flightops-ops-console .monitorMiniLabel,
body.flightops-ops-console .basemapPopoverTitle,
body.flightops-ops-console .measureStatus {
  color: var(--fo-warm-muted) !important;
}

body.flightops-ops-console .panelSection[data-panel="alerts"] {
  background: linear-gradient(180deg, rgba(17, 17, 16, 0.995), rgba(10, 10, 9, 0.998)) !important;
  border-color: rgba(214, 181, 111, 0.24) !important;
  box-shadow: 0 22px 54px rgba(0, 0, 0, 0.48) !important;
  color: var(--fo-warm-text) !important;
}

body.flightops-ops-console .panelSection[data-panel="alerts"] .head {
  background: linear-gradient(180deg, rgba(28, 27, 24, 0.98), rgba(17, 16, 15, 0.99)) !important;
  border-top-color: rgba(212, 168, 74, 0.52) !important;
  border-bottom-color: var(--fo-warm-line) !important;
}

body.flightops-ops-console .panelSection[data-panel="alerts"] .head h2,
body.flightops-ops-console .panelSection[data-panel="alerts"] .name,
body.flightops-ops-console .panelSection[data-panel="alerts"] .value,
body.flightops-ops-console .panelSection[data-panel="alerts"] .alertClosestName,
body.flightops-ops-console .panelSection[data-panel="alerts"] .alertListTitle,
body.flightops-ops-console #alertDetachedHost .name,
body.flightops-ops-console #alertDetachedHost .alertClosestName,
body.flightops-ops-console #alertDetachedHost .alertListTitle {
  color: var(--fo-warm-text) !important;
}

body.flightops-ops-console .panelSection[data-panel="alerts"] .label,
body.flightops-ops-console .panelSection[data-panel="alerts"] .sub,
body.flightops-ops-console .panelSection[data-panel="alerts"] .empty,
body.flightops-ops-console .panelSection[data-panel="alerts"] .alertWorkspaceListCounts,
body.flightops-ops-console .panelSection[data-panel="alerts"] .alertClosestLabel,
body.flightops-ops-console .panelSection[data-panel="alerts"] .alertClosestMeta,
body.flightops-ops-console .panelSection[data-panel="alerts"] .alertWindowMeta,
body.flightops-ops-console .panelSection[data-panel="alerts"] .alertTrafficMeta,
body.flightops-ops-console .panelSection[data-panel="alerts"] .phase1SaveStatus,
body.flightops-ops-console #alertDetachedHost .sub,
body.flightops-ops-console #alertDetachedHost .empty,
body.flightops-ops-console #alertDetachedHost .alertClosestLabel,
body.flightops-ops-console #alertDetachedHost .alertClosestMeta,
body.flightops-ops-console #alertDetachedHost .alertWindowMeta,
body.flightops-ops-console #alertDetachedHost .alertTrafficMeta {
  color: var(--fo-warm-muted) !important;
}

body.flightops-ops-console .alertWorkspaceBlock,
body.flightops-ops-console .alertWorkspaceEditor,
body.flightops-ops-console .alertWorkspaceListItem,
body.flightops-ops-console .alertWorkspaceFocusPanel,
body.flightops-ops-console .alertWorkspaceMetricChip,
body.flightops-ops-console .alertWorkspaceSourceSummary,
body.flightops-ops-console .alertSignalCard,
body.flightops-ops-console .alertSignalSlider,
body.flightops-ops-console .alertSignalPreviewPill,
body.flightops-ops-console .alertAreaLibraryItem,
body.flightops-ops-console .alertDetachedCard,
body.flightops-ops-console .alertDetachedCardOption2,
body.flightops-ops-console .alertDetachedCardOption3 {
  border-color: var(--fo-warm-line-soft) !important;
  background: linear-gradient(180deg, rgba(23, 22, 20, 0.96), rgba(14, 14, 13, 0.985)) !important;
  color: var(--fo-warm-text) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03) !important;
}

body.flightops-ops-console .alertWorkspaceListItem.active,
body.flightops-ops-console .alertDetachedCardOption3 .alertDetachedThreatQueueRow.selected {
  border-color: rgba(212, 168, 74, 0.48) !important;
  background: rgba(212, 168, 74, 0.12) !important;
  box-shadow: 0 0 0 1px rgba(212, 168, 74, 0.08) !important;
}

body.flightops-ops-console .alertWorkspaceFocusKicker,
body.flightops-ops-console .alertWorkspaceMetricChip span,
body.flightops-ops-console .alertWorkspaceEditorMeta,
body.flightops-ops-console .alertWorkspaceEditorNote,
body.flightops-ops-console .alertWorkspaceListHint,
body.flightops-ops-console .alertSignalSliderLabel span,
body.flightops-ops-console .alertSignalSelectMeta,
body.flightops-ops-console .alertSignalPreviewPill span,
body.flightops-ops-console .alertDetachedCardOption3 .alertDetachedThreatQueueTitle,
body.flightops-ops-console .alertDetachedCardOption3 .alertDetachedThreatQueueHint,
body.flightops-ops-console .alertDetachedCardOption3 .alertDetachedThreatQueueMeta,
body.flightops-ops-console .alertDetachedCardOption3 .alertEtaPromotedMeta,
body.flightops-ops-console .alertDetachedCardOption3 .alertEtaPromotedSubmeta {
  color: var(--fo-warm-muted) !important;
}

body.flightops-ops-console .alertWorkspaceFocusTitle,
body.flightops-ops-console .alertWorkspaceMetricChip strong,
body.flightops-ops-console .alertSignalSliderLabel strong,
body.flightops-ops-console .alertSignalSliderValue,
body.flightops-ops-console .alertSignalPreviewPill strong,
body.flightops-ops-console .alertDetachedCardOption3 .alertEtaMonitorLabel,
body.flightops-ops-console .alertDetachedCardOption3 .alertEtaPromotedTitle,
body.flightops-ops-console .alertDetachedCardOption3 .alertEtaPromotedEta,
body.flightops-ops-console .alertDetachedCardOption3 .alertDetachedThreatQueueName,
body.flightops-ops-console .alertDetachedCardOption3 .alertDetachedThreatQueueEta {
  color: var(--fo-warm-strong) !important;
}

body.flightops-ops-console .panelSection[data-panel="alerts"] select,
body.flightops-ops-console .panelSection[data-panel="alerts"] input,
body.flightops-ops-console #alertDetachedHost select,
body.flightops-ops-console #alertDetachedHost input,
body.flightops-ops-console .alertSignalControls input[type="number"],
body.flightops-ops-console .alertSignalControls select {
  border-color: rgba(214, 181, 111, 0.28) !important;
  background: rgba(11, 11, 10, 0.92) !important;
  color: var(--fo-warm-text) !important;
}

body.flightops-ops-console .alertSignalControls input[type="range"] {
  accent-color: var(--fo-warm-accent) !important;
}

body.flightops-ops-console .panelSection[data-panel="alerts"] .badge,
body.flightops-ops-console .alertWorkspaceStatePill,
body.flightops-ops-console .alertWorkspaceSignalPill,
body.flightops-ops-console .alertWorkspaceCountPill,
body.flightops-ops-console .alertDetachedCardOption3 .alertEtaCountPill,
body.flightops-ops-console .alertDetachedCardOption3 .alertDetachedThreatQueueIndex {
  border-color: var(--fo-warm-line-soft) !important;
  background: rgba(255, 255, 255, 0.055) !important;
  color: var(--fo-warm-text) !important;
}

body.flightops-ops-console .alertCardOptionB,
body.flightops-ops-console .alertCardOptionB.idle,
body.flightops-ops-console .alertCardOptionB.standby,
body.flightops-ops-console .alertCardOptionB.clear {
  border-color: var(--fo-warm-line-soft) !important;
  background: rgba(17, 16, 15, 0.96) !important;
}

body.flightops-ops-console .alertCardOptionB.advisory,
body.flightops-ops-console .alertWorkspaceFocusPanel.advisory,
body.flightops-ops-console .alertWorkspaceMetricChip.advisory,
body.flightops-ops-console .alertWorkspaceStatePill.advisory,
body.flightops-ops-console .alertWorkspaceSignalPill.projected {
  border-color: rgba(245, 158, 11, 0.34) !important;
  background: rgba(161, 98, 7, 0.16) !important;
  color: #fde68a !important;
}

body.flightops-ops-console .alertCardOptionB.warning,
body.flightops-ops-console .alertWorkspaceFocusPanel.warning,
body.flightops-ops-console .alertWorkspaceMetricChip.warning,
body.flightops-ops-console .alertWorkspaceStatePill.warning {
  border-color: rgba(249, 115, 22, 0.38) !important;
  background: rgba(154, 52, 18, 0.18) !important;
  color: #fdba74 !important;
}

body.flightops-ops-console .alertCardOptionB.critical,
body.flightops-ops-console .alertWorkspaceFocusPanel.critical,
body.flightops-ops-console .alertWorkspaceMetricChip.critical,
body.flightops-ops-console .alertWorkspaceStatePill.critical {
  border-color: rgba(239, 68, 68, 0.42) !important;
  background: rgba(127, 29, 29, 0.2) !important;
  color: #fecaca !important;
}

body.flightops-ops-console .alertWorkspaceMetricChip.clear,
body.flightops-ops-console .alertWorkspaceStatePill.clear,
body.flightops-ops-console .alertWorkspaceSignalPill.current {
  border-color: rgba(34, 197, 94, 0.32) !important;
  background: rgba(22, 163, 74, 0.15) !important;
  color: #dcfce7 !important;
}

body.flightops-ops-console .panelSection[data-panel="alerts"] .alertHeroPanel,
body.flightops-ops-console #alertDetachedHost .alertHeroPanel,
body.flightops-ops-console .panelSection[data-panel="alerts"] .alertClosestCard,
body.flightops-ops-console .panelSection[data-panel="alerts"] .alertCountCard,
body.flightops-ops-console .panelSection[data-panel="alerts"] .alertListCompact .item,
body.flightops-ops-console #alertDetachedHost .alertClosestCard,
body.flightops-ops-console #alertDetachedHost .alertCountCard,
body.flightops-ops-console #alertDetachedHost .alertListCompact .item,
body.flightops-ops-console #aircraftAlertCard .alertClosestCard {
  border-color: var(--fo-warm-line-soft) !important;
  background: rgba(15, 14, 13, 0.9) !important;
  color: var(--fo-warm-text) !important;
}

body.flightops-ops-console #aircraftAlertCard.warning .alertClosestCard {
  background: rgba(45, 34, 16, 0.96) !important;
}

body.flightops-ops-console #aircraftAlertCard.critical .alertClosestCard {
  background: rgba(42, 18, 20, 0.96) !important;
}

body.flightops-ops-console .alertGuidanceBadge {
  border-color: rgba(214, 181, 111, 0.24) !important;
  background: rgba(16, 15, 14, 0.94) !important;
  color: var(--fo-warm-text) !important;
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.32) !important;
}

/* 2026-05-20 - Alert Card Option 1 floating card + Map V2 pin controls. */
body.flightops-ops-console .alertDetachedCardOption3 {
  width: var(--alert-card-width) !important;
  border-radius: 8px !important;
  overflow: hidden;
  background: var(--alert-card-bg) !important;
  border: 1px solid var(--alert-card-border) !important;
  box-shadow: var(--alert-card-shadow) !important;
  backdrop-filter: blur(var(--alert-card-blur));
}

body.flightops-ops-console .alertCardOption1 {
  display: grid;
  width: 100%;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: var(--fo-text-primary);
}

body.flightops-ops-console .alertDetachedCardOption3.advisory {
  border-color: rgba(255, 191, 0, 0.48) !important;
}

body.flightops-ops-console .alertDetachedCardOption3.warning {
  border-color: rgba(255, 225, 0, 0.64) !important;
  box-shadow: 0 14px 38px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 225, 0, 0.16) !important;
}

body.flightops-ops-console .alertDetachedCardOption3.critical {
  border-color: rgba(255, 43, 43, 0.76) !important;
  box-shadow: 0 14px 38px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 43, 43, 0.2) !important;
}

body.flightops-ops-console .alertCardOption1 .alertEtaMonitorTop {
  min-height: 28px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 5px 12px;
  border-bottom: 1px solid var(--alert-card-rule);
}

body.flightops-ops-console .alertCardOption1 .alertEtaMonitorLabel {
  min-width: 0;
  color: var(--fo-text-strong) !important;
  font: 900 12px/1 var(--fo-font-sans);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .alertEtaMonitorControls {
  display: flex;
  align-items: center;
  gap: 5px;
}

body.flightops-ops-console .alertDetachedCloseBtn {
  width: 24px;
  height: 24px;
  min-width: 24px;
  padding: 0 !important;
  display: grid;
  place-items: center;
  border-radius: 6px !important;
  border: 1px solid var(--alert-card-rule) !important;
  background: rgba(255, 255, 255, 0.035) !important;
  color: var(--fo-text-primary) !important;
  font: 900 11px/1 var(--strip-font);
}

body.flightops-ops-console .alertCardOption1 .alertEtaCountRow {
  display: flex;
  gap: 0;
  border-bottom: 1px solid var(--alert-card-rule);
}

body.flightops-ops-console .alertCardOption1 .alertEtaCountPill {
  flex: 1 1 0;
  min-width: 0;
  height: 34px;
  display: grid;
  place-items: center;
  padding: 0 8px;
  border: 0 !important;
  border-right: 1px solid var(--alert-card-rule) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--fo-text-secondary) !important;
  font: 900 10px/1 var(--fo-font-sans);
  white-space: nowrap;
}

body.flightops-ops-console .alertCardOption1 .alertEtaCountPill.advisory {
  color: var(--alert-card-advisory) !important;
  background: rgba(255, 191, 0, 0.08) !important;
}

body.flightops-ops-console .alertCardOption1 .alertEtaCountPill.warning {
  color: var(--alert-card-warning) !important;
  background: rgba(255, 225, 0, 0.1) !important;
}

body.flightops-ops-console .alertCardOption1 .alertEtaCountPill.critical {
  color: var(--alert-card-critical) !important;
  background: rgba(255, 43, 43, 0.13) !important;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromoted {
  display: grid;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedSlot {
  display: grid;
  gap: 6px;
  padding: 11px 14px;
  border-bottom: 1px solid var(--alert-card-rule);
  border-radius: 0;
  background: transparent !important;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedSlot.critical {
  background: var(--alert-row-crit-tint) !important;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedSlot.warning {
  background: var(--alert-row-warn-tint) !important;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedSlot.advisory {
  background: var(--alert-row-adv-tint) !important;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedTop {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedTitle {
  color: var(--fo-text-strong) !important;
  font: 900 15px/1.1 var(--strip-font);
  letter-spacing: 0;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedTopMeta {
  display: flex;
  align-items: center;
  gap: 8px;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedEta {
  color: var(--fo-text-strong) !important;
  font: 900 14px/1 var(--strip-font);
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedSlot.critical .alertEtaPromotedEta {
  color: var(--alert-card-critical) !important;
  animation: alert-timer-crit-pulse 1.3s ease-in-out infinite;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedSlot.warning .alertEtaPromotedEta {
  color: var(--alert-card-warning) !important;
  text-shadow: 0 0 10px rgba(255, 225, 0, 0.42);
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedSlot.advisory .alertEtaPromotedEta {
  color: var(--alert-card-advisory) !important;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedBadge,
body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueBadge {
  padding: 4px 7px;
  border-radius: 999px;
  border: 1px solid var(--alert-card-rule);
  background: rgba(255, 255, 255, 0.045);
  color: var(--fo-text-primary);
  font: 900 9px/1 var(--fo-font-sans);
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedBadge.critical,
body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueBadge.critical {
  border-color: var(--alert-badge-crit-border);
  background: var(--alert-badge-crit-bg);
  color: var(--alert-card-critical);
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedBadge.warning,
body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueBadge.warning {
  border-color: var(--alert-badge-warn-border);
  background: var(--alert-badge-warn-bg);
  color: var(--alert-card-warning);
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedBadge.advisory,
body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueBadge.advisory {
  border-color: var(--alert-badge-adv-border);
  background: var(--alert-badge-adv-bg);
  color: var(--alert-card-advisory);
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedMeta {
  color: var(--fo-text-secondary) !important;
  font: 900 9px/1 var(--fo-font-sans);
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body.flightops-ops-console .alertCardOption1 .alertEtaPromotedSubmeta {
  color: var(--fo-text-secondary) !important;
  font: 500 11px/1.35 var(--fo-font-sans);
}

body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueue {
  display: grid;
}

body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueHead {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 14px 6px;
}

body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueTitle,
body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueHint {
  color: var(--fo-text-secondary) !important;
  font: 900 9px/1 var(--fo-font-sans);
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueRows {
  display: grid;
  max-height: 154px;
  overflow: auto;
}

body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueRow,
body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueRows .empty {
  padding: 9px 14px;
  border-top: 1px solid rgba(180, 170, 155, 0.1);
}

body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueRow {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueIndex {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  font: 900 10px/1 var(--strip-font);
}

body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueName,
body.flightops-ops-console .alertCardOption1 .alertDetachedThreatQueueEta {
  color: var(--fo-text-strong) !important;
  font-family: var(--strip-font);
}

@keyframes alert-timer-crit-pulse {
  0%, 100% { text-shadow: 0 0 0 transparent; }
  50% { text-shadow: 0 0 15px rgba(255, 43, 43, 0.86); }
}

@media (prefers-reduced-motion: reduce) {
  body.flightops-ops-console .alertCardOption1 .alertEtaPromotedSlot.critical .alertEtaPromotedEta {
    animation: none;
  }
}

/* Warm Glass beta9 audit completion surfaces. */
body.flightops-ops-console {
  --fo-audit-panel: rgba(25, 27, 31, 0.94);
  --fo-audit-panel-strong: rgba(17, 18, 20, 0.96);
  --fo-audit-panel-soft: rgba(30, 32, 36, 0.88);
  --fo-audit-line: rgba(180, 170, 155, 0.16);
  --fo-audit-line-strong: rgba(210, 170, 90, 0.34);
  --fo-audit-text: #e8e4df;
  --fo-audit-strong: #f5f2ee;
  --fo-audit-muted: #9e9890;
  --fo-audit-dim: #6b6660;
  --fo-audit-accent: #d4a84a;
  --fo-audit-accent-strong: #b8912e;
}

body.flightops-ops-console .sensorHistoryIntro,
body.flightops-ops-console .sensorHistoryToolbar,
body.flightops-ops-console .sensorHistoryWeatherArchive,
body.flightops-ops-console .sensorHistoryTimeline,
body.flightops-ops-console .sensorHistoryPane,
body.flightops-ops-console .sensorHistorySensorRow,
body.flightops-ops-console .sensorHistoryIncidentRow,
body.flightops-ops-console .sensorHistoryEmpty,
body.flightops-ops-console .sensorHistorySettingsStats .row,
body.flightops-ops-console .trackHistorySurface,
body.flightops-ops-console .trackHistorySurface.soft,
body.flightops-ops-console .trackHistoryHeroMetric,
body.flightops-ops-console .trackHistoryExportPanel,
body.flightops-ops-console .trackHistoryExportSummary > div,
body.flightops-ops-console .trackHistoryDetailRow,
body.flightops-ops-console .trackHistoryWarningsEmpty {
  border-color: var(--fo-audit-line) !important;
  background: linear-gradient(180deg, var(--fo-audit-panel), var(--fo-audit-panel-strong)) !important;
  color: var(--fo-audit-text) !important;
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.26) !important;
}

body.flightops-ops-console .sensorHistoryIntroTitle,
body.flightops-ops-console .sensorHistoryToolbarTitle,
body.flightops-ops-console .sensorHistoryWeatherTitle,
body.flightops-ops-console .sensorHistoryPaneTitle,
body.flightops-ops-console .sensorHistoryTimelineLabel,
body.flightops-ops-console .sensorHistoryRowTitle,
body.flightops-ops-console .sensorHistorySettingsStats .value,
body.flightops-ops-console .trackHistorySurfaceHeaderMain h3,
body.flightops-ops-console .trackHistoryHeroMetricValue,
body.flightops-ops-console .trackHistoryDetailValue,
body.flightops-ops-console .trackHistoryControlsSurface .trackHistorySurfaceHeaderMain h3,
body.flightops-ops-console .trackHistoryControlsSurface .phase1CheckText {
  color: var(--fo-audit-strong) !important;
}

body.flightops-ops-console .sensorHistoryIntroSub,
body.flightops-ops-console .sensorHistoryMetaRow,
body.flightops-ops-console .sensorHistoryToolbarSub,
body.flightops-ops-console .sensorHistoryWeatherSub,
body.flightops-ops-console .sensorHistoryWeatherStatLabel,
body.flightops-ops-console .sensorHistoryTimelineMeta,
body.flightops-ops-console .sensorHistoryRowSub,
body.flightops-ops-console .sensorHistoryRowMeta,
body.flightops-ops-console .sensorHistorySettingsStats .label,
body.flightops-ops-console .trackHistorySurfaceHeaderMain p,
body.flightops-ops-console .trackHistoryHeroMetricLabel,
body.flightops-ops-console .trackHistoryCommandDeck .phase1Field span,
body.flightops-ops-console .trackHistoryExportNote,
body.flightops-ops-console .trackHistoryDetailLabel,
body.flightops-ops-console .trackHistorySectionNote,
body.flightops-ops-console .trackHistoryControlsSurface .trackHistorySurfaceHeaderMain p,
body.flightops-ops-console .trackHistoryControlsSurface .phase1Field span,
body.flightops-ops-console .trackHistoryControlsSurface .trackHistorySectionNote {
  color: var(--fo-audit-muted) !important;
}

body.flightops-ops-console .sensorHistoryGroupCard,
body.flightops-ops-console .sensorHistoryCountCard,
body.flightops-ops-console .sensorHistoryWeatherStat,
body.flightops-ops-console .trackHistoryCommandDeck input,
body.flightops-ops-console .trackHistoryCommandDeck select,
body.flightops-ops-console .trackHistoryCommandDeck textarea,
body.flightops-ops-console .trackHistoryCommandDeck .phase1Check,
body.flightops-ops-console .trackHistoryCommandDeck .phase1SaveStatus,
body.flightops-ops-console .trackHistorySourceOption,
body.flightops-ops-console .trackHistoryControlsSurface .phase1Check {
  border-color: var(--fo-audit-line) !important;
  background: rgba(17, 18, 20, 0.72) !important;
  color: var(--fo-audit-text) !important;
  box-shadow: none !important;
}

body.flightops-ops-console .sensorHistoryGroupCard:hover,
body.flightops-ops-console .trackHistorySourceOption:hover,
body.flightops-ops-console .panelSection[data-panel="settings"] .trackHistoryCommandDeck .trackHistoryPresetBtn:hover,
body.flightops-ops-console .panelSection[data-panel="settings"] .trackHistoryCommandDeck button.secondary:hover {
  border-color: rgba(212, 168, 74, 0.42) !important;
  background: rgba(212, 168, 74, 0.12) !important;
  color: var(--fo-audit-strong) !important;
  -webkit-text-fill-color: var(--fo-audit-strong) !important;
}

body.flightops-ops-console .sensorHistoryGroupCard.active,
body.flightops-ops-console .trackHistorySourceOption.active,
body.flightops-ops-console .panelSection[data-panel="settings"] .trackHistoryCommandDeck .trackHistoryPresetBtn.active {
  border-color: rgba(52, 184, 102, 0.34) !important;
  background: rgba(52, 184, 102, 0.14) !important;
  color: #dcfce7 !important;
  -webkit-text-fill-color: #dcfce7 !important;
}

body.flightops-ops-console .sensorHistoryGroupCard.active::before {
  background: #34b866 !important;
}

body.flightops-ops-console .sensorHistoryGroupCard::before {
  background: rgba(212, 168, 74, 0.62) !important;
}

body.flightops-ops-console .sensorHistoryGroupTitle,
body.flightops-ops-console .sensorHistoryCountValue,
body.flightops-ops-console .sensorHistoryWeatherStatValue {
  color: var(--fo-audit-strong) !important;
}

body.flightops-ops-console .sensorHistoryGroupSub,
body.flightops-ops-console .sensorHistoryCountLabel {
  color: var(--fo-audit-muted) !important;
}

body.flightops-ops-console .sensorHistoryTimelineRow {
  border-top-color: rgba(180, 170, 155, 0.12) !important;
}

body.flightops-ops-console .sensorHistoryTimelineSection + .sensorHistoryTimelineSection {
  margin-top: 12px !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(180, 170, 155, 0.12) !important;
}

body.flightops-ops-console .sensorHistoryTimelineSectionHeader {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin: 0 0 6px !important;
}

body.flightops-ops-console .sensorHistoryTimelineSectionTitle {
  color: var(--fo-audit-strong) !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

body.flightops-ops-console .sensorHistoryTimelineRow.open .sensorHistoryTimelineFill {
  background: linear-gradient(90deg, #e05454, #e8a832) !important;
}

body.flightops-ops-console .sensorHistoryTimelineRow.resolved .sensorHistoryTimelineFill {
  background: linear-gradient(90deg, #5b6472, #34b866) !important;
}

body.flightops-ops-console .sensorHistoryTimelineBar,
body.flightops-ops-console .trackHistoryExportProgress {
  background: rgba(180, 170, 155, 0.14) !important;
}

body.flightops-ops-console .sensorHistoryTimelineFill {
  background: linear-gradient(90deg, #e05454, #e8a832) !important;
}

body.flightops-ops-console .trackHistoryCommandDeck {
  color: var(--fo-audit-text) !important;
}

body.flightops-ops-console .trackHistoryLeadSurface,
body.flightops-ops-console .trackHistoryControlsSurface {
  border-color: var(--fo-audit-line-strong) !important;
  background: linear-gradient(180deg, rgba(30, 32, 36, 0.94), rgba(17, 18, 20, 0.98)) !important;
  box-shadow: 0 22px 46px rgba(0, 0, 0, 0.32) !important;
}

body.flightops-ops-console .trackHistorySurfaceTag,
body.flightops-ops-console .trackHistoryExportChip {
  border-color: rgba(212, 168, 74, 0.34) !important;
  background: rgba(212, 168, 74, 0.12) !important;
  color: var(--fo-audit-accent) !important;
}

body.flightops-ops-console .panelSection[data-panel="settings"] .trackHistoryCommandDeck .trackHistoryPresetBtn,
body.flightops-ops-console .panelSection[data-panel="settings"] .trackHistoryCommandDeck button.secondary {
  border-color: var(--fo-audit-line) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  color: var(--fo-audit-text) !important;
  -webkit-text-fill-color: var(--fo-audit-text) !important;
}

body.flightops-ops-console .panelSection[data-panel="settings"] .trackHistoryCommandDeck .trackHistoryPresetBtn.recommended {
  border-color: rgba(212, 168, 74, 0.34) !important;
  background: rgba(212, 168, 74, 0.12) !important;
  color: var(--fo-audit-accent) !important;
  -webkit-text-fill-color: var(--fo-audit-accent) !important;
}

body.flightops-ops-console .trackHistoryCommandDeck #trackHistoryExportBtn,
body.flightops-ops-console .trackHistoryCommandDeck #trackHistorySaveBtn,
body.flightops-ops-console .trackHistoryExportDownload a {
  border-color: rgba(210, 170, 90, 0.34) !important;
  background: linear-gradient(135deg, #d4a84a, #b8912e) !important;
  color: #111214 !important;
  -webkit-text-fill-color: #111214 !important;
  box-shadow: 0 14px 28px rgba(212, 168, 74, 0.18) !important;
}

body.flightops-ops-console .trackHistoryExportProgressBar {
  background: linear-gradient(90deg, #d4a84a, #b8912e) !important;
}

body.flightops-ops-console .trackHistoryWarning {
  border-color: rgba(232, 168, 50, 0.34) !important;
  background: rgba(232, 168, 50, 0.12) !important;
  color: #f7d68b !important;
}

body.flightops-ops-console .trackHistoryWarning.critical {
  border-color: rgba(224, 84, 84, 0.38) !important;
  background: rgba(224, 84, 84, 0.12) !important;
  color: #fecaca !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineShell,
body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineBar {
  background: rgba(25, 27, 31, 0.96) !important;
  border-color: rgba(180, 170, 155, 0.16) !important;
  color: var(--fo-audit-text) !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineLabel {
  color: var(--fo-audit-dim) !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineSource {
  color: var(--fo-audit-strong) !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoPlayerHint {
  background: rgba(224, 84, 84, 0.12) !important;
  border-color: rgba(224, 84, 84, 0.26) !important;
  color: #fecaca !important;
}

/* Warm Glass beta21 camera-style video bezel cleanup. */
body.flightops-ops-console .panelSection[data-panel="video"].videoPlaybackActive {
  width: min(96vw, 1220px) !important;
  min-width: 640px;
  height: min(82vh, 820px) !important;
  min-height: 360px;
}

body.flightops-ops-console .panelSection[data-panel="video"] .sectionBody {
  padding: 0 !important;
  background: #111214 !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] #videoPlayerCard {
  position: relative !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #111214 !important;
  box-shadow: none !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineShell {
  position: relative !important;
  background: #04070a !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineBar {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  right: 10px !important;
  z-index: 4;
  display: flex !important;
  align-items: center;
  gap: 6px;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  pointer-events: none;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineMeta,
body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineSelectWrap {
  min-width: 0;
  padding: 6px 7px !important;
  border-radius: 5px !important;
  border: 1px solid rgba(180, 170, 155, 0.18) !important;
  background: rgba(25, 27, 31, 0.84) !important;
  color: #e8e4df !important;
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.22) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  pointer-events: auto;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineMeta {
  flex: 0 1 min(260px, 34vw);
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineSelectWrap {
  flex: 0 1 210px;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineLabel {
  font-size: 8px !important;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #b8afa4 !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineSource {
  font-size: 11px !important;
  color: #f5f2ee !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineActions {
  margin-left: auto;
  pointer-events: auto;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineActions .secondary {
  min-height: 27px !important;
  padding: 0 8px !important;
  border-radius: 6px !important;
  border-color: rgba(180, 170, 155, 0.18) !important;
  background: rgba(25, 27, 31, 0.84) !important;
  color: #e8e4df !important;
  box-shadow: none !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineActions .secondary:hover {
  border-color: rgba(210, 170, 90, 0.36) !important;
  background: rgba(212, 168, 74, 0.12) !important;
  color: #f5f2ee !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] #videoInlineSelect {
  min-height: 27px !important;
  padding: 0 8px !important;
  border-radius: 6px !important;
  border-color: rgba(180, 170, 155, 0.18) !important;
  background: rgba(17, 18, 20, 0.92) !important;
  color: #f5f2ee !important;
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoPlayerHint {
  position: absolute !important;
  top: 52px !important;
  left: 50% !important;
  z-index: 5;
  transform: translateX(-50%);
  max-width: min(560px, calc(100% - 32px));
  padding: 8px 11px !important;
  border-radius: 6px;
  background: rgba(7, 12, 16, 0.78) !important;
  border: 1px solid rgba(224, 84, 84, 0.28) !important;
  box-shadow: 0 10px 24px rgba(2, 8, 18, 0.28);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineViewer,
body.flightops-ops-console .panelSection[data-panel="video"] #videoInlinePlayer {
  background: #04070a !important;
}

@media (max-width: 960px) {
  body.flightops-ops-console .panelSection[data-panel="video"].videoPlaybackActive {
    min-width: unset;
    left: 10px !important;
    right: 10px !important;
  }

  body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineBar {
    flex-wrap: wrap;
  }

  body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineActions {
    width: 100%;
  }

  body.flightops-ops-console .panelSection[data-panel="video"] .videoInlineActions .secondary {
    flex: 1 1 0;
  }
}

/* Warm Glass beta10 contrast and remaining-blue cleanup. */
body.flightops-ops-console {
  --fo-beta10-panel: #191b1f;
  --fo-beta10-panel-raised: #1e2024;
  --fo-beta10-panel-soft: rgba(30, 32, 36, 0.92);
  --fo-beta10-line: rgba(180, 170, 155, 0.18);
  --fo-beta10-line-strong: rgba(210, 170, 90, 0.36);
  --fo-beta10-text: #e8e4df;
  --fo-beta10-strong: #f5f2ee;
  --fo-beta10-muted: #b8afa4;
  --fo-beta10-dim: #9e9890;
  --fo-beta10-accent: #d4a84a;
  --fo-beta10-accent-deep: #b8912e;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"],
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"].panelOpen {
  background: var(--fo-beta10-panel) !important;
  border-left: 1px solid rgba(180, 170, 155, 0.16) !important;
  box-shadow: -1px 0 0 rgba(180, 170, 155, 0.12), 0 18px 38px rgba(0, 0, 0, 0.28) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .sectionBody,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDrawerMessagePane,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessageStage,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] #commsMainContent,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] #commsMessageList,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessages {
  background: var(--fo-beta10-panel) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .head,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsCondensedTopbar,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsThreadHeader,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsCompose {
  background: var(--fo-beta10-panel-raised) !important;
  border-color: var(--fo-beta10-line) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDirectPickerPanel,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDirectPickerItem,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsThreadMetaPill {
  background: rgba(255, 255, 255, 0.045) !important;
  border-color: var(--fo-beta10-line) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage.outbound,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsLaneBtn.active,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsQuickRecipientBtn.active,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDirectPickerItem.active,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDirectPickerItem:hover {
  background: rgba(212, 168, 74, 0.14) !important;
  border-color: rgba(212, 168, 74, 0.38) !important;
  color: var(--fo-beta10-strong) !important;
  box-shadow: 0 0 0 1px rgba(212, 168, 74, 0.12) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsQuickRecipientBadge {
  background: linear-gradient(135deg, var(--fo-beta10-accent), var(--fo-beta10-accent-deep)) !important;
  color: #111214 !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceBrandLabel,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceSpeakerLabel,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceParticipantCount,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsThreadMetaPill,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessageMeta,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessageStamp,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessageHeader,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsComposeHint,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMapToastLabel,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsAudioPopoverField span,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessageEditedNote,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsQuickRecipientEmpty,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDirectPickerMeta,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsCompose textarea::placeholder {
  color: var(--fo-beta10-muted) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] #commsActiveThreadSub,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDrawerStatus,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsTypingIndicator,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessageBody {
  color: var(--fo-beta10-text) !important;
}

/* ----------------------------------------------------------------
   Dark theme comms chat fix - Option 1 "Clean Warm Glass"
   Completes the beta10 dark override for remaining light controls
   inside the comms drawer.
   ---------------------------------------------------------------- */

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceActionBtn,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceCloseBtn,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsLaneBtn,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsAudioPopover > summary,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsAudioPopoverBtn,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDirectPicker > summary {
  border: 1px solid var(--fo-beta10-line) !important;
  background: rgba(30, 32, 36, 0.9) !important;
  color: var(--fo-beta10-text) !important;
  box-shadow: none !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceActionBtn:hover,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceCloseBtn:hover,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsLaneBtn:hover,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsAudioPopover > summary:hover,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsAudioPopoverBtn:hover,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDirectPicker > summary:hover {
  background: rgba(40, 42, 48, 0.95) !important;
  border-color: rgba(180, 170, 155, 0.28) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsConversationSwitch {
  background: rgba(30, 32, 36, 0.7) !important;
  border: 1px solid rgba(180, 170, 155, 0.1) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsConversationSwitch .commsLaneBtn,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsConversationSwitch .commsDirectPicker > summary {
  border-color: transparent !important;
  background: transparent !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsConversationSwitch .commsLaneBtn.active,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsConversationSwitch .commsDirectPicker > summary.active {
  background: rgba(212, 168, 74, 0.14) !important;
  border-color: rgba(212, 168, 74, 0.28) !important;
  color: var(--fo-beta10-strong) !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceStatusBadge {
  border: 1px solid var(--fo-beta10-line) !important;
  background: rgba(30, 32, 36, 0.8) !important;
  color: var(--fo-beta10-muted) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceStatusBadge.is-live {
  border-color: rgba(134, 239, 172, 0.34) !important;
  background: rgba(34, 184, 102, 0.12) !important;
  color: #86efac !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceActionBtn.is-live,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceActionBtn.is-ready,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceActionBtn.is-active {
  border-color: rgba(212, 168, 74, 0.38) !important;
  background: rgba(212, 168, 74, 0.14) !important;
  color: var(--fo-beta10-strong) !important;
  box-shadow: 0 0 0 1px rgba(212, 168, 74, 0.12) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsTranscriptionBtn {
  min-width: 56px;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsTranscriptionBtn.is-active {
  border-color: rgba(185, 132, 224, 0.48) !important;
  background: rgba(185, 132, 224, 0.18) !important;
  color: #e2c5f7 !important;
  box-shadow: 0 0 0 1px rgba(185, 132, 224, 0.14) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceTranscriptPreview {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 8px 0 0;
  padding: 8px 10px;
  border: 1px solid rgba(185, 132, 224, 0.24);
  border-radius: 8px;
  background: rgba(17, 18, 20, 0.62);
  color: #d8c5ec;
  font-size: 11.5px;
  line-height: 1.35;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceTranscriptPreview[hidden] {
  display: none !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceTranscriptPreviewLabel {
  flex: 0 0 auto;
  color: #b984e0;
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsVoiceTranscriptPreviewText {
  min-width: 0;
  color: #efe6f8;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDirectPickerPanel,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsAudioPopoverPanel {
  border: 1px solid var(--fo-beta10-line) !important;
  background: rgba(25, 27, 31, 0.96) !important;
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.35) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsAudioPopoverField select {
  border: 1px solid var(--fo-beta10-line) !important;
  background: rgba(21, 23, 26, 0.9) !important;
  color: var(--fo-beta10-text) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDirectPickerName {
  color: var(--fo-beta10-text) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] #commsActiveThreadTitle {
  color: var(--fo-beta10-strong) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsThreadHeaderCondensed {
  border-color: var(--fo-beta10-line) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] #commsUnreadBadge {
  background: rgba(212, 168, 74, 0.12) !important;
  border: 1px solid rgba(212, 168, 74, 0.24) !important;
  color: var(--fo-beta10-accent) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessageBubble {
  border-color: var(--fo-beta10-line) !important;
  background: rgba(180, 170, 155, 0.045) !important;
  color: var(--fo-beta10-text) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage.outbound .commsMessageBubble {
  background: rgba(212, 168, 74, 0.12) !important;
  border-color: rgba(212, 168, 74, 0.24) !important;
  color: var(--fo-beta10-strong) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage.rangeControl:not(.outbound) .commsMessageBubble {
  background: rgba(147, 187, 252, 0.06) !important;
  border-color: rgba(147, 187, 252, 0.18) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsCompose textarea {
  border: 1px solid var(--fo-beta10-line) !important;
  background: rgba(21, 23, 26, 0.9) !important;
  color: var(--fo-beta10-text) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsCompose textarea:focus {
  border-color: rgba(212, 168, 74, 0.4) !important;
  box-shadow: 0 0 0 2px rgba(212, 168, 74, 0.1) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] #commsSendBtn {
  border: 1px solid rgba(212, 168, 74, 0.6) !important;
  background: linear-gradient(135deg, var(--fo-beta10-accent), var(--fo-beta10-accent-deep)) !important;
  color: #111214 !important;
  box-shadow: 0 8px 20px rgba(212, 168, 74, 0.18) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessageSender {
  color: var(--fo-beta10-muted) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsTypingIndicator {
  color: var(--fo-beta10-muted) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsDirectPickerItem {
  color: var(--fo-beta10-text) !important;
}

/* Dark theme comms bubble-only refinement. */
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage.outbound,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage.rangeControl,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage.stacked {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessageHeader {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage[data-role="range_controller"] .commsMessageSender,
body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage.rangeControl:not(.outbound) .commsMessageSender {
  color: #93bbfc !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage[data-role="pilot"] .commsMessageSender {
  color: #86efac !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage[data-role="observer"] .commsMessageSender {
  color: #c4d0dc !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsMessage[data-role="comms_supervisor"] .commsMessageSender {
  color: #fbbf24 !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsStatusAudioPopover .commsAudioPopoverBtn {
  justify-content: center !important;
  text-align: center !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsAudioButtonLabel {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  line-height: 1 !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="comms"] .commsAudioButtonLabel span {
  display: inline !important;
}

body.flightops-ops-console .weatherTopbarSourceBtn .weatherTopbarCellLabel,
body.flightops-ops-console .weatherTopbarCellLabel,
body.flightops-ops-console .weatherTopbarStatusTextWrap small,
body.flightops-ops-console .weatherTopbarCollapseBtn,
body.flightops-ops-console .weatherTopbarSourceBtn::after,
body.flightops-ops-console .weatherTopbarSourceMenu button small,
body.flightops-ops-console .authTopbarSubtitle,
body.flightops-ops-console .releaseVersionBadge,
body.flightops-ops-console .authAccountRole,
body.flightops-ops-console .topbarWorkspaceMenuMeta,
body.flightops-ops-console .topbarWorkspaceMenuItem small {
  color: var(--fo-beta10-muted) !important;
}

body.flightops-ops-console #weatherTopbarSourceValue,
body.flightops-ops-console .weatherTopbarCellValue,
body.flightops-ops-console .weatherTopbarCollapsedSummary,
body.flightops-ops-console .weatherTopbarStatusTextWrap strong {
  color: var(--fo-beta10-strong) !important;
}

body.flightops-ops-console #weatherTopbarDewpointCell .weatherTopbarCellValue,
body.flightops-ops-console #weatherTopbarVisibilityCell .weatherTopbarCellValue,
body.flightops-ops-console #weatherTopbarCeilingCell .weatherTopbarCellValue,
body.flightops-ops-console #weatherTopbarDensityCell .weatherTopbarCellValue,
body.flightops-ops-console #weatherTopbarAltimeterCell .weatherTopbarCellValue {
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.42) !important;
}

body.flightops-ops-console .telemetryRtkMissionActions button[data-rtk-mission-busy="1"],
body.flightops-ops-console .telemetryRtkMissionActions button[data-rtk-mission-flash="1"],
body.flightops-ops-console .missionWorkspaceMenu button.is-active:not(.missionToolToggle) {
  background: linear-gradient(135deg, var(--fo-beta10-accent), var(--fo-beta10-accent-deep)) !important;
  border-color: var(--fo-beta10-line-strong) !important;
  color: #111214 !important;
  box-shadow: 0 0 0 1px rgba(212, 168, 74, 0.16), 0 12px 24px rgba(212, 168, 74, 0.16) !important;
}

body.flightops-ops-console .telemetryRtkMissionCopyFeedback[data-rtk-mission-copy-state="ok"] {
  background: rgba(34, 184, 102, 0.16) !important;
  border-color: rgba(34, 184, 102, 0.32) !important;
  color: #dcfce7 !important;
}

body.flightops-ops-console .telemetryRtkMissionCopyFeedback[data-rtk-mission-copy-state="error"] {
  background: rgba(224, 84, 84, 0.14) !important;
  border-color: rgba(224, 84, 84, 0.3) !important;
  color: #fecaca !important;
}

body.flightops-ops-console .telemetryRtkMissionPanel {
  display:grid !important;
  gap:7px !important;
  margin-top:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.flightops-ops-console .missionRtkCard {
  min-width:0;
  padding:7px 8px;
  border-radius:5px;
  background:rgba(3,7,18,.36);
  border:1px solid rgba(154,179,214,.14);
}

body.flightops-ops-console .missionRtkCardLabel {
  color:#8798aa;
  font-size:8.5px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.flightops-ops-console .missionRtkStatusCard {
  display:grid;
  grid-template-columns:12px minmax(0,1fr) auto;
  align-items:center;
  gap:4px 7px;
  background:rgba(52,184,102,.06);
  border-color:rgba(52,184,102,.24);
}

body.flightops-ops-console .missionRtkStatusDot {
  width:8px;
  height:8px;
  border-radius:999px;
  background:#64748b;
}

body.flightops-ops-console .missionRtkStatusCard[data-rtk-mission-runtime-tone="live"] .missionRtkStatusDot {
  background:#34b866;
  box-shadow:0 0 9px rgba(52,184,102,.65);
}

body.flightops-ops-console .missionRtkStatusCard[data-rtk-mission-runtime-tone="error"] .missionRtkStatusDot {
  background:#e05454;
  box-shadow:0 0 9px rgba(224,84,84,.5);
}

body.flightops-ops-console .missionRtkRuntime {
  color:#34b866;
  font-family:"JetBrains Mono","Consolas",monospace;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.flightops-ops-console .missionRtkStatusCard[data-rtk-mission-runtime-tone="error"] .missionRtkRuntime {
  color:#fecaca;
}

body.flightops-ops-console .missionRtkStatusMeta,
body.flightops-ops-console .missionRtkPeerCount {
  color:#b8c7d7;
  font-family:"JetBrains Mono","Consolas",monospace;
  font-size:9.5px;
  font-weight:700;
  white-space:nowrap;
}

body.flightops-ops-console .missionRtkStatusDetail,
body.flightops-ops-console .telemetryRtkMissionCopyFeedback {
  grid-column:2 / -1;
  color:#8798aa;
  font-size:10px;
  line-height:1.25;
}

body.flightops-ops-console .missionRtkModeCard,
body.flightops-ops-console .missionRtkPeerHead,
body.flightops-ops-console .missionRtkUtilityRow {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

body.flightops-ops-console .missionRtkSelectedCard.telemetryRtkMissionSelectedCard {
  gap:6px;
  padding:7px 8px;
  border-radius:5px;
  background:rgba(3,7,18,.36);
  border:1px solid rgba(154,179,214,.14);
  box-shadow:none;
}

body.flightops-ops-console .missionRtkSelectedCard .telemetryRtkMissionSelectedName {
  font-size:11.5px;
  font-family:"JetBrains Mono","Consolas",monospace;
}

body.flightops-ops-console .missionRtkSelectedCard .telemetryRtkMissionSelectedRoute,
body.flightops-ops-console .missionRtkSelectedCard .telemetryRtkMissionSelectedNote,
body.flightops-ops-console .missionRtkSelectedCard .telemetryRtkMissionSelectedMeta {
  font-size:10px;
}

body.flightops-ops-console .missionRtkPeersCard.telemetryRtkMissionBaseSection {
  gap:6px;
}

body.flightops-ops-console .missionRtkActions.telemetryRtkMissionActions {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
}

body.flightops-ops-console .missionRtkActions.telemetryRtkMissionActions button,
body.flightops-ops-console .missionRtkUtilityRow button {
  min-width:0;
  min-height:27px;
  padding:6px 7px;
  border-radius:5px;
  font-size:10.5px;
}

body.flightops-ops-console .missionRtkInfoToggle {
  text-align:left;
}

body.flightops-ops-console .panelSection[data-panel="opsdrawer"] .opsDrawerStatusPill.active,
body.flightops-ops-console .panelSection[data-panel="opsdrawer"] .opsDrawerStatusPill.info,
body.flightops-ops-console .panelSection[data-panel="opsdrawer"] button.active,
body.flightops-ops-console .casiaSensorMarkerShell,
body.flightops-ops-console .opsSiteMarker {
  border-color: rgba(212, 168, 74, 0.34) !important;
  background: rgba(25, 27, 31, 0.9) !important;
  color: var(--fo-beta10-strong) !important;
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.24) !important;
}

body.flightops-ops-console .casiaSensorMarkerCore {
  background: var(--casia-sensor-color, var(--fo-beta10-accent)) !important;
  border-color: rgba(245, 242, 238, 0.9) !important;
}

body.flightops-ops-console #casiaPreviewDock,
body.flightops-ops-console .casiaPreviewShell,
body.flightops-ops-console .casiaPreviewCard,
body.flightops-ops-console .casiaPreviewTile,
body.flightops-ops-console .casiaPreviewStatus,
body.flightops-ops-console .casiaPreviewThumb {
  border-color: var(--fo-beta10-line) !important;
  background: rgba(25, 27, 31, 0.94) !important;
  color: var(--fo-beta10-text) !important;
}

body.flightops-ops-console .casiaPreviewThumbCaption,
body.flightops-ops-console .casiaPreviewMeta,
body.flightops-ops-console .casiaPreviewSub {
  color: var(--fo-beta10-muted) !important;
}

body.flightops-ops-console .launchOpsTabBtn.active,
body.flightops-ops-console .launchOpsItem.active,
body.flightops-ops-console .launchOpsBadge.survey,
body.flightops-ops-console .launchOpsBadge.preview {
  border-color: var(--fo-beta10-line-strong) !important;
  background: rgba(212, 168, 74, 0.14) !important;
  color: var(--fo-beta10-strong) !important;
  box-shadow: inset 0 0 0 1px rgba(212, 168, 74, 0.12) !important;
}

body.flightops-ops-console .launchOpsKicker,
body.flightops-ops-console .launchOpsNotice,
body.flightops-ops-console .launchOpsLabel,
body.flightops-ops-console .launchOpsMeta,
body.flightops-ops-console .launchOpsField span,
body.flightops-ops-console .launchOpsStat span {
  color: var(--fo-beta10-muted) !important;
}

body.flightops-ops-console .launchOpsTitle,
body.flightops-ops-console .launchOpsValue,
body.flightops-ops-console .launchOpsStat strong {
  color: var(--fo-beta10-strong) !important;
}

/* KMZ/KML overlay preset library */
body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetSection,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzOverlayPresetList {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetHeader,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzOverlayHeader,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetSubhead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetSubhead {
  margin-top: 4px;
  color: var(--fo-text-muted);
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPreset,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzFileRow {
  background: var(--fo-bg-surface-2);
  border: 1px solid var(--fo-border-subtle);
  border-radius: var(--fo-radius-xs);
  color: var(--fo-text-primary);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPreset {
  display: grid;
  gap: 4px;
  padding: 7px 8px;
  text-align: left;
  cursor: pointer;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPreset:hover,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSectionCell:hover,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzAssignChip:hover {
  border-color: var(--fo-border-medium);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetActive {
  background: var(--fo-accent-soft);
  border-color: var(--fo-accent);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetTop,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetMeta {
  display: flex;
  align-items: center;
  gap: 5px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetMeta {
  justify-content: space-between;
  color: var(--fo-text-muted);
  font-size: 9px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetSwatches {
  display: inline-flex;
  gap: 2px;
  flex: 0 0 auto;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetSwatch {
  width: 13px;
  height: 13px;
  border: 1px solid rgba(0, 0, 0, .4);
  border-radius: 2px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetName {
  min-width: 0;
  flex: 1;
  overflow: hidden;
  color: var(--fo-text-primary);
  font-size: 11px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetEdit {
  color: var(--fo-text-muted);
  font-size: 11px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetPriority,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSectionPresetChip {
  border-radius: 3px;
  background: var(--fo-bg-elevated);
  color: var(--fo-accent);
  font-feature-settings: "tnum";
  font-weight: 700;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetPriority {
  padding: 1px 4px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetEditor {
  display: grid;
  gap: 8px;
  margin-top: 2px;
  padding: 10px;
  border: 1px solid var(--fo-border-medium);
  border-radius: var(--fo-radius-sm);
  background: var(--fo-bg-surface-2);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetEditorHead,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetEditorGrid {
  display: grid;
  gap: 5px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetEditorHead {
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetEditorGrid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetNameInput,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetNumber {
  min-width: 0;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 3px;
  background: var(--fo-bg-input);
  color: var(--fo-text-primary);
  font-family: var(--fo-font-sans);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetNameInput {
  padding: 5px 6px;
  font-size: 12px;
  font-weight: 700;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetButton {
  min-height: 24px;
  padding: 4px 8px;
  border: 1px solid var(--fo-border-medium);
  border-radius: var(--fo-radius-xs);
  background: var(--fo-bg-surface-3);
  color: var(--fo-text-primary);
  font-family: var(--fo-font-sans);
  font-size: 11px;
  cursor: pointer;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetButton:hover {
  border-color: var(--fo-border-strong);
  background: var(--fo-bg-elevated);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetButton:disabled {
  cursor: default;
  opacity: .45;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetButtonDanger {
  color: var(--fo-danger);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetEditorField {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  padding: 4px 6px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 3px;
  background: var(--fo-bg-surface);
  color: var(--fo-text-secondary);
  font-size: 10px;
  letter-spacing: .06em;
  text-transform: uppercase;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetEditorField span {
  flex: 1;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetEditorField input[type="color"] {
  width: 22px;
  height: 18px;
  padding: 0;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 2px;
  background: transparent;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetNumber {
  width: 38px;
  padding: 2px 3px;
  text-align: center;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetEditorFieldFull {
  grid-column: 1 / -1;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetPriorityWrap {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 2;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetPrioritySlider {
  flex: 1;
  accent-color: var(--fo-accent);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzPresetPriorityValue {
  min-width: 16px;
  color: var(--fo-accent);
  text-align: center;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzFileRow {
  display: grid;
  gap: 6px;
  padding: 8px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzFileRowOff {
  opacity: .62;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzFileTop {
  display: flex;
  align-items: center;
  gap: 6px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzOverlayExpand,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzOverlayDeleteBtn {
  border: 0;
  background: transparent;
  color: var(--fo-text-muted);
  cursor: pointer;
  font-family: var(--fo-font-sans);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzOverlayExpand:hover,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzOverlayDeleteBtn:hover {
  color: var(--fo-accent);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzOverlayDeleteBtn:hover {
  color: var(--fo-danger);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzFileName {
  min-width: 0;
  flex: 1;
  overflow: hidden;
  color: var(--fo-text-strong);
  font-size: 12px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzFileCount {
  color: var(--fo-text-muted);
  font-size: 9px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzFileBody {
  display: grid;
  gap: 6px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzAssignBar,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzOverlaySublayers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzAssignLabel {
  margin-right: 2px;
  color: var(--fo-text-muted);
  font-size: 10px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzAssignChip,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzOverlaySublayer {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 22px;
  padding: 2px 6px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 3px;
  background: var(--fo-bg-surface);
  color: var(--fo-text-secondary);
  font-family: var(--fo-font-sans);
  font-size: 10px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzAssignChip {
  cursor: pointer;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzAssignChipActive {
  border-color: var(--fo-accent);
  background: var(--fo-accent);
  color: #1a1408;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzAssignSwatch {
  width: 7px;
  height: 7px;
  border-radius: 50%;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSectionCellGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 3px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSectionCell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  min-width: 0;
  min-height: 24px;
  padding: 3px 5px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 3px;
  background: var(--fo-bg-surface);
  color: var(--fo-text-secondary);
  font-family: var(--fo-font-sans);
  font-size: 10px;
  cursor: pointer;
  font-feature-settings: "tnum";
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSectionCellOff {
  opacity: .42;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSectionCellName {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSectionPresetChip {
  flex: 0 0 auto;
  padding: 0 3px;
  font-size: 8px;
  letter-spacing: .04em;
  text-transform: uppercase;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSectionPresetCustom {
  color: #60a5fa;
}

/* KMZ/KML semantic styling panel */
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticPanel {
  display: grid;
  gap: 0;
  margin-top: 12px;
  overflow: hidden;
  border: 1px solid var(--fo-border-medium);
  border-radius: var(--fo-radius-sm);
  background: var(--fo-bg-surface-2);
  color: var(--fo-text-primary);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticPanelHead,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticFileBar,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticInspector,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticVolume,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticLayerOrder,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticActions,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticEmpty {
  padding: 10px 12px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticPanelHead {
  border-bottom: 1px solid var(--fo-border-subtle);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticPanelHead > div {
  display: grid;
  gap: 3px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticEyebrow,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticMeta,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticInspectorHead span,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticOrderHead small {
  color: var(--fo-text-muted);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticPanelHead strong {
  color: var(--fo-text-strong);
  font-size: 14px;
  line-height: 1.15;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticFileBar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
  border-bottom: 1px solid var(--fo-border-subtle);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticFileBar select {
  min-width: 0;
  height: 28px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 3px;
  background: var(--fo-bg-input);
  color: var(--fo-text-primary);
  font: 700 11px/1 var(--fo-font-sans);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticFileBar span {
  color: var(--fo-text-muted);
  font-size: 10px;
  white-space: nowrap;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticSourceToggle {
  min-height: 26px;
  padding: 4px 9px;
  border: 1px solid var(--fo-accent);
  border-radius: 4px;
  background: var(--fo-accent-soft);
  color: var(--fo-accent);
  font: 800 10px/1 var(--fo-font-sans);
  text-transform: uppercase;
  cursor: pointer;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticSourceHidden {
  border-color: var(--fo-border-subtle);
  background: var(--fo-bg-elevated);
  color: var(--fo-text-muted);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticTabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  border-bottom: 1px solid var(--fo-border-subtle);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticTab {
  display: grid;
  place-items: center;
  gap: 5px;
  min-width: 0;
  min-height: 62px;
  padding: 8px 4px 7px;
  border: 0;
  border-right: 1px solid var(--fo-border-subtle);
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--fo-text-secondary);
  font: 800 9px/1.25 var(--fo-font-sans);
  text-transform: uppercase;
  cursor: pointer;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticTab:last-child {
  border-right: 0;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticTabActive {
  border-bottom-color: var(--fo-accent);
  background: var(--fo-accent-soft);
  color: var(--fo-text-strong);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticTabSwatch {
  display: inline-block;
  width: 18px;
  height: 6px;
  border-radius: 2px;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .24);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticInspector {
  display: grid;
  gap: 10px;
  border-bottom: 1px solid var(--fo-border-subtle);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticVolume {
  display: grid;
  gap: 8px;
  border-bottom: 1px solid var(--fo-border-subtle);
  background: var(--fo-bg-surface);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticVolumeHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: var(--fo-text-muted);
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticVolumeHead small {
  font-size: 9px;
  letter-spacing: .06em;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticVolumeBody {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticInspectorHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticInspectorHead > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticInspectorHead strong {
  color: var(--fo-text-strong);
  font-size: 13px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticVisible {
  min-height: 24px;
  padding: 3px 8px;
  border: 1px solid var(--fo-accent);
  border-radius: 999px;
  background: var(--fo-accent-soft);
  color: var(--fo-accent);
  font: 800 10px/1 var(--fo-font-sans);
  cursor: pointer;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticHidden {
  border-color: var(--fo-border-subtle);
  background: var(--fo-bg-surface);
  color: var(--fo-text-muted);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticInspectorBody {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticField {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 8px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 4px;
  background: var(--fo-bg-surface);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticFieldWide {
  grid-column: 1 / -1;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticField > span {
  color: var(--fo-text-muted);
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticColorControl,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticStepper,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticSliderWrap {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticColorControl input[type="color"] {
  width: 36px;
  height: 26px;
  padding: 2px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 3px;
  background: transparent;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticHex {
  min-width: 0;
  padding: 4px 6px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 3px;
  background: var(--fo-bg-elevated);
  color: var(--fo-text-primary);
  font-size: 10px;
  font-weight: 700;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticStepper button {
  width: 22px;
  height: 22px;
  padding: 0;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 3px;
  background: var(--fo-bg-surface-3);
  color: var(--fo-text-primary);
  font-weight: 800;
  cursor: pointer;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticStepper input {
  width: 42px;
  height: 22px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 3px;
  background: var(--fo-bg-input);
  color: var(--fo-text-primary);
  font: 800 11px/1 var(--fo-font-sans);
  text-align: center;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticStepper em {
  color: var(--fo-text-muted);
  font-size: 10px;
  font-style: normal;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticSliderWrap input {
  min-width: 0;
  flex: 1;
  accent-color: var(--fo-accent);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticSliderValue {
  width: 34px;
  color: var(--fo-accent);
  font-size: 11px;
  text-align: right;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticLayerOrder {
  display: grid;
  gap: 7px;
  border-bottom: 1px solid var(--fo-border-subtle);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticOrderHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: var(--fo-text-muted);
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticOrderList {
  display: grid;
  gap: 4px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticOrderItem {
  display: grid;
  grid-template-columns: 12px auto auto minmax(0, 1fr) auto;
  gap: 7px;
  align-items: center;
  min-width: 0;
  min-height: 28px;
  padding: 4px 7px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 4px;
  background: var(--fo-bg-surface);
  color: var(--fo-text-secondary);
  font-size: 11px;
  cursor: grab;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticOrderItemActive {
  border-color: var(--fo-accent);
  background: var(--fo-accent-soft);
  color: var(--fo-text-strong);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticGrip {
  color: var(--fo-text-muted);
  font-size: 10px;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticOrderVisible {
  width: 30px;
  height: 20px;
  padding: 0;
  border: 1px solid var(--fo-accent);
  border-radius: 3px;
  background: var(--fo-accent-soft);
  color: var(--fo-accent);
  font: 800 9px/1 var(--fo-font-sans);
  text-transform: uppercase;
  cursor: pointer;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticOrderHidden {
  border-color: var(--fo-border-subtle);
  background: var(--fo-bg-elevated);
  color: var(--fo-text-muted);
  opacity: .72;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticOrderName {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticOrderItem strong {
  min-width: 16px;
  color: var(--fo-accent);
  font-size: 10px;
  text-align: right;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticActions {
  display: grid;
  grid-template-columns: auto auto 1fr;
  gap: 8px;
  align-items: center;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticActions button,
body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticSaveState {
  min-height: 26px;
  padding: 5px 9px;
  border: 1px solid var(--fo-border-subtle);
  border-radius: 4px;
  background: var(--fo-bg-surface-3);
  color: var(--fo-text-primary);
  font: 700 11px/1 var(--fo-font-sans);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticActions button {
  cursor: pointer;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticSaveState {
  justify-self: end;
  border-color: var(--fo-accent);
  background: var(--fo-accent);
  color: #1a1408;
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticSaveState-saving {
  border-color: var(--fo-warning);
  background: var(--fo-warning);
}

body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticSaveState-error {
  border-color: var(--fo-danger);
  background: var(--fo-danger);
  color: #fff;
}

body.flightops-ops-console .flightopsSemanticLabelIcon {
  overflow: visible !important;
  pointer-events: none;
}

body.flightops-ops-console .flightopsSemanticLabel {
  display: inline-block;
  min-width: 18px;
  transform: translate(-50%, -50%);
  color: #ffd000;
  font-family: var(--fo-font-sans, "Segoe UI", system-ui, sans-serif);
  font-weight: 900;
  line-height: 1;
  text-align: center;
  text-shadow:
    0 1px 2px rgba(0, 0, 0, .95),
    0 0 6px rgba(0, 0, 0, .82);
  white-space: nowrap;
}

body.flightops-ops-console .flightopsSemanticQuadrantLabel {
  font-weight: 800;
}

@media (max-width: 720px) {
  body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticInspectorBody,
  body.flightops-ops-console #mapUtilityAttachmentMount .kmzSemanticTabs {
    grid-template-columns: 1fr;
  }
}
body.flightops-ops-console .alertVolumeInspector {
  display: grid;
  gap: 10px;
  border: 1px solid rgba(78, 110, 145, 0.24);
  background: linear-gradient(180deg, rgba(18, 33, 52, 0.98), rgba(10, 20, 33, 0.99));
  border-radius: 2px;
  min-width: 0;
}
body.flightops-ops-console .alertVolumeInspector.empty { padding: 14px; }
body.flightops-ops-console .alertVolumeInspectorEmptyTitle { font-size: 15px; font-weight: 800; color: #eef7ff; }
body.flightops-ops-console .alertVolumeInspectorTopbar,
body.flightops-ops-console .alertVolumeInspectorHeader,
body.flightops-ops-console .alertVolumeInspectorTabs,
body.flightops-ops-console .alertVolumeInspectorFooter,
body.flightops-ops-console .alertVolumeInlineActions,
body.flightops-ops-console .alertVolumeRenderModeRow,
body.flightops-ops-console .alertVolumeTemplateCurrent,
body.flightops-ops-console .alertVolumeTemplateRow,
body.flightops-ops-console .alertVolumeBlockRow { display: flex; align-items: center; gap: 8px; }
body.flightops-ops-console .alertVolumeInspectorTopbar { justify-content: space-between; padding: 10px 12px 0; }
body.flightops-ops-console .alertVolumeInspectorTopbar .crumb,
body.flightops-ops-console .alertVolumeInspectorNote,
body.flightops-ops-console .alertVolumeInspector .sectionSub,
body.flightops-ops-console .alertVolumeKvp span,
body.flightops-ops-console .alertVolumeTemplateRow small,
body.flightops-ops-console .alertVolumeThresholdCard .thresholdHint { color: #99b2c8; font-size: 11px; line-height: 1.4; }
body.flightops-ops-console .alertVolumeInspectorHeader { padding: 10px 12px; border-top: 1px solid rgba(78, 110, 145, 0.16); border-bottom: 1px solid rgba(78, 110, 145, 0.18); }
body.flightops-ops-console .alertVolumeInspectorStrip,
body.flightops-ops-console .alertVolumeTemplateCurrent .swatch,
body.flightops-ops-console .alertVolumeTemplateRow .swatch { width: 4px; align-self: stretch; min-height: 34px; border-radius: 2px; background: linear-gradient(180deg, #f97316, #ef4444); }
body.flightops-ops-console .alertVolumeInspectorIdentity { display: grid; gap: 2px; min-width: 0; flex: 1; }
body.flightops-ops-console .alertVolumeInspectorIdentity .title { color: #eef7ff; font-size: 15px; font-weight: 800; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.flightops-ops-console .alertVolumeInspectorIdentity .meta,
body.flightops-ops-console .alertVolumeBlockRow,
body.flightops-ops-console .alertVolumeKvp strong,
body.flightops-ops-console .alertVolumeThresholdCard input,
body.flightops-ops-console .alertVolumeThresholdCard .unit { font-family: Consolas, "JetBrains Mono", monospace; }
body.flightops-ops-console .alertVolumeInspectorIdentity .meta { color: #99b2c8; font-size: 11px; letter-spacing: 0.04em; }
body.flightops-ops-console .alertVolumeInspectorLineage { border: 1px solid rgba(212, 168, 74, 0.36); color: #facc15; background: rgba(212, 168, 74, 0.1); border-radius: 3px; padding: 4px 8px; font-size: 10px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; white-space: nowrap; }
body.flightops-ops-console .alertVolumeInspectorLineage.custom { border-color: rgba(96, 165, 250, 0.35); background: rgba(37, 99, 235, 0.12); color: #bfdbfe; }
body.flightops-ops-console .alertVolumeInspectorTabs { padding: 0 12px; border-top: 1px solid rgba(78, 110, 145, 0.14); border-bottom: 1px solid rgba(78, 110, 145, 0.2); overflow-x: auto; }
body.flightops-ops-console .alertVolumeInspectorTab { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 10px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: #99b2c8; font-size: 12px; font-weight: 700; white-space: nowrap; }
body.flightops-ops-console .alertVolumeInspectorTab .dot { width: 6px; height: 6px; border-radius: 50%; background: #718096; }
body.flightops-ops-console .alertVolumeInspectorTab.active { border-bottom-color: #d4a84a; color: #eef7ff; }
body.flightops-ops-console .alertVolumeInspectorTab.active .dot { background: #d4a84a; }
body.flightops-ops-console .alertVolumeInspectorTab .miniBadge,
body.flightops-ops-console .alertVolumeInspectorTab .mark { border: 1px solid rgba(78, 110, 145, 0.24); background: rgba(8, 17, 29, 0.78); border-radius: 3px; padding: 1px 4px; color: #facc15; font-size: 9px; }
body.flightops-ops-console .alertVolumeInspectorTabs .history { margin-left: auto; align-self: center; color: #718096; font-size: 11px; white-space: nowrap; }
body.flightops-ops-console .alertVolumeInspectorPanel { display: grid; gap: 10px; padding: 0 12px 12px; }
body.flightops-ops-console .alertVolumeInspectorSection,
body.flightops-ops-console .alertVolumeSourceCard,
body.flightops-ops-console .alertVolumeThresholdCard,
body.flightops-ops-console .alertVolumeTemplateCurrent,
body.flightops-ops-console .alertVolumeTemplateRow { border: 1px solid rgba(78, 110, 145, 0.2); background: rgba(8, 17, 29, 0.66); border-radius: 4px; }
body.flightops-ops-console .alertVolumeInspectorSection { display: grid; gap: 10px; padding: 12px; }
body.flightops-ops-console .alertVolumeInspectorSection .sectionHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
body.flightops-ops-console .alertVolumeInspectorSection .sectionTitle { color: #eef7ff; font-size: 12px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
body.flightops-ops-console .alertVolumeSourceCard { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 12px; padding: 12px; }
body.flightops-ops-console .alertVolumeSourceThumb { min-height: 92px; border: 1px solid rgba(93, 167, 255, 0.36); border-radius: 4px; background: linear-gradient(135deg, rgba(93, 167, 255, 0.18), rgba(93, 167, 255, 0.05)), repeating-linear-gradient(90deg, transparent 0 18px, rgba(93, 167, 255, 0.14) 18px 19px); }
body.flightops-ops-console .alertVolumeSourceInfo { display: grid; gap: 8px; min-width: 0; }
body.flightops-ops-console .alertVolumeSourceInfo .title { color: #eef7ff; font-weight: 800; }
body.flightops-ops-console .alertVolumeMetaGrid,
body.flightops-ops-console .alertVolumeThresholdGrid,
body.flightops-ops-console .alertVolumeDisplayGrid,
body.flightops-ops-console .alertVolumeAltitudeShell { display: grid; gap: 8px; }
body.flightops-ops-console .alertVolumeMetaGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
body.flightops-ops-console .alertVolumeKvp { display: grid; gap: 2px; }
body.flightops-ops-console .alertVolumeKvp span,
body.flightops-ops-console .alertVolumeThresholdCard .thresholdHead { text-transform: uppercase; }
body.flightops-ops-console .alertVolumeKvp strong { color: #e2edf8; font-size: 12px; overflow-wrap: anywhere; }
body.flightops-ops-console .alertVolumeThresholdGrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body.flightops-ops-console .alertVolumeThresholdCard { position: relative; display: grid; gap: 8px; padding: 10px; }
body.flightops-ops-console .alertVolumeThresholdCard.custom { border-color: rgba(212, 168, 74, 0.34); }
body.flightops-ops-console .alertVolumeThresholdCard.custom::after { content: "CUSTOM"; position: absolute; top: 7px; right: 8px; color: #facc15; font-size: 9px; font-weight: 800; }
body.flightops-ops-console .alertVolumeThresholdCard .thresholdHead { display: flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 800; letter-spacing: 0.06em; }
body.flightops-ops-console .alertVolumeThresholdCard .pill { width: 8px; height: 8px; border-radius: 2px; }
body.flightops-ops-console .alertVolumeThresholdCard.advisory .thresholdHead { color: #facc15; }
body.flightops-ops-console .alertVolumeThresholdCard.warning .thresholdHead { color: #f97316; }
body.flightops-ops-console .alertVolumeThresholdCard.critical .thresholdHead { color: #ef4444; }
body.flightops-ops-console .alertVolumeThresholdCard.advisory .pill { background: #facc15; }
body.flightops-ops-console .alertVolumeThresholdCard.warning .pill { background: #f97316; }
body.flightops-ops-console .alertVolumeThresholdCard.critical .pill { background: #ef4444; }
body.flightops-ops-console .alertVolumeThresholdCard .thresholdValueRow,
body.flightops-ops-console .alertVolumeThresholdCard .thresholdSteps { display: flex; align-items: center; gap: 5px; }
body.flightops-ops-console .alertVolumeThresholdCard input { min-width: 0; width: 100%; border: 1px solid rgba(78, 110, 145, 0.22); border-radius: 3px; background: rgba(3, 8, 15, 0.78); color: #eef7ff; padding: 6px 7px; }
body.flightops-ops-console .alertVolumeThresholdCard .thresholdSteps button { min-width: 0; padding: 5px 7px; }
body.flightops-ops-console .alertVolumeAltitudeShell { grid-template-columns: minmax(150px, 1fr) minmax(170px, 0.85fr); }
body.flightops-ops-console .alertVolumeAltitudeRail { position: relative; min-height: 168px; border: 1px solid rgba(78, 110, 145, 0.2); border-radius: 4px; background: repeating-linear-gradient(0deg, transparent 0 13px, rgba(148, 163, 184, 0.08) 13px 14px), rgba(3, 8, 15, 0.68); }
body.flightops-ops-console .alertVolumeAltitudeRail .altBand { position: absolute; left: 38px; right: 38px; min-height: 8px; border-top: 1px solid rgba(212, 168, 74, 0.6); border-bottom: 1px solid rgba(212, 168, 74, 0.6); background: rgba(212, 168, 74, 0.14); }
body.flightops-ops-console .alertVolumeAltitudeRail .altReadout { position: absolute; right: 10px; color: #e2edf8; font: 11px Consolas, "JetBrains Mono", monospace; }
body.flightops-ops-console .alertVolumeAltitudeRail .altReadout.min { bottom: 8px; }
body.flightops-ops-console .alertVolumeAltitudeRail .altReadout.max { top: 8px; }
body.flightops-ops-console .alertVolumeAltitudeForm { display: grid; gap: 8px; align-content: start; }
body.flightops-ops-console .alertVolumeDisplayGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
body.flightops-ops-console .alertVolumeDisplayToggle { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 58px; border: 1px solid rgba(78, 110, 145, 0.2); border-radius: 4px; background: rgba(3, 8, 15, 0.68); color: #e2edf8; padding: 8px 10px; text-align: left; }
body.flightops-ops-console .alertVolumeDisplayToggle.disabled { opacity: 0.48; }

body.flightops-ops-console .flightopsTrackDisplayStale {
  opacity: 0.46 !important;
  filter: saturate(0.72) grayscale(0.18);
}

body.flightops-ops-console .flightopsTrackFreshnessAging {
  opacity: 0.68 !important;
}
body.flightops-ops-console .alertVolumeDisplayToggle .labels { display: grid; gap: 2px; }
body.flightops-ops-console .alertVolumeDisplayToggle small { color: #99b2c8; font-size: 10px; }
body.flightops-ops-console .alertVolumeDisplayToggle .switch { position: relative; width: 30px; height: 16px; border-radius: 999px; background: #3a3c40; flex: none; }
body.flightops-ops-console .alertVolumeDisplayToggle .switch::after { content: ""; position: absolute; top: 1px; left: 1px; width: 14px; height: 14px; border-radius: 50%; background: #cbd5e1; }
body.flightops-ops-console .alertVolumeDisplayToggle.on .switch { background: #d4a84a; }
body.flightops-ops-console .alertVolumeDisplayToggle.on .switch::after { left: 15px; background: #111827; }
body.flightops-ops-console .alertVolumeRenderModeRow { justify-content: space-between; color: #99b2c8; font-size: 12px; }
body.flightops-ops-console .alertVolumeSegmented { display: inline-flex; border: 1px solid rgba(78, 110, 145, 0.24); border-radius: 4px; overflow: hidden; }
body.flightops-ops-console .alertVolumeSegmented button { border: 0; border-right: 1px solid rgba(78, 110, 145, 0.18); background: rgba(3, 8, 15, 0.68); color: #99b2c8; min-height: 28px; padding: 0 10px; }
body.flightops-ops-console .alertVolumeSegmented button:last-child { border-right: 0; }
body.flightops-ops-console .alertVolumeSegmented button.active { background: rgba(212, 168, 74, 0.16); color: #facc15; }
body.flightops-ops-console .alertVolumeBlockList,
body.flightops-ops-console .alertVolumeTemplateList { display: grid; gap: 5px; }
body.flightops-ops-console .alertVolumeBlockRow,
body.flightops-ops-console .alertVolumeTemplateRow { justify-content: space-between; padding: 8px 10px; }
body.flightops-ops-console .alertVolumeBlockRow .pip { width: 7px; height: 7px; border-radius: 2px; background: #60a5fa; }
body.flightops-ops-console .alertVolumeTemplateCurrent { padding: 10px; }
body.flightops-ops-console .alertVolumeTemplateCurrent .text,
body.flightops-ops-console .alertVolumeTemplateRow .info { display: grid; gap: 2px; min-width: 0; flex: 1; }
body.flightops-ops-console .alertVolumeTemplateCurrent strong,
body.flightops-ops-console .alertVolumeTemplateRow strong { color: #eef7ff; }
body.flightops-ops-console .alertVolumeTemplateRow { width: 100%; text-align: left; color: #dbeafe; }
body.flightops-ops-console .alertVolumeTemplateRow.active { border-color: rgba(212, 168, 74, 0.42); background: rgba(212, 168, 74, 0.1); }
body.flightops-ops-console .alertVolumeTemplateRow .check { color: #facc15; font-size: 10px; font-weight: 800; text-transform: uppercase; }
body.flightops-ops-console .alertVolumeInspectorFooter { justify-content: flex-end; padding: 10px 12px 12px; border-top: 1px solid rgba(78, 110, 145, 0.2); }
body.flightops-ops-console .alertVolumeInspectorFooter .dirty { margin-right: auto; color: #facc15; font-size: 11px; }
body.flightops-ops-console .alertVolumeInspectorFooter .spacer { flex: 1; }
body.flightops-ops-console .alertVolumeInlineActions button.danger { border-color: rgba(239, 68, 68, 0.3); color: #fecaca; }
@media (max-width: 960px) {
  body.flightops-ops-console .alertVolumeSourceCard,
  body.flightops-ops-console .alertVolumeAltitudeShell,
  body.flightops-ops-console .alertVolumeThresholdGrid,
  body.flightops-ops-console .alertVolumeDisplayGrid,
  body.flightops-ops-console .alertVolumeMetaGrid { grid-template-columns: 1fr; }
}

/* Full-page Alert Volumes surface, matching the 2026-05-16 Claude layered inspector. */
body.flightops-ops-console .panelSection[data-panel="alerts"].alertVolumeFullSurface {
  --av-bg: #111214;
  --av-surface: #191b1f;
  --av-surface-2: #1e2024;
  --av-surface-3: #24262b;
  --av-input: #15171a;
  --av-text: #e8e4df;
  --av-strong: #f5f2ee;
  --av-sec: #9e9890;
  --av-muted: #6b6660;
  --av-border: rgba(180, 170, 155, 0.2);
  --av-border-strong: rgba(210, 170, 90, 0.34);
  --av-accent: #d4a84a;
  --av-advisory: #facc15;
  --av-warning: #f97316;
  --av-critical: #ef4444;
  --av-clear: #34b866;
  --av-info: #5da7ff;
  left: 18px !important;
  right: 18px !important;
  top: 72px !important;
  bottom: 18px !important;
  width: auto !important;
  max-height: none !important;
  min-width: 980px;
  padding: 0 !important;
  resize: none !important;
  overflow: hidden !important;
  border-radius: 8px !important;
  border: 1px solid var(--av-border) !important;
  background: var(--av-bg) !important;
  box-shadow: 0 28px 74px rgba(0, 0, 0, 0.52) !important;
}

body.flightops-ops-console #sidebar .panelSection[data-panel="alerts"].alertVolumeFullSurface[data-alerts-retired="1"] {
  display: none !important;
  pointer-events: none !important;
}

body.flightops-ops-console .alertVolumeFullFrame {
  display: grid;
  grid-template-columns: 260px minmax(540px, 1fr) 320px;
  grid-template-rows: 44px minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  color: var(--av-text);
  font-size: 13px;
}

body.flightops-ops-console .alertVolumeFullTopbar {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 16px;
  border-bottom: 1px solid var(--av-border);
  background: var(--av-surface);
}

body.flightops-ops-console .alertVolumeCrumb {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--av-sec);
  font-size: 12px;
}

body.flightops-ops-console .alertVolumeCrumb strong {
  color: var(--av-strong);
  font-weight: 700;
}

body.flightops-ops-console .alertVolumeCrumb .sep {
  color: var(--av-muted);
}

body.flightops-ops-console .alertVolumeFullTopbar .spacer {
  flex: 1;
}

body.flightops-ops-console .alertVolumeModePill,
body.flightops-ops-console .alertVolumeCountPill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 22px;
  padding: 0 8px;
  border: 1px solid var(--av-border-strong);
  border-radius: 999px;
  background: rgba(212, 168, 74, 0.1);
  color: var(--av-accent);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

body.flightops-ops-console .alertVolumeModePill::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--av-accent);
}

body.flightops-ops-console .alertVolumeTopAction {
  height: 28px;
  min-width: 0;
  padding: 0 10px;
  border: 1px solid var(--av-border);
  border-radius: 4px;
  background: var(--av-surface-3);
  color: var(--av-text);
  box-shadow: none;
  font-size: 12px;
}

body.flightops-ops-console .alertVolumeTopAction.primary {
  border-color: var(--av-accent);
  background: var(--av-accent);
  color: #171717;
}

body.flightops-ops-console .alertVolumePicker,
body.flightops-ops-console .alertVolumeMain,
body.flightops-ops-console .alertVolumeRightRail {
  min-height: 0;
  background: var(--av-surface);
}

body.flightops-ops-console .alertVolumePicker {
  border-right: 1px solid var(--av-border);
  display: flex;
  flex-direction: column;
}

body.flightops-ops-console .alertVolumePickerHead,
body.flightops-ops-console .alertVolumePickerSearch {
  border-bottom: 1px solid var(--av-border);
}

body.flightops-ops-console .alertVolumePickerHead {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px 8px;
  color: var(--av-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .alertVolumePickerHead .count {
  margin-left: auto;
  color: var(--av-sec);
  font: 11px Consolas, "JetBrains Mono", monospace;
  letter-spacing: 0;
  text-transform: none;
}

body.flightops-ops-console .alertVolumePickerSearch {
  padding: 8px 10px;
}

body.flightops-ops-console .alertVolumePickerSearch input {
  width: 100%;
  min-height: 30px;
  border: 1px solid var(--av-border) !important;
  border-radius: 4px;
  background: var(--av-input) !important;
  color: var(--av-text) !important;
  padding: 5px 8px;
  font-size: 12px;
}

body.flightops-ops-console .alertVolumePickerList {
  overflow-y: auto;
  padding: 6px 0 12px;
}

body.flightops-ops-console .alertVolumePickerGroup {
  padding: 8px 12px 3px;
  color: var(--av-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.flightops-ops-console .alertVolumePickerRow {
  display: grid;
  grid-template-columns: 3px minmax(0, 1fr) 68px;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 48px;
  border: 0;
  border-left: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--av-text);
  padding: 7px 10px;
  text-align: left;
  box-shadow: none;
}

body.flightops-ops-console .alertVolumePickerRow:hover {
  background: var(--av-surface-2);
}

body.flightops-ops-console .alertVolumePickerRow.active {
  border-left-color: var(--av-accent);
  background: rgba(212, 168, 74, 0.08);
}

body.flightops-ops-console .alertVolumePickerRow.disabled {
  opacity: 0.5;
}

body.flightops-ops-console .alertVolumePickerRow .severityStrip {
  width: 3px;
  height: 24px;
  border-radius: 2px;
  background: linear-gradient(180deg, var(--av-warning), var(--av-critical));
}

body.flightops-ops-console .alertVolumePickerRow.clear .severityStrip,
body.flightops-ops-console .alertVolumePickerRow.idle .severityStrip {
  background: var(--av-muted);
}

body.flightops-ops-console .alertVolumePickerRow.warning .severityStrip {
  background: var(--av-warning);
}

body.flightops-ops-console .alertVolumePickerRow.critical .severityStrip {
  background: var(--av-critical);
}

body.flightops-ops-console .pickerMeta {
  display: grid;
  gap: 2px;
  min-width: 0;
}

body.flightops-ops-console .pickerName {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  color: var(--av-text);
  font-size: 12px;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .pickerSub {
  color: var(--av-sec);
  font: 10.5px Consolas, "JetBrains Mono", monospace;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.flightops-ops-console .alertVolumeSourceChip {
  display: inline-flex;
  align-items: center;
  height: 16px;
  padding: 0 5px;
  border-radius: 3px;
  border: 1px solid rgba(93, 167, 255, 0.3);
  background: rgba(93, 167, 255, 0.1);
  color: var(--av-info);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 0.06em;
}

body.flightops-ops-console .alertVolumeSourceChip.tel {
  border-color: rgba(239, 68, 68, 0.4);
  background: rgba(239, 68, 68, 0.1);
  color: var(--av-critical);
}

body.flightops-ops-console .alertVolumeSourceChip.pt {
  border-color: rgba(52, 184, 102, 0.38);
  background: rgba(52, 184, 102, 0.1);
  color: var(--av-clear);
}

body.flightops-ops-console .alertVolumeSourceChip.draw {
  border-color: var(--av-border-strong);
  background: rgba(212, 168, 74, 0.1);
  color: var(--av-accent);
}

body.flightops-ops-console .pickerThresholds {
  display: grid;
  gap: 1px;
  justify-items: end;
  font: 9.5px Consolas, "JetBrains Mono", monospace;
  line-height: 1.1;
}

body.flightops-ops-console .pickerThresholds .adv { color: var(--av-advisory); }
body.flightops-ops-console .pickerThresholds .warn { color: var(--av-warning); }
body.flightops-ops-console .pickerThresholds .crit { color: var(--av-critical); }

body.flightops-ops-console .alertVolumeMain {
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overflow-x: hidden;
  background: var(--av-surface);
}

body.flightops-ops-console .alertVolumeCreatePanel {
  margin: 14px 16px 0;
  padding: 12px 14px;
  border: 1px solid var(--av-border);
  border-radius: 5px;
  background: var(--av-surface-2);
}

body.flightops-ops-console .alertVolumeCreatePanel[hidden] {
  display: none !important;
}

body.flightops-ops-console .alertVolumeCreateHead {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

body.flightops-ops-console .alertVolumeCreateGrid {
  grid-template-columns: 1fr 1fr 1fr;
}

body.flightops-ops-console .alertVolumeInspectorMount {
  display: block;
  min-height: 0;
}

body.flightops-ops-console .alertVolumeMain .alertVolumeInspector {
  display: flex;
  flex-direction: column;
  min-height: calc(100% - 28px);
  margin: 14px 16px;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
}

body.flightops-ops-console .alertVolumeMain .alertVolumeInspectorTopbar {
  display: none !important;
}

body.flightops-ops-console .alertVolumeMain .alertWorkspaceFocusPanel {
  margin: 12px 16px 0;
}

body.flightops-ops-console .alertVolumeMain .alertVolumeInspectorHeader {
  padding: 12px 16px 8px;
  border-top: 0;
  border-bottom: 1px solid var(--av-border);
  background: transparent;
}

body.flightops-ops-console .alertVolumeMain .alertVolumeInspectorTabs {
  padding: 0 16px;
  border-top: 0;
  border-bottom: 1px solid var(--av-border);
  background: transparent;
}

body.flightops-ops-console .alertVolumeMain .alertVolumeInspectorTab {
  min-height: 40px;
  padding: 0 14px;
  border-radius: 0;
  color: var(--av-sec);
  font-weight: 700;
}

body.flightops-ops-console .alertVolumeMain .alertVolumeInspectorTab:hover {
  color: var(--av-text);
}

body.flightops-ops-console .alertVolumeMain .alertVolumeInspectorTab.active {
  color: var(--av-strong);
  border-bottom-color: var(--av-accent);
}

body.flightops-ops-console .alertVolumeMain .alertVolumeInspectorPanel {
  max-width: 820px;
  padding: 16px 22px 96px;
}

body.flightops-ops-console .alertVolumeMain .alertVolumeInspectorSection,
body.flightops-ops-console .alertVolumeMain .alertVolumeSourceCard,
body.flightops-ops-console .alertVolumeMain .alertVolumeThresholdCard,
body.flightops-ops-console .alertVolumeMain .alertVolumeTemplateCurrent,
body.flightops-ops-console .alertVolumeMain .alertVolumeTemplateRow {
  border-color: var(--av-border);
  background: var(--av-surface-2);
}

body.flightops-ops-console .alertVolumeMain .alertVolumeThresholdCard,
body.flightops-ops-console .alertVolumeMain .alertVolumeDisplayToggle,
body.flightops-ops-console .alertVolumeMain .alertVolumeTemplateRow,
body.flightops-ops-console .alertVolumeMain .alertVolumeSourceCard {
  background: var(--av-input);
}

body.flightops-ops-console .alertVolumeMain .alertVolumeInspectorFooter {
  position: sticky;
  bottom: 0;
  margin-top: auto;
  padding: 10px 22px;
  border-top: 1px solid var(--av-border);
  background: var(--av-surface);
  z-index: 2;
}

body.flightops-ops-console .alertVolumeRightRail {
  overflow-y: auto;
  border-left: 1px solid var(--av-border);
  padding: 14px;
}

body.flightops-ops-console .alertVolumeRailBlock {
  display: grid;
  gap: 10px;
  padding: 0 0 14px;
  margin-bottom: 14px;
  border-bottom: 1px solid var(--av-border);
}

body.flightops-ops-console .alertVolumeRailBlock .railKicker {
  color: var(--av-muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body.flightops-ops-console .alertVolumeRailBlock .railTitle {
  color: var(--av-strong);
  font-size: 15px;
  font-weight: 800;
}

body.flightops-ops-console .alertVolumeRightRail .alertWorkspaceBlock {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0;
}

body.flightops-ops-console .alertVolumeRightRail .alertSignalCompactGrid {
  grid-template-columns: 1fr;
}

body.flightops-ops-console .alertVolumeRightRail .settingsControls {
  grid-template-columns: 1fr;
}

@media (max-width: 1180px) {
  body.flightops-ops-console .panelSection[data-panel="alerts"].alertVolumeFullSurface {
    min-width: 0;
    left: 8px !important;
    right: 8px !important;
  }
  body.flightops-ops-console .alertVolumeFullFrame {
    grid-template-columns: 236px minmax(0, 1fr);
  }
  body.flightops-ops-console .alertVolumeRightRail {
    display: none;
  }
}
