/* ═══════════════════════════════════════════════════════════════════════
   БИЗТОРИЯ DARK — тёмная тема (класс .dark на <html>, переключатель в топбаре,
   сохранение в localStorage('biztoria_theme'), дефолт — prefers-color-scheme).
   Принцип: переопределяем КОНЕЧНЫЙ набор реально используемых утилит
   собранного Tailwind + кастомные компоненты страниц. Селектор html.dark
   даёт специфичность (0,2,1) — бьёт любые одноклассовые правила без
   !important; !important только против inline style="".
   Палитра: page #0b1424 · surface #121e33 · surface-2 #0f1a2c ·
   borders #1d2b45/#26375a · text #eef3fa/#c6d1e3/#8794ab · gold #6f9bff.
   ═══════════════════════════════════════════════════════════════════════ */
html.dark { color-scheme: dark; }
html.dark body { background: #0b1424; color: #e7edf7; }

/* ── Поверхности ── */
html.dark .bg-white       { background-color: #121e33; }
html.dark .bg-ink-50      { background-color: #0f1a2c; }
html.dark .bg-ink-50\/40  { background-color: rgba(15,26,44,.5); }
html.dark .bg-ink-100     { background-color: #1a2740; }
html.dark .bg-ink-200     { background-color: #223353; }
html.dark .bg-ink-700     { background-color: #2c4272; }
html.dark .bg-ink-900     { background-color: #22345a; }
html.dark .hover\:bg-ink-50:hover   { background-color: #16233c; }
html.dark .hover\:bg-ink-100:hover  { background-color: #223353; }
html.dark .hover\:bg-ink-200:hover  { background-color: #2c4272; }
html.dark .hover\:bg-ink-700:hover  { background-color: #35507f; }
html.dark .hover\:bg-brand-50:hover { background-color: rgba(111,155,255,.12); }
html.dark .bg-brand-50    { background-color: rgba(111,155,255,.12); }

/* ── Текст ── */
html.dark .text-ink-900 { color: #eef3fa; }
html.dark .text-ink-700 { color: #c6d1e3; }
html.dark .text-ink-600 { color: #a9b6cc; }
html.dark .text-ink-500 { color: #8794ab; }
html.dark .text-ink-400 { color: #66748d; }
html.dark .text-ink-300 { color: #4d5b76; }
html.dark .text-brand-600 { color: #6f9bff; }
html.dark .text-brand-700 { color: #a9c2ff; }
html.dark .hover\:text-brand-600:hover { color: #a9c2ff; }
html.dark .hover\:text-brand-700:hover { color: #93b4ff; }

/* ── Бордеры ── */
html.dark .border-ink-100 { border-color: #1d2b45; }
html.dark .border-ink-200 { border-color: #26375a; }
html.dark .border-ink-300 { border-color: #31456e; }
html.dark .divide-ink-100 > :not([hidden]) ~ :not([hidden]) { border-color: #1d2b45; }
html.dark .border-brand-200 { border-color: rgba(111,155,255,.35); }

/* ── Семантика: тёмные подложки, светлый текст (оттенок сохранён) ── */
html.dark .bg-emerald-50  { background-color: #0f2b20; }
html.dark .bg-emerald-100 { background-color: #14382a; }
html.dark .text-emerald-700, html.dark .text-emerald-600 { color: #34d399; }
html.dark .border-emerald-200 { border-color: #1d4a38; }
html.dark .bg-amber-50  { background-color: #101f3d; }
html.dark .bg-amber-100 { background-color: #3a2e12; }
html.dark .text-amber-700 { color: #fbbf24; }
html.dark .text-amber-900 { color: #fde68a; }
html.dark .border-amber-200 { border-color: #1b3a7a; }
html.dark .bg-rose-50  { background-color: #2b1420; }
html.dark .bg-rose-100 { background-color: #3a1a2b; }
html.dark .text-rose-700, html.dark .text-rose-600 { color: #fb7185; }
html.dark .text-rose-800, html.dark .text-rose-900 { color: #fda4af; }
html.dark .border-rose-200 { border-color: #5b2338; }
html.dark .hover\:bg-rose-50:hover { background-color: #2b1420; }
html.dark .bg-sky-50, html.dark .bg-blue-50 { background-color: #0f2338; }

/* ── Фокус в тёмной теме — светлое золото ── */
html.dark *:focus-visible,
html.dark button:focus-visible, html.dark a:focus-visible,
html.dark input:focus-visible, html.dark select:focus-visible { outline-color: #6f9bff; }

/* ── Инпуты/плейсхолдеры ── */
html.dark input, html.dark select, html.dark textarea { caret-color: #6f9bff; }
html.dark ::placeholder { color: #66748d; }

/* ═══════════ ЛЕНДИНГ (кастомные компоненты) ═══════════ */
html.dark .lp-hero {
  background:
    radial-gradient(1200px 500px at 20% -10%, rgba(33,102,255,.10), transparent 60%),
    radial-gradient(900px 420px at 85% 0%, rgba(169,194,255,.07), transparent 55%),
    #0e1930;
  border-color: #26375a;
  box-shadow: 0 1px 2px rgba(0,0,0,.3), 0 40px 80px -40px rgba(33,102,255,.15);
}
html.dark .lp-hero::before { background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1px); }
html.dark .lp-pill { background: rgba(18,30,51,.85); border-color: #26375a; color: #c6d1e3; }
html.dark .lp-preview { background: rgba(18,30,51,.96); border-color: #26375a; }
html.dark .lp-preview-titlebar { background: linear-gradient(#16233c, #121e33); border-color: #1d2b45; }
html.dark .hd-search { background: #121e33; border-color: #1d2b45; }
html.dark .hd-search-field { background: #0f1a2c; border-color: #26375a; }
html.dark .hd-search-inn { color: #eef3fa; }
html.dark .hd-badge { background: #0f1a2c; border-color: #26375a; color: #8794ab; }
html.dark .hd-badge.done { background: #0f2b20; border-color: #1d4a38; color: #34d399; }
html.dark .hd-scanbar { background: #1a2740; }
html.dark .hd-rings { border-color: #1d2b45; background: radial-gradient(circle at 50% 0%, rgba(33,102,255,.08), transparent 70%); }
html.dark .hd-ring-track { stroke: #1a2740; }
html.dark .hd-ring-num .n { color: #eef3fa !important; }
html.dark .hd-metric, html.dark .hd-skel-row { border-color: #1d2b45; }
html.dark .hd-metric span[style*="color:#0f1620"] { color: #eef3fa !important; }
html.dark .hd-skel-bar { background: linear-gradient(90deg,#1a2740 25%,#223353 37%,#1a2740 63%); background-size: 400% 100%; }
html.dark .hd-verdict.green { background: #0f2b20; color: #34d399; border-color: #1d2b45; }
html.dark .hd-verdict.amber { background: #101f3d; color: #fbbf24; border-color: #1d2b45; }
html.dark .hd-verdict.red   { background: #2b1420; color: #fb7185; border-color: #1d2b45; }
html.dark .hd-segment { background: #121e33; border-color: #26375a; }
html.dark .hd-seg { color: #8794ab; }
html.dark .hd-seg.g.active { background: #0f2b20; color: #34d399; }
html.dark .hd-seg.a.active { background: #101f3d; color: #fbbf24; }
html.dark .hd-seg.r.active { background: #2b1420; color: #fb7185; }
html.dark .hd-inn-form { background: #121e33; border-color: #26375a; }
html.dark .hd-inn-input { color: #eef3fa; }
html.dark .lp-float { background: rgba(18,30,51,.95); border-color: #26375a; color: #eef3fa; }
html.dark .lp-stats { background: #26375a; border-color: #26375a; }
html.dark .lp-stat { background: #121e33; }
html.dark .lp-stat-num { color: #eef3fa; }
html.dark .lp-card { background: #121e33; border-color: #26375a; }
html.dark .lp-card:hover { border-color: rgba(111,155,255,.45); }
html.dark .lp-icon { background: rgba(111,155,255,.10) !important; }
html.dark .lp-li { color: #c6d1e3; }
html.dark .lp-step { background: #121e33; border-color: #26375a; }
html.dark .lp-src { background: #121e33; border-color: #26375a; color: #c6d1e3; }
html.dark .cta-ghost { background: rgba(18,30,51,.9); border-color: #31456e; color: #eef3fa; }
html.dark .cta-ghost:hover { border-color: #6f9bff; color: #a9c2ff; }
html.dark .chip-green { background: #0f2b20; color: #34d399; }
html.dark .chip-amber { background: #101f3d; color: #fbbf24; }
html.dark .chip-red   { background: #2b1420; color: #fb7185; }
html.dark .chip-blue  { background: #12233f; color: #60a5fa; }
html.dark .svet-card { background: #121e33; border-color: #26375a; }
html.dark .cmp-cell { border-color: #1d2b45; color: #c6d1e3; }
html.dark .cmp-head { color: #8794ab; }
html.dark .cmp-dh { background: rgba(111,155,255,.07) !important; }
html.dark .roi-card { background: #121e33; border-color: #26375a; }
html.dark .conf-bar-mask { background: #1a2740; }
html.dark .dh-modal-window { background: #121e33; border-color: #26375a; }
html.dark .dh-modal-head { background: linear-gradient(#16233c, #121e33); border-color: #1d2b45; }
html.dark .dh-modal-x:hover { background: #1a2740; color: #eef3fa; }

/* ═══════════ ТАРИФЫ ═══════════ */
html.dark .pr-hero { background: radial-gradient(900px 460px at 92% -8%, rgba(33,102,255,.10), transparent 60%), #0e1930; border-color: #26375a; box-shadow: 0 1px 30px rgba(0,0,0,.35); }
html.dark .calc-card, html.dark .plan-card, html.dark .acc-row, html.dark .faq-row { background: #121e33; border-color: #26375a; }
html.dark .acc-head:hover { background: #16233c; }
html.dark .acc-ic { background: rgba(111,155,255,.10) !important; }
html.dark .matrix th, html.dark .matrix td { border-color: #1d2b45; color: #c6d1e3; }
html.dark .matrix thead th { background: #0f1a2c; color: #8794ab; }
html.dark .matrix tbody tr:nth-child(even) td { background: #0f1a2c; }
html.dark .col-sel { background: rgba(111,155,255,.08) !important; }
html.dark .step-nav-ghost { background: #121e33; border-color: #31456e; color: #c6d1e3; }
html.dark .q-card, html.dark .alt-card { background: #121e33; border-color: #26375a; }

/* ── Патчи против inline style="" пастельных плашек (иконки-квадраты) ── */
html.dark [style*="background: #eef5ff"], html.dark [style*="background:#eef5ff"],
html.dark [style*="background: #d9e7ff"], html.dark [style*="background:#d9e7ff"] { background: rgba(111,155,255,.12) !important; }
html.dark [style*="background: #ecfdf5"], html.dark [style*="background:#ecfdf5"] { background: #0f2b20 !important; }
html.dark [style*="background: #fffbeb"], html.dark [style*="background:#fffbeb"] { background: #101f3d !important; }
html.dark [style*="background: #fff1f2"], html.dark [style*="background:#fff1f2"] { background: #2b1420 !important; }
html.dark [style*="color:#0f1620"], html.dark [style*="color: #0f1620"] { color: #eef3fa !important; }
html.dark [style*="color:#6b7785"], html.dark [style*="color: #6b7785"] { color: #8794ab !important; }

/* ═══════════ ФИКС-ПАСС ПО СКРИНШОТАМ (светофор, сравнение) ═══════════ */
html.dark .svet-ring-track { stroke: #1a2740; }
html.dark .svet-ring-num { color: #eef3fa; }
html.dark .svet-mk { color: #a9b6cc; }
html.dark .svet-verdict.g { background: #0f2b20; color: #34d399; }
html.dark .svet-verdict.a { background: #101f3d; color: #fbbf24; }
html.dark .svet-verdict.r { background: #2b1420; color: #fb7185; }
html.dark .cmp-cell { background: #121e33; border-color: #1d2b45; }
html.dark .cmp-crit { background: #0f1a2c; color: #eef3fa; }
html.dark .cmp-comp { color: #8794ab; }
html.dark .cmp-dh { background: rgba(111,155,255,.08); color: #e7edf7; }
html.dark .cmp-head.cmp-dh { color: #6f9bff; }
html.dark .cmp-check { color: #34d399; }

/* ═══════════ ФИКС-ПАСС 2: тарифы (квиз-опции, бейджи, матрица) ═══════════ */
html.dark .choice { background: #0f1a2c; border-color: #26375a; }
html.dark .choice:hover { border-color: rgba(111,155,255,.5); background: #16233c; }
html.dark .skel-card { background: #121e33; border-color: #26375a; }
html.dark .trust-badge { background: #121e33; border-color: #26375a; color: #a9b6cc; }
html.dark .win-card { background: #121e33; border-color: #26375a; }
html.dark .src-tile { background: #121e33; border-color: #26375a; color: #c6d1e3; }
html.dark .seg { background: #0f1a2c; border-color: #26375a; }
html.dark .seg button { color: #8794ab; }
html.dark .seg button.on { background: #223353; color: #6f9bff; box-shadow: none; }
html.dark .matrix-wrap { border-color: #26375a; background: #121e33; }
html.dark .matrix th, html.dark .matrix td { background: #121e33; }
html.dark .matrix th:first-child, html.dark .matrix td:first-child { background: #121e33; }
html.dark .matrix thead th { background: #0f1a2c; }
html.dark .row-dim td { background: #0d1626 !important; opacity: .45; }
/* col-sel — ПОСЛЕ матричных правил (равная важность → порядок решает) */
html.dark td.col-sel, html.dark th.col-sel { background: rgba(111,155,255,.08) !important; }

/* ═══════════ ФИКС-ПАСС 3: auth-страницы (login/register glass) ═══════════ */
html.dark body { /* фон авторизации задан на body в их <style> — перебиваем */
  background: #0b1424 !important;
}
html.dark .glass {
  background: rgba(18,30,51,.88);
  border-color: rgba(38,55,90,.8);
}
html.dark .glass h1, html.dark .glass .h-display { color: #eef3fa; }
html.dark .input { background: #0f1a2c; border-color: #26375a; color: #eef3fa; }
html.dark .input:focus { background: #0f1a2c; }
html.dark label { color: #8794ab; }

/* ═══════════ ФИКС-ПАСС 4: hd-sources, /search hero, профиль ═══════════ */
html.dark .hd-sources { background: #0f1a2c; border-color: #1d2b45; }
/* /search: hero-панель (tailwind from-white градиент) и переключатель ЮЛ/ФЛ */
html.dark .hero-glow { background: radial-gradient(900px 420px at 80% -10%, rgba(111,155,255,.09), transparent 60%), #0e1930 !important; border-color: #26375a; }
html.dark .mode-switch-thumb { background: #223353; }
html.dark .mode-switch-btn { color: #8794ab; }
html.dark .mode-switch-btn.is-active { color: #eef3fa; }
/* Профиль (кабинет) */
html.dark .card { background: #121e33; border-color: #26375a; }
html.dark .card-tinted { background: #121e33; border-color: #26375a; }
html.dark .grad-trust, html.dark .grad-canvas, html.dark .grad-gold, html.dark .grad-success {
  background: linear-gradient(140deg, #14213a 0%, #101b30 60%, #121e33 100%);
}
html.dark .nav-item { color: #c6d1e3; }
html.dark .nav-item:hover { background: rgba(111,155,255,.10); color: #93b4ff; }
html.dark .stat-tile { background: rgba(18,30,51,.8); border-color: #26375a; }
html.dark .stat-num { color: #eef3fa; }
html.dark .btn-secondary { background: #1a2740; border-color: #31456e; color: #eef3fa; }
html.dark .btn-secondary:hover { border-color: #6f9bff; color: #93b4ff; }
html.dark .history-card { background: #121e33; border-color: #26375a; }
html.dark .pill-navy { background: #1a2740; color: #c6d1e3; }
html.dark .pill-ink  { background: #1a2740; color: #a9b6cc; }
html.dark .pill-gold { background: rgba(111,155,255,.15); color: #93b4ff; }
html.dark .pill-emerald { background: #0f2b20; color: #34d399; }
html.dark .pill-blue { background: #12233f; color: #60a5fa; }
html.dark .pill-amber { background: #101f3d; color: #fbbf24; }
html.dark .pill-rose { background: #2b1420; color: #fb7185; }

/* ═══════════ ФИКС-ПАСС 5: общие пробелы (агентский свип) ═══════════ */
/* opacity-варианты — отдельные классы, базовые override их не ловят */
html.dark .bg-ink-50\/50 { background-color: rgba(15,26,44,.6); }
html.dark .bg-ink-50\/30, html.dark .hover\:bg-ink-50\/30:hover { background-color: rgba(15,26,44,.4); }
html.dark .bg-brand-50\/40 { background-color: rgba(111,155,255,.08); }
html.dark .bg-brand-100 { background-color: rgba(111,155,255,.16); }
/* gray-семейство (паспорт, статус "не найден") */
html.dark .bg-gray-50 { background-color: #0f1a2c; }
html.dark .border-gray-200 { border-color: #26375a; }
html.dark .text-gray-800, html.dark .text-gray-700 { color: #c6d1e3; }
html.dark .bg-gray-500 { background-color: #31456e; }
/* градиент from-white (hero-карточки результатов) */
html.dark .bg-gradient-to-br.from-white {
  background-image:
    radial-gradient(120% 90% at 100% 0%, rgba(111,155,255,.08), transparent 55%),
    linear-gradient(to bottom right, #0e1930, #121e33);
}
/* ── агент: passport.html ── */
html.dark .bg-gray-50 { background-color: #0f1a2c; }
html.dark .border-gray-200 { border-color: #26375a; }
html.dark .text-gray-800 { color: #c6d1e3; }
html.dark .text-gray-700 { color: #c6d1e3; }
html.dark .bg-gray-500 { background-color: #31456e; }

/* ── агент: person_search.html ── */
/* ═══ person_search.html — dark overrides ═══ */

/* Модалка 152-ФЗ: белое окно → тёмная поверхность */
html.dark .dh-modal-window {
  background: #121e33;
  border-color: #26375a;
  box-shadow: 0 8px 20px -8px rgba(0,0,0,.5), 0 46px 110px -34px rgba(0,0,0,.75);
}

/* Шапка модалки: светлый градиент → тёмный, тонкий бордер */
html.dark .dh-modal-head {
  border-bottom-color: #1d2b45;
  background: linear-gradient(#16233c, #121e33);
}

/* Крестик закрытия: приглушённый текст, тёмный hover */
html.dark .dh-modal-x { color: #8794ab; }
html.dark .dh-modal-x:hover { background: #1a2740; color: #eef3fa; }

/* Шкала уверенности: маска должна сливаться с тёмной поверхностью карточки,
   а не оставаться светло-серым #f1f4f7 */
html.dark .conf-bar-mask { background: #1a2740; }

/* Иконка-щит в шапке модалки: inline style="background:#fdf8ec; color:#1554e4"
   → бронзовая заливка на тёмном */
html.dark [style*="background:#fdf8ec"] {
  background: rgba(111,155,255,.12) !important;
  color: #8ab0ff !important;
}

/* ── агент: vehicle_result.html ── */
/* vehicle_result.html — hero: светлый градиент from-white via-white to-brand-50/40 (стопы градиента не покрыты override'ом bg-white) */
html.dark .bg-gradient-to-br.from-white {
  background-image:
    radial-gradient(120% 90% at 100% 0%, rgba(111,155,255,.08), transparent 55%),
    linear-gradient(to bottom right, #0e1930, #121e33);
}

/* vehicle_result.html — семантические подложки с opacity-модификатором: это отдельные классы, базовые .bg-rose-50 и т.п. их не ловят */
html.dark .bg-rose-50\/60 { background-color: #2b1420; }
html.dark .bg-amber-50\/40 { background-color: #101f3d; }
html.dark .bg-emerald-50\/40 { background-color: #0f2b20; }

/* vehicle_result.html — светлые семантические бордеры -200/-300 (в тёмной теме светятся) */
html.dark .border-rose-300 { border-color: #5b2338; }
html.dark .border-rose-200 { border-color: #5b2338; }
html.dark .border-amber-300 { border-color: #1b3a7a; }
html.dark .border-amber-200 { border-color: #1b3a7a; }
html.dark .border-emerald-200 { border-color: #1d4a38; }

/* оба файла — inline box-shadow с золотым свечением rgba(212,160,23,.18) на карточках; приглушаем до бронзового и добавляем тёмную тень */
html.dark [style*="rgba(212,160,23,0.18)"] {
  box-shadow: 0 1px 2px rgba(0,0,0,.45), 0 18px 40px -22px rgba(111,155,255,.14) !important;
}

/* ── агент: person.html ── */
html.dark .co-side {
  background: #121e33;
  border-color: #26375a;
  box-shadow: 0 25px 50px -12px rgba(0,0,0,.6);
}

/* ── агент: financials.html ── */
/* ═══ summary.html + financials.html · dark overrides (Бизтория Night) ═══ */

/* ── SVG: светлые треки колец, лучи и сетка радара (заданы атрибутами stroke) ── */
html.dark svg circle[stroke="#eef0f3"],
html.dark svg line[stroke="#eef0f3"] { stroke: #1d2b45; }
html.dark svg circle[stroke="#e4e9ee"] { stroke: #26375a; }
/* подписи осей радара, прибитые fill="#6b7785" — тускнеют на тёмном */
html.dark svg text[fill="#6b7785"] { fill: #8794ab; }

/* ── Светлые Tailwind-градиенты (не покрыты bg-white-переопределением) ── */
/* HERO: bg-gradient-to-br from-white via-white to-ink-50 */
html.dark .bg-gradient-to-br.from-white {
  background-image: linear-gradient(135deg, #0e1930 0%, #121e33 70%, rgba(111,155,255,.08) 100%);
}
/* Рекомендации: from-brand-50 to-white */
html.dark .bg-gradient-to-br.from-brand-50 {
  background-image: linear-gradient(135deg, rgba(111,155,255,.10) 0%, #121e33 60%);
}

/* ── Opacity-варианты подложек (отдельные классы, bg-rose-50/40 ≠ bg-rose-50) ── */
html.dark .bg-rose-50\/40,
html.dark .bg-rose-50\/30 { background-color: rgba(43,20,32,.6); }
html.dark .bg-emerald-50\/40 { background-color: rgba(15,43,32,.6); }
html.dark .bg-amber-50\/40 { background-color: rgba(43,34,16,.6); }
html.dark .bg-ink-50\/60,
html.dark .bg-ink-50\/40 { background-color: #0f1a2c; }
html.dark .hover\:bg-ink-50\/40:hover { background-color: #1a2740; }

/* ── Семантические светлые бордеры (светятся на тёмном) ── */
html.dark .border-rose-100,
html.dark .border-rose-200,
html.dark .border-rose-300 { border-color: #5b2338; }
html.dark .hover\:border-rose-300:hover { border-color: #7a3049; }
html.dark .border-emerald-100,
html.dark .border-emerald-200,
html.dark .border-emerald-300 { border-color: #1d4a38; }
html.dark .hover\:border-emerald-300:hover { border-color: #2a6a50; }
html.dark .border-amber-200,
html.dark .border-amber-300 { border-color: #1b3a7a; }
html.dark .border-sky-200 { border-color: #26437a; }
html.dark .border-brand-100 { border-color: rgba(111,155,255,.28); }
html.dark .hover\:border-brand-500\/40:hover { border-color: rgba(111,155,255,.45); }

/* ── Тёмные semantic-тексты 800/900 (заголовки/абзацы алертов) на тёмных подложках ── */
html.dark .text-rose-900 { color: #fecdd3; }
html.dark .text-rose-800 { color: #fda4af; }
html.dark .text-emerald-900 { color: #a7f3d0; }
html.dark .text-emerald-800 { color: #6ee7b7; }
html.dark .text-amber-900 { color: #fde68a; }
html.dark .text-amber-800 { color: #fcd34d; }
html.dark .text-sky-800 { color: #60a5fa; }
html.dark .hover\:text-rose-900:hover { color: #fecdd3; }
html.dark .hover\:text-emerald-900:hover { color: #a7f3d0; }
html.dark .text-brand-700 { color: #93b4ff; }

/* ── ring-white на точках адресной истории (белое кольцо светится) ── */
html.dark .ring-white { --tw-ring-color: #121e33; }

/* ── агент: _loading.html ── */
/* ═══ person_summary.html ═══ */

/* Hero (стр. 15) и «Финансовый след» (стр. 132): светлые градиенты
   from-white/to-brand-50 → тёмная поверхность + бронзовое свечение.
   Утилитные переопределения bg-white их не покрывают (background-image). */
html.dark .bg-gradient-to-br.from-white {
  background-image:
    radial-gradient(120% 120% at 100% 100%, rgba(111,155,255,.08), transparent 55%),
    linear-gradient(135deg, #0e1930 0%, #121e33 100%);
}

/* Трек кольца скоринга (стр. 197): светлый stroke #eef0f3 светится на тёмной карточке.
   Presentation-атрибут проигрывает CSS — !important не нужен. */
html.dark svg circle[stroke="#eef0f3"] {
  stroke: #26375a;
}

/* Плашка банкротства (стр. 76): bg-rose-50/60 — класс с opacity-модификатором,
   семантическим переопределением bg-rose-50 не покрыт. */
html.dark .bg-rose-50\/60 {
  background-color: #2b1420;
}

/* ═══ person_summary.html (стр. 76) + person_search_results.html (стр. 6) ═══ */

/* Светлый rose-бордер на тёмных rose-подложках. */
html.dark .border-rose-200 {
  border-color: #5b2338;
}

/* ═══ _loading.html ═══ */

/* Кольцо вокруг иконки источника (стр. 72): ring-* не входит в покрытые border-ink-*. */
html.dark .ring-ink-200 {
  --tw-ring-color: #26375a;
}

/* ── агент: monitoring_tab.html ── */
/* ═══ relations.html ═══ */

/* Подложка графа связей #rel-graph — inline style с светлым radial-градиентом
   (#f8fafc → #eef2f7) + сетка тёмных точек. Тёмный градиент + бронзовое свечение
   + светлая точечная сетка. !important — бьём inline style="". */
html.dark #rel-graph[style] {
  background: radial-gradient(circle at 50% 50%, #0e1930 0%, #121e33 100%) !important;
  background-image:
    radial-gradient(circle at 1px 1px, rgba(238,243,250,0.06) 1px, transparent 0),
    radial-gradient(circle at 50% 50%, rgba(111,155,255,.08) 0%, transparent 65%),
    radial-gradient(circle at 50% 50%, #0e1930 0%, #121e33 100%) !important;
  background-size: 24px 24px, 100% 100%, 100% 100% !important;
}

/* Легенда графа: точка «Субъект» bg-ink-900 (почти чёрная) невидима на тёмной карточке */
html.dark span.h-3.w-3.bg-ink-900 { background-color: #c6d1e3; }

/* Колонки «Учредители» (violet) и «Бенефициары» (orange): рамки/подложки/текст
   этих палитр не входят в семантику rose/emerald/amber из dark.css */
html.dark .border-violet-100 { border-color: #3a2f5c; }
html.dark .border-orange-100 { border-color: #1b3a7a; }
html.dark .bg-violet-50 { background-color: #241b3f; }
html.dark .bg-orange-50 { background-color: #101f3d; }
html.dark .text-violet-600, html.dark .text-violet-700 { color: #a78bfa; }
html.dark .text-orange-600, html.dark .text-orange-700 { color: #fb923c; }

/* Связанные компании: opacity-варианты bg-ink-50 — отдельные классы,
   не покрыты переопределением bg-ink-50 */
html.dark .bg-ink-50\/30, html.dark .bg-ink-50\/40, html.dark .bg-ink-50\/60 { background-color: #0f1a2c; }
html.dark .hover\:bg-ink-50:hover,
html.dark .hover\:bg-ink-50\/60:hover,
html.dark .hover\:bg-ink-50\/70:hover { background-color: #1a2740; }
html.dark .hover\:bg-emerald-50\/30:hover { background-color: #0f2b20; }

/* ═══ arbitration.html ═══ */

/* Активная кнопка фильтра «Все» (bg-ink-900): почти чёрная на тёмной карточке —
   состояние неотличимо от фона. Приподнятая поверхность + акцентная обводка. */
html.dark button.bg-ink-900 { background-color: #1a2740; box-shadow: inset 0 0 0 1px #31456e; }

/* Шапка модалки дела: светлый градиент from-brand-50 → to-white.
   Gradient-стопы — CSS-переменные, переопределение bg-white их не трогает. */
html.dark .from-brand-50 {
  --tw-gradient-from: #0e1930;
  --tw-gradient-to: rgb(14 25 48 / 0);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
html.dark .to-white { --tw-gradient-to: #121e33; }

/* Кольцо модалки: ring-ink-200 — ring не покрыт переопределением border-ink-* */
html.dark .ring-ink-200 { --tw-ring-color: #26375a; }

/* Полупрозрачная белая шапка карточек сторон в модалке */
html.dark .bg-white\/70 { background-color: rgba(18,30,51,.7); }

/* Полупрозрачные семантические подложки карточек сторон (отдельные классы от *-50) */
html.dark .bg-emerald-50\/30, html.dark .bg-emerald-50\/40 { background-color: #0f2b20; }
html.dark .bg-rose-50\/30 { background-color: #2b1420; }
html.dark .bg-amber-50\/30 { background-color: #101f3d; }
html.dark .bg-brand-50\/30, html.dark .bg-brand-50\/40 { background-color: rgba(111,155,255,.10); }
html.dark .hover\:bg-ink-100:hover { background-color: #1a2740; }

/* Светлые семантические рамки (100/200/300) — светятся на тёмных подложках */
html.dark .border-rose-100, html.dark .border-rose-200, html.dark .border-rose-300 { border-color: #5b2338; }
html.dark .border-emerald-100, html.dark .border-emerald-200, html.dark .border-emerald-300 { border-color: #1d4a38; }
html.dark .border-amber-200, html.dark .border-amber-300 { border-color: #1b3a7a; }
html.dark .border-brand-100, html.dark .border-brand-200 { border-color: rgba(111,155,255,.30); }

/* Светлое кольцо точек таймлайна «Хронология» (ring-4 ring-brand-50) */
html.dark .ring-brand-50 { --tw-ring-color: rgba(111,155,255,.15); }

/* ═══ general_courts.html ═══ */

/* Баннер confidence_tier с _tone == 'sky' (medium): sky-палитра вне rose/emerald/amber */
html.dark .bg-sky-50 { background-color: #12233f; }
html.dark .border-sky-300 { border-color: #1e3a5f; }
html.dark .text-sky-900 { color: #9ec5f0; }
html.dark .text-sky-700 { color: #60a5fa; }
/* ═══════════ ФИКС-ПАСС 6: bg-white/NN opacity-варианты (/search пилюля, свитчер) ═══════════ */
html.dark .bg-white\/80 { background-color: rgba(18,30,51,.85); }
html.dark .bg-white\/70 { background-color: rgba(18,30,51,.8); }
html.dark .bg-white\/90, html.dark .bg-white\/95 { background-color: rgba(18,30,51,.92); }


/* ── Знак «Бизтория»: своих правил не нужно — обводка идёт currentColor,
      ядро через .text-brand-600, оба класса переопределены выше ────────
   Знак плоский двухцветный: синяя масса + маджентовый отсечённый клин.
   На фоне #0b1424 обе краски чуть осветляем, иначе синий проваливается
   в фон. Канал между кусками — это сам фон, поэтому он честно темнеет. */

/* ── Типографика в тёмной теме ───────────────────────────────────────
   Белый Unbounded 700 на тёмно-синем «заплывает»: контрформы визуально
   мельче, чем на светлом. Снижаем вес и добавляем воздуха трекингом.
   Градиент заголовка тоже поднимаем по светлоте — тёмно-фиолетовый старт
   на фоне #0b1424 давал контраст на грани 3:1. */
html.dark .hero-title { font-weight: 600; letter-spacing: -0.025em; }
html.dark .wordmark { color: #eef3fa; font-weight: 600; }
html.dark .text-gradient-flow {
  background: linear-gradient(110deg, #5b8cff 0%, #8b8ff8 25%, #c084fc 50%, #f472b6 75%, #5b8cff 100%);
  background-size: 300% 300%;
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
html.dark .eyebrow-mono { color: #94a3b8; }

/* ── Шов под шапкой ──────────────────────────────────────────────────
   Шапка была #121e33 (цвет поверхности), фон страницы — #0b1424, а карточка
   героя начинается на 36 px ниже. Между двумя светлыми элементами оставалась
   тёмная полоса во всю ширину — читалась как дефект вёрстки, а не как приём.
   Приводим шапку к цвету фона: карточка честно «лежит» на общем поле. */
/* Специфичность: у шапки класс .bg-white, и правило html.dark .bg-white
   (0,2,0) перебивало html.dark header (0,1,1). Добавляем класс в селектор. */
html.dark header.bg-white { background-color: #0b1424; }

/* ── Шапка в тёмной теме ──────────────────────────────────────────────
   «Регистрация» получала общий тёмный фон #22345a, и на тёмно-синей шапке
   её контраст падал до 1.50:1 (в светлой теме 18.17:1) — главная кнопка
   выглядела отключённой. На тёмном фоне primary должна быть СВЕТЛОЙ. */
html.dark header a[href="/register"] {
  background-color: #eef3fa;
  color: #0b1424;
}
html.dark header a[href="/register"]:hover { background-color: #ffffff; }

/* Рамки тумблера и плашки аккаунта: 1.56:1 к фону — почти растворялись. */
html.dark header button[onclick],
html.dark header .hdr-acct { border-color: #31456e; }

/* ── История: переключатель режима и календарь диапазона ── */
.dark .dh-seg { background: rgba(255, 255, 255, .06); }
.dark .dh-seg__item { color: #9aa3b0; }
.dark .dh-seg__item:hover { color: #e8ecf2; }
.dark .dh-seg__item[aria-current="true"] {
  background: rgba(255, 255, 255, .11);
  color: #f3f5f8;
  box-shadow: none;
}
.dark .dh-range__btn {
  background: rgba(255, 255, 255, .04);
  border-color: rgba(255, 255, 255, .12);
  color: #e8ecf2;
}
.dark .dh-range__btn:hover { border-color: rgba(255, 255, 255, .22); }
.dark .dh-range__ph { color: #7b8492; }
.dark .dh-range__clear:hover { background: rgba(255, 255, 255, .10); color: #e8ecf2; }
.dark .dh-range__pop {
  background: #171b22;
  border-color: rgba(255, 255, 255, .12);
  box-shadow: 0 12px 32px rgba(0, 0, 0, .5);
}
.dark .dh-range__presets { border-bottom-color: rgba(255, 255, 255, .09); }
.dark .dh-range__preset { background: rgba(255, 255, 255, .06); color: #9aa3b0; }
.dark .dh-range__preset:hover { background: rgba(255, 255, 255, .12); color: #e8ecf2; }
.dark .dh-range__nav b { color: #f3f5f8; }
.dark .dh-range__arrow { color: #9aa3b0; }
.dark .dh-range__arrow:hover { background: rgba(255, 255, 255, .09); color: #e8ecf2; }
.dark .dh-range__dow { color: #7b8492; }
.dark .dh-range__day { color: #e8ecf2; }
.dark .dh-range__day:hover:not(:disabled) { background: rgba(255, 255, 255, .09); }
.dark .dh-range__day:disabled,
.dark .dh-range__day[data-out="1"] { color: #4d5563; }
.dark .dh-range__day[data-in="1"] { background: rgba(111, 155, 255, .18); }
.dark .dh-range__day[data-sel="1"] { background: #2f6bff; }
.dark .dh-range__day[data-today="1"]:not([data-sel="1"]) {
  box-shadow: inset 0 0 0 1px rgba(111, 155, 255, .5);
}
.dark .dh-range__hint { color: #7b8492; }
.dark .dh-daybar td { background: rgba(255, 255, 255, .04); color: #9aa3b0; }
.dark .dh-daybar__n { color: #7b8492; }

/* ── Раздел «Контакты» ── */
.dark .dh-ct-card { background: rgba(255,255,255,.03); border-color: rgba(255,255,255,.10); }
.dark .dh-ct-card__head { border-bottom-color: rgba(255,255,255,.08); }
.dark .dh-ct-card__head svg { color: #6f9bff; }
.dark .dh-ct-card__title { color: #9aa3b0; }
.dark .dh-ct-card__n { background: rgba(111,155,255,.14); color: #8fb2ff; }
.dark .dh-ct-row + .dh-ct-row { border-top-color: rgba(255,255,255,.06); }
.dark .dh-ct-val, .dark .dh-ct-val a { color: #e8ecf2; }
.dark .dh-ct-val a:hover { color: #8fb2ff; }
.dark .dh-ct-meta { color: #7b8492; }
.dark .dh-ct-tag[data-t="legal"]  { background: rgba(111,155,255,.16); color: #8fb2ff; }
.dark .dh-ct-tag[data-t="postal"] { background: rgba(52,190,140,.16);  color: #57d3a2; }
.dark .dh-ct-tag[data-t="former"] { background: rgba(255,255,255,.07); color: #9aa3b0; }
.dark .dh-ct-map { border-color: rgba(255,255,255,.12); color: #9aa3b0; }
.dark .dh-ct-map:hover { border-color: rgba(143,178,255,.4); color: #8fb2ff; background: rgba(111,155,255,.07); }
.dark .dh-ct-copy { color: #5d6675; }
.dark .dh-ct-copy:hover { background: rgba(255,255,255,.09); color: #e8ecf2; }
.dark .dh-ct-copy.is-done { color: #57d3a2; }
.dark .dh-ct-empty { border-color: rgba(255,255,255,.14); color: #9aa3b0; }
.dark .dh-ct-note { color: #7b8492; }

/* ── Шапка карточки контрагента ── */
.dark .dh-cohead { background: #121e33; border-color: #26375a; box-shadow: none; }
.dark .dh-cohead__name { color: #eef3fa; }
.dark .dh-cohead__kind { background: rgba(111,155,255,.14); color: #8fb2ff; }
.dark .dh-cohead__sep { background: #3b4a63; }
.dark .dh-cohead__tab { color: #8794ab; }
.dark .dh-cohead__status[data-s="ok"]   { background: rgba(52,190,140,.16); color: #57d3a2; }
.dark .dh-cohead__status[data-s="warn"] { background: rgba(214,158,46,.18); color: #e0b357; }
.dark .dh-cohead__status[data-s="bad"]  { background: rgba(229,72,77,.16);  color: #ff8a8d; }
.dark .dh-cohead__status[data-s="ink"]  { background: rgba(255,255,255,.07); color: #9aa3b0; }
/* У .inn-copy тёмного правила не было вовсе — подсветка при наведении
   на тёмном фоне была невидима. */
.dark .inn-copy:hover { background: rgba(255, 255, 255, .08); }

/* ── Плавающие кнопки карточки ── */
.dark .dh-fab--up { background: #26375a; box-shadow: 0 10px 24px -10px rgba(0,0,0,.7); }
