/* ПАЛИТРА ЛАМИНА AI — единственное место, где живут цвета системы.
   Слово V 08.10.2026 (уточнение): «Зелёная палитра тонов — только в заявке,
   которую составляют люди. В самой платформе фон не зелёный: светло-белый,
   кое-где чуть-чуть серый; вместо красных кнопок — зелёные». Поэтому:
   · html:root — платформа: белый фон, нейтральные серые поверхности, графитовый
     текст, зелёный акцент и основные кнопки, красный — только ошибки;
   · html:root[data-palette="zayavka"] — салатовые тона, включает только панель
     конструктора заявки (templates/santan/konstruktor/panel.html);
   · html:root[data-palette="oliva"] — запасной набор завода, не включён.
   Смена палитры = правка ЭТОГО файла: остальные CSS и шаблоны берут цвета
   только через var(--…).

   Подключается ПОСЛЕДНИМ (shell.html, login.html, login_2fa.html, kit.html) и
   переопределяет переменные, которые раньше задавали app.css, santan.css,
   brand.css, fix-karkas.css. Старые имена (--red, --graphite…) оставлены как
   псевдонимы: их читают десятки правил, переименовывать всё разом незачем.

   Правила:
   · текст на фоне — контраст ≥ 4,5:1 (числа в комментариях; проверяет
     tests/test_palitra.py по этому файлу, а не по памяти);
   · красный — ТОЛЬКО ошибки (--danger*). Фирменный акцент — зелёный (--accent*);
   · статусы различимы не одним оттенком: ok — изумрудный, warn — янтарный,
     ошибка — красный, инфо — синий, блок — фиолетовый, и у каждого есть значок/слово.

   Селектор html:root, а не :root: часть экранов подключает santan.css и
   copilot.css ещё раз внутри страницы — ПОСЛЕ этого файла, и их прежний :root
   перебивал бы палитру. html:root сильнее по специфичности, порядок не важен. */
html:root{
  /* ── поверхности: белое и чуть-чуть серого ── */
  --bg:#ffffff;            /* фон страницы */
  --surface:#ffffff;       /* карточки, поля ввода */
  --sunken:#f5f6f7;        /* левое меню, подложки, шапки таблиц — нейтральный серый */
  --stripe:#fafafb;        /* зебра таблиц */
  --line:#e2e4e7;          /* рамки */
  --line-soft:#eef0f2;     /* разделители внутри карточек */
  --border-strong:#b9bcc2; /* пунктир зоны сброса файлов */

  /* ── текст: графит ── */
  --ink:#16191d;           /* 17,6 бел · 16,3 sunken */
  --ink-2:#3d434c;         /* 10,0 бел */
  --grey:#898f97;          /* 3,3 — только рамки и значки, текстом нельзя */
  --grey-text:#5c6169;     /* 6,2 бел · 5,8 sunken */

  /* ── фирменный акцент и кнопки: зелёный (вместо прежнего красного) ── */
  --accent:#2e7d32;        /* 5,1 бел; белый текст на нём тоже 5,1 */
  --accent-hover:#256a29;  /* наведение: темнее, 6,5 */
  --accent-text:#276b2b;   /* акцент ТЕКСТОМ: 6,4 бел · 5,9 sunken */
  --accent-soft:#eef5ec;   /* едва заметная подложка выбранного, не фон страниц */
  --accent-bright:#66bb6a; /* полоса/метка без текста */
  --on-accent:#ffffff;     /* текст на акценте, на --graphite и на --danger */

  /* основная кнопка — зелёная, наведение и нажатие темнее */
  --graphite:#2e7d32;      /* 5,1 бел */
  --graphite-hi:#1f5f23;   /* 7,9 бел */

  /* ── ошибка: единственное место красного ── */
  --danger:#c62828;        /* 5,6 бел */
  --danger-hover:#a51f1f;
  --danger-text:#b3261e;   /* 6,5 бел · 5,6 danger-soft */
  --danger-soft:#fdecea;
  --danger-line:#f4c7c3;

  /* ── статусы ── */
  --ok:#17784c;            /* 5,5 бел */
  --ok-text:#13603d;       /* 7,6 бел */
  --ok-soft:#e2f3e8;
  --ok-line:#bfe0cc;
  --warn:#b26a00;          /* заливки и рамки; текстом — --warn-text */
  --warn-text:#8a5200;     /* 6,4 бел */
  --warn-soft:#fdf1da;
  --warn-line:#efd9a8;
  --info:#0b5cab;          /* 6,7 бел */
  --info-soft:#e8f0fb;
  --info-line:#cbdcf3;
  --blocked:#6b3fa0;       /* блок НЕ красный: красный занят ошибкой */
  --blocked-soft:#f1ecf8;
  --amber:#f2c230;         /* «требует внимания» — метка, не текст */

  /* ── старые имена → новые цвета ── */
  --red:var(--accent);             /* был фирменный красный: метки, полоса ворот, активный пункт */
  --red-hover:var(--accent-hover);
  --red-text:var(--accent-text);
  --red-soft:var(--accent-soft);

  /* ── тени и фокус ── */
  --shadow:0 1px 2px rgba(18,21,26,.05), 0 10px 30px -18px rgba(18,21,26,.28);
  --lift:0 1px 2px rgba(18,21,26,.05), 0 12px 28px -20px rgba(18,21,26,.35);
  --focus:0 0 0 2px var(--surface),0 0 0 4px var(--accent);
  --ring:0 0 0 2px var(--surface), 0 0 0 4px var(--accent);
  --tip-bg:rgba(20,22,26,.88);     /* всплывающие подсказки над картинкой */

  /* ── конструктор: чертёж 2D ── */
  --kz-korpus:#e8dfc9;     /* плиты корпуса — тёплая ЛДСП */
  --kz-korpus-line:#7d7258;
  --kz-polka:#f1e8d4;
  --kz-fasad:#cfe6b4;      /* двери и фасады ящиков — салатовые, полупрозрачные */
  --kz-fasad-line:#5f8f3a;
  --kz-zadnik:#e2e6da;
  --kz-shtanga:#7b8a72;
  --kz-yashchik:#ddd0b2;
  --kz-sec:#fbfdf8;        /* подложка секции */
  --kz-sec-sel:#eaf6dc;    /* выбранная секция */
  --kz-dim:#4d5a45;        /* размерные линии и числа: 7,6 бел */
  --kz-gap:#2f6a1c;        /* промежутки между полками */

  /* ── конструктор: 3D (читает vid3d.js) ── */
  --kz-3d-fon:#f3f8ec;
  --kz-3d-korpus:#e7dcc6;
  --kz-3d-polka:#efe5d1;
  --kz-3d-fasad:#bfe09a;
  --kz-3d-zadnik:#d5d9cc;
  --kz-3d-shtanga:#8c9a86;
  --kz-3d-yashchik:#dccfb3;
  --kz-3d-rebro:#55604c;
  --kz-3d-sel:#3d7d22;
  --kz-3d-bad:#c62828;
}

/* ── Набор «заявка»: салатово-зелёные тона — ТОЛЬКО панель конструктора заявки
   (слово V 08.10). Включается атрибутом data-palette="zayavka" на <html>,
   который ставит сама панель. ── */
html:root[data-palette="zayavka"]{
  --bg:#f7fbf3;            /* светлый салатовый, мягче */
  --sunken:#eef5e6;
  --stripe:#f8fbf4;
  --line:#d3e2c4;
  --line-soft:#e5efda;
  --border-strong:#a9bf95;
  --ink:#17240f;           /* 16,2 бел */
  --ink-2:#3a4733;
  --grey:#7c8873;
  --grey-text:#55604c;     /* 6,6 бел · 5,9 sunken */
  --accent:#3d7d22;        /* 5,05 бел */
  --accent-hover:#33691b;
  --accent-text:#336b1b;   /* 6,4 бел · 5,5 accent-soft */
  --accent-soft:#e3f2d2;
  --accent-bright:#8cc63f;
  --graphite:#2c5a18;      /* 8,1 бел */
  --graphite-hi:#1f4111;
}

/* ── Варианты акцента и кнопок на выбор V (08.10): «лес» — по умолчанию (в
   html:root выше), «изумруд» и «трава» — токенами, включаются атрибутом
   data-akcent на <html>. В панели заявки вариант тоже меняет акцент, фон её
   остаётся салатовым. Снимки — TESTY/ZAYAVKA_1008/snimki/palitra_varianty/. ── */
html:root[data-akcent="izumrud"]{
  --accent:#0e7a5a;        /* 5,3 бел */
  --accent-hover:#0a6249;
  --accent-text:#0b6a4e;   /* 6,6 бел */
  --accent-soft:#e8f4ef;
  --accent-bright:#3fb58b;
  --graphite:#0e7a5a;
  --graphite-hi:#0a5240;
  --kz-3d-sel:#0e7a5a;
}
html:root[data-akcent="trava"]{
  --accent:#3b7f1c;        /* 4,95 бел */
  --accent-hover:#2f6a15;
  --accent-text:#336d18;   /* 6,3 бел */
  --accent-soft:#eef6e6;
  --accent-bright:#8cc63f;
  --graphite:#3b7f1c;
  --graphite-hi:#2a5c12;
  --kz-3d-sel:#3b7f1c;
}

/* ── Второй набор: «олива, не ярко» (завод 08.10, СТ [00:00–01:12]). НЕ включён:
   включается словом V — атрибутом data-palette="oliva" на <html> (одна строка
   в shell.html). Переопределяет только то, что отличается от салатового. ── */
html:root[data-palette="oliva"]{
  --bg:#f5f6ee;
  --sunken:#eaecdc;
  --stripe:#f7f8f1;
  --line:#d5d9bf;
  --line-soft:#e5e8d5;
  --border-strong:#a9af86;
  --accent:#5a6a2d;        /* 5,9 бел */
  --accent-hover:#4b5925;
  --accent-text:#4d5b26;   /* 7,2 бел */
  --accent-soft:#eceed8;
  --accent-bright:#a4ad6b;
  --graphite:#3e4922;
  --graphite-hi:#2c3417;
  --danger:#b03a2e;        /* приглушённый красный статуса */
  --danger-text:#9e3227;
  --danger-soft:#f8ebe8;
  --amber:#d9b44a;
  --kz-fasad:#dde2c2;
  --kz-fasad-line:#6c773d;
  --kz-sec-sel:#eef0dc;
  --kz-gap:#4d5b26;
  --kz-3d-fon:#f2f3ea;
  --kz-3d-fasad:#ccd3a4;
  --kz-3d-sel:#5a6a2d;
}
