/*
 * Haven Color System
 * 
 * Theme: "Warm transitioning to dark"
 * 
 * The palette reflects the game's journey:
 * - Haven (early): Warm golds, soft creams, hopeful
 * - Corruption (late): Deep purples, crimson, oppressive blacks
 * 
 * The website uses the warm palette as primary, with dark accents
 * hinting at what's to come.
 */

:root {
    /* ==================== */
    /* HAVEN (Warm/Light)   */
    /* ==================== */
    
    /* Primary - Warm Gold (Hope, Safety, Beginning) */
    --haven-gold: #D4A853;
    --haven-gold-light: #E8C97A;
    --haven-gold-dark: #B8923F;
    
    /* Secondary - Soft Cream (Comfort, Peace) */
    --haven-cream: #F5ECD7;
    --haven-cream-light: #FDF8EE;
    --haven-cream-dark: #E6D9B8;
    
    /* Accent - Warm Ember (Life, Warmth) */
    --haven-ember: #E07B4C;
    --haven-ember-light: #F09A72;
    --haven-ember-dark: #C45D2E;
    
    
    /* ==================== */
    /* CORRUPTION (Dark)    */
    /* ==================== */
    
    /* Primary - Deep Violet (Corruption, Madness) */
    --corrupt-violet: #4A2C6A;
    --corrupt-violet-light: #6B4D8A;
    --corrupt-violet-dark: #2E1A42;
    
    /* Secondary - Abyssal Black (The Void, Ending) */
    --corrupt-black: #1A1420;
    --corrupt-black-light: #2A2233;
    --corrupt-black-dark: #0D0A10;
    
    /* Accent - Blood Crimson (Sacrifice, Power) */
    --corrupt-crimson: #8B2942;
    --corrupt-crimson-light: #A83D56;
    --corrupt-crimson-dark: #6B1F32;
    
    
    /* ==================== */
    /* NEUTRALS             */
    /* ==================== */
    
    --neutral-100: #FFFFFF;
    --neutral-200: #F5F5F5;
    --neutral-300: #E0E0E0;
    --neutral-400: #BDBDBD;
    --neutral-500: #9E9E9E;
    --neutral-600: #757575;
    --neutral-700: #616161;
    --neutral-800: #424242;
    --neutral-900: #212121;
    --neutral-950: #121212;
    
    
    /* ==================== */
    /* SEMANTIC COLORS      */
    /* ==================== */
    
    --color-success: #4A7C59;
    --color-warning: var(--haven-ember);
    --color-error: var(--corrupt-crimson);
    --color-info: #4A6B8A;
    
    
    /* ==================== */
    /* APPLIED THEME        */
    /* ==================== */
    
    /* Background gradient: Warm top, dark bottom (the descent) */
    --bg-primary: var(--corrupt-black);
    --bg-secondary: var(--corrupt-black-light);
    --bg-tertiary: var(--corrupt-violet-dark);
    
    /* Text */
    --text-primary: var(--haven-cream);
    --text-secondary: var(--haven-cream-dark);
    --text-muted: var(--neutral-500);
    --text-accent: var(--haven-gold);
    
    /* Interactive */
    --link-color: var(--haven-gold);
    --link-hover: var(--haven-gold-light);
    --button-bg: var(--haven-gold);
    --button-text: var(--corrupt-black);
    --button-hover-bg: var(--haven-gold-light);
    --button-hover-text: var(--corrupt-black);
    
    /* Borders & Dividers */
    --border-color: var(--corrupt-violet);
    --border-subtle: rgba(212, 168, 83, 0.2);
    
    /* Shadows */
    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.5);
    --shadow-glow: 0 0 20px rgba(212, 168, 83, 0.3);
    
    
    /* ==================== */
    /* TYPOGRAPHY           */
    /* ==================== */
    
    /* Font Families */
    --font-heading: 'Cinzel', 'Times New Roman', serif;
    --font-body: 'Raleway', 'Segoe UI', sans-serif;
    --font-mono: 'Fira Code', 'Consolas', monospace;
    
    /* Font Sizes (fluid, responsive) */
    --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
    --text-sm: clamp(0.875rem, 0.8rem + 0.35vw, 1rem);
    --text-base: clamp(1rem, 0.9rem + 0.5vw, 1.125rem);
    --text-lg: clamp(1.125rem, 1rem + 0.6vw, 1.25rem);
    --text-xl: clamp(1.25rem, 1.1rem + 0.75vw, 1.5rem);
    --text-2xl: clamp(1.5rem, 1.25rem + 1.25vw, 2rem);
    --text-3xl: clamp(1.875rem, 1.5rem + 1.875vw, 2.5rem);
    --text-4xl: clamp(2.25rem, 1.75rem + 2.5vw, 3.5rem);
    --text-5xl: clamp(3rem, 2rem + 4vw, 5rem);
    
    /* Line Heights */
    --leading-tight: 1.2;
    --leading-normal: 1.6;
    --leading-relaxed: 1.8;
    
    
    /* ==================== */
    /* SPACING              */
    /* ==================== */
    
    --space-xs: 0.25rem;
    --space-sm: 0.5rem;
    --space-md: 1rem;
    --space-lg: 1.5rem;
    --space-xl: 2rem;
    --space-2xl: 3rem;
    --space-3xl: 4rem;
    --space-4xl: 6rem;
    
    
    /* ==================== */
    /* LAYOUT               */
    /* ==================== */
    
    --container-max: 1200px;
    --container-narrow: 800px;
    --border-radius-sm: 4px;
    --border-radius-md: 8px;
    --border-radius-lg: 16px;
    
    
    /* ==================== */
    /* TRANSITIONS          */
    /* ==================== */
    
    --transition-fast: 150ms ease;
    --transition-normal: 300ms ease;
    --transition-slow: 500ms ease;
}


/* ==================== */
/* DARK MODE OVERRIDE   */
/* (if needed later)    */
/* ==================== */

@media (prefers-color-scheme: light) {
    :root {
        /* 
         * Haven's site is dark by default (reflects the journey).
         * But if we ever want a light mode, override here.
         * For now, keeping it dark.
         */
    }
}
