/* ============================
   CSS Variables — Theme System
   ============================ */

:root {
  /* Typography */
  --font-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-heading: 'Space Grotesk', 'Inter', sans-serif;

  /* Font Sizes */
  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-base: 1rem;
  --fs-md: 1.125rem;
  --fs-lg: 1.25rem;
  --fs-xl: 1.5rem;
  --fs-2xl: 2rem;
  --fs-3xl: 2.5rem;
  --fs-4xl: 3.25rem;
  --fs-5xl: 4rem;
  --fs-hero: clamp(2.5rem, 5vw, 4.5rem);
  --fs-section: clamp(2rem, 4vw, 3rem);

  /* Font Weights */
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* 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;
  --space-5xl: 8rem;
  --section-padding: clamp(4rem, 8vw, 8rem) 0;

  /* Border Radius */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-full: 9999px;

  /* Transitions */
  --transition-fast: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-spring: 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);

  /* Container */
  --container-max: 1200px;
  --container-padding: clamp(1rem, 4vw, 2rem);

  /* Z-Index */
  --z-base: 1;
  --z-dropdown: 100;
  --z-sticky: 200;
  --z-overlay: 300;
  --z-modal: 400;
}

/* ===========================
   DARK TECH PREMIUM THEME
   =========================== */

[data-theme="dark"] {
  /* Backgrounds */
  --bg-primary: #0a0a0f;
  --bg-secondary: #12121a;
  --bg-tertiary: #1a1a2e;
  --bg-card: rgba(255, 255, 255, 0.04);
  --bg-card-hover: rgba(255, 255, 255, 0.08);
  --bg-glass: rgba(255, 255, 255, 0.06);
  --bg-input: rgba(255, 255, 255, 0.06);

  /* Text */
  --text-primary: #e8e8f0;
  --text-secondary: #a0a0b8;
  --text-muted: #6a6a80;
  --text-inverse: #0a0a0f;

  /* Accents */
  --accent-primary: #6c5ce7;
  --accent-primary-hover: #7c6ef7;
  --accent-primary-glow: rgba(108, 92, 231, 0.3);
  --accent-secondary: #00d2ff;
  --accent-secondary-glow: rgba(0, 210, 255, 0.2);
  --accent-gradient: linear-gradient(135deg, #6c5ce7, #00d2ff);
  --accent-gradient-hover: linear-gradient(135deg, #7c6ef7, #33ddff);

  /* Borders */
  --border-color: rgba(255, 255, 255, 0.08);
  --border-color-hover: rgba(255, 255, 255, 0.15);
  --border-accent: rgba(108, 92, 231, 0.3);

  /* Shadows */
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 8px 30px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 20px 60px rgba(0, 0, 0, 0.5);
  --shadow-glow: 0 0 40px rgba(108, 92, 231, 0.15);
  --shadow-glow-accent: 0 0 60px rgba(108, 92, 231, 0.2);
  --shadow-card: 0 8px 32px rgba(0, 0, 0, 0.3);
  --shadow-card-hover: 0 16px 48px rgba(0, 0, 0, 0.4), 0 0 30px rgba(108, 92, 231, 0.1);

  /* Glass */
  --glass-bg: rgba(255, 255, 255, 0.05);
  --glass-border: rgba(255, 255, 255, 0.1);
  --glass-blur: blur(20px);

  /* Header */
  --header-bg: rgba(10, 10, 15, 0.85);
  --header-border: rgba(255, 255, 255, 0.06);

  /* Specific */
  --hero-overlay: linear-gradient(180deg, transparent 0%, #0a0a0f 100%);
  --section-divider: rgba(255, 255, 255, 0.04);
  --badge-bg: rgba(108, 92, 231, 0.12);
  --badge-text: #a29bfe;
  --tag-bg: rgba(0, 210, 255, 0.1);
  --tag-text: #00d2ff;
  --success-color: #00e676;
  --process-line: rgba(108, 92, 231, 0.3);
}

/* ===========================
   LIGHT PREMIUM CORPORATE THEME
   =========================== */

[data-theme="light"] {
  /* Backgrounds */
  --bg-primary: #fafbfc;
  --bg-secondary: #f0f2f5;
  --bg-tertiary: #e8ecf0;
  --bg-card: #ffffff;
  --bg-card-hover: #ffffff;
  --bg-glass: rgba(255, 255, 255, 0.8);
  --bg-input: #f5f7fa;

  /* Text */
  --text-primary: #1a1a2e;
  --text-secondary: #4a4a68;
  --text-muted: #8a8aa0;
  --text-inverse: #ffffff;

  /* Accents */
  --accent-primary: #5a4bd1;
  --accent-primary-hover: #4a3bc1;
  --accent-primary-glow: rgba(90, 75, 209, 0.15);
  --accent-secondary: #0095cc;
  --accent-secondary-glow: rgba(0, 149, 204, 0.1);
  --accent-gradient: linear-gradient(135deg, #5a4bd1, #0095cc);
  --accent-gradient-hover: linear-gradient(135deg, #4a3bc1, #0080b3);

  /* Borders */
  --border-color: rgba(0, 0, 0, 0.06);
  --border-color-hover: rgba(0, 0, 0, 0.12);
  --border-accent: rgba(90, 75, 209, 0.2);

  /* Shadows */
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.04);
  --shadow-md: 0 8px 30px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 20px 60px rgba(0, 0, 0, 0.08);
  --shadow-glow: 0 0 40px rgba(90, 75, 209, 0.08);
  --shadow-glow-accent: 0 0 60px rgba(90, 75, 209, 0.1);
  --shadow-card: 0 4px 20px rgba(0, 0, 0, 0.06);
  --shadow-card-hover: 0 12px 40px rgba(0, 0, 0, 0.1);

  /* Glass */
  --glass-bg: rgba(255, 255, 255, 0.7);
  --glass-border: rgba(0, 0, 0, 0.06);
  --glass-blur: blur(20px);

  /* Header */
  --header-bg: rgba(250, 251, 252, 0.9);
  --header-border: rgba(0, 0, 0, 0.06);

  /* Specific */
  --hero-overlay: linear-gradient(180deg, transparent 0%, #fafbfc 100%);
  --section-divider: rgba(0, 0, 0, 0.04);
  --badge-bg: rgba(90, 75, 209, 0.08);
  --badge-text: #5a4bd1;
  --tag-bg: rgba(0, 149, 204, 0.08);
  --tag-text: #0095cc;
  --success-color: #00b85e;
  --process-line: rgba(90, 75, 209, 0.2);
}
