/* Palette. Core three sampled from the master logo file; slate teal and coral
   confirmed into the system 30 July 2026 (Kev). This file is the authority on
   brand colour — the July 2026 review document is superseded on palette.

   PRINT. The master `.ai` is a CMYK document, and these are its values, read out
   of it 31 July 2026. They are the print expression of the four hexes below, not
   alternatives to them. CMYK does not round-trip: converting these back to sRGB
   gives #0C3C60 for navy rather than #013B60, which is why an extraction that
   trusts the conversion lands off-palette. Hand these to a printer; use the hex
   for anything on a screen.

     --navy-800   C100   M78.6  Y37.9  K26.8
     --cream-100  C0.1   M1.7   Y9.3   K0
     --coral-500  C0     M76.6  Y72.5  K0
     --ink-800    C71.7  M65.6  Y65.8  K75.7
     --white      C0     M0     Y0     K0

   Teal and slate teal have no CMYK in the master — they do not appear in the
   lockups. Convert them when a print job needs them. */
:root{
  /* Deep Navy — credibility */
  --navy-900:#012a45;
  --navy-800:#013b60; /* PRIMARY */
  --navy-700:#0a4c76;
  --navy-600:#155f8c;
  --navy-300:#7ba3bd;
  --navy-100:#ccdce7;

  /* Slate Teal — layering between navy and teal */
  --slate-500:#3d6b7e;
  --slate-400:#5b8497;

  /* Teal — accents, attribution, focus */
  --teal-500:#32b9bc;
  --teal-600:#25979a;
  --teal-200:#9fdfe0;

  /* Warm Cream — base, panels */
  --cream-100:#fff8e6;
  --cream-200:#f7efd8;
  --cream-300:#e9e0c4;
  --white:#ffffff;

  /* Ink — alternate dark ground, from the reversed lockups */
  --ink-900:#141513;
  --ink-800:#1d1e1c;
  --ink-600:#3b3d39;
  --ink-400:#6e716b;

  /* Coral — the divider rule in the master lockups. A brand colour. */
  --coral-500:#f2624c;
  --coral-600:#d94b36;
  --coral-200:#f8a898;
  /* coral-700 exists for one reason: SMALL CORAL TEXT ON A CREAM GROUND CANNOT
     BE READ. coral-500 manages 2.99 against cream-100 where 12px text needs 4.5,
     and coral-600 only reaches 3.96. This is the same hue (8 deg) and the same
     saturation (86%) darkened to 44% lightness, so it is the same colour rather
     than a new one: 4.88 on cream-100 and 4.50 on cream-200, which is the
     `.take` box.

     GOING THE OTHER WAY WAS NOT AN OPTION. Lightening coral until it reads on
     slate teal needs 91% lightness, which is #FCDBD6 — blush. Hard rule 10 bans
     pink, lilac and blush outright, and the reason is Siya's own: "they don't
     lean into female – pink – they're soft but strong." On the dark grounds the
     label takes cream instead. Measured 1 September 2026. */
  --coral-700:#d2290f;

  /* Semantic */
  --surface-page:var(--navy-800);
  --surface-page-alt:var(--ink-800);
  --surface-light:var(--cream-100);
  --surface-card:rgba(255,248,230,.06);
  --surface-card-light:var(--white);
  --surface-layer:var(--slate-500);
  --surface-badge:var(--cream-100);

  --text-primary:var(--cream-100);
  --text-secondary:rgba(255,248,230,.72);
  --text-muted:rgba(255,248,230,.48);
  --text-on-light:var(--navy-800);
  --text-on-light-secondary:rgba(1,59,96,.66);
  --text-attribution:var(--teal-500);
  --text-hand:var(--white);

  /* The brand ground gradient — slate teal into navy, the layering role docs/brand.md
     gives slate teal. Approved 31 July 2026 on the episode thumbnail. This is the ONLY
     gradient allowed as a ground; decorative gradients remain banned. */
  --ground-gradient:linear-gradient(135deg,var(--slate-500) 0%,var(--navy-800) 100%);

  --accent-rule:var(--coral-500);
  --accent-interactive:var(--teal-500);
  --accent-interactive-hover:var(--teal-600);

  --border-hairline:rgba(255,248,230,.16);
  --border-hairline-strong:rgba(255,248,230,.32);
  --border-on-light:rgba(1,59,96,.14);

  --focus-ring:var(--teal-500);

  --status-positive:var(--teal-500);
  --status-attention:var(--coral-500);
  --status-neutral:var(--navy-300);
}
