/* ==========================================================================
   DESIGN SYSTEM VARIABLES (Moments+)
   ========================================================================== */

:root {
    /* --- Typography --- */
    --font-primary: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    --font-display: 'Outfit', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    
    /* --- Spacing --- */
    --space-2xs: 0.25rem;  /* 4px */
    --space-xs: 0.5rem;    /* 8px */
    --space-sm: 0.75rem;   /* 12px */
    --space-md: 1rem;      /* 16px */
    --space-lg: 1.5rem;    /* 24px */
    --space-xl: 2rem;      /* 32px */
    --space-2xl: 3rem;     /* 48px */
    --space-3xl: 4.5rem;    /* 72px */
    --space-4xl: 6rem;     /* 96px */
    
    /* --- Border Radius --- */
    --radius-xs: 4px;
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 24px;
    --radius-2xl: 32px;
    --radius-full: 9999px;
    
    /* --- Transitions --- */
    --transition-fast: 0.15s cubic-bezier(0.16, 1, 0.3, 1);
    --transition-normal: 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    --transition-slow: 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    
    /* --- Container & Layout --- */
    --max-width: 1200px;
    --header-height: 80px;

    /* --- Gradients (Common) --- */
    --gradient-primary: linear-gradient(135deg, #6366f1 0%, #a855f7 50%, #ec4899 100%);
    --gradient-primary-hover: linear-gradient(135deg, #4f46e5 0%, #9333ea 50%, #db2777 100%);
    --gradient-primary-subtle: linear-gradient(135deg, rgba(99, 102, 241, 0.1) 0%, rgba(236, 72, 153, 0.1) 100%);
}

/* ==========================================================================
   THEME: LIGHT MODE (Default)
   ========================================================================== */
:root,
html[data-theme="light"] {
    /* --- Colors --- */
    --bg-primary: #f8fafc;        /* Slate 50 */
    --bg-secondary: #ffffff;      /* Pure white */
    --bg-tertiary: #f1f5f9;       /* Slate 100 */
    --bg-card: rgba(255, 255, 255, 0.7);
    --bg-card-hover: rgba(255, 255, 255, 0.95);
    
    --text-primary: #0f172a;      /* Slate 900 */
    --text-secondary: #475569;    /* Slate 600 */
    --text-muted: #94a3b8;        /* Slate 400 */
    
    --border-color: rgba(15, 23, 42, 0.08);
    --border-color-hover: rgba(15, 23, 42, 0.15);
    --border-focus: #6366f1;
    
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.02);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -4px rgba(0, 0, 0, 0.05);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.05);
    --shadow-glow: 0 0 40px rgba(99, 102, 241, 0.05);
    
    --glass-bg: rgba(255, 255, 255, 0.7);
    --glass-border: rgba(15, 23, 42, 0.06);
    --glass-blur: blur(16px);
    
    /* --- Specific Brand Elements --- */
    --gradient-text: linear-gradient(135deg, #0f172a 20%, #4f46e5 100%);
    --gradient-hero-bg: radial-gradient(circle at top, rgba(99, 102, 241, 0.04) 0%, rgba(236, 72, 153, 0.02) 60%, transparent 100%);
    --phone-shadow: 0 30px 60px -15px rgba(15, 23, 42, 0.15);
    --phone-glow: radial-gradient(circle at 50% 50%, rgba(99, 102, 241, 0.08) 0%, rgba(236, 72, 153, 0.03) 60%, transparent 100%);
}

/* ==========================================================================
   THEME: DARK MODE
   ========================================================================== */
html.dark,
html[data-theme="dark"] {
    /* --- Colors --- */
    --bg-primary: #07090e;        /* Dark Slate Blue */
    --bg-secondary: #0d111a;      /* Lighter Slate Blue */
    --bg-tertiary: #121824;       /* Deep Slate Blue */
    --bg-card: rgba(13, 17, 26, 0.6);
    --bg-card-hover: rgba(18, 24, 36, 0.8);
    
    --text-primary: #f8fafc;      /* Slate 50 */
    --text-secondary: #94a3b8;    /* Slate 400 */
    --text-muted: #64748b;        /* Slate 500 */
    
    --border-color: rgba(255, 255, 255, 0.08);
    --border-color-hover: rgba(255, 255, 255, 0.15);
    --border-focus: #a855f7;
    
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.5);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -2px rgba(0, 0, 0, 0.3);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.3), 0 4px 6px -4px rgba(0, 0, 0, 0.3);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.4), 0 8px 10px -6px rgba(0, 0, 0, 0.4);
    --shadow-glow: 0 0 50px rgba(168, 85, 247, 0.15);
    
    --glass-bg: rgba(7, 9, 14, 0.7);
    --glass-border: rgba(255, 255, 255, 0.08);
    --glass-blur: blur(20px);
    
    /* --- Specific Brand Elements --- */
    --gradient-text: linear-gradient(135deg, #ffffff 40%, #a855f7 100%);
    --gradient-hero-bg: radial-gradient(circle at top, rgba(99, 102, 241, 0.12) 0%, rgba(236, 72, 153, 0.04) 60%, transparent 100%);
    --phone-shadow: 0 30px 80px -15px rgba(0, 0, 0, 0.6), 0 0 40px rgba(99, 102, 241, 0.1);
    --phone-glow: radial-gradient(circle at 50% 50%, rgba(99, 102, 241, 0.2) 0%, rgba(236, 72, 153, 0.08) 60%, transparent 100%);
}
