/* ==========================================================================
   CSS Design Tokens
   Source of truth: docs/source/design-glavnaya/index.html :root block
   Mirrored verbatim. Do NOT add hardcoded values in component CSS files —
   always reference a token defined here.
   ========================================================================== */

:root {
  /* ---- Surfaces ---- */
  --bg: #F7F8FA;
  --bg-card: #FFFFFF;
  --bg-dark: #0C1220;           /* reserved for F2+ dark sections */
  --bg-dark-card: #141C2E;      /* reserved for F2+ dark sections */

  /* ---- Text ---- */
  --ink: #14213D;
  --ink-light: #FFFFFF;         /* reserved for F2+ dark sections */
  --muted: #5B6B85;
  --muted-light: #94A3B8;       /* reserved for F2+ dark sections */

  /* ---- Lines / borders ---- */
  --line: #E5E9F0;
  --line-dark: #1E293B;         /* reserved for F2+ dark sections */

  /* ---- Accent (blue) ---- */
  --accent: #2563EB;
  --accent-hover: #1D4ED8;
  --accent-soft: rgba(37, 99, 235, 0.08);

  /* ---- Semantic colours ---- */
  --amber: #F59E0B;
  --green: #10B981;
  --danger: #EF4444;

  /* ---- Typography ---- */
  --sans: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mono: "JetBrains Mono", "Consolas", monospace;

  /* ---- Spacing / layout ---- */
  --container: 100%; /* reserved for F2+ — full-width container base */
  --pad: 48px;
  --gap: 24px;
  --section-y: 120px;

  /* ---- Radii ---- */
  --r: 16px;
  --r-sm: 10px;
  --r-xs: 6px;

  /* ---- Shadows ---- */
  --shadow-sm: 0 1px 3px rgba(12, 18, 32, 0.06);
  --shadow-md: 0 4px 16px rgba(12, 18, 32, 0.08);
  --shadow-lg: 0 12px 40px rgba(12, 18, 32, 0.12);

  /* ---- Z-index stacking ---- */
  /* Order: popup > cookie banner > floating CTA > mobile menu */
  /* Consumers: T3 (mobile-menu.js), T5 (cookie-banner.js), T8 (popup.js) */
  --z-mobile-menu: 800;
  --z-floating-cta: 850;
  --z-cookie-banner: 900;
  --z-popup: 1000;
}

/* ---- Wide screens (≥ 1600px) ---- */
@media (min-width: 1600px) {
  :root {
    --pad: 96px;
    --gap: 32px;
  }
}

/* ---- Ultra-wide (≥ 1920px) ---- */
@media (min-width: 1920px) {
  :root {
    --pad: 140px;
  }
}

/* ---- Mobile (≤ 640px) ---- */
@media (max-width: 640px) {
  :root {
    --pad: 16px;
    --section-y: 80px;
  }
}
