
/* Kinetic v157 hardening layer: presentation outputs, assumption chips, theme contrast, screenshot QA targets. */
:root {
  --kinetic-output-bg: rgba(7, 20, 33, .42);
  --kinetic-output-border: rgba(145, 221, 255, .18);
  --kinetic-chip-bg: rgba(255,255,255,.04);
  --kinetic-chip-ink: #d8ebf7;
}
html[data-theme="light"] {
  --kinetic-output-bg: rgba(255,255,255,.88);
  --kinetic-output-border: rgba(14, 57, 88, .18);
  --kinetic-chip-bg: rgba(25, 97, 145, .07);
  --kinetic-chip-ink: #183447;
}
/* Common answer-first blocks */
.client-summary, .advisor-summary, .presentation-summary, .model-scope-card {
  border: 1px solid var(--kinetic-output-border) !important;
  background: linear-gradient(180deg, var(--kinetic-output-bg), rgba(255,255,255,.025)) !important;
  border-radius: 20px !important;
  padding: 16px 18px !important;
  margin: 14px 0 !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.12) !important;
}
.client-summary h2, .advisor-summary h2, .presentation-summary h2, .model-scope-card h2,
.client-summary h3, .advisor-summary h3, .presentation-summary h3, .model-scope-card h3 {
  margin: 0 0 7px !important;
  letter-spacing: -.025em !important;
}
.client-summary p, .advisor-summary p, .presentation-summary p, .model-scope-card p {
  color: var(--muted, #bdd0df) !important;
  margin: 0 !important;
  line-height: 1.5 !important;
}
.output-chip-row, .assumption-row, .limit-chip-row {
  display:flex !important; gap:8px !important; flex-wrap:wrap !important; margin-top:12px !important;
}
.output-chip, .assumption-chip, .limit-chip, .scope-chip {
  display:inline-flex !important; align-items:center !important; gap:7px !important;
  border-radius:999px !important; padding:8px 11px !important;
  border:1px solid rgba(145,221,255,.22) !important; background:var(--kinetic-chip-bg) !important;
  color:var(--kinetic-chip-ink) !important; font-size:12px !important; font-weight:850 !important; line-height:1 !important;
}
.output-chip strong, .assumption-chip strong, .limit-chip strong, .scope-chip strong {
  color: var(--accent, #5bb6e8) !important; text-transform:uppercase !important; letter-spacing:.06em !important; font-size:10.5px !important;
}
/* Presentation hierarchy for output sections */
.answer-title, .hero h1, h1 { text-wrap: balance; }
.card .answer-copy, .card .lede, .note, .footer-disclosure-item p { max-width: 88ch; }
.metric b { font-variant-numeric: tabular-nums; }
/* Chart readability */
.chart-svg text, .axis text, .chart-label { paint-order: stroke; stroke: rgba(3, 12, 20, .56); stroke-width: 2.5px; stroke-linejoin: round; }
html[data-theme="light"] .chart-svg text, html[data-theme="light"] .axis text, html[data-theme="light"] .chart-label { stroke: rgba(255,255,255,.72); fill:#173348 !important; }
.chart-shell { background: color-mix(in srgb, var(--panel, #10293d) 82%, transparent) !important; }
html[data-theme="light"] .chart-shell { background:#ffffff !important; border-color:rgba(14,57,88,.16) !important; }
/* Light theme correction pass */
html[data-theme="light"] body { color:#132b3c; }
html[data-theme="light"] .card, html[data-theme="light"] .tool-card, html[data-theme="light"] .big, html[data-theme="light"] .metric, html[data-theme="light"] .note, html[data-theme="light"] .projection-wrap { color:#132b3c; }
html[data-theme="light"] .card h2, html[data-theme="light"] .card h3, html[data-theme="light"] .metric b, html[data-theme="light"] .section-title h3 { color:#0b2234 !important; }
html[data-theme="light"] .muted, html[data-theme="light"] .lede, html[data-theme="light"] .help, html[data-theme="light"] .metric small, html[data-theme="light"] .answer-copy { color:#49667a !important; }
html[data-theme="light"] label, html[data-theme="light"] .metric span { color:#25658f !important; }
html[data-theme="light"] input, html[data-theme="light"] select, html[data-theme="light"] textarea { background:#fff !important; color:#10283a !important; border-color:rgba(14,57,88,.22) !important; }
html[data-theme="light"] .projection th { background:#eaf4fb !important; color:#143247 !important; }
html[data-theme="light"] .projection td { color:#19364a !important; border-color:rgba(14,57,88,.10) !important; }
html[data-theme="light"] .projection td.negative { color:#b93b34 !important; }
html[data-theme="light"] .projection td.positive { color:#217245 !important; }
/* Full QA targets - avoid clipped hero cards */
.hero { min-height: 172px; }
.hero-mark, .hero-art, .suite-card-visual { flex-shrink:0; }
@media (max-width: 720px) {
  .client-summary, .advisor-summary, .presentation-summary, .model-scope-card { padding:14px !important; }
  .output-chip, .assumption-chip, .limit-chip, .scope-chip { width:100%; justify-content:space-between; }
}
@media print {
  .brandbar, .btn-row, .theme-toggle, .back-link, details.footer-disclosures { display:none !important; }
  body { background:#fff !important; color:#111 !important; }
  .card, .hero, .client-summary, .presentation-summary { box-shadow:none !important; break-inside:avoid; }
}
