/* ═══════════════════════════════════════════════════════════════
   ТОКЕНЫ — СГЕНЕРИРОВАНО. Правьте src/build/tokens.py, не этот файл.

   Один файл на обе поверхности: публичный сайт и vault. Ни один другой
   файл не объявляет собственных цветов.

   Порядок блоков важен: системная тёмная не должна перебивать ручной
   выбор светлой, а явный выбор тёмной должен перебивать системную светлую.
   ═══════════════════════════════════════════════════════════════ */

@font-face{font-family:Gilroy;src:url("/fonts/Gilroy-Regular.woff2")format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Gilroy;src:url("/fonts/Gilroy-RegularItalic.woff2")format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Gilroy;src:url("/fonts/Gilroy-Medium.woff2")format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Gilroy;src:url("/fonts/Gilroy-Semibold.woff2")format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:Gilroy;src:url("/fonts/Gilroy-Bold.woff2")format("woff2");font-weight:700;font-display:swap}

/* ── СВЕТЛАЯ (база) ──────────────────────────────────────────── */
:root{
  --bg-main:#f4f4f0;
  --bg-sidebar:#eaeae4;
  --bg-card:#ffffff;
  --bg-card-hover:#f8f8f6;
  --bg-pill:rgba(0,0,0,.06);
  --border-color:rgba(0,0,0,.10);
  --border-hover:rgba(0,0,0,.20);
  --rule-strong:rgba(0,0,0,.44);
  --text-main:#141413;
  --text-muted:#55554f;
  --text-dim:#63635c;
  --accent-cyan:#0369a1;
  --accent-rgb:3 105 161;
  --accent-red:#b91c1c;
  --accent-emerald:#036049;
  --accent-on:#ffffff;
  --vault-ground:#eceae4;
  --vault-seal:#6f5526;
  --vault-seal-rgb:111 85 38;

  /* производные от акцента — ни одного повторного hex */
  --accent-dim:rgb(var(--accent-rgb) / .45);
  --accent-wash:rgb(var(--accent-rgb) / .10);
  --border-glow:rgb(var(--accent-rgb) / .35);
  --focus-ring:rgb(var(--accent-rgb) / .95);

  /* семантические алиасы: страницы не знают конкретных цветов */
  --bg:var(--bg-main);
  --surface:var(--bg-card);
  --surface-2:var(--bg-card-hover);
  --ink:var(--text-main);
  --body:var(--text-muted);
  --muted:var(--text-dim);
  --accent:var(--accent-cyan);
  --rule:var(--border-color);

  /* vault: восемь слотов, которых у закрытого тира не было */
  --vault-bg:var(--vault-ground);
  --vault-surface:var(--bg-card);
  --vault-seal-color:var(--vault-seal);
  --vault-seal-wash:rgb(var(--vault-seal-rgb) / .12);
  --vault-seal-rule:rgb(var(--vault-seal-rgb) / .38);
  --redaction-bg:rgb(var(--vault-seal-rgb) / .16);
  --redaction-ink:var(--vault-seal);
  --evidence-rule:rgb(var(--accent-rgb) / .28);

  /* ── интервал ── */
  --sp-1:4px;  --sp-2:8px;  --sp-3:12px; --sp-4:16px; --sp-5:24px;
  --sp-6:32px; --sp-7:48px; --sp-8:64px; --sp-9:96px; --sp-10:128px;

  /* ── типографика ── */
  --fs-xs:13px; --fs-sm:14px;  --fs-md:16px; --fs-lg:18px;
  --fs-xl:21px; --fs-2xl:26px; --fs-3xl:34px;
  --fs-hero:clamp(34px,5.2vw,58px);
  --lh-tight:1.15; --lh-snug:1.35; --lh-body:1.65; --lh-label:1.3; --lh-card:1.55;
  --tracking-tight:-.022em; --tracking-eyebrow:.14em;

  --fw-regular:400; --fw-medium:500; --fw-semibold:600; --fw-bold:700;

  /* ── форма ── */
  --radius-sm:8px; --radius-md:14px; --radius-inner:18px;
  --radius-card:24px; --radius-pill:40px;

  /* ── движение ── */
  --ease-out:cubic-bezier(.16,1,.3,1);
  --dur-fast:.15s; --dur-mid:.28s;

  /* ── раскладка ── */
  --wrap-max:1040px; --wrap-pad:24px; --measure:38rem;

  /* ── шрифт ── */
  --font-sans:Gilroy,'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-mono:ui-monospace,SFMono-Regular,'Segoe UI Mono',Menlo,monospace;
}

/* ── ТЁМНАЯ по системной настройке, если светлая не выбрана руками ── */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg-main:#141413;
    --bg-sidebar:#10100f;
    --bg-card:#1e1e1c;
    --bg-card-hover:#262623;
    --bg-pill:rgba(255,255,255,.08);
    --border-color:rgba(255,255,255,.08);
    --border-hover:rgba(255,255,255,.18);
    --rule-strong:rgba(255,255,255,.34);
    --text-main:#f5f5f3;
    --text-muted:#a1a19a;
    --text-dim:#8f8f86;
    --accent-cyan:#38bdf8;
    --accent-rgb:56 189 248;
    --accent-red:#f87171;
    --accent-emerald:#34d399;
    --accent-on:#0b1220;
    --vault-ground:#191917;
    --vault-seal:#d4a95f;
    --vault-seal-rgb:212 169 95;

    /* производные от акцента — ни одного повторного hex */
    --accent-dim:rgb(var(--accent-rgb) / .45);
    --accent-wash:rgb(var(--accent-rgb) / .10);
    --border-glow:rgb(var(--accent-rgb) / .35);
    --focus-ring:rgb(var(--accent-rgb) / .95);

    /* семантические алиасы: страницы не знают конкретных цветов */
    --bg:var(--bg-main);
    --surface:var(--bg-card);
    --surface-2:var(--bg-card-hover);
    --ink:var(--text-main);
    --body:var(--text-muted);
    --muted:var(--text-dim);
    --accent:var(--accent-cyan);
    --rule:var(--border-color);

    /* vault: восемь слотов, которых у закрытого тира не было */
    --vault-bg:var(--vault-ground);
    --vault-surface:var(--bg-card);
    --vault-seal-color:var(--vault-seal);
    --vault-seal-wash:rgb(var(--vault-seal-rgb) / .12);
    --vault-seal-rule:rgb(var(--vault-seal-rgb) / .38);
    --redaction-bg:rgb(var(--vault-seal-rgb) / .16);
    --redaction-ink:var(--vault-seal);
    --evidence-rule:rgb(var(--accent-rgb) / .28);
  }
}

/* ── ТЁМНАЯ по явному выбору — перебивает системную светлую ── */
:root[data-theme="dark"]{
    --bg-main:#141413;
    --bg-sidebar:#10100f;
    --bg-card:#1e1e1c;
    --bg-card-hover:#262623;
    --bg-pill:rgba(255,255,255,.08);
    --border-color:rgba(255,255,255,.08);
    --border-hover:rgba(255,255,255,.18);
    --rule-strong:rgba(255,255,255,.34);
    --text-main:#f5f5f3;
    --text-muted:#a1a19a;
    --text-dim:#8f8f86;
    --accent-cyan:#38bdf8;
    --accent-rgb:56 189 248;
    --accent-red:#f87171;
    --accent-emerald:#34d399;
    --accent-on:#0b1220;
    --vault-ground:#191917;
    --vault-seal:#d4a95f;
    --vault-seal-rgb:212 169 95;

    /* производные от акцента — ни одного повторного hex */
    --accent-dim:rgb(var(--accent-rgb) / .45);
    --accent-wash:rgb(var(--accent-rgb) / .10);
    --border-glow:rgb(var(--accent-rgb) / .35);
    --focus-ring:rgb(var(--accent-rgb) / .95);

    /* семантические алиасы: страницы не знают конкретных цветов */
    --bg:var(--bg-main);
    --surface:var(--bg-card);
    --surface-2:var(--bg-card-hover);
    --ink:var(--text-main);
    --body:var(--text-muted);
    --muted:var(--text-dim);
    --accent:var(--accent-cyan);
    --rule:var(--border-color);

    /* vault: восемь слотов, которых у закрытого тира не было */
    --vault-bg:var(--vault-ground);
    --vault-surface:var(--bg-card);
    --vault-seal-color:var(--vault-seal);
    --vault-seal-wash:rgb(var(--vault-seal-rgb) / .12);
    --vault-seal-rule:rgb(var(--vault-seal-rgb) / .38);
    --redaction-bg:rgb(var(--vault-seal-rgb) / .16);
    --redaction-ink:var(--vault-seal);
    --evidence-rule:rgb(var(--accent-rgb) / .28);
}

/* ── база документа ──────────────────────────────────────────── */
html{color-scheme:light dark}
:root[data-theme="light"]{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}
