/* ══ Токены WMS «Будет сделано» ══════════════════════════════════════════════════════════════════
   Единственный файл, где живут цвета, тени, радиусы, шрифты и размеры. Компоненты (ui.css) берут
   только var(--…); литерал цвета вне этого файла роняет `make check` (scripts/check_tokens.py).

   Источник значений — дашборд WBD, он основа WMS (docs/07-dizayn.md, раздел 1.5):
     Д-css  = WBD-business/FBS/kalkulyator-fbs.html, блок :root стр. 29–79 и CSS компонентов
     Д      = WBD-business/dashboard/dizayn-sistema.md
     07     = wbd-wms/docs/07-dizayn.md (решения для WMS)
   Значения переписаны с источника на 06.10.2026, не придуманы. Новый токен — только когда блок
   говорит то, чего система не различает (Д «Токены»), и с пометкой источника здесь же.
   ═════════════════════════════════════════════════════════════════════════════════════════════════ */

/* ── Шрифт Inter ──
   Те же файлы, что зашиты base64 в дашборд (Д-css стр. 18–27), извлечены в static/fonts/:
   вариативный (веса 100–900), кириллица и латиница разделены по unicode-range.
   Лицензия SIL OFL 1.1 — static/fonts/Inter-OFL.txt. Внешних CDN нет (07, 1.5 п. 1). */
@font-face{
  font-family:'Inter'; font-style:normal; font-weight:100 900; 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:100 900; 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{
  color-scheme:light;

  /* ── Цвета, светлая тема — Д-css :root стр. 34–42 ── */
  --ground:#F3F6FD;        /* фон страницы */
  --surface:#FFFFFF;       /* карточка */
  --surface-2:#F7F9FE;     /* вложенная подложка: поля, шапка таблицы, сегменты */
  --ink:#18304F;           /* основной текст и числа */
  --ink-2:#3A5273;         /* подписи полей, текст таблиц */
  --muted:#7A838E;         /* служебное, пояснения, единицы */
  --accent:#646cfe;        /* действие и выбор */
  --accent-dark:#5159E8;   /* наведение, текст на мягкой подложке */
  --accent-soft:#ECF0FC;   /* мягкая акцентная подложка */
  --good:#20941F;  --good-bg:#E9F5E9;   /* получилось, «ок» */
  --warn:#C86A12;  --warn-bg:#FFF6EB;   /* обрати внимание */
  --bad:#C8372D;   --bad-bg:#FCECEA;    /* ошибка, минус, долг сейчас */
  --border:#E2E8F2; --border-2:#D2D4DB; /* границы: обычная и усиленная */
  --steel:#94A3BE;                      /* выключенный тумблер */
  --amber:#8A5410; --amber-bg:#FCEBC9;  /* пометка «общий» — Д-css стр. 44–45, выбор владельца 04.09.2026 */
  /* Текст и ручка на заливке акцента и красного. В дашборде литерал белого в компонентах:
     .knopka-fraza color, .tm-knob background, .info:hover color (Д-css стр. 1267, 1081, 2082);
     в тёмной теме дашборд его не меняет — и мы не меняем. */
  --on-accent:#FFFFFF;

  /* ── Тени — Д-css стр. 47–48 (окрашены в акцент, приём образца) ── */
  --shadow:0 1px 3px rgba(100,108,254,.07), 0 8px 24px rgba(100,108,254,.09);
  --shadow-lg:0 2px 6px rgba(100,108,254,.09), 0 16px 40px -8px rgba(100,108,254,.16);
  /* Мелкие тени компонентов — в дашборде литералами в CSS компонента, здесь вынесены в токены: */
  --shadow-seg:0 1px 2px rgba(24,48,79,.08);            /* .seg button[aria-pressed=true], Д-css стр. 1036 */
  --shadow-track:inset 0 1px 2px rgba(24,48,79,.14);    /* .tm-track, Д-css стр. 1075 */
  --shadow-knob:0 1px 3px rgba(24,48,79,.32);           /* .tm-knob, Д-css стр. 1082 */
  --shadow-btn:0 1px 2px rgba(100,108,254,.25);         /* .knopka-fraza, Д-css стр. 1268 */
  --shadow-tip:0 4px 12px rgba(25,28,34,.12), 0 16px 40px -16px rgba(25,28,34,.3); /* .tip, Д-css стр. 2112 */

  /* ── Радиусы — Д-css компонентов, сводка 07 раздел 1.3 ── */
  --r-card:18px;      /* .card */
  --r-table:12px;     /* .tw — рамка таблицы */
  --r-field:10px;     /* input, select */
  --r-seg:13px;       /* .seg — группа */
  --r-seg-btn:10px;   /* .seg button */
  --r-tip:10px;       /* .tip */
  --r-plashka:8px;    /* .warnbar */
  --r-check:4px;      /* обводка фокуса у подписи тумблера, Д-css стр. 1071 */
  --r-pill:100px;     /* бейдж, мини-сегмент, кнопка (форма сайта .btn, С-css стр. 5106) */
  --r-round:50%;      /* «i», ручка тумблера */
  --r-poloska:4px;    /* полоска состояния плитки — Д-css .sm (макет «Сверка недели») */

  /* ── Шрифты — Д-css стр. 49–54 ── */
  --sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;
  --num:var(--sans);  /* числа — тем же шрифтом с tabular-nums */

  /* ── Шкала кеглей — Д «Типографика» (восемь ступеней) + Д-css компонентов ── */
  --fs-h1:24px;        /* заголовок страницы, 700, −0.025em */
  --fs-sub:14px;       /* подзаголовок страницы */
  --fs-body:15px;      /* тело, Д-css body */
  --fs-field:13.5px;   /* значение в поле, Д-css input */
  --fs-card:13px;      /* заголовок карточки, 650 */
  --fs-table:13px;     /* текст и числа таблиц */
  --fs-label:12.5px;   /* подпись поля (.field label), шапка таблицы (th), подсказка (.tip), кнопка */
  --fs-seg:12px;       /* сегменты */
  --fs-hint:11.5px;    /* пояснение, подзаголовок карточки */
  --fs-caps:10.5px;    /* капс-разделитель .razdel-linia */
  --fs-badge:10.5px;   /* бейдж .metka (CSS 10.5 — правда, Д 1.6) */
  --fs-plitka:21px;    /* число тонкой плитки сводки — Д-css .sm (макет «Сверка недели», одобрен 08.10.2026) */

  /* ── Плотность: рабочий экран (по умолчанию) ──
     Размеры дашборда: ячейка 11×12, шапка таблицы 42 (Д-css стр. 2013–2016); кнопка высотой 32
     и кеглем 12.5 — решение 07 раздел 1.5 п. 6. Режим ТСД — ниже, классом .comfortable. */
  --control-h:32px;
  --control-px:14px;
  --fs-control:var(--fs-label);
  --cell-py:11px; --cell-px:12px;
  --th-h:42px;
  --gap:16px;          /* между карточками, Д-css .card + .card */
  --check-size:16px;
  --tumbler-w:36px; --tumbler-h:20px; --knob:14px;   /* Д-css .tm-track / .tm-knob */
  --info-size:16px;                                  /* Д-css .info */
}

/* ── Плотность «comfortable» — режим ТСД (07 раздел 4.3; FLUX Settings → Appearance как образец
   устройства). Те же цвета, крупнее зоны нажатия: от 56px. Класс ставится на body или на блок. ── */
.comfortable{
  --control-h:56px;
  --control-px:24px;
  --fs-control:17px;   /* 07, 4.3: крупный номер ячейки/ШК; новой ступени шкалы рабочего экрана нет */
  --cell-py:16px; --cell-px:14px;
  --th-h:48px;
  --check-size:24px;
  --tumbler-w:52px; --tumbler-h:30px; --knob:22px;
  --info-size:24px;
}
/* ── Плотность «compact» — длинные таблицы на рабочем экране: Д-css .card.kompakt (стр. 1339–1345),
   ячейки 4×8, кегль 12. ── */
.compact{
  --control-h:28px;    /* высота сегмента дашборда (07 раздел 2, .seg) */
  --control-px:12px;
  --fs-control:var(--fs-seg);
  --cell-py:4px; --cell-px:8px;
  --fs-table:12px;
  --th-h:34px;
}

/* ── Тёмная тема — Д-css стр. 54–79: по системе, если пользователь не выбрал светлую,
   и принудительно атрибутом data-theme="dark" ── */
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --ground:#101827; --surface:#18233A; --surface-2:#1F2C46;
    --ink:#E8EDF7; --ink-2:#C0CBDE; --muted:#8D9AB1;
    --accent:#8A90FF; --accent-dark:#A0A5FF; --accent-soft:#252F52;
    --good:#5CC45B; --good-bg:#17301A;
    --warn:#E39A47; --warn-bg:#33260F;
    --bad:#E8756A;  --bad-bg:#341C1A;
    --border:#26334D; --border-2:#35455F;
    --steel:#6E7C96; --amber-bg:#4A3510; --amber:#F3C56E;
    --shadow:0 1px 2px rgba(0,0,0,.35), 0 16px 38px -20px rgba(0,0,0,.7);
    --shadow-lg:0 16px 40px -12px rgba(0,0,0,.55);
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --ground:#101827; --surface:#18233A; --surface-2:#1F2C46;
  --ink:#E8EDF7; --ink-2:#C0CBDE; --muted:#8D9AB1;
  --accent:#8A90FF; --accent-dark:#A0A5FF; --accent-soft:#252F52;
  --good:#5CC45B; --good-bg:#17301A;
  --warn:#E39A47; --warn-bg:#33260F;
  --bad:#E8756A;  --bad-bg:#341C1A;
  --border:#26334D; --border-2:#35455F;
  --steel:#6E7C96; --amber-bg:#4A3510; --amber:#F3C56E;
  --shadow:0 1px 2px rgba(0,0,0,.35), 0 16px 38px -20px rgba(0,0,0,.7);
  --shadow-lg:0 16px 40px -12px rgba(0,0,0,.55);
}
