/* ==========================================================================
   Design Tokens — Reova
   ========================================================================== */

/* --- Inter (self-hosted variable font) --- */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('fonts/inter-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
    U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
    U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  /* --- Colors --- */
  --c-primary: #0f766e;
  --c-primary-light: #14b8a6;
  --c-primary-dark: #0d6560;
  --c-primary-bg: rgba(15, 118, 110, 0.08);

  --c-accent: #f59e0b;
  --c-accent-hover: #d97706;

  /* Hero gradient */
  --c-hero-from: #0c1222;
  --c-hero-to: #131c31;

  /* Severity */
  --c-red: #ef4444;
  --c-red-bg: rgba(239, 68, 68, 0.1);
  --c-amber: #f59e0b;
  --c-amber-bg: rgba(245, 158, 11, 0.1);
  --c-yellow: #eab308;
  --c-yellow-bg: rgba(234, 179, 8, 0.1);
  --c-green: #22c55e;
  --c-green-bg: rgba(34, 197, 94, 0.1);

  /* Text */
  --c-text: #0f172a;
  --c-text-sec: #475569;
  --c-text-muted: #94a3b8;
  --c-text-inv: #f8fafc;

  /* Surfaces */
  --c-bg: #ffffff;
  --c-bg-alt: #f8fafc;
  --c-bg-card: #ffffff;
  --c-bg-dark: #0f172a;
  --c-border: #e2e8f0;
  --c-border-light: #f1f5f9;

  /* --- Typography --- */
  --ff: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  --fs-xs: 0.75rem;    /* 12px */
  --fs-sm: 0.875rem;   /* 14px */
  --fs-base: 1rem;     /* 16px */
  --fs-lg: 1.125rem;   /* 18px */
  --fs-xl: 1.25rem;    /* 20px */
  --fs-2xl: 1.5rem;    /* 24px */
  --fs-3xl: 1.875rem;  /* 30px */
  --fs-4xl: 2.25rem;   /* 36px */
  --fs-5xl: 3rem;      /* 48px */
  --fs-6xl: 3.75rem;   /* 60px */

  --lh-tight: 1.15;
  --lh-snug: 1.3;
  --lh-normal: 1.6;

  /* --- Spacing --- */
  --sp-1: 0.25rem;   /* 4px */
  --sp-2: 0.5rem;    /* 8px */
  --sp-3: 0.75rem;   /* 12px */
  --sp-4: 1rem;      /* 16px */
  --sp-5: 1.25rem;   /* 20px */
  --sp-6: 1.5rem;    /* 24px */
  --sp-8: 2rem;      /* 32px */
  --sp-10: 2.5rem;   /* 40px */
  --sp-12: 3rem;     /* 48px */
  --sp-16: 4rem;     /* 64px */
  --sp-20: 5rem;     /* 80px */
  --sp-24: 6rem;     /* 96px */

  /* --- Layout --- */
  --container: 1200px;
  --container-wide: 1400px;
  --gutter: var(--sp-6);

  /* --- Radius --- */
  --r-sm: 0.375rem;  /* 6px */
  --r-md: 0.5rem;    /* 8px */
  --r-lg: 0.75rem;   /* 12px */
  --r-xl: 1rem;      /* 16px */
  --r-2xl: 1.5rem;   /* 24px */
  --r-full: 9999px;

  /* --- Shadows --- */
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
  --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.07), 0 2px 4px -2px rgba(0,0,0,0.05);
  --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.08), 0 4px 6px -4px rgba(0,0,0,0.04);
  --shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.04);

  /* --- Transitions --- */
  --ease: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-fast: 150ms;
  --dur: 250ms;
  --dur-slow: 400ms;

  /* --- Z-index --- */
  --z-header: 100;
  --z-modal: 200;
  --z-cookie: 300;
}
