/* ============================================
   Design Tokens — SalesAIGuide
   All CSS custom properties (light + dark mode)
   ============================================ */

:root {
  /* ---------- Colors (Light) ---------- */
  --color-bg: #ffffff;
  --color-surface: #f8fafb;
  --color-surface-2: #f0f4f6;
  --color-text: #1a1a2e;
  --color-text-muted: #525252;
  --color-text-faint: #6b7280;
  --color-accent: #047857;
  --color-accent-hover: #065f46;
  --color-accent-active: #064e3b;
  --color-accent-highlight: #d1fae5;
  --color-border: #e5e7eb;
  --color-star: #f59e0b;
  --color-success-bg: #dcfce7;
  --color-success-text: #166534;
  --color-warning-bg: #fef3c7;
  --color-warning-text: #92400e;

  /* ---------- Type Scale (fluid) ---------- */
  --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.8125rem);
  --text-sm: clamp(0.8125rem, 0.75rem + 0.3vw, 0.9375rem);
  --text-base: clamp(0.9375rem, 0.85rem + 0.4vw, 1.0625rem);
  --text-lg: clamp(1.125rem, 0.95rem + 0.85vw, 1.4rem);
  --text-xl: clamp(1.4rem, 1rem + 1.4vw, 2rem);
  --text-2xl: clamp(1.8rem, 1.1rem + 2.2vw, 3rem);

  /* ---------- Font Weights ---------- */
  --font-normal: 400;
  --font-medium: 500;
  --font-semibold: 600;
  --font-bold: 700;
  --font-extrabold: 800;

  /* ---------- Spacing (4px grid) ---------- */
  --space-1: 0.25rem;    /*  4px */
  --space-2: 0.5rem;     /*  8px */
  --space-3: 0.75rem;    /* 12px */
  --space-4: 1rem;       /* 16px */
  --space-5: 1.25rem;    /* 20px */
  --space-6: 1.5rem;     /* 24px */
  --space-8: 2rem;       /* 32px */
  --space-10: 2.5rem;    /* 40px */
  --space-12: 3rem;      /* 48px */
  --space-16: 4rem;      /* 64px */
  --space-20: 5rem;      /* 80px */
  --space-24: 6rem;      /* 96px */

  /* ---------- Radius ---------- */
  --radius-sm: 0.375rem;
  --radius-md: 0.5rem;
  --radius-lg: 0.75rem;
  --radius-xl: 1rem;
  --radius-full: 9999px;

  /* ---------- Shadows ---------- */
  --shadow-sm: 0 1px 3px rgba(26, 26, 46, 0.06);
  --shadow-md: 0 4px 12px rgba(26, 26, 46, 0.08);
  --shadow-lg: 0 12px 32px rgba(26, 26, 46, 0.10);

  /* ---------- Transitions ---------- */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --duration: 180ms;
  --transition: var(--duration) var(--ease-out);

  /* ---------- Layout ---------- */
  --container-max: 1200px;
  --navbar-height: 3.75rem;
}

/* ---------- Dark Mode ---------- */
[data-theme="dark"] {
  --color-bg: #0f1117;
  --color-surface: #161b22;
  --color-surface-2: #1c2128;
  --color-text: #e6edf3;
  --color-text-muted: #8b949e;
  --color-text-faint: #8b949e;
  --color-accent: #2dd4a8;
  --color-accent-hover: #5eead4;
  --color-accent-active: #99f6e4;
  --color-accent-highlight: rgba(45, 212, 168, 0.15);
  --color-border: #2d333b;
  --color-success-bg: rgba(22, 101, 52, 0.25);
  --color-success-text: #86efac;
  --color-warning-bg: rgba(146, 64, 14, 0.25);
  --color-warning-text: #fcd34d;
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.2);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.3);
  --shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.4);
}
