/* ─────────────────────────────────────────
   tokens.css — Design tokens & CSS variables
───────────────────────────────────────── */

:root {
  /* ── Colours ── */
  --color-bg-primary:      #0f0f1a;
  --color-bg-secondary:    #14141f;
  --color-bg-card:         #1a1a2e;
  --color-bg-elevated:     #1e1e32;
  --color-bg-preview:      #f5f0e8;

  --color-accent-purple:   #7C5CFC;
  --color-accent-purple-light: #9d82fd;
  --color-accent-purple-dim:   #3d2f7a;
  --color-accent-yellow:   #f5c542;
  --color-accent-blue:     #4da6ff;

  --color-text-primary:    #ffffff;
  --color-text-secondary:  rgba(255, 255, 255, 0.55);
  --color-text-muted:      rgba(255, 255, 255, 0.35);
  --color-text-dark:       #0f0f1a;

  --color-border:          rgba(255, 255, 255, 0.07);
  --color-border-hover:    rgba(255, 255, 255, 0.15);

  /* ── Testimonial ── */
  --color-testimonial-bg:  #b3a4f5;

  /* ── Typography ── */
  --font-sans:   'DM Sans', system-ui, -apple-system, sans-serif;
  --font-mono:   'DM Mono', 'Courier New', monospace;

  --text-xs:    0.6875rem;  /* 11px */
  --text-sm:    0.8125rem;  /* 13px */
  --text-base:  0.9375rem;  /* 15px */
  --text-lg:    1.0625rem;  /* 17px */
  --text-xl:    1.25rem;    /* 20px */
  --text-2xl:   1.5rem;     /* 24px */
  --text-3xl:   2rem;       /* 32px */
  --text-4xl:   2.5rem;     /* 40px */
  --text-5xl:   3.25rem;    /* 52px */

  --leading-tight:  1.15;
  --leading-snug:   1.3;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;

  --fw-regular: 400;
  --fw-medium:  500;
  --fw-semibold: 600;
  --fw-bold:    700;

  /* ── 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;

  /* ── Radii ── */
  --radius-sm:  6px;
  --radius-md:  10px;
  --radius-lg:  16px;
  --radius-xl:  24px;
  --radius-2xl: 32px;
  --radius-full: 9999px;

  /* ── Shadows ── */
  --shadow-sm:  0 1px 3px rgba(0,0,0,0.3);
  --shadow-md:  0 4px 16px rgba(0,0,0,0.4);
  --shadow-lg:  0 8px 32px rgba(0,0,0,0.5);
  --shadow-xl:  0 16px 48px rgba(0,0,0,0.6);
  --shadow-purple: 0 8px 32px rgba(124, 92, 252, 0.3);
  --shadow-purple-hover: 0 12px 40px rgba(124, 92, 252, 0.5);

  /* ── Transitions ── */
  --ease-out:        cubic-bezier(0.22, 1, 0.36, 1);
  --ease-in-out:     cubic-bezier(0.45, 0, 0.55, 1);
  --ease-spring:     cubic-bezier(0.34, 1.56, 0.64, 1);
  --duration-fast:   150ms;
  --duration-base:   250ms;
  --duration-slow:   400ms;
  --duration-slower: 600ms;

  /* ── Layout ── */
  --container-max:  1200px;
  --container-pad:  var(--space-8);
  --nav-height:     60px;
}
