/* Design Tokens — generated from config/design-system.json */
/* Run /cbc-web:design-system regenerate to update */

@layer tokens {
  :root {
    /* Typography — Families */
    --font-heading: 'Instrument Serif', Georgia, 'Times New Roman', serif;
    --font-body: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-mono: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', monospace;

    /* Typography — Scale */
    --text-xs: 0.75rem;
    --text-sm: 0.875rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.25rem;
    --text-2xl: 1.5rem;
    --text-3xl: 1.875rem;
    --text-4xl: 2.25rem;
    --text-5xl: 3rem;
    --text-6xl: 3.75rem;
    --text-7xl: 4.5rem;

    /* Typography — Line Height */
    --leading-tight: 1.2;
    --leading-snug: 1.375;
    --leading-normal: 1.6;
    --leading-relaxed: 1.8;

    /* Colors — Primary (Teal) */
    --color-primary-50: #e0faf7;
    --color-primary-100: #b3f0e8;
    --color-primary-200: #80e5d8;
    --color-primary-300: #4ecdc4;
    --color-primary-400: #3bbfb6;
    --color-primary-500: #2aa69e;
    --color-primary-600: #1f8a83;
    --color-primary-700: #166b66;
    --color-primary-800: #0e4d49;
    --color-primary-900: #072f2d;
    --color-primary-950: #031a19;

    /* Colors — Accent (Coral-Red) */
    --color-accent-50: #ffe8e8;
    --color-accent-100: #ffc4c4;
    --color-accent-200: #ff9b9b;
    --color-accent-300: #ff6b6b;
    --color-accent-400: #f05252;
    --color-accent-500: #dc3d3d;
    --color-accent-600: #b82e2e;
    --color-accent-700: #8f2222;
    --color-accent-800: #661818;
    --color-accent-900: #3d0e0e;
    --color-accent-950: #1f0707;

    /* Colors — Secondary (Blue) */
    --color-secondary-50: #e8efff;
    --color-secondary-100: #c4d5ff;
    --color-secondary-200: #9bb8ff;
    --color-secondary-300: #6c9bff;
    --color-secondary-400: #5485f0;
    --color-secondary-500: #3d6edc;
    --color-secondary-600: #2e55b8;
    --color-secondary-700: #223f8f;
    --color-secondary-800: #182c66;
    --color-secondary-900: #0e1a3d;
    --color-secondary-950: #070d1f;

    /* Colors — Gold (Highlights) */
    --color-gold-50: #fff8e0;
    --color-gold-100: #ffecb3;
    --color-gold-200: #ffe082;
    --color-gold-300: #ffd166;
    --color-gold-400: #ffc23a;
    --color-gold-500: #e6a820;
    --color-gold-600: #c08a10;
    --color-gold-700: #8f6608;
    --color-gold-800: #5e4305;
    --color-gold-900: #2f2103;
    --color-gold-950: #181101;

    /* Colors — Purple (Synapses) */
    --color-purple-50: #f0e8ff;
    --color-purple-100: #dbc4ff;
    --color-purple-200: #c49bff;
    --color-purple-300: #c084fc;
    --color-purple-400: #a855f7;
    --color-purple-500: #8b3ddc;
    --color-purple-600: #6e2eb8;
    --color-purple-700: #52228f;
    --color-purple-800: #381866;
    --color-purple-900: #1f0e3d;
    --color-purple-950: #10071f;

    /* Colors — Neutral (Cool Gray-Blue) */
    --color-neutral-50: #e8eaf0;
    --color-neutral-100: #d0d4de;
    --color-neutral-200: #a8b0c2;
    --color-neutral-300: #8891a5;
    --color-neutral-400: #6b7588;
    --color-neutral-500: #515a6b;
    --color-neutral-600: #3d4556;
    --color-neutral-700: #2a3142;
    --color-neutral-800: #1a1e28;
    --color-neutral-900: #12151c;
    --color-neutral-950: #0a0c10;

    /* Colors — Semantic */
    --color-success: #4ecdc4;
    --color-success-dark: #2aa69e;
    --color-warning: #ffd166;
    --color-warning-dark: #e6a820;
    --color-error: #ff6b6b;
    --color-error-dark: #dc3d3d;

    /* Colors — Surface */
    --color-background: #0a0c10;
    --color-foreground: #e8eaf0;
    --color-card: #12151c;
    --color-card-foreground: #e8eaf0;
    --color-border: #252a36;
    --color-input: #1a1e28;
    --color-ring: #4ecdc4;
    --color-muted: #1a1e28;
    --color-muted-foreground: #8891a5;

    /* Spacing */
    --space-0: 0;
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --space-7: 3rem;
    --space-8: 4rem;
    --space-9: 6rem;
    --space-10: 8rem;

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

    /* Shadows */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -2px rgba(0, 0, 0, 0.2);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.35), 0 4px 6px -4px rgba(0, 0, 0, 0.2);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.4), 0 8px 10px -6px rgba(0, 0, 0, 0.25);
    --shadow-glow-teal: 0 0 20px rgba(78, 205, 196, 0.25), 0 0 40px rgba(78, 205, 196, 0.1);
    --shadow-glow-coral: 0 0 20px rgba(255, 107, 107, 0.25), 0 0 40px rgba(255, 107, 107, 0.1);
    --shadow-glow-blue: 0 0 20px rgba(108, 155, 255, 0.25), 0 0 40px rgba(108, 155, 255, 0.1);
    --shadow-glow-gold: 0 0 20px rgba(255, 209, 102, 0.25), 0 0 40px rgba(255, 209, 102, 0.1);
    --shadow-glow-purple: 0 0 20px rgba(192, 132, 252, 0.2), 0 0 40px rgba(192, 132, 252, 0.08);

    /* Transitions */
    --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-normal: 250ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow: 350ms cubic-bezier(0.4, 0, 0.2, 1);

    /* Layout */
    --max-width: 1280px;
    --content-width: 720px;
    --sidebar-width: 280px;

    /* Breakpoints (for reference — use in media queries) */
    /* sm: 640px, md: 768px, lg: 1024px, xl: 1280px, 2xl: 1536px */
  }
}
