:root {
  --kapi-ink: #152033;
  --kapi-muted: #536074;
  --kapi-brand: #0a6071;
  --kapi-brand-dark: #073d4a;
  --kapi-aqua: #dff3f4;
  --kapi-line: #c9dadd;
  --kapi-paper: #f7fbfb;
}

html { scroll-behavior: smooth; }
body { color: var(--kapi-ink); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.research-badge { display: inline-flex; align-items: center; gap: .45rem; border: 1px solid #7eb7bd; border-radius: 999px; background: #ecf8f8; color: var(--kapi-brand-dark); padding: .38rem .72rem; font-size: .78rem; font-weight: 800; letter-spacing: .025em; text-transform: uppercase; }
.research-badge::before { content: ""; width: .52rem; height: .52rem; border-radius: 50%; background: #0d8a7b; box-shadow: 0 0 0 .18rem rgba(13,138,123,.14); }
.beta-hero { align-items: center; }
.beta-hero h1 { max-width: 15ch; }
.beta-hero .hero-copy { max-width: 68ch; }
.beta-status { border: 1px solid #9dc4c8; background: linear-gradient(145deg, #f5fbfb, #e5f4f5); }
.metric strong { overflow-wrap: anywhere; }
.release-line { margin: .75rem 0 0; color: var(--kapi-muted); font-size: .86rem; }
.data-note { display: flex; flex-wrap: wrap; gap: .6rem 1rem; align-items: center; justify-content: space-between; margin: 1rem 0; color: var(--kapi-muted); font-size: .9rem; }
.coverage-table { min-width: 1080px; }
.coverage-table td, .coverage-table th { vertical-align: top; }
.coverage-table .money { white-space: nowrap; font-variant-numeric: tabular-nums; font-weight: 750; }
.coverage-table .record-links { min-width: 12rem; }
.coverage-table small { max-width: 22rem; }
.status--eligible { background: #def4e7; color: #17633b; }
.status--excluded { background: #fff0d5; color: #7d4c00; }
.source-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; padding: 0; list-style: none; }
.source-list li { border: 1px solid var(--kapi-line); border-radius: 12px; background: #fff; padding: .85rem 1rem; }
.source-list strong { display: block; }
.source-list a { overflow-wrap: anywhere; }
.principle-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.principle-grid article { border: 1px solid var(--kapi-line); border-radius: 14px; background: #fff; padding: 1rem; }
.principle-grid h3 { margin-top: 0; }
.beta-callout { border-left: 4px solid var(--kapi-brand); background: var(--kapi-paper); padding: .9rem 1rem; }
.machine-links { display: flex; flex-wrap: wrap; gap: .65rem 1rem; }
.machine-links a { font-weight: 750; }
.fine-print { color: var(--kapi-muted); font-size: .9rem; }

@media (max-width: 920px) {
  .card-grid, .principle-grid { grid-template-columns: 1fr; }
  .source-list { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .beta-hero h1 { max-width: none; }
  .research-badge { align-items: flex-start; border-radius: 12px; }
  .data-note { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
