/* AIR Dashboard stylesheet — v1.5.2 analytical refinement baseline */
/* Post-audit baseline release; preserve active behaviour and remove stale release-batch residue. */

/* ═══════════════════════════════════════════════════════
   DESIGN SYSTEM — Intelligence Briefing Aesthetic
   ═══════════════════════════════════════════════════════ */
:root {
  /* Light mode (default) */
  --bg-base: #F2FAFD;
  --bg-surface: #ffffff;
  --bg-surface-alt: #F7FCFE;
  --bg-elevated: #ffffff;
  --bg-input: #EEF8FC;
  --text-primary: #1a1a1a;
  --text-secondary: #5a5a5a;
  --text-muted: #8a8a8a;
  --text-inverse: #ffffff;
  --border-default: #CFE8F1;
  --border-strong: #9FCFE0;
  --accent: #007FB5;
  --accent-light: #E5F6FC;
  --accent-text: #003352;
  --danger: #c53030;
  --danger-bg: #fff5f5;
  --warn: #b7791f;
  --warn-bg: #fefcf0;
  --good: #276749;
  --good-bg: #f0fff4;
  --pill-higher: #c53030;
  --pill-higher-bg: #fff5f5;
  --pill-moderate: #b7791f;
  --pill-moderate-bg: #fefcf0;
  --pill-lower: #2c5282;
  --pill-lower-bg: #ebf1fa;
  --pill-nil: #718096;
  --pill-nil-bg: #f7f7f7;
  --pill-unknown: #805ad5;
  --pill-unknown-bg: #f5f0ff;
  --chart-1: #007FB5;
  --chart-2: #c53030;
  --chart-3: #b7791f;
  --chart-4: #276749;
  --chart-5: #805ad5;
  --chart-6: #d69e2e;
  --chart-7: #e53e3e;
  --chart-8: #38a169;
  --chart-9: #667eea;
  --chart-10: #ed8936;
  --shadow-sm: 0 1px 3px rgba(0,0,0,.06);
  --shadow-md: 0 4px 12px rgba(0,0,0,.08);
  --shadow-lg: 0 8px 30px rgba(0,0,0,.1);
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --font-display: Arial, Helvetica, sans-serif;
  --font-body: Arial, Helvetica, sans-serif;
  --header-h: 0px;
  --tabs-h: 0px;
}

[data-theme="dark"] {
  --bg-base: #061823;
  --bg-surface: #0C2231;
  --bg-surface-alt: #102C40;
  --bg-elevated: #12324A;
  --bg-input: #092033;
  --text-primary: #e8e6e3;
  --text-secondary: #a0a0a0;
  --text-muted: #6a6a6a;
  --text-inverse: #0f1117;
  --border-default: #2a2c34;
  --border-strong: #3a3c44;
  --accent: #007FB5;
  --accent-light: #003352;
  --accent-text: #7ED8F6;
  --danger: #fc8181;
  --danger-bg: #2d1515;
  --warn: #ecc94b;
  --warn-bg: #2d2515;
  --good: #68d391;
  --good-bg: #152d1f;
  --pill-higher: #fc8181;
  --pill-higher-bg: #2d1b1b;
  --pill-moderate: #ecc94b;
  --pill-moderate-bg: #2d2815;
  --pill-lower: #6b9bdb;
  --pill-lower-bg: #1a2640;
  --pill-nil: #a0aec0;
  --pill-nil-bg: #252830;
  --pill-unknown: #b794f4;
  --pill-unknown-bg: #211a33;
  --chart-1: #6b9bdb;
  --chart-2: #fc8181;
  --chart-3: #ecc94b;
  --chart-4: #68d391;
  --chart-5: #b794f4;
  --chart-6: #f6e05e;
  --chart-7: #feb2b2;
  --chart-8: #9ae6b4;
  --chart-9: #a3bffa;
  --chart-10: #fbd38d;
  --shadow-sm: 0 1px 3px rgba(0,0,0,.2);
  --shadow-md: 0 4px 12px rgba(0,0,0,.3);
  --shadow-lg: 0 8px 30px rgba(0,0,0,.4);
}

/* ═══ RESET & BASE ═══ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  font-family: var(--font-body);
  background: var(--bg-base);
  color: var(--text-primary);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}

:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
canvas { display: block; }


/* ═══ LAYOUT ═══ */
.site-wrap {
  max-width: 1600px;
  margin: 0 auto;
  padding: 16px 20px 40px;
}

/* ═══ HEADER ═══ */
.site-header {
  background: var(--bg-surface);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-lg);
  padding: 24px 28px;
  box-shadow: var(--shadow-sm);
  position: relative;
}
.header-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}
.header-titles h1 {
  font-family: var(--font-display);
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: var(--text-primary);
}
.header-titles .subtitle {
  font-family: var(--font-display);
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--accent);
  margin-top: 2px;
}
.header-titles .date-range {
  font-size: 0.85rem;
  color: var(--text-secondary);
  margin-top: 6px;
}
.header-cite {
  font-size: 0.82rem;
  color: var(--text-secondary);
  margin-top: 12px;
  line-height: 1.5;
}
.header-cite a { color: var(--accent); text-decoration: none; }
.header-cite a:hover { text-decoration: underline; }
.header-cite em { font-style: italic; }
.header-meta {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 10px;
  font-size: 0.78rem;
  color: var(--text-muted);
}
.theme-toggle {
  background: var(--bg-input);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 6px 12px;
  cursor: pointer;
  font-size: 0.8rem;
  font-family: var(--font-body);
  color: var(--text-secondary);
  white-space: nowrap;
  transition: background .15s, border-color .15s;
  flex-shrink: 0;
}
.theme-toggle:hover { background: var(--accent-light); border-color: var(--accent); }

/* ═══ NAVIGATION TABS ═══ */
.nav-tabs {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin: 16px 0 12px;
  padding: 8px 0;
  position: sticky;
  top: 0;
  z-index: 50;
  background: var(--bg-base);
}
.tab-btn {
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
  color: var(--text-secondary);
  padding: 7px 14px;
  border-radius: var(--radius-sm);
  cursor: pointer;
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 0.82rem;
  transition: all .15s;
  white-space: nowrap;
}
.tab-btn:hover { background: var(--accent-light); color: var(--accent-text); border-color: var(--accent); }
.tab-btn.active {
  background: var(--accent);
  color: var(--text-inverse);
  border-color: var(--accent);
  font-weight: 600;
}
.tab-btn.priority-tab {
  background: color-mix(in srgb, var(--accent) 10%, var(--bg-surface));
  border-color: color-mix(in srgb, var(--accent) 55%, var(--border-default));
  color: var(--accent-text);
  font-weight: 700;
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent);
}
.tab-btn.priority-tab:hover {
  background: color-mix(in srgb, var(--accent) 18%, var(--bg-surface));
  border-color: var(--accent);
}
.tab-btn.priority-tab.active {
  background: var(--accent);
  color: var(--text-inverse);
  border-color: var(--accent);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 28%, transparent);
}

/* ═══ TAB PANELS ═══ */
.tab-panel {
  display: none;
  background: var(--bg-surface);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-lg);
  padding: 24px;
  box-shadow: var(--shadow-sm);
  animation: fadeIn .2s ease-out;
}
.tab-panel.active { display: block; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }

.panel-title {
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 700;
  margin-bottom: 16px;
  color: var(--text-primary);
}

/* ═══ FILTERS / CONTROLS ═══ */
.controls-bar {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(145px, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}
.control-group {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.control-group.search-wide {
  grid-column: span 2;
}
.control-group label {
  font-size: 0.68rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--text-muted);
}
.control-group select,
.control-group input[type="text"] {
  width: 100%;
  border: 1px solid var(--border-default);
  background: var(--bg-input);
  color: var(--text-primary);
  border-radius: var(--radius-sm);
  padding: 6px 8px;
  font-size: 0.8rem;
  font-family: var(--font-body);
  transition: border-color .15s;
  appearance: auto;
}
.control-group select:focus,
.control-group input:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px var(--accent-light);
}

.actions-bar {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 8px 0 14px;
}
.action-btn {
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
  color: var(--text-secondary);
  padding: 6px 14px;
  border-radius: var(--radius-sm);
  cursor: pointer;
  font-size: 0.78rem;
  font-weight: 500;
  font-family: var(--font-body);
  transition: all .15s;
}
.action-btn:hover { background: var(--accent-light); color: var(--accent-text); border-color: var(--accent); }

/* ═══ SUMMARY CARDS ═══ */
.summary-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-bottom: 14px;
}
.stat-card {
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 12px 14px;
  min-width: 0;
  overflow: hidden;
}
.stat-card .stat-label {
  font-size: 0.68rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-muted);
  margin-bottom: 4px;
}
.stat-card .stat-value {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.15;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.stat-card .stat-value-compact {
  font-size: 1rem;
  line-height: 1.25;
}
.stat-card .stat-subtext {
  margin-top: 6px;
  font-size: 0.68rem;
  color: var(--text-secondary);
  line-height: 1.35;
}

/* ═══ MINI YEAR CHART ═══ */
.year-chart-wrap {
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 12px 14px;
  margin-bottom: 14px;
}
.year-chart-wrap .chart-label {
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-muted);
  margin-bottom: 6px;
}
.year-chart-wrap canvas { width: 100% !important; height: 180px !important; }

/* ═══ TABLES ═══ */
.table-container {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  background: var(--bg-surface);
}
.air-data-table {
  width: max(100%, 1480px);
  min-width: 1480px;
  border-collapse: collapse;
  font-size: 0.76rem;
  table-layout: fixed;
}
.air-data-table thead th {
  position: sticky;
  top: 0;
  background: var(--bg-elevated);
  color: var(--text-secondary);
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 10px 8px;
  text-align: left;
  border-bottom: 2px solid var(--border-strong);
  z-index: 2;
  white-space: nowrap;
}
.air-data-table td {
  padding: 8px 8px;
  border-bottom: 1px solid var(--border-default);
  vertical-align: top;
  line-height: 1.35;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.air-data-table tbody tr { transition: background .12s ease; }
.air-data-table tbody tr.dt-main-row:hover { background: var(--accent-light); cursor: pointer; }
.air-data-table tbody tr:last-child td { border-bottom: 0; }

.air-data-table col.col-no,
.air-data-table col.col-k,
.air-data-table col.col-i,
.air-data-table col.col-s1,
.air-data-table col.col-s2,
.air-data-table col.col-ref,
.air-data-table col.col-conv,
.air-data-table col.col-country { width: 52px; }

.air-data-table col.col-date { width: 110px; }
.air-data-table col.col-city,
.air-data-table col.col-type,
.air-data-table col.col-vector,
.air-data-table col.col-ideol,
.air-data-table col.col-tgrp,
.air-data-table col.col-tloc,
.air-data-table col.col-imm,
.air-data-table col.col-rlg { width: 120px; }
.air-data-table col.col-offender { width: 150px; }
.air-data-table col.col-air { width: 88px; }
.air-data-table col.col-notes { width: 340px; }

.air-data-table .col-k,
.air-data-table .col-i,
.air-data-table .col-s1,
.air-data-table .col-s2,
.air-data-table .col-ref,
.air-data-table .col-conv,
.air-data-table .col-country,
.air-data-table .col-no { text-align: center; }

.notes-preview {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.35;
  max-height: 2.7em;
}
.dt-main-row[aria-expanded="true"] { background: var(--accent-light); }
.dt-detail-row td {
  background: var(--bg-surface-alt);
  padding: 0;
  border-bottom: 1px solid var(--border-default);
}
.dt-detail-wrap {
  padding: 12px 14px 14px;
}
.dt-detail-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px 12px;
}
.dt-detail-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.dt-detail-label,
.dt-detail-title {
  font-size: 0.66rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--text-muted);
}
.dt-detail-value,
.dt-detail-copy {
  font-size: 0.78rem;
  color: var(--text-primary);
}
.dt-detail-notes {
  margin-top: 12px;
}
.dt-detail-sources {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 12px;
}
.dt-detail-sources a {
  font-size: 0.76rem;
  font-weight: 600;
}

/* generic tables used outside the main data grid */
table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.78rem;
  table-layout: auto;
}
thead th {
  position: sticky;
  top: 0;
  background: var(--bg-elevated);
  color: var(--text-secondary);
  font-size: 0.7rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 10px 8px;
  text-align: left;
  border-bottom: 2px solid var(--border-strong);
  z-index: 2;
  white-space: nowrap;
}
td {
  padding: 8px 8px;
  border-bottom: 1px solid var(--border-default);
  vertical-align: top;
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* ═══ PILLS ═══ */
.pill {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 99px;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  white-space: nowrap;
}
.pill-higher { color: var(--pill-higher); background: var(--pill-higher-bg); border: 1px solid var(--pill-higher); }
.pill-moderate { color: var(--pill-moderate); background: var(--pill-moderate-bg); border: 1px solid var(--pill-moderate); }
.pill-lower { color: var(--pill-lower); background: var(--pill-lower-bg); border: 1px solid var(--pill-lower); }
.pill-nil { color: var(--pill-nil); background: var(--pill-nil-bg); border: 1px solid var(--pill-nil); }
.pill-unknown { color: var(--pill-unknown); background: var(--pill-unknown-bg); border: 1px solid var(--pill-unknown); }

/* ═══ LINKS ═══ */
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }

/* ═══ OVERVIEW ═══ */
.overview-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-bottom: 16px;
}
.overview-chart-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 14px;
}
.chart-card {
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 16px;
}
.chart-card .chart-title {
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-muted);
  margin-bottom: 10px;
}
.chart-card canvas { width: 100% !important; height: 300px !important; }
.chart-card.mini canvas { height: 100px !important; }
.filtered-chart-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 14px;
}

/* ═══ OVERVIEW NOTE ═══ */
.overview-note {
  color: var(--text-secondary);
  font-size: 0.85rem;
  margin-bottom: 16px;
  line-height: 1.5;
}

/* ═══ CONTENT PANELS (Methodology, Glossary, References) ═══ */
.content-panel {
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 24px;
  line-height: 1.65;
}
.content-panel h2 { font-family: var(--font-display); font-size: 1.2rem; font-weight: 700; margin-bottom: 14px; }
.content-panel h3 { font-family: var(--font-display); font-size: 1rem; font-weight: 600; color: var(--accent); margin: 20px 0 8px; }
.content-panel p { margin-bottom: 12px; font-size: 0.88rem; }
.content-panel .lead {
  font-size: 0.94rem;
  line-height: 1.72;
  color: var(--text-primary);
}
.figure-grid {
  display: grid;
  gap: 16px;
  margin: 18px 0 20px;
}
.figure-grid--two {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}
.content-figure {
  margin: 18px 0 20px;
  padding: 14px;
  background: var(--bg-elevated);
  border: 1px solid var(--border);
  border-radius: 16px;
  box-shadow: var(--shadow-sm);
}
.content-figure img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
  background: #fff;
}
.content-figure--single {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
.figure-caption {
  margin: 10px 0 0;
  font-size: 0.8rem;
  line-height: 1.5;
  color: var(--text-muted);
}


/* Glossary table */
.glossary-table { width: 100%; border-collapse: collapse; font-size: 0.85rem; table-layout: auto; }
.glossary-table th, .glossary-table td { border-bottom: 1px solid var(--border-default); padding: 10px 10px; text-align: left; vertical-align: top; }
.glossary-table th { font-size: 0.7rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted); background: var(--bg-elevated); }
.glossary-table td:first-child { white-space: nowrap; width: 1%; padding-right: 20px; }

/* References */
.refs-search {
  width: 100%;
  border: 1px solid var(--border-default);
  background: var(--bg-input);
  color: var(--text-primary);
  border-radius: var(--radius-sm);
  padding: 10px 12px;
  margin: 0 0 14px;
  font-size: 0.85rem;
  font-family: var(--font-body);
}
.refs-search:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 2px var(--accent-light); }
.refs-list { display: grid; gap: 8px; }
.ref-item {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 12px 14px;
  font-size: 0.84rem;
  line-height: 1.5;
}

/* ═══ FOOTER ═══ */
.footer-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.admin-link-footer{color:var(--text-muted);font-size:inherit;text-decoration:none}
.admin-link-footer:hover{color:var(--text-secondary);text-decoration:none}
.panel-footer {
  margin-top: 20px;
  text-align: center;
  color: var(--text-muted);
  font-size: 0.82rem;
  padding-top: 12px;
  border-top: 1px solid var(--border-default);
}

/* ═══ COLLAPSIBLE SECTIONS ═══ */
.collapse-section { margin-bottom: 12px; }
.collapse-toggle {
  display: flex;
  align-items: center;
  gap: 6px;
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 8px 14px;
  cursor: pointer;
  font-family: var(--font-body);
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--text-secondary);
  width: 100%;
  text-align: left;
  transition: all .15s;
}
.collapse-toggle:hover { background: var(--accent-light); color: var(--accent-text); }
.collapse-toggle .arrow { transition: transform .2s; font-size: 0.65rem; }
  .toggle-state { display:none !important; }
  .admin-fab{position:fixed;left:12px;bottom:10px;z-index:80;font-size:0.75rem;color:var(--text-muted);text-decoration:none;background:var(--bg-surface);border:1px solid var(--border-default);padding:6px 10px;border-radius:999px;box-shadow:var(--shadow-sm)}
  .admin-fab:hover{color:var(--accent-text);background:var(--accent-light);text-decoration:none}

.context-table-wrap{overflow-x:auto}
.context-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:12px}
.context-chart-card{background:var(--bg-surface-alt);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:14px}
.context-chart-card canvas{width:100%!important;height:240px!important}
.context-table{width:100%;border-collapse:collapse;table-layout:auto;font-size:.82rem}
.context-table.compact th,.context-table.compact td{font-size:0.76rem;padding:8px 9px;white-space:nowrap}
.context-table th,.context-table td{padding:8px 10px;border-bottom:1px solid var(--border-default);text-align:left;vertical-align:top;white-space:nowrap}
.context-table th:last-child,.context-table td:last-child{white-space:normal}
@media (max-width:900px){.context-chart-grid{grid-template-columns:1fr}}

.collapse-toggle.open .arrow { transform: rotate(90deg); }
.collapse-body { overflow: hidden; }
.collapse-body.hidden { display: none; }


/* ═══ ENHANCED ANALYTICS / UX ═══ */
.filter-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 14px;
}
.filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  border-radius: 999px;
  background: var(--accent-light);
  border: 1px solid color-mix(in srgb, var(--accent) 35%, var(--border-default));
  color: var(--accent-text);
  font-size: 0.74rem;
  font-weight: 600;
}
.filter-chip.empty {
  background: var(--bg-surface-alt);
  border-color: var(--border-default);
  color: var(--text-muted);
}
.summary-text,
.compare-note {
  color: var(--text-secondary);
  font-size: 0.82rem;
  line-height: 1.55;
  margin: 0 0 12px;
}
.summary-grid-6 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  margin-bottom: 14px;
}
.overview-tools,
.compare-grid {
  display: grid;
  gap: 14px;
  margin: 14px 0 16px;
}
.overview-tools { grid-template-columns: 1.1fr .9fr; }
.executive-brief,
.compare-card {
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 16px;
}
.executive-brief h3,
.compare-card h3 {
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.executive-brief ul {
  margin-left: 18px;
  color: var(--text-secondary);
  font-size: 0.84rem;
  line-height: 1.55;
}
.executive-brief li { margin-bottom: 6px; }
.compare-grid { grid-template-columns: repeat(2, 1fr); }
.compare-metrics {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin-top: 12px;
}
.compare-metric {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 10px 12px;
}
.compare-metric .k {
  display:block;
  font-size:0.68rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:var(--text-muted);
  margin-bottom:4px;
}
.compare-metric .v {
  font-size:0.96rem;
  font-weight:700;
  color:var(--text-primary);
}
.muted-inline {
  color: var(--text-muted);
  font-size: 0.76rem;
}

/* ═══ RESPONSIVE ═══ */
@media (max-width: 1200px) {
  .overview-stats { grid-template-columns: repeat(3, 1fr); }
  .summary-grid-6 { grid-template-columns: repeat(3, 1fr); }
  .overview-tools, .compare-grid { grid-template-columns: 1fr; }
  .overview-chart-grid { grid-template-columns: 1fr; }
  .filtered-chart-grid { grid-template-columns: 1fr; }
  .controls-bar { grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); }
}
@media (max-width: 900px) {
  .site-wrap { padding: 10px 12px 30px; }
  .summary-grid-6 { grid-template-columns: repeat(2, 1fr); }
  .site-header { padding: 18px 20px; }
  .header-titles h1 { font-size: 1.35rem; }
  .header-titles .subtitle { font-size: 1rem; }
  .header-top { flex-direction: column; }
  .overview-stats { grid-template-columns: repeat(2, 1fr); }
  .summary-row { grid-template-columns: repeat(2, 1fr); }
  .controls-bar { grid-template-columns: repeat(2, 1fr); }
  .control-group.search-wide { grid-column: 1 / -1; }
  .nav-tabs { position: static; }
  .tab-panel { padding: 16px; }
  .chart-card canvas { height: 240px !important; }
}
@media (max-width: 640px) {
  .site-wrap { padding: 6px; }
  .summary-grid-6, .compare-metrics { grid-template-columns: 1fr 1fr; }
  .filter-chip-row { gap: 6px; }
  .site-header { padding: 14px 16px; border-radius: var(--radius-md); }
  .header-titles h1 { font-size: 1.1rem; }
  .header-titles .subtitle { font-size: 0.88rem; }
  .header-cite { font-size: 0.72rem; }
  .header-meta { font-size: 0.7rem; }

  /* Horizontal scrolling tabs instead of wrapping */
  .nav-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding: 8px 0;
    gap: 6px;
  }
  .nav-tabs::-webkit-scrollbar { display: none; }
  .tab-btn {
    font-size: 0.73rem;
    padding: 8px 14px;
    flex-shrink: 0;
    min-height: 38px;
  }

  .tab-panel { padding: 10px; border-radius: var(--radius-md); }
  .panel-title { font-size: 1.15rem; }

  /* Stats */
  .overview-stats { grid-template-columns: 1fr 1fr; gap: 6px; }
  .summary-row { grid-template-columns: 1fr 1fr; gap: 6px; }
  .stat-card { padding: 10px 12px; }
  .stat-card .stat-value { font-size: 1.3rem; }

  /* Filters - larger touch targets */
  .controls-bar { grid-template-columns: 1fr; gap: 6px; }
  .control-group.search-wide { grid-column: 1; }
  .control-group select,
  .control-group input[type="text"] {
    padding: 10px 10px;
    font-size: 0.88rem;
    min-height: 42px;
    border-radius: var(--radius-md);
  }
  .control-group label { font-size: 0.7rem; margin-bottom: 3px; }

  /* Larger touch targets for buttons */
  .action-btn {
    padding: 10px 16px;
    font-size: 0.82rem;
    min-height: 42px;
  }
  .collapse-toggle {
    padding: 12px 14px;
    font-size: 0.85rem;
    min-height: 44px;
  }

  /* Charts */
  .overview-chart-grid { gap: 10px; }
  .filtered-chart-grid { grid-template-columns: 1fr; gap: 10px; }

  .chart-card { padding: 12px; }
  .chart-card canvas { height: 200px !important; }
  .year-chart-wrap canvas { height: 140px !important; }

  /* Responsive data table handling */
  .air-data-table .priority-desktop { display: none; }
  .air-data-table .col-notes { min-width: 220px; }

  /* Content panels (glossary, methodology, about) */

  .content-panel { padding: 16px; font-size: 0.86rem; }
  .content-panel h2 { font-size: 1.1rem; }
  .content-panel h3 { font-size: 0.95rem; }
  .content-panel p { font-size: 0.84rem; }
  .content-panel .lead { font-size: 0.88rem; }
  .content-figure { padding: 12px; }
  .figure-grid { gap: 12px; }


  /* Glossary table mobile card view */
  .glossary-table, .glossary-table thead, .glossary-table tbody,
  .glossary-table th, .glossary-table td, .glossary-table tr { display: block; }
  .glossary-table thead { display: none; }
  .glossary-table tr {
    border: 1px solid var(--border-default);
    border-radius: var(--radius-md);
    margin-bottom: 10px;
    background: var(--bg-elevated);
    padding: 0;
  }
  .glossary-table td:first-child {
    white-space: normal;
    width: auto;
    padding: 10px 12px 4px;
    border-bottom: 0;
    font-size: 0.88rem;
  }
  .glossary-table td:last-child {
    padding: 4px 12px 12px;
    font-size: 0.82rem;
  }

  /* References */
  .refs-search { font-size: 0.88rem; padding: 10px 12px; min-height: 42px; }
  .ref-item { padding: 10px 12px; font-size: 0.8rem; }

  /* AIR diagram smaller on mobile */
  .content-panel div[style*="max-width:380px"] { max-width: 280px !important; }

  /* Research notice banner */
  .site-header div[style*="warn-bg"] { font-size: 0.74rem; padding: 6px 10px; }
}



@media (max-width: 1100px) and (min-width: 641px) {
  .air-data-table { min-width: 1120px; width: max(100%, 1120px); }
  .air-data-table .priority-desktop { display: none; }
}
@media (max-width: 640px) {
  .table-container { border: 0; overflow: visible; }
  .air-data-table { min-width: 100%; table-layout: auto; }
  .air-data-table colgroup,
  .air-data-table thead { display: none; }
  .air-data-table tbody,
  .air-data-table tr,
  .air-data-table td { display: block; width: 100%; }
  .air-data-table tbody tr.dt-main-row,
  .air-data-table tbody tr.dt-detail-row {
    border: 1px solid var(--border-default);
    border-radius: var(--radius-md);
    margin-bottom: 10px;
    background: var(--bg-surface-alt);
    overflow: hidden;
  }
  .air-data-table tbody tr.dt-main-row td {
    display: grid;
    grid-template-columns: 34% 1fr;
    gap: 8px;
    padding: 8px 12px;
    border-bottom: 1px solid var(--border-default);
    text-align: left;
  }
  .air-data-table tbody tr.dt-main-row td::before {
    content: attr(data-label);
    font-size: 0.66rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted);
  }
  .air-data-table tbody tr.dt-main-row td.priority-tablet,
  .air-data-table tbody tr.dt-main-row td.priority-desktop { display: none; }
  .air-data-table tbody tr.dt-main-row td.col-notes { border-bottom: 0; }
  .air-data-table tbody tr.dt-detail-row td {
    display: block;
    padding: 0;
    border-bottom: 0;
  }
  .dt-detail-wrap { padding: 12px; }
  .dt-detail-grid { grid-template-columns: 1fr; }
}

/* ═══ PRINT ═══ */
@media print {
  body { background: white; color: black; }
  .nav-tabs, .theme-toggle, .actions-bar, .collapse-toggle { display: none; }
  .tab-panel { display: block !important; break-inside: avoid; border: 1px solid #ccc; margin-bottom: 20px; box-shadow: none; }
  .chart-card { break-inside: avoid; }
}

/* layout safety */
.overview-chart-grid { align-items: stretch; }
@media (max-width: 767px) {
  .overview-chart-grid { grid-template-columns: 1fr !important; }
  .overview-chart-grid > .chart-card { grid-column: span 1 !important; }
}
@media (min-width: 768px) {
  .overview-chart-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}


/* chart stability tweaks */
.chart-card canvas { width: 100% !important; min-height: 280px; }
.overview-chart-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:16px; }
@media (max-width: 900px) { .overview-chart-grid { grid-template-columns: 1fr; } .chart-card[style*="grid-column: span 2"] { grid-column:auto !important; } }


/* release markers and tab architecture */
.site-version-marker {
  display: inline-flex;
  align-items: center;
  margin-top: 10px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--accent-text);
  background: var(--accent-light);
  border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border-default));
  border-radius: 999px;
  padding: 4px 10px;
}
.site-notice {
  margin-top: 10px;
  padding: 8px 14px;
  background: var(--warn-bg);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  font-size: 0.8rem;
  color: var(--text-secondary);
  line-height: 1.5;
}
.site-notice strong { color: var(--warn); }

.dataset-switcher {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.dataset-tab {
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
  color: var(--text-secondary);
  padding: 8px 14px;
  border-radius: var(--radius-sm);
  cursor: pointer;
  font-family: var(--font-body);
  font-size: 0.8rem;
  font-weight: 600;
  transition: all .15s;
}
.dataset-tab:hover {
  background: var(--accent-light);
  color: var(--accent-text);
  border-color: var(--accent);
}
.dataset-tab.active {
  background: var(--accent);
  color: var(--text-inverse);
  border-color: var(--accent);
}
.context-note {
  color: var(--text-secondary);
  font-size: 0.82rem;
  line-height: 1.55;
  margin-top: 10px;
}

@media (max-width: 900px) {
  .site-version-marker { margin-top: 12px; }
}
@media (max-width: 640px) {
  .dataset-switcher { flex-direction: column; }
  .dataset-tab { width: 100%; min-height: 42px; }
}


#tab-air-explorer .chart-card canvas,
#tab-air-explorer .year-chart-wrap canvas {
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
}
#tab-air-explorer .chart-card,
#tab-air-explorer .year-chart-wrap {
  overflow: hidden;
}


.overview-stats-compact {
  grid-template-columns: repeat(9, minmax(0,1fr));
}
.chart-card-wide { grid-column: span 2; }
.chart-card-tall { min-height: 460px; }
.chart-header-row {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:10px;
}
.chart-header-row-wrap { flex-wrap:wrap; }
.chart-control-row { display:flex; gap:10px; flex-wrap:wrap; }
.chart-inline-control {
  min-width: 180px;
  max-width: 220px;
}
.chart-inline-control label {
  font-size:0.68rem;
}
.chart-note {
  margin-top:10px;
  font-size:0.76rem;
  line-height:1.5;
  color:var(--text-secondary);
}

.toggle-pill-row {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.toggle-pill {
  display:inline-flex;
  align-items:center;
  gap:0;
}
.toggle-pill input {
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.toggle-pill span {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border:1px solid var(--border-default);
  border-radius:999px;
  background:var(--bg-subtle);
  color:var(--text-secondary);
  font-size:0.76rem;
  line-height:1.2;
  cursor:pointer;
  transition:all .15s ease;
}
.toggle-pill input:checked + span {
  background:var(--accent-light);
  color:var(--accent-strong);
  border-color:var(--accent);
}
.control-group-wide {
  grid-column: span 2;
}

.flag-head {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  line-height:1.1;
  gap:3px;
  min-width:40px;
}
.flag-head-rect {
  display:block;
  width:22px;
  height:14px;
  border-radius:2px;
  border:1px solid rgba(0,0,0,.12);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.16);
}
.flag-au { background:#012169; }
.flag-ca { background:linear-gradient(90deg,#d52b1e 0 26%, #fff 26% 74%, #d52b1e 74% 100%); }
.flag-nz { background:#00247d; }
.flag-uk { background:#012169; }
.flag-us { background:repeating-linear-gradient(180deg,#b22234 0 9%, #fff 9% 18%); }
.flag-5e { background:linear-gradient(135deg,#2b6cb0,#4a5568); }
.flag-head-code {
  font-size:0.66rem;
  font-weight:700;
  letter-spacing:0.05em;
  color:var(--text-secondary);
}
.flag-head-cell {
  text-align:center !important;
}
.religion-center { text-align:center !important; }
.table-subhead {
  display:block;
  margin-top:2px;
  font-size:0.62rem;
  font-weight:600;
  color:var(--text-muted);
  line-height:1.2;
}
.context-empty-state {
  margin-top:10px;
  padding:10px 12px;
  border:1px dashed var(--border-default);
  border-radius:var(--radius-sm);
  background:var(--bg-surface-alt);
  color:var(--text-secondary);
  font-size:0.78rem;
  line-height:1.45;
}
.context-empty-state[hidden] { display:none !important; }
.religion-compare-table th:first-child,
.religion-compare-table td:first-child {
  position:sticky;
  left:0;
  background:var(--bg-surface);
  z-index:1;
}
.religion-compare-table thead th:first-child {
  z-index:2;
}
.religion-compare-table td:not(:first-child),
.religion-compare-table th:not(:first-child) {
  text-align:center;
}

.religion-compare-wrap {
  overflow-x:auto;
}
.religion-compare-wrap table {
  min-width: 980px;
}
.metric-toggle-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px 12px;
  margin-bottom:10px;
}
.metric-toggle-grid label {
  display:flex;
  align-items:center;
  gap:6px;
  font-size:0.76rem;
  color:var(--text-secondary);
}
.metric-toggle-grid input { accent-color: var(--accent); }
@media (max-width: 1400px) {
  .overview-stats-compact { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 900px) {
  .overview-stats-compact { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .metric-toggle-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .control-group-wide { grid-column: span 1; }
}
@media (max-width: 640px) {
  .overview-stats-compact { grid-template-columns: 1fr 1fr; }
  .chart-header-row { flex-direction:column; }
  .chart-inline-control { min-width:100%; max-width:100%; }
  .metric-toggle-grid { grid-template-columns: 1fr; }
  .chart-note { font-size:0.74rem; }
  .toggle-pill-row { gap:6px; }
  .toggle-pill span { width:100%; }
  #tab-air-explorer .chart-card canvas { min-height: 240px; }
  #tab-air-explorer .chart-card-tall { min-height: 520px; }
  #tab-air-explorer #ov_timeline { height: 260px !important; min-height: 260px; }
  .flag-head-emoji { font-size: 0.92rem; }
  .flag-head-code { font-size: 0.6rem; }
  .religion-compare-wrap table { min-width: 920px; }
}
@media (max-width: 430px) {
  #tab-air-explorer .chart-card-tall { min-height: 620px; }
  .religion-compare-wrap table { min-width: 900px; }
}


/* ═══ ADMIN SURFACES ═══ */
.site{max-width:1480px;margin:0 auto;padding:16px 20px 40px;background:var(--bg-base);color:var(--text-primary);font-family:var(--font-body)}
.card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.section{padding:20px}
.header.card{padding:24px 28px}
.header .meta,.lead{color:var(--text-secondary)}
.grid{display:grid;gap:16px}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.kpi .label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:6px}
.kpi .value{font-size:1.35rem;font-weight:700}
.admin-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:16px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.form-grid .full{grid-column:1/-1}
.form-grid label,.section label{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:4px}
.form-grid input,.form-grid select,.form-grid textarea,.table-tools input,.section select{width:100%;border:1px solid var(--border-default);background:var(--bg-input);color:var(--text-primary);border-radius:var(--radius-sm);padding:8px 10px;font-size:.85rem;font-family:var(--font-body)}
.form-grid textarea{min-height:110px;resize:vertical}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-secondary);border-radius:var(--radius-sm);text-decoration:none;cursor:pointer;font-size:.82rem;font-weight:600}
.btn:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent-text);text-decoration:none}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--text-inverse)}
.btn.primary:hover{filter:brightness(.98)}
.msg{margin:16px auto 0;max-width:1480px;padding:12px 16px;border-radius:var(--radius-md);border:1px solid var(--border-default)}
.msg.ok{background:var(--good-bg);color:var(--good);border-color:var(--good)}
.msg.err{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}
.table-wrap{overflow:auto;border:1px solid var(--border-default);border-radius:var(--radius-md)}
.data-table{width:100%;border-collapse:collapse;font-size:.8rem}
.data-table th,.data-table td{padding:10px 8px;border-bottom:1px solid var(--border-default);vertical-align:top}
.data-table th{background:var(--bg-elevated);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);position:sticky;top:0;z-index:1}
.table-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}
.table-tools .spacer{flex:1 1 auto}
.list{display:grid;gap:8px}
.list-item.small{font-size:.78rem;color:var(--text-secondary);background:var(--bg-surface-alt);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:8px 10px}
@media (max-width:1100px){.admin-layout,.grid.two,.grid.four{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}}


.overview-explorer-controls {
  grid-template-columns: minmax(140px, 180px) minmax(160px, 220px) minmax(320px, 1fr);
  align-items: end;
}
.overview-explorer-controls .control-group-wide {
  grid-column: span 1;
}
.religion-compare-table thead th {
  text-align: center;
  vertical-align: bottom;
}
.religion-compare-table th:last-child,
.religion-compare-table th:nth-last-child(2),
.religion-compare-table td:last-child,
.religion-compare-table td:nth-last-child(2) {
  white-space: nowrap;
}
#tab-air-explorer .chart-card-tall {
  min-height: 500px;
}
@media (max-width: 980px) {
  .overview-explorer-controls {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
  .overview-explorer-controls .control-group-wide {
    grid-column: span 2;
  }
}
@media (max-width: 640px) {
  .overview-explorer-controls {
    grid-template-columns: 1fr;
  }
  .overview-explorer-controls .control-group-wide {
    grid-column: span 1;
  }
  #tab-air-explorer #ov_context_cluster_main {
    height: 500px !important;
    min-height: 500px;
  }
}
@media (max-width: 430px) {
  #tab-air-explorer #ov_context_cluster_main {
    height: 560px !important;
    min-height: 560px;
  }
}


.indexed-compare-controls {
  display:grid;
  grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr);
  gap:12px 16px;
  margin-bottom:10px;
}
.indexed-compare-controls .control-block {
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 10px 12px;
}
.control-block-title {
  font-size: 0.74rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--text-muted);
  margin-bottom: 8px;
}
.indexed-metric-grid {
  grid-template-columns: repeat(4,minmax(0,1fr));
  margin-bottom:0;
}
.indexed-case-pill-row {
  gap: 8px;
  flex-wrap: wrap;
}
.chart-inline-status {
  min-height: 1.1rem;
  margin: 2px 0 10px;
  font-size: 0.74rem;
  color: var(--text-muted);
}
#tab-air-explorer #ov_indexed_context_case {
  height: 340px !important;
  min-height: 340px;
}
@media (max-width: 1100px) {
  .indexed-compare-controls {
    grid-template-columns: 1fr;
  }
  .indexed-metric-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 640px) {
  .indexed-metric-grid {
    grid-template-columns: 1fr;
  }
  #tab-air-explorer #ov_indexed_context_case {
    height: 460px !important;
    min-height: 460px;
  }
}
@media (max-width: 430px) {
  #tab-air-explorer #ov_indexed_context_case {
    height: 520px !important;
    min-height: 520px;
  }
}


.compare-page-panel .compare-intro { color: var(--text-secondary); max-width: 1100px; }
.compare-scoreboard-grid { grid-template-columns: repeat(7, minmax(0,1fr)); margin-bottom: 14px; }
.compare-stat-card { min-height: 96px; }
.compare-workflow-controls { display:grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap:12px; align-items:end; }
.compare-chart-grid .chart-card canvas { min-height: 320px; }
.rank-list { display:grid; gap:4px; }
.rank-item { display:flex; justify-content:space-between; gap:10px; font-size:0.78rem; }
.rank-label { color: var(--text-secondary); }
.rank-value { font-weight:700; }
#FiveEyes_Compared .chart-card-tall { min-height: 500px; }
@media (max-width: 1280px) { .compare-scoreboard-grid { grid-template-columns: repeat(4, minmax(0,1fr)); } }
@media (max-width: 980px) { .compare-workflow-controls { grid-template-columns: repeat(2, minmax(0,1fr)); } .compare-scoreboard-grid { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 640px) { .compare-workflow-controls { grid-template-columns: 1fr; } .compare-scoreboard-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } #FiveEyes_Compared .chart-card canvas { min-height: 260px; } }
@media (max-width: 430px) { .compare-scoreboard-grid { grid-template-columns: 1fr; } #FiveEyes_Compared .chart-card-tall { min-height: 560px; } }

.flag-au::after { content:"★"; color:#fff; font-size:7px; position:relative; left:12px; top:-12px; }
.flag-nz::after { content:"★"; color:#d52b1e; font-size:7px; position:relative; left:12px; top:-12px; }
.flag-uk::after { content:"✚"; color:#c8102e; font-size:8px; position:relative; left:6px; top:-13px; }
.flag-us::after { content:""; position:relative; display:block; width:9px; height:7px; background:#3c3b6e; top:-14px; }


.flag-head-emoji { font-size: 1rem; line-height: 1; }
.cluster-scoreboard-grid {
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
  gap:12px;
  margin-top:12px;
}
.cluster-scoreboard-grid .stat-card { min-height: 106px; }
.cluster-scoreboard-grid .stat-card.stat-card-wide { grid-column: span 2; }
.cluster-scoreboard-grid .stat-value-small { font-size:0.9rem; line-height:1.45; white-space:normal; overflow-wrap:anywhere; }
.cluster-fixed-range {
  min-height: 42px;
  display:flex;
  align-items:center;
  padding:10px 12px;
  border:1px solid var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--bg-surface-alt);
  font-weight:600;
  color: var(--text-primary);
}
.cluster-mini-grid {
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:12px;
  margin-top:12px;
}
.mini-card {
  background: var(--bg-surface-alt);
  border:1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding:10px 12px;
  min-height: 220px;
}
.mini-card-title {
  font-size: 0.74rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color: var(--text-muted);
  margin-bottom:8px;
}
.context-cluster-controls { margin-bottom: 12px; }
.chart-card-context-cluster { min-height: 880px; }
#tab-air-explorer #ov_context_cluster_main { height: 380px !important; min-height: 380px; max-height: 380px; }
#tab-air-explorer #ov_context_cluster_targets, #tab-air-explorer #ov_context_cluster_air { height: 180px !important; min-height: 180px; }
@media (max-width: 1100px) {
  .cluster-scoreboard-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .cluster-scoreboard-grid .stat-card.stat-card-wide { grid-column: span 2; }
}
@media (max-width: 640px) {
  .cluster-scoreboard-grid, .cluster-mini-grid { grid-template-columns: 1fr; }
  .cluster-scoreboard-grid .stat-card.stat-card-wide { grid-column: span 1; }
  .chart-card-context-cluster { min-height: 1160px; }
  #tab-air-explorer #ov_context_cluster_main { height: 480px !important; min-height: 480px; max-height: 480px; }
}
@media (max-width: 430px) {
  .chart-card-context-cluster { min-height: 1240px; }
  #tab-air-explorer #ov_context_cluster_main { height: 520px !important; min-height: 520px; max-height: 520px; }
}


.chart-title-actions {
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:8px;
}
.action-btn-quiet {
  background: var(--bg-surface-alt);
  color: var(--text-secondary);
}
.chart-export-btn {
  padding: 7px 10px;
  font-size: 0.72rem;
}
.mini-card-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.cluster-scoreboard-grid .stat-card.stat-card-ranked {
  min-height: 148px;
}
.summary-rank-list {
  display:grid;
  gap:8px;
  margin-top:6px;
}
.summary-rank-row {
  display:grid;
  grid-template-columns: 28px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
}
.summary-rank-pill {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border-radius:999px;
  background: var(--accent-light);
  color: var(--accent-strong);
  font-size:0.72rem;
  font-weight:700;
}
.summary-rank-label {
  color: var(--text-secondary);
  font-size:0.82rem;
  line-height:1.3;
}
.summary-rank-value {
  font-size:0.8rem;
  font-weight:700;
  color: var(--text-primary);
  white-space:nowrap;
}
@media (max-width: 640px) {
  .chart-title-actions { width:100%; justify-content:flex-start; }
}

#tab-air-explorer #ov_context_cluster_main { image-rendering: auto; }


.chart-card-context-cluster .chart-control-row {
  align-items: end;
}
.chart-card-context-cluster .chart-inline-control select {
  min-width: 172px;
}
#tab-air-explorer #ov_context_cluster_main {
  width: 100% !important;
  max-width: 100%;
}
#tab-air-explorer #ov_context_cluster_targets,
#tab-air-explorer #ov_context_cluster_air {
  width: 100% !important;
}
#tab-air-explorer .chart-card-context-cluster canvas {
  display: block;
}
#tab-air-explorer .chart-card-context-cluster .metric-toggle-grid label {
  min-height: 36px;
}
#tab-air-explorer .chart-card-context-cluster .chart-inline-status {
  line-height: 1.45;
}
@media (max-width: 900px) {
  .chart-card-context-cluster .chart-inline-control select {
    min-width: 150px;
  }
}


.compare-page-blue {
  background: linear-gradient(180deg, rgba(225,239,252,.55) 0%, rgba(225,239,252,.28) 38%, rgba(255,255,255,0) 100%);
  border-radius: 22px;
}
.compare-top-grid { display:grid; gap:14px; }
.compare-dual-controls { grid-template-columns: repeat(3, minmax(0,1fr)); }
.compare-dual-columns { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:14px; }
.compare-column {
  background: rgba(255,255,255,.52);
  border: 1px solid rgba(80,132,188,.14);
  border-radius: 18px;
  padding: 12px;
  backdrop-filter: blur(1px);
}
:root[data-theme='dark'] .compare-column,
html[data-theme='dark'] .compare-column {
  background: rgba(22,28,38,.72);
  border-color: rgba(153,184,220,.14);
}
.compare-column-header {
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--text-secondary);
  margin-bottom: 10px;
  font-weight: 700;
}
.compare-side-controls { grid-template-columns: repeat(5, minmax(0,1fr)); }
.compare-scoreboard-primary { grid-template-columns: repeat(2, minmax(0,1fr)); gap:10px; }
.compare-scoreboard-side { grid-template-columns: repeat(2, minmax(0,1fr)); gap:10px; }
.compare-stat-card-compact { min-height: 84px; }
.compare-summary-columns .compare-column { padding-bottom: 14px; }
.compare-explorer-card canvas { min-height: 390px; }
.compare-linked-grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:12px; margin-top:14px; }
.compare-linked-grid-compact { grid-template-columns: repeat(2, minmax(0,1fr)); }
.compare-linked-grid-secondary { margin-top: 10px; }
.compare-linked-card {
  border: 1px solid var(--border-soft);
  background: var(--surface-elevated);
  border-radius: 16px;
  padding: 12px 14px;
  min-height: 96px;
}
.compare-linked-label { font-size: .8rem; font-weight: 700; color: var(--text-secondary); margin-bottom: 8px; }
.compare-linked-values { display:flex; justify-content:space-between; gap:8px; font-weight: 700; }
.compare-linked-note { margin-top:8px; font-size:.8rem; color: var(--text-muted); line-height:1.35; }
.compare-chart-grid-refined { grid-template-columns: 1fr 1.4fr; align-items:start; }
.compare-chart-grid-refined .chart-card canvas { min-height: 300px; }
.compare-chart-grid-refined .chart-card-tall canvas { min-height: 360px; }
.compare-mini-grid { margin-top: 14px; grid-template-columns: repeat(4, minmax(0,1fr)); }
.compare-mini-card canvas { min-height: 230px; }
.compare-mini-card { min-height: 312px; }
.compare-context-card canvas { min-height: 345px; }
.compare-context-controls { grid-template-columns: repeat(7, minmax(0,1fr)); margin-bottom: 12px; }
.compare-context-linked-grid { margin-top: 14px; }
.compare-context-summary-note { margin: 10px 0 12px; color: var(--text-secondary); font-size: 0.83rem; line-height: 1.45; }
@media (max-width: 1280px) {
  .compare-side-controls { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .compare-scoreboard-side, .compare-scoreboard-primary { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .compare-context-controls { grid-template-columns: repeat(4, minmax(0,1fr)); }
  .compare-mini-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 980px) {
  .compare-dual-controls, .compare-dual-columns, .compare-side-controls, .compare-linked-grid, .compare-chart-grid-refined { grid-template-columns: 1fr; }
  .compare-scoreboard-side, .compare-scoreboard-primary { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .compare-context-controls { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 640px) {
  .compare-scoreboard-side,
  .compare-scoreboard-primary,
  .compare-context-controls,
  .compare-mini-grid { grid-template-columns: 1fr; }
  #FiveEyes_Compared .chart-card canvas { min-height: 260px; }
  .compare-explorer-card canvas { min-height: 320px; }
  .compare-context-card canvas { min-height: 300px; }
}


/* ═══════════════════════════════════════════════════════
   VERSION 2.5.0 ADDITIONS
   ═══════════════════════════════════════════════════════ */

/* ── Phase stub placeholder (Phases 2–5) ── */
.phase-stub {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 280px;
  padding: 40px 24px;
  text-align: center;
  color: var(--text-secondary);
}
.phase-stub-icon {
  font-size: 2rem;
  margin-bottom: 14px;
  opacity: 0.5;
}
.phase-stub-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.phase-stub-note {
  font-size: 0.82rem;
  color: var(--text-muted);
  max-width: 380px;
  line-height: 1.55;
}

/* ── Chart error placeholder ── */
.chart-error-state {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 120px;
  padding: 16px;
  margin-top: 8px;
  background: var(--danger-bg);
  border: 1px dashed var(--danger);
  border-radius: var(--radius-sm);
  color: var(--danger);
  font-size: 0.78rem;
  text-align: center;
}

/* ── Scoreboard grid responsive ── */
.scoreboard-grid {
  display: grid;
  grid-template-columns: repeat(9, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 20px;
}
@media (max-width: 1400px) {
  .scoreboard-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .scoreboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .scoreboard-grid { grid-template-columns: 1fr 1fr; }
}

/* ── Module chart grid (2-col default) ── */
.module-chart-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 16px;
}
@media (max-width: 900px) {
  .module-chart-grid { grid-template-columns: 1fr; }
}

/* AIR Explorer refinement — stacked module layout */
.module-chart-grid.module-chart-stack {
  grid-template-columns: 1fr;
}

/* ── Wide chart card spans full grid ── */
.chart-card-wide { grid-column: 1 / -1; }

/* ── Tall chart card minimum height ── */
.chart-card-tall { min-height: 460px; }

.explorer-scoreboard-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 16px;
}
.explorer-scoreboard-grid .stat-card {
  min-height: 94px;
}
.explorer-scoreboard-grid .stat-label {
  line-height: 1.2;
}
.chart-shell {
  position: relative;
}
.chart-shell.chart-shell-medium canvas {
  width: 100% !important;
  height: 380px !important;
}
@media (max-width: 1200px) {
  .explorer-scoreboard-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .explorer-scoreboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .chart-shell.chart-shell-medium canvas { height: 340px !important; }
}
@media (max-width: 480px) {
  .explorer-scoreboard-grid { grid-template-columns: 1fr; }
  .chart-shell.chart-shell-medium canvas { height: 300px !important; }
}

/* ── Mini chart cards (used in context cluster) ── */
.mini-chart-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}
.mini-chart-grid .chart-card canvas { min-height: 200px; height: 200px !important; }
@media (max-width: 640px) {
  .mini-chart-grid { grid-template-columns: 1fr; }
}

/* ── Cluster scoreboard cards ── */
.cluster-scoreboard-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}
@media (max-width: 900px) {
  .cluster-scoreboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ── Context cluster controls block ── */
.context-cluster-controls {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr);
  gap: 12px 16px;
  margin-bottom: 14px;
}
.context-cluster-controls .control-block {
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 10px 12px;
}
@media (max-width: 900px) {
  .context-cluster-controls { grid-template-columns: 1fr; }
}

/* ── Main explorer controls ── */
.explorer-controls {
  grid-template-columns: minmax(140px, 180px) minmax(160px, 220px) minmax(320px, 1fr);
  align-items: end;
}
.explorer-controls .control-group-wide { grid-column: span 1; }
@media (max-width: 980px) {
  .explorer-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .explorer-controls .control-group-wide { grid-column: span 2; }
}
@media (max-width: 640px) {
  .explorer-controls { grid-template-columns: 1fr; }
  .explorer-controls .control-group-wide { grid-column: span 1; }
}

/* ── Chart header row ── */
.chart-header-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 10px;
}
.chart-header-row-wrap { flex-wrap: wrap; }
.chart-control-row { display: flex; gap: 10px; flex-wrap: wrap; }
.chart-inline-control { min-width: 180px; max-width: 220px; }
.chart-inline-control label { font-size: 0.68rem; }
.chart-note {
  margin-top: 10px;
  font-size: 0.76rem;
  line-height: 1.5;
  color: var(--text-secondary);
}
.chart-title-actions {
  display: flex;
  gap: 6px;
  align-items: center;
}
@media (max-width: 640px) {
  .chart-header-row { flex-direction: column; }
  .chart-inline-control { min-width: 100%; max-width: 100%; }
  #tab-air-explorer #ov_context_cluster_main {
    height: 500px !important;
    min-height: 500px;
  }
}

/* ── Toggle pill row ── */
.toggle-pill-row { display: flex; flex-wrap: wrap; gap: 8px; }
.toggle-pill { display: inline-flex; align-items: center; gap: 0; }
.toggle-pill input { position: absolute; opacity: 0; pointer-events: none; }
.toggle-pill span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  border: 1px solid var(--border-default);
  border-radius: 999px;
  background: var(--bg-surface-alt);
  color: var(--text-secondary);
  font-size: 0.76rem;
  line-height: 1.2;
  cursor: pointer;
  transition: all .15s ease;
}
.toggle-pill input:checked + span {
  background: var(--accent-light);
  color: var(--accent-text);
  border-color: var(--accent);
}
.control-group-wide { grid-column: span 2; }
@media (max-width: 640px) {
  .toggle-pill-row { gap: 6px; }
  .toggle-pill span { width: 100%; }
  .control-group-wide { grid-column: span 1; }
}

/* ── Metric toggle grid (context cluster checkboxes) ── */
.metric-toggle-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px 12px;
  margin-bottom: 10px;
}
.metric-toggle-grid label {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.76rem;
  color: var(--text-secondary);
}
.metric-toggle-grid input { accent-color: var(--accent); }
.indexed-metric-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 0; }
@media (max-width: 900px) {
  .metric-toggle-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ── Religion comparison table ── */
.religion-compare-wrap { overflow-x: auto; }
.religion-compare-wrap table { min-width: 980px; }
.religion-compare-table thead th { text-align: center; vertical-align: bottom; }
.religion-compare-table th:first-child,
.religion-compare-table td:first-child {
  position: sticky; left: 0; background: var(--bg-surface); z-index: 1;
}
.religion-compare-table thead th:first-child { z-index: 2; }
.religion-compare-table td:not(:first-child),
.religion-compare-table th:not(:first-child) { text-align: center; }
.religion-center { text-align: center !important; }
.table-subhead { display: block; margin-top: 2px; font-size: 0.62rem; font-weight: 600; color: var(--text-muted); line-height: 1.2; }

/* ── Flag head cells ── */
.flag-head { display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1.1; gap: 3px; min-width: 40px; }
.flag-head-rect { display: block; width: 22px; height: 14px; border-radius: 2px; border: 1px solid rgba(0,0,0,.12); box-shadow: inset 0 0 0 1px rgba(255,255,255,.16); }
.flag-au { background: #012169; }
.flag-ca { background: linear-gradient(90deg,#d52b1e 0 26%, #fff 26% 74%, #d52b1e 74% 100%); }
.flag-nz { background: #00247d; }
.flag-uk { background: #012169; }
.flag-us { background: repeating-linear-gradient(180deg,#b22234 0 9%, #fff 9% 18%); }
.flag-5e { background: linear-gradient(135deg,#2b6cb0,#4a5568); }
.flag-head-code { font-size: 0.66rem; font-weight: 700; letter-spacing: 0.05em; color: var(--text-secondary); }
.flag-head-cell { text-align: center !important; }

/* ── Five-Eyes Compared layout ── */
.compare-linked-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.compare-linked-card {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 12px 14px;
}
.compare-linked-label {
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--text-muted);
  margin-bottom: 6px;
}
.compare-linked-values {
  display: flex;
  gap: 12px;
  font-size: 0.84rem;
  font-weight: 600;
  color: var(--text-primary);
  flex-wrap: wrap;
}
.compare-linked-note {
  margin-top: 6px;
  font-size: 0.72rem;
  color: var(--text-muted);
  line-height: 1.4;
}
.compare-workflow-controls { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }

/* ── Comparison AB panels ── */
.compare-ab-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 14px;
}
.compare-ab-panel {
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 12px 14px;
}
.compare-ab-label {
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-muted);
  margin-bottom: 8px;
}
@media (max-width: 640px) {
  .compare-ab-grid { grid-template-columns: 1fr; }
  .compare-linked-grid { grid-template-columns: 1fr; }
}

/* ── Chart inline status (context cluster) ── */
.chart-inline-status {
  min-height: 1.1rem;
  font-size: 0.74rem;
  color: var(--text-muted);
  line-height: 1.4;
  padding: 2px 0;
}

/* ── Context empty state ── */
.context-empty-state {
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px dashed var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--bg-surface-alt);
  color: var(--text-secondary);
  font-size: 0.78rem;
  line-height: 1.45;
}
.context-empty-state[hidden] { display: none !important; }

/* ── Summary rank list (used in cluster scoreboard) ── */
.summary-rank-list { display: grid; gap: 5px; }
.summary-rank-row {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.78rem;
}
.summary-rank-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--accent-light);
  color: var(--accent-text);
  font-size: 0.64rem;
  font-weight: 700;
  flex-shrink: 0;
}
.summary-rank-label { flex: 1; color: var(--text-primary); }
.summary-rank-value { color: var(--text-muted); font-size: 0.72rem; }

/* ── Chart action button ── */
.chart-action-btn {
  background: var(--bg-input);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 4px 8px;
  font-size: 0.7rem;
  font-family: var(--font-body);
  color: var(--text-muted);
  cursor: pointer;
  transition: all .15s;
}
.chart-action-btn:hover { background: var(--accent-light); color: var(--accent-text); border-color: var(--accent); }

/* ── Dataset tab switcher ── */
.dataset-switcher { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.dataset-tab {
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
  color: var(--text-secondary);
  padding: 8px 14px;
  border-radius: var(--radius-sm);
  cursor: pointer;
  font-family: var(--font-body);
  font-size: 0.8rem;
  font-weight: 600;
  transition: all .15s;
}
.dataset-tab:hover { background: var(--accent-light); color: var(--accent-text); border-color: var(--accent); }
.dataset-tab.active { background: var(--accent); color: var(--text-inverse); border-color: var(--accent); }
@media (max-width: 640px) {
  .dataset-switcher { flex-direction: column; }
  .dataset-tab { width: 100%; min-height: 42px; }
}


.chart-note-muted {
  color: var(--text-muted);
  margin-top: 8px;
}
.explorer-summary-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin: 16px 0;
}
.explorer-summary-grid .stat-card {
  min-height: 96px;
}
.explorer-mini-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}
.mini-summary-card {
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 14px;
}
.mini-summary-title {
  margin: 0 0 10px;
  font-size: 0.95rem;
  color: var(--text-primary);
}
.chart-shell.chart-shell-mini canvas {
  width: 100% !important;
  height: 220px !important;
}
.mini-comparator-list {
  margin-top: 10px;
  display: grid;
  gap: 6px;
}
.mini-comparator-row {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
  font-size: 0.78rem;
  color: var(--text-secondary);
}
.mini-rank {
  font-weight: 700;
  color: var(--text-primary);
}
.mini-comparator-label {
  min-width: 0;
  overflow-wrap: anywhere;
}
.mini-comparator-value {
  color: var(--text-muted);
  text-align: right;
  white-space: nowrap;
}

.mini-comparator-row-compact .mini-comparator-value {
  white-space: nowrap;
}
@media (max-width: 1280px) {
  .explorer-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .explorer-mini-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .explorer-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
  .explorer-summary-grid { grid-template-columns: 1fr; }
  .chart-shell.chart-shell-mini canvas { height: 200px !important; }
  .mini-comparator-row { grid-template-columns: 20px minmax(0, 1fr); }
  .mini-comparator-value { grid-column: 2; text-align: left; white-space: normal; }
}

.change-stat-card { position: relative; }
.change-stat-card .stat-subtext { line-height: 1.25; }
.change-meter {
  margin-top: 8px;
  height: 6px;
  border-radius: 999px;
  background: var(--bg-input);
  overflow: hidden;
  border: 1px solid var(--border-default);
}
.change-meter-fill {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: var(--text-muted);
}
.change-stat-card.change-up .change-meter-fill { background: var(--good); }
.change-stat-card.change-down .change-meter-fill { background: var(--danger); }
.change-stat-card.change-flat .change-meter-fill { background: var(--accent); }
.change-stat-card.change-na .change-meter-fill { background: var(--text-muted); width: 0 !important; }
.explorer-mini-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.mini-summary-card {
  padding: 12px;
}
.mini-summary-title {
  margin-bottom: 8px;
  font-size: 0.88rem;
  line-height: 1.25;
}
.chart-shell.chart-shell-mini canvas {
  height: 170px !important;
}
.mini-comparator-list {
  margin-top: 8px;
  gap: 5px;
}
.mini-comparator-row {
  font-size: 0.73rem;
  line-height: 1.35;
}
.mini-comparator-value {
  white-space: normal;
  text-align: left;
}
.incident-method-note {
  margin-top: 12px;
}
@media (max-width: 1280px) {
  .explorer-mini-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .chart-shell.chart-shell-mini canvas { height: 180px !important; }
}
@media (max-width: 700px) {
  .explorer-mini-grid { grid-template-columns: 1fr; }
}


.explorer-mini-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.chart-shell.chart-shell-mini canvas {
  height: 165px !important;
}
.mini-comparator-row {
  grid-template-columns: 20px minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: 8px;
}
.mini-comparator-stack {
  display: grid;
  gap: 1px;
}
.mini-comparator-line {
  display: block;
  color: var(--text-muted);
  line-height: 1.25;
}
.mini-comparator-value {
  text-align: left;
  white-space: normal;
}
@media (max-width: 900px) {
  .explorer-mini-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .explorer-mini-grid { grid-template-columns: 1fr; }
  .chart-shell.chart-shell-mini canvas { height: 180px !important; }
}

.kpi .label{
  font-size:.68rem;
  line-height:1.3;
}
.kpi .value{
  font-size:clamp(.96rem, 1.55vw, 1.18rem);
  line-height:1.25;
  overflow-wrap:anywhere;
}
.admin-layout{
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
}
@media (max-width:1100px){
  .admin-layout{grid-template-columns:1fr}
}


.explorer-mini-grid {
  gap: 12px;
}
.mini-summary-card {
  padding: 10px 12px;
}
.chart-shell.chart-shell-mini canvas {
  height: 138px !important;
}
.mini-summary-title {
  margin-bottom: 6px;
}
.mini-comparator-list {
  margin-top: 6px;
  gap: 4px;
}
.mini-comparator-row {
  grid-template-columns: 18px minmax(0, 0.88fr) minmax(0, 1.12fr);
  gap: 6px;
  font-size: 0.71rem;
  line-height: 1.25;
}
.mini-comparator-value {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
}
@media (max-width: 900px) {
  .chart-shell.chart-shell-mini canvas {
    height: 146px !important;
  }
}
@media (max-width: 700px) {
  .chart-shell.chart-shell-mini canvas {
    height: 156px !important;
  }
  .mini-comparator-value {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
  }
}


.context-explorer-controls {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.context-summary-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 16px 0;
}
.context-summary-card { min-height: 98px; }
.context-change-lines {
  display: grid;
  gap: 2px;
  margin-top: 4px;
  font-size: 0.72rem;
  color: var(--text-secondary);
  line-height: 1.25;
}
.chart-shell.chart-shell-context-main canvas {
  width: 100% !important;
  height: 360px !important;
}
.context-mini-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}
.chart-shell.chart-shell-context-mini canvas {
  width: 100% !important;
  height: 180px !important;
}
@media (max-width: 1180px) {
  .context-explorer-controls, .context-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .chart-shell.chart-shell-context-main canvas { height: 330px !important; }
  .context-mini-grid { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
  .context-explorer-controls, .context-summary-grid { grid-template-columns: 1fr; }
  .chart-shell.chart-shell-context-main canvas { height: 300px !important; }
  .chart-shell.chart-shell-context-mini canvas { height: 160px !important; }
}


.chart-note-teaching {
  margin-top: 10px;
  padding: 8px 10px;
  border-left: 3px solid rgba(64, 99, 160, 0.35);
  background: color-mix(in srgb, var(--panel-bg) 92%, var(--accent) 8%);
}
.context-interpretation-block {
  margin-top: 16px;
  padding: 14px 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 10px;
  background: color-mix(in srgb, var(--panel-bg) 94%, var(--text-muted) 6%);
}
.context-interpretation-title {
  margin: 0 0 8px;
  font-size: 0.95rem;
}
.context-interpretation-block p {
  margin: 0 0 8px;
  font-size: 0.86rem;
  line-height: 1.45;
  color: var(--text-secondary);
}
.context-interpretation-block p:last-child { margin-bottom: 0; }

.context-guide-block {
  margin-top: 12px;
  padding: 12px 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 10px;
  background: color-mix(in srgb, var(--panel-bg) 95%, var(--accent) 5%);
}
.context-guide-title {
  margin: 0 0 6px;
  font-size: 0.94rem;
}
.context-guide-block p {
  margin: 0 0 6px;
  font-size: 0.85rem;
  line-height: 1.45;
  color: var(--text-secondary);
}
.context-guide-block p:last-child { margin-bottom: 0; }
.context-guide-block code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.82rem;
  background: color-mix(in srgb, var(--panel-bg) 85%, var(--text-muted) 15%);
  padding: 1px 4px;
  border-radius: 4px;
}
.context-insight-card {
  min-height: 120px;
}
.context-insight-value {
  margin-top: 4px;
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.35;
  color: var(--text-primary);
}
.context-insight-subtext {
  margin-top: 6px;
  line-height: 1.35;
}
.air-export-header {
  margin-bottom: 14px;
  padding: 10px 12px;
  border: 1px solid rgba(91, 100, 112, 0.18);
  border-radius: 10px;
  background: rgba(255,255,255,0.86);
  color: #1e2732;
  font-family: Arial, Helvetica, sans-serif;
}
.air-export-kicker {
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #475364;
  margin-bottom: 2px;
}
.air-export-subtitle {
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 4px;
}
.air-export-module {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 4px;
}
.air-export-meta {
  font-size: 11px;
  line-height: 1.35;
  color: #5b6470;
}


.context-air-mini-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.mini-air-note {
  margin-top: 8px;
  font-size: 0.75rem;
  line-height: 1.35;
  color: var(--text-secondary);
}
@media (max-width: 1080px) {
  .context-air-mini-grid { grid-template-columns: 1fr; }
}


.fiveeyes-module-block { margin-top: 18px; }
.fiveeyes-section-title {
  margin: 0 0 10px;
  font-size: 0.98rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: var(--text-primary);
}
.fiveeyes-selector-bar {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 980px;
}
.fiveeyes-selector-bar--polished {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-width: none;
  gap: 12px;
  margin-bottom: 0;
}
.compare-country-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 12px;
}
.compare-country-grid--dual {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.compare-country-card {
  min-height: 252px;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease, opacity .15s ease;
}
.compare-country-card--focus,
.compare-country-card--primary,
.compare-country-card--secondary {
  border-color: color-mix(in srgb, var(--accent) 55%, var(--border-default));
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 16%, transparent);
}
.compare-country-card--muted { opacity: 0.82; }
.compare-country-card-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom: 8px;
}
.compare-country-name {
  font-family: var(--font-display);
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--text-primary);
}
.compare-country-badge {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border-default));
  background: color-mix(in srgb, var(--accent) 12%, var(--bg-surface-alt));
  color: var(--accent-text);
  font-size: 0.68rem;
  font-weight: 700;
  white-space: nowrap;
}
.compare-country-total {
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
  color: var(--text-primary);
}
.compare-country-total-label {
  margin-top: 4px;
  font-size: 0.72rem;
  color: var(--text-secondary);
}
.compare-country-metrics {
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:8px;
  margin-top: 12px;
}
.compare-country-metric {
  display:flex;
  flex-direction:column;
  gap:2px;
  padding:8px 9px;
  background: color-mix(in srgb, var(--bg-surface-alt) 92%, transparent);
  border:1px solid var(--border-default);
  border-radius: var(--radius-sm);
}
.compare-country-metric span {
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--text-muted);
}
.compare-country-metric strong {
  font-size: 1rem;
  color: var(--text-primary);
  line-height: 1.15;
}
.fiveeyes-interpret-grid {
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
#tab-five-eyes .chart-card canvas {
  min-height: 320px;
}
@media (max-width: 1100px) {
  .fiveeyes-interpret-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .compare-country-grid--dual { grid-template-columns: 1fr; }
}
@media (max-width: 820px) {
  .fiveeyes-selector-bar { grid-template-columns: 1fr; }
  .compare-country-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .compare-country-grid,
  .fiveeyes-interpret-grid { grid-template-columns: 1fr; }
  #tab-five-eyes .chart-card canvas { min-height: 260px; }
}

.compare-detail-card {
  min-height: 0;
}
.compare-rank-list {
  display: grid;
  gap: 10px;
  margin-top: 8px;
}
.compare-rank-item {
  padding: 10px 11px;
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  background: color-mix(in srgb, var(--bg-surface-alt) 90%, transparent);
}
.compare-rank-head {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 8px;
}
.compare-rank-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent) 14%, var(--bg-surface-alt));
  border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border-default));
  color: var(--accent-text);
  font-size: 0.72rem;
  font-weight: 700;
}
.compare-rank-title {
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--text-primary);
}
.compare-rank-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.compare-rank-meta-grid div {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.compare-rank-meta-grid span {
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--text-muted);
}
.compare-rank-meta-grid strong {
  font-size: 0.9rem;
  line-height: 1.25;
  color: var(--text-primary);
}
.fiveeyes-interpret-grid--wide {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 1100px) {
  .fiveeyes-interpret-grid--wide {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .compare-rank-meta-grid,
  .fiveeyes-interpret-grid--wide {
    grid-template-columns: 1fr;
  }
}


.compare-country-grid--single {
  grid-template-columns: minmax(0, 1fr);
  max-width: 1100px;
}
.compare-overview-card {
  min-height: 0;
}
.compare-overview-card--bloc {
  border-width: 1.5px;
}
.compare-country-card--context {
  border-style: dashed;
}
.compare-overview-sections {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
}
.compare-overview-section h4 {
  margin: 0 0 8px;
  font-size: 0.84rem;
  line-height: 1.25;
  color: var(--text-secondary);
}
.fiveeyes-interpret-grid--mode-aware {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
@media (max-width: 1180px) {
  .compare-overview-sections {
    grid-template-columns: 1fr;
  }
  .fiveeyes-interpret-grid--mode-aware {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 680px) {
  .fiveeyes-interpret-grid--mode-aware {
    grid-template-columns: 1fr;
  }
}


/* ============================================================
   FiveEyesAIR style.css additions — Version 1.2.3
   Five-Eyes layout and AIR comparison refinement
   ============================================================ */
.fiveeyes-selector-bar--dual{grid-template-columns:repeat(2,minmax(220px,1fr));max-width:720px}
.compare-country-grid--stable{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.compare-overview-card--panel{min-height:100%}
.compare-country-metrics--compact{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:14px}
.compare-country-metrics--compact .compare-country-metric{padding:8px 8px;min-height:68px}
.compare-country-metrics--compact .compare-country-metric span{font-size:.74rem}
.compare-country-metrics--compact .compare-country-metric strong{font-size:1rem}
.compare-overview-sections--balanced{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch;margin-top:14px}
.compare-overview-section--equal{display:flex;flex-direction:column;min-height:100%}
.compare-overview-section--equal .compare-rank-item{flex:1 1 auto}
.fiveeyes-share-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.fiveeyes-share-card{border:1px solid var(--border-color,#d0d7de);border-radius:14px;padding:12px 14px;background:var(--panel-soft-bg,rgba(255,255,255,.6))}
.fiveeyes-share-card .stat-value{font-size:1.35rem;margin-top:4px}
@media (max-width: 1080px){
  .compare-country-grid--stable,.compare-overview-sections--balanced,.fiveeyes-share-pair,.fiveeyes-selector-bar--dual{grid-template-columns:1fr}
  .compare-country-metrics--compact{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width: 720px){
  .compare-country-metrics--compact{grid-template-columns:repeat(2,minmax(0,1fr))}
}


.fiveeyes-module-block--anchor .chart-card-fiveeyes-primary{grid-column:1 / -1;padding:18px 18px 16px}
.fiveeyes-module-block--anchor .chart-card-fiveeyes-primary canvas{min-height:360px !important;height:360px !important}
.chart-card-fiveeyes-air{padding:16px 18px 14px}
.chart-card-fiveeyes-air canvas{min-height:168px !important;height:168px !important}
.fiveeyes-air-combo-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:16px;align-items:center}
.fiveeyes-air-combo-chart-wrap{min-width:0}
.fiveeyes-air-combo-summary{display:grid;grid-template-columns:1fr;gap:10px}
.fiveeyes-air-combo-card{border:1px solid var(--border-default);border-radius:14px;padding:12px 14px;background:var(--panel-soft-bg,rgba(255,255,255,.62))}
.fiveeyes-air-combo-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:6px}
.fiveeyes-air-combo-key{font-size:.78rem;color:var(--text-secondary);letter-spacing:.01em}
.fiveeyes-air-combo-val{font-size:1rem;font-weight:600;color:var(--text-primary)}
.compare-country-total--refined{font-size:1.55rem;font-weight:700;line-height:1.05}
.compare-country-total-label--refined{font-size:.78rem}
.compare-country-metrics--compact .compare-country-metric--calm{padding:7px 8px;min-height:58px}
.compare-country-metrics--compact .compare-country-metric--calm span{font-size:.74rem;font-weight:500;letter-spacing:.01em;text-transform:none}
.compare-country-metrics--compact .compare-country-metric--calm .compare-country-metric-value{font-size:.74rem;font-weight:400;line-height:1.25;color:var(--text-primary)}
@media (max-width:1080px){
  .fiveeyes-module-block--anchor .chart-card-fiveeyes-primary canvas{min-height:300px !important;height:300px !important}
  .fiveeyes-air-combo-layout{grid-template-columns:1fr}
}
@media (max-width:640px){
  .fiveeyes-module-block--anchor .chart-card-fiveeyes-primary canvas{min-height:260px !important;height:260px !important}
  .chart-card-fiveeyes-air canvas{min-height:150px !important;height:150px !important}
}


.compare-rank-dynamic-title{font-size:.82rem;font-weight:400;color:#111827;line-height:1.3}
.compare-rank-value{font-size:.78rem;font-weight:400;line-height:1.25;color:#111827}
.compare-rank-value--dynamic{font-size:.74rem;font-weight:400;color:#111827}
.compare-rank-meta-grid span{font-size:.64rem;font-weight:600;color:var(--text-muted)}
.compare-rank-item{padding:10px 11px}
.compare-rank-head{margin-bottom:7px}
.fiveeyes-compare-explicit{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center;margin:10px 0 14px}
.fiveeyes-compare-explicit-unit{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid var(--border-default);border-radius:14px;background:var(--panel-soft-bg,rgba(255,255,255,.62))}
.fiveeyes-compare-explicit-kicker{font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}
.fiveeyes-compare-explicit-name{font-size:1rem;font-weight:700;line-height:1.2;color:var(--text-primary)}
.fiveeyes-compare-explicit-divider{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;border-radius:999px;border:1px solid var(--border-default);background:color-mix(in srgb,var(--accent) 10%, var(--bg-surface-alt));font-size:.78rem;font-weight:700;color:var(--accent-text)}
.compare-country-name{font-size:1.08rem}
.compare-country-badge{font-size:.66rem}
.compare-country-metrics--compact .compare-country-metric--calm .compare-country-metric-value{font-size:.72rem;font-weight:400;color:#111827}
.compare-country-metrics--compact .compare-country-metric--calm span{font-size:.72rem}
.kpi .value,.list-item,.data-table td,.form-grid input,.form-grid textarea,.form-grid select,.section select,.table-tools input{color:#111827;font-weight:400}
.kpi .value{font-size:1.02rem}
@media (max-width: 820px){.fiveeyes-compare-explicit{grid-template-columns:1fr;}.fiveeyes-compare-explicit-divider{justify-self:center}}


.compare-rank-item{display:flex;flex-direction:column;gap:8px;padding:11px 12px}
.compare-rank-head{margin-bottom:0}
.compare-rank-dynamic-title{font-size:.82rem;font-weight:600;color:#111827;line-height:1.32}
.compare-rank-meta-stack{display:flex;flex-direction:column;gap:5px}
.compare-rank-line{display:flex;flex-direction:column;align-items:flex-start;gap:1px}
.compare-rank-line-label{font-size:.68rem;font-weight:600;letter-spacing:.02em;color:var(--text-muted);text-transform:none}
.compare-rank-value,.compare-rank-value--dynamic{font-size:.82rem;font-weight:600;line-height:1.28;color:#111827}
.compare-overview-section--equal{min-height:100%}
.compare-overview-section--equal .compare-rank-item{min-height:0}
.compare-overview-section--equal{justify-content:stretch}
.compare-overview-section--equal > .stat-subtext{margin-top:auto}
@media (max-width: 900px){
  .compare-rank-item{padding:10px 11px}
}


.chart-note-era { margin-top: 10px; }
.context-interpretation-title, .context-guide-title { letter-spacing: .01em; }

.cases-note{margin-bottom:14px}
.cases-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.cases-kpis--six{grid-template-columns:repeat(6,minmax(0,1fr))}
.cases-card{padding:18px}
.cases-tools{margin:0 0 10px}
.cases-tools input,.cases-tools select{min-width:150px;flex:0 1 180px}
.cases-download-btn{white-space:nowrap}
.cases-table-meta{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin:0 0 14px;color:var(--text-secondary);font-size:.82rem}
.cases-catalogue{display:grid;grid-template-columns:1fr;gap:14px}
.case-record-card{border:1px solid var(--border-default);border-radius:16px;background:var(--panel-soft-bg,rgba(255,255,255,.64));box-shadow:var(--shadow-soft);padding:16px 18px}
.case-record-kicker{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}
.case-record-kicker-sep{padding:0 6px}
.case-record-place{margin:0 0 4px;font-size:1.18rem;line-height:1.2;color:var(--text-primary);font-weight:800}
.case-record-title{margin:0 0 8px;font-size:1rem;line-height:1.35;color:var(--text-secondary);font-weight:700}
.case-record-note{margin:0 0 10px;font-size:.86rem;line-height:1.45;color:var(--text-muted)}
.case-record-secondary{display:flex;flex-wrap:wrap;gap:12px 18px;margin-bottom:12px;color:var(--text-secondary);font-size:.9rem}
.case-record-summary{font-size:.94rem;line-height:1.62;color:var(--text-primary);margin-bottom:14px}
.case-record-sources,.case-print-sources{display:flex;flex-wrap:wrap;gap:8px}
.cases-source-item{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:4px 8px;border-radius:999px;font-size:.78rem;line-height:1.2;color:var(--text-secondary);text-decoration:none;word-break:normal;background:var(--bg-surface-alt);border:1px solid var(--border-default)}
.cases-source-link{color:var(--accent-text)}
.cases-source-link:hover{text-decoration:underline}
.case-record-print{display:none}
.case-print-header{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.case-print-id{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}
.case-print-title{margin:0;font-size:1.08rem;line-height:1.28;color:var(--text-primary)}
.case-print-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin-bottom:14px}
.cases-detail-item{display:flex;flex-direction:column;gap:2px}
.cases-detail-label{font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}
.cases-detail-value{font-size:.88rem;line-height:1.45;color:var(--text-primary)}
.case-print-summary-block{margin:0 0 12px}
.case-print-summary{font-size:.9rem;line-height:1.55;color:var(--text-primary);margin-top:4px}
.cases-empty,.cases-empty-card{text-align:center;color:var(--text-secondary);padding:18px 12px}
.cases-empty-card{border:1px dashed var(--border-default);border-radius:14px;background:var(--bg-surface-alt)}
.cases-chart-note{margin-top:10px}
@media (max-width:1260px){
  .cases-kpis--six{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1100px){
  .cases-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cases-kpis--six{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .cases-kpis,.cases-kpis--six{grid-template-columns:1fr}
  .cases-tools input,.cases-tools select,.cases-download-btn{flex:1 1 100%;min-width:100%}
  .case-record-card{padding:15px 14px}
  .case-record-place{font-size:1.06rem}
  .case-record-title{font-size:.95rem}
  .case-record-secondary{flex-direction:column;gap:6px}
}
@media print{
  .cases-note,.cases-tools,.cases-table-meta,.cases-chart-note,.cases-kpis,.panel-title,.overview-note{display:none !important}
  #tab-cases.tab-panel{display:block !important;border:0;box-shadow:none;margin:0;padding:0;background:#fff}
  #tab-cases .panel-footer{display:none !important}
  .cases-card{padding:0;border:0;box-shadow:none;background:#fff}
  .cases-catalogue{gap:12px}
  .case-record-card{break-inside:avoid;page-break-inside:avoid;border:1px solid #d1d5db;box-shadow:none;background:#fff;padding:12px 14px}
  .case-record-screen{display:none !important}
  .case-record-print{display:block !important}
  .case-print-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cases-source-item{color:#111827}
}


.explorer-top-scoreboard-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin: 16px 0 20px;
}
.era-legend {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin: 10px 0 14px;
}
.era-chip {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid var(--border-default);
  background: var(--bg-surface-alt);
  color: var(--text-secondary);
  font-size: 0.76rem;
  line-height: 1.35;
}
.era-chip strong {
  color: var(--text-primary);
  font-size: 0.79rem;
}
.era-chip-1 { background: color-mix(in srgb, var(--bg-surface-alt) 88%, rgba(64, 99, 160, 0.16) 12%); }
.era-chip-2 { background: color-mix(in srgb, var(--bg-surface-alt) 88%, rgba(120, 132, 152, 0.16) 12%); }
.era-chip-3 { background: color-mix(in srgb, var(--bg-surface-alt) 88%, rgba(64, 99, 160, 0.16) 12%); }
.era-chip-4 { background: color-mix(in srgb, var(--bg-surface-alt) 88%, rgba(120, 132, 152, 0.16) 12%); }
.era-chip-5 { background: color-mix(in srgb, var(--bg-surface-alt) 88%, rgba(64, 99, 160, 0.16) 12%); }
.era-legend-compact {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-top: 8px;
}
.era-legend-compact .era-chip {
  padding: 8px 10px;
  font-size: 0.72rem;
}
@media (max-width: 1280px) {
  .explorer-top-scoreboard-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .era-legend, .era-legend-compact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .explorer-top-scoreboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .era-legend, .era-legend-compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .explorer-top-scoreboard-grid,
  .era-legend,
  .era-legend-compact { grid-template-columns: 1fr; }
}


.mini-summary-card-compact { padding: 9px 11px; }
.mini-summary-card-compact .mini-summary-title { margin-bottom: 5px; }
.mini-summary-card-compact .chart-shell.chart-shell-mini canvas { height: 108px !important; }
@media (max-width: 900px) {
  .mini-summary-card-compact .chart-shell.chart-shell-mini canvas { height: 118px !important; }
}
@media (max-width: 700px) {
  .mini-summary-card-compact .chart-shell.chart-shell-mini canvas { height: 128px !important; }
}

/* Dark-mode and site-wide text contrast cleanup */
.content-panel,
.content-panel p,
.content-panel li,
.content-panel td,
.content-panel th,
.chart-note,
.overview-note,
.section p,
.section li,
.section td,
.section th,
.case-record-kicker,
.case-record-title,
.case-record-secondary,
.case-record-summary,
.case-record-sources,
.cases-table-meta,
.cases-source-item,
.cases-source-link,
.mini-comparator-label,
.mini-comparator-value,
.context-interpretation-block p,
.context-guide-block p,
.context-guide-block li,
.msg,
.lead,
label,
legend { color: var(--text-primary); }

.content-panel .lead,
.chart-note,
.overview-note,
.cases-table-meta,
.context-guide-block .chart-note,
.context-interpretation-block .chart-note,
.mini-comparator-value,
.mini-comparator-line,
.compare-rank-meta-grid span,
.compare-rank-line-label,
.compare-country-metric--calm span,
.case-record-kicker { color: var(--text-secondary); }

.compare-rank-dynamic-title,
.compare-rank-value,
.compare-rank-value--dynamic,
.compare-country-metrics--compact .compare-country-metric--calm .compare-country-metric-value,
.kpi .value,
.list-item,
.data-table td,
.form-grid input,
.form-grid textarea,
.form-grid select,
.section select,
.table-tools input,
.table-tools select,
.admin-layout,
.card.section h1 small { color: var(--text-primary) !important; }

[data-theme="dark"] .admin-layout,
[data-theme="dark"] .card.section,
[data-theme="dark"] .content-panel,
[data-theme="dark"] .module-card,
[data-theme="dark"] .mini-summary-card,
[data-theme="dark"] .case-record-card,
[data-theme="dark"] .glossary-table,
[data-theme="dark"] .glossary-table td,
[data-theme="dark"] .glossary-table th { color: var(--text-primary); }

[data-theme="dark"] a:not(.btn),
[data-theme="dark"] .cases-source-link { color: var(--accent-text); }
[data-theme="dark"] input,
[data-theme="dark"] select,
[data-theme="dark"] textarea { background: var(--bg-input); color: var(--text-primary); border-color: var(--border-default); }

[data-theme="dark"] .case-record-card { background: rgba(17,24,39,0.82); border-color: rgba(148,163,184,0.22); }
[data-theme="dark"] .case-record-place { color: #f8fafc; }
[data-theme="dark"] .case-record-title { color: #dbe7f5; }
[data-theme="dark"] .case-record-note { color: #aebed2; }
[data-theme="dark"] .case-record-secondary,
[data-theme="dark"] .case-record-summary,
[data-theme="dark"] .cases-table-meta { color: #e5eef8; }
[data-theme="dark"] .cases-source-item { background: rgba(30,41,59,0.95); border-color: rgba(148,163,184,0.26); color: #dbe7f5; }
[data-theme="dark"] .cases-source-link { color: #93c5fd; }
[data-theme="dark"] .cases-tools input,
[data-theme="dark"] .cases-tools select { background: var(--bg-input); color: var(--text-primary); }

.admin-site{max-width:none;width:min(100%,1920px);padding:16px 16px 40px;}
.admin-layout--full{grid-template-columns:1fr;}


.site-notice{line-height:1.5}
.chart-actions .chart-action-btn,.fiveeyes-export-group .chart-action-btn,.cases-download-btn{white-space:nowrap}
.compare-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.compare-context-card{min-height:100%}
.chart-card-fiveeyes-context canvas{min-height:320px}
.case-record-card{padding:18px 20px}
.case-record-note{margin-bottom:8px}
.case-record-summary{max-width:92ch}
.case-record-sources{padding-top:2px}
.cases-tools .btn,.cases-tools button,.cases-tools select,.cases-tools input{min-height:42px}
.admin-site .header.card,.admin-site .card.section{overflow:hidden}
.admin-site .table-wrap{overflow:auto;-webkit-overflow-scrolling:touch}
.admin-site .data-table th,.admin-site .data-table td{vertical-align:top}
.admin-site .form-grid label{margin-bottom:4px}
.admin-site .btn{min-height:40px}
@media (max-width: 980px){
  .chart-header-row-wrap,.chart-title-actions,.fiveeyes-selector-bar--dual{gap:10px}
  .chart-title-actions{align-items:stretch}
  .compare-context-grid{grid-template-columns:1fr}
}
@media (max-width: 760px){
  .site-header{padding:16px 14px}
  .nav-tabs{gap:8px;overflow-x:auto;padding-bottom:2px}
  .tab-btn{white-space:nowrap}
  .chart-card,.module-card,.content-panel,.case-record-card{border-radius:14px}
  .chart-shell,.chart-shell-medium{min-height:280px}
  .chart-card canvas{max-width:100%}
  .chart-title-actions,.cases-tools,.controls-bar{display:flex;flex-wrap:wrap}
  .chart-title-actions > *, .cases-tools > *, .controls-bar > *{flex:1 1 100%}
  .spacer{display:none}
}
@media (max-width: 520px){
  .site-wrap{padding:10px}
  .theme-toggle{width:100%;justify-content:center}
  .header-top{gap:12px}
  .header-titles h1{font-size:1.45rem;line-height:1.2}
  .subtitle,.date-range,.header-cite,.header-meta,.site-version-marker,.site-notice{font-size:.9rem}
  .tab-panel{padding-top:12px}
  .chart-card-fiveeyes-context canvas{min-height:260px}
  .case-record-card{padding:15px 14px}
  .case-record-place{font-size:1.06rem}
  .case-record-title{font-size:.95rem}
  .case-record-summary{font-size:.92rem;line-height:1.58}
  .case-record-secondary{flex-direction:column;gap:6px}
  .admin-link-footer{display:inline-flex;padding:8px 10px;border:1px solid var(--border-default);border-radius:999px;background:var(--bg-surface-alt)}
}
[data-theme="dark"] .site-notice,
[data-theme="dark"] .header-cite,
[data-theme="dark"] .header-meta,
[data-theme="dark"] .site-version-marker{color:#dbe7f5}
[data-theme="dark"] .content-panel,
[data-theme="dark"] .module-card,
[data-theme="dark"] .chart-card,
[data-theme="dark"] .admin-site .card.section,
[data-theme="dark"] .admin-site .header.card{box-shadow:0 8px 24px rgba(0,0,0,.28)}
[data-theme="dark"] .chart-note,
[data-theme="dark"] .overview-note,
[data-theme="dark"] .lead,
[data-theme="dark"] .compare-intro{color:#dbe7f5}
[data-theme="dark"] .tab-btn{color:#e5eef8}
[data-theme="dark"] .chart-action-btn,
[data-theme="dark"] .btn,
[data-theme="dark"] .admin-link-footer{color:#eef6ff}


.cases-tools.controls-bar{
  grid-template-columns:minmax(220px,1.35fr) repeat(4,minmax(150px,1fr)) minmax(190px,.95fr);
  gap:12px;
  align-items:end;
  margin-bottom:14px;
}
.cases-tools .control-group{gap:6px}
.cases-tools .control-group label{font-size:.69rem;letter-spacing:.06em;color:var(--text-secondary)}
.cases-tools input,
.cases-tools select{min-height:44px;border-radius:12px;border:1px solid var(--border-default);background:var(--bg-input);box-shadow:0 1px 0 rgba(15,23,42,.03)}
.cases-tools input[type="search"]{padding-inline:12px}
.cases-tools .cases-action-group .btn{min-height:44px;width:100%}
.case-record-meta{margin:0 0 8px;font-size:.79rem;line-height:1.45;color:var(--text-secondary);font-weight:600}
.case-record-note{margin:0 0 10px;font-size:.86rem;line-height:1.5}
.case-record-secondary{margin-top:2px;margin-bottom:0;color:var(--text-secondary)}
.compare-country-card--compact .compare-country-brief{margin-top:12px;display:grid;gap:6px;font-size:.9rem;line-height:1.5;color:var(--text-primary)}
.compare-country-card--compact .compare-country-brief p{margin:0}
.compare-country-card--compact .compare-overview-sections{display:none}
.compare-country-grid--stable{align-items:start}
.content-panel h3{margin-top:1.25rem}
.content-panel p + p{margin-top:.9rem}
.glossary-table td:first-child{width:28%}
[data-theme="dark"] .case-record-meta{color:#c7d5e5}
[data-theme="dark"] .cases-tools input,
[data-theme="dark"] .cases-tools select{background:rgba(15,23,42,.92);border-color:rgba(148,163,184,.22)}
@media (max-width:1120px){
  .cases-tools.controls-bar{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cases-tools .control-group-wide,
  .cases-tools .cases-action-group{grid-column:span 3}
}
@media (max-width:760px){
  .cases-tools.controls-bar{grid-template-columns:1fr}
  .cases-tools .control-group-wide,
  .cases-tools .cases-action-group{grid-column:auto}
  .cases-tools .control-group label{font-size:.7rem}
  .glossary-table td:first-child{width:auto}
}


.glossary-list{display:grid;grid-template-columns:1fr;gap:14px;margin-top:18px}
.glossary-item{padding:16px 18px;border:1px solid var(--border-default);border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-bg) 92%,var(--accent-light) 8%),var(--panel-bg));box-shadow:0 6px 18px rgba(15,23,42,.04)}
.glossary-term{margin:0 0 6px;font-size:1rem;line-height:1.25;color:var(--text-primary)}
.glossary-definition{margin:0;font-size:.94rem;line-height:1.62;color:var(--text-secondary)}
.cases-toolbar-shell{margin-bottom:16px;padding:16px;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border-default));border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-light) 28%,var(--panel-bg)),var(--panel-bg));box-shadow:0 10px 24px rgba(15,23,42,.05)}
.cases-toolbar-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.cases-toolbar-title{margin:0 0 6px;font-size:1rem;line-height:1.25}
.cases-toolbar-subtitle{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.5;max-width:76ch}
.cases-toolbar-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.cases-toolbar-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border-default));background:color-mix(in srgb,var(--accent-light) 55%,var(--bg-surface-alt));color:var(--accent-text);font-size:.72rem;font-weight:700;letter-spacing:.02em}
.cases-toolbar-badge--muted{border-color:var(--border-default);background:var(--bg-surface-alt);color:var(--text-secondary)}
.cases-tools.controls-bar{margin-bottom:0}
.cases-tools .control-group label{font-size:.72rem;font-weight:700}
.cases-tools input,.cases-tools select{min-height:48px;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border-default));background:var(--bg-input);box-shadow:0 10px 18px rgba(15,23,42,.04), inset 0 1px 0 rgba(255,255,255,.45);transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease, background-color .18s ease}
.cases-tools input:hover,.cases-tools select:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border-strong))}
.cases-tools input:focus,.cases-tools select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%, transparent),0 12px 24px rgba(15,23,42,.08);background:var(--panel-bg)}
.cases-action-stack{display:grid;grid-template-columns:1fr;gap:8px}
.cases-reset-btn{background:var(--bg-surface-alt);color:var(--text-primary);border:1px solid var(--border-default)}
.cases-reset-btn:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border-default));transform:translateY(-1px)}
.cases-download-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(15,23,42,.08)}
.chart-card-fiveeyes-secondary{border-style:solid}
@media (max-width:980px){.cases-toolbar-header{flex-direction:column}.cases-toolbar-badges{justify-content:flex-start}}
@media (max-width:760px){.glossary-item{padding:14px 14px}.cases-toolbar-shell{padding:14px;border-radius:16px}.cases-toolbar-subtitle{font-size:.88rem}.cases-tools .control-group label{font-size:.7rem}}
[data-theme="dark"] .glossary-item{background:linear-gradient(180deg,rgba(17,24,39,.96),rgba(15,23,42,.94));box-shadow:0 10px 22px rgba(0,0,0,.28)}
[data-theme="dark"] .glossary-definition{color:#d7e3f1}
[data-theme="dark"] .cases-toolbar-shell{background:linear-gradient(180deg,rgba(18,30,47,.98),rgba(15,23,42,.94));border-color:rgba(127,160,204,.24);box-shadow:0 12px 28px rgba(0,0,0,.28)}
[data-theme="dark"] .cases-toolbar-badge{background:rgba(39,65,99,.7);color:#eef6ff;border-color:rgba(127,160,204,.28)}
[data-theme="dark"] .cases-toolbar-badge--muted{background:rgba(17,24,39,.88);color:#d7e3f1;border-color:rgba(148,163,184,.22)}
[data-theme="dark"] .cases-tools input,[data-theme="dark"] .cases-tools select{background:rgba(15,23,42,.94);border-color:rgba(148,163,184,.22);box-shadow:0 10px 20px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.04)}
[data-theme="dark"] .cases-tools input:hover,[data-theme="dark"] .cases-tools select:hover{border-color:rgba(127,160,204,.48)}
[data-theme="dark"] .cases-tools input:focus,[data-theme="dark"] .cases-tools select:focus{background:rgba(19,31,49,.98);box-shadow:0 0 0 4px rgba(112,157,255,.18),0 12px 24px rgba(0,0,0,.34)}
[data-theme="dark"] .cases-reset-btn{background:rgba(22,32,48,.92);color:#eef6ff;border-color:rgba(148,163,184,.24)}


.fiveeyes-controls-shell{
  margin: 14px 0 12px;
  padding: 16px 16px 14px;
  border: 1px solid color-mix(in srgb, var(--accent) 16%, var(--border-default));
  border-radius: 18px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--bg-surface) 88%, white 12%), color-mix(in srgb, var(--bg-surface-alt) 96%, white 4%));
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}
.fiveeyes-controls-shell-head{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:14px;
  align-items:start;
  margin-bottom:12px;
}
.fiveeyes-controls-kicker{
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--text-muted);
  margin-bottom:4px;
}
.fiveeyes-controls-title{
  margin:0;
  font-size:1.02rem;
  line-height:1.3;
  color:var(--text-primary);
}
.fiveeyes-controls-subtitle{
  margin:0;
  font-size:.86rem;
  line-height:1.45;
  color:var(--text-secondary);
}
.fiveeyes-control-card{
  gap:7px;
  padding:12px 12px 11px;
  border:1px solid var(--border-default);
  border-radius:16px;
  background: color-mix(in srgb, var(--bg-surface) 92%, white 8%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35);
  min-width:0;
}
.fiveeyes-control-card label{
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.06em;
  color:var(--text-secondary);
}
.fiveeyes-control-card select{
  min-height:44px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid color-mix(in srgb, var(--accent) 10%, var(--border-default));
  background: var(--bg-input);
  color:var(--text-primary);
  box-shadow: 0 1px 0 rgba(255,255,255,.18), 0 6px 14px rgba(15,23,42,.04);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}
.fiveeyes-control-card select:hover{
  border-color: color-mix(in srgb, var(--accent) 34%, var(--border-default));
  box-shadow: 0 1px 0 rgba(255,255,255,.18), 0 8px 18px rgba(15,23,42,.06);
}
.fiveeyes-control-card select:focus{
  outline:none;
  border-color:var(--accent);
  background: color-mix(in srgb, var(--bg-input) 94%, white 6%);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent) 16%, transparent), 0 10px 20px rgba(15,23,42,.08);
  transform: translateY(-1px);
}
.fiveeyes-control-help{
  font-size:.75rem;
  line-height:1.35;
  color:var(--text-muted);
}
.fiveeyes-control-card--export{
  justify-content:space-between;
}
.fiveeyes-control-action{
  display:flex;
  align-items:center;
  min-height:44px;
}
.fiveeyes-export-group .chart-action-btn{
  width:100%;
  min-height:44px;
  justify-content:center;
  border-radius:12px;
}
.fiveeyes-compare-explicit{
  margin: 12px 0 16px;
}
.fiveeyes-compare-explicit-unit{
  box-shadow: 0 8px 18px rgba(15,23,42,.04);
}
.fiveeyes-compare-explicit-unit--a{
  border-color: color-mix(in srgb, var(--accent) 28%, var(--border-default));
}
.fiveeyes-compare-explicit-unit--b{
  border-color: color-mix(in srgb, var(--accent-2, #7c3aed) 24%, var(--border-default));
}
.compare-context-card-name{
  font-size: .96rem;
  font-weight: 700;
  line-height: 1.25;
  color: var(--text-primary);
  margin-bottom: 6px;
}
.compare-context-card{
  padding: 14px 15px;
}
.chart-card-fiveeyes-context .chart-title{
  margin-bottom: 4px;
}
.chart-card-fiveeyes-context .chart-note{
  max-width: 980px;
}
@media (max-width: 1100px){
  .fiveeyes-selector-bar--polished{grid-template-columns:repeat(2,minmax(0,1fr));}
  .fiveeyes-controls-shell-head{grid-template-columns:1fr;}
}
@media (max-width: 760px){
  .fiveeyes-controls-shell{padding:14px; border-radius:16px;}
  .fiveeyes-selector-bar--polished{grid-template-columns:1fr; gap:10px;}
  .fiveeyes-control-card{padding:11px 11px 10px;}
  .fiveeyes-controls-title{font-size:.96rem;}
  .fiveeyes-controls-subtitle{font-size:.82rem;}
}
[data-theme="dark"] .fiveeyes-controls-shell{
  background: linear-gradient(180deg, rgba(18,30,47,.98), rgba(15,23,42,.94));
  border-color: rgba(127,160,204,.24);
  box-shadow: 0 14px 30px rgba(0,0,0,.28);
}
[data-theme="dark"] .fiveeyes-controls-subtitle,
[data-theme="dark"] .fiveeyes-control-card label{
  color:#dbe7f5;
}
[data-theme="dark"] .fiveeyes-control-card{
  background: rgba(17,24,39,.78);
  border-color: rgba(127,160,204,.22);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03), 0 8px 18px rgba(0,0,0,.18);
}
[data-theme="dark"] .fiveeyes-control-card select{
  background: rgba(15,23,42,.94);
  border-color: rgba(148,163,184,.22);
  box-shadow: 0 10px 20px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04);
}
[data-theme="dark"] .fiveeyes-control-card select:hover{
  border-color: rgba(127,160,204,.46);
}
[data-theme="dark"] .fiveeyes-control-card select:focus{
  background: rgba(19,31,49,.98);
  box-shadow: 0 0 0 4px rgba(112,157,255,.18), 0 12px 24px rgba(0,0,0,.34);
}
[data-theme="dark"] .fiveeyes-control-help,
[data-theme="dark"] .chart-card-fiveeyes-context .chart-note{
  color:#c5d3e6;
}


.splash-panel{padding-top:8px}
.splash-hero{padding:22px 22px 18px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border-default));border-radius:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-light) 24%,var(--panel-bg)),var(--panel-bg));box-shadow:0 12px 28px rgba(15,23,42,.06)}
.splash-kicker{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}
.splash-title{margin:0 0 10px;font-size:clamp(1.55rem,2.8vw,2.2rem);line-height:1.15}
.splash-intro{margin:0;max-width:80ch;font-size:1rem;line-height:1.65;color:var(--text-secondary)}
.splash-flags{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px;font-size:1.65rem}
.splash-version-marker{margin-top:8px;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-weight:700}
.splash-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.splash-nav-card{appearance:none;text-align:left;display:flex;flex-direction:column;gap:8px;padding:18px 18px 17px;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border-default));border-radius:18px;background:linear-gradient(180deg,var(--panel-bg),color-mix(in srgb,var(--bg-surface-alt) 92%,white 8%));cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.splash-nav-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 40%,var(--border-default));box-shadow:0 14px 26px rgba(15,23,42,.08)}
.splash-nav-card:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent),0 14px 26px rgba(15,23,42,.12)}
.splash-nav-icon{font-size:1.45rem;line-height:1;color:var(--accent-text)}
.splash-nav-title{font-size:1.02rem;font-weight:700;color:var(--text-primary)}
.splash-nav-text{font-size:.9rem;line-height:1.5;color:var(--text-secondary)}
.about-acknowledgment{padding:14px 16px;border:1px solid var(--border-default);border-radius:14px;background:color-mix(in srgb,var(--bg-surface-alt) 92%,transparent)}
.about-acknowledgment p + p{margin-top:10px}

.context-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.context-summary-card--micro{min-height:88px}
.context-insight-card--wide{grid-column:span 3}
.context-insight-card--tall{min-height:132px}
.context-insight-card--xl{min-height:152px}
.context-guide-block,.context-interpretation-block{margin-top:14px}
@media (max-width:980px){
  .context-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .context-insight-card--wide{grid-column:span 2}
}
@media (max-width:640px){
  .context-summary-grid{grid-template-columns:1fr}
  .context-insight-card--wide{grid-column:auto}
}

.fiveeyes-burden-bar-card{margin-top:14px;padding:14px 14px 12px;border:1px solid var(--border-default);border-radius:16px;background:color-mix(in srgb,var(--bg-surface-alt) 92%,transparent)}
.fiveeyes-burden-bar-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.fiveeyes-burden-bar-title{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}
.fiveeyes-burden-bar-note{font-size:.82rem;line-height:1.45;color:var(--text-secondary);max-width:48ch}
.fiveeyes-burden-bar{display:flex;overflow:hidden;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border-default));min-height:48px;background:var(--bg-input)}
.fiveeyes-burden-bar-segment{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 14px;color:#fff;min-width:0}
.fiveeyes-burden-bar-segment strong,.fiveeyes-burden-bar-segment em{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fiveeyes-burden-bar-segment strong{font-size:.86rem;font-style:normal}
.fiveeyes-burden-bar-segment em{font-size:.82rem;font-style:normal;opacity:.92}
.fiveeyes-burden-bar-segment--a{background:linear-gradient(90deg,#2457a6,#3b82f6)}
.fiveeyes-burden-bar-segment--b{background:linear-gradient(90deg,#6d28d9,#8b5cf6)}
.fiveeyes-burden-bar-foot{margin-top:8px;font-size:.83rem;line-height:1.45;color:var(--text-secondary)}
@media (max-width:760px){
  .splash-hero{padding:18px 16px 16px;border-radius:18px}
  .splash-card-grid{grid-template-columns:1fr}
  .fiveeyes-burden-bar{min-height:56px}
  .fiveeyes-burden-bar-segment{padding:0 10px}
  .fiveeyes-burden-bar-segment strong{font-size:.8rem}
}

.cases-tools input,.cases-tools select{
  min-height:44px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid color-mix(in srgb,var(--accent) 10%,var(--border-default));
  background:var(--bg-input);
  color:var(--text-primary);
  box-shadow:0 1px 0 rgba(255,255,255,.18),0 6px 14px rgba(15,23,42,.04);
}
.cases-tools input:hover,.cases-tools select:hover{border-color:color-mix(in srgb,var(--accent) 34%,var(--border-default));box-shadow:0 1px 0 rgba(255,255,255,.18),0 8px 18px rgba(15,23,42,.06)}
.cases-tools input:focus,.cases-tools select:focus{outline:none;border-color:var(--accent);background:color-mix(in srgb,var(--bg-input) 94%,white 6%);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent),0 10px 20px rgba(15,23,42,.08)}
.cases-tools .chart-action-btn,.cases-tools .btn.cases-reset-btn{
  min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;padding:9px 12px;font-size:.78rem
}
.cases-tools .cases-action-group label{margin-bottom:7px}
.cases-toolbar-badges:empty{display:none}

.admin-case-table col.col-case-id,.admin-case-table col.col-date,.admin-case-table col.col-country{width:118px}
.admin-case-table col.col-actions{width:170px}
.admin-case-table col.col-perpetrator{width:220px}
.admin-case-table th:nth-child(2),.admin-case-table td:nth-child(2),
.admin-case-table th:nth-child(1),.admin-case-table td:nth-child(1),
.admin-case-table th:nth-child(3),.admin-case-table td:nth-child(3){white-space:nowrap}
[data-theme="dark"] .splash-hero{background:linear-gradient(180deg,rgba(18,30,47,.98),rgba(15,23,42,.94));border-color:rgba(127,160,204,.24);box-shadow:0 14px 30px rgba(0,0,0,.28)}
[data-theme="dark"] .splash-nav-card{background:linear-gradient(180deg,rgba(17,24,39,.92),rgba(15,23,42,.96));border-color:rgba(127,160,204,.22)}
[data-theme="dark"] .splash-nav-card:hover{box-shadow:0 16px 32px rgba(0,0,0,.34)}
[data-theme="dark"] .about-acknowledgment{background:rgba(17,24,39,.82);border-color:rgba(127,160,204,.22)}
[data-theme="dark"] .fiveeyes-burden-bar-card{background:rgba(17,24,39,.82);border-color:rgba(127,160,204,.22)}


.controls-bar .control-group input[type="search"],
.controls-bar .control-group input[type="time"],
.controls-bar .control-group input[type="number"],
.controls-bar .control-group input[type="text"],
.controls-bar .control-group select,
.test-controls-grid .control-group input,
.test-controls-grid .control-group select,
.explorer-controls .control-group input,
.explorer-controls .control-group select,
.cases-tools .control-group input,
.cases-tools .control-group select{
  width:100%;
  min-height:44px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid color-mix(in srgb, var(--accent) 10%, var(--border-default));
  background:var(--bg-input);
  color:var(--text-primary);
  font-size:.84rem;
  font-family:var(--font-body);
  box-shadow:0 1px 0 rgba(255,255,255,.18),0 6px 14px rgba(15,23,42,.04);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease;
  appearance:auto;
}
.controls-bar .control-group input[type="search"]:hover,
.controls-bar .control-group input[type="time"]:hover,
.controls-bar .control-group input[type="number"]:hover,
.controls-bar .control-group input[type="text"]:hover,
.controls-bar .control-group select:hover,
.test-controls-grid .control-group input:hover,
.test-controls-grid .control-group select:hover,
.explorer-controls .control-group input:hover,
.explorer-controls .control-group select:hover,
.cases-tools .control-group input:hover,
.cases-tools .control-group select:hover{
  border-color:color-mix(in srgb,var(--accent) 34%,var(--border-default));
  box-shadow:0 1px 0 rgba(255,255,255,.18),0 8px 18px rgba(15,23,42,.06);
}
.controls-bar .control-group input[type="search"]:focus,
.controls-bar .control-group input[type="time"]:focus,
.controls-bar .control-group input[type="number"]:focus,
.controls-bar .control-group input[type="text"]:focus,
.controls-bar .control-group select:focus,
.test-controls-grid .control-group input:focus,
.test-controls-grid .control-group select:focus,
.explorer-controls .control-group input:focus,
.explorer-controls .control-group select:focus,
.cases-tools .control-group input:focus,
.cases-tools .control-group select:focus{
  outline:none;
  border-color:var(--accent);
  background:color-mix(in srgb,var(--bg-input) 94%,white 6%);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%, transparent),0 10px 20px rgba(15,23,42,.08);
  transform:translateY(-1px);
}
.chart-action-btn{
  min-height:40px;
  padding:8px 12px;
  font-size:.78rem;
  font-weight:700;
  border-radius:12px;
}
.splash-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.test-panel{padding-top:8px;}
.test-tool-shell{margin:16px 0 14px;padding:16px;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border-default));border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-surface) 92%,white 8%),color-mix(in srgb,var(--bg-surface-alt) 96%,white 4%));box-shadow:0 10px 24px rgba(15,23,42,.05)}
.test-tool-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:14px;align-items:start;margin-bottom:12px}
.test-tool-kicker,.test-opportunity-kicker{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:5px}
.test-tool-title{margin:0;font-size:1.02rem;line-height:1.3}
.test-tool-subtitle{margin:0;font-size:.86rem;line-height:1.5;color:var(--text-secondary)}
.test-controls-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}
.test-control-card{padding:12px;border:1px solid var(--border-default);border-radius:16px;background:color-mix(in srgb,var(--bg-surface) 92%,white 8%);box-shadow:inset 0 1px 0 rgba(255,255,255,.35)}
.test-summary-grid,.test-comparison-grid,.test-explanation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.test-stat-card,.test-compare-card,.test-explanation-card,.test-opportunity-card{padding:16px;border:1px solid var(--border-default);border-radius:16px;background:var(--bg-surface);box-shadow:var(--shadow-sm)}
.test-stat-kicker{font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px}
.test-stat-row,.test-compare-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:baseline;padding:7px 0;border-bottom:1px solid color-mix(in srgb,var(--border-default) 78%, transparent)}
.test-stat-row:last-child,.test-compare-row:last-child{border-bottom:none}
.test-stat-row span,.test-compare-row span{font-size:.82rem;color:var(--text-secondary)}
.test-stat-row strong,.test-compare-row strong{font-size:.94rem;color:var(--text-primary)}
.test-stat-row em{font-style:normal;font-size:.77rem;color:var(--text-muted);grid-column:1/-1}
.test-compare-card h4,.test-explanation-card h4,.test-opportunity-card h4{margin:0 0 10px;font-size:1rem;line-height:1.32}
.test-compare-note{margin-top:10px;font-size:.84rem;line-height:1.55;color:var(--text-secondary)}
.test-opportunity-card{margin-top:14px}
.test-opportunity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.test-opportunity-metric{padding:12px;border:1px solid var(--border-default);border-radius:14px;background:var(--bg-surface-alt)}
.test-opportunity-metric span{display:block;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:6px}
.test-opportunity-metric strong{font-size:1.25rem;color:var(--text-primary)}
.test-opportunity-reallocate{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-default)}
.test-opportunity-reallocate ul{margin:10px 0 0 18px;padding:0;color:var(--text-secondary)}
.test-opportunity-reallocate li{margin:6px 0;line-height:1.5}
.test-explanation-card p,.test-opportunity-card p{color:var(--text-secondary);line-height:1.65;margin:0 0 10px}
.test-explanation-card--caution{grid-column:1/-1}
.test-explanation-footnote{margin-top:12px;font-size:.82rem;line-height:1.55;color:var(--text-secondary)}
@media (max-width:1080px){
  .splash-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .test-tool-head{grid-template-columns:1fr;}
}
@media (max-width:760px){
  .test-controls-grid,.test-summary-grid,.test-comparison-grid,.test-explanation-grid,.test-opportunity-grid{grid-template-columns:1fr;}
  .splash-card-grid{grid-template-columns:1fr;}
}
[data-theme="dark"] .controls-bar .control-group input[type="search"],
[data-theme="dark"] .controls-bar .control-group input[type="time"],
[data-theme="dark"] .controls-bar .control-group input[type="number"],
[data-theme="dark"] .controls-bar .control-group input[type="text"],
[data-theme="dark"] .controls-bar .control-group select,
[data-theme="dark"] .test-controls-grid .control-group input,
[data-theme="dark"] .test-controls-grid .control-group select,
[data-theme="dark"] .explorer-controls .control-group input,
[data-theme="dark"] .explorer-controls .control-group select,
[data-theme="dark"] .cases-tools .control-group input,
[data-theme="dark"] .cases-tools .control-group select{
  background:rgba(15,23,42,.94);
  border-color:rgba(148,163,184,.22);
  box-shadow:0 10px 20px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04);
}
[data-theme="dark"] .controls-bar .control-group input[type="search"]:hover,
[data-theme="dark"] .controls-bar .control-group input[type="time"]:hover,
[data-theme="dark"] .controls-bar .control-group input[type="number"]:hover,
[data-theme="dark"] .controls-bar .control-group input[type="text"]:hover,
[data-theme="dark"] .controls-bar .control-group select:hover,
[data-theme="dark"] .test-controls-grid .control-group input:hover,
[data-theme="dark"] .test-controls-grid .control-group select:hover,
[data-theme="dark"] .explorer-controls .control-group input:hover,
[data-theme="dark"] .explorer-controls .control-group select:hover,
[data-theme="dark"] .cases-tools .control-group input:hover,
[data-theme="dark"] .cases-tools .control-group select:hover{border-color:rgba(127,160,204,.46)}
[data-theme="dark"] .controls-bar .control-group input[type="search"]:focus,
[data-theme="dark"] .controls-bar .control-group input[type="time"]:focus,
[data-theme="dark"] .controls-bar .control-group input[type="number"]:focus,
[data-theme="dark"] .controls-bar .control-group input[type="text"]:focus,
[data-theme="dark"] .controls-bar .control-group select:focus,
[data-theme="dark"] .test-controls-grid .control-group input:focus,
[data-theme="dark"] .test-controls-grid .control-group select:focus,
[data-theme="dark"] .explorer-controls .control-group input:focus,
[data-theme="dark"] .explorer-controls .control-group select:focus,
[data-theme="dark"] .cases-tools .control-group input:focus,
[data-theme="dark"] .cases-tools .control-group select:focus{background:rgba(19,31,49,.98);box-shadow:0 0 0 4px rgba(112,157,255,.18),0 12px 24px rgba(0,0,0,.34)}
[data-theme="dark"] .test-tool-shell,[data-theme="dark"] .test-stat-card,[data-theme="dark"] .test-compare-card,[data-theme="dark"] .test-explanation-card,[data-theme="dark"] .test-opportunity-card{background:linear-gradient(180deg,rgba(18,30,47,.98),rgba(15,23,42,.94));border-color:rgba(127,160,204,.22);box-shadow:0 14px 30px rgba(0,0,0,.22)}
[data-theme="dark"] .test-control-card,[data-theme="dark"] .test-opportunity-metric{background:rgba(17,24,39,.78);border-color:rgba(127,160,204,.22)}
[data-theme="dark"] .test-tool-subtitle,[data-theme="dark"] .test-stat-row span,[data-theme="dark"] .test-compare-note,[data-theme="dark"] .test-explanation-card p,[data-theme="dark"] .test-opportunity-card p,[data-theme="dark"] .test-explanation-footnote{color:#cbd8e7}


body.splash-entry-active .site-header,
body.splash-entry-active .nav-tabs{display:none}
body.splash-entry-active .site-wrap{padding-top:0}
body.splash-entry-active #tab-splash{padding-top:0}
body.splash-entry-active .splash-panel{padding:clamp(20px,4vw,38px) clamp(16px,3.5vw,28px);min-height:100vh;display:flex;flex-direction:column;justify-content:center;max-width:980px;margin:0 auto}
body.splash-entry-active .splash-hero{padding:0;border:none;background:none;box-shadow:none;text-align:center}
body.splash-entry-active .splash-intro{max-width:72ch;margin:0 auto}
body.splash-entry-active .splash-flags{justify-content:center;margin-top:18px}
body.splash-entry-active .splash-version-marker{text-align:center}
body.splash-entry-active .content-panel.splash-panel{background:none;border:none;box-shadow:none}
body.splash-entry-active .splash-card-grid{margin-top:24px;grid-template-columns:repeat(2,minmax(0,1fr))}
body.splash-entry-active .splash-nav-card{min-height:152px;justify-content:flex-start}
@media (max-width: 760px){body.splash-entry-active .splash-card-grid{grid-template-columns:1fr}}

.explorer-scoreboard-grid,.compare-country-grid,.compare-context-grid{gap:10px}
.stat-card,.compare-stat-card,.context-summary-card,.compare-country-card{padding:12px 13px}
.context-summary-card{min-height:84px}
.compare-stat-card,.compare-stat-card-compact{min-height:74px}
.compare-country-card{padding:14px 14px 13px}
.compare-country-card-head{margin-bottom:8px}
.context-change-lines{gap:3px}
.change-meter{margin-top:8px}

.test-panel .panel-footer{margin-top:16px}
.test-tool-shell{margin:14px 0 12px;padding:14px 14px 12px}
.test-tool-head{gap:10px;margin-bottom:10px}
.test-controls-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.duration-input-pair{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center}
.duration-input-pair span{font-weight:700;color:var(--text-secondary);text-align:center}
.duration-input-pair input{width:100%;text-align:center}
.test-summary-grid,.test-comparison-grid,.test-explanation-grid{gap:12px;margin-top:12px}
.test-stat-card,.test-compare-card,.test-explanation-card,.test-opportunity-card{padding:14px}
.test-three-up{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}
.test-three-up--reallocate{grid-template-columns:repeat(2,minmax(0,1fr))}
.test-three-up-card{padding:10px 11px;border:1px solid var(--border-default);border-radius:14px;background:var(--bg-surface-alt)}
.test-three-up-card span{display:block;font-size:.76rem;line-height:1.4;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:5px}
.test-three-up-card strong{font-size:.92rem;line-height:1.45;color:var(--text-primary)}
.test-visual-stack{display:grid;gap:10px;margin-top:6px}
.test-visual-row{display:grid;gap:6px}
.test-visual-meta{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.test-visual-meta span{font-size:.82rem;color:var(--text-secondary)}
.test-visual-meta strong{font-size:.88rem;color:var(--text-primary)}
.test-visual-bar{height:12px;border-radius:999px;background:color-mix(in srgb,var(--border-default) 55%, transparent);overflow:hidden}
.test-visual-bar span{display:block;height:100%;border-radius:999px;background:var(--accent)}
.test-visual-row.is-country .test-visual-bar span{background:var(--good)}
.test-visual-row.is-a5e .test-visual-bar span{background:var(--warning)}
.test-opportunity-metric em{display:block;margin-top:6px;font-style:normal;font-size:.82rem;line-height:1.5;color:var(--text-secondary)}
@media (max-width: 900px){.test-controls-grid,.test-summary-grid,.test-comparison-grid,.test-explanation-grid,.test-three-up,.test-opportunity-grid{grid-template-columns:1fr}.test-three-up--reallocate{grid-template-columns:1fr}.duration-input-pair{grid-template-columns:1fr auto 1fr}}
[data-theme="dark"] body.splash-entry-active .splash-panel{background:none}
[data-theme="dark"] .test-three-up-card,[data-theme="dark"] .test-opportunity-metric{background:rgba(17,24,39,.78);border-color:rgba(127,160,204,.22)}
[data-theme="dark"] .test-visual-bar{background:rgba(127,160,204,.18)}


:root{
  --control-height:42px;
  --control-radius:12px;
  --control-shadow:0 8px 18px rgba(15,23,42,.05), inset 0 1px 0 rgba(255,255,255,.42);
}
.tab-btn,
.chart-action-btn,
.btn.btn-secondary,
.cases-tools .chart-action-btn,
.cases-tools .btn.cases-reset-btn,
.fiveeyes-export-group .chart-action-btn{
  min-height:40px;
  border-radius:999px;
  font-weight:700;
  letter-spacing:.01em;
}
.chart-action-btn,
.btn.btn-secondary{
  padding:10px 16px;
  box-shadow:0 8px 18px rgba(15,23,42,.06);
}
.controls-bar .control-group input[type="search"],
.controls-bar .control-group input[type="time"],
.controls-bar .control-group input[type="number"],
.controls-bar .control-group input[type="text"],
.controls-bar .control-group select,
.test-controls-grid .control-group input,
.test-controls-grid .control-group select,
.explorer-controls .control-group input,
.explorer-controls .control-group select,
.cases-tools .control-group input,
.cases-tools .control-group select{
  min-height:var(--control-height);
  border-radius:var(--control-radius);
  box-shadow:var(--control-shadow);
}
.splash-nav-card{
  min-height:158px;
  gap:10px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}
.splash-nav-card:hover{transform:translateY(-2px)}
body.splash-entry-active .splash-card-grid{gap:16px}
.cases-toolbar-shell{
  padding:14px 14px 12px;
  border-radius:16px;
}
.cases-toolbar-header{
  align-items:end;
  margin-bottom:10px;
  gap:10px 14px;
}
.cases-toolbar-title{font-size:.98rem}
.cases-toolbar-subtitle{
  font-size:.86rem;
  line-height:1.45;
  max-width:68ch;
}
.cases-toolbar-badges{gap:6px}
.cases-toolbar-badge{
  padding:5px 9px;
  font-size:.68rem;
}
.cases-tools.controls-bar{
  display:grid;
  grid-template-columns:minmax(240px,1.45fr) repeat(4,minmax(120px,.72fr)) auto;
  gap:10px;
  align-items:end;
}
.cases-tools .control-group{
  gap:5px;
  min-width:0;
}
.cases-tools .control-group label{
  margin-bottom:0;
  font-size:.68rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--text-muted);
}
.cases-tools input,
.cases-tools select{
  min-width:0;
  min-height:42px;
  padding:0 12px;
  border-radius:12px;
}
.cases-search-group input{padding-inline:13px}
.cases-action-group{min-width:188px}
.cases-action-stack{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.cases-tools .chart-action-btn,
.cases-tools .btn.cases-reset-btn{
  width:100%;
  min-height:42px;
  margin:0;
}
.cases-table-meta{
  gap:10px 18px;
  font-size:.85rem;
}
.case-record-card{
  border-radius:15px;
  padding:16px 18px;
}
.case-record-summary{
  max-width:88ch;
  line-height:1.58;
}
.test-panel .overview-note.test-intro-note{
  max-width:78ch;
  margin-bottom:12px;
}
.test-tool-shell{
  margin:12px 0;
  padding:14px;
  border-radius:16px;
}
.test-tool-title{font-size:1rem}
.test-tool-subtitle{
  font-size:.85rem;
  line-height:1.5;
  max-width:54ch;
}
.test-controls-grid{
  grid-template-columns:minmax(180px,.8fr) repeat(2,minmax(240px,1fr));
  gap:12px;
}
.test-control-card{
  padding:11px 12px;
  border-radius:14px;
}
.test-summary-grid,
.test-comparison-grid,
.test-explanation-grid{gap:12px}
.test-stat-card,.test-compare-card,.test-explanation-card,.test-opportunity-card{
  border-radius:15px;
  padding:14px;
}
.test-three-up-card,
.test-opportunity-metric{
  border-radius:13px;
}
.test-visual-bar{height:10px}
.fiveeyes-controls-wrap,
.explorer-controls-wrap,
.module-card,
.chart-card{
  border-radius:18px;
}
.fiveeyes-controls-subtitle,
.chart-note,
.overview-note{line-height:1.55}
.mini-summary-card canvas{max-height:250px}
.mini-touch-legend{display:none !important}
@media (max-width:1120px){
  .cases-tools.controls-bar{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .cases-tools .control-group-wide{grid-column:1 / -1}
  .cases-tools .cases-action-group{grid-column:1 / -1}
}
@media (max-width:760px){
  .cases-toolbar-shell{padding:12px}
  .cases-tools.controls-bar{grid-template-columns:1fr;gap:9px}
  .cases-tools .control-group-wide,
  .cases-tools .cases-action-group{grid-column:auto}
  .cases-action-stack{grid-template-columns:1fr}
  .case-record-card{padding:14px}
  .test-controls-grid{grid-template-columns:1fr}
  body.splash-entry-active .splash-card-grid{grid-template-columns:1fr}
}
[data-theme="dark"] .chart-action-btn,
[data-theme="dark"] .btn.btn-secondary{
  box-shadow:0 10px 22px rgba(0,0,0,.28);
}
[data-theme="dark"] .cases-toolbar-shell,
[data-theme="dark"] .test-tool-shell,
[data-theme="dark"] .test-stat-card,
[data-theme="dark"] .test-compare-card,
[data-theme="dark"] .test-explanation-card,
[data-theme="dark"] .test-opportunity-card{
  border-color:rgba(127,160,204,.22);
}
[data-theme="dark"] .cases-tools input,
[data-theme="dark"] .cases-tools select,
[data-theme="dark"] .test-controls-grid .control-group input,
[data-theme="dark"] .test-controls-grid .control-group select{
  box-shadow:0 8px 18px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.04);
}



.cases-toolbar-shell{padding:12px 14px 10px;border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-light) 18%,var(--panel-bg)),var(--panel-bg));}
.cases-toolbar-header{margin-bottom:8px;gap:10px}.cases-toolbar-subtitle{font-size:.84rem;line-height:1.4;max-width:56ch}.cases-toolbar-badges{display:none !important}
.cases-tools.controls-bar{grid-template-columns:minmax(280px,1.65fr) repeat(4,minmax(110px,.8fr)) minmax(180px,1fr);gap:8px;align-items:end}.cases-tools .control-group{gap:4px}.cases-tools .control-group label{font-size:.66rem;letter-spacing:.08em}.cases-tools input,.cases-tools select{min-height:38px;padding:0 11px;border-radius:11px;font-size:.89rem}.cases-search-group input{padding-inline:12px}.cases-action-stack{gap:6px}.cases-tools .chart-action-btn,.cases-tools .btn.cases-reset-btn{min-height:38px;font-size:.82rem;border-radius:11px}.cases-table-meta{margin-top:10px;font-size:.82rem;gap:8px 14px}.cases-chart-note{margin-top:10px}.cases-kpis .stat-card{padding:14px 14px 12px}.cases-catalogue{gap:10px}.case-record-card{padding:15px 16px;border-radius:14px}
.chart-shell.chart-shell-mini{display:flex;justify-content:center;align-items:center}.chart-shell.chart-shell-mini canvas{width:100% !important;max-width:220px;max-height:220px;height:auto !important;aspect-ratio:1/1;display:block;margin:0 auto}.mini-summary-card{padding:14px 14px 12px}.mini-comparator-list{margin-top:10px}
#tab-air-explorer .overview-note,#tab-fiveeyes-explorer .overview-note.compare-intro,#tab-test-yourself .overview-note.test-intro-note{display:none !important}#tab-air-explorer .incident-method-note,#tab-air-explorer [data-air-status]{display:none !important}
.test-tool-shell{padding:13px 14px;border-radius:16px}.test-tool-head{align-items:end}.test-tool-subtitle{font-size:.82rem;max-width:34ch}.test-controls-grid{grid-template-columns:minmax(180px,.8fr) repeat(2,minmax(220px,1fr));gap:10px}.test-control-card{padding:10px 11px;border-radius:13px}.test-control-card label{font-size:.75rem;line-height:1.35}.duration-input-pair input{min-height:40px}.test-summary-grid,.test-comparison-grid{gap:10px}.test-stat-card,.test-compare-card,.test-opportunity-card{padding:13px;border-radius:14px}.test-opportunity-card{margin-top:10px}.test-opportunity-grid{margin:12px 0 0;gap:10px}.test-opportunity-metric{padding:11px 12px;border-radius:13px}.test-opportunity-metric em{margin-top:5px}.test-three-up-card strong{font-size:1rem}
.content-panel--reference{padding:22px}.glossary-intro-note{margin-bottom:12px}.glossary-card-list{display:grid;gap:10px}.glossary-item{padding:12px 14px;border-radius:14px;background:var(--bg-elevated)}.glossary-term{font-family:var(--font-display);font-weight:700;font-size:.94rem;margin-bottom:6px}.glossary-definition{font-size:.84rem;line-height:1.55;color:var(--text-secondary)}
@media (max-width:1100px){.cases-tools.controls-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.cases-search-group,.cases-action-group{grid-column:1 / -1}.test-controls-grid{grid-template-columns:1fr}}
@media (max-width:760px){.cases-toolbar-shell{padding:11px 12px}.cases-tools.controls-bar{grid-template-columns:1fr;gap:8px}.cases-search-group,.cases-action-group{grid-column:auto}.cases-action-stack{grid-template-columns:1fr 1fr}.test-opportunity-grid{grid-template-columns:1fr}.test-tool-shell{padding:12px}.chart-shell.chart-shell-mini canvas{max-width:190px}}
[data-theme="dark"] .glossary-item{background:rgba(17,24,39,.9);border-color:rgba(127,160,204,.22)}[data-theme="dark"] .cases-toolbar-shell{background:linear-gradient(180deg,rgba(18,30,47,.96),rgba(15,23,42,.94));border-color:rgba(127,160,204,.22)}


.cases-note{margin-bottom:12px}
.cases-toolbar-header{margin-bottom:6px}
.cases-toolbar-title{font-size:.96rem;letter-spacing:.01em}
.cases-toolbar-subtitle{font-size:.8rem;line-height:1.35;max-width:46ch}
.cases-tools.controls-bar{grid-template-columns:minmax(260px,1.9fr) repeat(4,minmax(108px,.78fr)) minmax(170px,.95fr);gap:7px}
.cases-tools .control-group{gap:3px}
.cases-tools .control-group label{font-size:.64rem;letter-spacing:.09em}
.cases-tools input,.cases-tools select{min-height:36px;padding:0 10px;font-size:.86rem}
.cases-tools .chart-action-btn,.cases-tools .btn.cases-reset-btn{min-height:36px;padding:0 12px;font-size:.8rem}
.cases-table-meta{margin-top:8px;padding-top:2px}
.test-tool-kicker{margin-bottom:4px}
.test-tool-title{letter-spacing:.01em}
.test-tool-subtitle{max-width:24ch}
.test-controls-grid{grid-template-columns:minmax(170px,.74fr) repeat(2,minmax(210px,1fr));gap:9px}
.test-control-card{padding:9px 10px}
.test-control-card label{font-size:.73rem}
.duration-input-pair input{min-height:38px}
.test-stat-kicker,.test-opportunity-kicker{font-size:.68rem}
.test-opportunity-card h4{font-size:1rem;line-height:1.3}
.glossary-card-list{gap:8px}
.glossary-item{padding:11px 13px;border-radius:13px}
.glossary-term{font-size:.92rem}
.glossary-definition{font-size:.83rem;line-height:1.52}
@media (max-width:980px){
  .cases-tools.controls-bar{grid-template-columns:minmax(240px,1.4fr) repeat(2,minmax(120px,1fr)) repeat(2,minmax(110px,.9fr));}
  .cases-action-group{grid-column:1 / -1}
  .cases-action-stack{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .cases-toolbar-subtitle{max-width:none}
  .cases-tools.controls-bar{grid-template-columns:1fr}
  .cases-action-group{grid-column:auto}
  .test-controls-grid{grid-template-columns:1fr}
}


.cases-toolbar-shell{padding:11px 12px 10px;border-radius:16px}
.cases-toolbar-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:end;margin-bottom:8px}
.cases-toolbar-header{margin-bottom:0;min-width:0}
.cases-toolbar-title{font-size:.95rem;line-height:1.2}
.cases-toolbar-subtitle{font-size:.79rem;line-height:1.32;max-width:44ch}
.cases-toolbar-utility{display:flex;justify-content:flex-end;align-items:flex-end}
.cases-catalogue-btn{min-height:34px;padding:0 12px;border-radius:11px;font-size:.75rem;box-shadow:none;white-space:nowrap}
.cases-filter-layout{display:grid;grid-template-columns:minmax(250px,1.25fr) minmax(0,1.95fr) auto;gap:8px 10px;align-items:end}
.cases-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 10px;min-width:0}
.cases-tools .control-group,.cases-filter-layout .control-group{gap:3px;min-width:0}
.cases-tools .control-group label,.cases-filter-layout .control-group label{margin-bottom:0;font-size:.63rem;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted)}
.cases-search-group input,.cases-filter-grid select{width:100%}
.cases-search-group input,.cases-filter-grid select,.cases-action-stack .chart-action-btn,.cases-action-stack .btn.cases-reset-btn{min-height:34px;height:34px;padding:0 10px;border-radius:10px;font-size:.82rem;box-shadow:none}
.cases-search-group input{padding-inline:11px}
.cases-action-group{min-width:136px}
.cases-action-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.cases-tools .chart-action-btn,.cases-tools .btn.cases-reset-btn,.cases-action-stack .chart-action-btn,.cases-action-stack .btn.cases-reset-btn{margin:0;font-size:.76rem;font-weight:700;letter-spacing:.01em}
.cases-table-meta{margin-top:7px;font-size:.8rem;gap:7px 12px}
.cases-chart-note{margin-top:8px}
[data-theme="dark"] .cases-catalogue-btn,[data-theme="dark"] .cases-action-stack .chart-action-btn,[data-theme="dark"] .cases-action-stack .btn.cases-reset-btn{box-shadow:none}
@media (max-width:1180px){
  .cases-filter-layout{grid-template-columns:minmax(220px,1.2fr) minmax(0,1fr);}
  .cases-action-group{grid-column:1 / -1;min-width:0}
}
@media (max-width:920px){
  .cases-filter-layout{grid-template-columns:1fr;gap:8px}
  .cases-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cases-toolbar-top{grid-template-columns:1fr}
  .cases-toolbar-utility{justify-content:flex-start}
}
@media (max-width:760px){
  .cases-toolbar-shell{padding:11px}
  .cases-filter-grid{grid-template-columns:1fr}
  .cases-action-stack{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cases-catalogue-btn{width:100%}
}
.about-flow-block p + p{margin-top:10px}
.about-acknowledgment{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
[data-theme="dark"] .about-acknowledgment{background:transparent;border-color:transparent}

.duration-input-pair--compact{grid-template-columns:minmax(0,74px) auto minmax(0,74px) auto;gap:6px;align-items:center}
.duration-input-pair--compact .duration-input-box{min-height:34px !important;height:34px;padding:0 8px;font-size:.82rem}
.duration-unit-label{font-size:.78rem;font-weight:700;color:var(--text-secondary);white-space:nowrap}
.test-average-delta{display:block;margin-top:6px;font-size:.76rem;line-height:1.35;color:var(--text-secondary);font-style:normal}
.test-three-up-card--user{border-color:color-mix(in srgb,var(--accent) 30%,var(--border-default))}
.test-visual-stack{gap:12px;margin-top:10px}
.test-visual-row{gap:7px}
.test-visual-bar{position:relative;height:12px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--border-default) 72%, transparent)}
.test-visual-bar span{display:block;height:100%;min-width:0;border-radius:999px}
.test-opportunity-summary,.test-opportunity-subline,.test-opportunity-question,.test-threshold-copy{margin:8px 0 0}
.test-opportunity-question{font-weight:700;color:var(--text-primary)}
.test-opportunity-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.test-opportunity-metric span{line-height:1.35}
.test-threshold-card{margin-top:10px;padding:13px;border:1px solid var(--border-default);border-radius:14px;background:var(--card-bg);box-shadow:var(--card-shadow)}
.test-threshold-status{margin-top:10px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--accent) 9%, transparent);font-weight:700;color:var(--text-primary)}
.chart-shell.chart-shell-mini{display:flex;justify-content:center;align-items:center}
#air-incident-top-targets-chart,#air-incident-top-ideologies-chart{width:100% !important;max-width:none !important;height:190px !important;aspect-ratio:auto !important}
#air-incident-top-immigration-chart,#air-incident-top-religion-chart{width:100% !important;max-width:220px !important;height:220px !important;aspect-ratio:1 / 1 !important}
.chart-shell.chart-shell-context-mini canvas{height:190px !important}
.fiveeyes-actions-group{min-width:132px}
.fiveeyes-action-stack{display:grid;grid-template-columns:1fr;gap:6px}
.fiveeyes-actions-group .chart-action-btn{min-height:34px;height:34px;padding:0 10px;border-radius:10px;box-shadow:none;font-size:.76rem;font-weight:700;letter-spacing:.01em}
.fiveeyes-actions-group label{margin-bottom:0;font-size:.63rem;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted)}
@media (max-width:900px){.test-opportunity-grid{grid-template-columns:1fr}.duration-input-pair--compact{grid-template-columns:minmax(0,68px) auto minmax(0,68px) auto}}
@media (max-width:760px){.duration-input-pair--compact{grid-template-columns:minmax(0,64px) auto minmax(0,64px) auto;gap:5px}#air-incident-top-targets-chart,#air-incident-top-ideologies-chart{height:180px !important}#air-incident-top-immigration-chart,#air-incident-top-religion-chart{height:190px !important}.chart-shell.chart-shell-context-mini canvas{height:170px !important}}

#air-incident-top-immigration-chart,
#air-incident-top-religion-chart {
  display: block !important;
  width: min(100%, 220px) !important;
  max-width: 220px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 auto !important;
}

#air-incident-top-immigration-chart + .chartjs-render-monitor,
#air-incident-top-religion-chart + .chartjs-render-monitor {
  aspect-ratio: 1 / 1 !important;
}

.chart-shell.chart-shell-mini {
  align-items: center;
}

@media (max-width: 760px) {
  #air-incident-top-immigration-chart,
  #air-incident-top-religion-chart {
    max-width: 190px !important;
  }
}


#tab-air-explorer .explorer-mini-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
#tab-air-explorer .mini-summary-card {
  min-width: 0;
}
#tab-air-explorer .chart-shell.chart-shell-mini-target canvas {
  height: 180px !important;
}
#tab-air-explorer .chart-shell.chart-shell-mini-ideology canvas {
  height: 220px !important;
}
#tab-air-explorer .mini-summary-card--donut .chart-shell.chart-shell-mini-donut {
  width: min(100%, 250px);
  aspect-ratio: 1 / 1;
  margin: 0 auto;
}
#tab-air-explorer .mini-summary-card--donut .chart-shell.chart-shell-mini-donut canvas {
  width: 100% !important;
  height: 100% !important;
}
#tab-air-explorer .mini-summary-card--donut .mini-comparator-list {
  margin-top: 12px;
}
@media (max-width: 1280px) {
  #tab-air-explorer .explorer-mini-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  #tab-air-explorer .explorer-mini-grid { grid-template-columns: 1fr; }
  #tab-air-explorer .chart-shell.chart-shell-mini-ideology canvas { height: 210px !important; }
  #tab-air-explorer .mini-summary-card--donut .chart-shell.chart-shell-mini-donut { width: min(100%, 230px); }
}


:root{--warning:var(--warn)}
[data-theme="dark"]{--warning:var(--warn)}
.test-visual-row.is-a5e .test-visual-bar span{background:var(--warning)}
#tab-air-explorer .mini-summary-grid{align-items:start}
#tab-air-explorer .mini-summary-card{overflow:hidden}
#tab-air-explorer .chart-shell.chart-shell-mini-target,
#tab-air-explorer .chart-shell.chart-shell-mini-ideology{width:100%;min-height:220px;display:block}
#tab-air-explorer .chart-shell.chart-shell-mini-target canvas,
#tab-air-explorer .chart-shell.chart-shell-mini-ideology canvas,
#air-incident-top-targets-chart,
#air-incident-top-ideologies-chart{width:100% !important;max-width:none !important;min-width:0 !important;height:220px !important;max-height:none !important;aspect-ratio:auto !important;display:block;margin:0 auto}
#tab-air-explorer .mini-summary-card--donut .chart-shell.chart-shell-mini-donut{width:min(100%,240px) !important;min-width:220px;height:auto !important;aspect-ratio:1 / 1 !important;display:flex !important;justify-content:center;align-items:center;margin:0 auto}
#tab-air-explorer .mini-summary-card--donut .chart-shell.chart-shell-mini-donut canvas,
#air-incident-top-immigration-chart,
#air-incident-top-religion-chart{width:100% !important;max-width:240px !important;height:auto !important;aspect-ratio:1 / 1 !important;display:block;margin:0 auto}
@media (max-width:760px){#tab-air-explorer .chart-shell.chart-shell-mini-target canvas,#tab-air-explorer .chart-shell.chart-shell-mini-ideology canvas,#air-incident-top-targets-chart,#air-incident-top-ideologies-chart{height:190px !important}#tab-air-explorer .mini-summary-card--donut .chart-shell.chart-shell-mini-donut{width:min(100%,210px) !important;min-width:0}}


.chart-shell{position:relative;width:100%}
.chart-shell canvas{display:block;max-width:100%}
#tab-air-explorer .chart-shell.chart-shell-mini-target,
#tab-air-explorer .chart-shell.chart-shell-mini-ideology{min-height:224px;height:224px}
#tab-air-explorer .chart-shell.chart-shell-mini-target canvas,
#tab-air-explorer .chart-shell.chart-shell-mini-ideology canvas{width:100% !important;height:224px !important;min-height:224px !important;max-height:224px !important}
#tab-air-explorer .chart-shell.chart-shell-mini-donut{display:flex;align-items:center;justify-content:center;min-height:236px;height:236px}
#tab-air-explorer .chart-shell.chart-shell-mini-donut canvas{width:100% !important;height:220px !important;min-height:220px !important;max-height:220px !important;max-width:220px !important;aspect-ratio:1 / 1}
#tab-air-explorer .context-mini-grid .mini-summary-card{min-height:324px}
#tab-air-explorer .chart-shell.chart-shell-context-mini{min-height:220px;height:220px}
#tab-air-explorer .chart-shell.chart-shell-context-mini canvas{width:100% !important;height:220px !important;min-height:220px !important;max-height:220px !important}
@media (max-width:900px){
  #tab-air-explorer .chart-shell.chart-shell-mini-target,
  #tab-air-explorer .chart-shell.chart-shell-mini-ideology{min-height:208px;height:208px}
  #tab-air-explorer .chart-shell.chart-shell-mini-target canvas,
  #tab-air-explorer .chart-shell.chart-shell-mini-ideology canvas{height:208px !important;min-height:208px !important;max-height:208px !important}
  #tab-air-explorer .chart-shell.chart-shell-context-mini{min-height:198px;height:198px}
  #tab-air-explorer .chart-shell.chart-shell-context-mini canvas{height:198px !important;min-height:198px !important;max-height:198px !important}
}
@media (max-width:700px){
  #tab-air-explorer .chart-shell.chart-shell-mini-donut{min-height:216px;height:216px}
  #tab-air-explorer .chart-shell.chart-shell-mini-donut canvas{height:196px !important;min-height:196px !important;max-height:196px !important;max-width:196px !important}
  #tab-air-explorer .context-mini-grid .mini-summary-card{min-height:300px}
}


.figure-grid--two {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  align-items: start;
}
.figure-grid--two .content-figure {
  max-width: 430px;
  width: 100%;
  justify-self: center;
}
.content-figure {
  overflow: hidden;
}
.content-figure img {
  width: auto;
  max-width: 100%;
  max-height: 320px;
  margin: 0 auto;
  object-fit: contain;
  box-shadow: 0 1px 0 rgba(15,23,42,.03);
}
.content-figure--single {
  max-width: 620px;
}
.content-figure--single img {
  max-height: 360px;
}
.content-panel,
.content-panel h2,
.content-panel h3,
.content-panel p,
.figure-caption {
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.glossary-card-list {
  margin-top: 14px;
}
.tab-btn:focus-visible,
.theme-toggle:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
[data-theme="dark"] .content-panel {
  background: linear-gradient(180deg, rgba(18,30,47,.98), rgba(15,23,42,.94));
  border-color: rgba(127,160,204,.24);
}
[data-theme="dark"] .content-figure {
  background: linear-gradient(180deg, rgba(17,24,39,.94), rgba(15,23,42,.92));
  border-color: rgba(127,160,204,.22);
  box-shadow: 0 14px 28px rgba(0,0,0,.24);
}
[data-theme="dark"] .content-figure img {
  background: rgba(255,255,255,.96);
}
[data-theme="dark"] .figure-caption {
  color: #d7e3f1;
}
[data-theme="dark"] .tab-btn:not(.active) {
  color: #dbe7f5;
}
[data-theme="dark"] .tab-btn.active {
  color: #ffffff;
  background: rgba(127,160,204,.18);
  border-color: rgba(127,160,204,.34);
}
[data-theme="dark"] .theme-toggle {
  background: rgba(17,24,39,.92);
  border-color: rgba(127,160,204,.24);
  color: #eef6ff;
}
[data-theme="dark"] .theme-toggle:hover {
  background: rgba(24,39,61,.96);
  border-color: rgba(127,160,204,.38);
}
@media (max-width: 760px) {
  .content-figure--single { max-width: 100%; }
  .content-figure img { max-height: 260px; }
  .content-figure--single img { max-height: 300px; }
  .figure-grid--two .content-figure { max-width: 100%; }
}


.content-panel--about .lead {
  max-width: 86ch;
}
.content-panel--about h3 {
  color: var(--text-primary);
}
.content-panel--about .about-figure {
  margin: 14px auto 18px;
  max-width: 560px;
  background: transparent;
  border: 1px solid var(--border);
  box-shadow: none;
}
.content-panel--about .about-figure img {
  max-height: 250px;
}
.content-panel--about .figure-caption {
  font-size: .8rem;
}
[data-theme="dark"] .content-panel--about .about-figure {
  background: rgba(15,23,42,.18);
  border-color: rgba(127,160,204,.20);
  box-shadow: none;
}
@media (max-width: 700px) {
  .content-panel--about .about-figure {
    max-width: 100%;
  }
  .content-panel--about .about-figure img {
    max-height: 220px;
  }
}




.content-panel--about .about-figure {
  max-width: 500px;
}
.content-panel--about .about-figure img {
  max-height: 210px;
}
#tab-methodology .figure-grid--two {
  align-items: stretch;
}
#tab-methodology .figure-grid--two .content-figure {
  max-width: 430px;
  width: 100%;
  min-height: 330px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
#tab-methodology .figure-grid--two .content-figure img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 200px;
  margin: 0 auto 8px;
  object-fit: contain;
}
#tab-methodology .figure-grid--two .figure-caption {
  margin-top: auto;
}
@media (max-width: 700px) {
  .content-panel--about .about-figure img {
    max-height: 190px;
  }
  #tab-methodology .figure-grid--two .content-figure {
    min-height: auto;
  }
  #tab-methodology .figure-grid--two .content-figure img {
    max-height: 180px;
  }
}


.content-panel--about .about-figure {
  max-width: 500px;
}
.content-panel--about .about-figure img {
  max-height: 210px;
}
#tab-methodology .figure-grid--two {
  align-items: stretch;
}
#tab-methodology .figure-grid--two .content-figure {
  max-width: 430px;
  width: 100%;
  min-height: 330px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
#tab-methodology .figure-grid--two .content-figure img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 200px;
  margin: 0 auto 8px;
  object-fit: contain;
}
#tab-methodology .figure-grid--two .figure-caption {
  margin-top: auto;
}
@media (max-width: 700px) {
  .content-panel--about .about-figure img {
    max-height: 190px;
  }
  #tab-methodology .figure-grid--two .content-figure {
    min-height: auto;
  }
  #tab-methodology .figure-grid--two .content-figure img {
    max-height: 180px;
  }
}


.content-panel--about .about-figure {
  max-width: 440px;
}
.content-panel--about .about-figure img {
  max-height: 176px;
}
#tab-methodology .figure-grid--two {
  align-items: stretch;
  gap: 16px;
}
#tab-methodology .figure-grid--two .content-figure {
  max-width: 400px;
  min-height: 286px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
#tab-methodology .figure-grid--two .content-figure img {
  max-height: 168px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  margin: 0 auto 8px;
}
#tab-methodology .figure-grid--two .figure-caption {
  margin-top: auto;
}
@media (max-width: 700px) {
  .content-panel--about .about-figure img {
    max-height: 156px;
  }
  #tab-methodology .figure-grid--two .content-figure {
    min-height: auto;
    max-width: 100%;
  }
  #tab-methodology .figure-grid--two .content-figure img {
    max-height: 150px;
  }
}


.content-panel--about .about-figure{
  max-width:460px;
  margin:14px auto 18px;
}
.content-panel--about .about-figure img{
  max-height:185px;
  width:auto;
}
#tab-methodology .figure-grid--two{
  align-items:stretch;
  gap:18px;
}
#tab-methodology .figure-grid--two .content-figure{
  max-width:420px;
  min-height:300px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
#tab-methodology .figure-grid--two .content-figure img{
  max-height:180px;
  width:auto;
  object-fit:contain;
}
#tab-methodology .figure-grid--two .figure-caption{
  margin-top:auto;
}
.test-threshold-status.is-within{
  background:color-mix(in srgb,var(--success, #2e7d32) 12%, transparent);
}
.test-threshold-status.is-above{
  background:color-mix(in srgb,var(--warn) 12%, transparent);
}
.test-threshold-status.is-high{
  background:color-mix(in srgb,var(--danger, #b42318) 12%, transparent);
}
.test-threshold-status span{
  display:block;
  margin-top:4px;
  font-weight:500;
}
@media (max-width:700px){
  .content-panel--about .about-figure img{max-height:198px;}
  #tab-methodology .figure-grid--two .content-figure{min-height:auto;}
  #tab-methodology .figure-grid--two .content-figure img{max-height:198px;}
}
/* ===== v1.5.2 analytical refinement overrides ===== */
.about-findings-grid,
.explorer-findings-strip{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:14px;
  margin:16px 0 20px;
}
.about-finding-card,
.explorer-finding-card{
  border:1px solid var(--border-default);
  background:var(--panel-bg);
}
.ref-group{margin-top:18px}
.ref-group-title{margin:0 0 10px;font-size:.92rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}
.ref-group-list{display:grid;gap:8px}
.content-panel--about .about-figure{
  max-width:560px;
  margin:16px auto 22px;
}
.content-panel--about .about-figure img{
  max-height:288px;
  width:auto;
}
#tab-methodology .figure-grid--two .content-figure{
  min-height:300px;
}
#tab-methodology .figure-grid--two .content-figure img{
  max-height:228px;
}
@media (max-width:760px){
  .content-panel--about .about-figure{max-width:100%}
  .content-panel--about .about-figure img{max-height:228px}
  .about-findings-grid,
  .explorer-findings-strip{grid-template-columns:1fr}
  #tab-methodology .figure-grid--two .content-figure{min-height:auto}
}

/* ===== v2.2.0 about/methodology polish overrides ===== */
.content-panel--about p,
.content-panel--about .lead{
  text-align: justify;
  text-justify: inter-word;
}
.content-panel--about .about-figure{
  max-width: 1000px;
  margin: 18px auto 24px;
}
.content-panel--about .about-figure img{
  max-height: 576px;
  width: auto;
  max-width: 100%;
}
#tab-methodology .figure-grid--two .content-figure{
  max-width: 100%;
  min-height: 360px;
}
#tab-methodology .figure-grid--two .content-figure img{
  max-height: 456px;
  width: auto;
  max-width: 100%;
}
@media (max-width: 900px){
  .content-panel--about .about-figure img{max-height: 420px;}
  #tab-methodology .figure-grid--two .content-figure img{max-height: 340px;}
}
@media (max-width: 760px){
  .content-panel--about p,
  .content-panel--about .lead{
    text-align: left;
  }
  .content-panel--about .about-figure img{max-height: 300px;}
  #tab-methodology .figure-grid--two .content-figure{min-height: auto;}
  #tab-methodology .figure-grid--two .content-figure img{max-height: 260px;}
}


/* ===== 2.0.1 final baseline text-page alignment ===== */
.content-page-meta{
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 14px;
  font-size:.78rem;
  line-height:1.4;
  color:var(--text-muted);
  text-align:right;
}
#tab-about .content-panel,
#tab-methodology .content-panel{
  text-align:left;
}
#tab-about .content-panel h2,
#tab-about .content-panel h3,
#tab-methodology .content-panel h2,
#tab-methodology .content-panel h3,
#tab-about .content-panel .figure-caption,
#tab-methodology .content-panel .figure-caption{
  text-align:left;
}
#tab-about .content-panel p,
#tab-about .content-panel .lead,
#tab-methodology .content-panel p,
#tab-methodology .content-panel .lead{
  text-align:justify;
  text-align-last:left;
  text-justify:inter-word;
  margin-left:0;
  margin-right:0;
  max-width:none;
}
@media (max-width:760px){
  .content-page-meta{justify-content:flex-start;text-align:left;}
  #tab-about .content-panel,
  #tab-methodology .content-panel,
  #tab-about .content-panel h2,
  #tab-about .content-panel h3,
  #tab-about .content-panel p,
  #tab-about .content-panel .lead,
  #tab-about .content-panel .figure-caption,
  #tab-methodology .content-panel h2,
  #tab-methodology .content-panel h3,
  #tab-methodology .content-panel p,
  #tab-methodology .content-panel .lead,
  #tab-methodology .content-panel .figure-caption{
    text-align:left;
    text-align-last:left;
  }
}


/* ===== 2.0.2 final cases-page width alignment ===== */
#tab-cases,
#tab-cases .cases-toolbar-shell,
#tab-cases .cases-kpis,
#tab-cases .cases-table-meta,
#tab-cases .cases-catalogue,
#tab-cases .case-record-card,
#tab-cases .case-record-screen,
#tab-cases .case-record-print{
  width:100%;
  max-width:none;
}
#tab-cases .case-record-summary,
#tab-cases .cases-toolbar-subtitle{
  max-width:none;
}

[data-theme="dark"] .splash-version-marker{color:#dbe7f5}

/* Admin add-case declutter polish */
.admin-case-form-card{padding:18px 18px 16px}
.admin-form-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}
.admin-form-tag{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;border:1px solid var(--border-default);background:var(--bg-surface-alt);color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.admin-form-note{margin:10px 0 14px;padding:10px 12px;border-radius:12px;border:1px solid var(--border-default);background:var(--bg-surface-alt);color:var(--text-secondary);font-size:.82rem}
.admin-form-section{margin-top:14px}
.admin-form-section h3{margin:0 0 10px;font-size:.94rem;letter-spacing:.02em}
.admin-form-section--auto{padding:12px;border:1px dashed var(--border-default);border-radius:14px;background:color-mix(in srgb,var(--bg-surface-alt) 85%, transparent)}
.admin-form-grid--core{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-form-grid--auto{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-form-grid--advanced{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}
.admin-field-readonly input,.admin-field-readonly textarea,.admin-field-readonly select{background:color-mix(in srgb,var(--bg-surface-alt) 92%, transparent);color:var(--text-secondary);border-color:color-mix(in srgb,var(--border-default) 88%, transparent);box-shadow:none}
.admin-field-readonly select{pointer-events:none}
.admin-case-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 12px}
.admin-case-preview > div{padding:10px 12px;border:1px solid var(--border-default);border-radius:12px;background:var(--bg-surface-alt)}
.admin-case-preview strong{display:block;margin-top:4px;font-size:.96rem;color:var(--text-primary)}
.admin-case-preview-label{display:block;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.admin-form-advanced{margin-top:14px;border:1px solid var(--border-default);border-radius:14px;background:var(--bg-surface-alt);padding:10px 12px}
.admin-form-advanced summary{cursor:pointer;font-weight:700;color:var(--text-secondary);list-style:none}
.admin-form-advanced summary::-webkit-details-marker{display:none}
.admin-form-advanced[open] summary{margin-bottom:10px}
.admin-case-form-card .form-grid input,.admin-case-form-card .form-grid select,.admin-case-form-card .form-grid textarea{min-height:44px;border-radius:12px}
.admin-case-form-card .form-grid textarea{min-height:112px;padding-top:10px}
.admin-case-form-card .form-grid select{appearance:auto}
.field-hint{margin-top:5px;font-size:.74rem;line-height:1.35;color:var(--text-muted)}
@media (max-width:980px){
  .admin-case-preview,.admin-form-grid--core,.admin-form-grid--auto,.admin-form-grid--advanced{grid-template-columns:1fr}
}

/* Version 2.9.5 async data-loading status panel */
.air-data-status {
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid var(--border, #6f767f);
  border-radius: 10px;
  background: #ffffff;
  color: #030303;
  font-size: 0.95rem;
  line-height: 1.4;
}
.air-data-status--loading {
  background: #f8f8f8;
}
.air-data-status--ready {
  border-color: #6f767f;
  background: #f2f1f0;
}
.air-data-status--error {
  border-color: #a6192e;
  background: #fff5f5;
  color: #7f1d1d;
}


/* Version 2.9.5 equalised offender-profile doughnut charts */
#tab-air-explorer .mini-summary-card--immigration,
#tab-air-explorer .mini-summary-card--religion {
  display: flex;
  flex-direction: column;
}
#tab-air-explorer .mini-summary-card--immigration .chart-shell.chart-shell-mini-donut,
#tab-air-explorer .mini-summary-card--religion .chart-shell.chart-shell-mini-donut {
  width: 240px !important;
  height: 240px !important;
  min-width: 240px !important;
  min-height: 240px !important;
  max-width: 240px !important;
  max-height: 240px !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 auto 10px auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
#tab-air-explorer .mini-summary-card--immigration .chart-shell.chart-shell-mini-donut canvas,
#tab-air-explorer .mini-summary-card--religion .chart-shell.chart-shell-mini-donut canvas,
#air-incident-top-immigration-chart,
#air-incident-top-religion-chart {
  width: 220px !important;
  height: 220px !important;
  min-width: 220px !important;
  min-height: 220px !important;
  max-width: 220px !important;
  max-height: 220px !important;
  aspect-ratio: 1 / 1 !important;
}
#tab-air-explorer .mini-summary-card--immigration .mini-comparator-list,
#tab-air-explorer .mini-summary-card--religion .mini-comparator-list {
  margin-top: 8px !important;
}
@media (max-width: 700px) {
  #tab-air-explorer .mini-summary-card--immigration .chart-shell.chart-shell-mini-donut,
  #tab-air-explorer .mini-summary-card--religion .chart-shell.chart-shell-mini-donut {
    width: 216px !important;
    height: 216px !important;
    min-width: 216px !important;
    min-height: 216px !important;
    max-width: 216px !important;
    max-height: 216px !important;
  }
  #tab-air-explorer .mini-summary-card--immigration .chart-shell.chart-shell-mini-donut canvas,
  #tab-air-explorer .mini-summary-card--religion .chart-shell.chart-shell-mini-donut canvas,
  #air-incident-top-immigration-chart,
  #air-incident-top-religion-chart {
    width: 196px !important;
    height: 196px !important;
    min-width: 196px !important;
    min-height: 196px !important;
    max-width: 196px !important;
    max-height: 196px !important;
  }
}

/* Version 2.9.5 Five Eyes Explorer coverage and display-mode notes */
.fiveeyes-context-status {
  margin: 10px 0 12px;
  padding: 10px 12px;
  border: 1px solid var(--border-default, #d6d3cc);
  border-radius: 12px;
  background: var(--panel-muted, #f8f8f8);
  color: var(--text-secondary, #4b5563);
  font-size: 0.92rem;
  line-height: 1.45;
}
.fiveeyes-context-status--caution {
  border-color: rgba(180, 83, 9, 0.45);
  background: rgba(251, 191, 36, 0.12);
}

/* Version 2.9.5 analytical context additions */
.fiveeyes-matrix-wrap {
  width: 100%;
  overflow-x: auto;
}
.fiveeyes-snapshot-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
}
.fiveeyes-snapshot-table th,
.fiveeyes-snapshot-table td {
  border: 1px solid var(--border, #d4d7dc);
  padding: 0.55rem 0.65rem;
  vertical-align: top;
  text-align: left;
}
.fiveeyes-snapshot-table td strong {
  display: block;
  font-weight: 700;
}
.fiveeyes-snapshot-table td span {
  display: block;
  margin-top: 0.2rem;
  font-size: 0.78rem;
  color: var(--muted, #6f767f);
}
.fiveeyes-profile-grid,
.fiveeyes-narrative-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1rem;
}
.fiveeyes-profile-card .fiveeyes-profile-line,
.context-relationship-line {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0.4rem 0.75rem;
  align-items: baseline;
  border-top: 1px solid var(--border, #d4d7dc);
  padding-top: 0.45rem;
  margin-top: 0.45rem;
}
.fiveeyes-profile-line span,
.context-relationship-line span {
  color: var(--muted, #6f767f);
  font-size: 0.86rem;
}
.fiveeyes-profile-line strong,
.context-relationship-line strong {
  font-weight: 700;
}
.fiveeyes-profile-line em,
.context-relationship-line em {
  grid-column: 1 / -1;
  color: var(--muted, #6f767f);
  font-style: normal;
  font-size: 0.78rem;
}
.narrative-check-card ul {
  margin: 0.6rem 0 0.75rem 1.1rem;
  padding: 0;
}
.narrative-check-card li {
  margin-bottom: 0.35rem;
}
.context-relationship-panel {
  margin-top: 1rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--border, #d4d7dc);
}
.fiveeyes-future-data-note p {
  margin: 0.4rem 0;
}

/* Version 2.9.5 limited-coverage context cards */
.fiveeyes-limited-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 12px;
  margin-top: 14px;
}
.fiveeyes-limited-card ul {
  margin: 8px 0 0;
  padding-left: 18px;
}
.fiveeyes-limited-card li {
  margin: 3px 0;
  font-size: 0.9rem;
}
.fiveeyes-limited-card em {
  color: var(--muted, #6f767f);
  font-style: normal;
}


/* Version 2.9.5 sparse/benchmark context indicator display */
.fiveeyes-selected-indicator-fallback { margin-top: 0.75rem; }
.fiveeyes-indicator-coverage-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 0.75rem; margin-top: 0.75rem; }
.fiveeyes-indicator-coverage-card { padding: 0.85rem; border: 1px solid var(--border, #d7dbe3); border-radius: 14px; background: var(--card-bg, #fff); }
.fiveeyes-indicator-coverage-card strong { display:block; font-size:1.05rem; margin-top:0.25rem; }
.fiveeyes-indicator-coverage-card span { display:block; color: var(--muted, #6f767f); font-size:0.86rem; }
.fiveeyes-indicator-class-note { margin-top: 0.7rem; padding: 0.7rem 0.8rem; border-radius: 12px; border: 1px solid var(--border, #d7dbe3); background: var(--soft-panel, #f8f8f8); color: var(--muted, #4a5568); }
.context-limited-indicator-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap:0.7rem; margin-top:0.65rem; }
.context-limited-indicator-card { padding:0.75rem; border:1px solid var(--border, #d7dbe3); border-radius:12px; background:var(--card-bg, #fff); }
.context-limited-indicator-card strong { display:block; }
.context-limited-indicator-card span { display:block; font-size:0.85rem; color:var(--muted, #6f767f); }

/* v2.9.5 References Restoration, AIR Cycle, and MRU Visual Repair Build */
.about-project-v285 .about-callout{margin:16px 0;padding:14px 16px;border:1px solid var(--border-default);border-radius:14px;background:var(--bg-surface-alt);color:var(--text-primary)}
.about-project-v285 .about-callout--caution{border-left:4px solid var(--accent-strong, #0f76d7)}
.about-data-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 22px}
.about-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:14px 0 22px}
.about-info-card{border:1px solid var(--border-default);border-radius:14px;padding:14px 16px;background:var(--bg-surface-alt)}
.about-info-card h4{margin:0 0 8px;font-size:1rem}.about-info-card ul,.about-callout ul{margin:8px 0 0 20px}.about-info-card li,.about-callout li{margin:5px 0}
.air-process-diagram{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:10px;align-items:stretch;margin:18px 0 18px}
.air-process-step{border:1px solid var(--border-default);border-radius:14px;padding:13px 14px;background:var(--bg-surface-alt)}
.air-process-step span{display:block;font-weight:700;margin-bottom:6px}.air-process-step small{display:block;line-height:1.35;color:var(--text-secondary)}
.air-process-arrow{display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--text-secondary)}
.about-category-breakdown{border:1px solid var(--border-default);border-radius:14px;padding:14px 16px;background:var(--bg-surface-alt);margin:14px 0 22px}.about-category-breakdown h4{margin:0 0 10px}
.about-bar-row{display:grid;grid-template-columns:minmax(220px,2fr) minmax(100px,3fr) 42px;gap:10px;align-items:center;margin:8px 0}.about-bar-label{font-size:.9rem}.about-bar-track{height:10px;border-radius:999px;background:rgba(111,118,127,.20);overflow:hidden}.about-bar-fill{display:block;height:100%;border-radius:999px;background:var(--accent-strong, #0f76d7)}.about-bar-value{text-align:right;font-variant-numeric:tabular-nums}
.about-timeline{border:1px solid var(--border-default);border-radius:14px;padding:14px 16px;background:var(--bg-surface-alt);margin:14px 0 22px}.about-timeline h4{margin:0 0 12px}.about-timeline-bars{display:flex;align-items:end;gap:4px;min-height:150px;padding:8px 0 2px;overflow-x:auto}.about-year-bar{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:18px}.about-year-fill{display:block;width:12px;border-radius:6px 6px 0 0;background:var(--accent-strong, #0f76d7)}.about-year-label{font-size:.72rem;color:var(--text-secondary)}
.about-link-row{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 20px}
@media (max-width:900px){.about-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-two-col{grid-template-columns:1fr}.air-process-diagram{grid-template-columns:1fr}.air-process-arrow{transform:rotate(90deg);min-height:18px}.about-bar-row{grid-template-columns:1fr 2fr 36px}}
@media (max-width:560px){.about-data-grid{grid-template-columns:1fr}.about-bar-row{grid-template-columns:1fr}.about-bar-value{text-align:left}.about-bar-track{width:100%}}

/* Version 2.9.5 static-asset consistency patch */
.glossary-section-heading{margin:18px 0 4px;font-size:.88rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:800}
.glossary-card-list .glossary-section-heading:first-child{margin-top:0}

/* Version 2.9.5 methodology dynamic case-summary replacement */
.content-figure--data-summary {
  justify-content: flex-start;
}
.method-case-summary-grid {
  width: 100%;
  margin-top: 10px;
}
.method-case-summary-grid .stat-card {
  min-width: 0;
}

/* Version 2.9.5 Online Time fallback and Incident Explorer layout patch */
.context-chart-fallback[hidden]{display:none!important}
.context-chart-fallback{margin:12px 0 16px}
#tab-air-explorer .explorer-mini-stack{display:grid;gap:18px;margin-top:16px}
#tab-air-explorer .explorer-mini-grid--bars,
#tab-air-explorer .explorer-mini-grid--donuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
#tab-air-explorer .explorer-mini-grid--donuts .mini-summary-card{min-height:390px}
#tab-air-explorer .explorer-mini-grid--donuts .chart-shell.chart-shell-mini-donut{width:320px!important;height:320px!important;min-width:300px!important;min-height:300px!important;max-width:100%!important;max-height:320px!important;margin:0 auto 12px!important;display:flex!important;align-items:center!important;justify-content:center!important}
#tab-air-explorer .explorer-mini-grid--donuts .chart-shell.chart-shell-mini-donut canvas,
#tab-air-explorer .explorer-mini-grid--donuts #air-incident-top-immigration-chart,
#tab-air-explorer .explorer-mini-grid--donuts #air-incident-top-religion-chart{width:300px!important;height:300px!important;min-width:280px!important;min-height:280px!important;max-width:300px!important;max-height:300px!important;aspect-ratio:1 / 1!important}
#tab-air-explorer [data-air-incident-scope]{font-size:.78em;color:var(--text-muted);font-weight:600;white-space:normal}
#tab-air-explorer .mini-comparator-row-empty{display:block;padding:10px 12px;border:1px dashed var(--border-default);border-radius:12px;color:var(--text-muted);background:var(--bg-surface-alt)}
@media (max-width:900px){#tab-air-explorer .explorer-mini-grid--bars,#tab-air-explorer .explorer-mini-grid--donuts{grid-template-columns:1fr}#tab-air-explorer .explorer-mini-grid--donuts .chart-shell.chart-shell-mini-donut{width:280px!important;height:280px!important;min-width:260px!important;min-height:260px!important}#tab-air-explorer .explorer-mini-grid--donuts .chart-shell.chart-shell-mini-donut canvas,#tab-air-explorer .explorer-mini-grid--donuts #air-incident-top-immigration-chart,#tab-air-explorer .explorer-mini-grid--donuts #air-incident-top-religion-chart{width:260px!important;height:260px!important;min-width:240px!important;min-height:240px!important}}

/* Version 2.9.5 Online Time layout and selector simplification */
#tab-air-explorer .context-explorer-controls{align-items:end}
#tab-air-explorer .chart-shell-context-main{margin-top:14px;margin-bottom:12px;min-height:380px}
#tab-air-explorer .context-scoreboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 12px}
#tab-air-explorer .context-scoreboard-grid .stat-card{padding:10px 12px;min-height:unset}
#tab-air-explorer .context-scoreboard-grid .stat-card .stat-label{font-size:.72rem;line-height:1.15}
#tab-air-explorer .context-scoreboard-grid .stat-card .stat-value{font-size:.98rem;line-height:1.18}
#tab-air-explorer .context-scoreboard-grid .stat-card .stat-subtext{font-size:.7rem;line-height:1.2;max-height:2.4em;overflow:hidden}
#tab-air-explorer .context-insight-grid{margin-top:10px}
@media (max-width:980px){#tab-air-explorer .context-scoreboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){#tab-air-explorer .context-scoreboard-grid{grid-template-columns:1fr}#tab-air-explorer .chart-shell-context-main{min-height:320px}}

/* Version 2.9.5 Incident Explorer Top 3 comparator detail patch */
#tab-air-explorer .mini-comparator-help {
  margin: 4px 0 8px;
  font-size: 0.78rem;
  line-height: 1.3;
  color: var(--text-secondary);
}
#tab-air-explorer .mini-comparator-row-expanded {
  align-items: start;
  grid-template-columns: 22px minmax(0, 0.9fr) minmax(0, 1.35fr);
}
#tab-air-explorer .mini-comparator-row-expanded .mini-comparator-label {
  line-height: 1.25;
  font-weight: 650;
}
#tab-air-explorer .mini-comparator-row-expanded .mini-comparator-stack {
  gap: 2px;
}
#tab-air-explorer .mini-comparator-row-expanded .mini-comparator-line {
  font-size: 0.78rem;
}
@media (max-width: 760px) {
  #tab-air-explorer .mini-comparator-row-expanded { grid-template-columns: 22px minmax(0, 1fr); }
  #tab-air-explorer .mini-comparator-row-expanded .mini-comparator-value { grid-column: 2; }
}


/* Version 2.9.5 Online Time step workflow and Incident Explorer cleanup */
#tab-air-explorer .context-step-workflow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 14px}
#tab-air-explorer .context-step-card{border:1px solid var(--border-default);border-radius:14px;background:var(--bg-surface-alt);padding:12px 14px;min-width:0}
#tab-air-explorer .context-step-card--comparators{grid-column:1 / -1}
#tab-air-explorer .context-step-label{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}
#tab-air-explorer .context-step-title{margin:0 0 10px;font-size:1rem}
#tab-air-explorer .control-helper{margin:.35rem 0 0;font-size:.78rem;line-height:1.3;color:var(--text-secondary)}
#tab-air-explorer .context-comparator-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#tab-air-explorer .context-comparator-block{display:grid;gap:8px;border:1px solid var(--border-subtle, var(--border-default));border-radius:12px;padding:10px;background:var(--bg-surface)}
#tab-air-explorer .context-comparator-block>strong{font-size:.88rem;color:var(--text-primary)}
#tab-air-explorer .incident-annual-trend-card{margin:12px 0 16px;border:1px solid var(--border-default);border-radius:16px;background:var(--bg-surface);padding:14px 16px}
#tab-air-explorer .chart-shell-incident-trend{height:280px;min-height:240px;margin-top:8px}
#tab-air-explorer .ideology-conversion-profile-card{min-width:260px}
#tab-air-explorer .ideology-conversion-profile-card .profile-row{display:grid;grid-template-columns:minmax(110px,.9fr) minmax(0,1.3fr);gap:8px;margin:6px 0;font-size:.82rem;line-height:1.3}
#tab-air-explorer .ideology-conversion-profile-card .profile-row>span{color:var(--text-secondary);font-weight:650}
#tab-air-explorer .ideology-conversion-profile-card .profile-row div{display:grid;gap:2px}
#tab-air-explorer .ideology-conversion-profile-card .profile-muted{color:var(--text-muted)}
#tab-air-explorer .explorer-summary-grid--clean{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}
@media (max-width:1100px){#tab-air-explorer .explorer-summary-grid--clean{grid-template-columns:repeat(2,minmax(0,1fr))}#tab-air-explorer .context-comparator-grid{grid-template-columns:1fr}}
@media (max-width:760px){#tab-air-explorer .context-step-workflow{grid-template-columns:1fr}#tab-air-explorer .explorer-summary-grid--clean{grid-template-columns:1fr}#tab-air-explorer .ideology-conversion-profile-card .profile-row{grid-template-columns:1fr}}

/* Version 2.9.5 UX, scoreboard, benchmark-transparency, and Online-Time refinement build */
.nav-tabs .tab-btn,
.nav-tabs .tab-btn.priority-tab{
  background: var(--bg-surface) !important;
  color: var(--text-secondary) !important;
  border-color: var(--border-default) !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}
.nav-tabs .tab-btn:hover,
.nav-tabs .tab-btn.priority-tab:hover{
  background: var(--accent-light) !important;
  color: var(--accent-text) !important;
  border-color: var(--accent) !important;
}
.nav-tabs .tab-btn.active,
.nav-tabs .tab-btn.priority-tab.active{
  background: var(--accent) !important;
  color: var(--text-inverse) !important;
  border-color: var(--accent) !important;
  font-weight: 650 !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 22%, transparent) !important;
}
#tab-air-explorer .context-step-workflow{grid-template-columns:1.05fr 1.05fr .9fr;align-items:stretch}
#tab-air-explorer .context-step-card{box-shadow:0 8px 20px rgba(15,23,42,.04)}
#tab-air-explorer .context-step-card--comparators{grid-column:1 / -1;background:color-mix(in srgb,var(--bg-surface-alt) 72%,var(--bg-surface) 28%)}
#tab-air-explorer .context-step-card--display{grid-column:1 / -1}
#tab-air-explorer .context-comparator-block{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border-default) 65%,transparent)}
#tab-air-explorer .control-helper--hint{font-size:.72rem;color:var(--text-muted);padding-top:4px;border-top:1px dashed color-mix(in srgb,var(--border-default) 75%,transparent)}
#tab-air-explorer .chart-shell-context-main{margin-top:12px}
#tab-air-explorer .incident-scoreboard-grid-v290{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#tab-air-explorer .incident-scoreboard-grid-v290 .stat-card{min-height:104px;padding:12px 14px}
#tab-air-explorer .incident-scoreboard-grid-v290 .stat-label{font-size:.73rem;line-height:1.2}
#tab-air-explorer .incident-scoreboard-grid-v290 .stat-value{font-size:1.04rem;line-height:1.18}
#tab-air-explorer .incident-scoreboard-grid-v290 .stat-subtext{font-size:.72rem;line-height:1.28}
#tab-air-explorer .explorer-top-scoreboard-grid{grid-template-columns:repeat(7,minmax(0,1fr))}
#tab-air-explorer .explorer-top-scoreboard-grid .stat-card{min-height:98px}
@media (max-width:1280px){#tab-air-explorer .explorer-top-scoreboard-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#tab-air-explorer .incident-scoreboard-grid-v290{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){#tab-air-explorer .context-step-workflow{grid-template-columns:1fr}#tab-air-explorer .explorer-top-scoreboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){#tab-air-explorer .explorer-top-scoreboard-grid,#tab-air-explorer .incident-scoreboard-grid-v290{grid-template-columns:1fr}}

/* ═══════════════════════════════════════════════════════
   Version 2.9.5 — MRU-informed theme and reference-page polish
   ═══════════════════════════════════════════════════════ */
:root {
  --mru-blue: #007FB5;
  --mru-dark-blue: #003352;
  --accent: #007FB5;
  --accent-text: #003352;
  --accent-light: #e7f6fb;
  --chart-1: #007FB5;
  --chart-2: #003352;
  --chart-9: #007FB5;
}
[data-theme="dark"] {
  --bg-base: #071925;
  --bg-surface: #0e2433;
  --bg-surface-alt: #123047;
  --bg-elevated: #123047;
  --bg-input: #0b2030;
  --accent: #007FB5;
  --accent-text: #63c7ec;
  --accent-light: #003352;
  --border-default: rgba(99,199,236,.24);
  --border-strong: rgba(99,199,236,.38);
  --chart-1: #007FB5;
  --chart-2: #63c7ec;
}
.nav-tabs .tab-btn { background: var(--bg-surface); color: var(--text-secondary); border: 1px solid var(--border-default); }
.nav-tabs .tab-btn:hover, .nav-tabs .tab-btn:focus-visible { color: var(--accent-text); border-color: var(--accent); box-shadow: 0 0 0 3px rgba(0,127,181,.14); }
.nav-tabs .tab-btn.active { background: var(--accent); color: #fff; border-color: var(--accent); }
.splash-nav-card, .small-btn, .chart-action-btn, .btn { border-color: var(--accent); }
a, .references-modern-card a, .cases-source-link { color: var(--accent-text); }
.site-version-marker, .splash-version-marker, .section-kicker, .glossary-tag { color: var(--accent-text); }
.content-panel h2, .content-panel h3, .site-header h1 { color: var(--mru-dark-blue); }
[data-theme="dark"] .content-panel h2, [data-theme="dark"] .content-panel h3, [data-theme="dark"] .site-header h1 { color: #d9f3ff; }
.about-callout, .content-figure, .ref-item, .stat-card, .glossary-modern-card, .references-modern-card { border-color: var(--border-default); }
.methodology-framework-stack { display: grid; gap: 18px; width: 100%; }
.content-figure--wide { width: 100%; max-width: 100%; }
.methodology-framework-figure img { width: 100%; max-height: 620px; object-fit: contain; }
.methodology-case-summary-panel { padding: 16px; }
.method-case-summary-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.method-case-summary-grid .stat-card { min-height: auto; padding: 12px; }
.content-page-header { margin-bottom: 18px; }
.glossary-modern-page .overview-note, .content-panel--reference .overview-note { max-width: 980px; }
.glossary-tools { display: grid; gap: 10px; margin: 16px 0 18px; }
.glossary-filter-row { display: flex; flex-wrap: wrap; gap: 8px; }
.glossary-filter { border: 1px solid var(--border-default); background: var(--bg-surface); color: var(--text-secondary); border-radius: 999px; padding: 7px 12px; cursor: pointer; }
.glossary-filter.active, .glossary-filter:hover { background: var(--accent); color: #fff; border-color: var(--accent); }
.glossary-modern-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }
.glossary-modern-card { background: var(--bg-surface); border: 1px solid var(--border-default); border-radius: var(--radius-md); padding: 14px; box-shadow: var(--shadow-sm); }
.glossary-modern-card h3 { margin: 5px 0 8px; font-size: 1rem; }
.glossary-modern-card p { margin: 0; color: var(--text-secondary); }
.glossary-tag { display: inline-flex; font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.references-modern-list { display: grid; gap: 10px; }
.references-modern-card { padding: 14px; }
.reference-text { line-height: 1.45; }
.reference-links { margin-top: 8px; }
.reference-muted { color: var(--text-muted); font-size: .9rem; }
.ref-group-title { margin-top: 20px; padding-top: 8px; border-top: 1px solid var(--border-default); }
@media (max-width: 760px) { .method-case-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .method-case-summary-grid { grid-template-columns: 1fr; } }


/* ═══════════════════════════════════════════════════════
   Version 2.9.5 — References restoration, AIR cycle, and MRU visual repair
   ═══════════════════════════════════════════════════════ */
body { background: var(--bg-base); }
.site-wrap { background: transparent; }
.content-panel, .site-header, .nav-tabs, .panel-footer { box-shadow: var(--shadow-sm); }
.content-page-header, .content-panel--reference, .content-panel--about { background: var(--bg-surface); }
.air-cycle-framework-figure {
  margin: 16px 0 18px;
  padding: 14px;
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  width: 100%;
}
.air-cycle-framework-figure img {
  display: block;
  width: 100%;
  max-width: 920px;
  max-height: 560px;
  object-fit: contain;
  margin: 0 auto;
}
.about-data-grid, .method-case-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  width: 100%;
  align-items: stretch;
}
#about-context-summary.about-data-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#method-case-summary.about-data-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.about-data-grid .stat-card, .method-case-summary-grid .stat-card {
  min-height: 126px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 14px 16px;
}
.about-category-breakdown, .about-timeline, .content-figure--data-summary {
  width: 100%;
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
}
.about-category-breakdown, .about-timeline { padding: 16px; }
.about-timeline-horizontal-bars { display: grid; gap: 8px; }
.about-year-row { grid-template-columns: 86px minmax(160px,1fr) 48px; }
.about-year-row .about-bar-label { font-variant-numeric: tabular-nums; }
.references-modern-group {
  background: var(--bg-surface);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-lg);
  padding: 14px;
  margin: 16px 0;
  box-shadow: var(--shadow-sm);
}
.references-modern-card {
  background: var(--bg-surface-alt);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 12px;
  margin: 10px 0;
}
.reference-links a { color: var(--accent-text); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.reference-muted { color: var(--text-muted); }
@media (max-width: 760px) {
  #about-context-summary.about-data-grid, #method-case-summary.about-data-grid { grid-template-columns: 1fr; }
  .about-year-row { grid-template-columns: 1fr; gap: 4px; }
  .air-cycle-framework-figure img { max-height: 460px; }
}

/* Version 2.9.5 — UX, selector-governance, filter, timeline, and mobile polish */
:root {
  --mru-blue: #007FB5;
  --mru-dark-blue: #003352;
  --page-bg: #F2FAFD;
  --surface-bg: rgba(255,255,255,0.96);
  --surface-border: rgba(0, 51, 82, 0.14);
}
html:not([data-theme="dark"]), body:not(.dark-mode) {
  background: var(--page-bg);
}
body {
  background: var(--page-bg);
}
body.theme-dark, html[data-theme="dark"] body {
  --page-bg: #061f2b;
  --surface-bg: rgba(5, 31, 43, 0.94);
  --surface-border: rgba(0, 127, 181, 0.30);
  background: #061f2b;
}
.content-panel, .chart-card, .stat-card, .mini-summary-card, .reference-card, .glossary-card, .context-step-card, .case-filter-panel, .incident-annual-trend-card {
  border-color: var(--surface-border);
}
.air-cycle-framework-figure {
  background: var(--surface-bg);
  border: 1px solid var(--surface-border);
  border-radius: 20px;
  box-shadow: 0 12px 32px rgba(0, 51, 82, 0.10);
  padding: clamp(0.75rem, 2vw, 1.35rem);
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}
.air-cycle-framework-figure img {
  display: block;
  width: min(100%, 860px);
  max-height: 72vh;
  object-fit: contain;
  margin: 0 auto;
  border-radius: 14px;
}
.about-timeline-card, .about-context-category-card, .about-chart-card {
  background: var(--surface-bg);
  border: 1px solid var(--surface-border);
  border-radius: 18px;
  box-shadow: 0 10px 28px rgba(0, 51, 82, 0.09);
}
.context-scoreboard-grid, .context-summary-grid, .methodology-summary-grid, .about-context-scoreboard, .support-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}
.context-scoreboard-grid > *, .methodology-summary-grid > *, .about-context-scoreboard > *, .support-summary-grid > * { min-width: 0; height: 100%; }
.context-step-workflow {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
  margin-bottom: 1rem;
}
.context-step-card { min-width: 0; background: var(--surface-bg); }
.context-step-card--scope, .context-step-card--anchor, .context-step-card--case, .context-step-card--five { grid-column: span 3; }
.context-step-card--comparators { grid-column: 1 / -1; }
.context-step-card--display { grid-column: 1 / -1; }
.context-comparator-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.context-comparator-block { border: 1px solid var(--surface-border); border-radius: 14px; padding: 0.85rem; background: rgba(255,255,255,0.56); }
html[data-theme="dark"] .context-comparator-block, body.theme-dark .context-comparator-block { background: rgba(0, 51, 82, 0.28); }
.control-helper--hint { font-size: 0.78rem; line-height: 1.35; color: var(--muted-text, #587083); }
.case-explorer-shell { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; align-items: start; }
.case-filter-panel { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0.9rem; align-items: end; background: var(--surface-bg); border: 1px solid var(--surface-border); border-radius: 18px; padding: 1rem; }
.case-filter-panel .control-group-wide { grid-column: span 2; }
.advanced-filter-panel { grid-column: 1 / -1; border: 1px solid var(--surface-border); border-radius: 14px; padding: 0.75rem 0.9rem; background: rgba(0,127,181,0.045); }
.advanced-filter-panel summary { cursor: pointer; font-weight: 700; color: var(--mru-dark-blue); }
html[data-theme="dark"] .advanced-filter-panel summary, body.theme-dark .advanced-filter-panel summary { color: #73d1f5; }
.advanced-filter-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.85rem; margin-top: 0.85rem; }
.case-filter-status { font-size: 0.92rem; color: var(--muted-text, #587083); margin: -0.25rem 0 0.35rem; }
.case-filter-status strong { color: var(--mru-dark-blue); }
html[data-theme="dark"] .case-filter-status strong, body.theme-dark .case-filter-status strong { color: #73d1f5; }
.chart-shell-context-main { margin-top: 0.6rem; min-height: 380px; }
.chart-shell-context-main canvas { max-height: 520px; }
.incident-annual-trend-card { background: var(--surface-bg); border: 1px solid var(--surface-border); border-radius: 18px; padding: 1rem; box-shadow: 0 10px 28px rgba(0, 51, 82, 0.08); }
.chart-shell-incident-trend { min-height: 280px; }
input[type="number"], input[type="search"], select { max-width: 100%; }
@media (max-width: 980px) {
  .context-step-card--scope, .context-step-card--anchor, .context-step-card--case, .context-step-card--five { grid-column: span 6; }
  .context-comparator-grid { grid-template-columns: 1fr; }
  .case-filter-panel { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .advanced-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  body { overflow-x: hidden; }
  .content-panel, .chart-card, .mini-summary-card, .stat-card { border-radius: 14px; }
  .context-step-workflow, .context-scoreboard-grid, .context-summary-grid, .methodology-summary-grid, .about-context-scoreboard, .support-summary-grid { grid-template-columns: 1fr; }
  .context-step-card--scope, .context-step-card--anchor, .context-step-card--case, .context-step-card--five, .context-step-card--comparators, .context-step-card--display { grid-column: 1 / -1; }
  .case-filter-panel, .advanced-filter-grid { grid-template-columns: 1fr; }
  .case-filter-panel .control-group-wide { grid-column: 1; }
  .chart-shell-context-main, .chart-shell-incident-trend { min-height: 300px; overflow-x: auto; }
  .air-cycle-framework-figure { padding: 0.55rem; }
  .air-cycle-framework-figure img { max-height: none; width: 100%; }
  .controls-bar, .test-controls-grid { gap: 0.75rem; }
  .duration-input-box { min-height: 44px; }
}


/* Version 2.9.5 — forensic repair, unified AIR Explorer, and mobile/performance polish */
.panel-lede{max-width:980px;margin:.35rem 0 1rem;color:var(--muted, #50616b);line-height:1.45}
.matching-cases-shell{margin-top:1rem;border-top:1px solid var(--border, #d8e7ef);padding-top:1rem}
.matching-case-list{display:grid;gap:.85rem;margin-top:.75rem}
.matching-case-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:start;background:var(--card-bg, #fff);border:1px solid var(--border, #d8e7ef);border-radius:16px;padding:1rem;box-shadow:0 8px 24px rgba(0,51,82,.06)}
.matching-case-kicker{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--accent-dark,#003352)}
.matching-case-card h4{margin:.15rem 0 .35rem;color:var(--accent-dark,#003352)}
.matching-case-meta{font-size:.86rem;color:var(--muted,#5a6b74);font-weight:600;margin-bottom:.35rem}
.matching-case-card p{margin:0;color:var(--text,#17232b);line-height:1.42}
.matching-case-actions{display:flex;flex-direction:column;gap:.55rem;align-items:flex-end;min-width:160px}
.case-source-buttons{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:flex-end}
.case-source-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2.4rem;padding:.35rem .55rem;border-radius:999px;background:var(--primary,#007FB5);color:#fff;text-decoration:none;font-weight:700;font-size:.82rem}
.full-case-file-panel{margin-top:1rem;background:var(--card-bg,#fff);border:2px solid var(--primary,#007FB5);border-radius:18px;padding:1rem;box-shadow:0 12px 32px rgba(0,51,82,.10)}
.full-case-file-panel[hidden]{display:none!important}
.full-case-file-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem}
.full-case-file-header h3{margin:0;color:var(--accent-dark,#003352)}
.full-case-file-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
.full-case-field{border:1px solid var(--border,#d8e7ef);border-radius:12px;padding:.65rem;background:rgba(0,127,181,.035)}
.full-case-field span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:800;color:var(--muted,#50616b);margin-bottom:.22rem}
.full-case-field strong{font-weight:600;color:var(--text,#17232b);word-break:break-word}
.full-case-sources{margin-top:1rem}
.test-yourself-practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin-top:.85rem}
.social-test-yourself-panel{margin-top:1rem}
.case-explorer-shell{display:block;width:100%}
.case-filter-panel{align-items:end}
@media (max-width: 760px){
  .matching-case-card{grid-template-columns:1fr}.matching-case-actions{align-items:flex-start}.case-source-buttons{justify-content:flex-start}.full-case-file-grid{grid-template-columns:1fr}.test-yourself-practice-grid{grid-template-columns:1fr}.chart-title-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.matching-cases-shell .chart-header-row{align-items:flex-start}
}
