/*
 * Design tokens — the machine-readable half of DESIGN.md.
 *
 * Values only. No component rules live here, so re-branding is a matter of
 * editing this file and nothing else.
 *
 * The site is dark-only by decision, not by preference: the brand yellow
 * #FDE03F scores 1.3:1 on white and 14.7:1 on #0D0D0D. There is no light
 * theme to define because there cannot be one.
 */

:root {
  color-scheme: dark;

  /* --- Surfaces ------------------------------------------------------- */
  --color-void: #0D0D0D;          /* page canvas. never #000 */
  --color-surface: #141414;       /* cards, raised panels */
  --color-surface-alt: #1A1A1A;   /* table stripes, inset wells */

  /* --- Ink ------------------------------------------------------------ */
  --color-ink: #EDE8DF;           /* body text. never pure white */
  --color-ink-soft: rgba(237, 232, 223, 0.62);
  --color-ink-faint: rgba(237, 232, 223, 0.55);

  /* --- Structure ------------------------------------------------------ */
  --color-line: rgba(237, 232, 223, 0.10);
  --color-line-strong: rgba(237, 232, 223, 0.18);

  /* --- Accent. Exactly one. ------------------------------------------- */
  --color-signal: #FDE03F;
  --color-signal-dim: rgba(253, 224, 63, 0.14);

  /* --- Semantic states. Forms and back office only. ------------------- */
  --color-ok: #4ADE80;
  --color-warn: #FBBF24;
  --color-danger: #F87171;

  /* --- Type ----------------------------------------------------------- */
  --font-body: 'Vazirmatn', 'Segoe UI', Tahoma, Arial, sans-serif;

  --step--1: clamp(0.83rem, 0.8rem + 0.15vw, 0.9rem);
  --step-0: clamp(1rem, 0.96rem + 0.2vw, 1.06rem);
  --step-1: clamp(1.25rem, 1.15rem + 0.5vw, 1.5rem);
  --step-2: clamp(1.6rem, 1.4rem + 1vw, 2.1rem);
  --step-3: clamp(2rem, 1.6rem + 2vw, 3rem);
  --step-4: clamp(2.6rem, 1.9rem + 3.4vw, 4.5rem);

  --leading-body: 1.9;   /* Persian needs more room than Latin */
  --leading-tight: 1.35;
  --measure: 68ch;

  /* --- Space ---------------------------------------------------------- */
  --space-1: 0.5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2.5rem;
  --space-5: 4rem;
  --space-6: 6rem;
  --section-gap: clamp(3rem, 8vw, 6rem);

  /* --- Shape ---------------------------------------------------------- */
  --radius-sm: 8px;
  --radius-card: 20px;
  --radius-pill: 999px;

  /* --- Elevation. Tinted to the canvas, never a glow. ------------------ */
  --shadow-card: 0 24px 48px -24px rgba(0, 0, 0, 0.6);
  --shadow-pop: 0 32px 64px -28px rgba(0, 0, 0, 0.75);

  /* --- Motion --------------------------------------------------------- */
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --ease-out: cubic-bezier(0.22, 0.61, 0.36, 1);
  --dur-fast: 140ms;
  --dur-base: 260ms;
  --dur-slow: 520ms;

  /* --- Layout --------------------------------------------------------- */
  --container: 1320px;
  --container-pad: clamp(1.25rem, 4vw, 3rem);
  --bottom-bar-height: 64px;
}
