/* NAVIS UI source of truth: LEO, ADS-B, AIS and CORS. */
@font-face {
  font-family: "Geist";
  src: url("/navis-shared/fonts/geist-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
}

/* CORS unified console v2: same information hierarchy as LEO / ADS-B / AIS. */
body.cors-app .panel.cors-console-active {
  width:min(470px,calc(100vw - 28px)) !important;
  border-color:rgba(71,139,193,.34) !important;
  background:linear-gradient(165deg,rgba(7,17,34,.99),rgba(3,10,23,.99)) !important;
  box-shadow:0 22px 58px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.035) !important;
}
body.cors-app .panel.cors-console-active > .panel-header {
  padding:24px 26px 21px !important;
  background:linear-gradient(120deg,rgba(9,44,67,.72),rgba(6,19,38,.4)) !important;
}
body.cors-app .panel.cors-console-active .panel-title {
  max-width:none;
  font-size:29px !important;
  letter-spacing:-.025em !important;
}
body.cors-app .panel.cors-console-active .panel-subtitle {
  color:#91a4bd !important;
  font-size:12.5px !important;
}
body.cors-app .cors-header-controls {
  display:grid;
  grid-template-columns:50px minmax(0,1fr) 112px;
  align-items:center;
  gap:10px;
  margin-top:18px;
}
body.cors-app .cors-map-mode,
body.cors-app .cors-network-badge,
body.cors-app .cors-language {
  min-height:38px;
  border:1px solid rgba(83,129,185,.3);
  border-radius:13px;
  background:rgba(2,9,22,.55);
}
body.cors-app .cors-map-mode {
  display:grid;
  place-items:center;
  color:#e8f6ff;
  font:800 16px/1 var(--navis-heading) !important;
}
body.cors-app .cors-network-badge {
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 11px;
  color:#6ee7b7;
  border-color:rgba(16,185,129,.42);
  background:rgba(6,78,59,.32);
  font:800 9px/1.05 var(--navis-sans) !important;
  letter-spacing:.08em;
  text-align:center;
}
body.cors-app .cors-language {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3px;
  padding:3px;
}
body.cors-app .cors-language a {
  display:grid;
  place-items:center;
  border-radius:9px;
  color:#71839b;
  font:800 10px/1 var(--navis-sans) !important;
  text-decoration:none;
}
body.cors-app .cors-language a.is-active {
  color:#03111f;
  background:linear-gradient(135deg,#67e8f9,#38bdf8);
  box-shadow:0 5px 14px rgba(14,165,233,.25),inset 0 1px rgba(255,255,255,.4);
}
body.cors-app .panel.cors-console-active > .panel-body {
  padding:0 22px 24px !important;
}
body.cors-app .panel.cors-console-active .cd-strip {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:8px 12px;
  margin:0 -22px 20px !important;
  padding:13px 22px !important;
  border:0 !important;
  border-bottom:1px solid rgba(56,189,248,.22) !important;
  border-radius:0 !important;
  background:linear-gradient(90deg,rgba(8,49,72,.52),rgba(5,18,35,.16)) !important;
}
body.cors-app .panel.cors-console-active .cd-strip__kicker {
  display:flex;
  align-items:center;
  gap:8px;
  color:#8ca0b9 !important;
  border:0 !important;
  background:none !important;
  font:800 9px/1 var(--navis-sans) !important;
  letter-spacing:.13em;
}
body.cors-app .panel.cors-console-active .cd-strip__kicker::before {
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:#38d8ff;
  box-shadow:0 0 11px rgba(56,216,255,.85);
}
body.cors-app .panel.cors-console-active .cd-strip__summary {
  grid-column:2;
  grid-row:1;
  color:#dce9f7 !important;
  font:700 10px/1.25 var(--navis-sans) !important;
  text-align:right;
}
body.cors-app .panel.cors-console-active .cd-strip__link { display:none !important; }

body.cors-app .panel.cors-console-active [data-cors-block-label]::before {
  content:attr(data-cors-block-label);
  display:flex;
  align-items:center;
  gap:9px;
  color:#42cfff;
  font:800 11px/1 var(--navis-sans) !important;
  letter-spacing:.15em;
}
body.cors-app .panel.cors-console-active [data-cors-block-label]::before {
  margin-bottom:13px;
}
body.cors-app .panel.cors-console-active [data-cors-block-label]::after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-18px;
  height:1px;
  background:rgba(148,163,184,.12);
}
body.cors-app .panel.cors-console-active [data-cors-block-label] {
  position:relative;
  margin-bottom:37px !important;
}

body.cors-app .panel.cors-console-active > .panel-body > .row:not(.row--search) {
  display:block !important;
  padding:17px !important;
  border-color:rgba(83,129,185,.23) !important;
  border-radius:17px !important;
  background:linear-gradient(145deg,rgba(12,25,46,.74),rgba(5,13,28,.62)) !important;
}
body.cors-app .panel.cors-console-active > .panel-body > .row:not(.row--search) > label {
  display:block;
  margin-bottom:10px;
}
body.cors-app .panel.cors-console-active .tog {
  min-height:43px;
  margin-top:0;
  padding:4px;
  border-color:rgba(148,163,184,.12);
  background:rgba(2,8,23,.6);
}
body.cors-app .panel.cors-console-active .tog button {
  height:35px;
  font-size:10px !important;
}

body.cors-app .panel.cors-console-active .feed-ledger {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding:17px !important;
  border:1px solid rgba(83,129,185,.23) !important;
  border-radius:17px !important;
  background:linear-gradient(145deg,rgba(12,25,46,.7),rgba(5,13,28,.58)) !important;
}
body.cors-app .panel.cors-console-active .feed-ledger::before { grid-column:1/-1; }
body.cors-app .panel.cors-console-active .feed-ledger__cell {
  min-height:47px;
  padding:10px 12px !important;
  border:1px solid rgba(148,163,184,.08);
  border-radius:12px;
  background:rgba(2,8,23,.42);
}
body.cors-app .panel.cors-console-active .feed-ledger__key {
  color:#74869e !important;
  font-size:9px !important;
  font-weight:800 !important;
  letter-spacing:.09em !important;
}
body.cors-app .panel.cors-console-active .feed-ledger__val {
  color:#e8f3ff !important;
  font-size:12px !important;
  font-weight:800 !important;
}

body.cors-app .panel.cors-console-active .row--search {
  display:grid !important;
  grid-template-columns:1fr 1fr;
  gap:12px;
  padding:17px !important;
  border:1px solid rgba(83,129,185,.23) !important;
  border-radius:17px !important;
  background:linear-gradient(145deg,rgba(12,25,46,.7),rgba(5,13,28,.58)) !important;
}
body.cors-app .panel.cors-console-active .row--search::before { grid-column:1/-1; }
body.cors-app .panel.cors-console-active .searchable-select {
  min-width:0;
  padding:0 !important;
  border:0 !important;
  background:none !important;
}
body.cors-app .panel.cors-console-active .searchable-select-label {
  display:block;
  margin-bottom:8px;
}
body.cors-app .panel.cors-console-active .searchable-select-trigger,
body.cors-app .panel.cors-console-active .searchable-select-searchbtn {
  min-height:42px !important;
  border-color:rgba(148,163,184,.16) !important;
  background:rgba(2,8,23,.48) !important;
}

body.cors-app .panel.cors-console-active .station-map-legend {
  position:relative;
  margin-bottom:37px !important;
  padding:17px !important;
  border-color:rgba(83,129,185,.23) !important;
  border-radius:17px !important;
  background:linear-gradient(145deg,rgba(12,25,46,.7),rgba(5,13,28,.58)) !important;
}
body.cors-app .panel.cors-console-active .station-map-legend::after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-18px;
  height:1px;
  background:rgba(148,163,184,.12);
}
body.cors-app .panel.cors-console-active .station-map-legend-unit {
  color:#42cfff !important;
  font-size:11px !important;
}
body.cors-app .panel.cors-console-active .station-map-legend-list {
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:8px !important;
}
body.cors-app .panel.cors-console-active .station-map-legend-item {
  min-height:40px;
  padding:9px 10px !important;
  border-radius:11px;
  font-size:11px !important;
}

body.cors-app .panel.cors-console-active .status-board {
  padding:17px !important;
  border:1px solid rgba(83,129,185,.23);
  border-radius:17px;
  background:linear-gradient(145deg,rgba(12,25,46,.7),rgba(5,13,28,.58));
}
body.cors-app .panel.cors-console-active .status-board__chips { gap:8px; }
body.cors-app .panel.cors-console-active .status-chip {
  min-height:55px;
  border-radius:12px;
}
body.cors-app .panel.cors-console-active .status-board__list {
  margin-top:10px;
  max-height:320px;
  border-radius:12px;
}
body.cors-app .panel.cors-console-active .status-row { padding:10px 11px; }

body.cors-app .panel.cors-console-active .provenance-panel {
  padding:17px !important;
  border-color:rgba(83,129,185,.23) !important;
  border-radius:17px !important;
  background:linear-gradient(145deg,rgba(12,25,46,.7),rgba(5,13,28,.58)) !important;
}
body.cors-app .panel.cors-console-active .provenance-panel > summary {
  margin-top:2px;
  padding:9px 2px 2px;
}

@media (max-width:768px) {
  body.cors-app .panel.cors-console-active { width:100% !important; }
  body.cors-app .cors-header-controls { display:none; }
  body.cors-app .panel.cors-console-active > .panel-body { padding:14px !important; }
  body.cors-app .panel.cors-console-active .cd-strip { margin:-14px -14px 16px !important; padding:13px 14px !important; }
  body.cors-app .panel.cors-console-active [data-cors-block-label] { margin-bottom:20px !important; }
  body.cors-app .panel.cors-console-active [data-cors-block-label]::after,
  body.cors-app .panel.cors-console-active .station-map-legend::after { display:none; }
  body.cors-app .panel.cors-console-active .row--search { grid-template-columns:1fr; }
  body.cors-app .panel.cors-console-active .row--search::before { grid-column:1; }
  body.cors-app .panel.cors-console-active .station-map-legend { margin-bottom:18px !important; }
}
@font-face {
  font-family: "Newsreader";
  src: url("/navis-shared/fonts/newsreader-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
}
:root {
  --navis-bg: #020617;
  --navis-panel: rgba(7, 14, 29, .985);
  --navis-panel-soft: rgba(9, 18, 35, .62);
  --navis-text: #e5e7eb;
  --navis-muted: #94a3b8;
  --navis-dim: #64748b;
  --navis-accent: #38bdf8;
  --navis-line: rgba(83, 129, 185, .34);
  --navis-radius: 15px;
  --navis-sans: "Times New Roman", Times, serif;
  --navis-heading: "Times New Roman", Times, serif;
  --navis-mono: "Times New Roman", Times, serif;
  --navis-console-width: min(438px, calc(100vw - 28px));
  --navis-control-height: 40px;
  --navis-card-radius: 14px;
  --navis-map-brightness: 1;
  --navis-map-contrast: 1;
  --navis-map-saturation: 1;
  --navis-map-sharpness: 0;
}

/* Common typography. Product-specific selectors are included so legacy bundles inherit one token set. */
body,
.panel, .panel *, .station-drawer, .station-drawer *,
#panel, #panel *, .navis-map-settings, .navis-map-settings *,
.leaflet-container, button, input, select, textarea {
  font-family: var(--navis-sans) !important;
}
#panel .panel-title, .panel .panel-title,
#panel .ops-console-title, .ops-console-title { font-family: var(--navis-heading) !important; }
.counter, code, output, .status-row__code, .status-chip__count,
.sum-value, .date-pill { font-family: var(--navis-mono) !important; font-variant-numeric: tabular-nums; }

/* Common console shell. Domain styles control dimensions; this file controls visual language. */
.panel, #panel {
  color: var(--navis-text) !important;
  border-color: rgba(125, 211, 252, .2) !important;
  border-radius: 20px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(14, 165, 233, .055), transparent 34%),
    linear-gradient(180deg, rgba(7, 14, 29, .985), rgba(4, 10, 23, .98)) !important;
  box-shadow: 0 26px 80px rgba(0, 0, 0, .5), inset 0 1px rgba(255, 255, 255, .035) !important;
}
.panel-header {
  border-bottom-color: rgba(125, 211, 252, .17) !important;
  background:
    radial-gradient(circle at 92% -8%, rgba(45, 212, 191, .12), transparent 38%),
    radial-gradient(circle at 12% 0, rgba(56, 189, 248, .1), transparent 44%),
    linear-gradient(145deg, rgba(15, 36, 61, .94), rgba(7, 18, 38, .97)) !important;
}

/* Shared console components used directly by CORS, AIS, ADS-B and LEO. */
.panel-title { color:#f8fafc !important; font:700 26px/1.08 var(--navis-heading) !important; letter-spacing:-.018em; }
.panel-subtitle { margin-top:4px; color:var(--navis-muted) !important; font:600 12px/1.4 var(--navis-sans) !important; }
.panel-body::-webkit-scrollbar { width:5px; }
.panel-body::-webkit-scrollbar-track { background:transparent; }
.panel-body::-webkit-scrollbar-thumb { border-radius:999px; background:rgba(100,116,139,.58); }
.cd-strip { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:7px 10px; min-height:0; margin:0 0 12px; padding:12px 13px; border:1px solid rgba(52,211,153,.2); border-radius:13px; background:linear-gradient(135deg,rgba(16,185,129,.09),rgba(8,47,73,.15)); box-shadow:inset 0 1px rgba(255,255,255,.025); }
.cd-strip__kicker { align-self:center; color:#67e8f9; font-size:10px; font-weight:750; letter-spacing:.14em; }
.cd-strip__summary { grid-column:1/-1; min-width:0; color:var(--navis-muted); font-size:10px; line-height:1.45; }
.cd-strip__summary b { color:#e2e8f0; }
.cd-strip__link { align-self:center; padding:5px 8px; border:1px solid rgba(56,189,248,.18); border-radius:999px; color:#7dd3fc; background:rgba(14,165,233,.07); font-size:9px; white-space:nowrap; }
.panel .tog { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:3px; width:100%; margin-top:7px; padding:3px; border:1px solid rgba(148,163,184,.12); border-radius:999px; background:rgba(2,8,23,.55); }
.panel .tog button { min-width:0; height:36px; padding:0 4px; overflow:hidden; border:0; border-radius:999px; color:var(--navis-muted); background:transparent; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.panel .tog button.on { color:#03111f; background:linear-gradient(135deg,#67e8f9,#38bdf8); box-shadow:0 5px 15px rgba(14,165,233,.26),inset 0 1px rgba(255,255,255,.38); }
.feed-ledger { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin-bottom:10px; padding:7px; border:1px solid rgba(148,163,184,.12); border-radius:13px; background:rgba(2,8,23,.48); }
.feed-ledger__cell { min-width:0; padding:9px 10px; border-radius:9px; background:rgba(15,23,42,.66); }
.feed-ledger__key { color:#64748b; }
.feed-ledger__val { color:#e2e8f0; }
.row--search { display:grid; gap:8px; margin-bottom:10px; padding:0; }
.searchable-select { padding:11px 12px 12px; border:1px solid rgba(148,163,184,.11); border-radius:13px; background:rgba(9,18,35,.56); }
.searchable-select-label { color:#7c8ca5; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.searchable-select-trigger,.searchable-select-searchbtn { min-height:var(--navis-control-height); border-color:rgba(148,163,184,.14); border-radius:10px; background:rgba(2,8,23,.48); box-shadow:inset 0 1px rgba(255,255,255,.025); }
.status-board__chips { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:9px; }
.status-chip { min-height:52px; border-radius:13px; background:rgba(9,18,35,.62); box-shadow:inset 0 1px rgba(255,255,255,.025); }
.status-chip.is-active,.status-chip[aria-pressed="true"] { border-color:rgba(56,189,248,.34); background:linear-gradient(135deg,rgba(14,165,233,.18),rgba(8,47,73,.25)); }
.status-board__list { display:grid; gap:5px; }
.status-row { min-height:48px; padding:10px 11px; border:1px solid rgba(148,163,184,.09); border-radius:10px; background:rgba(9,18,35,.46); transition:border-color .18s ease,background .18s ease,transform .18s ease; }
.status-row:hover { border-color:rgba(56,189,248,.2); background:rgba(14,30,52,.72); transform:translateX(2px); }
.provenance-panel { border-color:rgba(148,163,184,.12); border-radius:14px; background:rgba(9,18,35,.5); box-shadow:inset 0 1px rgba(255,255,255,.025); }

/* Shared legend card. */
.station-map-legend,
#ops-cluster-legend,
#ops-jump-layer-controls .ops-jump-legend {
  border: 1px solid var(--navis-line) !important;
  border-radius: var(--navis-radius) !important;
  background: rgba(6, 15, 31, .46) !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, .035) !important;
}
.station-map-legend { display:block !important; margin:0 0 13px !important; padding:16px 17px 15px !important; }
.station-map-legend-unit,
.ops-section-kicker {
  color: var(--navis-accent) !important;
  font: 850 11px/1 var(--navis-sans) !important;
  letter-spacing: .16em !important;
}
.station-map-legend-unit { margin: 0 0 12px !important; }
.station-map-legend-list { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; align-items:center !important; gap:10px !important; }
.station-map-legend-item { display:inline-flex !important; align-items:center !important; width:auto !important; min-width:0 !important; min-height:34px; padding:7px 9px !important; color:#cbd5e1 !important; border:1px solid rgba(148,163,184,.08); border-radius:10px; background:linear-gradient(145deg,rgba(15,27,48,.7),rgba(7,15,31,.58)) !important; font:650 12px/1.15 var(--navis-sans) !important; white-space:nowrap !important; }
.station-map-legend-dot { width:12px !important; height:12px !important; flex:0 0 auto !important; margin-right:7px !important; border-radius:50% !important; }
.station-map-legend-dot--ring { background:#081225 !important; border:2px solid currentColor; }
.station-map-legend-dot--pad-fix,.station-map-legend-dot--pad-float { width:15px !important; height:7px !important; margin-right:7px !important; border-width:1.5px !important; }

/* Shared map-quality dialog. */
.navis-map-settings { position:fixed; z-index:13000; top:82px; right:14px; color:#eaf2ff; }
body.cors-app .navis-map-settings, .app--map-igs ~ .navis-map-settings { top:16px; right:16px; }
.navis-map-settings__trigger { min-width:112px; height:42px; padding:0 14px 0 11px; display:inline-flex; align-items:center; justify-content:center; gap:8px; color:#eaf2ff; border:1px solid rgba(120,159,211,.38); border-radius:13px; background:linear-gradient(145deg,rgba(14,29,52,.94),rgba(7,16,33,.94)); box-shadow:0 12px 34px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.05); backdrop-filter:blur(14px); cursor:pointer; font-weight:750; }
.navis-map-settings__trigger:hover,.navis-map-settings__trigger[aria-expanded="true"] { border-color:var(--navis-accent); background:#0b2945; }
.navis-map-settings__trigger svg { width:22px; height:22px; fill:none; stroke:var(--navis-accent); stroke-width:1.7; }
.navis-map-settings__gear { color:var(--navis-accent); font-size:22px; line-height:1; }
.navis-map-settings__label { font-size:13px; letter-spacing:.01em; }
.navis-map-settings__panel { width:min(360px,calc(100vw - 28px)); max-height:calc(100vh - 96px); margin-top:9px; padding:18px; overflow:auto; border:1px solid rgba(83,129,185,.42); border-radius:18px; background:linear-gradient(155deg,rgba(9,23,43,.98),rgba(5,13,28,.98)); box-shadow:0 22px 65px rgba(0,0,0,.55),inset 0 1px rgba(255,255,255,.04); backdrop-filter:blur(20px); }
.navis-map-settings__head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.navis-map-settings__head h2 { margin:2px 0 0; color:#f8fafc; font:750 21px/1.2 var(--navis-sans) !important; }
.navis-map-settings__eyebrow { color:var(--navis-accent); font-size:10px; font-weight:850; letter-spacing:.18em; }
.navis-map-settings__close { width:30px; height:30px; padding:0; border:1px solid rgba(148,163,184,.22); border-radius:9px; background:#0c172a; color:#9fb0c7; font-size:23px; line-height:1; cursor:pointer; }
.navis-map-settings__hint { margin:8px 0 15px; color:#8fa2bd; font-size:12px; }
.navis-map-settings__language { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:12px; margin:0 0 13px; padding:11px 12px; border:1px solid rgba(56,189,248,.2); border-radius:12px; background:linear-gradient(135deg,rgba(14,116,144,.1),rgba(6,15,31,.58)); }
.navis-map-settings__language > span { display:grid; gap:3px; min-width:0; }
.navis-map-settings__language strong { color:#dcecff; font-size:12px; font-weight:760; }
.navis-map-settings__language small { color:#7186a2; font-size:9px; line-height:1.25; }
.navis-map-settings__language > div { display:grid; grid-template-columns:repeat(2,1fr); gap:3px; padding:3px; border:1px solid rgba(148,163,184,.16); border-radius:10px; background:rgba(2,8,23,.58); }
.navis-map-settings__language button { width:42px; height:30px; padding:0; border:0; border-radius:7px; color:#8293aa; background:transparent; font-size:10px; font-weight:800; cursor:pointer; }
.navis-map-settings__language button.is-active { color:#03111f; background:linear-gradient(135deg,#67e8f9,#38bdf8); box-shadow:0 4px 12px rgba(14,165,233,.24); }
.navis-map-settings__presets { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; margin-bottom:16px; }
.navis-map-settings__presets button { height:34px; padding:0 4px; border:1px solid rgba(107,135,173,.3); border-radius:9px; background:#0a1528; color:#9eacc1; font-size:11px; font-weight:750; cursor:pointer; }
.navis-map-settings__presets button:hover { border-color:rgba(56,189,248,.62); color:#dff5ff; }
.navis-map-settings__presets button.is-active { border-color:var(--navis-accent); color:#e8f8ff; background:linear-gradient(145deg,#075985,#0c4a6e); box-shadow:0 4px 16px rgba(14,165,233,.2); }
.navis-map-settings__controls { display:grid; gap:13px; padding:15px; border:1px solid rgba(71,99,136,.24); border-radius:13px; background:rgba(6,15,31,.55); }
.navis-map-settings__group { margin:4px 0 -2px; padding-top:11px; border-top:1px solid rgba(71,99,136,.22); color:var(--navis-accent); font:800 10px/1.2 var(--navis-sans) !important; letter-spacing:.14em; text-transform:uppercase; }
.navis-map-settings__group:first-child { margin-top:0; padding-top:0; border-top:0; }
.navis-map-settings__range > span { display:flex; align-items:center; justify-content:space-between; margin-bottom:7px; }
.navis-map-settings__range strong { color:#cbd5e1; font-size:12px; font-weight:680; }
.navis-map-settings__range output { color:var(--navis-accent); font:750 11px/1 var(--navis-mono) !important; }
.navis-map-settings__range input { width:100%; height:4px; accent-color:var(--navis-accent); cursor:pointer; }
.navis-map-settings__switches { display:grid; gap:7px; margin-top:13px; }
.navis-map-settings__toggle { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:13px; padding:11px 13px; border:1px solid rgba(71,99,136,.24); border-radius:12px; background:rgba(6,15,31,.42); cursor:pointer; }
.navis-map-settings__switches .navis-map-settings__toggle { margin-top:0; }
.navis-map-settings__toggle span { display:grid; gap:3px; }.navis-map-settings__toggle strong { color:#d8e2f0; font-size:12px; }.navis-map-settings__toggle small { color:#71839c; font-size:10px; }
.navis-map-settings__toggle input { position:absolute; opacity:0; pointer-events:none; }.navis-map-settings__toggle i { width:38px; height:21px; flex:none; position:relative; border-radius:999px; background:#26354b; transition:.18s ease; }
.navis-map-settings__toggle i:after { content:""; position:absolute; width:15px; height:15px; left:3px; top:3px; border-radius:50%; background:#94a3b8; transition:.18s ease; }
.navis-map-settings__toggle input:checked + i { background:#075985; box-shadow:inset 0 0 0 1px var(--navis-accent); }.navis-map-settings__toggle input:checked + i:after { transform:translateX(17px); background:#e0f2fe; }
.navis-map-settings__footer { display:flex; align-items:center; justify-content:space-between; margin-top:14px; color:#5f728e; font-size:10px; }
.navis-map-settings__footer button { padding:7px 10px; border:1px solid rgba(248,113,113,.3); border-radius:8px; background:transparent; color:#f87171; font-size:10px; font-weight:700; cursor:pointer; }

@media (max-width:768px),((max-height:520px) and (pointer:coarse)) {
  .navis-map-settings,body.cors-app .navis-map-settings { top:10px; right:10px; }
  .navis-map-settings__trigger { min-width:42px; width:42px; height:42px; padding:0; border-radius:12px; }
  .navis-map-settings__label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
  .navis-map-settings__panel { width:min(340px,calc(100vw - 20px)); max-height:calc(100vh - 72px); padding:15px; }
  .station-map-legend-list { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:10px 8px !important; }
  .station-map-legend-item { font-size:10px !important; }
}

/* NAVIS mobile map console: map-first, three-snap bottom sheet shared by
   ADS-B, AIS and LEO. Desktop keeps the full operations rail. */
#navis-mobile-sheet-handle { display:none; }
@media (max-width:768px) and (orientation:portrait) {
  .side-stack:has(#panel.ops-console-active),
  html.chrome-off .side-stack:has(#panel.ops-console-active) {
    inset:auto 0 0 0 !important;
    width:100% !important;
    max-height:none !important;
    overflow:visible !important;
    display:block !important;
    pointer-events:none !important;
    padding:0 !important;
  }
  #panel.ops-console-active[data-navis-sheet-state] {
    --navis-sheet-height:132px;
    width:100% !important;
    max-width:none !important;
    height:var(--navis-sheet-height) !important;
    min-height:0 !important;
    max-height:var(--navis-sheet-height) !important;
    margin:0 !important;
    padding:0 !important;
    zoom:1 !important;
    overflow:hidden !important;
    border-width:1px 0 0 !important;
    border-radius:24px 24px 0 0 !important;
    background:linear-gradient(165deg,rgba(10,26,48,.985),rgba(3,10,23,.99)) !important;
    box-shadow:0 -18px 54px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.06) !important;
    transition:height .32s cubic-bezier(.22,1,.36,1),max-height .32s cubic-bezier(.22,1,.36,1) !important;
    pointer-events:auto !important;
  }
  #panel.ops-console-active[data-navis-sheet-state="half"] { --navis-sheet-height:52dvh; }
  #panel.ops-console-active[data-navis-sheet-state="full"] { --navis-sheet-height:calc(100dvh - 58px - env(safe-area-inset-top,0px)); }
  #panel.ops-console-active.navis-sheet-dragging { transition:none !important; }
  #panel.ops-console-active::before { display:none !important; }
  #panel.ops-console-active > .panel-body {
    display:flex !important;
    flex-direction:column !important;
    min-height:0 !important;
    height:calc(100% - 56px) !important;
    padding:0 14px calc(18px + env(safe-area-inset-bottom,0px)) !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
    scrollbar-width:none;
  }
  #panel.ops-console-active > .panel-body > #ops-console-header { order:0; }
  #panel.ops-console-active > .panel-body > #ops-adsb-view-mode { order:10; }
  #panel.ops-console-active > .panel-body > [data-ops-section="time"] { order:20; }
  #panel.ops-console-active > .panel-body > [data-ops-section="layers"] { order:30; }
  #panel.ops-console-active > .panel-body > [data-ops-section="map"] { order:40; }
  #panel.ops-console-active > .panel-body > [data-ops-section="cases"] { order:50; }
  #panel.ops-console-active > .panel-body::-webkit-scrollbar { display:none; }
  #navis-mobile-sheet-handle {
    position:relative;
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
    width:100%;
    height:56px;
    padding:13px 20px 7px;
    border:0;
    background:transparent;
    color:#e8f3ff;
    text-align:left;
    cursor:ns-resize;
    touch-action:none;
  }
  .navis-mobile-sheet-grip {
    position:absolute;
    top:7px;
    left:50%;
    width:44px;
    height:4px;
    border-radius:999px;
    background:rgba(148,163,184,.55);
    transform:translateX(-50%);
  }
  .navis-mobile-sheet-summary { display:grid; gap:1px; min-width:0; }
  .navis-mobile-sheet-summary b {
    overflow:hidden;
    color:#f8fafc;
    font:700 14px/1.15 "Times New Roman",Times,serif !important;
    white-space:nowrap;
    text-overflow:ellipsis;
  }
  .navis-mobile-sheet-summary small { color:#7f93ad; font:600 10px/1.2 "Times New Roman",Times,serif !important; }
  .navis-mobile-sheet-chevron {
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border:1px solid rgba(56,189,248,.2);
    border-radius:999px;
    color:#7dd3fc;
    background:rgba(8,47,73,.48);
    font-size:18px;
    transition:transform .25s ease;
  }
  #panel.ops-console-active[data-navis-sheet-state="full"] .navis-mobile-sheet-chevron { transform:rotate(180deg); }
  #panel.ops-console-active #panel-expand,
  #panel.ops-console-active #mobile-expand-btn,
  body:has(#panel.ops-console-active[data-navis-sheet-state]) #panel-toggle,
  body:has(#panel.ops-console-active[data-navis-sheet-state]) #reopen { display:none !important; }
  #panel.ops-console-active[data-navis-sheet-state="peek"] > .panel-body {
    overflow:hidden !important;
    pointer-events:none;
  }
  #panel.ops-console-active[data-navis-sheet-state="peek"] #ops-console-header {
    padding-top:4px !important;
  }
  #panel.ops-console-active[data-navis-sheet-state="peek"] #ops-console-header > :not(.ops-live-strip) { display:none !important; }
  #panel.ops-console-active[data-navis-sheet-state="peek"] #ops-live-strip {
    margin-top:0 !important;
    min-height:54px;
    border-top:0 !important;
  }
}

@media (max-width:768px) and (orientation:landscape) {
  #navis-mobile-sheet-handle { display:none !important; }
}

/* GPSwise-inspired phone shell: the map remains primary. A compact status
   card and icon dock open one focused tool card at a time. */
#navis-mobile-map-status,#navis-mobile-map-dock { display:none; }
#ops-timezone-switch {
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:10px;
  padding:6px;
  border:1px solid rgba(71,99,136,.25);
  border-radius:12px;
  background:rgba(5,15,31,.5);
}
#ops-timezone-switch > span { margin-right:auto; padding-left:6px; color:#7f93ad; font-size:9px; font-weight:800; letter-spacing:.13em; }
#ops-timezone-switch button { min-width:46px; height:30px; padding:0 8px; border:1px solid transparent; border-radius:9px; background:transparent; color:#8496ad; font-size:10px; font-weight:800; cursor:pointer; }
#ops-timezone-switch button.is-active { border-color:rgba(56,189,248,.4); color:#e7f8ff; background:linear-gradient(145deg,rgba(14,116,144,.58),rgba(8,47,73,.5)); box-shadow:inset 0 1px rgba(255,255,255,.07); }
@media (max-width:768px) and (orientation:portrait) {
  #navis-mobile-sheet-handle { display:none !important; }
  #navis-mobile-map-status {
    position:fixed;
    z-index:2380;
    top:calc(62px + env(safe-area-inset-top,0px));
    left:14px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    width:min(270px,calc(100vw - 132px));
    min-height:58px;
    padding:10px 13px;
    transform:none;
    border:1px solid rgba(125,211,252,.23);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(8,27,48,.91),rgba(5,14,29,.88));
    color:#eaf6ff;
    box-shadow:0 12px 34px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.05);
    backdrop-filter:blur(15px) saturate(1.15);
    text-align:left;
  }
  #navis-mobile-map-status span { display:grid; gap:2px; min-width:0; }
  #navis-mobile-map-status b { overflow:hidden; font:700 15px/1.08 "Times New Roman",Times,serif !important; white-space:nowrap; text-overflow:ellipsis; }
  #navis-mobile-map-status small { color:#8da1ba; font:600 10px/1.2 "Times New Roman",Times,serif !important; }
  #navis-mobile-map-status i { padding:5px 8px; border:1px solid rgba(52,211,153,.3); border-radius:999px; background:rgba(6,78,59,.44); color:#6ee7b7; font:700 9px/1 "Times New Roman",Times,serif !important; font-style:normal; white-space:nowrap; }

  #navis-mobile-map-dock {
    position:fixed;
    z-index:2420;
    left:50%;
    bottom:calc(9px + env(safe-area-inset-bottom,0px));
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:5px;
    width:min(354px,calc(100vw - 20px));
    height:58px;
    padding:6px;
    transform:translateX(-50%);
    border:1px solid rgba(125,211,252,.2);
    border-radius:17px;
    background:linear-gradient(155deg,rgba(8,25,45,.94),rgba(3,11,24,.94));
    box-shadow:0 14px 38px rgba(0,0,0,.45),inset 0 1px rgba(255,255,255,.05);
    backdrop-filter:blur(18px) saturate(1.2);
  }
  #navis-mobile-map-dock button,#navis-mobile-map-dock a {
    display:grid;
    place-items:center;
    align-content:center;
    gap:2px;
    min-width:0;
    padding:3px 1px;
    border:1px solid transparent;
    border-radius:11px;
    background:transparent;
    color:#8395ad;
    text-decoration:none;
  }
  #navis-mobile-map-dock button span,#navis-mobile-map-dock a span { font:700 18px/1 "Times New Roman",Times,serif !important; }
  #navis-mobile-map-dock button b,#navis-mobile-map-dock a b { font:700 9px/1 "Times New Roman",Times,serif !important; }
  #navis-mobile-map-dock a img { width:38px; max-width:90%; height:16px; object-fit:contain; object-position:center; filter:none; opacity:1; }
  #navis-mobile-map-dock button.is-active { border-color:rgba(56,189,248,.34); background:linear-gradient(160deg,rgba(14,116,144,.5),rgba(8,47,73,.42)); color:#dff8ff; box-shadow:inset 0 1px rgba(255,255,255,.07); }

  .side-stack:has(#panel.ops-console-active),html.chrome-off .side-stack:has(#panel.ops-console-active) {
    inset:auto 18px calc(76px + env(safe-area-inset-bottom,0px)) 18px !important;
    width:auto !important;
    max-height:none !important;
    overflow:visible !important;
    display:flex !important;
    align-items:center !important;
  }
  #panel.ops-console-active[data-navis-sheet-state] {
    --navis-sheet-height:auto;
    width:min(344px,calc(100vw - 36px)) !important;
    height:auto !important;
    min-height:0 !important;
    max-height:min(54dvh,520px) !important;
    margin:0 auto !important;
    padding:0 !important;
    border:1px solid rgba(125,211,252,.2) !important;
    border-radius:19px !important;
    background:linear-gradient(155deg,rgba(7,23,42,.965),rgba(3,11,24,.97)) !important;
    box-shadow:0 18px 48px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.05) !important;
    opacity:1;
    transform:translateY(0) !important;
    transition:opacity .2s ease,transform .26s cubic-bezier(.22,1,.36,1) !important;
  }
  #panel.ops-console-active[data-navis-mobile-open="false"] { opacity:0; transform:translateY(calc(100% + 86px)) !important; pointer-events:none !important; }
  #panel.ops-console-active[data-ops-tab="cases"],#panel.ops-console-active[data-ops-tab="all"] { max-height:min(72dvh,650px) !important; }
  #panel.ops-console-active > .panel-body { height:auto !important; max-height:inherit !important; padding:12px !important; }
  #panel.ops-console-active[data-navis-sheet-state="dock"] > .panel-body {
    overflow-x:hidden !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
    touch-action:pan-y;
    -webkit-overflow-scrolling:touch;
    pointer-events:auto !important;
  }
  #panel.ops-console-active[data-navis-sheet-state="dock"][data-ops-tab="all"] > .panel-body {
    height:min(72dvh,650px) !important;
    max-height:min(72dvh,650px) !important;
  }
  #panel.ops-console-active[data-navis-sheet-state="dock"][data-ops-tab="cases"] > .panel-body {
    height:auto !important;
    max-height:min(72dvh,650px) !important;
  }
  #panel.ops-console-active[data-navis-sheet-state="dock"] #ops-console-header > * { display:flex; }
  #panel.ops-console-active #ops-console-header,#panel.ops-console-active #ops-console-nav { display:none !important; }
  #panel.ops-console-active[data-ops-tab="all"] #ops-console-header { display:block !important; order:-100 !important; }
  #panel.ops-console-active[data-ops-tab="all"] > .panel-body { padding-top:16px !important; }
  #panel.ops-console-active[data-ops-tab="time"] #ops-time-intro,
  #panel.ops-console-active[data-ops-tab="layers"] #ops-adsb-view-mode,
  #panel.ops-console-active[data-ops-tab="map"] #ops-map-intro,
  #panel.ops-console-active[data-ops-tab="cases"] #ops-cases-intro { margin-top:0 !important; }
  #panel.ops-console-active .ops-target-hidden,
  #panel.ops-console-active .ops-mode-hidden,
  #panel.ops-console-active .ops-empty-row { display:none !important; }
  body #panel.ops-console-active [data-navis-legend][data-navis-legend-visible="false"] { display:none !important; }
  body #panel.ops-console-active [data-navis-legend][data-navis-legend-visible="true"] { display:flex !important; }
  #ops-timezone-switch { position:sticky; bottom:0; z-index:2; backdrop-filter:blur(12px); }
  body:has(#navis-mobile-map-dock) #lab-logo-button { display:none !important; }
}
html body #panel [hidden] { display:none !important; }
html body #panel.ops-console-active [data-navis-legend][data-navis-legend-visible="false"] { display:none !important; }
html body #panel.ops-console-active [data-navis-legend][data-navis-legend-visible="true"] { display:flex !important; }
@media (min-width:769px) {
  html body #panel.ops-console-active:not(.expanded) {
    height:calc(86vh / var(--panel-ui-scale,.82)) !important;
    max-height:calc(86vh / var(--panel-ui-scale,.82)) !important;
  }
  html body #panel.ops-console-active.expanded {
    height:calc((100vh - 32px) / var(--panel-ui-scale,.82)) !important;
    max-height:calc((100vh - 32px) / var(--panel-ui-scale,.82)) !important;
  }
  #panel.ops-console-active #panel-expand { transition:transform .2s ease,border-color .2s ease,color .2s ease; }
  #panel.ops-console-active.expanded #panel-expand { transform:rotate(180deg); }
}
html.navis-reduced-motion *,html.navis-reduced-motion *::before,html.navis-reduced-motion *::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }

/* CORS console: the same full-scale shell and mobile interaction model as the anomaly consoles. */
body.cors-app {
  --panel-ui-scale: 1;
  background:#020617;
}
body.cors-app .side-stack {
  top:78px;
  left:14px;
  gap:0;
}
body.cors-app .panel.cors-console-active {
  zoom:1 !important;
  width:min(430px,calc(100vw - 28px)) !important;
  max-height:calc(100dvh - 96px) !important;
  padding:0 !important;
  overflow:hidden !important;
}
body.cors-app .panel.cors-console-active > .panel-header {
  position:relative;
  display:block;
  flex:none;
  margin:0 !important;
  padding:22px 24px 19px !important;
  border-bottom:1px solid rgba(56,189,248,.22) !important;
}
body.cors-app .cors-domain-eyebrow {
  margin:0 0 8px;
  color:#51d3ff;
  font:800 11px/1.2 var(--navis-sans) !important;
  letter-spacing:.17em;
}
body.cors-app .panel.cors-console-active .panel-title {
  max-width:330px;
  font:700 28px/1.06 var(--navis-heading) !important;
}
body.cors-app .panel.cors-console-active .panel-subtitle {
  margin-top:6px;
  font-size:12px !important;
}
body.cors-app .panel.cors-console-active > .panel-body {
  padding:18px 20px 22px !important;
  margin:0 !important;
}
body.cors-app .panel.cors-console-active > .panel-body > .row,
body.cors-app .panel.cors-console-active > .panel-body > .feed-ledger,
body.cors-app .panel.cors-console-active > .panel-body > .status-board,
body.cors-app .panel.cors-console-active > .panel-body > .provenance-panel {
  margin-bottom:14px !important;
}
body.cors-app .panel.cors-console-active > .panel-body > .row:not(.row--search) {
  padding:14px 15px !important;
  border:1px solid rgba(148,163,184,.11);
  border-radius:14px;
  background:rgba(8,18,35,.58);
}
body.cors-app .panel.cors-console-active .row > label,
body.cors-app .panel.cors-console-active .searchable-select-label {
  color:#8fa2bc !important;
  font-size:10px !important;
  font-weight:800 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase;
}
body.cors-app .panel.cors-console-active .status-board__list {
  max-height:340px;
  padding:5px;
  border-color:rgba(148,163,184,.11);
  background:rgba(2,8,23,.34);
}
body.cors-app .panel.cors-console-active .map-link-rinex {
  width:100%;
  min-height:40px;
  border:1px solid rgba(56,189,248,.22);
  border-radius:11px;
  color:#7dd3fc;
  background:rgba(14,116,144,.12);
  font-weight:750;
}
#navis-cors-mobile-status,
#navis-cors-mobile-dock { display:none; }

body.cors-app .leaflet-control-zoom {
  overflow:hidden;
  margin:16px 0 0 16px !important;
  border:1px solid rgba(125,211,252,.24) !important;
  border-radius:13px !important;
  background:rgba(4,14,29,.9) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.05) !important;
  backdrop-filter:blur(12px);
}
body.cors-app .leaflet-control-zoom a {
  width:40px !important;
  height:40px !important;
  border-color:rgba(148,163,184,.13) !important;
  color:#c9efff !important;
  background:linear-gradient(145deg,rgba(11,31,53,.96),rgba(5,15,31,.96)) !important;
  font:500 22px/38px var(--navis-sans) !important;
  transition:color .18s ease,background .18s ease !important;
}
body.cors-app .leaflet-control-zoom a:hover {
  color:#fff !important;
  background:rgba(14,116,144,.42) !important;
}
body.cors-app .leaflet-control-attribution {
  padding:4px 8px !important;
  border-radius:8px 0 0 0;
  color:#71839a !important;
  background:rgba(2,8,23,.76) !important;
  backdrop-filter:blur(8px);
}
body.cors-app .map-surface::after {
  content:"";
  position:absolute;
  z-index:600;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 0 120px rgba(2,6,23,.18);
}
body.cors-app .hbanner.hbanner--delay {
  position:fixed;
  z-index:2300;
  top:16px;
  left:50%;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  width:min(350px,calc(100vw - 520px));
  min-width:270px;
  min-height:54px;
  padding:9px 11px;
  transform:translateX(-50%);
  border:1px solid rgba(251,191,36,.34);
  border-radius:15px;
  color:#edf6ff;
  background:linear-gradient(145deg,rgba(31,25,12,.94),rgba(6,15,29,.95));
  box-shadow:0 14px 38px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.05);
  backdrop-filter:blur(16px) saturate(1.15);
}
body.cors-app .hbanner__signal {
  position:relative;
  width:28px;
  height:28px;
  border:1px solid rgba(251,191,36,.42);
  border-radius:50%;
  background:rgba(245,158,11,.1);
}
body.cors-app .hbanner__signal::before {
  content:"";
  position:absolute;
  inset:9px;
  border-radius:50%;
  background:#fbbf24;
  box-shadow:0 0 12px rgba(251,191,36,.78);
}
body.cors-app .hbanner__copy { display:grid; gap:3px; min-width:0; }
body.cors-app .hbanner__copy strong { color:#fcd34d; font:800 9px/1 var(--navis-sans) !important; letter-spacing:.14em; }
body.cors-app .hbanner__copy small { overflow:hidden; color:#dbe7f4; font:650 12px/1.15 var(--navis-sans) !important; white-space:nowrap; text-overflow:ellipsis; }
body.cors-app .hbanner__badge { padding:5px 7px; border-radius:999px; color:#fcd34d; background:rgba(146,64,14,.28); font:800 8px/1 var(--navis-sans) !important; letter-spacing:.08em; }
#navis-cors-reset-view {
  position:fixed;
  z-index:2250;
  top:16px;
  right:174px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:136px;
  min-height:48px;
  padding:0 14px;
  border:1px solid rgba(125,211,252,.24);
  border-radius:14px;
  color:#eaf6ff;
  background:linear-gradient(145deg,rgba(8,27,48,.93),rgba(5,14,29,.92));
  box-shadow:0 12px 30px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.05);
  backdrop-filter:blur(14px);
}
#navis-cors-reset-view span { color:#38bdf8; font:700 22px/1 var(--navis-sans) !important; }
#navis-cors-reset-view b { font:800 10px/1 var(--navis-sans) !important; letter-spacing:.08em; }
#navis-cors-reset-view:hover { border-color:rgba(56,189,248,.5); background:rgba(8,47,73,.9); }

@media (max-width:768px) {
  body.cors-app .hbanner.hbanner--delay {
    top:134px;
    left:12px;
    width:min(274px,calc(100vw - 128px));
    min-width:0;
    min-height:48px;
    padding:8px 10px;
    transform:none;
  }
  body.cors-app .hbanner__badge { display:none; }
  #navis-cors-reset-view {
    top:64px;
    right:10px;
    width:52px;
    min-width:52px;
    height:52px;
    min-height:52px;
    padding:0;
    border-radius:15px;
  }
  #navis-cors-reset-view b { display:none; }
  #navis-cors-reset-view span { font-size:25px !important; }
  body.cors-app .leaflet-control-zoom {
    margin:196px 0 0 10px !important;
    transform:scale(.9);
    transform-origin:top left;
  }
  body.cors-app #back-to-intro {
    top:12px !important;
    left:10px !important;
    min-height:42px;
    padding:0 14px !important;
  }
  body.cors-app #lab-logo-button { display:none !important; }
  body.cors-app .side-stack {
    z-index:2400 !important;
    inset:auto 16px calc(76px + env(safe-area-inset-bottom,0px)) 16px !important;
    display:block !important;
    max-height:none !important;
    overflow:visible !important;
  }
  body.cors-app .panel.cors-console-active {
    width:100% !important;
    height:auto !important;
    max-height:min(68dvh,620px) !important;
    border-radius:19px !important;
    opacity:1;
    transform:translateY(0);
    transition:opacity .2s ease,transform .26s cubic-bezier(.22,1,.36,1) !important;
  }
  body.cors-app .panel.cors-console-active[data-navis-mobile-open="false"] {
    opacity:0;
    transform:translateY(calc(100% + 88px));
    pointer-events:none;
  }
  body.cors-app .panel.cors-console-active > .panel-header { display:none !important; }
  body.cors-app .panel.cors-console-active > .panel-body {
    max-height:min(68dvh,620px) !important;
    padding:14px !important;
    overflow:auto !important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
  body.cors-app .panel.cors-console-active > .panel-body > [data-cors-panel-section] { display:none !important; }
  body.cors-app .panel.cors-console-active[data-cors-section="overview"] > .panel-body > [data-cors-panel-section="overview"],
  body.cors-app .panel.cors-console-active[data-cors-section="layers"] > .panel-body > [data-cors-panel-section="layers"],
  body.cors-app .panel.cors-console-active[data-cors-section="stations"] > .panel-body > [data-cors-panel-section="stations"],
  body.cors-app .panel.cors-console-active[data-cors-section="sources"] > .panel-body > [data-cors-panel-section="sources"] { display:block !important; }
  body.cors-app .panel.cors-console-active #panel-expand,
  body.cors-app .panel.cors-console-active > button { display:none !important; }
  #navis-cors-mobile-status {
    position:fixed;
    z-index:2350;
    top:64px;
    left:12px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:9px;
    width:min(274px,calc(100vw - 128px));
    min-height:62px;
    padding:10px 13px;
    border:1px solid rgba(125,211,252,.24);
    border-radius:17px;
    color:#eaf6ff;
    background:linear-gradient(145deg,rgba(8,27,48,.93),rgba(5,14,29,.91));
    box-shadow:0 12px 34px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.05);
    backdrop-filter:blur(15px) saturate(1.15);
    text-align:left;
  }
  #navis-cors-mobile-status span { display:grid; gap:3px; min-width:0; }
  #navis-cors-mobile-status b { overflow:hidden; font:700 17px/1.05 var(--navis-heading) !important; white-space:nowrap; text-overflow:ellipsis; }
  #navis-cors-mobile-status small { overflow:hidden; color:#8da1ba; font:600 10px/1.2 var(--navis-sans) !important; white-space:nowrap; text-overflow:ellipsis; }
  #navis-cors-mobile-status i { padding:6px 8px; border:1px solid rgba(52,211,153,.32); border-radius:999px; color:#6ee7b7; background:rgba(6,78,59,.48); font:700 9px/1 var(--navis-sans) !important; font-style:normal; }
  #navis-cors-mobile-dock {
    position:fixed;
    z-index:2420;
    left:50%;
    bottom:calc(9px + env(safe-area-inset-bottom,0px));
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:5px;
    width:min(354px,calc(100vw - 20px));
    height:60px;
    padding:6px;
    transform:translateX(-50%);
    border:1px solid rgba(125,211,252,.2);
    border-radius:17px;
    background:linear-gradient(155deg,rgba(8,25,45,.95),rgba(3,11,24,.95));
    box-shadow:0 14px 38px rgba(0,0,0,.46),inset 0 1px rgba(255,255,255,.05);
    backdrop-filter:blur(18px) saturate(1.2);
  }
  #navis-cors-mobile-dock button,#navis-cors-mobile-dock a {
    display:grid;
    place-items:center;
    align-content:center;
    gap:3px;
    min-width:0;
    padding:3px 1px;
    border:1px solid transparent;
    border-radius:11px;
    color:#8395ad;
    background:transparent;
    text-decoration:none;
  }
  #navis-cors-mobile-dock span { font:700 17px/1 var(--navis-sans) !important; }
  #navis-cors-mobile-dock b { font:700 9px/1 var(--navis-sans) !important; }
  #navis-cors-mobile-dock img { width:37px; height:15px; object-fit:contain; }
  #navis-cors-mobile-dock button.is-active { border-color:rgba(56,189,248,.34); color:#dff8ff; background:linear-gradient(160deg,rgba(14,116,144,.5),rgba(8,47,73,.42)); }
}

/* Final CORS cascade contract. Keep after the legacy application rules. */
html body.cors-app .panel.cors-console-active {
  width:min(470px,calc(100vw - 28px)) !important;
  border-color:rgba(71,139,193,.34) !important;
  background:linear-gradient(165deg,rgba(7,17,34,.99),rgba(3,10,23,.99)) !important;
  box-shadow:0 22px 58px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.035) !important;
}
html body.cors-app .panel.cors-console-active > .panel-header {
  padding:24px 26px 21px !important;
  background:linear-gradient(120deg,rgba(9,44,67,.72),rgba(6,19,38,.4)) !important;
}
html body.cors-app .panel.cors-console-active .panel-title { max-width:none; font-size:29px !important; }
html body.cors-app .panel.cors-console-active > .panel-body { padding:0 22px 24px !important; }
html body.cors-app .panel.cors-console-active > .panel-body > .row:not(.row--search) {
  padding:17px !important;
  border-color:rgba(83,129,185,.23) !important;
  border-radius:17px !important;
  background:linear-gradient(145deg,rgba(12,25,46,.74),rgba(5,13,28,.62)) !important;
}
html body.cors-app .panel.cors-console-active .status-board__list {
  max-height:320px;
  padding:5px;
  border-color:rgba(148,163,184,.11);
  background:rgba(2,8,23,.34);
}
@media (max-width:768px) {
  html body.cors-app .panel.cors-console-active { width:100% !important; }
  html body.cors-app .panel.cors-console-active > .panel-body { padding:14px !important; }
}
