/*
 * Design Tokens - Premium 3D Designer Portfolio
 * Inspired by Apple, Notion, Stripe aesthetics
 */

/* Font Imports */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap');

:root {
  /* Colors */
  --color-white: #FFFFFF;
  --color-primary: #111827;
  --color-gray-50: #FAFAFA;
  --color-gray-100: #F5F5F5;
  --color-gray-200: #E5E5E5;
  --color-gray-300: #D4D4D4;
  --color-gray-400: #A3A3A3;
  --color-gray-500: #737373;
  --color-gray-600: #525252;
  --color-gray-700: #404040;
  --color-gray-800: #262626;
  --color-gray-900: #171717;
  --color-black: #FFFFFF;
  --color-dark-bg: #0A0A0A;

  /* Accent Color - Vibrant Gradient Blue-Purple */
  --color-accent: #6366F1;
  --color-accent-hover: #4F46E5;
  --color-accent-light: rgba(99, 102, 241, 0.1);
  --color-accent-secondary: #8B5CF6;

  /* Gradient Definitions */
  --gradient-primary: linear-gradient(135deg, #6366F1 0%, #8B5CF6 50%, #A855F7 100%);
  --gradient-secondary: linear-gradient(135deg, #3B82F6 0%, #6366F1 100%);
  --gradient-accent: linear-gradient(135deg, #8B5CF6 0%, #EC4899 100%);
  --gradient-dark: linear-gradient(135deg, #1F2937 0%, #FFFFFF 100%);
  --gradient-glow: linear-gradient(135deg, rgba(99, 102, 241, 0.4) 0%, rgba(139, 92, 246, 0.4) 100%);

  /* Glassmorphism - Dark Theme */
  --glass-bg: rgba(20, 20, 20, 0.8);
  --glass-bg-dark: rgba(0, 0, 0, 0.6);
  --glass-border: rgba(255, 255, 255, 0.08);
  --glass-blur: blur(20px);
  --glass-blur-strong: blur(40px);

  /* Semantic Colors - Dark Theme */
  --color-text-primary: var(--color-white);
  --color-text-secondary: var(--color-gray-400);
  --color-text-muted: var(--color-gray-500);
  --color-bg-primary: var(--color-dark-bg);
  --color-bg-secondary: #0F0F0F;
  --color-bg-tertiary: #151515;
  --color-bg-light: var(--color-white);
  --color-border: var(--color-gray-800);

  /* Typography */
  --font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-family-heading: 'Playfair Display', 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-size-6xl: 3.75rem;
  /* 60px */
  --font-size-7xl: 4.5rem;
  /* 72px */

  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  --line-height-tight: 1.1;
  --line-height-snug: 1.25;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.625;

  --letter-spacing-tight: -0.025em;
  --letter-spacing-normal: 0;
  --letter-spacing-wide: 0.05em;

  /* Spacing - Generous */
  --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 */
  --space-32: 8rem;
  /* 128px */

  /* Section Padding - Very generous (80-140px) */
  --section-padding-y: clamp(5rem, 10vw, 8.75rem);
  --section-padding-x: clamp(1.5rem, 5vw, 3rem);

  /* Container */
  --container-max: 1200px;
  --container-narrow: 800px;
  --container-wide: 1400px;

  /* Border Radius - Smaller, modern */
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 10px;
  --radius-2xl: 12px;
  --radius-full: 9999px;

  /* Shadows - Enhanced with color */
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 8px 30px rgba(0, 0, 0, 0.12);
  --shadow-xl: 0 20px 50px rgba(0, 0, 0, 0.15);
  --shadow-hover: 0 25px 60px rgba(0, 0, 0, 0.18);
  --shadow-glow: 0 0 40px rgba(99, 102, 241, 0.3);
  --shadow-glow-strong: 0 0 60px rgba(99, 102, 241, 0.5);
  --shadow-colored: 0 10px 40px rgba(99, 102, 241, 0.25);

  /* Transitions - Smooth */
  --transition-fast: 150ms ease;
  --transition-base: 300ms ease;
  --transition-slow: 400ms ease;
  --transition-slower: 500ms ease;

  /* Z-Index Scale */
  --z-base: 1;
  --z-dropdown: 100;
  --z-sticky: 200;
  --z-overlay: 300;
  --z-modal: 400;
  --z-tooltip: 500;
}

/* Dark mode variables for footer */
.dark-theme {
  --color-text-primary: var(--color-white);
  --color-text-secondary: var(--color-gray-400);
  --color-bg-primary: var(--color-gray-900);
  --color-bg-secondary: var(--color-gray-800);
  --color-border: var(--color-gray-700);
}