/**
 * Esoteric Illuminati - Design Tokens
 * Spacing: 8px base. Colors: primary purple/indigo, secondary gold, WCAG AA.
 */

:root {
    /* ----- Spacing System: base unit 8px ----- */
    --space-8: 8px;
    --space-16: 16px;
    --space-24: 24px;
    --space-32: 32px;
    --space-48: 48px;
    --space-64: 64px;
    --space-96: 96px;
    /* Additional for UI detail */
    --space-4: 4px;
    --space-12: 12px;

    /* ----- Color Palette ----- */
    /* Primary: deep purple/indigo - CTAs, links, key elements */
    --color-primary: #1A237E;
    --color-primary-hover: #283593;
    --color-primary-light: rgba(26, 35, 126, 0.15);
    --color-primary-glow: rgba(26, 35, 126, 0.35);

    /* Secondary: rich gold/amber - accent, highlights */
    --color-accent: #D4AF37;
    --color-accent-hover: #FFD700;
    --color-accent-glow: rgba(212, 175, 55, 0.35);
    --color-accent-subtle: rgba(212, 175, 55, 0.12);

    /* Tertiary: cosmic teal - supporting elements */
    --color-tertiary: #0D9488;
    --color-tertiary-muted: rgba(13, 148, 136, 0.2);

    /* Neutral base: dark navy / deep charcoal */
    --color-bg: #0A0E27;
    --color-bg-elevated: #121829;
    --color-bg-card: #1A1A2E;
    --color-surface: #16162a;
    --color-border: #2C2C3E;
    --color-border-light: #3d3d52;

    /* Neutral grays (light to dark) */
    --gray-50: #F5F5F7;
    --gray-100: #e8e8ec;
    --gray-200: #c5c5d0;
    --gray-300: #9a9aab;
    --gray-400: #6b6b80;
    --gray-500: #4a4a5c;
    --gray-600: #2C2C3E;
    --gray-700: #1f1f2e;

    /* Text */
    --color-text: #F5F5F5;
    --color-text-muted: #b8b8c8;
    --color-text-dim: #6b6b80;

    /* Semantic */
    --color-success: #10B981;
    --color-warning: #F59E0B;
    --color-error: #DC2626;

    /* Gradient: gold to purple (accent highlights) */
    --gradient-accent: linear-gradient(135deg, var(--color-accent) 0%, #6A0DAD 100%);
    --gradient-subtle: linear-gradient(180deg, rgba(212, 175, 55, 0.08) 0%, transparent 50%);

    /* ----- Typography ----- */
    --font-heading: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --font-body: 'Open Sans', -apple-system, BlinkMacSystemFont, sans-serif;

    /* Scale: H1 48-64 (mobile 32-40), H2 36-48 (mobile 28-32), H3 28-32 (mobile 24), H4 24 (mobile 20), body 16-18, small 14 */
    --text-xs: 0.75rem;   /* 12px */
    --text-sm: 0.875rem;  /* 14px - Small */
    --text-base: 1rem;   /* 16px - Body */
    --text-lg: 1.125rem; /* 18px - Body large */
    --text-xl: 1.25rem;  /* 20px - H4 mobile */
    --text-2xl: 1.5rem;  /* 24px - H4 / H3 mobile */
    --text-3xl: 1.75rem; /* 28px - H2 mobile */
    --text-4xl: 2rem;    /* 32px - H1 mobile */
    --text-5xl: 2.25rem; /* 36px - H2 */
    --text-6xl: 3rem;    /* 48px - H1 */
    --text-7xl: 4rem;    /* 64px - H1 large */

    --line-height-heading: 1.25;
    --line-height-body: 1.55;
    --line-height-relaxed: 1.6;

    /* Font weights */
    --font-regular: 400;
    --font-medium: 500;
    --font-semibold: 600;
    --font-bold: 700;

    /* ----- Layout ----- */
    --container-max: 1320px;
    --container-narrow: 720px;
    --line-length: 65ch;
    --header-height: 72px;
    --header-height-scrolled: 64px;

    /* ----- Buttons ----- */
    --btn-height-sm: 32px;
    --btn-height-md: 40px;
    --btn-height-lg: 48px;
    --btn-padding-x: 16px;
    --btn-padding-y: 10px;
    --btn-radius: 6px;
    --btn-transition: 0.2s ease;

    /* ----- Borders & radius (4-8px) ----- */
    --radius-sm: 4px;
    --radius-md: 6px;
    --radius-lg: 8px;
    --radius-xl: 12px;
    --radius-full: 9999px;

    /* ----- Shadows ----- */
    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.35);
    --shadow-lg: 0 10px 40px rgba(0, 0, 0, 0.4);
    --shadow-glow: 0 0 24px var(--color-primary-glow);
    --shadow-glow-accent: 0 0 24px var(--color-accent-glow);

    /* ----- Transitions ----- */
    --transition-fast: 0.15s ease;
    --transition-normal: 0.2s ease;
    --transition-slow: 0.35s ease;
}
