/* ==========================================================================
   NexsoLabs Design Tokens & CSS Custom Properties
   ========================================================================== */

:root {
  /* Color Palette - Cybernetic High-Tech Dark Theme (Default) */
  --bg-primary: #080B11;
  --bg-secondary: #0F1422;
  --bg-tertiary: #161D31;
  --bg-card: rgba(15, 20, 34, 0.75);
  --bg-card-hover: rgba(22, 29, 49, 0.9);
  --bg-glass: rgba(15, 20, 34, 0.65);

  --border-subtle: rgba(255, 255, 255, 0.08);
  --border-medium: rgba(255, 255, 255, 0.16);
  --border-focus: #38BDF8;
  --border-glow: rgba(56, 189, 248, 0.4);

  --text-primary: #F8FAFC;
  --text-secondary: #94A3B8;
  --text-muted: #64748B;
  --text-inverse: #080B11;

  /* Accent Brand Gradients */
  --accent-cyan: #38BDF8;
  --accent-blue: #3B82F6;
  --accent-indigo: #6366F1;
  --accent-purple: #A855F7;
  --accent-pink: #EC4899;
  --accent-emerald: #10B981;

  --grad-primary: linear-gradient(135deg, #38BDF8 0%, #6366F1 50%, #A855F7 100%);
  --grad-primary-hover: linear-gradient(135deg, #0284C7 0%, #4F46E5 50%, #9333EA 100%);
  --grad-glow: linear-gradient(135deg, rgba(56, 189, 248, 0.25) 0%, rgba(99, 102, 241, 0.25) 50%, rgba(168, 85, 247, 0.25) 100%);
  --grad-surface: linear-gradient(180deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0) 100%);

  /* Typography */
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --font-display: 'Outfit', 'Inter', -apple-system, sans-serif;
  --font-mono: 'JetBrains Mono', 'Fira Code', 'Courier New', monospace;

  /* Spacing Scale */
  --space-xs: 0.25rem;  /* 4px */
  --space-sm: 0.5rem;   /* 8px */
  --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 Radii */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  /* Elevations & Shadows */
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.45);
  --shadow-lg: 0 16px 40px rgba(0, 0, 0, 0.6);
  --shadow-glow: 0 0 25px rgba(56, 189, 248, 0.25);
  --shadow-glow-purple: 0 0 30px rgba(168, 85, 247, 0.25);

  /* Transitions */
  --trans-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --trans-base: 250ms cubic-bezier(0.4, 0, 0.2, 1);
  --trans-smooth: 400ms cubic-bezier(0.16, 1, 0.3, 1);

  /* Layout Container */
  --container-max: 1240px;
  --header-height: 76px;

  /* Z-Index Hierarchy */
  --z-base: 1;
  --z-card: 5;
  --z-nav: 50;
  --z-drawer: 100;
  --z-toast: 200;
}

/* Light Theme Variables */
[data-theme="light"] {
  --bg-primary: #F8FAFC;
  --bg-secondary: #EDF2F7;
  --bg-tertiary: #E2E8F0;
  --bg-card: rgba(255, 255, 255, 0.85);
  --bg-card-hover: rgba(255, 255, 255, 0.98);
  --bg-glass: rgba(255, 255, 255, 0.8);

  --border-subtle: rgba(0, 0, 0, 0.08);
  --border-medium: rgba(0, 0, 0, 0.15);
  --border-focus: #0284C7;
  --border-glow: rgba(2, 132, 199, 0.3);

  --text-primary: #0F172A;
  --text-secondary: #475569;
  --text-muted: #64748B;
  --text-inverse: #F8FAFC;

  --accent-cyan: #0284C7;

  --grad-primary: linear-gradient(135deg, #1D4ED8 0%, #4338CA 50%, #7E22CE 100%);
  --grad-primary-hover: linear-gradient(135deg, #1E40AF 0%, #3730A3 50%, #6B21A8 100%);
  --grad-glow: linear-gradient(135deg, rgba(2, 132, 199, 0.12) 0%, rgba(79, 70, 229, 0.12) 50%, rgba(147, 51, 234, 0.12) 100%);
  --grad-surface: linear-gradient(180deg, rgba(0, 0, 0, 0.02) 0%, rgba(0, 0, 0, 0) 100%);

  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 8px 24px rgba(15, 23, 42, 0.08);
  --shadow-lg: 0 16px 40px rgba(15, 23, 42, 0.12);
  --shadow-glow: 0 0 20px rgba(2, 132, 199, 0.2);
}
