/* ==========================================================================
   MSL Design Tokens — Single Source of Truth
   Sprint CSS-A · 2026-05-23 · יועץ-על-על gate
   ==========================================================================
   THIS IS THE SoT VOCABULARY.
   - 74 tokens. No duplicates. No banned legacy names.
   - Loaded FIRST in enqueue. Every other CSS file inherits from here.
   - CDN fallback Layer 1 of 3 (Layer 2 = base.css repeats; Layer 3 = wp_add_inline_style)
   - Legacy token names are deprecated and must not appear in any new code.
   ========================================================================== */

:root{
  /* Color · brand */
  --msl-navy:        #06142b;
  --msl-navy-2:      #0b1e3f;
  --msl-navy-3:      #102541;
  --msl-amber:       #d4a04a;
  --msl-amber-soft:  #f4e0b3;
  --msl-amber-deep:  #b88330;
  --msl-cream:       #f6efe2;
  --msl-cream-2:     #ede4cf;

  /* Color · ink */
  --msl-ink:         #1f2937;
  --msl-ink-strong:  #06142b;
  --msl-muted:       #7a8190;
  --msl-line:        rgba(6,20,43,.12);
  --msl-line-light:  rgba(6,20,43,.06);
  --msl-line-dark:   rgba(255,255,255,.12);

  /* Color · semantic */
  --msl-up:          #3b8a4f;
  --msl-up-soft:     #e2efd6;
  --msl-down:        #c93a3a;
  --msl-down-soft:   #fce8e8;
  --msl-warn:        #7a4a00;
  --msl-warn-bg:     #fff8e6;
  --msl-info:        #0c447c;

  /* Typography · family */
  --msl-font: "Heebo", system-ui, -apple-system, "Segoe UI", sans-serif;

  /* Typography · weights — the meaningful 5 */
  --msl-w-thin:    200;
  --msl-w-reg:     400;
  --msl-w-mid:     500;
  --msl-w-bold:    700;
  --msl-w-heavy:   800;
  --msl-w-black:   900;

  /* Typography · size scale */
  --msl-size-display:    7.5rem;   /* 120px · hero display */
  --msl-size-h1-xl:      6rem;     /* 96px · big hero */
  --msl-size-h1:         3.75rem;  /* 60px · standard hero */
  --msl-size-h2-xl:      3.5rem;   /* 56px · large section */
  --msl-size-h2:         2.25rem;  /* 36px · standard section */
  --msl-size-h3:         1.5rem;   /* 24px · sub-section */
  --msl-size-h4:         1.125rem; /* 18px · card title */
  --msl-size-sub:        1.3125rem;/* 21px · hero subtitle */
  --msl-size-lead:       1.125rem; /* 18px · lead paragraph */
  --msl-size-body:       1.0625rem;/* 17px · body */
  --msl-size-small:      0.875rem; /* 14px · small */
  --msl-size-meta:       0.8125rem;/* 13px · meta */
  --msl-size-tiny:       0.75rem;  /* 12px · kicker, tag */
  --msl-size-num-xl:     4rem;     /* 64px · big stat number */
  --msl-size-num:        2.5rem;   /* 40px · stat number */

  /* Typography · line-height */
  --msl-lh-tight:        0.95;
  --msl-lh-snug:         1.15;
  --msl-lh-normal:       1.65;
  --msl-lh-relaxed:      1.85;

  /* Typography · letter-spacing */
  --msl-ls-display:     -0.035em;
  --msl-ls-heading:     -0.02em;
  --msl-ls-tight:       -0.01em;
  --msl-ls-normal:      0;
  --msl-ls-eyebrow:     0.22em;
  --msl-ls-label:       0.12em;

  /* Spacing scale (8px base) */
  --msl-sp-1:  0.25rem;   /* 4px */
  --msl-sp-2:  0.5rem;    /* 8px */
  --msl-sp-3:  0.75rem;   /* 12px */
  --msl-sp-4:  1rem;      /* 16px */
  --msl-sp-5:  1.5rem;    /* 24px */
  --msl-sp-6:  2rem;      /* 32px */
  --msl-sp-7:  3rem;      /* 48px */
  --msl-sp-8:  4rem;      /* 64px */
  --msl-sp-9:  5rem;      /* 80px */
  --msl-sp-10: 7.5rem;    /* 120px */

  /* Radii */
  --msl-r-sm:    6px;
  --msl-r:       10px;
  --msl-r-md:    14px;
  --msl-r-lg:    18px;
  --msl-r-xl:    24px;
  --msl-r-pill:  999px;

  /* Shadow (used sparingly) */
  --msl-shadow-1: 0 4px 14px -8px rgba(6,20,43,.18);
  --msl-shadow-2: 0 16px 40px -20px rgba(6,20,43,.22);

  /* Container widths */
  --msl-w-reading: 720px;     /* long-form essays */
  --msl-w-content: 1100px;    /* standard page content */
  --msl-w-wide:    1440px;    /* dashboards */
}
