/* ========================================
   CSS Variables - Budget Starter Theme
   ======================================== */

:root {
    /* Primary Colors (Coral/Orange - Budget Bytes inspired) */
    --color-primary: #E5673A;
    --color-primary-light: #F07B50;
    --color-primary-dark: #C85530;

    /* Secondary Colors */
    --color-secondary: #2D3748;
    --color-secondary-light: #4A5568;
    --color-secondary-dark: #1A202C;

    /* Accent Colors */
    --color-accent: #F5A623;
    --color-accent-light: #FFBE4D;
    --color-accent-dark: #D4890F;

    /* Neutral Colors */
    --color-white: #FFFFFF;
    --color-gray-50: #F9FAFB;
    --color-gray-100: #F3F4F6;
    --color-gray-200: #E5E7EB;
    --color-gray-300: #D1D5DB;
    --color-gray-400: #9CA3AF;
    --color-gray-500: #6B7280;
    --color-gray-600: #4B5563;
    --color-gray-700: #374151;
    --color-gray-800: #1F2937;
    --color-gray-900: #111827;

    /* Semantic Colors */
    --color-success: #10B981;
    --color-warning: #F59E0B;
    --color-error: #EF4444;
    --color-info: #3B82F6;

    /* Background Colors */
    --bg-body: var(--color-gray-50);
    --bg-card: var(--color-white);
    --bg-header: var(--color-white);
    --bg-footer: var(--color-gray-800);

    /* Text Colors */
    --text-primary: var(--color-gray-800);
    --text-secondary: var(--color-gray-600);
    --text-muted: var(--color-gray-400);
    --text-inverse: var(--color-white);
    --text-link: var(--color-primary);
    --text-link-hover: var(--color-primary-dark);

    /* Typography */
    --font-sans: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-serif: 'Lora', Georgia, 'Times New Roman', serif;

    --font-size-xs: 0.75rem;     /* 12px */
    --font-size-sm: 0.875rem;    /* 14px */
    --font-size-base: 1rem;      /* 16px */
    --font-size-lg: 1.125rem;    /* 18px */
    --font-size-xl: 1.25rem;     /* 20px */
    --font-size-2xl: 1.5rem;     /* 24px */
    --font-size-3xl: 1.875rem;   /* 30px */
    --font-size-4xl: 2.25rem;    /* 36px */
    --font-size-5xl: 3rem;       /* 48px */

    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

    --line-height-tight: 1.25;
    --line-height-normal: 1.5;
    --line-height-relaxed: 1.75;

    /* Spacing */
    --spacing-0: 0;
    --spacing-1: 0.25rem;   /* 4px */
    --spacing-2: 0.5rem;    /* 8px */
    --spacing-3: 0.75rem;   /* 12px */
    --spacing-4: 1rem;      /* 16px */
    --spacing-5: 1.25rem;   /* 20px */
    --spacing-6: 1.5rem;    /* 24px */
    --spacing-8: 2rem;      /* 32px */
    --spacing-10: 2.5rem;   /* 40px */
    --spacing-12: 3rem;     /* 48px */
    --spacing-16: 4rem;     /* 64px */
    --spacing-20: 5rem;     /* 80px */

    /* Border Radius */
    --radius-sm: 0.25rem;   /* 4px */
    --radius-md: 0.5rem;    /* 8px */
    --radius-lg: 0.75rem;   /* 12px */
    --radius-xl: 1rem;      /* 16px */
    --radius-full: 9999px;

    /* Shadows */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);

    /* Transitions */
    --transition-fast: 150ms ease-in-out;
    --transition-normal: 250ms ease-in-out;
    --transition-slow: 350ms ease-in-out;

    /* Container */
    --container-max: 1280px;
    --container-padding: var(--spacing-4);

    /* Header */
    --header-height: 70px;

    /* Home hero (BudgetBytes-style) — overridable by generated skins */
    --hero-height: 500px;
    --hero-badge-top: 80px;
    --hero-badge-left: -10px;
    --hero-badge-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    --color-hero-badge: #FFD93D;
    --color-hero-badge-text: #1a1a1a;

    /* Opacity scale (for overlay boxes) */
    --opacity-90: 0.9;
    --opacity-95: 0.95;

    /* Z-index */
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-fixed: 300;
    --z-modal-backdrop: 400;
    --z-modal: 500;
    --z-popover: 600;
    --z-tooltip: 700;
}

/* Dark mode (optional) */
@media (prefers-color-scheme: dark) {
    :root.auto-dark {
        --bg-body: var(--color-gray-900);
        --bg-card: var(--color-gray-800);
        --bg-header: var(--color-gray-900);
        --text-primary: var(--color-gray-100);
        --text-secondary: var(--color-gray-300);
    }
}
