/* =====================================================
   ChannelGrave design tokens (dark ward)
   Single source of truth. See docs/DESIGN_SYSTEM.md.
   ===================================================== */

:root {
    /* ---------- Surfaces ---------- */
    --bg:       #0A1211;   /* page background, deep green-black */
    --bg-2:     #111B19;   /* raised surfaces: cards, header, modal */
    --bg-3:     #182421;   /* hover surfaces, input background */
    --paper:    #EEF2F0;   /* primary text */
    --muted:    #93A39E;   /* secondary text, labels, mono metadata */
    --line:     rgba(147, 163, 158, 0.16);   /* hairlines */
    --line-strong: rgba(147, 163, 158, 0.34);

    /* ---------- Accents ---------- */
    --seal:      #2F8A66;  /* buttons, links, active states */
    --seal-hi:   #45A67F;  /* button hover */
    --autopsy:   #E4503F;  /* verdict: autopsy. Also the flatline. */
    --wellness:  #E7A93B;  /* verdict: wellness check */
    --discharge: #3FBE7E;  /* verdict: discharge */
    --flatline:  var(--autopsy);

    /* Per-section accent, overridden by data-verdict on the hero. */
    --accent: var(--seal);

    /* ---------- Type ---------- */
    --font-display: 'IBM Plex Sans Condensed', 'Arial Narrow', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    --font-body:    'IBM Plex Sans', -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    --font-mono:    'IBM Plex Mono', 'SFMono-Regular', Menlo, Consolas, 'Liberation Mono', monospace;

    /* Scale: base 17px, ratio 1.25 */
    --text-1: 17px;
    --text-2: 21px;
    --text-3: 27px;
    --text-4: 33px;
    --text-5: 42px;
    --text-6: 52px;

    --leading-body: 1.55;
    --leading-tight: 1.08;
    --tracking-heading: -0.01em;
    --measure: 68ch;

    /* ---------- Shape ---------- */
    --radius-control: 8px;
    --radius-card: 16px;
    --radius-pill: 999px;

    /* ---------- Depth ---------- */
    --shadow-card: 0 18px 48px rgba(0, 0, 0, 0.45);
    --shadow-glow: 0 0 0 1px var(--line-strong), 0 10px 40px rgba(0, 0, 0, 0.35);

    /* ---------- Motion ---------- */
    --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
    --dur-fast: 220ms;
    --dur-slow: 700ms;

    /* ---------- Focus ---------- */
    --focus-ring: 2px solid var(--seal-hi);
    --focus-offset: 3px;

    /* ---------- Layout ---------- */
    --page-max: 1120px;
    --gutter: 16px;
}
