
/* v24 realtime strip */
.realtime-strip-card .metric-row.four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.health-dashboard-card {
  border: 1px solid var(--paper-line);
}
.health-summary {
  margin-bottom: 14px;
  padding: 12px 14px;
  border-radius: 0;
  border: 1px solid var(--paper-line);
  background: var(--paper-bg);
  color: var(--paper-ink);
  font-weight: 700;
  line-height: 1.5;
}
.health-dashboard-grid {
  align-items: start;
  margin-top: 18px;
}
.decision-header-section {
  margin-top: 2px;
}
.decision-header-card {
  border: 1px solid var(--paper-line-strong);
  border-radius: 0;
  background: var(--paper-bg);
  color: var(--paper-ink);
}
.decision-header-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.9fr);
  gap: 24px;
  align-items: stretch;
}
.decision-header-main,
.decision-header-policy-card,
.decision-header-drivers {
  background: var(--paper-bg);
  border: 1px solid var(--paper-line);
  border-radius: 0;
}
.decision-header-main {
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 280px;
}
.decision-header-topline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
}
.decision-header-kicker {
  color: var(--risk-red);
  font-family: var(--font-mono);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 10px;
}
.decision-header-title {
  margin: 0;
  font-size: 42px;
  line-height: 1.05;
  color: var(--paper-ink);
}
.decision-header-reason {
  margin: 14px 0 0;
  max-width: 60ch;
  color: var(--paper-warm);
  font-size: 16px;
  line-height: 1.6;
}
.decision-header-action-block {
  margin-top: 22px;
}
.decision-header-action-label {
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.decision-header-action {
  padding: 16px 18px;
  border-radius: 0;
  border: 1px solid var(--paper-line);
  background: var(--paper-bg);
  color: var(--paper-ink);
  font-size: 20px;
  font-weight: 900;
  line-height: 1.45;
}
.decision-header-side {
  display: grid;
  gap: 16px;
  align-content: start;
}
.decision-header-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.decision-header-policy-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.decision-header-policy-card,
.decision-header-drivers {
  padding: 16px;
}
.decision-header-policy-text {
  color: var(--paper-ink);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.55;
}
.decision-driver-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}
.decision-driver-chip {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 0;
  background: transparent;
  border: 1px solid var(--paper-line);
  color: var(--paper-ink);
  font-size: 13px;
  font-weight: 800;
}
.decision-badge-risk-on {
  color: #FBF7F0;
  background: var(--risk-green);
}
.decision-badge-balanced {
  color: var(--paper-ink);
  background: transparent;
}
.decision-badge-caution {
  color: #FBF7F0;
  background: var(--risk-yellow);
}
.decision-badge-defensive {
  color: #FBF7F0;
  background: var(--risk-orange);
}
.decision-badge-crisis {
  color: #FBF7F0;
  background: var(--risk-red);
}
.health-level-healthy {
  color: #FBF7F0;
  background: var(--risk-green);
}
.health-level-watch {
  color: #FBF7F0;
  background: var(--risk-yellow);
}
.health-level-degraded {
  color: #FBF7F0;
  background: var(--risk-orange);
}
.health-level-stale {
  color: #FBF7F0;
  background: var(--risk-orange);
}
.health-level-baseline {
  color: #FBF7F0;
  background: var(--risk-red);
}
.mini-delta {
  margin-top: 6px;
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 11px;
}
@media (max-width: 980px) {
  .decision-header-layout,
  .decision-header-policy-grid,
  .decision-header-metrics {
    grid-template-columns: 1fr;
  }
  .decision-header-title {
    font-size: 30px;
  }
  .decision-header-action {
    font-size: 17px;
  }
  .realtime-strip-card .metric-row.four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .health-dashboard-card .metric-row.four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .decision-header-main,
  .decision-header-policy-card,
  .decision-header-drivers {
    padding: 14px;
    border-radius: 0;
  }
  .decision-header-title {
    font-size: 24px;
  }
  .decision-header-reason,
  .decision-header-policy-text {
    font-size: 14px;
  }
  .realtime-strip-card .metric-row.four {
    grid-template-columns: 1fr;
  }
  .health-dashboard-card .metric-row.four {
    grid-template-columns: 1fr;
  }
}


/* v22.3 width consistency fix */
.page-shell > main > section,
.page-shell > footer {
  width: 100%;
}
.two-col {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
.three-col {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.trading-action-grid,
.position-risk-grid,
.hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
}
.trading-action-grid > .card,
.position-risk-grid > .card,
.hero-grid > .card {
  width: 100%;
  max-width: 100%;
}
.full-width-section {
  width: 100%;
  max-width: 100%;
}
.chart-wrap,
.svg-wrap,
.table-wrap {
  width: 100%;
  max-width: 100%;
}
@media (max-width: 980px) {
  .trading-action-grid,
  .position-risk-grid,
  .hero-grid,
  .two-col,
  .three-col {
    grid-template-columns: 1fr;
  }
}


.hero-grid,.action-position-grid,.execution-lock-grid,.discipline-three{align-items:stretch}
.card{min-width:0}
.card-head{min-height:34px}
.card-head h2{line-height:1.2}
.metric-box,.discipline-panel,.execution-lock-main,.execution-lock-panel,.warning-card,.scenario-card,.trigger-rule{min-width:0}
.metric-value,.metric-value.small,.progress-top span,.warning-card-top strong,.trigger-rule strong,.today-action-box,.execution-status-title,.execution-status-desc{overflow-wrap:anywhere;word-break:break-word}
.execution-lock-card{padding:24px}
.execution-lock-main{display:flex;flex-direction:column;justify-content:center}
.execution-status-title{font-size:30px;line-height:1.15}
.execution-status-desc{max-width:56ch}
.today-action-box{line-height:1.6}
.table-wrap{-webkit-overflow-scrolling:touch;scrollbar-width:thin}
table th,table td{white-space:nowrap}
table td:last-child,table th:last-child{white-space:normal}
#world-heatmap{width:100%;height:auto}
.heatmap-layout{align-items:stretch}
.heatmap-legend{min-width:0}
.warning-grid,.action-position-grid{align-items:start}
@media (max-width:1440px){.page-shell{max-width:1460px;padding:18px}
.two-col{grid-template-columns:1fr}
.three-col{grid-template-columns:1fr}
.metric-row,.metric-row.three,.metric-row.four{grid-template-columns:repeat(2,minmax(0,1fr))}
.execution-lock-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:980px){.page-shell{padding:14px}
h1{font-size:38px}
.hero{flex-direction:column;gap:14px;padding-bottom:18px}
.hero-subtitle{font-size:17px;line-height:1.45}
.hero-status{width:100%;min-width:0}
.metric-row,.metric-row.two,.metric-row.three,.metric-row.four{grid-template-columns:1fr}
.execution-lock-grid,.discipline-three{grid-template-columns:1fr}
.execution-status-title{font-size:24px}
.card{padding:18px;border-radius:0}
.card h2{font-size:22px}
.card h3{font-size:16px}
.decision-line{font-size:15px}
.today-action-box{font-size:14px}
.position-target-chip{margin-left:0;margin-top:6px}
.warning-card-top{grid-template-columns:1fr;gap:6px}
.warning-time,.warning-level-order{margin-left:0}
.table-wrap table{min-width:760px}
.chart-wrap,.svg-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
#trend-chart,#trend-chart-30d,#world-heatmap{min-width:720px}
}
@media (max-width:640px){.page-shell{padding:12px}
h1{font-size:31px}
.eyebrow{font-size:12px;letter-spacing:0.12em}
.hero-subtitle{font-size:15px}
.card{padding:16px;border-radius:0}
.metric-label{font-size:13px}
.metric-value{font-size:18px}
.metric-value.small{font-size:15px}
.execution-status-pill{min-width:100px;font-size:12px}
.execution-status-title{font-size:21px}
.bullet-list{gap:8px;padding-left:18px}
.table-wrap table{min-width:680px}
}
:root {
  /* Paper theme palette */
  --paper-bg: #FBF7F0;
  --paper-ink: #1A1815;
  --paper-warm: #3A3530;
  --paper-muted: #666666;
  --paper-line: rgba(26, 24, 21, 0.16);
  --paper-line-strong: #1A1815;

  /* Semantic risk palette */
  --risk-red: #7C1D1D;
  --risk-yellow: #A8761A;
  --risk-orange: #C25E2A;
  --risk-green: #1F4D2C;

  /* Font stacks */
  --font-display: "Playfair Display", "Noto Serif SC", "Source Han Serif SC", "Songti SC", serif;
  --font-serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", "PingFang SC", serif;
  --font-mono: "IBM Plex Mono", "SF Mono", Menlo, Consolas, monospace;

  /* Legacy aliases for backwards compatibility with older component selectors. */
  --bg: var(--paper-bg);
  --bg-2: var(--paper-bg);
  --panel: var(--paper-bg);
  --panel-border: var(--paper-line);
  --text: var(--paper-ink);
  --muted: var(--paper-muted);
  --line: var(--paper-line);
  --blue: var(--risk-red);
  --blue-2: var(--risk-red);
  --green: var(--risk-green);
  --yellow: var(--risk-yellow);
  --red: var(--risk-red);
  --orange: var(--risk-orange);
  --radius: 0;
  --editorial-paper: #fbf7f0;
  --editorial-ink: #1a1815;
  --editorial-warm: #3a3530;
  --editorial-muted: #666666;
  --editorial-red: #7c1d1d;
  --editorial-yellow: #a8761a;
  --editorial-green: #1f4d2c;
  --editorial-orange: #c25e2a;
  --editorial-line: rgba(26, 24, 21, 0.28);
  --font-body: var(--font-serif);
}

* { box-sizing: border-box; }
html,
body {
  margin: 0;
  padding: 0;
  background: var(--paper-bg);
  color: var(--paper-ink);
  font-family: var(--font-serif);
}
body {
  min-height: 100vh;
  background: var(--paper-bg);
  color: var(--paper-ink);
  font-family: var(--font-serif);
}
h1,
h2,
.display,
.section-title,
.metric-value,
.editorial-big-number .value,
.editorial-big-number-value,
.verdict h2,
.number,
.indicator .number {
  font-family: var(--font-display);
}
p,
.note,
.text,
.bullet-list li,
.verdict p,
.editorial-section-header .section-note,
.wow-text,
.summary-text {
  font-family: var(--font-serif);
}
.kicker,
.section-kicker,
.badge,
.meta,
.label,
.metric-label,
.editorial-method-label,
.subsection-meta,
.mini-delta,
.name-en,
.threshold-bar .zone-pct,
.wow-label,
.wow-tag,
.issue-meta,
.wow-source,
.footer text,
.editorial-subsection > summary,
time,
.timestamp,
.source {
  font-family: var(--font-mono);
}
.page-shell { max-width: 1660px; margin: 0 auto; padding: 20px; }
.hero {
  display: flex; justify-content: space-between; align-items: flex-start; gap: 24px;
  padding: 24px 22px 24px;
  border-top: 4px double var(--editorial-line);
  border-bottom: 3px double var(--paper-ink);
  margin-bottom: 36px;
  background: var(--editorial-paper);
  color: var(--editorial-ink);
}
.hero-masthead {
  display: grid;
  gap: 8px;
}
.eyebrow { color: var(--risk-red); font-family: var(--font-mono); letter-spacing: 0.18em; font-size: 14px; margin-bottom: 10px; }
.hero .eyebrow {
  color: var(--risk-red);
  font-family: var(--font-mono);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  margin: 0 0 10px;
}
h1, h2, h3 { font-family: var(--font-display); }
h1 { margin: 0; font-size: 56px; line-height: 1.05; }
.hero h1 {
  display: grid;
  gap: 5px;
  color: var(--paper-ink);
  font-family: var(--font-display);
  font-size: 54px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.hero h1 small {
  display: block;
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  margin-top: 6px;
}
.hero-subtitle { margin: 14px 0 0; color: var(--paper-muted); font-size: 24px; }
.hero .hero-subtitle {
  margin: 8px 0 0;
  color: var(--paper-muted);
  font-family: var(--font-serif);
  font-size: 20px;
  font-weight: 900;
}
.hero-version {
  display: none;
  margin: 0;
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.decision-line {
  margin-bottom: 14px;
  padding: 12px 14px;
  border-radius: 0;
  border: 1px solid var(--paper-line);
  background: var(--paper-bg);
  color: var(--paper-ink);
  font-weight: 800;
  line-height: 1.45;
}
.metric-arrow.up { color: var(--risk-orange); }
.metric-arrow.down { color: var(--risk-green); }
.metric-arrow.flat { color: var(--paper-muted); }
.warning-time {
  color: var(--paper-muted);
  font-size: 12px;
  font-weight: 700;
  margin-left: 8px;
}
.warning-driver {
  color: var(--paper-muted);
  margin-bottom: 6px;
}


.execution-subtitle {
  margin-top: 10px;
  color: var(--paper-muted);
  font-size: 13px;
  font-weight: 700;
}
.action-checklist li::marker { color: var(--risk-green); }
.action-blocklist li::marker { color: var(--risk-red); }
.threshold-list li::marker { color: var(--risk-yellow); }
.position-target-chip {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 0;
  border: 1px solid var(--paper-line);
  background: transparent;
  color: var(--paper-ink);
  font-weight: 800;
  font-size: 12px;
  margin-left: 8px;
}


.execution-lock-card {
  border: 1px solid var(--paper-line-strong);
  border-radius: 0;
  background: var(--paper-bg);
  color: var(--paper-ink);
}
.execution-lock-grid {
  display: grid;
  grid-template-columns: 1.25fr 1fr 1fr 1fr;
  gap: 16px;
  align-items: stretch;
}
.execution-lock-main,
.execution-lock-panel {
  background: var(--paper-bg);
  border: 1px solid var(--paper-line);
  border-radius: 0;
  padding: 16px;
}
.execution-status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 124px;
  padding: 8px 14px;
  border-radius: 0;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.04em;
}
.execution-status-pill.green { background: var(--risk-green); color: #FBF7F0; }
.execution-status-pill.yellow { background: var(--risk-yellow); color: #FBF7F0; }
.execution-status-pill.red { background: var(--risk-red); color: #FBF7F0; }
.execution-status-title {
  margin-top: 14px;
  font-size: 28px;
  font-weight: 900;
  color: var(--paper-ink);
}
.execution-status-desc {
  margin-top: 10px;
  color: var(--paper-warm);
  line-height: 1.55;
}
.lock-allow li::marker { color: var(--risk-green); }
.lock-block li::marker { color: var(--risk-red); }
.lock-mandatory li::marker { color: var(--risk-yellow); }
@media (max-width: 1360px) {
  .execution-lock-grid { grid-template-columns: 1fr; }
}

.hero-status {
  border: 1px solid var(--editorial-line);
  background: rgba(255, 255, 255, 0.58);
  padding: 14px 18px;
  border-radius: 0;
  min-width: 220px;
  text-align: center;
  color: var(--editorial-warm);
  font-family: var(--font-mono);
  font-weight: 900;
}
.dashboard-jump-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
  padding: 14px 0;
  margin: 24px 0;
  border-top: 1px solid var(--paper-line);
  border-bottom: 1px solid var(--paper-line);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.dashboard-jump-nav a {
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  border: 0;
  border-bottom: 1px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--paper-muted);
  font-family: var(--font-mono);
  text-decoration: none;
  transition: color 0.15s ease, border-color 0.15s ease;
}
.dashboard-jump-nav a:hover {
  background: transparent;
  color: var(--paper-ink);
  border-bottom-color: var(--risk-red);
  text-decoration: none;
}
.editorial-section {
  width: 100%;
  max-width: 100%;
  margin: 40px 0;
  position: relative;
}
.editorial-section-header {
  position: relative;
  display: block;
  padding: 24px 28px 20px 28px;
  background: var(--paper-bg);
  border-top: 4px solid var(--section-accent, var(--paper-ink));
  border-bottom: 1px solid var(--paper-line);
  margin-bottom: 24px;
  color: var(--paper-ink);
}
.editorial-section-header .section-kicker {
  display: block;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--section-accent, var(--paper-muted));
  margin-bottom: 8px;
  line-height: 1.4;
}
.editorial-section-header .section-title {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 700;
  color: var(--paper-ink);
  line-height: 1.25;
  letter-spacing: -0.01em;
  margin-bottom: 8px;
}
.editorial-section-header .section-note {
  display: block;
  font-family: var(--font-serif);
  font-size: 13px;
  font-weight: 400;
  color: var(--paper-muted);
  line-height: 1.7;
  max-width: 880px;
}
.editorial-section-summary {
  cursor: pointer;
  list-style: none;
}
.editorial-section-summary::-webkit-details-marker {
  display: none;
}
.editorial-section-panel {
  border: 1px solid var(--paper-line-strong);
  border-radius: 0;
  background: var(--paper-bg);
  color: var(--paper-ink);
}
.editorial-section-panel[open] > .editorial-section-summary {
  margin-bottom: 16px;
}
.editorial-section-body {
  padding: 0 8px;
  min-width: 0;
}
@media (max-width: 640px) {
  .editorial-section-header {
    padding: 20px 18px 16px 18px;
  }
  .editorial-section-body {
    padding: 0;
  }
}
.editorial-appendix-divider {
  margin: 56px 0 32px 0;
  padding: 0 28px;
  border-top: 1px solid var(--paper-line-strong);
  position: relative;
  text-align: center;
}
.editorial-appendix-divider::before,
.editorial-appendix-divider::after {
  content: '';
  position: absolute;
  top: -1px;
  width: 60px;
  height: 1px;
  background: var(--paper-line-strong);
}
.editorial-appendix-divider::before {
  left: 0;
}
.editorial-appendix-divider::after {
  right: 0;
}
.editorial-appendix-divider-label {
  display: inline-block;
  position: relative;
  top: -8px;
  padding: 0 16px;
  background: var(--paper-bg);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--paper-muted);
}
.editorial-folded-content {
  margin-top: 0;
}
.editorial-folded-summary {
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 28px;
  background: var(--paper-bg);
  border-top: 1px solid var(--paper-line);
  border-bottom: 1px solid var(--paper-line);
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--paper-ink);
  list-style: none;
  transition: background-color 0.15s ease;
}
.editorial-folded-summary::-webkit-details-marker {
  display: none;
}
.editorial-folded-summary::marker {
  display: none;
}
.editorial-folded-summary:hover {
  background: rgba(168, 118, 26, 0.06);
}
.editorial-folded-content[open] > .editorial-folded-summary {
  border-bottom-color: var(--section-accent, var(--paper-line-strong));
}
.editorial-folded-content[open] .fold-marker::before {
  content: '\2212';
}
.editorial-folded-content:not([open]) .fold-marker::before {
  content: '+';
}
.fold-marker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  font-family: var(--font-mono);
  font-size: 14px;
  font-weight: 600;
  color: var(--section-accent, var(--paper-ink));
  line-height: 1;
}
.fold-label {
  flex: 1;
}
.editorial-folded-content[open] .fold-label::after {
  content: ' · 收起';
  color: var(--paper-muted);
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0;
  font-size: 12px;
}
.editorial-folded-content:not([open]) .fold-label::after {
  content: ' · 展开';
  color: var(--paper-muted);
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0;
  font-size: 12px;
}
.editorial-folded-content > .editorial-section-body,
.editorial-folded-content > div {
  padding: 24px 28px;
  background: var(--paper-bg);
}
.subsection-meta {
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
}
.editorial-subsection {
  margin: 0;
  border-bottom: 1px solid var(--paper-line);
}
.editorial-subsection:last-of-type {
  border-bottom: none;
}
.editorial-subsection > summary {
  cursor: pointer;
  padding: 16px 0;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--paper-ink);
  list-style: none;
  display: flex;
  align-items: baseline;
  gap: 12px;
}
.editorial-subsection > summary::-webkit-details-marker {
  display: none;
}
.editorial-subsection > summary::marker {
  display: none;
}
.editorial-subsection > summary::before {
  content: '+';
  color: var(--paper-muted);
  font-weight: 600;
  font-size: 14px;
  line-height: 1;
  width: 14px;
}
.editorial-subsection[open] > summary::before {
  content: '\2212';
}
.editorial-section-summary::after,
.editorial-subsection > summary::after,
.advanced-panel > summary::after,
.editorial-method-section > .editorial-method-summary::after,
#method-evidence .editorial-method-panel > summary::after {
  content: none;
  display: none;
}
.editorial-subsection > summary .summary-note {
  display: block;
  width: 100%;
  margin-top: 6px;
  margin-left: 26px;
  font-family: var(--font-serif);
  font-size: 12px;
  font-weight: 400;
  color: var(--paper-muted);
  letter-spacing: 0;
  text-transform: none;
  line-height: 1.6;
}
.editorial-subsection > article,
.editorial-subsection > section,
.editorial-subsection > .editorial-subsection-body {
  padding: 12px 0 20px 0;
}
.editorial-subsection > .card {
  margin: 0 0 18px;
}
.macro-overview-shell,
#macro-risk-overview,
.cockpit-section,
.macro-overview-block {
  background: var(--paper-bg);
  color: var(--paper-ink);
}
.macro-overview-block.macro-overview-hero.editorial-first-fold {
  gap: 16px;
  padding: 22px;
  border: 1px solid var(--paper-line-strong);
  border-top: 4px solid var(--editorial-red);
  border-radius: 0;
  background: var(--paper-bg);
  color: var(--paper-ink);
}
.macro-overview-block.macro-overview-hero.editorial-first-fold h2 {
  color: var(--editorial-red);
  font-size: 15px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.editorial-risk-overline,
.editorial-risk-score-label,
.editorial-meta-label {
  margin: 0;
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.editorial-headline,
.editorial-risk-headline {
  display: grid;
  grid-template-columns: minmax(320px, 0.48fr) minmax(0, 1fr);
  gap: 22px;
  align-items: stretch;
}
.editorial-big-number,
.editorial-risk-score {
  display: grid;
  align-content: space-between;
  gap: 20px;
  min-height: 300px;
  padding: 30px 32px;
  border: 1px solid var(--editorial-ink);
  border-radius: 0;
  background: var(--editorial-ink);
  color: var(--editorial-paper);
}
.editorial-big-number-label,
.editorial-big-number-footer,
.editorial-big-number-breakdown,
.editorial-verdict-label {
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.14em;
  line-height: 1.45;
  text-transform: uppercase;
}
.editorial-big-number-label,
.editorial-big-number-footer {
  color: rgba(251, 247, 240, 0.76);
}
.editorial-big-number-value,
.editorial-risk-score-value {
  color: var(--editorial-paper);
  font-family: var(--font-display);
  font-size: clamp(80px, 14vw, 144px);
  font-weight: 900;
  line-height: 0.86;
  letter-spacing: 0;
}
.editorial-big-number-breakdown {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  color: rgba(251, 247, 240, 0.86);
}
.editorial-risk-stage-value {
  color: var(--editorial-red);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.35;
}
.editorial-verdict,
.editorial-risk-conclusion {
  display: grid;
  align-content: start;
  gap: 14px;
  padding: 28px 30px;
  border: 1px solid var(--paper-line-strong);
  border-radius: 0;
  background: var(--paper-bg);
  color: var(--paper-ink);
}
.editorial-verdict-label {
  color: var(--editorial-red);
}
.editorial-verdict-title {
  margin: 0;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: clamp(30px, 5vw, 54px);
  font-weight: 900;
  line-height: 1.08;
}
.editorial-verdict-body,
.editorial-verdict-footnote {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.65;
}
.editorial-verdict-footnote {
  border-top: 1px solid var(--editorial-line);
  padding-top: 12px;
  color: var(--editorial-muted);
  font-size: 14px;
}
.editorial-verdict-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid var(--editorial-line);
  background: var(--editorial-line);
}
.macro-overview-block.macro-overview-hero.editorial-first-fold .macro-overview-one-line {
  max-width: 1040px;
  color: var(--editorial-ink);
  font-size: 28px;
  font-weight: 900;
  line-height: 1.45;
}
.macro-overview-block.macro-overview-hero.editorial-first-fold .macro-overview-kicker,
.macro-overview-block.macro-overview-hero.editorial-first-fold .macro-overview-muted {
  color: var(--editorial-warm);
}
.editorial-meta-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid var(--editorial-line);
  background: var(--editorial-line);
}
.editorial-meta-item {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 12px 13px;
  background: var(--paper-bg);
}
.editorial-meta-value {
  color: var(--editorial-ink);
  font-size: 14px;
  line-height: 1.35;
}
.editorial-threshold,
.editorial-risk-scale {
  display: grid;
  gap: 12px;
  padding: 16px 0 0;
}
.editorial-threshold-label,
.editorial-risk-scale-header,
.editorial-risk-scale-labels {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}
.editorial-threshold-label strong,
.editorial-risk-scale-header strong,
.editorial-risk-scale-labels .is-active {
  color: var(--editorial-red);
}
.editorial-threshold-bar,
.editorial-risk-scale-track {
  position: relative;
  display: flex;
  height: 30px;
  overflow: visible;
  border: 1px solid var(--editorial-ink);
  background: rgba(26, 24, 21, 0.08);
}
.editorial-threshold-zone,
.editorial-risk-scale-segment {
  flex-grow: 0;
  flex-shrink: 0;
  min-width: 0;
}
.editorial-threshold-zone:nth-child(1),
.editorial-risk-scale-segment:nth-child(1) { background: rgba(31, 77, 44, 0.72); }
.editorial-threshold-zone:nth-child(2),
.editorial-risk-scale-segment:nth-child(2) { background: rgba(168, 118, 26, 0.72); }
.editorial-threshold-zone:nth-child(3),
.editorial-risk-scale-segment:nth-child(3) { background: rgba(194, 94, 42, 0.74); }
.editorial-threshold-zone:nth-child(4),
.editorial-risk-scale-segment:nth-child(4) { background: rgba(124, 29, 29, 0.72); }
.editorial-threshold-zone.is-active,
.editorial-risk-scale-segment.is-active {
}
.editorial-threshold-marker,
.editorial-risk-scale-marker {
  position: absolute;
  top: -6px;
  width: 3px;
  height: 42px;
  border: 0;
  border-radius: 0;
  background: var(--editorial-ink);
transform: translateX(-50%);
}
.editorial-threshold-marker-label {
  position: absolute;
  left: 50%;
  bottom: calc(100% + 8px);
  min-width: max-content;
  transform: translateX(-50%);
  color: var(--editorial-ink);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1.35;
  text-transform: uppercase;
}
.editorial-threshold-caption {
  display: grid;
  grid-template-columns: 2fr 0.6fr 0.8fr 0.6fr;
  gap: 8px;
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}
.editorial-threshold-caption-item.is-active {
  color: var(--editorial-red);
}
.editorial-risk-scale-empty {
  margin: 0;
  color: var(--editorial-muted);
  font-weight: 800;
}
.editorial-threshold-override,
.editorial-risk-scale-override {
  margin: 0;
  color: var(--editorial-red);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.45;
}
.editorial-section-wow {
  padding: 0;
}
.wow-body {
  padding-top: 8px;
}
.wow-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  gap: 24px 32px;
  border: 0;
  background: transparent;
}
.wow-item {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.wow-tag {
  display: inline-block;
  align-self: flex-start;
  padding: 4px 10px;
  border-radius: 0;
  background: var(--paper-ink);
  color: var(--paper-bg);
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1.4;
  text-transform: uppercase;
}
.wow-tag.up,
.wow-tag.is-up {
  background: var(--risk-yellow);
  color: var(--paper-bg);
}
.wow-tag.down,
.wow-tag.is-down {
  background: var(--risk-green);
  color: var(--paper-bg);
}
.wow-tag.flat,
.wow-tag.gap,
.wow-tag.is-flat,
.wow-tag.is-gap {
  background: var(--paper-muted);
  color: var(--paper-bg);
}
.wow-text {
  margin: 0;
  color: var(--paper-ink);
  font-family: var(--font-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
}
.wow-source {
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1.4;
  text-transform: uppercase;
}
#global-risk-heatmap {
  overflow: visible;
}
#global-risk-heatmap > .editorial-section-header {
  border-top-color: var(--risk-red);
}
.editorial-watch-list {
  border: 1px solid var(--editorial-line);
  border-top: 4px double var(--editorial-ink);
  border-radius: 2px;
  background: rgba(255, 252, 245, 0.78);
  color: var(--editorial-ink);
}
.editorial-watch-kicker {
  margin: 0;
  color: var(--editorial-red);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.16em;
  line-height: 1.45;
}
.editorial-watch-title {
  margin: 0;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: clamp(30px, 5vw, 54px);
  font-weight: 900;
  line-height: 1.08;
}
.editorial-watch-summary {
  max-width: 980px;
  margin: 0;
  color: var(--editorial-warm);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.65;
}
.editorial-watch-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.editorial-watch-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  min-width: 0;
  padding: 15px;
  border: 1px solid rgba(26, 24, 21, 0.16);
  border-left: 3px solid var(--editorial-red);
  background: rgba(251, 247, 240, 0.82);
}
.editorial-watch-item.is-down {
  border-left-color: var(--editorial-green);
}
.editorial-watch-icon {
  color: var(--editorial-red);
  font-family: var(--font-display);
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
}
.editorial-watch-item.is-down .editorial-watch-icon {
  color: var(--editorial-green);
}
.editorial-watch-item-title {
  margin: 0 0 6px;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.25;
}
.editorial-watch-item-desc {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.6;
}
.editorial-watch-item-meta {
  display: inline-flex;
  margin-top: 9px;
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.35;
  text-transform: uppercase;
}
.macro-overview-block.editorial-category {
  gap: 16px;
  border-color: var(--editorial-line);
  background: rgba(251, 247, 240, 0.96);
  color: var(--editorial-ink);
}
.macro-overview-block.editorial-category h2 {
  color: var(--editorial-ink);
  font-size: 24px;
  line-height: 1.25;
}
.editorial-category-kicker {
  order: -1;
  margin: 0;
  color: var(--editorial-red);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.16em;
}
.editorial-category-summary {
  max-width: 980px;
  margin: 0;
  color: var(--editorial-warm);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.65;
}
.editorial-category-counts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.editorial-count-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 32px;
  padding: 6px 10px;
  border: 1px solid var(--editorial-line);
  border-radius: 999px;
  background: rgba(26, 24, 21, 0.04);
  color: var(--editorial-warm);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}
.editorial-count-pill strong {
  color: var(--editorial-ink);
  font-size: 14px;
}
.editorial-pressure-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.editorial-pressure-card {
  position: relative;
  display: grid;
  align-content: start;
  gap: 11px;
  min-width: 0;
  overflow: hidden;
  padding: 0 14px 14px;
  border: 1px solid var(--editorial-line);
  border-radius: 8px;
  background: rgba(251, 247, 240, 0.94);
  color: var(--editorial-ink);
}
.editorial-pressure-card-status-strip {
  height: 5px;
  margin: 0 -14px;
  background: var(--editorial-muted);
}
.editorial-pressure-card.is-major .editorial-pressure-card-status-strip,
.editorial-pressure-card.is-major .editorial-pressure-badge {
  background: var(--editorial-red);
}
.editorial-pressure-card.is-rising .editorial-pressure-card-status-strip,
.editorial-pressure-card.is-rising .editorial-pressure-badge {
  background: var(--editorial-orange);
}
.editorial-pressure-card.is-watch .editorial-pressure-card-status-strip,
.editorial-pressure-card.is-watch .editorial-pressure-badge {
  background: var(--editorial-yellow);
}
.editorial-pressure-card.is-calm .editorial-pressure-card-status-strip,
.editorial-pressure-card.is-calm .editorial-pressure-badge {
  background: var(--editorial-green);
}
.editorial-pressure-card.is-gap .editorial-pressure-card-status-strip,
.editorial-pressure-card.is-gap .editorial-pressure-badge {
  background: #7a7167;
}
.editorial-pressure-card-head {
  display: grid;
  gap: 8px;
}
.editorial-pressure-card-title {
  margin: 0;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 17px;
  line-height: 1.35;
}
.editorial-pressure-badge {
  justify-self: start;
  padding: 4px 8px;
  border-radius: 999px;
  color: #fffaf2;
  background: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
}
.editorial-pressure-main {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.45;
}
.editorial-pressure-card.is-major .editorial-pressure-main {
  color: var(--editorial-red);
}
.editorial-pressure-card.is-rising .editorial-pressure-main {
  color: var(--editorial-orange);
}
.editorial-pressure-card.is-watch .editorial-pressure-main {
  color: var(--editorial-yellow);
}
.editorial-pressure-card.is-calm .editorial-pressure-main {
  color: var(--editorial-green);
}
.editorial-pressure-card.is-gap .editorial-pressure-main {
  color: #7a7167;
}
.editorial-pressure-card.is-neutral .editorial-pressure-main {
  color: var(--editorial-warm);
}
.editorial-pressure-explanation {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 13px;
  line-height: 1.6;
}
.editorial-pressure-sublist {
  display: grid;
  gap: 5px;
  padding-top: 9px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
}
.editorial-pressure-sublist-label {
  color: var(--editorial-muted);
  font-size: 12px;
  font-weight: 900;
}
.editorial-pressure-evidence {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
  color: var(--editorial-warm);
  font-size: 12px;
  line-height: 1.55;
}
.editorial-pressure-sublist.is-missing {
  background: rgba(124, 29, 29, 0.06);
  margin: 0 -6px;
  padding: 9px 6px 0;
}
.editorial-pressure-sublist.is-missing .editorial-pressure-sublist-label {
  color: var(--editorial-red);
}
.editorial-pressure-sublist.is-counter .editorial-pressure-sublist-label {
  color: var(--editorial-green);
}
.editorial-pressure-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.45;
}
.editorial-signal-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.editorial-signal-card {
  position: relative;
  display: grid;
  align-content: start;
  gap: 11px;
  min-width: 0;
  overflow: hidden;
  padding: 0 14px 14px;
  border: 1px solid var(--editorial-line);
  border-radius: 8px;
  background: rgba(251, 247, 240, 0.94);
  color: var(--editorial-ink);
}
.editorial-signal-card-status-strip {
  height: 5px;
  margin: 0 -14px;
  background: var(--editorial-muted);
}
.editorial-signal-card.is-verified .editorial-signal-card-status-strip,
.editorial-signal-card.is-verified .editorial-signal-badge,
.editorial-signal-card.is-verified .editorial-signal-bucket {
  background: var(--editorial-green);
  color: #fffaf2;
}
.editorial-signal-card.is-pending .editorial-signal-card-status-strip,
.editorial-signal-card.is-pending .editorial-signal-badge,
.editorial-signal-card.is-pending .editorial-signal-bucket {
  background: var(--editorial-yellow);
  color: #fffaf2;
}
.editorial-signal-card.is-noise .editorial-signal-card-status-strip,
.editorial-signal-card.is-noise .editorial-signal-badge,
.editorial-signal-card.is-noise .editorial-signal-bucket {
  background: #7a7167;
  color: #fffaf2;
}
.editorial-signal-card.is-gap .editorial-signal-card-status-strip,
.editorial-signal-card.is-gap .editorial-signal-badge,
.editorial-signal-card.is-gap .editorial-signal-bucket {
  background: #8d6f67;
  color: #fffaf2;
}
.editorial-signal-card-head {
  display: grid;
  gap: 8px;
}
.editorial-signal-card-title {
  margin: 0;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 17px;
  line-height: 1.35;
}
.editorial-signal-bucket,
.editorial-signal-badge {
  justify-self: start;
  padding: 4px 8px;
  border-radius: 999px;
  color: #fffaf2;
  background: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
}
.editorial-signal-bucket {
  color: var(--editorial-ink);
  background: rgba(26, 24, 21, 0.10);
}
.editorial-signal-card.is-verified .editorial-signal-main {
  color: var(--editorial-green);
}
.editorial-signal-card.is-pending .editorial-signal-main {
  color: var(--editorial-yellow);
}
.editorial-signal-card.is-noise .editorial-signal-main {
  color: #7a7167;
}
.editorial-signal-card.is-gap .editorial-signal-main {
  color: #7a7167;
}
.editorial-signal-card.is-neutral .editorial-signal-main {
  color: var(--editorial-warm);
}
.editorial-signal-main {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.45;
}
.editorial-signal-explanation {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 13px;
  line-height: 1.6;
}
.editorial-signal-sublist {
  display: grid;
  gap: 5px;
  padding-top: 9px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
}
.editorial-signal-sublist-label {
  color: var(--editorial-muted);
  font-size: 12px;
  font-weight: 900;
}
.editorial-signal-evidence {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
  color: var(--editorial-warm);
  font-size: 12px;
  line-height: 1.55;
}
.editorial-signal-sublist.is-missing {
  background: rgba(124, 29, 29, 0.06);
  margin: 0 -6px;
  padding: 9px 6px 0;
}
.editorial-signal-sublist.is-missing .editorial-signal-sublist-label,
.editorial-signal-sublist.is-noise .editorial-signal-sublist-label {
  color: var(--editorial-red);
}
.editorial-signal-sublist.is-counter .editorial-signal-sublist-label {
  color: var(--editorial-green);
}
.editorial-signal-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.45;
}
.editorial-driver-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.editorial-driver-card {
  position: relative;
  display: grid;
  align-content: start;
  gap: 11px;
  min-width: 0;
  overflow: hidden;
  padding: 0 14px 14px;
  border: 1px solid var(--editorial-line);
  border-radius: 8px;
  background: rgba(251, 247, 240, 0.94);
  color: var(--editorial-ink);
}
.editorial-driver-card-status-strip {
  height: 5px;
  margin: 0 -14px;
  background: var(--editorial-muted);
}
.editorial-driver-card.is-growth .editorial-driver-card-status-strip,
.editorial-driver-card.is-growth .editorial-driver-type {
  background: #9b7c36;
  color: #fffaf2;
}
.editorial-driver-card.is-inflation .editorial-driver-card-status-strip,
.editorial-driver-card.is-inflation .editorial-driver-type {
  background: var(--editorial-orange);
  color: #fffaf2;
}
.editorial-driver-card.is-liquidity .editorial-driver-card-status-strip,
.editorial-driver-card.is-liquidity .editorial-driver-type {
  background: var(--editorial-yellow);
  color: #fffaf2;
}
.editorial-driver-card.is-policy .editorial-driver-card-status-strip,
.editorial-driver-card.is-policy .editorial-driver-type {
  background: #7a7167;
  color: #fffaf2;
}
.editorial-driver-card.is-rising .editorial-driver-badge {
  background: var(--editorial-orange);
  color: #fffaf2;
}
.editorial-driver-card.is-watch .editorial-driver-badge {
  background: var(--editorial-yellow);
  color: #fffaf2;
}
.editorial-driver-card.is-gap .editorial-driver-badge {
  background: #8d6f67;
  color: #fffaf2;
}
.editorial-driver-card-head {
  display: grid;
  gap: 8px;
}
.editorial-driver-card-title {
  margin: 0;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 17px;
  line-height: 1.35;
}
.editorial-driver-type,
.editorial-driver-badge {
  justify-self: start;
  padding: 4px 8px;
  border-radius: 999px;
  color: #fffaf2;
  background: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
}
.editorial-driver-badge {
  color: var(--editorial-ink);
  background: rgba(26, 24, 21, 0.10);
}
.editorial-driver-main {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.45;
}
.editorial-driver-card.is-rising .editorial-driver-main {
  color: var(--editorial-orange);
}
.editorial-driver-card.is-watch .editorial-driver-main {
  color: var(--editorial-yellow);
}
.editorial-driver-card.is-gap .editorial-driver-main {
  color: #7a7167;
}
.editorial-driver-card.is-neutral .editorial-driver-main {
  color: var(--editorial-warm);
}
.editorial-driver-explanation {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 13px;
  line-height: 1.6;
}
.editorial-driver-sublist {
  display: grid;
  gap: 5px;
  padding-top: 9px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
}
.editorial-driver-sublist-label {
  color: var(--editorial-muted);
  font-size: 12px;
  font-weight: 900;
}
.editorial-driver-evidence {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
  color: var(--editorial-warm);
  font-size: 12px;
  line-height: 1.55;
}
.editorial-driver-sublist.is-missing {
  background: rgba(124, 29, 29, 0.06);
  margin: 0 -6px;
  padding: 9px 6px 0;
}
.editorial-driver-sublist.is-missing .editorial-driver-sublist-label,
.editorial-driver-sublist.is-noise .editorial-driver-sublist-label {
  color: var(--editorial-red);
}
.editorial-driver-sublist.is-counter .editorial-driver-sublist-label {
  color: var(--editorial-green);
}
.editorial-driver-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.45;
}
.editorial-market-temp-panel {
  position: relative;
  display: grid;
  gap: 14px;
  overflow: hidden;
  padding: 0 16px 16px;
  border: 1px solid var(--editorial-line);
  border-radius: 8px;
  background: rgba(251, 247, 240, 0.96);
  color: var(--editorial-ink);
}
.editorial-market-temp-status-strip {
  height: 5px;
  margin: 0 -16px;
  background: var(--editorial-yellow);
}
.editorial-market-temp-head {
  display: grid;
  gap: 8px;
}
.editorial-market-temp-kicker {
  justify-self: start;
  padding: 4px 8px;
  border-radius: 999px;
  color: #fffaf2;
  background: var(--editorial-yellow);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
}
.editorial-market-temp-title {
  margin: 0;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 22px;
  line-height: 1.25;
}
.editorial-market-temp-badge {
  justify-self: start;
  padding: 5px 9px;
  border: 1px solid rgba(168, 118, 26, 0.36);
  border-radius: 999px;
  color: var(--editorial-warm);
  background: rgba(168, 118, 26, 0.12);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
}
.editorial-market-temp-main {
  margin: 0;
  color: var(--editorial-orange);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.45;
}
.editorial-market-temp-note {
  max-width: 880px;
  margin: 0;
  color: var(--editorial-warm);
  font-size: 14px;
  line-height: 1.65;
}
.editorial-market-temp-checklist {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.editorial-market-temp-checklist li {
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid rgba(124, 29, 29, 0.18);
  border-radius: 8px;
  color: var(--editorial-warm);
  background: rgba(124, 29, 29, 0.055);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.45;
}
.editorial-market-temp-scale {
  display: grid;
  gap: 8px;
}
.editorial-market-temp-scale-disabled {
  margin: 0;
  color: #7a7167;
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
}
.editorial-market-temp-scale-track {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid rgba(26, 24, 21, 0.18);
  border-radius: 999px;
  background: rgba(26, 24, 21, 0.04);
  opacity: 0.72;
}
.editorial-market-temp-scale-segment {
  min-width: 0;
  padding: 7px 8px;
  border-right: 1px solid rgba(26, 24, 21, 0.14);
  color: #7a7167;
  text-align: center;
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 850;
}
.editorial-market-temp-scale-segment:last-child {
  border-right: 0;
}
.editorial-market-temp-boundary {
  margin: 0;
  padding: 10px 12px;
  border-left: 3px solid var(--editorial-red);
  color: var(--editorial-warm);
  background: rgba(26, 24, 21, 0.045);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.55;
}
.editorial-market-temp-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.45;
}
.macro-temperature-card {
  border: 1px solid var(--paper-line-strong);
  background: var(--paper-bg);
  color: var(--paper-ink);
}
.market-temperature-card-active {
  gap: 16px;
  padding: 0 18px 18px;
}
.market-temperature-card-active .editorial-market-temp-status-strip {
  background: var(--risk-red);
}
.market-temperature-card-active .editorial-market-temp-kicker {
  background: var(--paper-ink);
  color: var(--paper-bg);
}
.market-temperature-bucket-extreme-hot {
  color: var(--risk-red);
}
.market-temperature-bucket-hot {
  color: var(--risk-yellow);
}
.market-temperature-bucket-neutral {
  color: var(--paper-ink);
}
.market-temperature-bucket-cold {
  color: var(--paper-muted);
}
.market-temperature-bucket-extreme-cold {
  color: var(--risk-green);
}
.market-temperature-zscore-large {
  margin: 0;
  color: var(--paper-ink);
  font-family: var(--font-display);
  font-size: clamp(52px, 9vw, 94px);
  font-weight: 900;
  letter-spacing: 0;
  line-height: 0.95;
}
.market-temperature-zscore-label {
  margin: 0;
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1.4;
  text-transform: uppercase;
}
.market-temperature-secondary-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.market-temperature-secondary-metrics span {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid var(--paper-line);
  color: var(--paper-warm);
  font-family: var(--font-serif);
  font-size: 13px;
  line-height: 1.45;
}
.market-temperature-secondary-metrics small {
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}
.market-temperature-secondary-metrics strong {
  color: var(--paper-ink);
  font-family: var(--font-display);
  font-size: 18px;
  line-height: 1.2;
}
.market-temperature-history-range {
  margin: 0;
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.5;
}
.market-temperature-sparkline {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
  padding-top: 2px;
}
.market-temperature-sparkline span {
  min-width: 0;
  padding: 7px 6px;
  border: 1px solid var(--paper-line);
  color: var(--paper-ink);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;
  text-align: center;
}
.market-temperature-source-line,
.market-temperature-disclaimer {
  margin: 0;
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
}
.market-temperature-disclaimer {
  border-top: 1px solid var(--paper-line);
  padding-top: 10px;
}
.editorial-engine-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}
.editorial-engine-card {
  position: relative;
  display: grid;
  align-content: start;
  gap: 11px;
  min-width: 0;
  overflow: hidden;
  padding: 0 14px 14px;
  border: 1px solid var(--editorial-line);
  border-radius: 8px;
  background: rgba(251, 247, 240, 0.94);
  color: var(--editorial-ink);
}
.editorial-engine-card-status-strip {
  height: 5px;
  margin: 0 -14px;
  background: var(--editorial-muted);
}
.editorial-engine-card.is-energy .editorial-engine-card-status-strip,
.editorial-engine-card.is-energy .editorial-engine-type {
  background: var(--editorial-orange);
  color: #fffaf2;
}
.editorial-engine-card.is-rates .editorial-engine-card-status-strip,
.editorial-engine-card.is-rates .editorial-engine-type {
  background: var(--editorial-yellow);
  color: #fffaf2;
}
.editorial-engine-card.is-pricing .editorial-engine-card-status-strip,
.editorial-engine-card.is-pricing .editorial-engine-type {
  background: #c07a3d;
  color: #fffaf2;
}
.editorial-engine-card.is-credit .editorial-engine-card-status-strip,
.editorial-engine-card.is-credit .editorial-engine-type {
  background: #7a7167;
  color: #fffaf2;
}
.editorial-engine-card.is-world-order .editorial-engine-card-status-strip,
.editorial-engine-card.is-world-order .editorial-engine-type {
  background: #8d6f67;
  color: #fffaf2;
}
.editorial-engine-card.is-rising .editorial-engine-badge {
  background: var(--editorial-orange);
  color: #fffaf2;
}
.editorial-engine-card.is-watch .editorial-engine-badge {
  background: var(--editorial-yellow);
  color: #fffaf2;
}
.editorial-engine-card.is-counter .editorial-engine-badge {
  background: var(--editorial-green);
  color: #fffaf2;
}
.editorial-engine-card.is-gap .editorial-engine-badge {
  background: #8d6f67;
  color: #fffaf2;
}
.editorial-engine-card-head {
  display: grid;
  gap: 8px;
}
.editorial-engine-card-title {
  margin: 0;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 17px;
  line-height: 1.35;
}
.editorial-engine-type,
.editorial-engine-badge {
  justify-self: start;
  padding: 4px 8px;
  border-radius: 999px;
  color: #fffaf2;
  background: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
}
.editorial-engine-badge {
  color: var(--editorial-ink);
  background: rgba(26, 24, 21, 0.10);
}
.editorial-engine-main {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.45;
}
.editorial-engine-card.is-rising .editorial-engine-main {
  color: var(--editorial-orange);
}
.editorial-engine-card.is-watch .editorial-engine-main {
  color: var(--editorial-yellow);
}
.editorial-engine-card.is-counter .editorial-engine-main {
  color: var(--editorial-green);
}
.editorial-engine-card.is-gap .editorial-engine-main {
  color: #7a7167;
}
.editorial-engine-card.is-neutral .editorial-engine-main {
  color: var(--editorial-warm);
}
.editorial-engine-explanation {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 13px;
  line-height: 1.6;
}
.editorial-engine-sublist {
  display: grid;
  gap: 5px;
  padding-top: 9px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
}
.editorial-engine-sublist-label {
  color: var(--editorial-muted);
  font-size: 12px;
  font-weight: 900;
}
.editorial-engine-evidence {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
  color: var(--editorial-warm);
  font-size: 12px;
  line-height: 1.55;
}
.editorial-engine-sublist.is-missing {
  background: rgba(124, 29, 29, 0.06);
  margin: 0 -6px;
  padding: 9px 6px 0;
}
.editorial-engine-sublist.is-missing .editorial-engine-sublist-label,
.editorial-engine-sublist.is-noise .editorial-engine-sublist-label {
  color: var(--editorial-red);
}
.editorial-engine-sublist.is-counter .editorial-engine-sublist-label {
  color: var(--editorial-green);
}
.editorial-engine-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.45;
}
.editorial-validation-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.editorial-validation-card {
  position: relative;
  display: grid;
  align-content: start;
  gap: 11px;
  min-width: 0;
  overflow: hidden;
  padding: 0 14px 14px;
  border: 1px solid var(--editorial-line);
  border-radius: 8px;
  background: rgba(251, 247, 240, 0.94);
  color: var(--editorial-ink);
}
.editorial-validation-card-status-strip {
  height: 5px;
  margin: 0 -14px;
  background: var(--editorial-muted);
}
.editorial-validation-card.is-confirmed .editorial-validation-card-status-strip,
.editorial-validation-card.is-confirmed .editorial-validation-type,
.editorial-validation-card.is-confirmed .editorial-validation-badge {
  background: var(--editorial-green);
  color: #fffaf2;
}
.editorial-validation-card.is-pending .editorial-validation-card-status-strip,
.editorial-validation-card.is-pending .editorial-validation-type,
.editorial-validation-card.is-pending .editorial-validation-badge {
  background: var(--editorial-yellow);
  color: #fffaf2;
}
.editorial-validation-card.is-counter .editorial-validation-card-status-strip,
.editorial-validation-card.is-counter .editorial-validation-type,
.editorial-validation-card.is-counter .editorial-validation-badge {
  background: var(--editorial-green);
  color: #fffaf2;
}
.editorial-validation-card.is-gap .editorial-validation-card-status-strip,
.editorial-validation-card.is-gap .editorial-validation-type,
.editorial-validation-card.is-gap .editorial-validation-badge {
  background: #8d6f67;
  color: #fffaf2;
}
.editorial-validation-card-head {
  display: grid;
  gap: 8px;
}
.editorial-validation-card-title {
  margin: 0;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 17px;
  line-height: 1.35;
}
.editorial-validation-type,
.editorial-validation-badge {
  justify-self: start;
  padding: 4px 8px;
  border-radius: 999px;
  color: #fffaf2;
  background: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
}
.editorial-validation-badge {
  color: var(--editorial-ink);
  background: rgba(26, 24, 21, 0.10);
}
.editorial-validation-main {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.45;
}
.editorial-validation-card.is-confirmed .editorial-validation-main {
  color: var(--editorial-green);
}
.editorial-validation-card.is-pending .editorial-validation-main {
  color: var(--editorial-yellow);
}
.editorial-validation-card.is-counter .editorial-validation-main {
  color: var(--editorial-green);
}
.editorial-validation-card.is-gap .editorial-validation-main {
  color: #7a7167;
}
.editorial-validation-card.is-neutral .editorial-validation-main {
  color: var(--editorial-warm);
}
.editorial-validation-explanation {
  margin: 0;
  color: var(--editorial-warm);
  font-size: 13px;
  line-height: 1.6;
}
.editorial-validation-sublist {
  display: grid;
  gap: 5px;
  padding-top: 9px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
}
.editorial-validation-sublist-label {
  color: var(--editorial-muted);
  font-size: 12px;
  font-weight: 900;
}
.editorial-validation-evidence {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
  color: var(--editorial-warm);
  font-size: 12px;
  line-height: 1.55;
}
.editorial-validation-sublist.is-missing,
.editorial-validation-sublist.is-noise {
  background: rgba(124, 29, 29, 0.06);
  margin: 0 -6px;
  padding: 9px 6px 0;
}
.editorial-validation-sublist.is-missing .editorial-validation-sublist-label,
.editorial-validation-sublist.is-noise .editorial-validation-sublist-label {
  color: var(--editorial-red);
}
.editorial-validation-sublist.is-counter .editorial-validation-sublist-label {
  color: var(--editorial-green);
}
.editorial-validation-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(26, 24, 21, 0.14);
  color: var(--editorial-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.45;
}
.editorial-evidence-supporting {
  border-top-color: var(--risk-green);
}
.editorial-evidence-supporting .editorial-validation-sublist-label {
  color: var(--risk-green);
}
.editorial-evidence-missing {
  border-top-color: var(--paper-muted);
}
.editorial-evidence-missing .editorial-validation-sublist-label {
  color: var(--paper-muted);
}
.editorial-evidence-contradicting {
  border-top-color: var(--risk-red);
}
.editorial-evidence-contradicting .editorial-validation-sublist-label {
  color: var(--risk-red);
}
.editorial-assessment-strong-confirmation .editorial-validation-card-status-strip,
.editorial-assessment-strong-confirmation .editorial-validation-type,
.editorial-assessment-strong-confirmation .editorial-validation-badge {
  background: var(--risk-red);
  color: var(--paper-bg);
}
.editorial-assessment-partial-confirmation .editorial-validation-card-status-strip,
.editorial-assessment-partial-confirmation .editorial-validation-type,
.editorial-assessment-partial-confirmation .editorial-validation-badge {
  background: var(--risk-yellow);
  color: var(--paper-bg);
}
.editorial-assessment-insufficient-data .editorial-validation-card-status-strip,
.editorial-assessment-insufficient-data .editorial-validation-type,
.editorial-assessment-insufficient-data .editorial-validation-badge {
  background: var(--paper-muted);
  color: var(--paper-bg);
}
.editorial-assessment-contradiction .editorial-validation-card-status-strip,
.editorial-assessment-contradiction .editorial-validation-type,
.editorial-assessment-contradiction .editorial-validation-badge {
  background: var(--risk-green);
  color: var(--paper-bg);
}
.editorial-consistency-summary {
  display: grid;
  grid-template-columns: minmax(120px, 180px) minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
  margin: 18px 0;
  padding: 16px;
  border-top: 3px double var(--paper-ink);
  border-bottom: 1px solid var(--paper-line);
  background: var(--paper-bg);
}
.editorial-consistency-score-display {
  display: grid;
  align-content: center;
  gap: 4px;
  border-right: 1px solid var(--paper-line);
  padding-right: 16px;
}
.editorial-consistency-score-display span {
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.18em;
}
.editorial-consistency-score-display strong {
  color: var(--paper-ink);
  font-family: var(--font-display);
  font-size: clamp(40px, 8vw, 72px);
  font-weight: 900;
  line-height: 0.95;
}
.editorial-consistency-state {
  margin: 0 0 8px;
  color: var(--paper-ink);
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 800;
}
.editorial-consistency-line {
  margin: 0;
  color: var(--paper-warm);
  font-size: 14px;
  line-height: 1.65;
}
.editorial-cross-validation-education {
  margin-top: 20px;
  border-top: 1px solid var(--paper-line);
}
.editorial-cross-validation-education-body {
  display: grid;
  gap: 18px;
  padding: 24px 28px;
  background: var(--paper-bg);
}
.editorial-cross-validation-education-section {
  padding-bottom: 16px;
  border-bottom: 1px solid var(--paper-line);
}
.editorial-cross-validation-education-section:last-child {
  border-bottom: 0;
}
.editorial-cross-validation-education-section h3 {
  margin: 0 0 10px;
  color: var(--paper-ink);
  font-family: var(--font-serif);
  font-size: 18px;
  font-weight: 800;
}
.editorial-cross-validation-education-section p,
.editorial-cross-validation-education-section li {
  color: var(--paper-warm);
  font-size: 14px;
  line-height: 1.75;
}
.editorial-cross-validation-education-section p {
  margin: 0 0 10px;
}
.editorial-cross-validation-education-section ul {
  margin: 8px 0 12px;
  padding-left: 22px;
}
.editorial-cross-validation-education-reminder {
  display: block;
  margin-top: 8px;
  color: var(--paper-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.04em;
}
.editorial-cross-validation-education-section.is-boundary {
  margin-top: 2px;
  padding-top: 18px;
  border-top: 3px double var(--paper-ink);
}
.editorial-cross-validation-education-section.is-boundary p,
.editorial-cross-validation-education-section.is-boundary li {
  color: var(--paper-ink);
  font-weight: 600;
}
main { display: grid; gap: 22px; }
.section-group-title {
  margin: 18px 0 2px;
  padding: 0 4px;
  color: var(--paper-ink);
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 0.04em;
}
.section-group-title::after {
  content: '';
  display: block;
  width: 68px;
  height: 2px;
  margin-top: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--blue), transparent);
}
.cockpit-layer { order: 10; }
.cockpit-section { order: 20; }
.risk-layer { order: 30; }
.risk-section { order: 40; }
.advanced-layer { order: 50; }
.advanced-panel {
  order: 60;
  border: 1px solid var(--paper-line);
  border-radius: 0;
  background: var(--paper-bg);
}
.advanced-panel > summary {
  cursor: pointer;
  padding: 12px 0;
  border-bottom: 1px solid var(--paper-line);
  color: var(--paper-ink);
  font-family: var(--font-mono);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.08em;
  list-style: none;
}
.advanced-panel > summary::-webkit-details-marker {
  display: none;
}
.advanced-panel > summary::after {
  content: none;
  display: none;
}
.advanced-panel[open] > summary::after {
  content: none;
  display: none;
}
.advanced-panel > section {
  margin: 0 20px 20px;
}
.advanced-panel[open] > summary {
  border-bottom: 1px solid var(--paper-line);
  margin-bottom: 20px;
}
.advanced-panel > summary .summary-note {
  display: block;
  margin-top: 4px;
  color: var(--paper-muted);
  font-family: var(--font-serif);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}
.editorial-external-ai-panel {
  border: 1px solid var(--paper-line-strong);
  border-radius: 0;
  background: var(--paper-bg);
  color: var(--editorial-ink);
}
.editorial-external-ai-panel > .card-head {
  margin: 0;
  padding: 20px 22px;
  border-bottom: 1px solid var(--editorial-line);
  align-items: flex-start;
}
.editorial-external-ai-kicker,
.editorial-external-ai-meta,
.editorial-external-ai-panel .external-ai-badge,
.editorial-external-ai-panel .external-ai-source-meta {
  color: var(--editorial-red);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.editorial-external-ai-title {
  margin: 6px 0 8px;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 28px;
  font-weight: 900;
  line-height: 1.2;
}
.editorial-external-ai-boundary {
  max-width: 880px;
  color: var(--editorial-warm);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.65;
}
.editorial-external-ai-meta {
  border-color: rgba(26, 24, 21, 0.18);
  background: transparent;
}
#external-ai-display-panel[hidden] {
  display: none;
}
.editorial-external-ai-card:not([hidden]) {
  margin: 0;
  padding: 18px 20px 20px;
}
.editorial-external-ai-panel .external-ai-card {
  border: 1px solid rgba(26, 24, 21, 0.18);
  border-left: 4px solid var(--editorial-red);
  border-radius: 0;
  background: var(--paper-bg);
color: var(--editorial-ink);
}
.editorial-external-ai-panel .external-ai-header {
  gap: 16px;
}
.editorial-external-ai-panel .external-ai-header h2 {
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 24px;
  line-height: 1.25;
}
.editorial-external-ai-panel .external-ai-kicker {
  max-width: 820px;
  color: var(--editorial-warm);
  font-family: var(--font-serif);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.65;
}
.editorial-external-ai-panel .external-ai-badge {
  border-color: rgba(141, 42, 35, 0.22);
  background: transparent;
  color: var(--editorial-red);
  letter-spacing: 0.08em;
}
.editorial-external-ai-panel .external-ai-summary {
  border-left: 4px solid var(--editorial-orange);
  background: var(--paper-bg);
}
.editorial-external-ai-panel .external-ai-summary p {
  color: var(--editorial-ink);
  font-family: var(--font-serif);
  font-weight: 800;
}
.editorial-external-ai-panel .external-ai-section {
  border: 1px solid rgba(26, 24, 21, 0.16);
  background: var(--paper-bg);
  color: var(--editorial-ink);
}
.editorial-external-ai-panel .external-ai-section h3,
.editorial-external-ai-panel .external-ai-scenario-title {
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-weight: 900;
}
.editorial-external-ai-panel .external-ai-section-label,
.editorial-external-ai-panel .external-ai-muted,
.editorial-external-ai-panel .external-ai-list,
.editorial-external-ai-panel .external-ai-list li,
.editorial-external-ai-panel .external-ai-meta {
  color: var(--editorial-warm);
}
.editorial-external-ai-panel .external-ai-scenario-item,
.editorial-external-ai-panel .external-ai-source-row {
  border-top-color: rgba(26, 24, 21, 0.14);
}
.editorial-external-ai-panel .external-ai-meta {
  border-top: 1px solid rgba(26, 24, 21, 0.14);
  padding-top: 12px;
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 800;
}
@media (max-width: 760px) {
  .editorial-external-ai-panel > .card-head {
    display: grid;
    gap: 12px;
    padding: 17px 16px;
  }
  .editorial-external-ai-title {
    font-size: 24px;
  }
  .editorial-external-ai-card:not([hidden]) {
    padding: 14px;
  }
}
.editorial-method-section {
  border: 1px solid var(--paper-line-strong);
  border-radius: 0;
  background: var(--paper-bg);
  color: var(--editorial-ink);
}
.editorial-method-section > .editorial-method-summary {
  align-items: flex-start;
  min-height: 0;
  padding: 21px 22px;
  color: var(--editorial-ink);
}
.editorial-method-section > .editorial-method-summary::after {
  margin-top: 4px;
  border: 1px solid var(--editorial-line);
  border-radius: 999px;
  background: rgba(26, 24, 21, 0.04);
  color: var(--editorial-warm);
  font-family: var(--font-mono);
  letter-spacing: 0.08em;
}
.editorial-method-section[open] > .editorial-method-summary {
  border-bottom: 1px solid var(--editorial-line);
}
.editorial-method-heading {
  display: grid;
  gap: 8px;
  min-width: 0;
}
.editorial-method-kicker,
.editorial-method-label {
  color: var(--editorial-red);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.editorial-method-main-title {
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 30px;
  font-weight: 900;
  line-height: 1.15;
}
.editorial-method-note {
  max-width: 940px;
  color: var(--editorial-warm);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.65;
}
.editorial-method-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 16px 20px 20px;
}
.editorial-method-card {
  min-width: 0;
  border: 1px solid rgba(26, 24, 21, 0.18);
  border-radius: 8px;
  background: rgba(255, 252, 245, 0.76);
  padding: 15px;
  color: var(--editorial-ink);
}
.editorial-method-card p {
  margin: 0;
  color: var(--editorial-warm);
  font-family: var(--font-serif);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.65;
}
.editorial-method-card .editorial-method-label {
  margin-bottom: 9px;
  color: var(--editorial-red);
  font-size: 11px;
  line-height: 1.35;
}
.editorial-method-card-title {
  margin: 0 0 8px;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 20px;
  font-weight: 900;
  line-height: 1.25;
}
.editorial-method-list {
  margin: 11px 0 0;
  padding-left: 18px;
  color: var(--editorial-warm);
  font-family: var(--font-serif);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.6;
}
.editorial-method-list.compact {
  display: grid;
  gap: 4px;
}
.editorial-method-boundary {
  border-left: 4px solid var(--editorial-orange);
  background: rgba(238, 231, 219, 0.86);
}
#method-evidence .editorial-method-panel {
  margin: 16px 20px;
  border: 1px solid rgba(26, 24, 21, 0.18);
  border-radius: 8px;
  background: rgba(255, 252, 245, 0.72);
  color: var(--editorial-ink);
}
#method-evidence .editorial-method-panel > summary {
  min-height: 52px;
  padding: 13px 15px;
  color: var(--editorial-ink);
  font-family: var(--font-display);
  font-size: 18px;
  line-height: 1.35;
}
#method-evidence .editorial-method-panel > summary::after {
  margin-left: auto;
  border: 1px solid rgba(26, 24, 21, 0.18);
  background: rgba(26, 24, 21, 0.04);
  color: var(--editorial-warm);
  font-family: var(--font-mono);
  letter-spacing: 0.06em;
}
#method-evidence .editorial-method-panel[open] > summary {
  border-bottom: 1px solid rgba(26, 24, 21, 0.14);
}
#method-evidence .editorial-method-panel > .card,
#method-evidence .editorial-method-panel > section {
  margin: 0 14px 14px;
}
#method-evidence .table-wrap,
#method-evidence .chart-wrap,
#method-evidence .svg-wrap {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
@media (max-width: 960px) {
  .editorial-method-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .editorial-method-section > .editorial-method-summary {
    padding: 17px 16px;
  }
  .editorial-method-main-title {
    font-size: 25px;
  }
  .editorial-method-grid {
    grid-template-columns: 1fr;
    margin: 14px;
  }
  #method-evidence .editorial-method-panel {
    margin: 14px;
  }
}
.grid{display:grid;gap:22px}
.two-col{grid-template-columns:1.25fr 0.9fr}
.three-col{grid-template-columns:1fr 1fr 1fr}
.full-width-section{display:block;width:100%}
.full-width-card{width:100%;max-width:100%}
.card{padding:22px;border:1px solid var(--paper-line-strong);border-radius:0;background:var(--paper-bg);color:var(--paper-ink)}
.card h2{margin:0 0 16px;font-size:24px}
.card h3{margin:0 0 10px;font-size:18px}
.card p,.card li,.card td,.card th,.muted{color:var(--paper-muted)}
.card-head,.split-head{border-bottom:1px solid var(--paper-line)}
.card-head h2{color:var(--paper-ink);font-family:var(--font-display);font-weight:700}
.split-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.metric-row{display:grid;gap:14px;margin-top:18px;grid-template-columns:repeat(4,1fr)}
.metric-row.two{grid-template-columns:repeat(2,1fr)}
.metric-row.three{grid-template-columns:repeat(3,1fr)}
.metric-row.four{grid-template-columns:repeat(4,1fr)}
.metric-box{padding:14px;border:1px solid var(--paper-line);border-radius:0;background:transparent}
.metric-box.compact{padding:14px}
.metric-label{margin-bottom:8px;color:var(--paper-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:0.1em;text-transform:uppercase}
.metric-value{color:var(--paper-ink);font-family:var(--font-display);font-size:20px;font-weight:700}
.metric-value.small{font-size:16px;font-weight:600;line-height:1.35;word-break:break-word}
.bullet-list{display:grid;gap:10px;margin:0;padding-left:20px;color:var(--paper-ink)}
.bullet-list li{color:var(--paper-ink)}
.progress-group{display:grid;gap:14px}
.progress-row{display:grid;gap:8px}
.progress-top{display:flex;justify-content:space-between;gap:12px;font-weight:600}
.progress-track{position:relative;height:14px;overflow:hidden;border:1px solid var(--paper-line);border-radius:0;background:var(--paper-bg)}
.progress-fill{height:100%;border-radius:0;background:var(--risk-red)}
.progress-fill.down{background:var(--risk-green)}
.progress-fill.flat{background:var(--paper-muted)}
.progress-note{font-size:12px;color:var(--paper-muted)}
.table-wrap{overflow-x:auto;background:var(--paper-bg)}
table{width:100%;border-collapse:collapse;background:var(--paper-bg)}
th,td{padding:10px 12px;border-bottom:1px solid var(--paper-line);text-align:left}
th{border-bottom:2px solid var(--paper-line-strong);color:var(--paper-ink);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase}
td{color:var(--paper-ink);font-family:var(--font-serif);font-size:13px}
.badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:0;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:0.12em;border:1px solid var(--paper-line-strong)}
.badge.strong,.badge.cautious,.badge.underweight{color:#FBF7F0}
.badge.strong{background:var(--risk-red)}
.badge.cautious{background:var(--risk-yellow)}
.badge.underweight{background:var(--risk-orange)}
.badge.neutral{background:var(--paper-bg);color:var(--paper-ink)}
.chart-wrap,.large-chart{min-height:220px;margin:12px 0;padding:12px;border:1px solid var(--paper-line);border-radius:0;background:var(--paper-bg)}
#trend-chart text{fill:var(--paper-muted);font-size:12px}
#trend-chart .axis{stroke:rgba(26,24,21,0.08);stroke-width:1}
#trend-chart .gridline{stroke:rgba(26,24,21,0.08);stroke-width:1}
#trend-chart .series{fill:none;stroke:var(--risk-red);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
#trend-chart .point{fill:var(--paper-bg);stroke:var(--risk-red);stroke-width:3}
#trend-chart .area{fill:url(#trend-chart-gradient);opacity:0.18}
.heatmap-card{min-height:640px;overflow:hidden;padding:22px;border:1px solid var(--paper-line-strong);border-radius:0;background:var(--paper-bg);color:var(--paper-ink)}
.heatmap-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:24px;align-items:start;padding:8px}
#world-heatmap{width:100%;height:auto;min-height:460px;display:block}
.heat-region{stroke:rgba(26,24,21,0.34);stroke-width:2}
.heat-label{fill:var(--paper-ink);font-size:13px;font-weight:700}
.heat-score{fill:var(--paper-ink);font-size:12px}
.heat-note{fill:var(--paper-muted);font-size:11px}
.heat-note tspan{dominant-baseline:hanging}
.heatmap-legend{display:grid;gap:10px;align-content:start;max-width:100%;font-family:var(--font-serif);color:var(--paper-ink)}
.heatmap-frame{min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--paper-line);border-radius:0;background:var(--paper-bg);padding:12px}
.heatmap-frame #world-heatmap{min-width:680px;min-height:430px;padding:0}
.legend-note{margin-top:16px;color:var(--paper-muted);font-size:12px;line-height:1.6}
.legend-title{margin-bottom:8px;color:var(--paper-muted);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:0.2em;text-transform:uppercase}
.legend-bar{height:12px;border-radius:0;background:linear-gradient(90deg,var(--risk-green),var(--risk-yellow),var(--risk-orange),var(--risk-red))}
.legend-labels{display:flex;justify-content:space-between;margin-top:4px;color:var(--paper-muted);font-family:var(--font-mono);font-size:11px}
.heatmap-legend #heatmap-list{display:grid;gap:10px}
.heatmap-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border-radius:0;background:var(--paper-bg);border:1px solid var(--paper-line)}
.swatch{width:14px;height:14px;border-radius:0}
.swatch-label{min-width:0}
.swatch-label strong{display:block;color:var(--paper-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.swatch-label span{color:var(--paper-muted);font-size:12px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scenario-card {
  background: var(--paper-bg); border: 1px solid var(--paper-line); border-radius: 0; padding: 16px; margin-bottom: 14px;
}
.scenario-title { color: var(--paper-ink); font-size: 18px; font-weight: 800; margin-bottom: 8px; }
.scenario-meta { color: var(--paper-muted); margin-bottom: 10px; }
.trigger-block + .trigger-block { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.footer { color: var(--paper-muted); padding: 6px 4px 24px; }
code { color: var(--risk-red); }
.trend-strip { display: grid; gap: 14px; grid-template-columns: repeat(3, 1fr); margin-bottom: 18px; }
.liquidity-metrics { margin-bottom: 18px; }
.transmission-card { overflow: hidden; }
.chain-flow {
  display: grid;
  grid-template-columns: repeat(6, minmax(140px, 1fr));
  gap: 16px;
  margin-top: 22px;
  margin-bottom: 24px;
  align-items: stretch;
}
.chain-node {
  position: relative;
  background: var(--paper-bg);
  border: 1px solid var(--paper-line);
  border-radius: 0;
  padding: 18px 16px;
  min-height: 170px;
}
.chain-node::after {
  content: '鈫?;
  position: absolute;
  top: 50%;
  right: -14px;
  transform: translateY(-50%);
  color: var(--risk-red);
  font-size: 24px;
  font-weight: 800;
}
.chain-node:last-child::after { display: none; }
.chain-node-top { display: flex; justify-content: space-between; gap: 10px; align-items: center; margin-bottom: 8px; }
.chain-node-title { font-weight: 800; color: var(--paper-ink); }
.chain-node-score { font-size: 24px; font-weight: 900; color: var(--paper-ink); }
.chain-node-direction { font-size: 12px; font-weight: 700; color: var(--paper-muted); margin-bottom: 10px; }
.chain-node-bar { height: 12px; border-radius: 0; border: 1px solid var(--paper-line); background: var(--paper-bg); overflow: hidden; margin-bottom: 10px; }
.chain-node-fill { height: 100%; border-radius: 0; }
.chain-node-note { color: var(--paper-muted); font-size: 13px; line-height: 1.45; }
.chain-bottom-grid { align-items: start; }
.chain-asset-impacts { display: grid; gap: 12px; }
.chain-impact-item {
  display: grid; grid-template-columns: 1fr auto auto; gap: 12px; align-items: center;
  padding: 12px 14px; border-radius: 0; background: var(--paper-bg); border: 1px solid var(--paper-line);
}
.chain-impact-item strong { color: var(--paper-ink); }
.chain-impact-direction { font-weight: 800; }
.chain-impact-direction.positive { color: var(--risk-green); }
.chain-impact-direction.negative { color: var(--risk-red); }
.chain-impact-direction.mixed { color: var(--risk-yellow); }
.chain-impact-score { color: var(--paper-ink); font-weight: 800; }

@media (max-width: 1400px) {
  .chain-flow { grid-template-columns: repeat(3, minmax(180px, 1fr)); }
  .chain-node:nth-child(3)::after, .chain-node:nth-child(6)::after { display: none; }
}

@media (max-width: 1280px) {
  .two-col, .three-col { grid-template-columns: 1fr; }
  .metric-row, .trend-strip, .metric-row.two, .metric-row.three, .metric-row.four { grid-template-columns: 1fr 1fr; }
  .chain-flow { grid-template-columns: repeat(2, minmax(180px, 1fr)); }
  .chain-node::after { display: none; }
  h1 { font-size: 44px; }
  .hero-subtitle { font-size: 20px; }
}

@media (max-width: 760px) {
  .page-shell { padding: 14px; }
  .hero { flex-direction: column; }
  .metric-row, .metric-row.two, .metric-row.three, .metric-row.four, .trend-strip, .chain-flow { grid-template-columns: 1fr; }
  h1 { font-size: 34px; }
  .hero-subtitle { font-size: 18px; }
}

@media (max-width: 900px) {
  .heatmap-layout { grid-template-columns: 1fr; }
}

/* v18 additions */
.network-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 24px;
  margin-top: 24px;
}
.chain-layers, .chain-decomposition {
  display: grid;
  gap: 14px;
}
.chain-layer-card, .decomp-card {
  border: 1px solid var(--line);
  border-radius: 0;
  padding: 16px 18px;
  background: var(--paper-bg);
}
.chain-layer-title, .decomp-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  font-weight: 700;
}
.chain-layer-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.chain-tag {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 0;
  background: transparent;
  color: var(--text);
  border: 1px solid var(--paper-line);
  font-size: 13px;
}
.decomp-row {
  display: grid;
  grid-template-columns: 120px 1fr 52px;
  gap: 12px;
  align-items: center;
  margin: 10px 0;
}
.decomp-bar {
  height: 10px;
  border-radius: 0;
  background: var(--paper-bg);
  border: 1px solid var(--paper-line);
  overflow: hidden;
}
.decomp-fill {
  height: 100%;
  border-radius: 0;
  background: var(--risk-red);
}
.heat-label, .heat-score {
  font-family: var(--font-mono);
}
.heat-label {
  font-size: 13px;
  font-weight: 700;
}
.heat-score {
  font-size: 11px;
}
.heatmap-item strong { font-size: 17px; }
@media (max-width: 1200px) {
  .network-grid {
    grid-template-columns: 1fr;
  }
}


/* v19 additions */
.large-chart { min-height: 260px; margin-top: 16px; }
.time-grid { align-items: start; }
.warning-alert-list { display: grid; gap: 14px; margin-top: 18px; }
.warning-card {
  border: 1px solid var(--line);
  border-radius: 0;
  padding: 14px 16px;
  background: var(--paper-bg);
}
.warning-card-top {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  color: var(--text);
}
.warning-line {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 12px;
  color: var(--muted);
  margin-top: 8px;
}
.warning-line span:first-child {
  color: var(--paper-ink);
  font-weight: 700;
}
.rule-list {
  display: grid;
  gap: 12px;
  margin-top: 10px;
}
.rule-item {
  padding: 12px 14px;
  border-radius: 0;
  background: var(--paper-bg);
  border: 1px solid var(--paper-line);
  color: var(--text);
}
#trend-chart-30d text { fill: var(--paper-muted); font-size: 11px; }
#trend-chart-30d .axis { stroke: rgba(26,24,21,0.08); stroke-width: 1; }
#trend-chart-30d .gridline { stroke: rgba(26,24,21,0.08); stroke-width: 1; }
#trend-chart-30d .series { fill: none; stroke: var(--risk-red); stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
#trend-chart-30d .point { fill: var(--paper-bg); stroke: var(--risk-red); stroke-width: 2.5; }
#trend-chart-30d .area { fill: url(#trend-chart-30d-gradient); opacity: 0.18; }

@media (max-width: 1280px) {
  .time-grid { grid-template-columns: 1fr; }
}


.trend-explainer .metric-value.small { color: var(--paper-ink); font-weight: 700; }
.chain-node-meta { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:10px; }
.chain-delta { font-size:12px; font-weight:800; padding:4px 8px; border-radius:0; background: transparent; color:var(--paper-muted); border:1px solid var(--paper-line); }
.chain-delta.up { color:var(--risk-orange); background: transparent; }
.chain-delta.down { color:var(--risk-green); background: transparent; }
.chain-delta.flat { color:var(--paper-muted); background: transparent; }
.warning-card.danger { border-color: var(--risk-red); }
.warning-card.warning { border-color: var(--risk-yellow); }
.warning-card.watch { border-color: var(--paper-line); }
.warning-card-top strong { flex:1; }
.warning-driver { margin-top:8px; color:var(--paper-warm); font-size:13px; }
.warning-level-order { color:var(--paper-muted); font-size:12px; font-weight:700; margin-left:auto; }
.asset-driver-chip { display:inline-flex; align-items:center; padding:4px 8px; border-radius:0; background: transparent; border:1px solid var(--paper-line); color:var(--paper-ink); font-size:12px; font-weight:700; margin-right:6px; margin-bottom:4px; }
.return-driver-cell { min-width: 180px; }


.today-action-box {
  padding: 16px 18px;
  border-radius: 0;
  border: 1px solid var(--paper-line);
  background: var(--paper-bg);
  color: var(--paper-ink);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.5;
  margin-bottom: 16px;
}
.discipline-grid { display:grid; gap:18px; }
.discipline-grid.two-mini { grid-template-columns: 1fr 1fr; }
.discipline-panel {
  background: var(--paper-bg);
  border: 1px solid var(--paper-line);
  border-radius: 0;
  padding: 16px;
}
.discipline-three { align-items:start; }
#position-core-body td:first-child { font-weight: 800; color: var(--paper-ink); }
@media (max-width: 1280px) {
  .discipline-grid.two-mini, .discipline-three { grid-template-columns: 1fr; }
}

.card,.metric-box,.discipline-panel,.advanced-panel,.table-wrap,section,article{min-width:0}
.card p,.card li,.card td,.card th,.metric-value,.decision-line,.decision-header-reason,.decision-header-action,.decision-header-policy-text,.today-action-box,.execution-subtitle,.execution-status-title,.execution-status-desc,.scenario-card,.rule-item,.warning-card,.dashboard-jump-nav a,.advanced-panel>summary{overflow-wrap:anywhere;word-break:break-word}
.table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.advanced-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px}
.advanced-panel>summary::after{flex:0 0 auto}
@media (max-width:768px){.hero{padding:18px 16px}
.hero h1{font-size:36px}
.hero h1 small{font-size:13px}
.dashboard-jump-nav{gap:4px 12px;margin:24px 0;padding:14px 0}
.dashboard-jump-nav a{flex:0 1 auto;justify-content:flex-start;padding:4px 8px;border:0;border-bottom:1px solid transparent;font-size:11px;text-align:left}
.editorial-headline,.editorial-risk-headline,.editorial-meta-grid{grid-template-columns:1fr}
.editorial-big-number,.editorial-risk-score{min-height:auto;padding:24px}
.editorial-big-number-value,.editorial-risk-score-value{font-size:clamp(72px,24vw,112px)}
.editorial-verdict{padding:22px}
.editorial-verdict-meta{grid-template-columns:1fr}
.macro-overview-block.macro-overview-hero.editorial-first-fold .macro-overview-one-line{font-size:22px}
.editorial-threshold-caption,.editorial-risk-scale-labels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.wow-grid,.editorial-watch-grid{grid-template-columns:1fr}
.editorial-pressure-grid,.editorial-signal-grid,.editorial-driver-grid,.editorial-engine-grid,.editorial-validation-grid{grid-template-columns:1fr}
.editorial-consistency-summary{grid-template-columns:1fr}
.editorial-consistency-score-display{border-right:0;border-bottom:1px solid var(--paper-line);padding-right:0;padding-bottom:12px}
.editorial-cross-validation-education-body{padding:20px 18px}
.editorial-cross-validation-education-section ul{padding-left:18px}
.editorial-category-summary{font-size:15px}
.editorial-count-pill{flex:1 1 180px;justify-content:space-between}
  .editorial-market-temp-checklist{grid-template-columns:1fr}
  .editorial-market-temp-scale-track{grid-template-columns:1fr 1fr;border-radius:8px}
  .editorial-market-temp-scale-segment:nth-child(2){border-right:0}
  .market-temperature-secondary-metrics{grid-template-columns:1fr}
  .market-temperature-sparkline{grid-template-columns:repeat(7,minmax(38px,1fr));overflow-x:auto;-webkit-overflow-scrolling:touch}
  .section-group-title{font-size:17px;margin-top:14px}
.card{padding:14px}
.advanced-panel>summary{padding:14px 16px}
.advanced-panel>section{margin:0 12px 14px}
.bullet-list{padding-left:18px}
.chart-wrap,.svg-wrap,.heatmap-layout{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.heatmap-card{min-height:auto}
.heatmap-layout{gap:14px}
#world-heatmap{min-width:680px}
.table-wrap table{min-width:680px}
.metric-row{margin-top:14px}
.today-action-box,.decision-header-action{font-size:16px}
}
@media (max-width:520px){.dashboard-jump-nav a{flex-basis:auto}
.advanced-panel>summary{align-items:flex-start}
.advanced-panel>summary::after{margin-top:1px}
.table-wrap table{min-width:620px}
}

/* 7B visual system font enforcement. */
.editorial-section-header .section-title,
.editorial-big-number .value,
.editorial-big-number-value,
.metric-value:not(.small),
h1,
h2 {
  font-family: var(--font-display);
}

body,
p,
.bullet-list li,
.muted,
.note,
.summary-note,
.wow-text,
.editorial-section-header .section-note,
table td {
  font-family: var(--font-serif);
}

.editorial-section-header .section-kicker,
.editorial-folded-summary,
.editorial-subsection > summary,
.metric-label,
.mini-delta,
.badge,
.wow-tag,
.wow-source,
.fold-marker,
.fold-label,
table th,
time,
.timestamp,
.legend-title,
.legend-labels {
  font-family: var(--font-mono);
}

main > .editorial-section,
main > .editorial-appendix-divider {
  order: initial;
}
