/* ============================================================
   NYQRA Website – Design Tokens ("Control Room" Sprache)
   Referenzniveau: Linear, Stripe, Raycast, Vercel, Framer — nicht kopiert,
   nur das Qualitätsniveau (Ruhe, Weißraum, große Typografie, präzise Motion).
   ============================================================ */

:root {
  /* --- Farben: dunkle Navy-Basis, Indigo/Violett/Cyan als Systemfarben,
     Amber ausschließlich für Warnungen (nie dekorativ/CTA). --- */
  --navy-deep: #05070d;
  --bg: #0a0e1a;
  --bg-elevated: #0d1220;
  --surface: #10162a;
  --surface-2: #141b33;
  --surface-hover: #182040;
  --border: #1f2743;
  --border-strong: #2c3660;

  --text: #eef1fa;
  --text-dim: #9aa3c4;
  /* Audit-Fund (2026-07-24, axe-core "color-contrast"): #626d94 erreichte
     gegen die hellste verwendete Flaeche (--surface-hover, #182040) nur
     3.13:1 (WCAG-AA-Ziel fuer Fliesstext: 4.5:1) - auf #828cab aufgehellt
     (4.77:1 gegen --surface-hover, >=5:1 gegen alle dunkleren Flaechen). */
  --text-faint: #828cab;

  --indigo: #6366f1;
  --indigo-dim: #4649b8;
  --violet: #8b5cf6;
  /* Audit-Fund 2026-07-24 (axe-core "color-contrast", Live-Demo-Verlauf +
     Dashboard-Vorschau "v1/v2/v3"-Badges): --violet erreichte als Text auf
     --surface nur 4.05:1 (Ziel 4.5:1). Aufgehellte Variante ausschliesslich
     fuer kleinen Text auf dunklem Grund; --violet selbst bleibt unveraendert
     fuer Gradients/dekorative Flaechen, wo Kontrast nicht greift. */
  --violet-text: #9c76f8;
  --cyan: #22d3ee;

  --accent-gradient: linear-gradient(135deg, var(--indigo) 0%, var(--violet) 55%, var(--cyan) 100%);
  --accent-gradient-soft: linear-gradient(135deg, rgba(99,102,241,.16), rgba(139,92,246,.10) 55%, rgba(34,211,238,.10));
  --accent-glow: 0 0 60px -12px rgba(139, 108, 246, .55);
  --ring: 0 0 0 3px rgba(99, 102, 241, .35);

  --amber: #f59e0b;   /* AUSSCHLIESSLICH Warnungen/Störungen */
  --green: #34d399;   /* Erfolg / "healthy" */
  --red: #f87171;     /* Fehler */

  /* --- Typografie: Systemfont-Stack (kein externer Font-Ladevorgang nötig,
     robust, premium-tauglich), Monospace für Code/technische Werte. --- */
  --font-sans: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Helvetica, Arial, sans-serif;
  --font-mono: "SF Mono", "JetBrains Mono", "Fira Code", Consolas, Menlo, monospace;

  --text-xs: 0.8125rem;
  --text-sm: 0.9375rem;
  --text-base: 1.0625rem;
  --text-lg: 1.25rem;
  --text-xl: 1.5rem;
  --text-2xl: 2rem;
  --text-3xl: 2.75rem;
  --text-4xl: 3.75rem;
  --text-5xl: 4.5rem;

  --leading-tight: 1.08;
  --leading-snug: 1.3;
  --leading-normal: 1.65;

  /* --- Abstände: großzügig, ruhig. --- */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-24: 6rem;
  --space-32: 8rem;
  --space-40: 10rem;

  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-full: 999px;

  --shadow-1: 0 1px 2px rgba(0,0,0,.4);
  --shadow-2: 0 12px 40px -12px rgba(0,0,0,.55);
  --shadow-3: 0 30px 80px -20px rgba(0,0,0,.65);

  /* --- Motion: praezise, ausklingende Kurven statt linear. --- */
  --ease-out-expo: cubic-bezier(.16, 1, .3, 1);
  --ease-out: cubic-bezier(.25, .8, .25, 1);
  --duration-fast: 150ms;
  --duration-base: 320ms;
  --duration-slow: 640ms;

  --container-max: 1180px;
  --container-narrow: 760px;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
}
