/* ============================================================
   ТЁМНАЯ ТЕМА — CRM «НОЧУ ДПО ИнТех»
   ------------------------------------------------------------
   Подключается в base.html и login.html.
   Режим задаётся классом .dark на <html>:
     <html class="dark">   — тёмная тема
     <html>                — светлая тема
   Класс ставит ранний inline-скрипт (см. base.html) по значению
   localStorage["nochu-theme"] или системной настройке.
   Переключатель — кнопка в шапке (static/js/theme.js).
   ------------------------------------------------------------
   ВАЖНО: все правила только под html.dark, светлая тема не
   затрагивается. При печати класс .dark снимается скриптом
   (beforeprint), поэтому печать остаётся светлой.
   ============================================================ */

/* ---------- 0. Токены ---------- */
html.dark {
    color-scheme: dark;
    --bg-page:    #0f172a;
    --bg-sidebar: #0a1120;
    --surface-1:  #1e293b;
    --surface-2:  #253244;
    --surface-3:  #2d3b50;
    --surface-4:  #37455c;
    --border:     #334155;
    --border-soft:#2a3648;
}

/* ---------- 1. Фон страницы ---------- */
html.dark body {
    background-color: #0f172a !important;
    color: #e2e8f0 !important;
}

/* ---------- 2. Поверхности ---------- */
html.dark .bg-white { background-color: #1e293b !important; }
html.dark .bg-slate-50 { background-color: #253244 !important; }
html.dark .bg-slate-100 { background-color: #2d3b50 !important; }
html.dark .bg-slate-200 { background-color: #37455c !important; }
html.dark .bg-slate-300 { background-color: #445470 !important; }
html.dark .bg-slate-800 { background-color: #1b2537 !important; }
html.dark .bg-slate-900 { background-color: #0a1120 !important; }
html.dark .bg-slate-950 { background-color: #070d19 !important; }
html.dark .bg-gray-50 { background-color: #253244 !important; }
html.dark .bg-gray-100 { background-color: #2d3b50 !important; }
html.dark .bg-gray-200 { background-color: #37455c !important; }
html.dark .bg-gray-300 { background-color: #445470 !important; }
html.dark .bg-gray-900 { background-color: #0a1120 !important; }
html.dark .bg-zinc-50 { background-color: #253244 !important; }
html.dark .bg-zinc-100 { background-color: #2d3b50 !important; }
html.dark .bg-zinc-200 { background-color: #37455c !important; }
html.dark .bg-zinc-300 { background-color: #445470 !important; }
html.dark .bg-zinc-900 { background-color: #0a1120 !important; }
html.dark .bg-neutral-50 { background-color: #253244 !important; }
html.dark .bg-neutral-100 { background-color: #2d3b50 !important; }
html.dark .bg-neutral-200 { background-color: #37455c !important; }
html.dark .bg-neutral-300 { background-color: #445470 !important; }
html.dark .bg-neutral-900 { background-color: #0a1120 !important; }
html.dark .bg-stone-50 { background-color: #253244 !important; }
html.dark .bg-stone-100 { background-color: #2d3b50 !important; }
html.dark .bg-stone-200 { background-color: #37455c !important; }
html.dark .bg-stone-300 { background-color: #445470 !important; }
html.dark .bg-stone-900 { background-color: #0a1120 !important; }
html.dark .bg-black\/50 { background-color: rgba(0, 0, 0, .6) !important; }
html.dark .bg-black\/60 { background-color: rgba(0, 0, 0, .65) !important; }

/* Полупрозрачный БЕЛЫЙ фон (bg-white/70 и подобные).
   ------------------------------------------------------------
   ПРОБЕЛ, ИЗ-ЗА КОТОРОГО БЫЛО НЕ ВИДНО ТЕКСТ (найдено 10.10.2026).
   У остальных оттенков (slate, gray, zinc, neutral, stone и цветные)
   полупрозрачные варианты переопределены — см. раздел 7. А у БЕЛОГО
   их не было. Из-за этого плашка вида `bg-white/70` в тёмной теме
   оставалась почти белой, а текст на ней — светлым оттенком своего
   цвета (`text-emerald-700` → #a7f3d0). Светло-зелёное на белом
   не читается вовсе: владелец сообщил, что в закладке «Состояние
   системы» не видно чисел светофора («В порядке: 14»).
   Теперь белая полупрозрачная плашка становится обычной тёмной
   поверхностью — как и `bg-white`. */
html.dark .bg-white\/10 { background-color: #1b2537 !important; }
html.dark .bg-white\/20 { background-color: #1e293b !important; }
html.dark .bg-white\/25 { background-color: #1e293b !important; }
html.dark .bg-white\/30 { background-color: #1e293b !important; }
html.dark .bg-white\/40 { background-color: #1e293b !important; }
html.dark .bg-white\/50 { background-color: #253244 !important; }
html.dark .bg-white\/60 { background-color: #253244 !important; }
html.dark .bg-white\/70 { background-color: #253244 !important; }
html.dark .bg-white\/75 { background-color: #253244 !important; }
html.dark .bg-white\/80 { background-color: #2a3648 !important; }
html.dark .bg-white\/90 { background-color: #2a3648 !important; }

/* ---------- 3. Текст ---------- */
html.dark .text-slate-950 { color: #f8fafc !important; }
html.dark .text-slate-900 { color: #f8fafc !important; }
html.dark .text-slate-800 { color: #f1f5f9 !important; }
html.dark .text-slate-700 { color: #e2e8f0 !important; }
html.dark .text-slate-600 { color: #cbd5e1 !important; }
html.dark .text-slate-500 { color: #94a3b8 !important; }
/* Вторичный текст в тёмной теме. Было #7d8ea8 — на карточке это 4.39:1,
   а на серой плашке (`bg-slate-50` → #253244) 3.90:1, то есть ниже нормы
   4.5:1. Нашла проверка `check_theme_light.py` 11.10.2026, когда считала
   контраст подсказок: в светлой теме значение оказалось 2.56:1 (правил
   владелец), а рядом выяснилось, что и в тёмной оно не дотягивает.
   #8a9cb6 даёт 5.23:1 на карточке и 4.64:1 на плашке. Изменение
   намеренно маленькое: владелец тёмную тему одобрил, и перекрашивать её
   целиком никто не просил — правится только недобор читаемости. */
html.dark .text-slate-400 { color: #8a9cb6 !important; }
html.dark .text-slate-300 { color: #64748b !important; }
html.dark .text-gray-950 { color: #f8fafc !important; }
html.dark .text-gray-900 { color: #f8fafc !important; }
html.dark .text-gray-800 { color: #f1f5f9 !important; }
html.dark .text-gray-700 { color: #e2e8f0 !important; }
html.dark .text-gray-600 { color: #cbd5e1 !important; }
html.dark .text-gray-500 { color: #94a3b8 !important; }
html.dark .text-gray-400 { color: #7d8ea8 !important; }
html.dark .text-gray-300 { color: #64748b !important; }
html.dark .text-zinc-950 { color: #f8fafc !important; }
html.dark .text-zinc-900 { color: #f8fafc !important; }
html.dark .text-zinc-800 { color: #f1f5f9 !important; }
html.dark .text-zinc-700 { color: #e2e8f0 !important; }
html.dark .text-zinc-600 { color: #cbd5e1 !important; }
html.dark .text-zinc-500 { color: #94a3b8 !important; }
html.dark .text-zinc-400 { color: #7d8ea8 !important; }
html.dark .text-zinc-300 { color: #64748b !important; }
html.dark .text-neutral-950 { color: #f8fafc !important; }
html.dark .text-neutral-900 { color: #f8fafc !important; }
html.dark .text-neutral-800 { color: #f1f5f9 !important; }
html.dark .text-neutral-700 { color: #e2e8f0 !important; }
html.dark .text-neutral-600 { color: #cbd5e1 !important; }
html.dark .text-neutral-500 { color: #94a3b8 !important; }
html.dark .text-neutral-400 { color: #7d8ea8 !important; }
html.dark .text-neutral-300 { color: #64748b !important; }
html.dark .text-stone-950 { color: #f8fafc !important; }
html.dark .text-stone-900 { color: #f8fafc !important; }
html.dark .text-stone-800 { color: #f1f5f9 !important; }
html.dark .text-stone-700 { color: #e2e8f0 !important; }
html.dark .text-stone-600 { color: #cbd5e1 !important; }
html.dark .text-stone-500 { color: #94a3b8 !important; }
html.dark .text-stone-400 { color: #7d8ea8 !important; }
html.dark .text-stone-300 { color: #64748b !important; }

/* цвета-ссылки и ярлыки внутри тёмных поверхностей остаются светлыми */
html.dark .text-white  { color: #ffffff !important; }
html.dark .text-black  { color: #0f172a !important; }

/* ---------- 3b. Вторичный текст и подсказки В СВЕТЛОЙ ТЕМЕ ----------
   Просьба владельца (11.10.2026): «на светлой теме надо увеличить контраст
   шрифта в виде подсказок, например "Мои группы — показывается сотруднику,
   привязанному к преподавателю", чтобы не приходилось прям присматриваться
   к экрану».

   ЗАМЕР. В светлой теме подсказки и вторичные подписи написаны служебным
   классом `text-slate-400` (#94a3b8) — это 495 мест в шаблонах. На белой
   карточке он даёт 2.56:1, на сером фоне страницы — 2.34:1. Норма WCAG
   для текста — 4.5:1, то есть подсказки было объективно трудно читать;
   владелец описал это точно.

   ЧЕМ ЗАМЕНЯЕМ. #556070 — не служебный оттенок Tailwind, а подобранный
   промежуточный: он даёт от 5.17:1 на самом тёмном светлом фоне
   (slate-200) до 6.38:1 на белом, то есть читается ВЕЗДЕ и остаётся
   заметно светлее основного текста (slate-600 — 7.58:1). Порядок в
   палитре сохраняется: подсказка тише текста, но её видно.
   Такой же приём уже применён в тёмной теме: там `text-slate-400` тоже
   переопределён своим оттенком (#7d8ea8), а не служебным.

   ПОЧЕМУ `html:not(.dark)`, А НЕ ПРОСТО КЛАСС. Правило должно победить
   служебный класс Tailwind, а он одного с ним веса; `html:not(.dark)`
   даёт вес выше и заодно не трогает тёмную тему, где своя палитра.

   ПОЧЕМУ НУЖНО ИСКЛЮЧЕНИЕ ДЛЯ МЕНЮ. Боковое меню тёмное В ОБЕИХ темах
   (bg-slate-900), поэтому его вторичный текст обязан остаться СВЕТЛЫМ:
   без исключения он стал бы тёмным на тёмном. Проверено 11.10.2026:
   других тёмных поверхностей с этим классом в светлой теме нет —
   блоки кода используют `text-slate-100`, а подложки окон `bg-slate-900/50`
   лежат ПОД окном, а не под текстом. */
html:not(.dark) .text-slate-400 { color: #556070; }
html:not(.dark) #sidebar .text-slate-400 { color: #94a3b8; }

/* ---------- 4. Границы ---------- */
/* Белая граница. В тёмной теме сплошная белая рамка выглядит как
   подсветка и спорит с содержимым (использовалась в плашках светофора
   на странице «Состояние системы»). Делаем её мягкой светлой линией:
   границу видно, но она не перетягивает внимание. */
html.dark .border-white { border-color: rgba(255, 255, 255, .14) !important; }
html.dark .border-slate-100 { border-color: #2a3648 !important; }
html.dark .border-slate-200 { border-color: #334155 !important; }
html.dark .border-slate-300 { border-color: #46577a !important; }
html.dark .border-slate-700 { border-color: #334155 !important; }
html.dark .border-slate-800 { border-color: #1b2537 !important; }
html.dark .divide-slate-100 > :not([hidden]) ~ :not([hidden]) { border-color: #2a3648 !important; }
html.dark .divide-slate-200 > :not([hidden]) ~ :not([hidden]) { border-color: #334155 !important; }
html.dark .border-gray-100 { border-color: #2a3648 !important; }
html.dark .divide-gray-100 > :not([hidden]) ~ :not([hidden]) { border-color: #2a3648 !important; }
html.dark .border-gray-200 { border-color: #334155 !important; }
html.dark .divide-gray-200 > :not([hidden]) ~ :not([hidden]) { border-color: #334155 !important; }
html.dark .border-gray-300 { border-color: #46577a !important; }
html.dark .divide-gray-300 > :not([hidden]) ~ :not([hidden]) { border-color: #46577a !important; }
html.dark .border-zinc-100 { border-color: #2a3648 !important; }
html.dark .divide-zinc-100 > :not([hidden]) ~ :not([hidden]) { border-color: #2a3648 !important; }
html.dark .border-zinc-200 { border-color: #334155 !important; }
html.dark .divide-zinc-200 > :not([hidden]) ~ :not([hidden]) { border-color: #334155 !important; }
html.dark .border-zinc-300 { border-color: #46577a !important; }
html.dark .divide-zinc-300 > :not([hidden]) ~ :not([hidden]) { border-color: #46577a !important; }
html.dark .border-neutral-100 { border-color: #2a3648 !important; }
html.dark .divide-neutral-100 > :not([hidden]) ~ :not([hidden]) { border-color: #2a3648 !important; }
html.dark .border-neutral-200 { border-color: #334155 !important; }
html.dark .divide-neutral-200 > :not([hidden]) ~ :not([hidden]) { border-color: #334155 !important; }
html.dark .border-neutral-300 { border-color: #46577a !important; }
html.dark .divide-neutral-300 > :not([hidden]) ~ :not([hidden]) { border-color: #46577a !important; }
html.dark .border-stone-100 { border-color: #2a3648 !important; }
html.dark .divide-stone-100 > :not([hidden]) ~ :not([hidden]) { border-color: #2a3648 !important; }
html.dark .border-stone-200 { border-color: #334155 !important; }
html.dark .divide-stone-200 > :not([hidden]) ~ :not([hidden]) { border-color: #334155 !important; }
html.dark .border-stone-300 { border-color: #46577a !important; }
html.dark .divide-stone-300 > :not([hidden]) ~ :not([hidden]) { border-color: #46577a !important; }

/* Кольцо фокуса/выделения (ring-*). Раньше в теме не было НИ ОДНОГО
   правила для ring-*, хотя в шаблонах они используются (кольцо вокруг
   выделенной карточки, рамка фокуса). В тёмной теме светло-индиговое
   кольцо (#c7d2fe) светилось ярким ореолом вокруг элемента. Нашла это
   проверка `check_theme.py`, которая сверяет использованные в шаблонах
   классы с правилами темы. */
html.dark .ring-indigo-100 { --tw-ring-color: rgba(99, 102, 241, .30) !important; }
html.dark .ring-indigo-200 { --tw-ring-color: rgba(99, 102, 241, .45) !important; }
html.dark .ring-indigo-300 { --tw-ring-color: rgba(99, 102, 241, .60) !important; }
html.dark .ring-slate-100 { --tw-ring-color: rgba(148, 163, 184, .25) !important; }
html.dark .ring-slate-200 { --tw-ring-color: rgba(148, 163, 184, .35) !important; }
html.dark .ring-slate-300 { --tw-ring-color: rgba(148, 163, 184, .50) !important; }
html.dark .ring-emerald-100 { --tw-ring-color: rgba(16, 185, 129, .30) !important; }
html.dark .ring-emerald-200 { --tw-ring-color: rgba(16, 185, 129, .45) !important; }
html.dark .ring-amber-100 { --tw-ring-color: rgba(245, 158, 11, .30) !important; }
html.dark .ring-amber-200 { --tw-ring-color: rgba(245, 158, 11, .45) !important; }
html.dark .ring-rose-100 { --tw-ring-color: rgba(244, 63, 94, .30) !important; }
html.dark .ring-rose-200 { --tw-ring-color: rgba(244, 63, 94, .45) !important; }

/* ---------- 5. Hover / focus (нейтральные) ---------- */
html.dark .hover\:bg-slate-50:hover { background-color: #253244 !important; }
html.dark .hover\:bg-slate-100:hover { background-color: #2d3b50 !important; }
html.dark .hover\:bg-slate-200:hover { background-color: #37455c !important; }
html.dark .hover\:bg-slate-300:hover { background-color: #445470 !important; }
html.dark .hover\:bg-white:hover { background-color: #1e293b !important; }
html.dark .hover\:text-slate-700:hover { color: #e2e8f0 !important; }
html.dark .hover\:text-slate-800:hover { color: #f1f5f9 !important; }
html.dark .hover\:text-slate-900:hover { color: #f8fafc !important; }
html.dark .hover\:text-slate-600:hover { color: #cbd5e1 !important; }
html.dark .hover\:border-slate-300:hover { border-color: #46577a !important; }
html.dark .hover\:bg-gray-50:hover { background-color: #253244 !important; }
html.dark .hover\:bg-gray-100:hover { background-color: #2d3b50 !important; }
html.dark .hover\:text-gray-700:hover { color: #e2e8f0 !important; }
html.dark .hover\:text-gray-800:hover { color: #f1f5f9 !important; }
html.dark .hover\:bg-zinc-50:hover { background-color: #253244 !important; }
html.dark .hover\:bg-zinc-100:hover { background-color: #2d3b50 !important; }
html.dark .hover\:text-zinc-700:hover { color: #e2e8f0 !important; }
html.dark .hover\:text-zinc-800:hover { color: #f1f5f9 !important; }
html.dark .hover\:bg-neutral-50:hover { background-color: #253244 !important; }
html.dark .hover\:bg-neutral-100:hover { background-color: #2d3b50 !important; }
html.dark .hover\:text-neutral-700:hover { color: #e2e8f0 !important; }
html.dark .hover\:text-neutral-800:hover { color: #f1f5f9 !important; }
html.dark .hover\:bg-stone-50:hover { background-color: #253244 !important; }
html.dark .hover\:bg-stone-100:hover { background-color: #2d3b50 !important; }
html.dark .hover\:text-stone-700:hover { color: #e2e8f0 !important; }
html.dark .hover\:text-stone-800:hover { color: #f1f5f9 !important; }

/* ---------- 6. Цветные плашки (статусы, чипы графика) ----------
   Плашки вида bg-emerald-50 + text-emerald-700 на тёмном фоне
   становятся тёмной заливкой с ярким текстом того же оттенка.
   Это же покрывает ДИНАМИЧЕСКИЕ классы графика обучения:
   bg-{{ program_color }}-50, text-{{ program_color }}-900 и т.п.
   Соответствие оттенков:  ------------------------------------------------------------------- */

/* red */
html.dark .bg-red-50 { background-color: #3b2d3c !important; }
html.dark .bg-red-100 { background-color: #4c2f3d !important; }
html.dark .bg-red-200 { background-color: #5d313e !important; }
html.dark .bg-red-300 { background-color: #6d333e !important; }
html.dark .text-red-950 { color: #fecaca !important; }
html.dark .text-red-900 { color: #fecaca !important; }
html.dark .text-red-800 { color: #fecaca !important; }
html.dark .text-red-700 { color: #fecaca !important; }
html.dark .text-red-600 { color: #fca5a5 !important; }
html.dark .text-red-500 { color: #fca5a5 !important; }
html.dark .border-red-100 { border-color: rgba(239, 68, 68, .25) !important; }
html.dark .border-red-200 { border-color: rgba(239, 68, 68, .35) !important; }
html.dark .border-red-300 { border-color: rgba(239, 68, 68, .45) !important; }
html.dark .divide-red-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(239, 68, 68, .25) !important; }
html.dark .divide-red-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(239, 68, 68, .35) !important; }
html.dark .hover\:bg-red-50:hover { background-color: #482e3d !important; }
html.dark .hover\:bg-red-100:hover { background-color: #5d313e !important; }
html.dark .hover\:bg-red-200:hover { background-color: #6d333e !important; }
html.dark .hover\:text-red-600:hover { color: #fecaca !important; }
html.dark .hover\:text-red-700:hover { color: #fecaca !important; }
html.dark .hover\:text-red-800:hover { color: #fecaca !important; }
html.dark .hover\:text-red-900:hover { color: #fee2e2 !important; }

/* orange */
html.dark .bg-orange-50 { background-color: #3d3336 !important; }
html.dark .bg-orange-100 { background-color: #4e3933 !important; }
html.dark .bg-orange-200 { background-color: #603f30 !important; }
html.dark .bg-orange-300 { background-color: #71452d !important; }
html.dark .text-orange-950 { color: #fed7aa !important; }
html.dark .text-orange-900 { color: #fed7aa !important; }
html.dark .text-orange-800 { color: #fed7aa !important; }
html.dark .text-orange-700 { color: #fed7aa !important; }
html.dark .text-orange-600 { color: #fdba74 !important; }
html.dark .text-orange-500 { color: #fdba74 !important; }
html.dark .border-orange-100 { border-color: rgba(249, 115, 22, .25) !important; }
html.dark .border-orange-200 { border-color: rgba(249, 115, 22, .35) !important; }
html.dark .border-orange-300 { border-color: rgba(249, 115, 22, .45) !important; }
html.dark .divide-orange-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(249, 115, 22, .25) !important; }
html.dark .divide-orange-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(249, 115, 22, .35) !important; }
html.dark .hover\:bg-orange-50:hover { background-color: #4a3834 !important; }
html.dark .hover\:bg-orange-100:hover { background-color: #603f30 !important; }
html.dark .hover\:bg-orange-200:hover { background-color: #71452d !important; }
html.dark .hover\:text-orange-600:hover { color: #fed7aa !important; }
html.dark .hover\:text-orange-700:hover { color: #fed7aa !important; }
html.dark .hover\:text-orange-800:hover { color: #fed7aa !important; }
html.dark .hover\:text-orange-900:hover { color: #ffedd5 !important; }

/* amber */
html.dark .bg-amber-50 { background-color: #3c3934 !important; }
html.dark .bg-amber-100 { background-color: #4d4330 !important; }
html.dark .bg-amber-200 { background-color: #5e4c2d !important; }
html.dark .bg-amber-300 { background-color: #705529 !important; }
html.dark .text-amber-950 { color: #fde68a !important; }
html.dark .text-amber-900 { color: #fde68a !important; }
html.dark .text-amber-800 { color: #fde68a !important; }
html.dark .text-amber-700 { color: #fde68a !important; }
html.dark .text-amber-600 { color: #fcd34d !important; }
html.dark .text-amber-500 { color: #fcd34d !important; }
html.dark .border-amber-100 { border-color: rgba(245, 158, 11, .25) !important; }
html.dark .border-amber-200 { border-color: rgba(245, 158, 11, .35) !important; }
html.dark .border-amber-300 { border-color: rgba(245, 158, 11, .45) !important; }
html.dark .divide-amber-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(245, 158, 11, .25) !important; }
html.dark .divide-amber-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(245, 158, 11, .35) !important; }
html.dark .hover\:bg-amber-50:hover { background-color: #494031 !important; }
html.dark .hover\:bg-amber-100:hover { background-color: #5e4c2d !important; }
html.dark .hover\:bg-amber-200:hover { background-color: #705529 !important; }
html.dark .hover\:text-amber-600:hover { color: #fde68a !important; }
html.dark .hover\:text-amber-700:hover { color: #fde68a !important; }
html.dark .hover\:text-amber-800:hover { color: #fde68a !important; }
html.dark .hover\:text-amber-900:hover { color: #fef3c7 !important; }

/* yellow */
html.dark .bg-yellow-50 { background-color: #3b3c34 !important; }
html.dark .bg-yellow-100 { background-color: #4b4730 !important; }
html.dark .bg-yellow-200 { background-color: #5b522c !important; }
html.dark .bg-yellow-300 { background-color: #6c5d28 !important; }
html.dark .text-yellow-950 { color: #fef08a !important; }
html.dark .text-yellow-900 { color: #fef08a !important; }
html.dark .text-yellow-800 { color: #fef08a !important; }
html.dark .text-yellow-700 { color: #fef08a !important; }
html.dark .text-yellow-600 { color: #fde047 !important; }
html.dark .text-yellow-500 { color: #fde047 !important; }
html.dark .border-yellow-100 { border-color: rgba(234, 179, 8, .25) !important; }
html.dark .border-yellow-200 { border-color: rgba(234, 179, 8, .35) !important; }
html.dark .border-yellow-300 { border-color: rgba(234, 179, 8, .45) !important; }
html.dark .divide-yellow-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(234, 179, 8, .25) !important; }
html.dark .divide-yellow-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(234, 179, 8, .35) !important; }
html.dark .hover\:bg-yellow-50:hover { background-color: #474531 !important; }
html.dark .hover\:bg-yellow-100:hover { background-color: #5b522c !important; }
html.dark .hover\:bg-yellow-200:hover { background-color: #6c5d28 !important; }
html.dark .hover\:text-yellow-600:hover { color: #fef08a !important; }
html.dark .hover\:text-yellow-700:hover { color: #fef08a !important; }
html.dark .hover\:text-yellow-800:hover { color: #fef08a !important; }
html.dark .hover\:text-yellow-900:hover { color: #fef9c3 !important; }

/* lime */
html.dark .bg-lime-50 { background-color: #2c4036 !important; }
html.dark .bg-lime-100 { background-color: #344d33 !important; }
html.dark .bg-lime-200 { background-color: #3d5a30 !important; }
html.dark .bg-lime-300 { background-color: #45672d !important; }
html.dark .text-lime-950 { color: #d9f99d !important; }
html.dark .text-lime-900 { color: #d9f99d !important; }
html.dark .text-lime-800 { color: #d9f99d !important; }
html.dark .text-lime-700 { color: #d9f99d !important; }
html.dark .text-lime-600 { color: #bef264 !important; }
html.dark .text-lime-500 { color: #bef264 !important; }
html.dark .border-lime-100 { border-color: rgba(132, 204, 22, .25) !important; }
html.dark .border-lime-200 { border-color: rgba(132, 204, 22, .35) !important; }
html.dark .border-lime-300 { border-color: rgba(132, 204, 22, .45) !important; }
html.dark .divide-lime-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(132, 204, 22, .25) !important; }
html.dark .divide-lime-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(132, 204, 22, .35) !important; }
html.dark .hover\:bg-lime-50:hover { background-color: #324a34 !important; }
html.dark .hover\:bg-lime-100:hover { background-color: #3d5a30 !important; }
html.dark .hover\:bg-lime-200:hover { background-color: #45672d !important; }
html.dark .hover\:text-lime-600:hover { color: #d9f99d !important; }
html.dark .hover\:text-lime-700:hover { color: #d9f99d !important; }
html.dark .hover\:text-lime-800:hover { color: #d9f99d !important; }
html.dark .hover\:text-lime-900:hover { color: #ecfccb !important; }

/* green */
html.dark .bg-green-50 { background-color: #1f3f40 !important; }
html.dark .bg-green-100 { background-color: #1f4b43 !important; }
html.dark .bg-green-200 { background-color: #1f5846 !important; }
html.dark .bg-green-300 { background-color: #206448 !important; }
html.dark .text-green-950 { color: #bbf7d0 !important; }
html.dark .text-green-900 { color: #bbf7d0 !important; }
html.dark .text-green-800 { color: #bbf7d0 !important; }
html.dark .text-green-700 { color: #bbf7d0 !important; }
html.dark .text-green-600 { color: #86efac !important; }
html.dark .text-green-500 { color: #86efac !important; }
html.dark .border-green-100 { border-color: rgba(34, 197, 94, .25) !important; }
html.dark .border-green-200 { border-color: rgba(34, 197, 94, .35) !important; }
html.dark .border-green-300 { border-color: rgba(34, 197, 94, .45) !important; }
html.dark .divide-green-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(34, 197, 94, .25) !important; }
html.dark .divide-green-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(34, 197, 94, .35) !important; }
html.dark .hover\:bg-green-50:hover { background-color: #1f4842 !important; }
html.dark .hover\:bg-green-100:hover { background-color: #1f5846 !important; }
html.dark .hover\:bg-green-200:hover { background-color: #206448 !important; }
html.dark .hover\:text-green-600:hover { color: #bbf7d0 !important; }
html.dark .hover\:text-green-700:hover { color: #bbf7d0 !important; }
html.dark .hover\:text-green-800:hover { color: #bbf7d0 !important; }
html.dark .hover\:text-green-900:hover { color: #dcfce7 !important; }

/* emerald */
html.dark .bg-emerald-50 { background-color: #1c3d45 !important; }
html.dark .bg-emerald-100 { background-color: #1b494a !important; }
html.dark .bg-emerald-200 { background-color: #1a5450 !important; }
html.dark .bg-emerald-300 { background-color: #196056 !important; }
html.dark .text-emerald-950 { color: #a7f3d0 !important; }
html.dark .text-emerald-900 { color: #a7f3d0 !important; }
html.dark .text-emerald-800 { color: #a7f3d0 !important; }
html.dark .text-emerald-700 { color: #a7f3d0 !important; }
html.dark .text-emerald-600 { color: #6ee7b7 !important; }
html.dark .text-emerald-500 { color: #6ee7b7 !important; }
html.dark .border-emerald-100 { border-color: rgba(16, 185, 129, .25) !important; }
html.dark .border-emerald-200 { border-color: rgba(16, 185, 129, .35) !important; }
html.dark .border-emerald-300 { border-color: rgba(16, 185, 129, .45) !important; }
html.dark .divide-emerald-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(16, 185, 129, .25) !important; }
html.dark .divide-emerald-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(16, 185, 129, .35) !important; }
html.dark .hover\:bg-emerald-50:hover { background-color: #1b4649 !important; }
html.dark .hover\:bg-emerald-100:hover { background-color: #1a5450 !important; }
html.dark .hover\:bg-emerald-200:hover { background-color: #196056 !important; }
html.dark .hover\:text-emerald-600:hover { color: #a7f3d0 !important; }
html.dark .hover\:text-emerald-700:hover { color: #a7f3d0 !important; }
html.dark .hover\:text-emerald-800:hover { color: #a7f3d0 !important; }
html.dark .hover\:text-emerald-900:hover { color: #d1fae5 !important; }

/* teal */
html.dark .bg-teal-50 { background-color: #1d3d4a !important; }
html.dark .bg-teal-100 { background-color: #1c4853 !important; }
html.dark .bg-teal-200 { background-color: #1b545b !important; }
html.dark .bg-teal-300 { background-color: #1a5f64 !important; }
html.dark .text-teal-950 { color: #99f6e4 !important; }
html.dark .text-teal-900 { color: #99f6e4 !important; }
html.dark .text-teal-800 { color: #99f6e4 !important; }
html.dark .text-teal-700 { color: #99f6e4 !important; }
html.dark .text-teal-600 { color: #5eead4 !important; }
html.dark .text-teal-500 { color: #5eead4 !important; }
html.dark .border-teal-100 { border-color: rgba(20, 184, 166, .25) !important; }
html.dark .border-teal-200 { border-color: rgba(20, 184, 166, .35) !important; }
html.dark .border-teal-300 { border-color: rgba(20, 184, 166, .45) !important; }
html.dark .divide-teal-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(20, 184, 166, .25) !important; }
html.dark .divide-teal-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(20, 184, 166, .35) !important; }
html.dark .hover\:bg-teal-50:hover { background-color: #1c4650 !important; }
html.dark .hover\:bg-teal-100:hover { background-color: #1b545b !important; }
html.dark .hover\:bg-teal-200:hover { background-color: #1a5f64 !important; }
html.dark .hover\:text-teal-600:hover { color: #99f6e4 !important; }
html.dark .hover\:text-teal-700:hover { color: #99f6e4 !important; }
html.dark .hover\:text-teal-800:hover { color: #99f6e4 !important; }
html.dark .hover\:text-teal-900:hover { color: #ccfbf1 !important; }

/* cyan */
html.dark .bg-cyan-50 { background-color: #1b3d50 !important; }
html.dark .bg-cyan-100 { background-color: #19485d !important; }
html.dark .bg-cyan-200 { background-color: #175369 !important; }
html.dark .bg-cyan-300 { background-color: #155f75 !important; }
html.dark .text-cyan-950 { color: #a5f3fc !important; }
html.dark .text-cyan-900 { color: #a5f3fc !important; }
html.dark .text-cyan-800 { color: #a5f3fc !important; }
html.dark .text-cyan-700 { color: #a5f3fc !important; }
html.dark .text-cyan-600 { color: #67e8f9 !important; }
html.dark .text-cyan-500 { color: #67e8f9 !important; }
html.dark .border-cyan-100 { border-color: rgba(6, 182, 212, .25) !important; }
html.dark .border-cyan-200 { border-color: rgba(6, 182, 212, .35) !important; }
html.dark .border-cyan-300 { border-color: rgba(6, 182, 212, .45) !important; }
html.dark .divide-cyan-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(6, 182, 212, .25) !important; }
html.dark .divide-cyan-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(6, 182, 212, .35) !important; }
html.dark .hover\:bg-cyan-50:hover { background-color: #19455a !important; }
html.dark .hover\:bg-cyan-100:hover { background-color: #175369 !important; }
html.dark .hover\:bg-cyan-200:hover { background-color: #155f75 !important; }
html.dark .hover\:text-cyan-600:hover { color: #a5f3fc !important; }
html.dark .hover\:text-cyan-700:hover { color: #a5f3fc !important; }
html.dark .hover\:text-cyan-800:hover { color: #a5f3fc !important; }
html.dark .hover\:text-cyan-900:hover { color: #cffafe !important; }

/* sky */
html.dark .bg-sky-50 { background-color: #1c3a53 !important; }
html.dark .bg-sky-100 { background-color: #1a4461 !important; }
html.dark .bg-sky-200 { background-color: #194e6f !important; }
html.dark .bg-sky-300 { background-color: #18587d !important; }
html.dark .text-sky-950 { color: #bae6fd !important; }
html.dark .text-sky-900 { color: #bae6fd !important; }
html.dark .text-sky-800 { color: #bae6fd !important; }
html.dark .text-sky-700 { color: #bae6fd !important; }
html.dark .text-sky-600 { color: #7dd3fc !important; }
html.dark .text-sky-500 { color: #7dd3fc !important; }
html.dark .border-sky-100 { border-color: rgba(14, 165, 233, .25) !important; }
html.dark .border-sky-200 { border-color: rgba(14, 165, 233, .35) !important; }
html.dark .border-sky-300 { border-color: rgba(14, 165, 233, .45) !important; }
html.dark .divide-sky-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(14, 165, 233, .25) !important; }
html.dark .divide-sky-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(14, 165, 233, .35) !important; }
html.dark .hover\:bg-sky-50:hover { background-color: #1b425e !important; }
html.dark .hover\:bg-sky-100:hover { background-color: #194e6f !important; }
html.dark .hover\:bg-sky-200:hover { background-color: #18587d !important; }
html.dark .hover\:text-sky-600:hover { color: #bae6fd !important; }
html.dark .hover\:text-sky-700:hover { color: #bae6fd !important; }
html.dark .hover\:text-sky-800:hover { color: #bae6fd !important; }
html.dark .hover\:text-sky-900:hover { color: #e0f2fe !important; }

/* blue */
html.dark .bg-blue-50 { background-color: #223555 !important; }
html.dark .bg-blue-100 { background-color: #243d64 !important; }
html.dark .bg-blue-200 { background-color: #274473 !important; }
html.dark .bg-blue-300 { background-color: #294b82 !important; }
html.dark .text-blue-950 { color: #bfdbfe !important; }
html.dark .text-blue-900 { color: #bfdbfe !important; }
html.dark .text-blue-800 { color: #bfdbfe !important; }
html.dark .text-blue-700 { color: #bfdbfe !important; }
html.dark .text-blue-600 { color: #93c5fd !important; }
html.dark .text-blue-500 { color: #93c5fd !important; }
html.dark .border-blue-100 { border-color: rgba(59, 130, 246, .25) !important; }
html.dark .border-blue-200 { border-color: rgba(59, 130, 246, .35) !important; }
html.dark .border-blue-300 { border-color: rgba(59, 130, 246, .45) !important; }
html.dark .divide-blue-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(59, 130, 246, .25) !important; }
html.dark .divide-blue-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(59, 130, 246, .35) !important; }
html.dark .hover\:bg-blue-50:hover { background-color: #243b60 !important; }
html.dark .hover\:bg-blue-100:hover { background-color: #274473 !important; }
html.dark .hover\:bg-blue-200:hover { background-color: #294b82 !important; }
html.dark .hover\:text-blue-600:hover { color: #bfdbfe !important; }
html.dark .hover\:text-blue-700:hover { color: #bfdbfe !important; }
html.dark .hover\:text-blue-800:hover { color: #bfdbfe !important; }
html.dark .hover\:text-blue-900:hover { color: #dbeafe !important; }

/* indigo */
html.dark .bg-indigo-50 { background-color: #283254 !important; }
html.dark .bg-indigo-100 { background-color: #2d3663 !important; }
html.dark .bg-indigo-200 { background-color: #333b72 !important; }
html.dark .bg-indigo-300 { background-color: #384080 !important; }
html.dark .text-indigo-950 { color: #c7d2fe !important; }
html.dark .text-indigo-900 { color: #c7d2fe !important; }
html.dark .text-indigo-800 { color: #c7d2fe !important; }
html.dark .text-indigo-700 { color: #c7d2fe !important; }
html.dark .text-indigo-600 { color: #a5b4fc !important; }
html.dark .text-indigo-500 { color: #a5b4fc !important; }
html.dark .border-indigo-100 { border-color: rgba(99, 102, 241, .25) !important; }
html.dark .border-indigo-200 { border-color: rgba(99, 102, 241, .35) !important; }
html.dark .border-indigo-300 { border-color: rgba(99, 102, 241, .45) !important; }
html.dark .divide-indigo-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(99, 102, 241, .25) !important; }
html.dark .divide-indigo-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(99, 102, 241, .35) !important; }
html.dark .hover\:bg-indigo-50:hover { background-color: #2c355f !important; }
html.dark .hover\:bg-indigo-100:hover { background-color: #333b72 !important; }
html.dark .hover\:bg-indigo-200:hover { background-color: #384080 !important; }
html.dark .hover\:text-indigo-600:hover { color: #c7d2fe !important; }
html.dark .hover\:text-indigo-700:hover { color: #c7d2fe !important; }
html.dark .hover\:text-indigo-800:hover { color: #c7d2fe !important; }
html.dark .hover\:text-indigo-900:hover { color: #e0e7ff !important; }

/* violet */
html.dark .bg-violet-50 { background-color: #2d3055 !important; }
html.dark .bg-violet-100 { background-color: #363464 !important; }
html.dark .bg-violet-200 { background-color: #3f3873 !important; }
html.dark .bg-violet-300 { background-color: #473c82 !important; }
html.dark .text-violet-950 { color: #ddd6fe !important; }
html.dark .text-violet-900 { color: #ddd6fe !important; }
html.dark .text-violet-800 { color: #ddd6fe !important; }
html.dark .text-violet-700 { color: #ddd6fe !important; }
html.dark .text-violet-600 { color: #c4b5fd !important; }
html.dark .text-violet-500 { color: #c4b5fd !important; }
html.dark .border-violet-100 { border-color: rgba(139, 92, 246, .25) !important; }
html.dark .border-violet-200 { border-color: rgba(139, 92, 246, .35) !important; }
html.dark .border-violet-300 { border-color: rgba(139, 92, 246, .45) !important; }
html.dark .divide-violet-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(139, 92, 246, .25) !important; }
html.dark .divide-violet-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(139, 92, 246, .35) !important; }
html.dark .hover\:bg-violet-50:hover { background-color: #343360 !important; }
html.dark .hover\:bg-violet-100:hover { background-color: #3f3873 !important; }
html.dark .hover\:bg-violet-200:hover { background-color: #473c82 !important; }
html.dark .hover\:text-violet-600:hover { color: #ddd6fe !important; }
html.dark .hover\:text-violet-700:hover { color: #ddd6fe !important; }
html.dark .hover\:text-violet-800:hover { color: #ddd6fe !important; }
html.dark .hover\:text-violet-900:hover { color: #ede9fe !important; }

/* purple */
html.dark .bg-purple-50 { background-color: #312f55 !important; }
html.dark .bg-purple-100 { background-color: #3c3364 !important; }
html.dark .bg-purple-200 { background-color: #473673 !important; }
html.dark .bg-purple-300 { background-color: #523a82 !important; }
html.dark .text-purple-950 { color: #e9d5ff !important; }
html.dark .text-purple-900 { color: #e9d5ff !important; }
html.dark .text-purple-800 { color: #e9d5ff !important; }
html.dark .text-purple-700 { color: #e9d5ff !important; }
html.dark .text-purple-600 { color: #d8b4fe !important; }
html.dark .text-purple-500 { color: #d8b4fe !important; }
html.dark .border-purple-100 { border-color: rgba(168, 85, 247, .25) !important; }
html.dark .border-purple-200 { border-color: rgba(168, 85, 247, .35) !important; }
html.dark .border-purple-300 { border-color: rgba(168, 85, 247, .45) !important; }
html.dark .divide-purple-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(168, 85, 247, .25) !important; }
html.dark .divide-purple-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(168, 85, 247, .35) !important; }
html.dark .hover\:bg-purple-50:hover { background-color: #3a3261 !important; }
html.dark .hover\:bg-purple-100:hover { background-color: #473673 !important; }
html.dark .hover\:bg-purple-200:hover { background-color: #523a82 !important; }
html.dark .hover\:text-purple-600:hover { color: #e9d5ff !important; }
html.dark .hover\:text-purple-700:hover { color: #e9d5ff !important; }
html.dark .hover\:text-purple-800:hover { color: #e9d5ff !important; }
html.dark .hover\:text-purple-900:hover { color: #f3e8ff !important; }

/* fuchsia */
html.dark .bg-fuchsia-50 { background-color: #382d54 !important; }
html.dark .bg-fuchsia-100 { background-color: #472f63 !important; }
html.dark .bg-fuchsia-200 { background-color: #563271 !important; }
html.dark .bg-fuchsia-300 { background-color: #65347f !important; }
html.dark .text-fuchsia-950 { color: #f5d0fe !important; }
html.dark .text-fuchsia-900 { color: #f5d0fe !important; }
html.dark .text-fuchsia-800 { color: #f5d0fe !important; }
html.dark .text-fuchsia-700 { color: #f5d0fe !important; }
html.dark .text-fuchsia-600 { color: #f0abfc !important; }
html.dark .text-fuchsia-500 { color: #f0abfc !important; }
html.dark .border-fuchsia-100 { border-color: rgba(217, 70, 239, .25) !important; }
html.dark .border-fuchsia-200 { border-color: rgba(217, 70, 239, .35) !important; }
html.dark .border-fuchsia-300 { border-color: rgba(217, 70, 239, .45) !important; }
html.dark .divide-fuchsia-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(217, 70, 239, .25) !important; }
html.dark .divide-fuchsia-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(217, 70, 239, .35) !important; }
html.dark .hover\:bg-fuchsia-50:hover { background-color: #432f5f !important; }
html.dark .hover\:bg-fuchsia-100:hover { background-color: #563271 !important; }
html.dark .hover\:bg-fuchsia-200:hover { background-color: #65347f !important; }
html.dark .hover\:text-fuchsia-600:hover { color: #f5d0fe !important; }
html.dark .hover\:text-fuchsia-700:hover { color: #f5d0fe !important; }
html.dark .hover\:text-fuchsia-800:hover { color: #f5d0fe !important; }
html.dark .hover\:text-fuchsia-900:hover { color: #fae8ff !important; }

/* pink */
html.dark .bg-pink-50 { background-color: #3b2d48 !important; }
html.dark .bg-pink-100 { background-color: #4b3050 !important; }
html.dark .bg-pink-200 { background-color: #5c3257 !important; }
html.dark .bg-pink-300 { background-color: #6c355f !important; }
html.dark .text-pink-950 { color: #fbcfe8 !important; }
html.dark .text-pink-900 { color: #fbcfe8 !important; }
html.dark .text-pink-800 { color: #fbcfe8 !important; }
html.dark .text-pink-700 { color: #fbcfe8 !important; }
html.dark .text-pink-600 { color: #f9a8d4 !important; }
html.dark .text-pink-500 { color: #f9a8d4 !important; }
html.dark .border-pink-100 { border-color: rgba(236, 72, 153, .25) !important; }
html.dark .border-pink-200 { border-color: rgba(236, 72, 153, .35) !important; }
html.dark .border-pink-300 { border-color: rgba(236, 72, 153, .45) !important; }
html.dark .divide-pink-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(236, 72, 153, .25) !important; }
html.dark .divide-pink-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(236, 72, 153, .35) !important; }
html.dark .hover\:bg-pink-50:hover { background-color: #472f4e !important; }
html.dark .hover\:bg-pink-100:hover { background-color: #5c3257 !important; }
html.dark .hover\:bg-pink-200:hover { background-color: #6c355f !important; }
html.dark .hover\:text-pink-600:hover { color: #fbcfe8 !important; }
html.dark .hover\:text-pink-700:hover { color: #fbcfe8 !important; }
html.dark .hover\:text-pink-800:hover { color: #fbcfe8 !important; }
html.dark .hover\:text-pink-900:hover { color: #fce7f3 !important; }

/* rose */
html.dark .bg-rose-50 { background-color: #3c2c40 !important; }
html.dark .bg-rose-100 { background-color: #4d2e43 !important; }
html.dark .bg-rose-200 { background-color: #5e3046 !important; }
html.dark .bg-rose-300 { background-color: #6f3148 !important; }
html.dark .text-rose-950 { color: #fecdd3 !important; }
html.dark .text-rose-900 { color: #fecdd3 !important; }
html.dark .text-rose-800 { color: #fecdd3 !important; }
html.dark .text-rose-700 { color: #fecdd3 !important; }
html.dark .text-rose-600 { color: #fda4af !important; }
html.dark .text-rose-500 { color: #fda4af !important; }
html.dark .border-rose-100 { border-color: rgba(244, 63, 94, .25) !important; }
html.dark .border-rose-200 { border-color: rgba(244, 63, 94, .35) !important; }
html.dark .border-rose-300 { border-color: rgba(244, 63, 94, .45) !important; }
html.dark .divide-rose-100 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(244, 63, 94, .25) !important; }
html.dark .divide-rose-200 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(244, 63, 94, .35) !important; }
html.dark .hover\:bg-rose-50:hover { background-color: #492d42 !important; }
html.dark .hover\:bg-rose-100:hover { background-color: #5e3046 !important; }
html.dark .hover\:bg-rose-200:hover { background-color: #6f3148 !important; }
html.dark .hover\:text-rose-600:hover { color: #fecdd3 !important; }
html.dark .hover\:text-rose-700:hover { color: #fecdd3 !important; }
html.dark .hover\:text-rose-800:hover { color: #fecdd3 !important; }
html.dark .hover\:text-rose-900:hover { color: #ffe4e6 !important; }

/* ---------- 7. Полупрозрачные плашки (bg-indigo-50/40 и т.п.) ----------
   Такие классы Tailwind задаёт как rgb(... / 0.4) — на тёмном фоне
   получается светлое пятно, поэтому каждый вариант переопределён. */
html.dark .bg-slate-50\/20 { background-color: #253244 !important; }
html.dark .bg-slate-50\/25 { background-color: #253244 !important; }
html.dark .bg-slate-50\/30 { background-color: #253244 !important; }
html.dark .bg-slate-50\/40 { background-color: #253244 !important; }
html.dark .bg-slate-50\/50 { background-color: #253244 !important; }
html.dark .bg-slate-50\/60 { background-color: #253244 !important; }
html.dark .bg-slate-50\/70 { background-color: #253244 !important; }
html.dark .bg-slate-50\/75 { background-color: #253244 !important; }
html.dark .bg-slate-50\/80 { background-color: #253244 !important; }
html.dark .bg-slate-100\/20 { background-color: #2d3b50 !important; }
html.dark .bg-slate-100\/25 { background-color: #2d3b50 !important; }
html.dark .bg-slate-100\/30 { background-color: #2d3b50 !important; }
html.dark .bg-slate-100\/40 { background-color: #2d3b50 !important; }
html.dark .bg-slate-100\/50 { background-color: #2d3b50 !important; }
html.dark .bg-slate-100\/60 { background-color: #2d3b50 !important; }
html.dark .bg-slate-100\/70 { background-color: #2d3b50 !important; }
html.dark .bg-slate-100\/75 { background-color: #2d3b50 !important; }
html.dark .bg-slate-100\/80 { background-color: #2d3b50 !important; }
html.dark .bg-slate-200\/20 { background-color: #37455c !important; }
html.dark .bg-slate-200\/25 { background-color: #37455c !important; }
html.dark .bg-slate-200\/30 { background-color: #37455c !important; }
html.dark .bg-slate-200\/40 { background-color: #37455c !important; }
html.dark .bg-slate-200\/50 { background-color: #37455c !important; }
html.dark .bg-slate-200\/60 { background-color: #37455c !important; }
html.dark .bg-slate-200\/70 { background-color: #37455c !important; }
html.dark .bg-slate-200\/75 { background-color: #37455c !important; }
html.dark .bg-slate-200\/80 { background-color: #37455c !important; }
html.dark .bg-gray-50\/20 { background-color: #253244 !important; }
html.dark .bg-gray-50\/25 { background-color: #253244 !important; }
html.dark .bg-gray-50\/30 { background-color: #253244 !important; }
html.dark .bg-gray-50\/40 { background-color: #253244 !important; }
html.dark .bg-gray-50\/50 { background-color: #253244 !important; }
html.dark .bg-gray-50\/60 { background-color: #253244 !important; }
html.dark .bg-gray-50\/70 { background-color: #253244 !important; }
html.dark .bg-gray-50\/75 { background-color: #253244 !important; }
html.dark .bg-gray-50\/80 { background-color: #253244 !important; }
html.dark .bg-gray-100\/20 { background-color: #2d3b50 !important; }
html.dark .bg-gray-100\/25 { background-color: #2d3b50 !important; }
html.dark .bg-gray-100\/30 { background-color: #2d3b50 !important; }
html.dark .bg-gray-100\/40 { background-color: #2d3b50 !important; }
html.dark .bg-gray-100\/50 { background-color: #2d3b50 !important; }
html.dark .bg-gray-100\/60 { background-color: #2d3b50 !important; }
html.dark .bg-gray-100\/70 { background-color: #2d3b50 !important; }
html.dark .bg-gray-100\/75 { background-color: #2d3b50 !important; }
html.dark .bg-gray-100\/80 { background-color: #2d3b50 !important; }
html.dark .bg-gray-200\/20 { background-color: #37455c !important; }
html.dark .bg-gray-200\/25 { background-color: #37455c !important; }
html.dark .bg-gray-200\/30 { background-color: #37455c !important; }
html.dark .bg-gray-200\/40 { background-color: #37455c !important; }
html.dark .bg-gray-200\/50 { background-color: #37455c !important; }
html.dark .bg-gray-200\/60 { background-color: #37455c !important; }
html.dark .bg-gray-200\/70 { background-color: #37455c !important; }
html.dark .bg-gray-200\/75 { background-color: #37455c !important; }
html.dark .bg-gray-200\/80 { background-color: #37455c !important; }
html.dark .bg-zinc-50\/20 { background-color: #253244 !important; }
html.dark .bg-zinc-50\/25 { background-color: #253244 !important; }
html.dark .bg-zinc-50\/30 { background-color: #253244 !important; }
html.dark .bg-zinc-50\/40 { background-color: #253244 !important; }
html.dark .bg-zinc-50\/50 { background-color: #253244 !important; }
html.dark .bg-zinc-50\/60 { background-color: #253244 !important; }
html.dark .bg-zinc-50\/70 { background-color: #253244 !important; }
html.dark .bg-zinc-50\/75 { background-color: #253244 !important; }
html.dark .bg-zinc-50\/80 { background-color: #253244 !important; }
html.dark .bg-zinc-100\/20 { background-color: #2d3b50 !important; }
html.dark .bg-zinc-100\/25 { background-color: #2d3b50 !important; }
html.dark .bg-zinc-100\/30 { background-color: #2d3b50 !important; }
html.dark .bg-zinc-100\/40 { background-color: #2d3b50 !important; }
html.dark .bg-zinc-100\/50 { background-color: #2d3b50 !important; }
html.dark .bg-zinc-100\/60 { background-color: #2d3b50 !important; }
html.dark .bg-zinc-100\/70 { background-color: #2d3b50 !important; }
html.dark .bg-zinc-100\/75 { background-color: #2d3b50 !important; }
html.dark .bg-zinc-100\/80 { background-color: #2d3b50 !important; }
html.dark .bg-zinc-200\/20 { background-color: #37455c !important; }
html.dark .bg-zinc-200\/25 { background-color: #37455c !important; }
html.dark .bg-zinc-200\/30 { background-color: #37455c !important; }
html.dark .bg-zinc-200\/40 { background-color: #37455c !important; }
html.dark .bg-zinc-200\/50 { background-color: #37455c !important; }
html.dark .bg-zinc-200\/60 { background-color: #37455c !important; }
html.dark .bg-zinc-200\/70 { background-color: #37455c !important; }
html.dark .bg-zinc-200\/75 { background-color: #37455c !important; }
html.dark .bg-zinc-200\/80 { background-color: #37455c !important; }
html.dark .bg-neutral-50\/20 { background-color: #253244 !important; }
html.dark .bg-neutral-50\/25 { background-color: #253244 !important; }
html.dark .bg-neutral-50\/30 { background-color: #253244 !important; }
html.dark .bg-neutral-50\/40 { background-color: #253244 !important; }
html.dark .bg-neutral-50\/50 { background-color: #253244 !important; }
html.dark .bg-neutral-50\/60 { background-color: #253244 !important; }
html.dark .bg-neutral-50\/70 { background-color: #253244 !important; }
html.dark .bg-neutral-50\/75 { background-color: #253244 !important; }
html.dark .bg-neutral-50\/80 { background-color: #253244 !important; }
html.dark .bg-neutral-100\/20 { background-color: #2d3b50 !important; }
html.dark .bg-neutral-100\/25 { background-color: #2d3b50 !important; }
html.dark .bg-neutral-100\/30 { background-color: #2d3b50 !important; }
html.dark .bg-neutral-100\/40 { background-color: #2d3b50 !important; }
html.dark .bg-neutral-100\/50 { background-color: #2d3b50 !important; }
html.dark .bg-neutral-100\/60 { background-color: #2d3b50 !important; }
html.dark .bg-neutral-100\/70 { background-color: #2d3b50 !important; }
html.dark .bg-neutral-100\/75 { background-color: #2d3b50 !important; }
html.dark .bg-neutral-100\/80 { background-color: #2d3b50 !important; }
html.dark .bg-neutral-200\/20 { background-color: #37455c !important; }
html.dark .bg-neutral-200\/25 { background-color: #37455c !important; }
html.dark .bg-neutral-200\/30 { background-color: #37455c !important; }
html.dark .bg-neutral-200\/40 { background-color: #37455c !important; }
html.dark .bg-neutral-200\/50 { background-color: #37455c !important; }
html.dark .bg-neutral-200\/60 { background-color: #37455c !important; }
html.dark .bg-neutral-200\/70 { background-color: #37455c !important; }
html.dark .bg-neutral-200\/75 { background-color: #37455c !important; }
html.dark .bg-neutral-200\/80 { background-color: #37455c !important; }
html.dark .bg-stone-50\/20 { background-color: #253244 !important; }
html.dark .bg-stone-50\/25 { background-color: #253244 !important; }
html.dark .bg-stone-50\/30 { background-color: #253244 !important; }
html.dark .bg-stone-50\/40 { background-color: #253244 !important; }
html.dark .bg-stone-50\/50 { background-color: #253244 !important; }
html.dark .bg-stone-50\/60 { background-color: #253244 !important; }
html.dark .bg-stone-50\/70 { background-color: #253244 !important; }
html.dark .bg-stone-50\/75 { background-color: #253244 !important; }
html.dark .bg-stone-50\/80 { background-color: #253244 !important; }
html.dark .bg-stone-100\/20 { background-color: #2d3b50 !important; }
html.dark .bg-stone-100\/25 { background-color: #2d3b50 !important; }
html.dark .bg-stone-100\/30 { background-color: #2d3b50 !important; }
html.dark .bg-stone-100\/40 { background-color: #2d3b50 !important; }
html.dark .bg-stone-100\/50 { background-color: #2d3b50 !important; }
html.dark .bg-stone-100\/60 { background-color: #2d3b50 !important; }
html.dark .bg-stone-100\/70 { background-color: #2d3b50 !important; }
html.dark .bg-stone-100\/75 { background-color: #2d3b50 !important; }
html.dark .bg-stone-100\/80 { background-color: #2d3b50 !important; }
html.dark .bg-stone-200\/20 { background-color: #37455c !important; }
html.dark .bg-stone-200\/25 { background-color: #37455c !important; }
html.dark .bg-stone-200\/30 { background-color: #37455c !important; }
html.dark .bg-stone-200\/40 { background-color: #37455c !important; }
html.dark .bg-stone-200\/50 { background-color: #37455c !important; }
html.dark .bg-stone-200\/60 { background-color: #37455c !important; }
html.dark .bg-stone-200\/70 { background-color: #37455c !important; }
html.dark .bg-stone-200\/75 { background-color: #37455c !important; }
html.dark .bg-stone-200\/80 { background-color: #37455c !important; }
html.dark .bg-red-50\/20 { background-color: #3b2d3c !important; }
html.dark .bg-red-50\/25 { background-color: #3b2d3c !important; }
html.dark .bg-red-50\/30 { background-color: #3b2d3c !important; }
html.dark .bg-red-50\/40 { background-color: #3b2d3c !important; }
html.dark .bg-red-50\/50 { background-color: #3b2d3c !important; }
html.dark .bg-red-50\/60 { background-color: #3b2d3c !important; }
html.dark .bg-red-50\/70 { background-color: #3b2d3c !important; }
html.dark .bg-red-50\/75 { background-color: #3b2d3c !important; }
html.dark .bg-red-50\/80 { background-color: #3b2d3c !important; }
html.dark .bg-red-100\/20 { background-color: #4c2f3d !important; }
html.dark .bg-red-100\/25 { background-color: #4c2f3d !important; }
html.dark .bg-red-100\/30 { background-color: #4c2f3d !important; }
html.dark .bg-red-100\/40 { background-color: #4c2f3d !important; }
html.dark .bg-red-100\/50 { background-color: #4c2f3d !important; }
html.dark .bg-red-100\/60 { background-color: #4c2f3d !important; }
html.dark .bg-red-100\/70 { background-color: #4c2f3d !important; }
html.dark .bg-red-100\/75 { background-color: #4c2f3d !important; }
html.dark .bg-red-100\/80 { background-color: #4c2f3d !important; }
html.dark .bg-red-200\/20 { background-color: #5d313e !important; }
html.dark .bg-red-200\/25 { background-color: #5d313e !important; }
html.dark .bg-red-200\/30 { background-color: #5d313e !important; }
html.dark .bg-red-200\/40 { background-color: #5d313e !important; }
html.dark .bg-red-200\/50 { background-color: #5d313e !important; }
html.dark .bg-red-200\/60 { background-color: #5d313e !important; }
html.dark .bg-red-200\/70 { background-color: #5d313e !important; }
html.dark .bg-red-200\/75 { background-color: #5d313e !important; }
html.dark .bg-red-200\/80 { background-color: #5d313e !important; }
html.dark .bg-red-300\/20 { background-color: #6d333e !important; }
html.dark .bg-red-300\/25 { background-color: #6d333e !important; }
html.dark .bg-red-300\/30 { background-color: #6d333e !important; }
html.dark .bg-red-300\/40 { background-color: #6d333e !important; }
html.dark .bg-red-300\/50 { background-color: #6d333e !important; }
html.dark .bg-red-300\/60 { background-color: #6d333e !important; }
html.dark .bg-red-300\/70 { background-color: #6d333e !important; }
html.dark .bg-red-300\/75 { background-color: #6d333e !important; }
html.dark .bg-red-300\/80 { background-color: #6d333e !important; }
html.dark .bg-orange-50\/20 { background-color: #3d3336 !important; }
html.dark .bg-orange-50\/25 { background-color: #3d3336 !important; }
html.dark .bg-orange-50\/30 { background-color: #3d3336 !important; }
html.dark .bg-orange-50\/40 { background-color: #3d3336 !important; }
html.dark .bg-orange-50\/50 { background-color: #3d3336 !important; }
html.dark .bg-orange-50\/60 { background-color: #3d3336 !important; }
html.dark .bg-orange-50\/70 { background-color: #3d3336 !important; }
html.dark .bg-orange-50\/75 { background-color: #3d3336 !important; }
html.dark .bg-orange-50\/80 { background-color: #3d3336 !important; }
html.dark .bg-orange-100\/20 { background-color: #4e3933 !important; }
html.dark .bg-orange-100\/25 { background-color: #4e3933 !important; }
html.dark .bg-orange-100\/30 { background-color: #4e3933 !important; }
html.dark .bg-orange-100\/40 { background-color: #4e3933 !important; }
html.dark .bg-orange-100\/50 { background-color: #4e3933 !important; }
html.dark .bg-orange-100\/60 { background-color: #4e3933 !important; }
html.dark .bg-orange-100\/70 { background-color: #4e3933 !important; }
html.dark .bg-orange-100\/75 { background-color: #4e3933 !important; }
html.dark .bg-orange-100\/80 { background-color: #4e3933 !important; }
html.dark .bg-orange-200\/20 { background-color: #603f30 !important; }
html.dark .bg-orange-200\/25 { background-color: #603f30 !important; }
html.dark .bg-orange-200\/30 { background-color: #603f30 !important; }
html.dark .bg-orange-200\/40 { background-color: #603f30 !important; }
html.dark .bg-orange-200\/50 { background-color: #603f30 !important; }
html.dark .bg-orange-200\/60 { background-color: #603f30 !important; }
html.dark .bg-orange-200\/70 { background-color: #603f30 !important; }
html.dark .bg-orange-200\/75 { background-color: #603f30 !important; }
html.dark .bg-orange-200\/80 { background-color: #603f30 !important; }
html.dark .bg-orange-300\/20 { background-color: #71452d !important; }
html.dark .bg-orange-300\/25 { background-color: #71452d !important; }
html.dark .bg-orange-300\/30 { background-color: #71452d !important; }
html.dark .bg-orange-300\/40 { background-color: #71452d !important; }
html.dark .bg-orange-300\/50 { background-color: #71452d !important; }
html.dark .bg-orange-300\/60 { background-color: #71452d !important; }
html.dark .bg-orange-300\/70 { background-color: #71452d !important; }
html.dark .bg-orange-300\/75 { background-color: #71452d !important; }
html.dark .bg-orange-300\/80 { background-color: #71452d !important; }
html.dark .bg-amber-50\/20 { background-color: #3c3934 !important; }
html.dark .bg-amber-50\/25 { background-color: #3c3934 !important; }
html.dark .bg-amber-50\/30 { background-color: #3c3934 !important; }
html.dark .bg-amber-50\/40 { background-color: #3c3934 !important; }
html.dark .bg-amber-50\/50 { background-color: #3c3934 !important; }
html.dark .bg-amber-50\/60 { background-color: #3c3934 !important; }
html.dark .bg-amber-50\/70 { background-color: #3c3934 !important; }
html.dark .bg-amber-50\/75 { background-color: #3c3934 !important; }
html.dark .bg-amber-50\/80 { background-color: #3c3934 !important; }
html.dark .bg-amber-100\/20 { background-color: #4d4330 !important; }
html.dark .bg-amber-100\/25 { background-color: #4d4330 !important; }
html.dark .bg-amber-100\/30 { background-color: #4d4330 !important; }
html.dark .bg-amber-100\/40 { background-color: #4d4330 !important; }
html.dark .bg-amber-100\/50 { background-color: #4d4330 !important; }
html.dark .bg-amber-100\/60 { background-color: #4d4330 !important; }
html.dark .bg-amber-100\/70 { background-color: #4d4330 !important; }
html.dark .bg-amber-100\/75 { background-color: #4d4330 !important; }
html.dark .bg-amber-100\/80 { background-color: #4d4330 !important; }
html.dark .bg-amber-200\/20 { background-color: #5e4c2d !important; }
html.dark .bg-amber-200\/25 { background-color: #5e4c2d !important; }
html.dark .bg-amber-200\/30 { background-color: #5e4c2d !important; }
html.dark .bg-amber-200\/40 { background-color: #5e4c2d !important; }
html.dark .bg-amber-200\/50 { background-color: #5e4c2d !important; }
html.dark .bg-amber-200\/60 { background-color: #5e4c2d !important; }
html.dark .bg-amber-200\/70 { background-color: #5e4c2d !important; }
html.dark .bg-amber-200\/75 { background-color: #5e4c2d !important; }
html.dark .bg-amber-200\/80 { background-color: #5e4c2d !important; }
html.dark .bg-amber-300\/20 { background-color: #705529 !important; }
html.dark .bg-amber-300\/25 { background-color: #705529 !important; }
html.dark .bg-amber-300\/30 { background-color: #705529 !important; }
html.dark .bg-amber-300\/40 { background-color: #705529 !important; }
html.dark .bg-amber-300\/50 { background-color: #705529 !important; }
html.dark .bg-amber-300\/60 { background-color: #705529 !important; }
html.dark .bg-amber-300\/70 { background-color: #705529 !important; }
html.dark .bg-amber-300\/75 { background-color: #705529 !important; }
html.dark .bg-amber-300\/80 { background-color: #705529 !important; }
html.dark .bg-yellow-50\/20 { background-color: #3b3c34 !important; }
html.dark .bg-yellow-50\/25 { background-color: #3b3c34 !important; }
html.dark .bg-yellow-50\/30 { background-color: #3b3c34 !important; }
html.dark .bg-yellow-50\/40 { background-color: #3b3c34 !important; }
html.dark .bg-yellow-50\/50 { background-color: #3b3c34 !important; }
html.dark .bg-yellow-50\/60 { background-color: #3b3c34 !important; }
html.dark .bg-yellow-50\/70 { background-color: #3b3c34 !important; }
html.dark .bg-yellow-50\/75 { background-color: #3b3c34 !important; }
html.dark .bg-yellow-50\/80 { background-color: #3b3c34 !important; }
html.dark .bg-yellow-100\/20 { background-color: #4b4730 !important; }
html.dark .bg-yellow-100\/25 { background-color: #4b4730 !important; }
html.dark .bg-yellow-100\/30 { background-color: #4b4730 !important; }
html.dark .bg-yellow-100\/40 { background-color: #4b4730 !important; }
html.dark .bg-yellow-100\/50 { background-color: #4b4730 !important; }
html.dark .bg-yellow-100\/60 { background-color: #4b4730 !important; }
html.dark .bg-yellow-100\/70 { background-color: #4b4730 !important; }
html.dark .bg-yellow-100\/75 { background-color: #4b4730 !important; }
html.dark .bg-yellow-100\/80 { background-color: #4b4730 !important; }
html.dark .bg-yellow-200\/20 { background-color: #5b522c !important; }
html.dark .bg-yellow-200\/25 { background-color: #5b522c !important; }
html.dark .bg-yellow-200\/30 { background-color: #5b522c !important; }
html.dark .bg-yellow-200\/40 { background-color: #5b522c !important; }
html.dark .bg-yellow-200\/50 { background-color: #5b522c !important; }
html.dark .bg-yellow-200\/60 { background-color: #5b522c !important; }
html.dark .bg-yellow-200\/70 { background-color: #5b522c !important; }
html.dark .bg-yellow-200\/75 { background-color: #5b522c !important; }
html.dark .bg-yellow-200\/80 { background-color: #5b522c !important; }
html.dark .bg-yellow-300\/20 { background-color: #6c5d28 !important; }
html.dark .bg-yellow-300\/25 { background-color: #6c5d28 !important; }
html.dark .bg-yellow-300\/30 { background-color: #6c5d28 !important; }
html.dark .bg-yellow-300\/40 { background-color: #6c5d28 !important; }
html.dark .bg-yellow-300\/50 { background-color: #6c5d28 !important; }
html.dark .bg-yellow-300\/60 { background-color: #6c5d28 !important; }
html.dark .bg-yellow-300\/70 { background-color: #6c5d28 !important; }
html.dark .bg-yellow-300\/75 { background-color: #6c5d28 !important; }
html.dark .bg-yellow-300\/80 { background-color: #6c5d28 !important; }
html.dark .bg-lime-50\/20 { background-color: #2c4036 !important; }
html.dark .bg-lime-50\/25 { background-color: #2c4036 !important; }
html.dark .bg-lime-50\/30 { background-color: #2c4036 !important; }
html.dark .bg-lime-50\/40 { background-color: #2c4036 !important; }
html.dark .bg-lime-50\/50 { background-color: #2c4036 !important; }
html.dark .bg-lime-50\/60 { background-color: #2c4036 !important; }
html.dark .bg-lime-50\/70 { background-color: #2c4036 !important; }
html.dark .bg-lime-50\/75 { background-color: #2c4036 !important; }
html.dark .bg-lime-50\/80 { background-color: #2c4036 !important; }
html.dark .bg-lime-100\/20 { background-color: #344d33 !important; }
html.dark .bg-lime-100\/25 { background-color: #344d33 !important; }
html.dark .bg-lime-100\/30 { background-color: #344d33 !important; }
html.dark .bg-lime-100\/40 { background-color: #344d33 !important; }
html.dark .bg-lime-100\/50 { background-color: #344d33 !important; }
html.dark .bg-lime-100\/60 { background-color: #344d33 !important; }
html.dark .bg-lime-100\/70 { background-color: #344d33 !important; }
html.dark .bg-lime-100\/75 { background-color: #344d33 !important; }
html.dark .bg-lime-100\/80 { background-color: #344d33 !important; }
html.dark .bg-lime-200\/20 { background-color: #3d5a30 !important; }
html.dark .bg-lime-200\/25 { background-color: #3d5a30 !important; }
html.dark .bg-lime-200\/30 { background-color: #3d5a30 !important; }
html.dark .bg-lime-200\/40 { background-color: #3d5a30 !important; }
html.dark .bg-lime-200\/50 { background-color: #3d5a30 !important; }
html.dark .bg-lime-200\/60 { background-color: #3d5a30 !important; }
html.dark .bg-lime-200\/70 { background-color: #3d5a30 !important; }
html.dark .bg-lime-200\/75 { background-color: #3d5a30 !important; }
html.dark .bg-lime-200\/80 { background-color: #3d5a30 !important; }
html.dark .bg-lime-300\/20 { background-color: #45672d !important; }
html.dark .bg-lime-300\/25 { background-color: #45672d !important; }
html.dark .bg-lime-300\/30 { background-color: #45672d !important; }
html.dark .bg-lime-300\/40 { background-color: #45672d !important; }
html.dark .bg-lime-300\/50 { background-color: #45672d !important; }
html.dark .bg-lime-300\/60 { background-color: #45672d !important; }
html.dark .bg-lime-300\/70 { background-color: #45672d !important; }
html.dark .bg-lime-300\/75 { background-color: #45672d !important; }
html.dark .bg-lime-300\/80 { background-color: #45672d !important; }
html.dark .bg-green-50\/20 { background-color: #1f3f40 !important; }
html.dark .bg-green-50\/25 { background-color: #1f3f40 !important; }
html.dark .bg-green-50\/30 { background-color: #1f3f40 !important; }
html.dark .bg-green-50\/40 { background-color: #1f3f40 !important; }
html.dark .bg-green-50\/50 { background-color: #1f3f40 !important; }
html.dark .bg-green-50\/60 { background-color: #1f3f40 !important; }
html.dark .bg-green-50\/70 { background-color: #1f3f40 !important; }
html.dark .bg-green-50\/75 { background-color: #1f3f40 !important; }
html.dark .bg-green-50\/80 { background-color: #1f3f40 !important; }
html.dark .bg-green-100\/20 { background-color: #1f4b43 !important; }
html.dark .bg-green-100\/25 { background-color: #1f4b43 !important; }
html.dark .bg-green-100\/30 { background-color: #1f4b43 !important; }
html.dark .bg-green-100\/40 { background-color: #1f4b43 !important; }
html.dark .bg-green-100\/50 { background-color: #1f4b43 !important; }
html.dark .bg-green-100\/60 { background-color: #1f4b43 !important; }
html.dark .bg-green-100\/70 { background-color: #1f4b43 !important; }
html.dark .bg-green-100\/75 { background-color: #1f4b43 !important; }
html.dark .bg-green-100\/80 { background-color: #1f4b43 !important; }
html.dark .bg-green-200\/20 { background-color: #1f5846 !important; }
html.dark .bg-green-200\/25 { background-color: #1f5846 !important; }
html.dark .bg-green-200\/30 { background-color: #1f5846 !important; }
html.dark .bg-green-200\/40 { background-color: #1f5846 !important; }
html.dark .bg-green-200\/50 { background-color: #1f5846 !important; }
html.dark .bg-green-200\/60 { background-color: #1f5846 !important; }
html.dark .bg-green-200\/70 { background-color: #1f5846 !important; }
html.dark .bg-green-200\/75 { background-color: #1f5846 !important; }
html.dark .bg-green-200\/80 { background-color: #1f5846 !important; }
html.dark .bg-green-300\/20 { background-color: #206448 !important; }
html.dark .bg-green-300\/25 { background-color: #206448 !important; }
html.dark .bg-green-300\/30 { background-color: #206448 !important; }
html.dark .bg-green-300\/40 { background-color: #206448 !important; }
html.dark .bg-green-300\/50 { background-color: #206448 !important; }
html.dark .bg-green-300\/60 { background-color: #206448 !important; }
html.dark .bg-green-300\/70 { background-color: #206448 !important; }
html.dark .bg-green-300\/75 { background-color: #206448 !important; }
html.dark .bg-green-300\/80 { background-color: #206448 !important; }
html.dark .bg-emerald-50\/20 { background-color: #1c3d45 !important; }
html.dark .bg-emerald-50\/25 { background-color: #1c3d45 !important; }
html.dark .bg-emerald-50\/30 { background-color: #1c3d45 !important; }
html.dark .bg-emerald-50\/40 { background-color: #1c3d45 !important; }
html.dark .bg-emerald-50\/50 { background-color: #1c3d45 !important; }
html.dark .bg-emerald-50\/60 { background-color: #1c3d45 !important; }
html.dark .bg-emerald-50\/70 { background-color: #1c3d45 !important; }
html.dark .bg-emerald-50\/75 { background-color: #1c3d45 !important; }
html.dark .bg-emerald-50\/80 { background-color: #1c3d45 !important; }
html.dark .bg-emerald-100\/20 { background-color: #1b494a !important; }
html.dark .bg-emerald-100\/25 { background-color: #1b494a !important; }
html.dark .bg-emerald-100\/30 { background-color: #1b494a !important; }
html.dark .bg-emerald-100\/40 { background-color: #1b494a !important; }
html.dark .bg-emerald-100\/50 { background-color: #1b494a !important; }
html.dark .bg-emerald-100\/60 { background-color: #1b494a !important; }
html.dark .bg-emerald-100\/70 { background-color: #1b494a !important; }
html.dark .bg-emerald-100\/75 { background-color: #1b494a !important; }
html.dark .bg-emerald-100\/80 { background-color: #1b494a !important; }
html.dark .bg-emerald-200\/20 { background-color: #1a5450 !important; }
html.dark .bg-emerald-200\/25 { background-color: #1a5450 !important; }
html.dark .bg-emerald-200\/30 { background-color: #1a5450 !important; }
html.dark .bg-emerald-200\/40 { background-color: #1a5450 !important; }
html.dark .bg-emerald-200\/50 { background-color: #1a5450 !important; }
html.dark .bg-emerald-200\/60 { background-color: #1a5450 !important; }
html.dark .bg-emerald-200\/70 { background-color: #1a5450 !important; }
html.dark .bg-emerald-200\/75 { background-color: #1a5450 !important; }
html.dark .bg-emerald-200\/80 { background-color: #1a5450 !important; }
html.dark .bg-emerald-300\/20 { background-color: #196056 !important; }
html.dark .bg-emerald-300\/25 { background-color: #196056 !important; }
html.dark .bg-emerald-300\/30 { background-color: #196056 !important; }
html.dark .bg-emerald-300\/40 { background-color: #196056 !important; }
html.dark .bg-emerald-300\/50 { background-color: #196056 !important; }
html.dark .bg-emerald-300\/60 { background-color: #196056 !important; }
html.dark .bg-emerald-300\/70 { background-color: #196056 !important; }
html.dark .bg-emerald-300\/75 { background-color: #196056 !important; }
html.dark .bg-emerald-300\/80 { background-color: #196056 !important; }
html.dark .bg-teal-50\/20 { background-color: #1d3d4a !important; }
html.dark .bg-teal-50\/25 { background-color: #1d3d4a !important; }
html.dark .bg-teal-50\/30 { background-color: #1d3d4a !important; }
html.dark .bg-teal-50\/40 { background-color: #1d3d4a !important; }
html.dark .bg-teal-50\/50 { background-color: #1d3d4a !important; }
html.dark .bg-teal-50\/60 { background-color: #1d3d4a !important; }
html.dark .bg-teal-50\/70 { background-color: #1d3d4a !important; }
html.dark .bg-teal-50\/75 { background-color: #1d3d4a !important; }
html.dark .bg-teal-50\/80 { background-color: #1d3d4a !important; }
html.dark .bg-teal-100\/20 { background-color: #1c4853 !important; }
html.dark .bg-teal-100\/25 { background-color: #1c4853 !important; }
html.dark .bg-teal-100\/30 { background-color: #1c4853 !important; }
html.dark .bg-teal-100\/40 { background-color: #1c4853 !important; }
html.dark .bg-teal-100\/50 { background-color: #1c4853 !important; }
html.dark .bg-teal-100\/60 { background-color: #1c4853 !important; }
html.dark .bg-teal-100\/70 { background-color: #1c4853 !important; }
html.dark .bg-teal-100\/75 { background-color: #1c4853 !important; }
html.dark .bg-teal-100\/80 { background-color: #1c4853 !important; }
html.dark .bg-teal-200\/20 { background-color: #1b545b !important; }
html.dark .bg-teal-200\/25 { background-color: #1b545b !important; }
html.dark .bg-teal-200\/30 { background-color: #1b545b !important; }
html.dark .bg-teal-200\/40 { background-color: #1b545b !important; }
html.dark .bg-teal-200\/50 { background-color: #1b545b !important; }
html.dark .bg-teal-200\/60 { background-color: #1b545b !important; }
html.dark .bg-teal-200\/70 { background-color: #1b545b !important; }
html.dark .bg-teal-200\/75 { background-color: #1b545b !important; }
html.dark .bg-teal-200\/80 { background-color: #1b545b !important; }
html.dark .bg-teal-300\/20 { background-color: #1a5f64 !important; }
html.dark .bg-teal-300\/25 { background-color: #1a5f64 !important; }
html.dark .bg-teal-300\/30 { background-color: #1a5f64 !important; }
html.dark .bg-teal-300\/40 { background-color: #1a5f64 !important; }
html.dark .bg-teal-300\/50 { background-color: #1a5f64 !important; }
html.dark .bg-teal-300\/60 { background-color: #1a5f64 !important; }
html.dark .bg-teal-300\/70 { background-color: #1a5f64 !important; }
html.dark .bg-teal-300\/75 { background-color: #1a5f64 !important; }
html.dark .bg-teal-300\/80 { background-color: #1a5f64 !important; }
html.dark .bg-cyan-50\/20 { background-color: #1b3d50 !important; }
html.dark .bg-cyan-50\/25 { background-color: #1b3d50 !important; }
html.dark .bg-cyan-50\/30 { background-color: #1b3d50 !important; }
html.dark .bg-cyan-50\/40 { background-color: #1b3d50 !important; }
html.dark .bg-cyan-50\/50 { background-color: #1b3d50 !important; }
html.dark .bg-cyan-50\/60 { background-color: #1b3d50 !important; }
html.dark .bg-cyan-50\/70 { background-color: #1b3d50 !important; }
html.dark .bg-cyan-50\/75 { background-color: #1b3d50 !important; }
html.dark .bg-cyan-50\/80 { background-color: #1b3d50 !important; }
html.dark .bg-cyan-100\/20 { background-color: #19485d !important; }
html.dark .bg-cyan-100\/25 { background-color: #19485d !important; }
html.dark .bg-cyan-100\/30 { background-color: #19485d !important; }
html.dark .bg-cyan-100\/40 { background-color: #19485d !important; }
html.dark .bg-cyan-100\/50 { background-color: #19485d !important; }
html.dark .bg-cyan-100\/60 { background-color: #19485d !important; }
html.dark .bg-cyan-100\/70 { background-color: #19485d !important; }
html.dark .bg-cyan-100\/75 { background-color: #19485d !important; }
html.dark .bg-cyan-100\/80 { background-color: #19485d !important; }
html.dark .bg-cyan-200\/20 { background-color: #175369 !important; }
html.dark .bg-cyan-200\/25 { background-color: #175369 !important; }
html.dark .bg-cyan-200\/30 { background-color: #175369 !important; }
html.dark .bg-cyan-200\/40 { background-color: #175369 !important; }
html.dark .bg-cyan-200\/50 { background-color: #175369 !important; }
html.dark .bg-cyan-200\/60 { background-color: #175369 !important; }
html.dark .bg-cyan-200\/70 { background-color: #175369 !important; }
html.dark .bg-cyan-200\/75 { background-color: #175369 !important; }
html.dark .bg-cyan-200\/80 { background-color: #175369 !important; }
html.dark .bg-cyan-300\/20 { background-color: #155f75 !important; }
html.dark .bg-cyan-300\/25 { background-color: #155f75 !important; }
html.dark .bg-cyan-300\/30 { background-color: #155f75 !important; }
html.dark .bg-cyan-300\/40 { background-color: #155f75 !important; }
html.dark .bg-cyan-300\/50 { background-color: #155f75 !important; }
html.dark .bg-cyan-300\/60 { background-color: #155f75 !important; }
html.dark .bg-cyan-300\/70 { background-color: #155f75 !important; }
html.dark .bg-cyan-300\/75 { background-color: #155f75 !important; }
html.dark .bg-cyan-300\/80 { background-color: #155f75 !important; }
html.dark .bg-sky-50\/20 { background-color: #1c3a53 !important; }
html.dark .bg-sky-50\/25 { background-color: #1c3a53 !important; }
html.dark .bg-sky-50\/30 { background-color: #1c3a53 !important; }
html.dark .bg-sky-50\/40 { background-color: #1c3a53 !important; }
html.dark .bg-sky-50\/50 { background-color: #1c3a53 !important; }
html.dark .bg-sky-50\/60 { background-color: #1c3a53 !important; }
html.dark .bg-sky-50\/70 { background-color: #1c3a53 !important; }
html.dark .bg-sky-50\/75 { background-color: #1c3a53 !important; }
html.dark .bg-sky-50\/80 { background-color: #1c3a53 !important; }
html.dark .bg-sky-100\/20 { background-color: #1a4461 !important; }
html.dark .bg-sky-100\/25 { background-color: #1a4461 !important; }
html.dark .bg-sky-100\/30 { background-color: #1a4461 !important; }
html.dark .bg-sky-100\/40 { background-color: #1a4461 !important; }
html.dark .bg-sky-100\/50 { background-color: #1a4461 !important; }
html.dark .bg-sky-100\/60 { background-color: #1a4461 !important; }
html.dark .bg-sky-100\/70 { background-color: #1a4461 !important; }
html.dark .bg-sky-100\/75 { background-color: #1a4461 !important; }
html.dark .bg-sky-100\/80 { background-color: #1a4461 !important; }
html.dark .bg-sky-200\/20 { background-color: #194e6f !important; }
html.dark .bg-sky-200\/25 { background-color: #194e6f !important; }
html.dark .bg-sky-200\/30 { background-color: #194e6f !important; }
html.dark .bg-sky-200\/40 { background-color: #194e6f !important; }
html.dark .bg-sky-200\/50 { background-color: #194e6f !important; }
html.dark .bg-sky-200\/60 { background-color: #194e6f !important; }
html.dark .bg-sky-200\/70 { background-color: #194e6f !important; }
html.dark .bg-sky-200\/75 { background-color: #194e6f !important; }
html.dark .bg-sky-200\/80 { background-color: #194e6f !important; }
html.dark .bg-sky-300\/20 { background-color: #18587d !important; }
html.dark .bg-sky-300\/25 { background-color: #18587d !important; }
html.dark .bg-sky-300\/30 { background-color: #18587d !important; }
html.dark .bg-sky-300\/40 { background-color: #18587d !important; }
html.dark .bg-sky-300\/50 { background-color: #18587d !important; }
html.dark .bg-sky-300\/60 { background-color: #18587d !important; }
html.dark .bg-sky-300\/70 { background-color: #18587d !important; }
html.dark .bg-sky-300\/75 { background-color: #18587d !important; }
html.dark .bg-sky-300\/80 { background-color: #18587d !important; }
html.dark .bg-blue-50\/20 { background-color: #223555 !important; }
html.dark .bg-blue-50\/25 { background-color: #223555 !important; }
html.dark .bg-blue-50\/30 { background-color: #223555 !important; }
html.dark .bg-blue-50\/40 { background-color: #223555 !important; }
html.dark .bg-blue-50\/50 { background-color: #223555 !important; }
html.dark .bg-blue-50\/60 { background-color: #223555 !important; }
html.dark .bg-blue-50\/70 { background-color: #223555 !important; }
html.dark .bg-blue-50\/75 { background-color: #223555 !important; }
html.dark .bg-blue-50\/80 { background-color: #223555 !important; }
html.dark .bg-blue-100\/20 { background-color: #243d64 !important; }
html.dark .bg-blue-100\/25 { background-color: #243d64 !important; }
html.dark .bg-blue-100\/30 { background-color: #243d64 !important; }
html.dark .bg-blue-100\/40 { background-color: #243d64 !important; }
html.dark .bg-blue-100\/50 { background-color: #243d64 !important; }
html.dark .bg-blue-100\/60 { background-color: #243d64 !important; }
html.dark .bg-blue-100\/70 { background-color: #243d64 !important; }
html.dark .bg-blue-100\/75 { background-color: #243d64 !important; }
html.dark .bg-blue-100\/80 { background-color: #243d64 !important; }
html.dark .bg-blue-200\/20 { background-color: #274473 !important; }
html.dark .bg-blue-200\/25 { background-color: #274473 !important; }
html.dark .bg-blue-200\/30 { background-color: #274473 !important; }
html.dark .bg-blue-200\/40 { background-color: #274473 !important; }
html.dark .bg-blue-200\/50 { background-color: #274473 !important; }
html.dark .bg-blue-200\/60 { background-color: #274473 !important; }
html.dark .bg-blue-200\/70 { background-color: #274473 !important; }
html.dark .bg-blue-200\/75 { background-color: #274473 !important; }
html.dark .bg-blue-200\/80 { background-color: #274473 !important; }
html.dark .bg-blue-300\/20 { background-color: #294b82 !important; }
html.dark .bg-blue-300\/25 { background-color: #294b82 !important; }
html.dark .bg-blue-300\/30 { background-color: #294b82 !important; }
html.dark .bg-blue-300\/40 { background-color: #294b82 !important; }
html.dark .bg-blue-300\/50 { background-color: #294b82 !important; }
html.dark .bg-blue-300\/60 { background-color: #294b82 !important; }
html.dark .bg-blue-300\/70 { background-color: #294b82 !important; }
html.dark .bg-blue-300\/75 { background-color: #294b82 !important; }
html.dark .bg-blue-300\/80 { background-color: #294b82 !important; }
html.dark .bg-indigo-50\/20 { background-color: #283254 !important; }
html.dark .bg-indigo-50\/25 { background-color: #283254 !important; }
html.dark .bg-indigo-50\/30 { background-color: #283254 !important; }
html.dark .bg-indigo-50\/40 { background-color: #283254 !important; }
html.dark .bg-indigo-50\/50 { background-color: #283254 !important; }
html.dark .bg-indigo-50\/60 { background-color: #283254 !important; }
html.dark .bg-indigo-50\/70 { background-color: #283254 !important; }
html.dark .bg-indigo-50\/75 { background-color: #283254 !important; }
html.dark .bg-indigo-50\/80 { background-color: #283254 !important; }
html.dark .bg-indigo-100\/20 { background-color: #2d3663 !important; }
html.dark .bg-indigo-100\/25 { background-color: #2d3663 !important; }
html.dark .bg-indigo-100\/30 { background-color: #2d3663 !important; }
html.dark .bg-indigo-100\/40 { background-color: #2d3663 !important; }
html.dark .bg-indigo-100\/50 { background-color: #2d3663 !important; }
html.dark .bg-indigo-100\/60 { background-color: #2d3663 !important; }
html.dark .bg-indigo-100\/70 { background-color: #2d3663 !important; }
html.dark .bg-indigo-100\/75 { background-color: #2d3663 !important; }
html.dark .bg-indigo-100\/80 { background-color: #2d3663 !important; }
html.dark .bg-indigo-200\/20 { background-color: #333b72 !important; }
html.dark .bg-indigo-200\/25 { background-color: #333b72 !important; }
html.dark .bg-indigo-200\/30 { background-color: #333b72 !important; }
html.dark .bg-indigo-200\/40 { background-color: #333b72 !important; }
html.dark .bg-indigo-200\/50 { background-color: #333b72 !important; }
html.dark .bg-indigo-200\/60 { background-color: #333b72 !important; }
html.dark .bg-indigo-200\/70 { background-color: #333b72 !important; }
html.dark .bg-indigo-200\/75 { background-color: #333b72 !important; }
html.dark .bg-indigo-200\/80 { background-color: #333b72 !important; }
html.dark .bg-indigo-300\/20 { background-color: #384080 !important; }
html.dark .bg-indigo-300\/25 { background-color: #384080 !important; }
html.dark .bg-indigo-300\/30 { background-color: #384080 !important; }
html.dark .bg-indigo-300\/40 { background-color: #384080 !important; }
html.dark .bg-indigo-300\/50 { background-color: #384080 !important; }
html.dark .bg-indigo-300\/60 { background-color: #384080 !important; }
html.dark .bg-indigo-300\/70 { background-color: #384080 !important; }
html.dark .bg-indigo-300\/75 { background-color: #384080 !important; }
html.dark .bg-indigo-300\/80 { background-color: #384080 !important; }
html.dark .bg-violet-50\/20 { background-color: #2d3055 !important; }
html.dark .bg-violet-50\/25 { background-color: #2d3055 !important; }
html.dark .bg-violet-50\/30 { background-color: #2d3055 !important; }
html.dark .bg-violet-50\/40 { background-color: #2d3055 !important; }
html.dark .bg-violet-50\/50 { background-color: #2d3055 !important; }
html.dark .bg-violet-50\/60 { background-color: #2d3055 !important; }
html.dark .bg-violet-50\/70 { background-color: #2d3055 !important; }
html.dark .bg-violet-50\/75 { background-color: #2d3055 !important; }
html.dark .bg-violet-50\/80 { background-color: #2d3055 !important; }
html.dark .bg-violet-100\/20 { background-color: #363464 !important; }
html.dark .bg-violet-100\/25 { background-color: #363464 !important; }
html.dark .bg-violet-100\/30 { background-color: #363464 !important; }
html.dark .bg-violet-100\/40 { background-color: #363464 !important; }
html.dark .bg-violet-100\/50 { background-color: #363464 !important; }
html.dark .bg-violet-100\/60 { background-color: #363464 !important; }
html.dark .bg-violet-100\/70 { background-color: #363464 !important; }
html.dark .bg-violet-100\/75 { background-color: #363464 !important; }
html.dark .bg-violet-100\/80 { background-color: #363464 !important; }
html.dark .bg-violet-200\/20 { background-color: #3f3873 !important; }
html.dark .bg-violet-200\/25 { background-color: #3f3873 !important; }
html.dark .bg-violet-200\/30 { background-color: #3f3873 !important; }
html.dark .bg-violet-200\/40 { background-color: #3f3873 !important; }
html.dark .bg-violet-200\/50 { background-color: #3f3873 !important; }
html.dark .bg-violet-200\/60 { background-color: #3f3873 !important; }
html.dark .bg-violet-200\/70 { background-color: #3f3873 !important; }
html.dark .bg-violet-200\/75 { background-color: #3f3873 !important; }
html.dark .bg-violet-200\/80 { background-color: #3f3873 !important; }
html.dark .bg-violet-300\/20 { background-color: #473c82 !important; }
html.dark .bg-violet-300\/25 { background-color: #473c82 !important; }
html.dark .bg-violet-300\/30 { background-color: #473c82 !important; }
html.dark .bg-violet-300\/40 { background-color: #473c82 !important; }
html.dark .bg-violet-300\/50 { background-color: #473c82 !important; }
html.dark .bg-violet-300\/60 { background-color: #473c82 !important; }
html.dark .bg-violet-300\/70 { background-color: #473c82 !important; }
html.dark .bg-violet-300\/75 { background-color: #473c82 !important; }
html.dark .bg-violet-300\/80 { background-color: #473c82 !important; }
html.dark .bg-purple-50\/20 { background-color: #312f55 !important; }
html.dark .bg-purple-50\/25 { background-color: #312f55 !important; }
html.dark .bg-purple-50\/30 { background-color: #312f55 !important; }
html.dark .bg-purple-50\/40 { background-color: #312f55 !important; }
html.dark .bg-purple-50\/50 { background-color: #312f55 !important; }
html.dark .bg-purple-50\/60 { background-color: #312f55 !important; }
html.dark .bg-purple-50\/70 { background-color: #312f55 !important; }
html.dark .bg-purple-50\/75 { background-color: #312f55 !important; }
html.dark .bg-purple-50\/80 { background-color: #312f55 !important; }
html.dark .bg-purple-100\/20 { background-color: #3c3364 !important; }
html.dark .bg-purple-100\/25 { background-color: #3c3364 !important; }
html.dark .bg-purple-100\/30 { background-color: #3c3364 !important; }
html.dark .bg-purple-100\/40 { background-color: #3c3364 !important; }
html.dark .bg-purple-100\/50 { background-color: #3c3364 !important; }
html.dark .bg-purple-100\/60 { background-color: #3c3364 !important; }
html.dark .bg-purple-100\/70 { background-color: #3c3364 !important; }
html.dark .bg-purple-100\/75 { background-color: #3c3364 !important; }
html.dark .bg-purple-100\/80 { background-color: #3c3364 !important; }
html.dark .bg-purple-200\/20 { background-color: #473673 !important; }
html.dark .bg-purple-200\/25 { background-color: #473673 !important; }
html.dark .bg-purple-200\/30 { background-color: #473673 !important; }
html.dark .bg-purple-200\/40 { background-color: #473673 !important; }
html.dark .bg-purple-200\/50 { background-color: #473673 !important; }
html.dark .bg-purple-200\/60 { background-color: #473673 !important; }
html.dark .bg-purple-200\/70 { background-color: #473673 !important; }
html.dark .bg-purple-200\/75 { background-color: #473673 !important; }
html.dark .bg-purple-200\/80 { background-color: #473673 !important; }
html.dark .bg-purple-300\/20 { background-color: #523a82 !important; }
html.dark .bg-purple-300\/25 { background-color: #523a82 !important; }
html.dark .bg-purple-300\/30 { background-color: #523a82 !important; }
html.dark .bg-purple-300\/40 { background-color: #523a82 !important; }
html.dark .bg-purple-300\/50 { background-color: #523a82 !important; }
html.dark .bg-purple-300\/60 { background-color: #523a82 !important; }
html.dark .bg-purple-300\/70 { background-color: #523a82 !important; }
html.dark .bg-purple-300\/75 { background-color: #523a82 !important; }
html.dark .bg-purple-300\/80 { background-color: #523a82 !important; }
html.dark .bg-fuchsia-50\/20 { background-color: #382d54 !important; }
html.dark .bg-fuchsia-50\/25 { background-color: #382d54 !important; }
html.dark .bg-fuchsia-50\/30 { background-color: #382d54 !important; }
html.dark .bg-fuchsia-50\/40 { background-color: #382d54 !important; }
html.dark .bg-fuchsia-50\/50 { background-color: #382d54 !important; }
html.dark .bg-fuchsia-50\/60 { background-color: #382d54 !important; }
html.dark .bg-fuchsia-50\/70 { background-color: #382d54 !important; }
html.dark .bg-fuchsia-50\/75 { background-color: #382d54 !important; }
html.dark .bg-fuchsia-50\/80 { background-color: #382d54 !important; }
html.dark .bg-fuchsia-100\/20 { background-color: #472f63 !important; }
html.dark .bg-fuchsia-100\/25 { background-color: #472f63 !important; }
html.dark .bg-fuchsia-100\/30 { background-color: #472f63 !important; }
html.dark .bg-fuchsia-100\/40 { background-color: #472f63 !important; }
html.dark .bg-fuchsia-100\/50 { background-color: #472f63 !important; }
html.dark .bg-fuchsia-100\/60 { background-color: #472f63 !important; }
html.dark .bg-fuchsia-100\/70 { background-color: #472f63 !important; }
html.dark .bg-fuchsia-100\/75 { background-color: #472f63 !important; }
html.dark .bg-fuchsia-100\/80 { background-color: #472f63 !important; }
html.dark .bg-fuchsia-200\/20 { background-color: #563271 !important; }
html.dark .bg-fuchsia-200\/25 { background-color: #563271 !important; }
html.dark .bg-fuchsia-200\/30 { background-color: #563271 !important; }
html.dark .bg-fuchsia-200\/40 { background-color: #563271 !important; }
html.dark .bg-fuchsia-200\/50 { background-color: #563271 !important; }
html.dark .bg-fuchsia-200\/60 { background-color: #563271 !important; }
html.dark .bg-fuchsia-200\/70 { background-color: #563271 !important; }
html.dark .bg-fuchsia-200\/75 { background-color: #563271 !important; }
html.dark .bg-fuchsia-200\/80 { background-color: #563271 !important; }
html.dark .bg-fuchsia-300\/20 { background-color: #65347f !important; }
html.dark .bg-fuchsia-300\/25 { background-color: #65347f !important; }
html.dark .bg-fuchsia-300\/30 { background-color: #65347f !important; }
html.dark .bg-fuchsia-300\/40 { background-color: #65347f !important; }
html.dark .bg-fuchsia-300\/50 { background-color: #65347f !important; }
html.dark .bg-fuchsia-300\/60 { background-color: #65347f !important; }
html.dark .bg-fuchsia-300\/70 { background-color: #65347f !important; }
html.dark .bg-fuchsia-300\/75 { background-color: #65347f !important; }
html.dark .bg-fuchsia-300\/80 { background-color: #65347f !important; }
html.dark .bg-pink-50\/20 { background-color: #3b2d48 !important; }
html.dark .bg-pink-50\/25 { background-color: #3b2d48 !important; }
html.dark .bg-pink-50\/30 { background-color: #3b2d48 !important; }
html.dark .bg-pink-50\/40 { background-color: #3b2d48 !important; }
html.dark .bg-pink-50\/50 { background-color: #3b2d48 !important; }
html.dark .bg-pink-50\/60 { background-color: #3b2d48 !important; }
html.dark .bg-pink-50\/70 { background-color: #3b2d48 !important; }
html.dark .bg-pink-50\/75 { background-color: #3b2d48 !important; }
html.dark .bg-pink-50\/80 { background-color: #3b2d48 !important; }
html.dark .bg-pink-100\/20 { background-color: #4b3050 !important; }
html.dark .bg-pink-100\/25 { background-color: #4b3050 !important; }
html.dark .bg-pink-100\/30 { background-color: #4b3050 !important; }
html.dark .bg-pink-100\/40 { background-color: #4b3050 !important; }
html.dark .bg-pink-100\/50 { background-color: #4b3050 !important; }
html.dark .bg-pink-100\/60 { background-color: #4b3050 !important; }
html.dark .bg-pink-100\/70 { background-color: #4b3050 !important; }
html.dark .bg-pink-100\/75 { background-color: #4b3050 !important; }
html.dark .bg-pink-100\/80 { background-color: #4b3050 !important; }
html.dark .bg-pink-200\/20 { background-color: #5c3257 !important; }
html.dark .bg-pink-200\/25 { background-color: #5c3257 !important; }
html.dark .bg-pink-200\/30 { background-color: #5c3257 !important; }
html.dark .bg-pink-200\/40 { background-color: #5c3257 !important; }
html.dark .bg-pink-200\/50 { background-color: #5c3257 !important; }
html.dark .bg-pink-200\/60 { background-color: #5c3257 !important; }
html.dark .bg-pink-200\/70 { background-color: #5c3257 !important; }
html.dark .bg-pink-200\/75 { background-color: #5c3257 !important; }
html.dark .bg-pink-200\/80 { background-color: #5c3257 !important; }
html.dark .bg-pink-300\/20 { background-color: #6c355f !important; }
html.dark .bg-pink-300\/25 { background-color: #6c355f !important; }
html.dark .bg-pink-300\/30 { background-color: #6c355f !important; }
html.dark .bg-pink-300\/40 { background-color: #6c355f !important; }
html.dark .bg-pink-300\/50 { background-color: #6c355f !important; }
html.dark .bg-pink-300\/60 { background-color: #6c355f !important; }
html.dark .bg-pink-300\/70 { background-color: #6c355f !important; }
html.dark .bg-pink-300\/75 { background-color: #6c355f !important; }
html.dark .bg-pink-300\/80 { background-color: #6c355f !important; }
html.dark .bg-rose-50\/20 { background-color: #3c2c40 !important; }
html.dark .bg-rose-50\/25 { background-color: #3c2c40 !important; }
html.dark .bg-rose-50\/30 { background-color: #3c2c40 !important; }
html.dark .bg-rose-50\/40 { background-color: #3c2c40 !important; }
html.dark .bg-rose-50\/50 { background-color: #3c2c40 !important; }
html.dark .bg-rose-50\/60 { background-color: #3c2c40 !important; }
html.dark .bg-rose-50\/70 { background-color: #3c2c40 !important; }
html.dark .bg-rose-50\/75 { background-color: #3c2c40 !important; }
html.dark .bg-rose-50\/80 { background-color: #3c2c40 !important; }
html.dark .bg-rose-100\/20 { background-color: #4d2e43 !important; }
html.dark .bg-rose-100\/25 { background-color: #4d2e43 !important; }
html.dark .bg-rose-100\/30 { background-color: #4d2e43 !important; }
html.dark .bg-rose-100\/40 { background-color: #4d2e43 !important; }
html.dark .bg-rose-100\/50 { background-color: #4d2e43 !important; }
html.dark .bg-rose-100\/60 { background-color: #4d2e43 !important; }
html.dark .bg-rose-100\/70 { background-color: #4d2e43 !important; }
html.dark .bg-rose-100\/75 { background-color: #4d2e43 !important; }
html.dark .bg-rose-100\/80 { background-color: #4d2e43 !important; }
html.dark .bg-rose-200\/20 { background-color: #5e3046 !important; }
html.dark .bg-rose-200\/25 { background-color: #5e3046 !important; }
html.dark .bg-rose-200\/30 { background-color: #5e3046 !important; }
html.dark .bg-rose-200\/40 { background-color: #5e3046 !important; }
html.dark .bg-rose-200\/50 { background-color: #5e3046 !important; }
html.dark .bg-rose-200\/60 { background-color: #5e3046 !important; }
html.dark .bg-rose-200\/70 { background-color: #5e3046 !important; }
html.dark .bg-rose-200\/75 { background-color: #5e3046 !important; }
html.dark .bg-rose-200\/80 { background-color: #5e3046 !important; }
html.dark .bg-rose-300\/20 { background-color: #6f3148 !important; }
html.dark .bg-rose-300\/25 { background-color: #6f3148 !important; }
html.dark .bg-rose-300\/30 { background-color: #6f3148 !important; }
html.dark .bg-rose-300\/40 { background-color: #6f3148 !important; }
html.dark .bg-rose-300\/50 { background-color: #6f3148 !important; }
html.dark .bg-rose-300\/60 { background-color: #6f3148 !important; }
html.dark .bg-rose-300\/70 { background-color: #6f3148 !important; }
html.dark .bg-rose-300\/75 { background-color: #6f3148 !important; }
html.dark .bg-rose-300\/80 { background-color: #6f3148 !important; }

/* ---------- 8. Поля ввода ---------- */
html.dark input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="submit"]):not([type="button"]),
html.dark select,
html.dark textarea {
    background-color: #17223a !important;
    color: #e2e8f0 !important;
    border-color: #3d4d68 !important;
}
html.dark input:disabled,
html.dark select:disabled,
html.dark textarea:disabled {
    background-color: #1b2537 !important;
    color: #7d8ea8 !important;
}
html.dark ::placeholder { color: #6b7d99 !important; }
html.dark select option { background-color: #1e293b; color: #e2e8f0; }
html.dark input[type="checkbox"],
html.dark input[type="radio"] { background-color: #17223a; border-color: #3d4d68; }
html.dark input[type="date"]::-webkit-calendar-picker-indicator,
html.dark input[type="time"]::-webkit-calendar-picker-indicator,
html.dark input[type="datetime-local"]::-webkit-calendar-picker-indicator {
    filter: invert(.75);
    cursor: pointer;
}
/* file-инпуты и кнопки-лейблы */
html.dark ::file-selector-button {
    background-color: #2d3b50; color: #e2e8f0; border-color: #3d4d68;
}
html.dark input[type="submit"],
html.dark input[type="button"] { background-color: #2d3b50 !important; color: #e2e8f0 !important; }

/* ---------- 9. Скроллбары, выделение, «липкие» тени ---------- */
html.dark ::-webkit-scrollbar { width: 10px; height: 10px; }
html.dark ::-webkit-scrollbar-track { background: #17223a; }
html.dark ::-webkit-scrollbar-thumb {
    background: #3d4d68; border-radius: 5px; border: 2px solid #17223a;
}
html.dark ::-webkit-scrollbar-thumb:hover { background: #4d6086; }
html.dark ::-webkit-scrollbar-corner { background: #17223a; }
html.dark { scrollbar-color: #3d4d68 #17223a; }

html.dark ::selection { background: rgba(99, 102, 241, .35); color: #fff; }

/* тень закреплённой колонки: на тёмном фоне светлая тень не видна */
html.dark .an-c2,
html.dark .sched-td-loc,
html.dark .sched-thead th:first-child,
html.dark .pf-c2 { box-shadow: 6px 0 8px -6px rgba(0, 0, 0, .55) !important; }
html.dark .analytics-scroll,
html.dark .schedule-scroll,
html.dark .plan-fact-scroll { scrollbar-color: #3d4d68 #17223a; }
html.dark .analytics-scroll::-webkit-scrollbar-track,
html.dark .schedule-scroll::-webkit-scrollbar-track,
html.dark .plan-fact-scroll::-webkit-scrollbar-track { background: #17223a; }
html.dark .analytics-scroll::-webkit-scrollbar-thumb,
html.dark .schedule-scroll::-webkit-scrollbar-thumb,
html.dark .plan-fact-scroll::-webkit-scrollbar-thumb {
    background: #3d4d68; border-radius: 6px; border: 2px solid #17223a;
}
html.dark .analytics-scroll::-webkit-scrollbar-thumb:hover,
html.dark .schedule-scroll::-webkit-scrollbar-thumb:hover,
html.dark .plan-fact-scroll::-webkit-scrollbar-thumb:hover { background: #4d6086; }
html.dark .analytics-scroll::-webkit-scrollbar-corner,
html.dark .schedule-scroll::-webkit-scrollbar-corner,
html.dark .plan-fact-scroll::-webkit-scrollbar-corner { background: #17223a; }

/* фон страницы входа (градиент Tailwind задаётся через --tw-gradient-*) */
html.dark .from-slate-100 {
    --tw-gradient-from: #16213a !important;
    --tw-gradient-to: rgba(22, 33, 58, 0) !important;
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}
html.dark .to-slate-200 { --tw-gradient-to: #0f172a !important; }

/* градиент-подсказка горизонтальной прокрутки: был белый */
html.dark .schedule-scroll {
    background:
        linear-gradient(to right, #0f172a 30%, rgba(15, 23, 42, 0)) left center,
        linear-gradient(to left,  #0f172a 30%, rgba(15, 23, 42, 0)) right center,
        radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, .45), transparent) left center,
        radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, .45), transparent) right center !important;
    background-repeat: no-repeat !important;
    background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100% !important;
    background-attachment: local, local, scroll, scroll !important;
}

/* подсветка открытого фильтра мультивыбора */
html.dark .js-multi-open .js-multi-btn {
    border-color: #818cf8 !important;
    box-shadow: 0 0 0 3px rgba(129, 140, 248, .18) !important;
}
html.dark .js-multi-panel {
    background-color: #1e293b !important;
    border-color: #3d4d68 !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .5) !important;
}

/* ---------- 10. Компоненты проекта ---------- */
/* --- редактор прав (admin/_perm_styles.html) --- */
html.dark .perm-ghead {
    background: #24324a !important; border-color: #334155 !important;
}
html.dark .perm-gtitle { color: #e2e8f0 !important; }
html.dark .perm-gdesc  { color: #7d8ea8 !important; }
html.dark .perm-mini {
    background: #2d3b50 !important; color: #cbd5e1 !important;
    border-color: #3d4d68 !important;
}
html.dark .perm-mini:hover { background: #37455c !important; color: #a5b4fc !important; }
html.dark .perm-row { border-bottom-color: #2a3648 !important; }
html.dark .perm-row:hover { background: #24324a !important; }
html.dark .perm-rname { color: #cbd5e1 !important; }
html.dark .perm-rall {
    background: #2d3b50 !important; color: #94a3b8 !important;
    border-color: #3d4d68 !important;
}
html.dark .perm-rall:hover { background: #37455c !important; color: #a5b4fc !important; }
html.dark .perm-pill {
    background: #26344b !important; color: #a9b8d0 !important;
    border-color: #3d4d68 !important;
}
html.dark .perm-pill:hover {
    background: #2f3f5c !important; color: #a5b4fc !important;
    border-color: #4d6086 !important;
}
html.dark .perm-pill.is-on,
html.dark .perm-pill:has(input:checked) {
    background: #4f46e5 !important; border-color: #6366f1 !important; color: #fff !important;
}
html.dark .perm-pill.is-on:hover,
html.dark .perm-pill:has(input:checked):hover {
    background: #4338ca !important; border-color: #4f46e5 !important; color: #fff !important;
}
html.dark .perm-pill-na {
    background: transparent !important; color: #5a6b85 !important;
    border-color: #334155 !important;
}
html.dark .perm-pill-na:hover { background: transparent !important; color: #5a6b85 !important; }
html.dark .perm-savebar {
    background: #1e293b !important; border-top-color: #334155 !important;
}
html.dark .perm-dirty { color: #fbbf24 !important; }
html.dark .role-tab {
    background: #26344b !important; color: #cbd5e1 !important;
    border-color: #3d4d68 !important;
}
html.dark .role-tab:hover { background: #2f3f5c !important; color: #a5b4fc !important; border-color: #4d6086 !important; }
html.dark .role-tab.is-active {
    background: #4f46e5 !important; border-color: #6366f1 !important; color: #fff !important;
}
html.dark .role-count { background: #1b2537 !important; color: #94a3b8 !important; }
html.dark .role-tab.is-active .role-count { background: rgba(255,255,255,.22) !important; color: #fff !important; }
html.dark .role-tab.is-system {
    background: rgba(217, 119, 6, .16) !important;
    border-color: rgba(245, 158, 11, .45) !important; color: #fcd34d !important;
}
html.dark .role-tab.is-system.is-active {
    background: #b45309 !important; border-color: #d97706 !important; color: #fff !important;
}
html.dark .role-user {
    background: #26344b !important; color: #cbd5e1 !important;
    border-color: #3d4d68 !important;
}
html.dark .role-user:hover { background: #2f3f5c !important; color: #a5b4fc !important; }
html.dark .role-user-badge { background: rgba(244, 63, 94, .22) !important; color: #fda4af !important; }

/* --- прочее --- */
html.dark .nav-link { color: #a9b8d0; }
html.dark .nav-link:hover { background: rgba(255,255,255,.07); color: #fff; }
html.dark .nav-link.active { background: rgba(99,102,241,.32); color: #fff; }
html.dark hr { border-color: #334155 !important; }
html.dark .shadow-sm { box-shadow: 0 1px 3px rgba(0,0,0,.4) !important; }
html.dark .shadow-md { box-shadow: 0 4px 10px rgba(0,0,0,.45) !important; }
html.dark .shadow-lg { box-shadow: 0 10px 24px rgba(0,0,0,.5) !important; }
html.dark .shadow-xl,
html.dark .shadow-2xl { box-shadow: 0 20px 45px rgba(0,0,0,.6) !important; }

/* жёстко заданные цвета иконок (stroke="#...") — осветляем под тёмный фон.
   В разметке остаются прежние значения, меняется только вид в тёмной теме. */
html.dark [stroke="#d97706"] { stroke: #fcd34d !important; }  /* amber  */
html.dark [stroke="#b45309"] { stroke: #fcd34d !important; }  /* amber  */
html.dark [stroke="#059669"] { stroke: #6ee7b7 !important; }  /* emerald */
html.dark [stroke="#dc2626"] { stroke: #fda4af !important; }  /* red    */
html.dark [stroke="#4f46e5"] { stroke: #a5b4fc !important; }  /* indigo */

/* ---------- 11. Кнопка переключения темы ---------- */
.theme-toggle {
    display: inline-flex; align-items: center; justify-content: center;
    width: 36px; height: 36px; border-radius: 10px;
    color: #64748b; background: transparent; border: 1px solid transparent;
    cursor: pointer; transition: background-color .15s, color .15s, border-color .15s;
}
.theme-toggle:hover { background: #f1f5f9; color: #4f46e5; border-color: #e2e8f0; }
.theme-toggle:focus-visible { outline: 2px solid #6366f1; outline-offset: 2px; }
/* по умолчанию (светлая тема) показываем «луну» — предложение уйти в тёмную */
.theme-icon-sun { display: none; }
html.dark .theme-icon-sun { display: block; }
html.dark .theme-icon-moon { display: none; }
html.dark .theme-toggle { color: #94a3b8; }
html.dark .theme-toggle:hover {
    background: #2d3b50 !important; color: #fcd34d; border-color: #3d4d68;
}
/* вариант для страницы входа (на градиенте) */
.theme-toggle-floating {
    position: fixed; top: 16px; right: 16px; z-index: 50;
    background: rgba(255,255,255,.75); border-color: #e2e8f0;
    backdrop-filter: blur(6px);
}
html.dark .theme-toggle-floating {
    background: rgba(30,41,59,.75) !important; border-color: #3d4d68;
}

/* ---------- 12. Плавное переключение темы ----------
   Класс .theme-anim добавляет JS на 250 мс при смене темы,
   чтобы не тормозить интерфейс постоянными transition. */
html.theme-anim,
html.theme-anim body,
html.theme-anim body * {
    transition: background-color .2s ease, border-color .2s ease, color .2s ease !important;
}
@media (prefers-reduced-motion: reduce) {
    html.theme-anim, html.theme-anim body, html.theme-anim body * { transition: none !important; }
}

/* ---------- 13. Печать ----------
   Класс .dark снимается скриптом по beforeprint, поэтому печать всегда
   светлая. Ниже — страховка, если событие не сработало (например,
   печать из контекстного меню в старом браузере). */
@media print {
    html.dark body { background: #fff !important; color: #000 !important; }
    html.dark { color-scheme: light; }
}


/* ============================================================
   ЗАЩИТА ОТ «СКВОЗНЫХ» ЗАКРЕПЛЁННЫХ КОЛОНОК
   ------------------------------------------------------------
   Закреплённые ячейки (position: sticky) обязаны иметь полностью
   НЕПРОЗРАЧНЫЙ фон. Если фон окажется полупрозрачным (rgba), при
   горизонтальной прокрутке сквозь колонку будет видно прокручиваемое
   содержимое — это выглядит как наложение строк друг на друга.
   Именно так ломалось у людей с несколькими курсами: только у них
   фон строки — цветная плашка (bg-indigo-50), которая была задана
   полупрозрачной.

   Правило: для цветных плашек в тёмной теме используются
   НЕПРОЗРАЧНЫЕ цвета, полученные смешением с цветом поверхности.
   Ниже — страховка на случай, если ячейке достанется прозрачный фон:
   закреплённым ячейкам принудительно задаётся цвет поверхности.
   ============================================================ */
html.dark .an-c1,
html.dark .an-c2,
html.dark .pf-c1,
html.dark .pf-c2,
html.dark .sched-td-loc,
html.dark .sched-thead th:first-child {
    /* border-box ОБЯЗАТЕЛЕН: при padding-box фон не заходит под
       1px границы, и в этой полоске видно прокручиваемое содержимое
       («кусочки слов» по краям колонки). */
    background-clip: border-box;
}

/* Цветные плашки на закреплённых ячейках — те же непрозрачные цвета,
   что и в основных правилах (перечислены явно, чтобы порядок правил
   в файле не влиял на результат). */
html.dark tr.bg-indigo-50 .an-c1,
html.dark tr.bg-indigo-50 .an-c2,
html.dark .an-c1.bg-indigo-50,
html.dark .an-c2.bg-indigo-50 { background-color: #283254 !important; }
html.dark tr.bg-indigo-100 .an-c1,
html.dark tr.bg-indigo-100 .an-c2 { background-color: #2d3663 !important; }

/* ============================================================
   КНОПКИ И ДЕЙСТВИЯ: НАСЫЩЕННОСТЬ В ТЁМНОЙ ТЕМЕ
   ------------------------------------------------------------
   В тёмной теме кнопки и ссылки-действия выглядели тускло: брались
   оттенки 600–700, рассчитанные на белый фон.

   ВАЖНО ПРО КОНТРАСТ. Осветлять ЗАЛИВКУ сплошных кнопок нельзя: текст
   на них белый, и при осветлении контраст падает ниже нормы 4.5:1
   (проверено: яркий indigo — 4.47, яркий emerald-500 — 2.56).
   Поэтому у сплошных кнопок «живость» добавляется ОКАНТОВКОЙ и СВЕЧЕНИЕМ,
   которые на читаемость не влияют, а заливка остаётся контрастной.

   У ссылок-действий и кнопок-иконок фон тёмный, поэтому там цвета можно
   брать ярче — контраст только растёт (7.0 и 6.2 вместо прежних ~5.1).
   ============================================================ */

/* --- Сплошные кнопки: заливка + заметная окантовка и свечение --- */
html.dark .bg-indigo-600 {
    background-color: #5b5ee8 !important;      /* ярче #4f46e5, контраст 4.9 */
    box-shadow: 0 0 0 1px rgba(129, 140, 248, .55),
                0 2px 8px rgba(79, 70, 229, .45),
                inset 0 1px 0 rgba(255, 255, 255, .12) !important;
}
html.dark .bg-indigo-600:hover,
html.dark .hover\:bg-indigo-700:hover {
    background-color: #4f46e5 !important;
    box-shadow: 0 0 0 1px rgba(165, 180, 252, .7),
                0 3px 12px rgba(79, 70, 229, .6),
                inset 0 1px 0 rgba(255, 255, 255, .16) !important;
}
html.dark .bg-emerald-600,
html.dark .hover\:bg-emerald-700:hover {
    box-shadow: 0 0 0 1px rgba(52, 211, 153, .5),
                0 2px 8px rgba(5, 150, 105, .4),
                inset 0 1px 0 rgba(255, 255, 255, .12) !important;
}
html.dark .bg-rose-600,
html.dark .hover\:bg-rose-700:hover {
    box-shadow: 0 0 0 1px rgba(251, 113, 133, .55),
                0 2px 8px rgba(225, 29, 72, .4),
                inset 0 1px 0 rgba(255, 255, 255, .12) !important;
}
html.dark .bg-blue-600,
html.dark .bg-red-600,
html.dark .bg-amber-600 {
    box-shadow: 0 0 0 1px rgba(255, 255, 255, .22),
                0 2px 8px rgba(0, 0, 0, .45),
                inset 0 1px 0 rgba(255, 255, 255, .12) !important;
}
html.dark .bg-indigo-700 {
    background-color: #4338ca !important;
}

/* --- Ссылки-действия (Изменить, Удалить, Открыть, скачать) ---
   ОТДЕЛЬНЫХ ЦВЕТОВ ЗДЕСЬ БОЛЬШЕ НЕТ, И ЭТО ВАЖНО.

   Раньше тут стоял свой набор: indigo #818cf8, rose #fb7185, emerald
   #34d399, sky #38bdf8, violet #a78bfa, purple #c084fc, amber #fbbf24 —
   «насыщенные оттенки для ссылок на тёмном фоне». Эти правила перекрывали
   палитру выше (селектор тот же, задано позже), и получалось ДВА источника
   правды для одного класса. На ЦВЕТНЫХ ПЛАШКАХ, которые темнее страницы,
   такие значения не читались: indigo давал 4.20:1, rose — 3.52:1 при норме
   4.5:1. Нашла это проверка `check_buttons.py`, а повтор — проверка
   `check_theme.py` (раздел 4: «нет ли правил, заданных дважды»).

   Теперь цвет ссылок берётся из общей палитры выше, где для каждой семьи
   задан один набор значений и правило наведения уводит в БОЛЕЕ СВЕТЛУЮ
   сторону. Проверено, что палитра читается и на странице, и на плашках:
   emerald 9.08:1, sky 5.51:1, violet 4.63:1, amber 6.89:1.
   ---------------------------------------------------------------------- */

/* --- Кнопки-иконки (Правка / Удаление в таблицах) ---
   Класс btn-icon проставлен в шаблонах. Раньше это были серые иконки без
   фона — выглядели частью текста, а не кнопкой. */
html.dark .btn-icon {
    color: #b6c4da !important;
    background-color: #2a3a55 !important;
    /* Рамка #435b80 давала к тёмной карточке 2.12:1 — ниже нормы 3:1,
       и кнопка-значок читалась как часть текста, а не как кнопка.
       #8195b8 даёт 4.82:1 (пункт 22 плана, проверка check_buttons.py). */
    border: 1px solid #8195b8 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .4);
}
html.dark .btn-icon:hover {
    color: #fff !important;
    background-color: #5b5ee8 !important;
    border-color: #818cf8 !important;
    box-shadow: 0 0 0 1px rgba(129, 140, 248, .5), 0 2px 8px rgba(79, 70, 229, .5);
}
html.dark .btn-icon-danger { color: #fda4af !important; border-color: #fb7185 !important; }
html.dark .btn-icon-danger:hover {
    color: #fff !important;
    background-color: #e11d48 !important;
    border-color: #fb7185 !important;
    box-shadow: 0 0 0 1px rgba(251, 113, 133, .5), 0 2px 8px rgba(225, 29, 72, .5);
}
