/* ==========================================================================
   Design Tokens — Fretlyn
   Source of truth for all visual values. Never hardcode colors/spacing.
   ========================================================================== */

:root {
  /* Background & Surface */
  --bg: #FFFFFF;
  --bg-soft: #F8FAFC;
  --bg-dark: #0F172A;
  --surface: #FFFFFF;
  --surface-hover: #F1F5F9;

  /* Text */
  --text-primary: #0F172A;
  --text-secondary: #475569;
  --text-muted: #94A3B8;
  --text-on-dark: #F8FAFC;
  --text-on-accent: #FFFFFF;

  /* Accent */
  --accent: #F97316;
  --accent-hover: #EA580C;
  --accent-light: #FFF7ED;
  --accent-border: #FDBA74;

  /* Borders & Dividers */
  --border: #E2E8F0;
  --border-focus: #F97316;
  --border-light: #F1F5F9;

  /* Status */
  --green: #16A34A;
  --green-bg: #F0FDF4;
  --blue: #2563EB;
  --blue-bg: #EFF6FF;

  /* Spacing (8px base grid) */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;

  /* Typography */
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', 'Courier New', monospace;

  /* Font sizes (desktop) */
  --text-hero: 56px;
  --text-h1: 40px;
  --text-h2: 28px;
  --text-h3: 20px;
  --text-body: 16px;
  --text-small: 14px;
  --text-caption: 12px;

  /* Font weights */
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  /* Layout */
  --container-max: 1200px;
  --content-max: 720px;
  --body-max: 680px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-pill: 100px;

  /* Transitions */
  --ease-fast: 0.15s ease;
  --ease-normal: 0.2s ease;
  --ease-slow: 0.4s ease;

  /* Z-index */
  --z-header: 100;
  --z-mobile-nav: 200;
  --z-modal: 300;
  --z-whatsapp: 90;
}

/* Mobile overrides */
@media (max-width: 640px) {
  :root {
    --text-hero: 36px;
    --text-h1: 28px;
    --text-h2: 22px;
    --text-h3: 18px;
    --space-16: 48px;
    --space-20: 48px;
    --space-24: 64px;
  }
}
