/* ═══════════════════════════════════════════════════════════════════
   AI² — NEUTRAL LADDER, CANONICAL
   Source: Claude Design, Landing Twin Neutral V6.2 (365 inks, 0 failures).
   Supersedes the neutral values in colors.css (on disk 16 Aug), which are
   the pre-cooling Phase 2 set.

   A DELTA against tokens.css. Load AFTER tokens.css. Redeclares only;
   nothing renamed, nothing retired, so every existing var(--tml-*)
   reference keeps resolving. This cannot reproduce the 6 Aug outage.

   DISCIPLINE: every neutral sits at r - b = -2. Cool, never warm.
   Do not mix with colors.css values. Whole column or none of it.

   TWO BLOCKS BELOW ARE NOT FROM DESIGN AND ARE MARKED [UXUI]:
   Design's file covered the six tokens its landing page uses. The app
   declares sixteen. The remaining ten are mapped onto Design's ladder
   here, using ladder values only - no value is invented. Without this
   block, every dashboard hover, card separator and horizontal rule in
   the product stays beige while the grounds go cool ash.
   ══════════════════════════════════════════════════════════════════ */

:root {

  /* ── LIGHT GROUND ─────────────────────────────────────────────── */

  --tml-bg:              #E3E5E5;   /* page ground                          */
  --tml-card:            #F6F8F8;   /* card, lifted off the page            */
  --tml-border:          #CDCFCF;   /* border on page or card               */
  --tml-rule:            #DEE0E0;   /* hairline INSIDE a card               */

  /* [UXUI] --tml-surface is documented in tokens.css as "cards, content
     surfaces" and the codebase uses it that way. Design's file reassigns
     it to the raised value, which would render every card at the top of
     the ladder and collapse three levels to two. Held at the CARD value;
     the raised value gets its own name.                                 */
  --tml-surface:         #F6F8F8;   /* [UXUI] = --tml-card                  */
  --tml-surface-raised:  #FBFDFD;   /* raised surface - top of the ladder   */

  /* [UXUI] Ten tokens Design's file did not cover. All values taken from
     the ladder above - none derived, none invented.                      */
  --tml-bg-public:       #DDDFDF;   /* recessed band                        */
  --tml-bg-alt:          #DDDFDF;   /* [UXUI] was #ECEBE4, r-b +8           */
  --tml-surface-hover:   #DEE0E0;   /* [UXUI] was #EBE9E0, r-b +11          */
  --tml-border-soft:     #DEE0E0;   /* [UXUI] was #DFDDD2, r-b +13          */
  --tml-divider:         #DEE0E0;   /* [UXUI] was #E8E6DC, r-b +12          */

  /* ── INK ON LIGHT ─────────────────────────────────────────────── */

  --tml-ink:             #1B1D1D;   /* 15.89:1 on --tml-card                */
  --tml-ink-body:        #393B3B;   /* 10.58:1 - body copy                  */
  --tml-ink-muted:       #5D5F5F;   /*  6.03:1 - labels, captions           */
  --tml-ink-faint:       #878989;   /*  3.3:1  - LARGE TEXT ONLY (>=24px)   */
  --tml-ink-soft:        #5D5F5F;   /* [UXUI] was #5A5A57 - merged to muted */
  --tml-ink-invert:      #DADCDC;   /* [UXUI] was #FAFAF7 - now dark-body   */

  /* ── DARK GROUND · cool ash ───────────────────────────────────── */

  --tml-dark-deepest:    #141616;   /* deepest ground - canvas art, hero    */
  --tml-dark-deep:       #232525;   /* panel on the deepest ground          */
  --tml-dark:            #2E3030;   /* standard dark card                   */
  --tml-dark-alt:        #383A3A;   /* raised dark surface                  */
  --tml-dark-line:       #4B4D4D;   /* border on a dark ground              */
  --tml-dark-rule:       #5B5D5D;   /* hairline INSIDE a dark card          */

  /* ── INK ON DARK ──────────────────────────────────────────────── */

  --tml-dark-ink:        #E8E9EA;   /* 10.92:1 on --tml-dark - headings     */
  --tml-dark-body:       #DADCDC;   /*  9.64:1 - body copy on dark          */
  --tml-dark-muted:      #A9ABAB;   /*  5.75:1 on --tml-dark                */
  --tml-on-primary:      #FBFDFD;   /*  5.18:1 on a --tml-primary fill      */

  /* ── ACCENT ON DARK ───────────────────────────────────────────── */

  --tml-accent:          #E84C22;   /*  4.03:1 on --tml-dark-deep.
                                       --tml-primary drops to 2.91:1 on the
                                       cool ash and fails. Use accent.      */

  /* ── CHART NEUTRALS ───────────────────────────────────────────── */

  /* [UXUI] Not in Design's file. These are pure neutrals and were warm. */
  --tml-chart-track:     #CDCFCF;   /* [UXUI] was #D6D3C7, r-b +15          */
  --tml-chart-grid:      #DEE0E0;   /* [UXUI] was #E4E1D8, r-b +12          */

  /* ── TYPE ─────────────────────────────────────────────────────── */

  --tml-font-display:    'Khand', 'Roboto Condensed', 'Arial Narrow', system-ui, sans-serif;
}

/* ═══════════════════════════════════════════════════════════════════
   OPEN, NOT SHIPPED

   1. --tml-chart-6 is #6A6859, an olive at r-b +17. It is a chart SERIES
      colour, not a neutral, so it is not normalised here. Needs a ruling.
   2. The ACTIVE badge green #C4DEC4 (4.62:1 on the tier gradient) has a
      job and no token. Named as a gap rather than shipped unnamed.
   3. --tml-process #2F6F8F and --tml-attention #C8952A are chromatic
      semantics, untouched by this pass.
   ══════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════
   PASS 2 — Aug 2026. Closes four gaps named in the design audit.
   Append-only. Every value comes from Design's canonical ladder or
   colors.css; none is invented.
   ══════════════════════════════════════════════════════════════════ */
:root {
  /* Last warm neutral in the system. Was #6A6859, r-b +17 (olive).
     Chart SERIES colour, so it takes the ladder's faint value rather
     than ink-muted (#5D5F5F), which it must stay distinct from.      */
  --tml-chart-6:         #878989;

  /* Chromatic semantics reconciled against Design's colors.css.
     process was #2F6F8F, attention was #C8952A. Later doc wins.
     --tml-chart-3 derives from --tml-process and moves with it.      */
  --tml-process:         #24507A;
  --tml-attention:       #C98A2E;

  /* The ACTIVE badge green had a job and no name. Named here.
     4.62:1 on the tier gradient. Nothing consumes it yet.            */
  --tml-badge-active:    #C4DEC4;
}
