/**
 * Combo / Profile HUD — тёмная и светлая палитра, изоляция от global dark-theme.css.
 * Классы: .combo-hud, .profile-hud, .home-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .style-hud, .summary-hud, .giveaway-hud, .camp-hud, .brigade-hud
 * Холст: Obsidian Matrix (нейтральный обсидиан). Функциональные цвета (зелёный/фиолет/оранж/HP) сохранены.
 */

/* Цвет полосок: HP босса (рубин) и общий прогресс (сталь) — раздельно */
html.dark {
  --combo-hp-fill: #c45c62;
  --combo-hp-track: #030405;
  --combo-progress-fill: #7d92a8;
  --combo-progress-bar-text: #d8dee4;
  --combo-progress-bar-track: #181b21;
  --combo-mobile-dock-bg: #0c0d10;
  --combo-mobile-dock-border: rgba(255, 255, 255, 0.06);
}

html:not(.dark) {
  --combo-hp-fill: #b91c1c;
  --combo-hp-track: #e2e8f0;
  --combo-progress-fill: #64748b;
  --combo-progress-bar-text: #07080a;
  --combo-progress-bar-track: #cbd5e1;
  --combo-mobile-dock-bg: #f1f5f9;
  --combo-mobile-dock-border: rgba(15, 23, 42, 0.1);
}

/*
 * Мобильная геометрия: legacy (нижний док) vs new-mobile-nav (без дока).
 * --mobile-scroll-pad: отступ конца скролла в .app-main-scroll (App.tsx).
 * --mobile-overlay-pad: fixed/absolute оверлеи и PWA (док position:fixed).
 *
 * Legacy в браузере/Telegram: док — flex-sibling под <main>, не перекрывает скролл.
 * scroll-pad = только дыхание. Высота дока в pad давала «двойной» зазор (пустота + док).
 * PWA: док position:fixed, у main уже --mobile-overlay-pad — scroll-pad тоже маленький.
 */
html {
  /* Высота ряда иконок дока (совпадает с MOBILE_DOCK.scrollRow h-[60px]) */
  --mobile-dock-height: 60px;
  --mobile-scroll-pad: max(0.75rem, env(safe-area-inset-bottom, 0px));
  --mobile-overlay-pad: calc(var(--mobile-dock-height) + env(safe-area-inset-bottom, 0px));
}

html.new-mobile-nav {
  --mobile-dock-height: 0px;
  /* Без нижней навигации — без «полоски» safe-area под контентом */
  --mobile-scroll-pad: 0px;
  --mobile-overlay-pad: 0px;
}

/*
 * Изоляция Layout: отступы живут на корне layout, не смешиваются между собой.
 * Bottom Nav: 60px док + safe-area. Sidebar: без нижнего clearance.
 */
.layout-sidebar {
  --layout-dock-clearance: 0px;
  --layout-scroll-pad: 0px;
  --layout-overlay-pad: 0px;
}

.layout-bottom-nav {
  --layout-dock-clearance: calc(60px + env(safe-area-inset-bottom, 0px));
  /* Док в потоке — только лёгкое дыхание, без второго safe-area */
  --layout-scroll-pad: 0.25rem;
  --layout-overlay-pad: var(--layout-dock-clearance);
}

/*
 * PWA: док fixed, clearance уже на main (--mobile-overlay-pad).
 * Не дублируем тот же отступ на scroll — иначе полоска над доком.
 */
html.pwa-standalone .layout-bottom-nav {
  --layout-scroll-pad: 0.25rem;
}

html.pwa-standalone:not(.new-mobile-nav) {
  --mobile-scroll-pad: 0.25rem;
}

/*
 * Гарантированный clearance: Tailwind `p-*` shorthand может перебить pb.
 * Сначала layout-scoped, иначе legacy html vars.
 */
@media (max-width: 767px) {
  .layout-sidebar .app-main-scroll,
  .layout-bottom-nav .app-main-scroll {
    padding-bottom: var(--layout-scroll-pad) !important;
  }
}

/* Тёмная тема — Obsidian Matrix (холст) + сочные функциональные акценты */
.combo-hud,
html.dark .combo-hud,
html.dark .home-hud,
html.dark .profile-hud,
html.dark .worker-hud,
html.dark .zaruba-hud,
html.dark .dealer-hud,
html.dark .stash-hud,
html.dark .social-hud,
html.dark .weapon-hud,
html.dark .style-hud,
html.dark .summary-hud,
html.dark .giveaway-hud,
html.dark .camp-hud,
html.dark .brigade-hud,
html.dark .combo-hud-surface{
  /* Холст / плоскости */
  --combo-bg: #07080a;
  --combo-surface: #121418;
  --combo-surface-2: #181b21;
  --combo-surface-hover: #1f222a;
  --combo-header: #0c0d10;
  --combo-inset-deep: #030405;
  --combo-border: rgba(255, 255, 255, 0.05);
  --combo-border-hover: rgba(255, 255, 255, 0.15);
  --combo-overlay: rgba(7, 8, 10, 0.85);
  /* Премиальная титановая типографика (Titanium Minimalist) */
  --combo-text: #b1b8c0;
  --combo-text-strong: #d8dee4;
  --combo-text-secondary: #9aa3ad;
  --combo-muted: #7d8794;
  --combo-muted-deep: #6a7380;
  /* Нейтральный хром-акцент (не красит холст синевой) */
  --combo-accent: #a8b0bd;
  --combo-accent-soft: rgba(255, 255, 255, 0.08);
  --combo-accent-border: rgba(255, 255, 255, 0.18);
  --combo-accent-text: #b1b8c0;
  --combo-accent-text-bright: #d8dee4;
  --combo-queued-bg: rgba(255, 255, 255, 0.04);
  --combo-queued-border: rgba(255, 255, 255, 0.14);
  --combo-queued-glow: 0 0 0 transparent;
  --combo-section-accent: #cbd5e1;
  /* Полоски: HP босса (рубин) отдельно от общего прогресса (сталь) */
  --combo-hp-fill: #c45c62;
  --combo-hp-track: #030405;
  --combo-progress-fill: #7d92a8;
  --combo-combo-track: #030405;
  --combo-brigade: #8a5cf5;
  --combo-purple-soft: rgba(138, 92, 245, 0.2);
  --combo-purple-border: rgba(138, 92, 245, 0.45);
  --combo-purple-text: #c4b5fd;
  --combo-success-text: #2f9e5c;
  --combo-success-bg: rgba(21, 128, 61, 0.32);
  --combo-success-border: rgba(47, 158, 92, 0.5);
  --combo-success-bg-hover: rgba(21, 128, 61, 0.42);
  --combo-success-solid: #147a3c;
  --combo-success-solid-hover: #116334;
  --combo-success-solid-border: #2f9e5c;
  --combo-danger-text: #e84a55;
  --combo-danger-bg: rgba(200, 30, 45, 0.32);
  --combo-danger-border: rgba(210, 50, 60, 0.5);
  --combo-danger-bg-hover: rgba(200, 30, 45, 0.42);
  --combo-danger-solid: #c41e32;
  --combo-danger-solid-hover: #a01828;
  --combo-danger-solid-border: #e84a55;
  --combo-warn-text: #fca5a5;
  --combo-warn-bg: rgba(239, 68, 68, 0.12);
  --combo-warn-border: rgba(239, 68, 68, 0.4);
  --combo-amber-text: #c9b896;
  --combo-amber-bg: rgba(201, 184, 150, 0.12);
  --combo-amber-border: rgba(201, 184, 150, 0.35);
  /* Чипы медалей: бесцветный / бронза / серебро / золото */
  --combo-medal-none-text: #8a929c;
  --combo-medal-none-bg: rgba(138, 146, 156, 0.12);
  --combo-medal-none-border: rgba(138, 146, 156, 0.32);
  --combo-medal-bronze-text: #c4a07a;
  --combo-medal-bronze-bg: rgba(166, 112, 68, 0.22);
  --combo-medal-bronze-border: rgba(196, 160, 122, 0.45);
  --combo-medal-silver-text: #c5cbd4;
  --combo-medal-silver-bg: rgba(160, 170, 184, 0.2);
  --combo-medal-silver-border: rgba(180, 190, 204, 0.45);
  --combo-medal-gold-text: #e2d4b0;
  --combo-medal-gold-bg: rgba(201, 184, 150, 0.22);
  --combo-medal-gold-border: rgba(201, 184, 150, 0.5);
  /* Макро-кнопки боя: акцентные, различимые, без неона */
  --combo-macro-damage-text: #e8b4b8;
  --combo-macro-damage-bg: rgba(154, 61, 72, 0.42);
  --combo-macro-damage-border: rgba(196, 92, 98, 0.65);
  --combo-macro-damage-solid: #8f3844;
  --combo-macro-damage-solid-hover: #7a2f39;
  --combo-macro-buff-text: #9fd4c4;
  --combo-macro-buff-bg: rgba(26, 107, 90, 0.4);
  --combo-macro-buff-border: rgba(61, 155, 132, 0.65);
  --combo-macro-buff-solid: #1a6b5a;
  --combo-macro-buff-solid-hover: #15574a;
  --combo-macro-zsh-text: #9ec8dc;
  --combo-macro-zsh-bg: rgba(42, 90, 114, 0.42);
  --combo-macro-zsh-border: rgba(90, 154, 184, 0.65);
  --combo-macro-zsh-solid: #2a5a72;
  --combo-macro-zsh-solid-hover: #224a5e;
  --combo-macro-soap-text: var(--combo-amber-text);
  --combo-macro-soap-bg: var(--combo-amber-bg);
  --combo-macro-soap-border: var(--combo-amber-border);
  --combo-macro-soap-solid: #8a6e3d;
  --combo-macro-soap-solid-hover: #735c33;
  --combo-macro-needle-text: #cbb0d8;
  --combo-macro-needle-bg: rgba(90, 61, 110, 0.42);
  --combo-macro-needle-border: rgba(138, 106, 158, 0.65);
  --combo-macro-needle-solid: #5a3d6e;
  --combo-macro-needle-solid-hover: #4a325b;
  --combo-damage-text: #8bb8c4;
  --combo-orange-text: #d4a574;
  --combo-shadow: 0 4px 24px rgba(0, 0, 0, 0.5);
  --combo-switch-off: #181b21;
  --combo-switch-knob: #d8dee4;
  --combo-option-on-bg: rgba(255, 255, 255, 0.08);
  --combo-option-on-shadow: 0 0 0 transparent;
  font-family: 'Roboto Condensed', system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Светлая тема — нейтральный светлый инверт + те же функциональные цвета */
html:not(.dark) .combo-hud,
html:not(.dark) .home-hud,
html:not(.dark) .profile-hud,
html:not(.dark) .worker-hud,
html:not(.dark) .zaruba-hud,
html:not(.dark) .dealer-hud,
html:not(.dark) .stash-hud,
html:not(.dark) .social-hud,
html:not(.dark) .weapon-hud,
html:not(.dark) .style-hud,
html:not(.dark) .summary-hud,
html:not(.dark) .giveaway-hud,
html:not(.dark) .camp-hud,
html:not(.dark) .brigade-hud,
html:not(.dark) .combo-hud-surface{
  --combo-bg: #f1f5f9;
  --combo-surface: #ffffff;
  --combo-surface-2: #f8fafc;
  --combo-surface-hover: #eef2f6;
  --combo-header: #e8edf3;
  --combo-inset-deep: #f8fafc;
  --combo-border: rgba(15, 23, 42, 0.08);
  --combo-border-hover: rgba(15, 23, 42, 0.16);
  --combo-overlay: rgba(7, 8, 10, 0.5);
  --combo-text: #0f172a;
  --combo-text-strong: #020617;
  --combo-text-secondary: #334155;
  --combo-muted: #64748b;
  --combo-muted-deep: #94a3b8;
  --combo-accent: #64748b;
  --combo-accent-soft: rgba(15, 23, 42, 0.06);
  --combo-accent-border: rgba(15, 23, 42, 0.16);
  --combo-accent-text: #334155;
  --combo-accent-text-bright: #0f172a;
  --combo-queued-bg: rgba(15, 23, 42, 0.05);
  --combo-queued-border: rgba(15, 23, 42, 0.14);
  --combo-queued-glow: rgba(15, 23, 42, 0.05);
  --combo-section-accent: #475569;
  --combo-hp-fill: #b91c1c;
  --combo-hp-track: #e2e8f0;
  --combo-progress-fill: #64748b;
  --combo-combo-track: #e2e8f0;
  --combo-brigade: #7c3aed;
  --combo-purple-soft: rgba(124, 58, 237, 0.1);
  --combo-purple-border: rgba(124, 58, 237, 0.35);
  --combo-purple-text: #6d28d9;
  --combo-success-text: #166534;
  --combo-success-bg: rgba(20, 122, 60, 0.14);
  --combo-success-border: rgba(20, 122, 60, 0.45);
  --combo-success-bg-hover: rgba(20, 122, 60, 0.24);
  --combo-success-solid: #147a3c;
  --combo-success-solid-hover: #116334;
  --combo-success-solid-border: #15803d;
  --combo-danger-text: #a11628;
  --combo-danger-bg: rgba(196, 30, 50, 0.1);
  --combo-danger-border: rgba(196, 30, 50, 0.4);
  --combo-danger-bg-hover: rgba(196, 30, 50, 0.18);
  --combo-danger-solid: #c41e32;
  --combo-danger-solid-hover: #a01828;
  --combo-danger-solid-border: #be1a2e;
  --combo-warn-text: #b91c1c;
  --combo-warn-bg: rgba(239, 68, 68, 0.1);
  --combo-warn-border: rgba(185, 28, 28, 0.3);
  --combo-amber-text: #b45309;
  --combo-amber-bg: rgba(245, 158, 11, 0.14);
  --combo-amber-border: rgba(180, 83, 9, 0.4);
  --combo-medal-none-text: #64748b;
  --combo-medal-none-bg: rgba(100, 116, 139, 0.1);
  --combo-medal-none-border: rgba(100, 116, 139, 0.3);
  --combo-medal-bronze-text: #9a6b3f;
  --combo-medal-bronze-bg: rgba(180, 120, 60, 0.14);
  --combo-medal-bronze-border: rgba(154, 107, 63, 0.4);
  --combo-medal-silver-text: #475569;
  --combo-medal-silver-bg: rgba(148, 163, 184, 0.18);
  --combo-medal-silver-border: rgba(100, 116, 139, 0.4);
  --combo-medal-gold-text: #b45309;
  --combo-medal-gold-bg: rgba(245, 158, 11, 0.16);
  --combo-medal-gold-border: rgba(180, 83, 9, 0.45);
  --combo-macro-damage-text: #9a3d48;
  --combo-macro-damage-bg: rgba(154, 61, 72, 0.12);
  --combo-macro-damage-border: rgba(154, 61, 72, 0.4);
  --combo-macro-damage-solid: #9a3d48;
  --combo-macro-damage-solid-hover: #82343d;
  --combo-macro-buff-text: #0f766e;
  --combo-macro-buff-bg: rgba(15, 118, 110, 0.12);
  --combo-macro-buff-border: rgba(15, 118, 110, 0.4);
  --combo-macro-buff-solid: #0f766e;
  --combo-macro-buff-solid-hover: #0d6560;
  --combo-macro-zsh-text: #0369a1;
  --combo-macro-zsh-bg: rgba(3, 105, 161, 0.1);
  --combo-macro-zsh-border: rgba(3, 105, 161, 0.35);
  --combo-macro-zsh-solid: #0369a1;
  --combo-macro-zsh-solid-hover: #025a8a;
  --combo-macro-soap-text: var(--combo-amber-text);
  --combo-macro-soap-bg: var(--combo-amber-bg);
  --combo-macro-soap-border: var(--combo-amber-border);
  --combo-macro-soap-solid: #b45309;
  --combo-macro-soap-solid-hover: #92400e;
  --combo-macro-needle-text: #7e22ce;
  --combo-macro-needle-bg: rgba(126, 34, 206, 0.1);
  --combo-macro-needle-border: rgba(126, 34, 206, 0.35);
  --combo-macro-needle-solid: #7e22ce;
  --combo-macro-needle-solid-hover: #6b21a8;
  --combo-damage-text: #0c4a6e;
  --combo-orange-text: #c2410c;
  --combo-shadow: 0 4px 20px rgba(15, 23, 42, 0.08);
  --combo-switch-off: #e2e8f0;
  --combo-switch-knob: #ffffff;
  --combo-option-on-bg: rgba(15, 23, 42, 0.06);
  --combo-option-on-shadow: 0 0 0 transparent;
  font-family: 'Roboto Condensed', system-ui, sans-serif;
}

/* Типографика профиля (Oswald / PT Mono) — scoped helpers */
.profile-hud .profile-hud-name {
  font-family: 'Oswald', 'Roboto Condensed', system-ui, sans-serif;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-wrap: balance;
}

.profile-hud .profile-hud-mono,
.profile-hud .tabular-nums {
  font-family: 'PT Mono', ui-monospace, monospace;
  font-variant-numeric: tabular-nums;
}

html.dark .combo-hud,
html.dark .home-hud,
html.dark .profile-hud,
html.dark .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .stash-hud,
html:not(.dark) .combo-hud,
html:not(.dark) .home-hud,
html:not(.dark) .profile-hud,
html:not(.dark) .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud{
  background-color: var(--combo-bg) !important;
  color: var(--combo-text) !important;
}

/* Portal-модалки (<dialog>): размытие через ::backdrop, без сплошной «стены» */
.hud-modal-dialog{
  border: 0;
  padding: 1rem;
  margin: 0;
  max-width: none;
  max-height: none;
  width: 100%;
  height: 100%;
  max-height: 100dvh;
  box-sizing: border-box;
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent !important;
  color: inherit;
  overflow: hidden;
  overscroll-behavior: contain;
}

.hud-modal-dialog::backdrop{
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  backdrop-filter: blur(14px) saturate(125%);
  background: rgba(15, 23, 42, 0.14);
}

html.dark .hud-modal-dialog::backdrop{
  background: rgba(0, 0, 0, 0.14);
}

html:not(.dark) .hud-modal-dialog::backdrop{
  background: rgba(15, 23, 42, 0.1);
}

.hud-modal-dialog__frame{
  position: relative;
  z-index: 1;
  flex: 0 1 auto;
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow-y: auto;
  pointer-events: auto;
}

/* Fallback, если ::backdrop / blur недоступны (часто Telegram WebView) */
.hud-modal-dialog__scrim{
  display: none;
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.28);
}

@supports not (
  (-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))
){
  .hud-modal-dialog::backdrop{
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background: rgba(0, 0, 0, 0.28);
  }

  .hud-modal-dialog__scrim{
    display: block;
  }
}

/* Настройки (главная / профиль): лист снизу на мобиле, blur через ::backdrop */
.hud-modal-dialog.profile-settings-hud-dialog{
  align-items: flex-end;
  padding: 0 0 var(--mobile-overlay-pad);
}

@media (min-width: 640px){
  .hud-modal-dialog.profile-settings-hud-dialog{
    align-items: center;
    padding: 1rem;
  }
}

.hud-modal-dialog.profile-settings-hud-dialog .hud-modal-dialog__frame{
  align-items: flex-end;
}

@media (min-width: 640px){
  .hud-modal-dialog.profile-settings-hud-dialog .hud-modal-dialog__frame{
    align-items: center;
  }
}

html.dark .combo-hud-surface,
html:not(.dark) .combo-hud-surface{
  background-color: var(--combo-surface) !important;
  color: var(--combo-text) !important;
}

/* Вложенный scope внутри панели — фон задаёт родитель (surface), не перекрывать чёрным */
.combo-hud .combo-hud,
.combo-hud .home-hud,
.combo-hud .profile-hud,
.home-hud .combo-hud,
.home-hud .home-hud,
.home-hud .profile-hud,
.profile-hud .combo-hud,
.profile-hud .home-hud,
.profile-hud .profile-hud,
.worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud .combo-hud,
.worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud,
.combo-hud .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud,
.home-hud .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud,
.profile-hud .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud{
  background-color: transparent !important;
}

/* Не даём global html.dark перекрашивать карточки HUD (комбо / главная / профиль) */
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .bg-white,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .bg-slate-50,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .bg-slate-100,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .bg-gray-50,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .bg-white,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .bg-slate-50,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .bg-slate-100{
  background-color: var(--combo-surface) !important;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='bg-white/'],
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='bg-slate-800/'],
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='bg-white/'],
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='bg-slate-50/']{
  background-color: var(--combo-surface-2) !important;
}

/* Старые gradient-оболочки */
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='from-blue-50'][class*='rounded-xl'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='from-blue-900'][class*='rounded-xl'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='from-blue-950'][class*='rounded-xl'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='from-slate-900'][class*='rounded-2xl'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='from-blue-50/70'][class*='sticky'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='from-blue-50/90'][class*='sticky']{
  background: var(--combo-header) !important;
  background-image: none !important;
  border-color: var(--combo-border) !important;
  color: var(--combo-muted) !important;
}

:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-blue-200'][class*='bg-white/20'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-blue-800'][class*='bg-black/10'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-blue-200/60'][class*='bg-white/20']{
  background: var(--combo-header) !important;
  border-color: var(--combo-border) !important;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-gray-900,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-slate-800,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-slate-700,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-slate-600,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-slate-500,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .dark\:text-gray-100,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .dark\:text-slate-200,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .dark\:text-slate-300,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .dark\:text-slate-400,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-gray-900,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-slate-800,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-slate-700,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-slate-600,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-slate-500{
  color: var(--combo-text) !important;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-slate-400,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .text-slate-400{
  color: var(--combo-muted) !important;
}

:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-blue-200'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-blue-300'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-indigo-200'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-indigo-700'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-indigo-800'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-purple-200'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-purple-300'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-purple-700'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-purple-800'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='border-blue-200/40'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='dark:border-blue-700'],
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) [class*='dark:border-blue-800']{
  border-color: var(--combo-border) !important;
}

/* Активные табы / акцент-кнопки — плоский матовый хром (без градиентов) */
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary),
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary) {
  background-color: var(--combo-accent) !important;
  background-image: none !important;
  border: 1px solid var(--combo-accent-border) !important;
  color: #07080a !important;
}

html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary) {
  background-color: var(--combo-accent) !important;
  border-color: var(--combo-accent-border) !important;
  color: #07080a !important;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary):hover:not(:disabled),
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary):hover:not(:disabled) {
  background-color: color-mix(in srgb, var(--combo-accent) 90%, #ffffff) !important;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary):active:not(:disabled),
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary):active:not(:disabled) {
  transform: scale(0.98);
}

@supports (background: color-mix(in srgb, red 50%, blue)) {
  html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
    :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary),
  html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
    :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary) {
    background-color: var(--combo-accent) !important;
    border-color: var(--combo-accent-border) !important;
    color: #07080a !important;
  }

  html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
    :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary):hover:not(:disabled),
  html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
    :is(.combo-hud-tab-active, .combo-hud-btn-primary, .social-btn-primary):hover:not(:disabled) {
    background-color: color-mix(in srgb, var(--combo-accent) 88%, #ffffff) !important;
  }
}

:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.combo-hud-btn-primary, .social-btn-primary) svg {
  color: inherit !important;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-tab-brigade,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-tab-brigade{
  background-color: var(--combo-brigade) !important;
  color: #d8dee4 !important;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-section-title,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-section-title{
  background: var(--combo-header) !important;
  background-image: none !important;
  color: var(--combo-section-accent) !important;
  letter-spacing: 0.12em;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .giveaway-hud, .brigade-hud, .style-hud, .summary-hud, .camp-hud) .combo-hud-settings-field,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .giveaway-hud, .brigade-hud, .style-hud, .summary-hud, .camp-hud) select.combo-hud-settings-field,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .giveaway-hud, .brigade-hud, .style-hud, .summary-hud, .camp-hud) .combo-hud-settings-field,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .giveaway-hud, .brigade-hud, .style-hud, .summary-hud, .camp-hud) select.combo-hud-settings-field{
  background-color: var(--combo-surface-2) !important;
  border: 1px solid var(--combo-border) !important;
  border-radius: 0.5rem;
  color: var(--combo-text) !important;
  box-shadow: none;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .brigade-hud, .style-hud, .summary-hud, .camp-hud) select.combo-hud-settings-field,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .brigade-hud, .style-hud, .summary-hud, .camp-hud) select.combo-hud-settings-field{
  cursor: pointer;
  padding-right: 1.75rem !important;
  background-image: linear-gradient(45deg, transparent 50%, var(--combo-muted) 50%),
    linear-gradient(135deg, var(--combo-muted) 50%, transparent 50%);
  background-position: calc(100% - 14px) calc(50% + 2px), calc(100% - 9px) calc(50% + 2px);
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
  appearance: none;
  -webkit-appearance: none;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .giveaway-hud, .brigade-hud, .style-hud, .summary-hud, .camp-hud) .combo-hud-settings-field:focus,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .giveaway-hud, .brigade-hud, .style-hud, .summary-hud, .camp-hud) select.combo-hud-settings-field:focus,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .giveaway-hud, .brigade-hud, .style-hud, .summary-hud, .camp-hud) .combo-hud-settings-field:focus,
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .giveaway-hud, .brigade-hud, .style-hud, .summary-hud, .camp-hud) select.combo-hud-settings-field:focus{
  border-color: var(--combo-accent-border) !important;
  outline: none !important;
  box-shadow: 0 0 0 1px var(--combo-accent-border) !important;
}

/* Селекты внутри панели времени графика урона — без рамки, подсветка фона */
.weapon-hud select.damage-chart-select-inline{
  border: none !important;
  box-shadow: none !important;
  border-radius: 0.375rem;
}
.weapon-hud select.damage-chart-select-inline:focus{
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background-color: var(--combo-surface-hover) !important;
}

/* Карточка оружия — алиасы под разметку weapon-card */
.weapon-hud {
  --combo-bg-card: var(--combo-surface-2);
  --combo-text-main: var(--combo-text);
  --combo-text-title: var(--combo-text-strong);
  --combo-text-muted: var(--combo-muted);
  --combo-bg-badge: var(--combo-header);
  --combo-bg-block: var(--combo-surface);
  --combo-border-inner: var(--combo-border);
  --combo-text-highlight: var(--combo-text-strong);
  --combo-bg-input: var(--combo-inset-deep);
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud) select.combo-hud-settings-field option{
  background-color: var(--combo-surface);
  color: #e8ecf4;
}

html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud) select.combo-hud-settings-field option{
  background-color: var(--combo-surface);
  color: #1a2234;
}

/* HP / прогресс — трек и заливка (цвет как полоска HP босса) */
.combo-hud-hp-track,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .style-hud, .summary-hud)
  .combo-hud-hp-track,
.home-hud .home-hud-hp-track,
.profile-hud .profile-hud-hp-track {
  background-color: var(--combo-hp-track) !important;
}

.combo-hud-hp-fill,
.home-hud-hp-fill,
.profile-hud-hp-fill,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .style-hud, .summary-hud)
  .combo-hud-hp-fill {
  background-color: var(--combo-hp-fill) !important;
  background-image: none !important;
}

/* Динамическая полоска HP босса: градиент + блик, цвет по % */
.combo-hud-boss-hp-fill {
  position: relative;
  height: 100%;
  overflow: hidden;
  border-radius: 0.125rem;
  transform: translateZ(0);
  transition:
    width 0.5s ease-out,
    background-color 0.45s ease,
    box-shadow 0.45s ease;
}

.combo-hud-boss-hp-fill::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0.22) 0%,
    rgba(255, 255, 255, 0.06) 38%,
    transparent 52%,
    rgba(0, 0, 0, 0.18) 100%
  );
  pointer-events: none;
}

.combo-hud-boss-hp-fill::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: -40%;
  width: 38%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.28),
    transparent
  );
  transform: skewX(-18deg);
  pointer-events: none;
  animation: combo-hp-sheen 2.8s ease-in-out infinite;
}

/* A · Классика: зелёный → янтарь → оранж → алый */
.combo-hud-boss-hp-fill--high {
  background-color: #2a8f55;
  background-image: linear-gradient(90deg, #1f6f42 0%, #2f9e5c 55%, #3cb371 100%);
  box-shadow: inset 0 0 0 1px rgba(90, 200, 130, 0.18);
}

.combo-hud-boss-hp-fill--good {
  background-color: #b8923a;
  background-image: linear-gradient(90deg, #8f6e28 0%, #c9a24a 55%, #d4b45c 100%);
  box-shadow: inset 0 0 0 1px rgba(232, 200, 110, 0.2);
}

.combo-hud-boss-hp-fill--low {
  background-color: #c56a3a;
  background-image: linear-gradient(90deg, #9a4a28 0%, #d4784a 55%, #e08a58 100%);
  box-shadow: inset 0 0 0 1px rgba(240, 160, 100, 0.2);
}

.combo-hud-boss-hp-fill--crit {
  background-color: #c41e32;
  background-image: linear-gradient(90deg, #8f1524 0%, #c41e32 50%, #e84a55 100%);
  box-shadow:
    inset 0 0 0 1px rgba(232, 74, 85, 0.28),
    0 0 10px rgba(196, 30, 50, 0.35);
  animation: combo-hp-crit-pulse 1.35s ease-in-out infinite;
}

@keyframes combo-hp-sheen {
  0%,
  18% {
    transform: translateX(0) skewX(-18deg);
    opacity: 0;
  }
  35% {
    opacity: 0.9;
  }
  55%,
  100% {
    transform: translateX(320%) skewX(-18deg);
    opacity: 0;
  }
}

@keyframes combo-hp-crit-pulse {
  0%,
  100% {
    filter: brightness(1);
    box-shadow:
      inset 0 0 0 1px rgba(232, 74, 85, 0.28),
      0 0 8px rgba(196, 30, 50, 0.28);
  }
  50% {
    filter: brightness(1.12);
    box-shadow:
      inset 0 0 0 1px rgba(232, 74, 85, 0.4),
      0 0 14px rgba(196, 30, 50, 0.5);
  }
}

@media (prefers-reduced-motion: reduce) {
  .combo-hud-boss-hp-fill::after,
  .combo-hud-boss-hp-fill--crit {
    animation: none !important;
  }
}

.combo-hud-progress-fill,
.summary-achievement-progress-fill,
.summary-achievement-progress-fill-high,
.summary-achievement-progress-track-done,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .style-hud, .summary-hud)
  .combo-hud-progress-fill {
  background-color: var(--combo-progress-fill) !important;
  background-image: none !important;
}

.combo-hud .combo-hud-combo-track, .home-hud .home-hud-combo-track, .profile-hud .profile-hud-combo-track{
  background-color: var(--combo-combo-track) !important;
}

/* Скрытые checkbox в комбо */
html.dark .combo-hud input.sr-only,
html:not(.dark) .combo-hud input.sr-only, html:not(.dark) .home-hud input.sr-only, html:not(.dark) .profile-hud input.sr-only{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  background: transparent !important;
}

/* Светлая тема: блок статуса боя внутри панели */
html:not(.dark) .combo-hud .combo-hud-status-shell, html:not(.dark) .home-hud .home-hud-status-shell, html:not(.dark) .profile-hud .profile-hud-status-shell{
  background: var(--combo-surface-2) !important;
  border-color: var(--combo-border) !important;
}

html:not(.dark) .combo-hud .combo-hud-top-damage-row, html:not(.dark) .home-hud .home-hud-top-damage-row, html:not(.dark) .profile-hud .profile-hud-top-damage-row, html:not(.dark) .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud-top-damage-row{
  background: rgba(255, 255, 255, 0.75) !important;
  border-color: var(--combo-border) !important;
}

/* dark-theme.css заливает «голые» button в slate-700 — сброс внутри HUD */
html.dark
  :is(
    .combo-hud,
    .home-hud,
    .profile-hud,
    .worker-hud,
    .zaruba-hud,
    .dealer-hud,
    .stash-hud,
    .social-hud,
    .weapon-hud,
    .style-hud,
    .summary-hud,
    .giveaway-hud,
    .mobile-nav-hud,
    .nav-hud
  )
  button:not(.combo-hud-btn):not(.combo-hud-macro-btn):not(.combo-hud-collapse-header):not([class*='bg-']):not(.social-name-link) {
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

html.dark
  :is(
    .combo-hud,
    .home-hud,
    .profile-hud,
    .worker-hud,
    .zaruba-hud,
    .dealer-hud,
    .stash-hud,
    .social-hud,
    .weapon-hud,
    .style-hud,
    .summary-hud,
    .giveaway-hud,
    .mobile-nav-hud,
    .nav-hud
  )
  button:not(.combo-hud-btn):not(.combo-hud-macro-btn):not(.combo-hud-collapse-header):not([class*='bg-']):not(.social-name-link):hover {
  background-color: rgba(255, 255, 255, 0.06) !important;
}

/* Заголовки сворачиваемых панелей (не slate-700 из dark-theme.css) */
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .style-hud, .summary-hud)
  button.combo-hud-collapse-header {
  background-color: var(--combo-header) !important;
  background-image: none !important;
  border: none !important;
  border-bottom: 1px solid var(--combo-border) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--combo-text-strong) !important;
}

:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .style-hud, .summary-hud)
  button.combo-hud-collapse-header:hover:not(:disabled) {
  background-color: var(--combo-surface-hover) !important;
}

/* Зарубы — сайдбар «Настройки» / «ЗарубаБот»: заметнее фона shell */
.zaruba-hud .zaruba-aside-section {
  border-color: var(--combo-accent-border) !important;
  box-shadow:
    var(--combo-shadow),
    0 0 0 1px rgba(77, 124, 254, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

.zaruba-hud .zaruba-collapse-header-row {
  background: var(--combo-surface-2) !important;
  border-left: 3px solid var(--combo-accent) !important;
}

.zaruba-hud .zaruba-collapse-header-row > button.combo-hud-collapse-header {
  background: transparent !important;
  border: none !important;
  border-bottom: none !important;
  border-radius: 0 !important;
}

.zaruba-hud .zaruba-collapse-header-row > button.combo-hud-collapse-header:hover:not(:disabled) {
  background: var(--combo-surface-hover) !important;
}

.zaruba-hud .zaruba-collapse-header-title {
  color: var(--combo-text-strong) !important;
  letter-spacing: 0.02em;
}

.zaruba-hud .zaruba-tabs {
  background: var(--combo-surface-2) !important;
  border-color: var(--combo-border) !important;
}

.zaruba-hud .zaruba-tabs .combo-hud-btn:not(.combo-hud-tab-active) {
  background: var(--combo-surface) !important;
  color: var(--combo-text-secondary) !important;
  border: 1px solid var(--combo-border) !important;
}

.zaruba-hud .zaruba-tabs .combo-hud-btn:not(.combo-hud-tab-active):hover:not(:disabled) {
  background: var(--combo-surface-hover) !important;
  border-color: var(--combo-border-hover) !important;
  color: var(--combo-text-strong) !important;
}

/* Сводка — клик по иконке таланта (не slate-700 из dark-theme.css) */
.summary-hud button.summary-talent-icon-btn {
  background: transparent !important;
  background-image: none !important;
  color: inherit !important;
  box-shadow: none !important;
}

.summary-hud button.summary-talent-icon-btn:hover:not(:disabled) {
  background: var(--combo-surface-hover) !important;
}

.summary-hud button.summary-talent-info-btn.combo-hud-btn {
  border: 1px solid #7ba4ff !important;
  background: var(--combo-accent) !important;
  background-image: none !important;
  color: #d8dee4 !important;
  box-shadow: 0 0 8px rgba(61, 90, 254, 0.55) !important;
  border-radius: 9999px !important;
}

.summary-hud button.summary-talent-info-btn.combo-hud-btn:hover:not(:disabled) {
  background: #5b8fff !important;
  background-image: none !important;
  color: #d8dee4 !important;
  border-color: #9ec0ff !important;
  box-shadow: 0 0 10px rgba(123, 164, 255, 0.65) !important;
}

html.dark .summary-hud button.summary-talent-info-btn.combo-hud-btn {
  background-color: var(--combo-accent) !important;
  color: #d8dee4 !important;
}

html:not(.dark) .summary-hud button.summary-talent-info-btn.combo-hud-btn {
  background-color: var(--combo-accent) !important;
  color: #d8dee4 !important;
  box-shadow: 0 0 6px rgba(61, 90, 254, 0.35) !important;
}

.summary-hud .summary-talent-max-badge {
  border: 1px solid #6ee7b7 !important;
  background: rgba(16, 185, 129, 0.85) !important;
  color: #ecfdf5 !important;
  box-shadow: 0 0 8px rgba(16, 185, 129, 0.5) !important;
}

html:not(.dark) .summary-hud .summary-talent-max-badge {
  background: var(--combo-success-solid) !important;
  border-color: #059669 !important;
  color: #d8dee4 !important;
  box-shadow: 0 0 6px rgba(16, 185, 129, 0.35) !important;
}

.summary-hud .summary-achievement-done-badge {
  border: 1px solid #6ee7b7 !important;
  background: rgba(16, 185, 129, 0.85) !important;
  color: #ecfdf5 !important;
  box-shadow: 0 0 8px rgba(16, 185, 129, 0.5) !important;
}

html:not(.dark) .summary-hud .summary-achievement-done-badge {
  background: var(--combo-success-solid) !important;
  border-color: #059669 !important;
  color: #d8dee4 !important;
  box-shadow: 0 0 6px rgba(16, 185, 129, 0.35) !important;
}

.summary-hud .summary-achievement-icon {
  background: transparent !important;
  background-image: none !important;
}

.summary-hud button.summary-achievement-expand-btn.combo-hud-btn {
  border-color: var(--combo-amber-border) !important;
  background: var(--combo-amber-soft) !important;
  background-image: none !important;
  color: var(--combo-amber) !important;
  box-shadow: none !important;
}

.summary-hud button.summary-achievement-expand-btn.combo-hud-btn:hover:not(:disabled) {
  background: var(--combo-amber) !important;
  color: #1a1208 !important;
}

.summary-hud .summary-achievement-progress-track {
  background-color: var(--combo-progress-bar-track) !important;
}

.summary-hud .summary-achievement-progress-label,
.combo-hud .summary-achievement-progress-label,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .style-hud, .summary-hud)
  .combo-hud-progress-bar-label {
  color: var(--combo-progress-bar-text) !important;
}

html.dark
  :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud, .style-hud, .summary-hud)
  .combo-hud-progress-bar-label,
html.dark .summary-hud .summary-achievement-progress-label {
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.72);
}

.combo-hud-hp-track.combo-hud-progress-bar-track,
.summary-achievement-progress-track {
  background-color: var(--combo-progress-bar-track) !important;
}

.summary-hud .summary-achievement-progress-track-done {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.summary-hud .summary-achievement-progress-fill,
.summary-hud .summary-achievement-progress-fill-high {
  border-radius: inherit;
}

/* Мобильная шапка и нижняя навигация */
.mobile-nav-hud.mobile-dock-shell-top {
  background-color: var(--combo-mobile-dock-bg) !important;
  border-color: var(--combo-mobile-dock-border) !important;
  box-shadow:
    0 1px 0 color-mix(in srgb, #fff 6%, transparent),
    0 4px 14px rgba(0, 0, 0, 0.2);
}

.mobile-slim-chrome {
  background-color: var(--combo-mobile-dock-bg) !important;
  border-bottom: 1px solid var(--combo-mobile-dock-border) !important;
  box-shadow:
    0 1px 0 color-mix(in srgb, #fff 6%, transparent),
    0 4px 14px rgba(0, 0, 0, 0.2);
}

html:not(.dark) .mobile-slim-chrome {
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.08);
}

.mobile-nav-hud.mobile-dock-shell-bottom {
  background-color: var(--combo-mobile-dock-bg) !important;
  border-color: var(--combo-mobile-dock-border) !important;
  box-shadow:
    0 -1px 0 color-mix(in srgb, #fff 5%, transparent),
    0 -4px 14px rgba(0, 0, 0, 0.22);
}

/* Мобильный Safari / PWA: safe area у шапки и дока */
@media (max-width: 767px) {
  .mobile-dock-header-row {
    padding-top: max(0.5rem, env(safe-area-inset-top, 0px));
    min-height: calc(3.5rem + env(safe-area-inset-top, 0px));
  }

  .mobile-overlay-header {
    padding-top: max(0.75rem, env(safe-area-inset-top, 0px));
    padding-bottom: 0.25rem;
  }

  .mobile-dock-shell-bottom {
    /* Фон дока в home-indicator; без min() сверху — иначе двойная полоска */
    padding-bottom: env(safe-area-inset-bottom, 0px);
    margin-bottom: 0;
  }

  /* Sidebar / новый дизайн: main не резервирует нижний safe-area */
  html.new-mobile-nav.pwa-standalone .app-shell > main,
  html.new-mobile-nav .layout-sidebar > main {
    padding-bottom: 0 !important;
  }

  /* Safari вне PWA: док в потоке flex */
  html:not(.pwa-standalone) .mobile-dock-shell-bottom {
    flex-shrink: 0;
  }

  /* События: лёгкое дыхание; clearance под док — --mobile-scroll-pad на .app-main-scroll */
  .events-hud .events-shell-body {
    padding-bottom: 0.25rem;
  }
}

@media (min-width: 768px) {
  .events-hud .events-shell-body {
    padding-bottom: 0.5rem;
  }
}

html:not(.dark) .mobile-nav-hud.mobile-dock-shell-top,
html:not(.dark) .mobile-nav-hud.mobile-dock-shell-bottom {
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.08);
}

/* Попап «Статистика» на мобильном */
.stats-popover-scrim {
  background: rgba(0, 0, 0, 0.45) !important;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.stats-popover-glass {
  background: color-mix(in srgb, var(--combo-surface) 78%, transparent) !important;
  border-color: var(--combo-border-hover) !important;
  backdrop-filter: blur(18px) saturate(160%);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  box-shadow:
    var(--combo-shadow),
    0 0 0 1px color-mix(in srgb, var(--combo-accent-border) 25%, transparent);
}

html:not(.dark) .stats-popover-glass {
  background: color-mix(in srgb, var(--combo-surface) 88%, transparent) !important;
}

/* Ссылки на ник в «Братве» — без серой подложки */
.social-hud .social-name-link,
.social-hud button.social-name-link {
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
}

.social-hud .social-name-link:hover,
.social-hud button.social-name-link:hover {
  background: transparent !important;
}

/* Крупные CTA — чуть толще рамка */
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-btn-primary,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .social-btn-primary {
  border-width: 2px !important;
}

/* ── Семантические кнопки / блоки (читаемы в светлой и тёмной теме) ── */
.combo-hud-text-success {
  color: var(--combo-success-text);
}

.combo-hud-text-danger {
  color: var(--combo-danger-text);
}

.combo-hud-text-warn {
  color: var(--combo-warn-text);
}

.combo-hud-text-amber {
  color: var(--combo-amber-text);
}

.combo-hud-text-damage {
  color: var(--combo-damage-text);
}

.combo-hud-text-orange {
  color: var(--combo-orange-text);
}

.combo-hud-inset-success {
  border: 1px solid var(--combo-success-border);
  background-color: var(--combo-success-bg);
  color: var(--combo-success-text);
}

.combo-hud-inset-danger {
  border: 1px solid var(--combo-warn-border);
  background-color: var(--combo-warn-bg);
  color: var(--combo-warn-text);
}

/* Скругление всех HUD-кнопок (табы, чипы, действия) */
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) button.combo-hud-btn,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-tab-active,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-btn-primary,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .social-btn-primary,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-tab-brigade,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-btn-success,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-btn-danger,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud) .combo-hud-btn-amber {
  border-radius: 0.5rem !important;
}

.dealer-hud button:not(.sr-only),
.zaruba-hud button:not(.sr-only),
.worker-hud button:not(.sr-only),
.stash-hud button:not(.sr-only) {
  border-radius: 0.5rem;
}

.combo-hud-btn-success {
  border-color: var(--combo-success-border) !important;
  background-color: var(--combo-success-bg) !important;
  color: var(--combo-success-text) !important;
}

.combo-hud-btn-success:hover:not(:disabled) {
  background-color: var(--combo-success-bg-hover) !important;
}

.combo-hud-btn-danger {
  border-color: var(--combo-danger-border) !important;
  background-color: var(--combo-danger-bg) !important;
  color: var(--combo-danger-text) !important;
}

.combo-hud-btn-danger:hover:not(:disabled) {
  background-color: var(--combo-danger-bg-hover) !important;
}

/* Семантические CTA с плотным фоном (читаемы на цветных inset-панелях) */
.combo-hud-btn-danger-solid,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  button.combo-hud-btn.combo-hud-btn-danger-solid {
  border: 1px solid var(--combo-danger-solid-border) !important;
  background-color: var(--combo-danger-solid) !important;
  background-image: none !important;
  color: #d8dee4 !important;
}

.combo-hud-btn-danger-solid:hover:not(:disabled),
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  button.combo-hud-btn.combo-hud-btn-danger-solid:hover:not(:disabled) {
  background-color: var(--combo-danger-solid-hover) !important;
}

.combo-hud-btn-success-solid,
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud)
  button.combo-hud-btn.combo-hud-btn-success-solid {
  border: 1px solid var(--combo-success-solid-border) !important;
  background-color: var(--combo-success-solid) !important;
  background-image: none !important;
  color: #d8dee4 !important;
}

.combo-hud-btn-success-solid:hover:not(:disabled),
:is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud, .weapon-hud)
  button.combo-hud-btn.combo-hud-btn-success-solid:hover:not(:disabled) {
  background-color: var(--combo-success-solid-hover) !important;
}

.combo-hud-badge-success {
  border: 1px solid var(--combo-success-border);
  background-color: var(--combo-success-bg);
  color: var(--combo-success-text);
}

.combo-hud-badge-danger {
  border: 1px solid var(--combo-danger-border);
  background-color: var(--combo-danger-bg);
  color: var(--combo-danger-text);
}

.combo-hud-badge-amber {
  border: 1px solid var(--combo-amber-border);
  background-color: var(--combo-amber-bg);
  color: var(--combo-amber-text);
}

/* Макро-кнопки: Урон / Баф / ЗШ / Слить / Игла */
.combo-hud-macro-btn {
  border-width: 1px;
  border-style: solid;
  font-weight: 600;
  transition: background-color 0.15s ease, border-color 0.15s ease, filter 0.15s ease;
}
.combo-hud-macro-btn:hover:not(:disabled) {
  filter: brightness(1.08);
}
.combo-hud-macro-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.combo-hud-macro-btn--damage {
  color: var(--combo-macro-damage-text);
  background-color: var(--combo-macro-damage-bg);
  border-color: var(--combo-macro-damage-border);
}
.combo-hud-macro-btn--buff {
  color: var(--combo-macro-buff-text);
  background-color: var(--combo-macro-buff-bg);
  border-color: var(--combo-macro-buff-border);
}
.combo-hud-macro-btn--zsh {
  color: var(--combo-macro-zsh-text);
  background-color: var(--combo-macro-zsh-bg);
  border-color: var(--combo-macro-zsh-border);
}
.combo-hud-macro-btn--soap {
  color: var(--combo-macro-soap-text);
  background-color: var(--combo-macro-soap-bg);
  border-color: var(--combo-macro-soap-border);
}
.combo-hud-macro-btn--needle {
  color: var(--combo-macro-needle-text);
  background-color: var(--combo-macro-needle-bg);
  border-color: var(--combo-macro-needle-border);
}
.combo-hud-macro-btn--solid.combo-hud-macro-btn--damage {
  color: #f0d6d8;
  background-color: var(--combo-macro-damage-solid);
  border-color: var(--combo-macro-damage-border);
}
.combo-hud-macro-btn--solid.combo-hud-macro-btn--damage:hover:not(:disabled) {
  background-color: var(--combo-macro-damage-solid-hover);
  filter: none;
}
.combo-hud-macro-btn--solid.combo-hud-macro-btn--buff {
  color: #d4f0e8;
  background-color: var(--combo-macro-buff-solid);
  border-color: var(--combo-macro-buff-border);
}
.combo-hud-macro-btn--solid.combo-hud-macro-btn--buff:hover:not(:disabled) {
  background-color: var(--combo-macro-buff-solid-hover);
  filter: none;
}
.combo-hud-macro-btn--solid.combo-hud-macro-btn--zsh {
  color: #d4eaf4;
  background-color: var(--combo-macro-zsh-solid);
  border-color: var(--combo-macro-zsh-border);
}
.combo-hud-macro-btn--solid.combo-hud-macro-btn--zsh:hover:not(:disabled) {
  background-color: var(--combo-macro-zsh-solid-hover);
  filter: none;
}
.combo-hud-macro-modal--damage {
  border-color: var(--combo-macro-damage-border);
  box-shadow: 0 0 0 1px rgba(196, 92, 98, 0.12);
}
.combo-hud-macro-modal--buff {
  border-color: var(--combo-macro-buff-border);
  box-shadow: 0 0 0 1px rgba(61, 155, 132, 0.12);
}
.combo-hud-macro-modal--zsh {
  border-color: var(--combo-macro-zsh-border);
  box-shadow: 0 0 0 1px rgba(90, 154, 184, 0.12);
}
.combo-hud-macro-title--damage { color: var(--combo-macro-damage-text); }
.combo-hud-macro-title--buff { color: var(--combo-macro-buff-text); }
.combo-hud-macro-title--zsh { color: var(--combo-macro-zsh-text); }

/* Чипы статистики на карточке босса (уб / П / Б / А) */
.combo-hud-boss-stat-chip {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 2px;
  box-sizing: border-box;
  width: max-content;
  max-width: 100%;
  min-height: 20px;
  height: auto;
  padding: 2px 5px 2px 4px;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.1;
  border-radius: 4px;
  border-width: 1px;
  border-style: solid;
  vertical-align: middle;
  flex: 0 0 auto;
  flex-shrink: 0;
  overflow: visible;
  white-space: nowrap;
  isolation: isolate;
}

@media (min-width: 768px) {
  .combo-hud-boss-stat-chip {
    min-height: 22px;
    padding: 2px 6px 2px 5px;
    font-size: 10px;
    gap: 3px;
  }
}

.combo-hud-boss-stat-chip--status {
  padding-right: 6px;
  padding-top: 3px;
}

.combo-hud-boss-stats-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: flex-start;
  gap: 4px 5px;
  min-width: 0;
  width: 100%;
  line-height: 1;
  row-gap: 4px;
}

.combo-hud-boss-stat-chip__part {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  flex-shrink: 0;
}

.combo-hud-boss-stat-chip__mode {
  opacity: 0.85;
  text-transform: uppercase;
}

.combo-hud-boss-stat-chip__sep {
  opacity: 0.55;
  font-weight: 700;
  padding: 0 1px;
}

.combo-hud-boss-stat-chip__cost {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  line-height: 1;
  font-size: 9px;
  opacity: 0.95;
  flex-shrink: 0;
}

.combo-hud-boss-stat-chip__cost-icon,
.combo-hud-boss-stat-chip__cost img {
  width: 11px !important;
  height: 11px !important;
  min-width: 11px;
  min-height: 11px;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .combo-hud-boss-stat-chip__cost {
    font-size: 10px;
  }

  .combo-hud-boss-stat-chip__cost-icon,
  .combo-hud-boss-stat-chip__cost img {
    width: 12px !important;
    height: 12px !important;
    min-width: 12px;
    min-height: 12px;
  }
}

.combo-hud-combo-dot {
  position: absolute;
  top: -2px;
  right: -2px;
  z-index: 3;
  width: 6px;
  height: 6px;
  border-radius: 9999px;
  transform: none;
  box-shadow: 0 0 0 1px var(--combo-surface);
  pointer-events: none;
  background-image: none !important;
}

.combo-hud-combo-dot--ok {
  background-color: var(--combo-success-solid) !important;
  box-shadow:
    0 0 0 1px var(--combo-surface),
    0 0 5px rgba(34, 197, 94, 0.75) !important;
}

.combo-hud-combo-dot--bad {
  background-color: var(--combo-danger-solid) !important;
  box-shadow:
    0 0 0 1px var(--combo-surface),
    0 0 5px rgba(244, 63, 94, 0.55) !important;
}

.combo-hud-combo-dot--load {
  background-color: var(--combo-muted-deep) !important;
  box-shadow: 0 0 0 1px var(--combo-surface) !important;
}

.combo-hud-btn-amber,
html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  button.combo-hud-btn.combo-hud-btn-amber:not(:disabled) {
  border: 1px solid var(--combo-amber-border) !important;
  background-color: var(--combo-amber-bg) !important;
  color: var(--combo-amber-text) !important;
}

html.dark :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  button.combo-hud-btn.combo-hud-btn-amber:hover:not(:disabled) {
  background-color: var(--combo-amber-border) !important;
  filter: brightness(1.05);
}

.combo-hud-row-success {
  background-color: var(--combo-success-bg) !important;
  border-left: 2px solid var(--combo-success-border);
}

/* Светлая тема: пастельные tailwind-цвета на HUD → токены с контрастом */
html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(
    .text-emerald-300,
    .text-emerald-400,
    [class*='text-emerald-300'],
    [class*='text-emerald-400']
  ):not(.combo-hud-tab-active):not(.combo-hud-tab-brigade) {
  color: var(--combo-success-text) !important;
}

html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.text-rose-200, .text-rose-300, .text-rose-400, [class*='text-rose-200'], [class*='text-rose-300'], [class*='text-rose-400']):not(
    .combo-hud-tab-active
  ) {
  color: var(--combo-danger-text) !important;
}

html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.text-red-300, .text-red-400, [class*='text-red-300'], [class*='text-red-400']) {
  color: var(--combo-warn-text) !important;
}

html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(
    .text-amber-200,
    .text-amber-300,
    [class*='text-amber-200'],
    [class*='text-amber-300']
  ) {
  color: var(--combo-amber-text) !important;
}

html:not(.dark) :is(.combo-hud, .home-hud, .profile-hud, .worker-hud, .zaruba-hud, .dealer-hud, .stash-hud, .social-hud)
  :is(.text-orange-400, .text-orange-300, [class*='text-orange-400'], [class*='text-orange-300']) {
  color: var(--combo-orange-text) !important;
}

/* Братва — те же токены accent, что Азарт / Барыга / Боссы (без отдельного cyan) */

.social-hud button:not(.sr-only) {
  border-radius: 0.5rem;
}

.social-hud details summary {
  list-style: none;
}

.social-hud details summary::-webkit-details-marker {
  display: none;
}

.social-hud details[open] summary svg {
  transform: rotate(180deg);
}

.social-hud details summary svg {
  transition: transform 0.15s ease;
}

.social-hud .combo-hud-btn-amber {
  color: var(--combo-amber-text) !important;
  background: var(--combo-amber-bg) !important;
  border-color: var(--combo-amber-border) !important;
}

.social-hud .combo-hud-btn-amber:hover:not(:disabled) {
  filter: brightness(1.08);
}

.social-hud .combo-hud-btn:not(.sr-only) {
  font-size: 0.9375rem;
  line-height: 1.35;
}

@media (max-width: 640px) {
  .social-hud .combo-hud-btn.min-h-\[2\.75rem\] {
    min-height: 2.875rem;
  }
}

/* Ивенты на главной (Меняла, Люська, Ворона) — не slate-700 из dark-theme.css */
:is(.combo-hud, .home-hud, .profile-hud)
  :is(button.combo-hud-event-chip, .combo-hud-event-chip) {
  background-color: var(--combo-surface) !important;
  background-image: none !important;
  border-color: var(--combo-border) !important;
  color: var(--combo-text) !important;
  box-shadow: none !important;
}

:is(.combo-hud, .home-hud, .profile-hud)
  button.combo-hud-event-chip:hover:not(:disabled) {
  background-color: var(--combo-surface-hover) !important;
  border-color: var(--combo-accent-border) !important;
}

/* Розыгрыш — textarea описания приза (токены HUD, не slate из dark-theme) */
.giveaway-hud .giveaway-prize-textarea {
  background-color: var(--combo-surface) !important;
  border-color: var(--combo-border) !important;
  color: var(--combo-text) !important;
}

.giveaway-hud .giveaway-prize-textarea:focus {
  border-color: var(--combo-accent-border) !important;
  border-bottom-color: var(--combo-accent-border) !important;
  box-shadow: 0 0 0 1px var(--combo-accent-border) !important;
}

/* ── Лагеря (camp-hud): те же токены Obsidian, без отдельного фиолетового акцента ── */
html.dark .camp-hud,
html:not(.dark) .camp-hud {
  background-color: var(--combo-bg) !important;
  color: var(--combo-text) !important;
}

/* Сброс «голых» button из dark-theme.css */
html.dark .camp-hud button:not(.combo-hud-btn):not(.combo-hud-collapse-header):not([class*='bg-']) {
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* Текстовые утилиты slate внутри лагерей → токены HUD */
html.dark .camp-hud .text-slate-100,
html.dark .camp-hud .text-slate-200,
html.dark .camp-hud .text-slate-300,
html:not(.dark) .camp-hud .text-slate-100,
html:not(.dark) .camp-hud .text-slate-200,
html:not(.dark) .camp-hud .text-slate-300 {
  color: var(--combo-text) !important;
}

html.dark .camp-hud .text-slate-400,
html.dark .camp-hud .text-slate-500,
html:not(.dark) .camp-hud .text-slate-400,
html:not(.dark) .camp-hud .text-slate-500 {
  color: var(--combo-muted) !important;
}

html.dark .camp-hud .bg-slate-900,
html.dark .camp-hud .bg-slate-900\/50,
html.dark .camp-hud .bg-slate-900\/70,
html.dark .camp-hud .bg-slate-900\/80,
html.dark .camp-hud .bg-slate-800,
html.dark .camp-hud .bg-slate-800\/50 {
  background-color: var(--combo-surface-2) !important;
}

html.dark .camp-hud .border-slate-700,
html.dark .camp-hud .border-slate-700\/40,
html.dark .camp-hud .border-slate-700\/50,
html.dark .camp-hud .border-slate-600,
html.dark .camp-hud .border-slate-600\/50,
html.dark .camp-hud .border-slate-600\/60,
html.dark .camp-hud .border-slate-600\/70 {
  border-color: var(--combo-border) !important;
}

/* Live Log — терминал остаётся тёмным в обеих темах */
.camp-hud .camp-terminal-log {
  background-color: var(--combo-inset-deep) !important;
  border-color: var(--combo-success-border) !important;
}

/* ── Все input/select/textarea в HUD: не синие из dark-theme.css ── */
:is(
  .combo-hud,
  .home-hud,
  .profile-hud,
  .worker-hud,
  .zaruba-hud,
  .dealer-hud,
  .stash-hud,
  .social-hud,
  .weapon-hud,
  .style-hud,
  .summary-hud,
  .giveaway-hud,
  .camp-hud,
  .brigade-hud
)
  :is(
    input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='file']):not([type='hidden']):not([type='button']):not([type='submit']):not([type='reset']):not([type='image']):not(.raid-damage-input),
    select,
    textarea
  ) {
  background-color: var(--combo-surface-2) !important;
  color: var(--combo-text) !important;
  border-color: var(--combo-border) !important;
  box-shadow: none !important;
  caret-color: var(--combo-text);
}

:is(
  .combo-hud,
  .home-hud,
  .profile-hud,
  .worker-hud,
  .zaruba-hud,
  .dealer-hud,
  .stash-hud,
  .social-hud,
  .weapon-hud,
  .style-hud,
  .summary-hud,
  .giveaway-hud,
  .camp-hud,
  .brigade-hud
)
  :is(
    input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='file']):not([type='hidden']):not([type='button']):not([type='submit']):not([type='reset']):not([type='image']):not(.raid-damage-input),
    select,
    textarea
  ):focus {
  border-color: var(--combo-accent-border) !important;
  outline: none !important;
  box-shadow: 0 0 0 1px var(--combo-accent-border) !important;
}

:is(
  .combo-hud,
  .home-hud,
  .profile-hud,
  .worker-hud,
  .zaruba-hud,
  .dealer-hud,
  .stash-hud,
  .social-hud,
  .weapon-hud,
  .style-hud,
  .summary-hud,
  .giveaway-hud,
  .camp-hud,
  .brigade-hud
)
  :is(input, textarea)::placeholder {
  color: var(--combo-muted) !important;
}

html.dark :is(
  .combo-hud,
  .home-hud,
  .profile-hud,
  .worker-hud,
  .zaruba-hud,
  .dealer-hud,
  .stash-hud,
  .social-hud,
  .weapon-hud,
  .style-hud,
  .summary-hud,
  .giveaway-hud,
  .camp-hud,
  .brigade-hud
)
  :is(input[type='date'], input[type='time'], input[type='datetime-local'], input[type='month'], input[type='week']) {
  color-scheme: dark;
}

html:not(.dark) :is(
  .combo-hud,
  .home-hud,
  .profile-hud,
  .worker-hud,
  .zaruba-hud,
  .dealer-hud,
  .stash-hud,
  .social-hud,
  .weapon-hud,
  .style-hud,
  .summary-hud,
  .giveaway-hud,
  .camp-hud,
  .brigade-hud
)
  :is(input[type='date'], input[type='time'], input[type='datetime-local'], input[type='month'], input[type='week']) {
  color-scheme: light;
}

/* ── Бригады (brigade-hud): Obsidian + маппинг старых blue/slate/indigo ── */
html.dark .brigade-hud,
html:not(.dark) .brigade-hud {
  background-color: var(--combo-bg) !important;
  color: var(--combo-text) !important;
}

html.dark .brigade-hud button:not(.combo-hud-btn):not(.combo-hud-collapse-header):not([class*='bg-']) {
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

html.dark .brigade-hud .text-slate-100,
html.dark .brigade-hud .text-slate-200,
html.dark .brigade-hud .text-slate-300,
html.dark .brigade-hud .text-gray-100,
html.dark .brigade-hud .text-gray-200,
html.dark .brigade-hud .text-gray-900,
html.dark .brigade-hud .text-text-strong,
html:not(.dark) .brigade-hud .text-slate-100,
html:not(.dark) .brigade-hud .text-slate-200,
html:not(.dark) .brigade-hud .text-slate-300 {
  color: var(--combo-text) !important;
}

html.dark .brigade-hud .text-slate-400,
html.dark .brigade-hud .text-slate-500,
html.dark .brigade-hud .text-gray-400,
html.dark .brigade-hud .text-gray-500,
html:not(.dark) .brigade-hud .text-slate-400,
html:not(.dark) .brigade-hud .text-slate-500 {
  color: var(--combo-muted) !important;
}

html.dark .brigade-hud [class*='bg-slate-950'],
html.dark .brigade-hud [class*='bg-slate-900'],
html.dark .brigade-hud [class*='bg-slate-800'],
html.dark .brigade-hud [class*='bg-slate-700'],
html.dark .brigade-hud [class*='bg-slate-600'],
html.dark .brigade-hud [class*='bg-white/'],
html.dark .brigade-hud [class*='bg-black/'] {
  background-color: var(--combo-surface-2) !important;
}

html.dark .brigade-hud [class*='border-slate-'],
html.dark .brigade-hud [class*='border-indigo-'],
html.dark .brigade-hud [class*='border-blue-'],
html.dark .brigade-hud [class*='border-violet-'],
html.dark .brigade-hud [class*='border-purple-'],
html.dark .brigade-hud [class*='border-sky-'] {
  border-color: var(--combo-border) !important;
}

html.dark .brigade-hud [class*='bg-indigo-'],
html.dark .brigade-hud [class*='bg-blue-'],
html.dark .brigade-hud [class*='bg-violet-'],
html.dark .brigade-hud [class*='bg-sky-'] {
  background-color: var(--combo-accent-soft) !important;
  background-image: none !important;
}

html.dark .brigade-hud [class*='text-indigo-'],
html.dark .brigade-hud [class*='text-blue-'],
html.dark .brigade-hud [class*='text-violet-'],
html.dark .brigade-hud [class*='text-sky-'],
html.dark .brigade-hud [class*='text-purple-300'],
html.dark .brigade-hud [class*='text-purple-400'] {
  color: var(--combo-accent-text) !important;
}

html.dark .brigade-hud [class*='from-blue-'],
html.dark .brigade-hud [class*='via-indigo-'],
html.dark .brigade-hud [class*='to-purple-'],
html.dark .brigade-hud [class*='from-indigo-'],
html.dark .brigade-hud [class*='to-indigo-'],
html.dark .brigade-hud [class*='from-violet-'],
html.dark .brigade-hud [class*='to-violet-'],
html.dark .brigade-hud [class*='from-sky-'],
html.dark .brigade-hud [class*='via-violet-'],
html.dark .brigade-hud [class*='to-slate-'],
html.dark .brigade-hud [class*='from-slate-'],
html.dark .brigade-hud [class*='from-white'],
html.dark .brigade-hud [class*='from-[#0'],
html.dark .brigade-hud [class*='from-[#1'],
html.dark .brigade-hud [class*='to-[#0'],
html.dark .brigade-hud [class*='to-[#4'],
html.dark .brigade-hud [class*='via-[#0'] {
  background-image: none !important;
}

html.dark .brigade-hud [class*='bg-[#0f172a]'],
html.dark .brigade-hud [class*='bg-[#0e1a2e]'],
html.dark .brigade-hud [class*='bg-[#0a1220]'],
html.dark .brigade-hud [class*='bg-[#020617]'],
html.dark .brigade-hud [class*='bg-[#1e1b4b]'] {
  background-color: var(--combo-surface) !important;
  background-image: none !important;
}

html.dark .brigade-hud [class*='ring-indigo-'],
html.dark .brigade-hud [class*='ring-violet-'],
html.dark .brigade-hud [class*='ring-blue-'],
html.dark .brigade-hud [class*='focus:ring-indigo-'],
html.dark .brigade-hud [class*='focus-within:ring-indigo-'] {
  --tw-ring-color: var(--combo-accent-border) !important;
}

html.dark .brigade-hud [class*='hover:bg-indigo-'],
html.dark .brigade-hud [class*='hover:from-indigo-'],
html.dark .brigade-hud [class*='hover:to-indigo-'],
html.dark .brigade-hud [class*='hover:bg-violet-'],
html.dark .brigade-hud [class*='hover:bg-blue-'] {
  background-color: var(--combo-surface-hover) !important;
  background-image: none !important;
}

/* ── Барыга (stash-hud): добить leftover slate/indigo/purple ── */
html.dark .stash-hud,
html:not(.dark) .stash-hud {
  background-color: var(--combo-bg) !important;
  color: var(--combo-text) !important;
}

html.dark .stash-hud [class*='bg-slate-950'],
html.dark .stash-hud [class*='bg-slate-900'],
html.dark .stash-hud [class*='bg-slate-800'],
html.dark .stash-hud [class*='bg-slate-700'],
html.dark .stash-hud [class*='bg-slate-600'],
html.dark .stash-hud [class*='bg-white/'] {
  background-color: var(--combo-surface-2) !important;
}

html.dark .stash-hud [class*='border-slate-'],
html.dark .stash-hud [class*='border-indigo-'],
html.dark .stash-hud [class*='border-blue-200'],
html.dark .stash-hud [class*='border-blue-700'],
html.dark .stash-hud [class*='border-blue-800'] {
  border-color: var(--combo-border) !important;
}

html.dark .stash-hud [class*='bg-indigo-'],
html.dark .stash-hud [class*='bg-blue-500'],
html.dark .stash-hud [class*='bg-blue-600'],
html.dark .stash-hud [class*='bg-blue-100'],
html.dark .stash-hud [class*='bg-blue-900'] {
  background-color: var(--combo-accent-soft) !important;
}

html.dark .stash-hud [class*='text-indigo-'],
html.dark .stash-hud [class*='text-blue-500'],
html.dark .stash-hud [class*='text-blue-400'],
html.dark .stash-hud [class*='text-blue-600'] {
  color: var(--combo-accent-text) !important;
}

html.dark .stash-hud [class*='from-purple-'],
html.dark .stash-hud [class*='to-violet-'],
html.dark .stash-hud [class*='from-sky-'],
html.dark .stash-hud [class*='to-purple-'] {
  background-image: none !important;
  background-color: var(--combo-surface-2) !important;
}

html.dark .stash-hud [class*='border-purple-'],
html.dark .stash-hud [class*='border-violet-'] {
  border-color: var(--combo-purple-border) !important;
}

html.dark .stash-hud [class*='bg-purple-'],
html.dark .stash-hud [class*='bg-violet-'] {
  background-color: var(--combo-purple-soft) !important;
}

html.dark .stash-hud [class*='text-purple-'],
html.dark .stash-hud [class*='text-violet-'] {
  color: var(--combo-purple-text) !important;
}

html.dark .stash-hud .text-slate-900,
html.dark .stash-hud .text-slate-800,
html.dark .stash-hud .text-slate-700,
html.dark .stash-hud .text-slate-600,
html.dark .stash-hud .text-slate-300,
html.dark .stash-hud .text-slate-200 {
  color: var(--combo-text) !important;
}

html.dark .stash-hud .text-slate-500,
html.dark .stash-hud .text-slate-400 {
  color: var(--combo-muted) !important;
}

html.dark .stash-hud [class*='ring-indigo-'],
html.dark .stash-hud [class*='ring-blue-'],
html.dark .stash-hud [class*='focus:ring-indigo'] {
  --tw-ring-color: var(--combo-accent-border) !important;
}


