/* ============================================================
   TOKENS — Design system variables
============================================================ */

:root {
  /* --- Colors --- */
  --color-accent:        #EF4D23;
  --color-accent-light:  #FFF0EB;
  --color-accent-mid:    rgba(239, 77, 35, 0.12);
  --color-accent-dark:   #C73D19;

  --color-green:         #27AE60;
  --color-green-light:   #EDFAF3;
  --color-green-mid:     rgba(39, 174, 96, 0.12);

  --color-red:           #E53935;
  --color-red-light:     #FFF0F0;
  --color-red-mid:       rgba(229, 57, 53, 0.1);

  --color-ink:           #18181B;
  --color-ink-80:        rgba(24, 24, 27, 0.8);
  --color-ink-60:        rgba(24, 24, 27, 0.6);
  --color-ink-30:        rgba(24, 24, 27, 0.3);
  --color-ink-10:        rgba(24, 24, 27, 0.08);

  --color-muted:         #71717A;
  --color-muted-light:   #A1A1AA;

  --color-bg:            #F4F3F1;
  --color-bg-warm:       #FDFCFA;
  --color-surface:       #FFFFFF;
  --color-surface-raised: #FFFFFF;

  --color-border:        rgba(226, 232, 240, 0.8);
  --color-border-strong: rgba(226, 232, 240, 1);

  /* --- Typography --- */
  --font-display:  'Outfit', system-ui, sans-serif;
  --font-body:     'DM Sans', 'Outfit', system-ui, sans-serif;

  --text-xs:    0.75rem;    /* 12px */
  --text-sm:    0.875rem;   /* 14px */
  --text-base:  1rem;       /* 16px */
  --text-lg:    1.125rem;   /* 18px */
  --text-xl:    1.25rem;    /* 20px */
  --text-2xl:   1.5rem;     /* 24px */
  --text-3xl:   1.875rem;   /* 30px */
  --text-4xl:   2.25rem;    /* 36px */
  --text-5xl:   3rem;       /* 48px */
  --text-6xl:   3.75rem;    /* 60px */
  --text-7xl:   4.5rem;     /* 72px */

  --weight-regular:    400;
  --weight-medium:     500;
  --weight-semibold:   600;
  --weight-bold:       700;
  --weight-extrabold:  800;

  /* --- Spacing --- */
  --space-1:   0.25rem;
  --space-2:   0.5rem;
  --space-3:   0.75rem;
  --space-4:   1rem;
  --space-5:   1.25rem;
  --space-6:   1.5rem;
  --space-8:   2rem;
  --space-10:  2.5rem;
  --space-12:  3rem;
  --space-16:  4rem;
  --space-20:  5rem;
  --space-24:  6rem;
  --space-32:  8rem;

  /* --- Border radius --- */
  --radius-sm:   6px;
  --radius-md:   12px;
  --radius-lg:   16px;
  --radius-xl:   20px;
  --radius-2xl:  24px;
  --radius-3xl:  32px;
  --radius-full: 9999px;

  /* --- Shadows --- */
  --shadow-xs:  0 1px 3px rgba(24, 24, 27, 0.06), 0 1px 2px rgba(24, 24, 27, 0.04);
  --shadow-sm:  0 2px 8px rgba(24, 24, 27, 0.07), 0 1px 3px rgba(24, 24, 27, 0.05);
  --shadow-md:  0 4px 16px rgba(24, 24, 27, 0.08), 0 2px 6px rgba(24, 24, 27, 0.05);
  --shadow-lg:  0 8px 32px rgba(24, 24, 27, 0.1), 0 3px 10px rgba(24, 24, 27, 0.06);
  --shadow-xl:  0 16px 48px rgba(24, 24, 27, 0.12), 0 6px 16px rgba(24, 24, 27, 0.07);
  --shadow-accent: 0 8px 24px rgba(239, 77, 35, 0.22);
  --shadow-green:  0 8px 24px rgba(39, 174, 96, 0.22);

  /* --- Transitions --- */
  --ease-out:   cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in:    cubic-bezier(0.4, 0, 1, 1);
  --ease-inout: cubic-bezier(0.37, 0, 0.63, 1);
  --ease-spring: cubic-bezier(0.32, 0.72, 0, 1);

  --duration-fast:   150ms;
  --duration-base:   250ms;
  --duration-slow:   400ms;
  --duration-slower: 600ms;

  /* --- Z-index scale --- */
  --z-base:    0;
  --z-raised:  10;
  --z-overlay: 20;
  --z-modal:   30;
  --z-nav:     40;
  --z-toast:   50;
}
