:root{
  /* ── Ink: the dark ground the brand lives on ───────────────────────── */
  --ehr-ink-900:#0B0D10;   /* deepest — top bar, alternating bands, footer */
  --ehr-ink-800:#0F1216;   /* input wells, inset verdict panels */
  --ehr-ink-700:#14171B;   /* page default background */
  --ehr-ink-600:#1A1E23;   /* raised panel / card on dark */
  --ehr-ink-500:#1E2225;   /* mega-menu promo block */
  --ehr-ink-400:#242A31;   /* pressed / hovered dark surface */

  /* ── Blue: the single accent. Electric, never navy ─────────────────── */
  --ehr-blue-700:#0047C7;  /* deep — kickers + hovers on LIGHT grounds */
  --ehr-blue-600:#005AFC;  /* PRIMARY. buttons, rules, focus, brand blue */
  --ehr-blue-500:#4D8BFF;  /* bright — checkmarks, stars, streak highlight */
  --ehr-blue-400:#7FA8FF;  /* light — links + kickers on DARK grounds */
  --ehr-blue-200:#CFE0FF;  /* pale — labels on a blue ground */
  --ehr-blue-100:#DCE8FF;  /* palest — body copy on a blue ground */
  --ehr-blue-050:#EAEEF5;  /* tint chip on light grounds */

  /* ── Light grounds: the alternating "daylight" sections ────────────── */
  --ehr-paper-100:#FFFFFF;
  --ehr-paper-200:#F4F5F6; /* light section background */
  --ehr-paper-300:#EAECEE; /* muted card on light */
  --ehr-paper-400:#E4E7EA; /* image placeholder */
  --ehr-paper-500:#C9CDD2; /* hairline divider on light */

  /* ── Text on dark ──────────────────────────────────────────────────── */
  --ehr-on-dark-100:#FFFFFF;
  --ehr-on-dark-200:#E3E8EE;
  --ehr-on-dark-300:#D3DBE5;
  --ehr-on-dark-400:#C6CCD2;
  --ehr-on-dark-500:#B7BEC7;
  --ehr-on-dark-600:#9BA2AC; /* meta / eyebrow grey */
  --ehr-on-dark-700:#8A9099; /* disabled + "coming soon" */
  --ehr-on-dark-800:#6E7681; /* placeholder text only */

  /* ── Text on light ─────────────────────────────────────────────────── */
  --ehr-on-light-100:#14171B;
  --ehr-on-light-200:#1A1D21;
  --ehr-on-light-300:#4A525C;
  --ehr-on-light-400:#5A6069;

  /* ── Status. Only one exists: inline form error ────────────────────── */
  --ehr-danger:#FF9A8A;

  /* ── Hairlines on dark (alpha so they ride any ink step) ───────────── */
  --ehr-line-dark-strong:rgba(255,255,255,.30);
  --ehr-line-dark:rgba(255,255,255,.18);
  --ehr-line-dark-soft:rgba(255,255,255,.12);
  --ehr-line-dark-faint:rgba(255,255,255,.08);

  /* ══ Semantic aliases — prefer these in components ══════════════════ */
  --ehr-surface-page:var(--ehr-ink-700);
  --ehr-surface-band:var(--ehr-ink-900);
  --ehr-surface-card:var(--ehr-ink-600);
  --ehr-surface-card-hover:#1E242B;
  --ehr-surface-well:var(--ehr-ink-800);
  --ehr-surface-light:var(--ehr-paper-200);
  --ehr-surface-light-card:var(--ehr-paper-100);

  --ehr-text-primary:var(--ehr-on-dark-100);
  --ehr-text-body:var(--ehr-on-dark-400);
  --ehr-text-meta:var(--ehr-on-dark-600);
  --ehr-text-muted:var(--ehr-on-dark-700);
  --ehr-text-invert:var(--ehr-on-light-100);
  --ehr-text-invert-body:var(--ehr-on-light-300);

  --ehr-accent:var(--ehr-blue-600);
  --ehr-accent-hover:var(--ehr-blue-700);
  --ehr-accent-kicker-dark:var(--ehr-blue-400);
  --ehr-accent-kicker-light:var(--ehr-blue-700);
  --ehr-link:var(--ehr-blue-400);
  --ehr-link-hover:var(--ehr-on-dark-100);
  --ehr-focus:var(--ehr-blue-400);
  --ehr-border:var(--ehr-line-dark);
  --ehr-border-light:var(--ehr-paper-500);
}
