/*
  AuditLLM — токены интерфейса. Источник: шаблон v2 («AUDITLLM · ШАБЛОН ИНТЕРФЕЙСА · V2»).
  Палитра тёплая бумага + тёмный лес + ржавый акцент. Светлая схема — единственная,
  тёмной темы шаблон не задаёт, поэтому color-scheme: light.

  Правила пар (из шаблона):
  · на --rust-soft текст только --rust-hover (5,9:1): --rust даёт 4,4:1;
  · рамка поля или кнопки-контура — --field-border (не меньше 3:1 к фону);
  · --line и --line-strong — только разделители, не единственный признак элемента;
  · текст не ниже 4,5:1, крупный — не ниже 3:1.
*/
@import url('https://fonts.googleapis.com/css2?family=Literata:ital,opsz,wght@0,7..72,400;0,7..72,500;0,7..72,600;1,7..72,500;1,7..72,600&family=Golos+Text:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');

:root {
  color-scheme: light;

  /* ПОВЕРХНОСТИ */
  --paper: #F3EEE4;
  --paper-sunk: #EAE3D5;
  --card: #FCFAF5;
  --forest: #163326;
  --forest-2: #1E4434;
  --forest-3: #2A5643;

  /* ТЕКСТ */
  --ink: #14201A;
  --ink-2: #34453B;
  --muted: #56645B;
  --on-forest: #F3EEE4;
  --on-forest-muted: #B6C6BA;
  --rust-on-forest: #F2976A;

  /* ЛИНИИ И АКЦЕНТ */
  --line: #D8CFBF;
  --line-strong: #B5A993;
  --field-border: #857A66;
  --rust: #B3441D;
  --rust-hover: #933716;
  --rust-soft: #F5E1D6;

  /* СИГНАЛЫ — всегда со значком и словом */
  --good: #23704A;
  --good-soft: #DDEADF;
  --warn: #8A5A0E;
  --warn-soft: #F3E6CB;
  --bad: #9A2F1D;
  --bad-soft: #F7E0D6;
  --good-2: #3D7548;
  --good-soft-2: #CFE4D5;

  /* Шрифты */
  --font-display: Literata, "Georgia", "Times New Roman", serif;
  --font-sans: "Golos Text", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;

  /* Типографическая шкала */
  --fs-display: clamp(3.25rem, 2rem + 5.4vw, 5.5rem);   /* 52 → 88 */
  --fs-h1: clamp(2.25rem, 1rem + 3.5vw, 5rem);            /* 36 → 66 на 1440, 80 на широком */
  --fs-h2: clamp(1.75rem, 1.2rem + 2.1vw, 3rem);         /* 28 → 48 */
  --fs-h3: clamp(1.125rem, 1rem + 0.6vw, 1.5rem);        /* 18 → 24 */
  --fs-score: clamp(4rem, 2.4rem + 7vw, 9rem);           /* 64 → 144 */
  --fs-lead: clamp(1.0625rem, 1rem + 0.4vw, 1.1875rem);  /* 17 → 19 */
  --fs-body: 1rem;                                       /* 16 */
  --fs-button: 0.875rem;                                 /* 14 */
  --fs-caption: 0.8125rem;                               /* 13 */
  --fs-eyebrow: 0.75rem;                                 /* 12 */
  --fs-micro: 0.6875rem;                                 /* 11 */
  --lh-tight: 0.98;
  --lh-head: 1.02;
  --lh-h2: 1.08;
  --lh-body: 1.6;
  --lh-lead: 1.55;
  --track-eyebrow: 0.12em;

  /* Сетка и отступы */
  --gutter: 16px;
  --page-max: 1440px;
  --page-pad: 16px;
  --col: 24px;
  --section-y: 56px;
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 20px;
  --sp-6: 24px;
  --sp-7: 32px;
  --sp-8: 48px;
  --sp-9: 64px;
  --sp-10: 112px;

  /* Радиусы */
  --radius-sm: 8px;   /* кнопки, поля */
  --radius: 10px;     /* уведомления */
  --radius-lg: 16px;  /* карточки */
  --radius-xl: 20px;  /* сводка отчёта */
  --radius-pill: 999px;

  /* Прочее */
  --tap: 44px;
  --header-h: 64px;
  --dur: 160ms;
  /* Движение: микро (наведение, фокус), появление блока, крупная смена. */
  --motion-1: 120ms;
  --motion-2: 200ms;
  --motion-3: 320ms;
  --ease-out: cubic-bezier(.22, .61, .36, 1);
  --ease-soft: cubic-bezier(.4, 0, .2, 1);
  --focus-ring: 0 0 0 3px var(--rust);
  --shadow-card: 0 1px 2px rgba(20, 32, 26, .04);
}

@media (min-width: 768px) {
  :root {
    --page-pad: 40px;
    --gutter: 24px;
    --section-y: 80px;
    --header-h: 72px;
  }
}

@media (min-width: 1200px) {
  :root {
    --page-pad: 120px;
    --gutter: 32px;
    --section-y: 112px;
  }
}

@media (prefers-reduced-motion: reduce) {
  :root { --dur: 0ms; --motion-1: 0ms; --motion-2: 0ms; --motion-3: 0ms; }
}

/*
  ── Совместимость ────────────────────────────────────────────────────────────
  Панель оператора (/admin) и старые страницы используют прежние имена токенов.
  Каждое имя ниже обязано разрешаться — иначе правило с var() не применяется.
  Новый код использует только имена выше.
*/
:root {
  /* Старые имена тёмной схемы → новая палитра */
  --bg: var(--paper);
  --surface: var(--card);
  --surface-2: var(--paper-sunk);
  --surface-3: var(--paper-sunk);
  --text: var(--ink);
  --text-muted: var(--muted);
  --text-faint: var(--muted);
  --text-disabled: var(--muted);
  --accent: var(--rust);
  --accent-hover: var(--rust-hover);
  --accent-ink: #FFFFFF;
  --accent-text: var(--rust-hover);
  --accent-soft: var(--rust-soft);
  --brand: var(--rust);
  --focus: var(--rust);
  --error: var(--bad);
  --error-soft: var(--bad-soft);
  --demo: var(--warn);
  --demo-ink: var(--warn-soft);

  /* Имена redesign.css */
  --paper-2: var(--paper-sunk);
  --paper-high: var(--card);
  --rule: var(--line);
  --forest-deep: var(--forest);
  --forest-soft: var(--forest-2);
  --moss: var(--good-2);
  --burnt: var(--rust);
  --burnt-hover: var(--rust-hover);
  --burnt-soft: var(--rust-soft);
  --ink-soft: var(--ink-2);

  /* Уровни вывода */
  --lvl-measured: var(--good);
  --lvl-deviation: var(--warn);
  --lvl-suspected: var(--bad);
  --lvl-confirmed: var(--good-2);
  --lvl-none: var(--muted);

  /* Графики */
  --chart-grid: var(--line);
  --chart-axis: var(--muted);
  --chart-line: var(--rust);
  --chart-line-2: var(--good);
  --chart-band: rgba(179, 68, 29, .14);
  --chart-band-good: rgba(35, 112, 74, .14);
  --chart-marker: var(--warn);

  /* Размеры и типографика прежних страниц */
  --fs-xs: var(--fs-micro);
  --fs-sm: var(--fs-caption);
  --fs-base: 0.875rem;
  --fs-md: var(--fs-body);
  --fs-lg: var(--fs-h3);
  --fs-xl: var(--fs-h2);
  --fs-2xl: var(--fs-h1);
  --lh-snug: 1.35;
  --radius-btn: var(--radius-sm);
  --radius-card: var(--radius-lg);

  /* Оболочка (header.css) */
  --sb-max: var(--page-max);
  --sb-pad: var(--page-pad);
  --sb-header-h: var(--header-h);
  --sb-line: var(--line);
  --sb-text: var(--ink);
  --sb-muted: var(--muted);
  --sb-aqua: var(--rust);
  --sb-aqua-hover: var(--rust-hover);
  --sb-ink: #FFFFFF;

  /* OMSS */
  --omss-line: var(--line);
  --omss-card: var(--card);
  --omss-rust: var(--rust);
  --omss-ink: var(--ink);
  --omss-muted: var(--muted);
  --omss-forest: var(--forest);
  --omss-good: var(--good);
  --omss-warn: var(--warn);
  --omss-bad: var(--bad);
  --omss-c: var(--good);
  --omss-f: var(--bad);
  --omss-fp: var(--good-2);
}
