/* ==========================================================================
   Design Tokens — מקור אמת יחיד
   נגזר מ-Technical Architecture v3 §4 ומ-Design System v6.
   כל ערך עיצובי בכל קובץ CSS אחר בתמה חייב להפנות לטוקן מכאן —
   אין ערכים קשיחים (Hard-coded) בשום קובץ רכיב.
   ========================================================================== */

:root {
  /* --- Colors — Core --- */
  --color-navy-900: #0B1E3D;
  --color-navy-800: #142A4D;
  --color-blue-600: #1B4F8C;
  --color-gold-500: #C6A15B;   /* דקורטיבי בלבד — לעולם לא כטקסט, ראו v3 §14 */
  --color-gold-300: #DCC291;
  --color-white: #FFFFFF;
  --color-surface: #F7F8FA;
  --color-surface-2: #EFF1F5;
  --color-text-primary: #101828;
  --color-text-secondary: #55607A;
  --color-border: #E4E7EC;

  /* --- Colors — Semantic --- */
  --color-success: #1E7A4C;
  --color-warning: #B45309;
  --color-warning-bg: #FFF8ED;
  --color-error: #B91C1C;
  --color-info: #2563EB;

  /* --- Typography --- */
  --font-heading: 'Secular One', sans-serif;
  --font-body: 'Heebo', sans-serif;
  --font-mono: 'JetBrains Mono', monospace;
  --fs-h1: clamp(2rem, 4vw, 3.25rem);
  --fs-h2: clamp(1.625rem, 3vw, 2.125rem);
  --fs-h3: clamp(1.25rem, 2vw, 1.375rem);
  --fs-body: 1.0625rem;
  --fs-small: 0.875rem;
  --lh-body: 1.7;
  /* UI micro-scale — for nav/labels/captions that sit below body size but
     are not "small print"; keeps every component on a defined step instead
     of one-off rem values (v3 §26 — "כל ערך = טוקן, אפס Hard-coded values"). */
  --fs-caption: 0.75rem;   /* legal lines, footer eyebrow labels */
  --fs-meta: 0.8rem;       /* lang switch, footer legal row */
  --fs-nav: 0.95rem;       /* primary nav links */
  --fs-ui: 0.9rem;         /* compact buttons, secondary UI text */
  --fs-lede: 1.1rem;       /* mobile nav links, slightly larger tap targets */
  --fs-logo: 1.25rem;      /* wordmark */

  /* --- Colors — UI state --- */
  --color-disabled-bg: #A8B2C3;

  /* --- Spacing (8px scale) --- */
  --space-1: 4px;  --space-2: 8px;  --space-3: 16px;
  --space-4: 24px; --space-5: 32px; --space-6: 48px;
  --space-7: 64px; --space-8: 96px; --space-9: 128px;

  /* --- Radius --- */
  --radius-sm: 6px; --radius-md: 12px; --radius-lg: 20px; --radius-full: 999px;

  /* --- Shadows --- */
  --shadow-sm: 0 1px 2px rgba(11,30,61,0.06);
  --shadow-md: 0 4px 16px rgba(11,30,61,0.08);
  --shadow-lg: 0 16px 40px rgba(11,30,61,0.14);

  /* --- Motion --- */
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --duration-fast: 150ms;
  --duration-base: 300ms;

  /* --- Z-index scale --- */
  --z-fab: 90;
  --z-header: 100;
  --z-modal: 500;
  --z-toast: 600;

  /* --- Layout --- */
  --container-max: 1280px;
  --touch-target-min: 44px;
}
