/* ============================================
   OMNI — Design Tokens (variables.css)
   Sistema de tokens alquímicos
   ============================================ */

:root {
  /* ─── BASE 80% — La Base del Misterio ─── */
  --color-cosmos: #0B1026;
  --color-akasha: #050505;
  --color-carbon: #2E2E2E;
  --color-amatista: #1A1525;
  --color-musgo: #14201A;

  /* ─── ACENTOS 10% — Sabiduría y Estructura ─── */
  --color-oro: #C5A059;
  --color-pergamino: #F4F1EA;
  --color-morado: #4A148C;
  --color-cobre: #B87333;
  --color-plata: #B0C4DE;

  /* ─── CTA 10% — Energía Alquímica ─── */
  --color-accion: #FF6D00;
  --color-ambar: #FFD700;
  --color-fuego: #FF3D00;
  --color-esmeralda: #00FF7F;

  /* ─── Derivados funcionales ─── */
  --color-text-primary: var(--color-pergamino);
  --color-text-secondary: #B8B5AE;
  --color-text-muted: #7A7770;
  --color-bg-primary: var(--color-cosmos);
  --color-bg-secondary: var(--color-amatista);
  --color-bg-card: rgba(26, 21, 37, 0.6);
  --color-border: rgba(197, 160, 89, 0.2);
  --color-border-hover: rgba(197, 160, 89, 0.5);

  /* ─── Gradientes Alquímicos ─── */
  --gradient-cosmos: linear-gradient(180deg, var(--color-amatista) 0%, var(--color-cosmos) 100%);
  --gradient-hero: radial-gradient(ellipse at 50% 30%, var(--color-amatista) 0%, var(--color-cosmos) 70%);
  --gradient-accion: linear-gradient(135deg, #FF6D00 0%, #E65100 100%);
  --gradient-oro: linear-gradient(135deg, #C5A059 0%, #E8D5A3 50%, #C5A059 100%);
  --gradient-footer-line: linear-gradient(90deg, var(--color-accion), var(--color-oro), var(--color-esmeralda));
  --gradient-card: linear-gradient(180deg, rgba(26, 21, 37, 0.4) 0%, rgba(11, 16, 38, 0.8) 100%);
  --gradient-nebula: radial-gradient(ellipse at 30% 50%, rgba(74, 20, 140, 0.15) 0%, transparent 60%),
    radial-gradient(ellipse at 70% 50%, rgba(255, 109, 0, 0.08) 0%, transparent 50%);

  /* ─── Tipografía ─── */
  --font-display: 'Cinzel Decorative', 'Cinzel', serif;
  --font-body: 'Cormorant Garamond', 'Georgia', serif;
  --font-ui: 'Inter', 'Segoe UI', system-ui, sans-serif;

  /* Escala tipográfica responsiva */
  --text-xs: clamp(0.7rem, 0.65rem + 0.25vw, 0.8rem);
  --text-sm: clamp(0.8rem, 0.75rem + 0.3vw, 0.9rem);
  --text-base: clamp(0.95rem, 0.9rem + 0.3vw, 1.1rem);
  --text-lg: clamp(1.1rem, 1rem + 0.5vw, 1.3rem);
  --text-xl: clamp(1.25rem, 1.1rem + 0.7vw, 1.6rem);
  --text-2xl: clamp(1.5rem, 1.2rem + 1.2vw, 2.2rem);
  --text-3xl: clamp(1.8rem, 1.4rem + 1.8vw, 3rem);
  --text-4xl: clamp(2.2rem, 1.6rem + 2.5vw, 4rem);
  --text-hero: clamp(2.5rem, 1.8rem + 3vw, 5rem);

  /* ─── Espaciado (base 4px) ─── */
  --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 */

  /* ─── Bordes y Radios ─── */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-2xl: 24px;
  --radius-full: 9999px;

  /* ─── Sombras ─── */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 8px 30px rgba(0, 0, 0, 0.5);
  --shadow-xl: 0 16px 50px rgba(0, 0, 0, 0.6);
  --shadow-glow-accion: 0 0 20px rgba(255, 109, 0, 0.3), 0 0 60px rgba(255, 109, 0, 0.1);
  --shadow-glow-oro: 0 0 20px rgba(197, 160, 89, 0.3), 0 0 60px rgba(197, 160, 89, 0.1);
  --shadow-glow-esmeralda: 0 0 20px rgba(0, 255, 127, 0.3);
  --shadow-card: 0 4px 20px rgba(0, 0, 0, 0.3), 0 0 1px rgba(197, 160, 89, 0.1);
  --shadow-card-hover: 0 8px 40px rgba(0, 0, 0, 0.4), 0 0 30px rgba(255, 109, 0, 0.1);

  /* ─── Transiciones ─── */
  --transition-fast: 150ms ease;
  --transition-base: 300ms ease;
  --transition-slow: 500ms ease;
  --transition-spring: 500ms cubic-bezier(0.34, 1.56, 0.64, 1);

  /* ─── Z-index ─── */
  --z-base: 1;
  --z-dropdown: 10;
  --z-sticky: 50;
  --z-fixed: 100;
  --z-overlay: 500;
  --z-modal: 1000;
  --z-toast: 2000;

  /* ─── Breakpoints (referencia, usados en media queries) ─── */
  /* --bp-mobile: 480px */
  /* --bp-tablet: 768px */
  /* --bp-desktop: 1024px */
  /* --bp-wide: 1440px */

  /* ─── Contenedor ─── */
  --container-max: 1280px;
  --container-padding: clamp(var(--space-4), 4vw, var(--space-8));

  /* ─── Navbar ─── */
  --navbar-height: 70px;
}