/* GENERATED from design/tokens.css — do not edit. Run tools/sync-tokens.sh */
/* ==========================================================================
   BM — design tokens. ONE source of truth.

   Generated into site/tokens.css and public/assets/css/tokens.css by
   tools/sync-tokens.sh. Edit this file, never the copies.

   Direction (Oct 2026): light, spacious, minimal. Near-white cool ground,
   pure white cards with a soft diffuse shadow and no border, a geometric
   sans at semi-bold rather than black, large light numerals as the hero,
   black pills for the active control, and pastel tints used sparingly to
   separate card families. Lime stays as the single brand accent.
   ========================================================================== */
:root{
  /* --- ground & ink ------------------------------------------------- */
  --paper:#F5F7FD;          /* cool blue-white                            */
  --paper-2:#FFFFFF;
  --card:#FFFFFF;
  --ink:#0F172A;            /* navy-ink, not neutral black                */
  --ink2:#51607A;
  --ink3:#64718F;        /* 4.88:1 on white — was #94A0B8 at 2.63 */
  --ink4:#8A96AF;        /* decoration only, never body text */
  --hair:#E6EBF5;
  --hair2:#F1F4FB;

  /* --- brand: electric blue into violet ------------------------------
     Replaces the lime. One gradient, used for the mark, the active state
     and anything that has to carry the brand; flat --brand everywhere else. */
  --brand:#2F6BFF;       /* fills, marks, large type */
  --brand-text:#1D4FD8;  /* small text and links — 6.64:1 on white */
  --brand-2:#6D4AFF;
  --brand-deep:#1E3A8A;
  --brand-soft:#E8EEFF;
  --brand-grad:linear-gradient(118deg,#2F6BFF 0%,#4C5EFF 48%,#6D4AFF 100%);
  --sage:#7C9BE8;           /* secondary mark colour, now periwinkle      */

  /* back-compat: older rules still name the lime tokens */
  --lime:var(--brand);
  --lime-2:var(--brand-2);
  --lime-soft:var(--brand-soft);

  /* --- pastel card tints (separate families, never series colours) ---- */
  --tint-blue:#EAF0FF;
  --tint-mint:#E9F6F2;
  --tint-amber:#FDF4E6;
  --tint-lilac:#EFEBFF;
  --tint-rose:#FBEDF4;

  /* --- status: distinct from the accent, never reused as a series ----- */
  --good:#16704F;
  --bad:#A8372F;         /* 5.54:1 on its own tint */
  --warn:#855A14;        /* 5.55:1 on its own tint */

  /* --- type ----------------------------------------------------------- */
  --d:'Outfit',"Helvetica Neue",Arial,sans-serif;          /* display + numerals */
  --b:'Plus Jakarta Sans',"Helvetica Neue",Arial,sans-serif;/* body + UI         */
  --m:'JetBrains Mono',ui-monospace,Menlo,monospace;        /* formulas only     */

  /* --- form ----------------------------------------------------------- */
  --r:22px;        /* cards            */
  --r-sm:14px;     /* inner elements   */
  --r-xs:10px;
  --pill:999px;

  /* soft and diffuse — the card reads against the ground by value, not by edge */
  --sh:0 1px 2px rgba(16,17,26,.04), 0 10px 28px -14px rgba(16,17,26,.12);
  --sh-lift:0 2px 6px rgba(16,17,26,.05), 0 20px 44px -18px rgba(16,17,26,.18);
  --sh-soft:0 1px 2px rgba(16,17,26,.03);

  /* the page gets a barely-there wash rather than a flat fill */
  --wash:radial-gradient(1200px 620px at 12% -8%, #FFFFFF 0%, rgba(255,255,255,0) 58%),
         radial-gradient(950px 540px at 90% 2%, #E9EDFF 0%, rgba(233,237,255,0) 64%),
         radial-gradient(760px 480px at 70% 90%, #EFEAFF 0%, rgba(239,234,255,0) 62%);
}

/* On the ink band, muted and accent text both need lifting — the light-ground
   values are far too dim against navy. */
.band-dark,.bm-ondark{--ink2:#C3CCDE;--ink3:#A9B4CC;--brand-text:#8FB4FF}

/* A label is small, tracked and quiet — the number beside it does the talking. */
.t-label{font-family:var(--b);font-size:11.5px;font-weight:600;letter-spacing:.07em;
  text-transform:uppercase;color:var(--ink3);line-height:1}
/* Metrics are large and LIGHT. Weight is what separated the old look from this one. */
.t-metric{font-family:var(--d);font-size:34px;font-weight:500;letter-spacing:-.025em;
  line-height:1.05;font-variant-numeric:tabular-nums;color:var(--ink)}
.t-delta{font-family:var(--b);font-size:12.5px;font-weight:500;color:var(--ink3)}
.t-delta.up{color:var(--good)} .t-delta.dn{color:var(--bad)}
