/* ================================================
   DESIGN TOKENS - Luotettavimmat Nettikasinot
   Professional Gaming Authority Aesthetic
   ================================================ */

:root {
    /* =========================
       COLOR PALETTE
       ========================= */

    /* Brand Colors */
    --brand-primary: #75B06F;       /* Main green */
    --brand-primary-dark: #5A9054;
    --brand-primary-light: #8FC48A;
    --brand-secondary: #36656B;     /* Dark teal */
    --brand-secondary-light: #4A7F86;
    --brand-tertiary: #DAD887;      /* Light khaki */
    --brand-tertiary-dark: #C5C372;
    --brand-accent: #F0F8A4;        /* Light lime */

    /* Backgrounds - Dark theme */
    --bg-dark-900: #0F1A1C;         /* Deepest - body (teal tint) */
    --bg-dark-800: #152326;         /* Cards, sections */
    --bg-dark-700: #1C2E31;         /* Elevated cards */
    --bg-dark-600: #24393D;         /* Hover states */
    --bg-dark-500: #2F484D;         /* Borders, dividers */

    /* Gradients */
    --gradient-dark: linear-gradient(180deg, #152326 0%, #0F1A1C 100%);
    --gradient-card: linear-gradient(145deg, #1C2E31 0%, #152326 100%);
    --gradient-hero: linear-gradient(135deg, #0F1A1C 0%, #1C2E31 50%, #152326 100%);
    --gradient-accent: linear-gradient(135deg, #75B06F 0%, #8FC48A 100%);
    --gradient-cta: linear-gradient(135deg, #DAD887 0%, #F0F8A4 100%);

    /* Text Colors */
    --text-primary: #FFFFFF;
    --text-secondary: #B8C9CB;
    --text-muted: #7A9195;
    --text-dark: #0F1A1C;
    --text-light: #5A7478;

    /* Functional Colors */
    --success: #75B06F;
    --warning: #DAD887;
    --error: #E57373;
    --info: #36656B;

    /* Light backgrounds for contrast sections */
    --bg-light-100: #FFFFFF;
    --bg-light-200: #F8FCF0;
    --bg-light-300: #F0F8A4;
    --bg-light-400: #DAD887;

    /* Overlays */
    --overlay-light: rgba(255, 255, 255, 0.05);
    --overlay-medium: rgba(255, 255, 255, 0.1);
    --overlay-dark: rgba(0, 0, 0, 0.4);
    --overlay-darker: rgba(0, 0, 0, 0.6);

    /* Borders */
    --border-subtle: rgba(255, 255, 255, 0.06);
    --border-default: rgba(255, 255, 255, 0.1);
    --border-strong: rgba(255, 255, 255, 0.15);
    --border-accent: rgba(117, 176, 111, 0.4);

    /* Shadows */
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.5);
    --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.6);
    --shadow-glow: 0 0 20px rgba(117, 176, 111, 0.4);
    --shadow-glow-orange: 0 0 20px rgba(218, 216, 135, 0.4);

    /* =========================
       TYPOGRAPHY
       ========================= */

    --font-display: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

    /* Font Sizes - Fluid */
    --text-xs: clamp(0.6875rem, 0.65rem + 0.2vw, 0.75rem);     /* 11-12px */
    --text-sm: clamp(0.8125rem, 0.75rem + 0.3vw, 0.875rem);    /* 13-14px */
    --text-base: clamp(0.9375rem, 0.875rem + 0.3vw, 1rem);     /* 15-16px */
    --text-lg: clamp(1.0625rem, 1rem + 0.3vw, 1.125rem);       /* 17-18px */
    --text-xl: clamp(1.1875rem, 1.1rem + 0.4vw, 1.25rem);      /* 19-20px */
    --text-2xl: clamp(1.375rem, 1.25rem + 0.6vw, 1.5rem);      /* 22-24px */
    --text-3xl: clamp(1.75rem, 1.5rem + 1.2vw, 2.25rem);       /* 28-36px */
    --text-4xl: clamp(2.25rem, 1.8rem + 2vw, 3rem);            /* 36-48px */
    --text-5xl: clamp(2.75rem, 2rem + 3.5vw, 4rem);            /* 44-64px */

    /* Line Heights */
    --leading-none: 1;
    --leading-tight: 1.15;
    --leading-snug: 1.3;
    --leading-normal: 1.5;
    --leading-relaxed: 1.65;

    /* Letter Spacing */
    --tracking-tight: -0.02em;
    --tracking-normal: 0;
    --tracking-wide: 0.02em;
    --tracking-wider: 0.05em;
    --tracking-widest: 0.1em;

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

    /* =========================
       SPACING (8px base)
       ========================= */

    --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 */

    /* Section Padding */
    --section-py: clamp(3.5rem, 7vw, 6rem);
    --section-px: clamp(1rem, 4vw, 2rem);

    /* Container */
    --container-max: 1280px;
    --container-narrow: 800px;
    --container-wide: 1400px;

    /* =========================
       BORDERS & RADII
       ========================= */

    --radius-sm: 0.375rem;   /* 6px */
    --radius-md: 0.5rem;     /* 8px */
    --radius-lg: 0.75rem;    /* 12px */
    --radius-xl: 1rem;       /* 16px */
    --radius-2xl: 1.25rem;   /* 20px */
    --radius-3xl: 1.5rem;    /* 24px */
    --radius-full: 9999px;

    /* =========================
       TRANSITIONS
       ========================= */

    --ease-default: cubic-bezier(0.4, 0, 0.2, 1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);

    --duration-fast: 150ms;
    --duration-base: 200ms;
    --duration-slow: 300ms;

    /* =========================
       Z-INDEX
       ========================= */

    --z-base: 0;
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-fixed: 300;
    --z-modal-backdrop: 400;
    --z-modal: 500;
    --z-tooltip: 600;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    :root {
        --duration-fast: 0ms;
        --duration-base: 0ms;
        --duration-slow: 0ms;
    }
}
