:root{
  /* ================= BRAND KIT 2026 — canonical palette =================
     Brand Guidelines p.7. These are the only hues in the system; every other
     value below is a tint of one of them. */
  --ac-midnight-navy:#001A43;   /* CMYK 56 80 0 0  · RGB 0 26 67 */
  --ac-deep-ocean-blue:#00436A; /* C100 M37 Y0 K58 · RGB 0 67 106 */
  --ac-atlantic-blue:#004F8F;   /* C100 M45 Y0 K44 · RGB 0 79 143 */
  --ac-sky-teal:#008DD5;        /* C100 M34 Y0 K16 · RGB 0 141 213 */
  --ac-aqua-mint:#2BFBB6;       /* C83 M0 Y27 K2   · RGB 43 251 182 */
  /* Complementary */
  --ac-cloud-grey:#D3DDE8;
  --ac-frost-gray:#3F7FA7;
  --ac-white:#FFFFFF;

  /* ---- Neutral ramp: Midnight Navy tinted with white (no new hues) ---- */
  --ac-navy-90:#1A3156;
  --ac-navy-75:#405372;
  --ac-navy-60:#66768E;
  --ac-navy-40:#99A3B4;
  --ac-navy-20:#CCD1D9;
  --ac-navy-08:#EBEDF1;

  /* ---- Surface ramp: Cloud Grey tinted with white ---- */
  --ac-surface-050:#F4F7FA;
  --ac-surface-075:#EDF2F7;
  --ac-surface-100:#E5ECF3;

  /* ---- Pale text tints for dark grounds ---- */
  --ac-pale-100:#E8F1F8;
  --ac-pale-200:#D3DDE8;

  /* ---- System extension: the one alert pair. The 2026 brand kit specifies no
     red; this pair exists solely for the de-prioritised "Reconsider" state and
     must not be used for anything else. ---- */
  --ac-danger:#D64545;
  --ac-danger-tint:#FBEAEA;

  /* ================= Semantic aliases: text ================= */
  --text-display:var(--ac-midnight-navy);
  --text-heading:var(--ac-atlantic-blue);
  --text-stat:var(--ac-midnight-navy);
  --text-body:var(--ac-navy-90);
  --text-body-strong:var(--ac-midnight-navy);
  --text-muted:var(--ac-navy-60);
  --text-faint:var(--ac-navy-40);
  --text-accent:var(--ac-sky-teal);
  --text-inverse:var(--ac-white);
  --text-on-dark:var(--ac-pale-200);
  --text-on-dark-muted:var(--ac-pale-200);
  --text-on-accent:var(--ac-pale-100);
  --text-link:var(--ac-atlantic-blue);
  --text-link-hover:var(--ac-sky-teal);
  --text-danger:var(--ac-danger);

  /* ================= Semantic aliases: surfaces ================= */
  --surface-page:var(--ac-white);
  --surface-card:var(--ac-surface-050);
  --surface-card-alt:var(--ac-surface-075);
  --surface-card-emphasis:var(--ac-surface-100);
  --surface-card-danger:var(--ac-danger-tint);
  --surface-panel-dark:var(--ac-deep-ocean-blue);
  --surface-panel-darker:var(--ac-midnight-navy);
  --surface-accent:var(--ac-sky-teal);
  --surface-badge-dark:var(--ac-deep-ocean-blue);
  --surface-marker:var(--ac-sky-teal);
  --surface-marker-secondary:var(--ac-frost-gray);
  --surface-header-strip:var(--ac-navy-60);

  /* ================= Semantic aliases: lines ================= */
  --border-subtle:var(--ac-cloud-grey);
  --border-strong:var(--ac-frost-gray);
  --border-on-dark:var(--ac-deep-ocean-blue);
  --rule-emphasis:var(--ac-cloud-grey);
  --focus-ring:var(--ac-sky-teal);
}
