/* Единая цветовая палитра франшизы. ЕДИНСТВЕННЫЙ источник цветов для всех
   веб-интерфейсов: панель франчайзи (internal/franchisepanel), админ-панель
   (internal/admin) и брендированная страница подписки (internal/subproxy).
   Меняешь токен здесь — меняется во всех интерфейсах.

   Направление: «тёмный премиум-финтех» — глубокий графит как основа, один
   акцент (маджента) на всё. Зелёный/красный/янтарь/синий зарезервированы под
   смысл состояний (успех/ошибка/предупреждение/инфо) и акцентом не работают.

   Тема: ТЁМНАЯ ПО УМОЛЧАНИЮ — это художественное решение, а не следование за
   системой. Светлая включается только явным выбором пользователя:
     • нет data-theme        → тёмная;
     • data-theme="dark"     → тёмная;
     • data-theme="light"    → светлая.
   Кнопка-переключатель в каждом интерфейсе пишет выбор в localStorage и ставит
   data-theme; ранний инлайн-скрипт восстанавливает его до первой отрисовки.
   Раньше тёмный блок дублировался (media-запрос + data-theme) — теперь тёмная
   это база :root, а светлая один override, поэтому дублирования нет. */

/* ─────────── ТЁМНАЯ ТЕМА — база ─────────── */
:root{
  /* Поверхности: графит с холодным подтоном. Шаг между слоями небольшой —
     глубина держится на рамках, а не на тенях (на тёмном тени не читаются). */
  --bg:#0B0B0F; --card:#131318; --soft:#1B1B22; --line:#26262F;
  --txt:#F2F2F5; --mut:#9C9CAB; --dim:#6B6B7B;

  /* Акцент — маджента. Единственный «фирменный» цвет интерфейса.
     --on-acc — цвет текста/иконок ПОВЕРХ акцентной заливки. Он обязан быть
     токеном, а не константой: на светлой теме акцент темнеет, и белый текст
     там читается, а на тёмной мадженте контраст даёт почти-чёрный. */
  --acc:#F0369A; --acc-hi:#FF5AB0; --acc-soft:#2A0F20; --on-acc:#14060D;

  /* Состояния. --err намеренно ОТДЕЛЁН от акцента (раньше это был один цвет):
     ошибка должна читаться как ошибка, а не как брендовая кнопка. */
  --ok:#2FD98A; --ok-soft:#0C2A1D;
  --err:#FF5F57; --err-soft:#2E1211;
  --amber:#F5A524; --amber-soft:#2A1F0C;
  --blue:#4D9CFF; --blue-soft:#101F35;

  /* Производные поверхности. */
  --inp:#17171E; --soft-hi:#24242D; --topbar:rgba(11,11,15,.72);
  --sk1:#17171E; --sk2:#22222B;

  --radius:14px; --sidebar:248px;
}

/* ─────────── СВЕТЛАЯ ТЕМА — только по явному выбору ─────────── */
:root[data-theme="light"]{
  --bg:#F7F7F9; --card:#FFFFFF; --soft:#F1F1F4; --line:#E3E3E9;
  --txt:#131318; --mut:#63636F; --dim:#9494A2;

  --acc:#D6117A; --acc-hi:#B60D66; --acc-soft:#FDEBF5; --on-acc:#FFFFFF;

  --ok:#12A25E; --ok-soft:#E6F6EE;
  --err:#DC2626; --err-soft:#FDECEC;
  --amber:#B45309; --amber-soft:#FEF3E2;
  --blue:#2563EB; --blue-soft:#E8EFFD;

  --inp:#FFFFFF; --soft-hi:#E8E8ED; --topbar:rgba(247,247,249,.8);
  --sk1:#EDEDF1; --sk2:#E1E1E8;
}

/* ─────────── АЛИАСЫ СОВМЕСТИМОСТИ ─────────── */
/* Исторические имена, на которые завязан существующий CSS/JS во всех трёх
   интерфейсах. Держим алиасами, чтобы смена акцента не требовала правки сотен
   мест. --red здесь читается как «акцент», а не «красный»: настоящий красный
   для деструктивных действий и ошибок — это --err.

   Ниже — токены, которые код уже использовал, но которых в палитре не было,
   из-за чего они молча падали в fallback или в currentColor:
     --accent  → график «онлайн во времени» рисовался чёрным (stroke/fill);
     --warn*   → бейдж «ожидает активации» жил на захардкоженном fallback;
     --fg/--bd → .btn-sec брал цвет текста и рамку наугад. */
:root{
  --red:var(--acc); --red-hi:var(--acc-hi); --red-soft:var(--acc-soft);
  --accent:var(--acc);
  --warn:var(--amber); --warn-soft:var(--amber-soft);
  --fg:var(--txt); --bd:var(--line);
}
