/* =========================================================
   CRM Design System — «Сапфировое золото» (PR #57)
   Подключается после theme-overrides.css.
   neutral и light — одна светлая тема; в UI только «Сапфировое золото» + «Тёмный бутик».
   ========================================================= */

/* Светлая пара тем: одни и те же токены и визуальные правила */
html:is([data-theme="neutral"], [data-theme="light"]) {
  --color-bg: #f5f0e8;
  --color-surface: #fffdf8;
  --color-surface-soft: #f8f3ea;
  --color-surface-muted: #efe3cc;

  --color-text: #172033;
  --color-heading: #172033;
  --color-text-muted: #5a6578;
  --color-border: #d8cbb8;

  --color-primary: #24324a;
  --color-primary-hover: #1b2638;
  --color-primary-text: #fffdf8;

  --color-accent: #24324a;
  --color-accent-soft: rgba(36, 50, 74, 0.12);

  /* Таблицы: заметная прозрачность (фон страницы читается сквозь ячейки) */
  --ds-table-bg: rgba(255, 253, 248, 0.28);
  --ds-table-head: rgba(248, 243, 234, 0.4);
  --ds-table-border: rgba(216, 203, 184, 0.45);
  --ds-table-hover: rgba(255, 253, 248, 0.48);
  --ds-table-text: #172033;

  --ds-glow-gold: 0 0 0 1px rgba(36, 50, 74, 0.18);
  --ds-shadow-card: 0 10px 32px rgba(18, 57, 111, 0.08);
  --focus-ring: 0 0 0 3px rgba(36, 50, 74, 0.28);

  /* Панели: более «воздушное» стекло */
  --ds-glass-fill: rgba(255, 253, 248, 0.18);
  --ds-glass-fill-dense: rgba(255, 253, 248, 0.38);
  --ds-glass-border: rgba(255, 255, 255, 0.58);
  --ds-glass-border-soft: rgba(18, 57, 111, 0.1);
  --ds-shadow-panel-3d:
    0 1px 0 rgba(255, 255, 255, 0.82) inset,
    0 1px 1px rgba(18, 57, 111, 0.05),
    0 10px 28px rgba(18, 57, 111, 0.11),
    0 26px 52px rgba(18, 57, 111, 0.07),
    0 -1px 0 rgba(184, 149, 92, 0.12) inset;
  --ds-shadow-panel-3d-hover:
    0 1px 0 rgba(255, 255, 255, 0.88) inset,
    0 2px 2px rgba(18, 57, 111, 0.06),
    0 14px 36px rgba(18, 57, 111, 0.14),
    0 32px 64px rgba(18, 57, 111, 0.09),
    0 -1px 0 rgba(184, 149, 92, 0.16) inset;

  --crm-sidebar-width: 300px;
  --sidebar-width: 300px;
}

/*
 * Светлая тема: отключаем «морские» body::before/::after из styles.css
 * (mix-blend-mode: screen + светлый фон = пересвет, текст «пропадает»).
 */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury::before,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury::after {
  display: none !important;
}

/* ---------- Фон страницы: фото + мягкая вуаль; !important — перебить theme-overrides ---------- */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury {
  color: var(--color-text) !important;
  background:
    linear-gradient(
      155deg,
      rgba(248, 243, 234, 0.58) 0%,
      rgba(255, 253, 248, 0.42) 40%,
      rgba(245, 240, 232, 0.55) 100%
    ),
    url("/static/img/backgrounds/sapphire-gold-ambient.png") !important;
  background-color: #f5f0e8 !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-attachment: scroll !important;
}

/* ---------- Контент: без лишней вуали (карточки сами дают читаемость) ---------- */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content {
  background: transparent !important;
}

/* ---------- Sidebar (светлая пара тем): непрозрачная панель, скругление ---------- */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar {
  background: var(--color-surface, #fffdf8) !important;
  border: 1px solid var(--color-border, #d8cbb8) !important;
  border-left: 1px solid var(--color-border, #d8cbb8) !important;
  border-radius: 0 22px 22px 0 !important;
  box-shadow:
    0 2px 8px rgba(36, 50, 74, 0.08),
    8px 0 24px rgba(36, 50, 74, 0.06) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar-inner,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar-premium,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar-header-row,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar-brand-row {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

@media (min-width: 1024px) {
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury #appShell:not(.sidebar-collapsed) .sidebar {
    width: 300px !important;
    max-width: 300px !important;
    flex: 0 0 300px !important;
    flex-basis: 300px !important;
    border-radius: 0 26px 26px 0 !important;
    margin: 14px 0 14px 14px !important;
    height: calc(100vh - 28px) !important;
    min-height: calc(100vh - 28px) !important;
    max-height: calc(100vh - 28px) !important;
    align-self: center !important;
    top: 0 !important;
  }

  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury #appShell:not(.sidebar-collapsed) .sidebar .sidebar-inner {
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
  }
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar .nav-link {
  color: #5a6578 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar .nav-link:hover {
  color: #172033 !important;
  background: rgba(36, 50, 74, 0.08) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar .nav-link .nav-icon {
  color: var(--color-primary) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar .nav-link.active {
  color: var(--color-primary) !important;
  background: var(--color-surface-soft, #f8f3ea) !important;
  border-left: 3px solid var(--color-primary) !important;
  box-shadow: inset 0 0 0 1px rgba(36, 50, 74, 0.08) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar .nav-link.active .nav-icon {
  color: var(--color-primary) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar-brand-line1,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar-brand-line2,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar-brand-title {
  color: #172033 !important;
  text-shadow: 0 1px 0 rgba(255, 253, 248, 0.9);
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar-brand-logo {
  border: 1px solid rgba(36, 50, 74, 0.28) !important;
  box-shadow: 0 4px 16px rgba(18, 57, 111, 0.1);
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar-toggle {
  background: var(--color-surface-soft, #f8f3ea) !important;
  color: var(--color-primary) !important;
  border-color: var(--color-border, #d8cbb8) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar-toggle:hover {
  background: #fffdf8 !important;
  color: var(--color-primary-hover) !important;
  border-color: var(--color-primary) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar .nav-link-logout {
  color: rgba(155, 45, 59, 0.85) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar .nav-link-logout:hover {
  color: #9b2d3b !important;
}

/* ---------- Мобильный топбар: тёмные полосы иконки «меню» ---------- */
@media (max-width: 1023.98px) {
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .topbar-luxury .topbar-menu-btn,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .topbar-luxury .mobile-menu-toggle {
    color: #172033 !important;
  }

  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .topbar-luxury .topbar-menu-btn i,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .topbar-luxury .mobile-menu-toggle i {
    color: #172033 !important;
    opacity: 1 !important;
  }

  .topbar-actions-cluster {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    flex-shrink: 0 !important;
    gap: 0.35rem !important;
  }

  .topbar-actions {
    flex-wrap: nowrap !important;
    align-items: center !important;
  }

  .topbar-actions-cluster .dropdown,
  .topbar-actions-cluster .topbar-icon-btn {
    width: auto !important;
    max-width: none !important;
  }

  .topbar-actions-cluster .theme-switcher-btn,
  .topbar-actions-cluster a.topbar-user-chip.topbar-icon-btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    flex: 0 0 44px !important;
  }

  html[data-theme="dark"] body.app-body-luxury .topbar-luxury .topbar-menu-btn,
  html[data-theme="dark"] body.app-body-luxury .topbar-luxury .mobile-menu-toggle,
  html[data-theme="dark"] body.app-body-luxury .topbar-luxury .topbar-menu-btn i,
  html[data-theme="dark"] body.app-body-luxury .topbar-luxury .mobile-menu-toggle i {
    color: rgba(255, 248, 240, 0.92) !important;
  }

  /* Колонка контента и скролл-оболочка без плёнки — виден body-фон (как на десктопе) */
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-main,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .main-content,
  html[data-theme="dark"] body.app-body-luxury .app-main,
  html[data-theme="dark"] body.app-body-luxury .main-content {
    background: transparent !important;
  }

  /* Прайс на телефоне: без «плёнки» на корне и списке карточек */
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds.container-fluid,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #products-mobile-list {
    background: transparent !important;
  }

  html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds.container-fluid,
  html[data-theme="dark"] body.app-body-luxury .crm-price-ds #products-mobile-list {
    background: transparent !important;
  }
}

/* ---------- Кнопки (портал, светлая тема): navy / midnight blue ---------- */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-primary {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: var(--color-primary-text) !important;
  box-shadow: 0 4px 14px rgba(36, 50, 74, 0.18) !important;
  text-shadow: none !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-primary:hover {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  color: var(--color-primary-text) !important;
  box-shadow: 0 6px 18px rgba(36, 50, 74, 0.22) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-primary:focus-visible {
  box-shadow: 0 0 0 3px rgba(36, 50, 74, 0.28) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-secondary {
  background: #f8f3ea !important;
  color: #172033 !important;
  border: 1px solid #d8cbb8 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-secondary:hover {
  background: #efe3cc !important;
  border-color: #b8955c !important;
  color: #172033 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-outline-secondary {
  background: #f8f3ea !important;
  color: #172033 !important;
  border-color: #d8cbb8 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-outline-secondary:hover {
  background: #efe3cc !important;
  border-color: #b8955c !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-link,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-ghost {
  background: transparent !important;
  color: var(--color-primary) !important;
  border-color: transparent !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-danger {
  background: #9b2d3b !important;
  border-color: #9b2d3b !important;
  color: #fff !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .btn-success {
  background: #2d6a4f !important;
  border-color: #2d6a4f !important;
  color: #fff !important;
}

/* ---------- Панели разделов: прозрачное стекло + объём (3D) ---------- */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary),
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .crm-panel-card,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .glass-panel,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .stat-card {
  background: var(--ds-glass-fill) !important;
  border: 1px solid var(--ds-glass-border) !important;
  box-shadow: var(--ds-shadow-panel-3d), var(--ds-glow-gold) !important;
  backdrop-filter: blur(20px) saturate(1.15);
  -webkit-backdrop-filter: blur(20px) saturate(1.15);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  /* Не анимировать background/backdrop — даёт мерцание в WebKit при наведении и скролле */
  transition: box-shadow 0.22s ease, border-color 0.22s ease;
}

@media (hover: hover) and (pointer: fine) {
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary):hover,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .crm-panel-card:hover,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .glass-panel:hover,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .stat-card:hover {
    box-shadow: var(--ds-shadow-panel-3d-hover), var(--ds-glow-gold) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary),
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .crm-panel-card,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .glass-panel,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .stat-card {
    transition: none;
  }

}

@media (prefers-reduced-transparency: reduce) {
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary),
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .crm-panel-card,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .glass-panel,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .stat-card {
    background: var(--ds-glass-fill-dense) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-block.search-panel.glass-panel,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-block.crm-panel-card,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #products-table-container.card {
    background: rgba(255, 253, 248, 0.78) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-card {
    background: var(--ds-glass-fill-dense) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary) .card-header,
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary) .card-footer {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    background: var(--color-surface-soft) !important;
  }

  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .sidebar {
    background: var(--color-surface, #fffdf8) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary) .card-header,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary) .card-footer {
  background: rgba(248, 243, 234, 0.58) !important;
  border-color: rgba(216, 203, 184, 0.55) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary) .card-body {
  background: transparent !important;
}

/* ---------- Таблицы в контенте: rgba без blur по ячейкам (стабильный скролл) ---------- */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .table {
  color: var(--ds-table-text) !important;
  border-color: var(--ds-table-border) !important;
  --bs-table-bg: var(--ds-table-bg);
  --bs-table-color: var(--ds-table-text);
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .table > :not(caption) > * > * {
  background-color: var(--ds-table-bg) !important;
  border-color: var(--ds-table-border) !important;
  color: var(--ds-table-text) !important;
  box-shadow: none !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .table thead th {
  background: var(--ds-table-head) !important;
  color: var(--ds-table-text) !important;
  border-color: var(--ds-table-border) !important;
  font-weight: 700 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .app-content .table tbody tr:hover > * {
  background-color: var(--ds-table-hover) !important;
}

/* ---------- Прайс (.crm-price-ds) ---------- */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-page-hero {
  text-align: center;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid rgba(18, 57, 111, 0.12);
  margin-bottom: 1.5rem !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-page-hero-title {
  font-family: var(--font-brand-serif, "Cormorant Garamond", Georgia, serif) !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  font-size: clamp(1.85rem, 1.3rem + 1.8vw, 2.4rem) !important;
  color: var(--color-heading) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-page-hero-meta {
  font-size: 0.95rem !important;
  color: var(--color-text-muted) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-block.search-panel.glass-panel,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-block.crm-panel-card {
  border-radius: 1.1rem !important;
  border: 1px solid var(--ds-glass-border) !important;
  box-shadow: var(--ds-shadow-panel-3d), var(--ds-glow-gold) !important;
  /* Не --ds-glass-fill-dense: фон страницы должен читаться сквозь панель */
  background: var(--ds-glass-fill) !important;
  backdrop-filter: blur(22px) saturate(1.18);
  -webkit-backdrop-filter: blur(22px) saturate(1.18);
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-heading {
  font-family: var(--font-brand-serif, "Cormorant Garamond", Georgia, serif) !important;
  font-weight: 600 !important;
  color: var(--color-heading) !important;
  border-bottom: 1px solid rgba(184, 149, 92, 0.35);
  padding-bottom: 0.5rem;
  margin-bottom: 1rem !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-block .price-search-label {
  color: var(--color-heading) !important;
  font-weight: 600 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-block .form-control {
  border-radius: 0.6rem !important;
  border-color: rgba(18, 57, 111, 0.18) !important;
  background: rgba(255, 253, 248, 0.78) !important;
  color: var(--color-text) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-block .form-control:focus {
  border-color: #12396f !important;
  box-shadow: 0 0 0 3px rgba(18, 57, 111, 0.2) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-filters-panel {
  border-radius: 0.85rem !important;
  overflow: hidden;
  border: 1px solid var(--ds-glass-border) !important;
  box-shadow: var(--ds-shadow-panel-3d), var(--ds-glow-gold) !important;
  background: rgba(255, 253, 248, 0.14) !important;
  backdrop-filter: blur(20px) saturate(1.12);
  -webkit-backdrop-filter: blur(20px) saturate(1.12);
  transform: translateZ(0);
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-filters-panel > .btn.btn-light {
  background: linear-gradient(180deg, #fffdf8 0%, #f8f3ea 100%) !important;
  color: var(--color-heading) !important;
  font-weight: 600 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-filters-panel > .btn.btn-light:hover {
  background: #fffdf8 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-filters-panel .border-top {
  border-color: rgba(36, 50, 74, 0.18) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #priceFiltersCollapse .p-3 {
  background: rgba(255, 253, 248, 0.08) !important;
  backdrop-filter: blur(14px) saturate(1.08);
  -webkit-backdrop-filter: blur(14px) saturate(1.08);
}

/* Иконка «фильтры» и пр. — navy вместо золота */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-filters-panel .text-primary {
  color: var(--color-primary) !important;
}

/* Чипы фильтров: золото вместо #0d6efd (глобальные .chip в theme-overrides) */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .chip {
  background-color: rgba(255, 253, 248, 0.55) !important;
  border-color: rgba(216, 203, 184, 0.75) !important;
  color: var(--color-text) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .chip:hover {
  background-color: rgba(248, 243, 234, 0.85) !important;
  border-color: var(--color-primary) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .chip:focus {
  box-shadow: 0 0 0 0.2rem rgba(36, 50, 74, 0.28) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .chip.active {
  background: var(--color-primary) !important;
  border-color: var(--color-primary-hover) !important;
  color: var(--color-primary-text) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .chip.active:hover {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  color: var(--color-primary-text) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .chip.active:focus {
  box-shadow: 0 0 0 0.2rem rgba(18, 57, 111, 0.22) !important;
}

/*
 * Кнопки «Применить» в фильтрах: theme-overrides задаёт var(--color-primary) с более высокой
 * специфичностью, чем общий .app-content .btn-primary — перебиваем внутри .price-page.crm-price-ds.
 */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds .price-filters-btn.price-filters-btn--submit,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds .filters-actions .btn.btn-primary,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds .price-filter-actions .btn.btn-primary,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds .filter-actions .btn.btn-primary {
  background: var(--color-primary) !important;
  color: var(--color-primary-text) !important;
  border-color: var(--color-primary) !important;
  box-shadow: 0 6px 18px rgba(36, 50, 74, 0.18) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds .price-filters-btn.price-filters-btn--submit:hover,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds .filters-actions .btn.btn-primary:hover,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds .price-filter-actions .btn.btn-primary:hover,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds .filter-actions .btn.btn-primary:hover {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  color: var(--color-primary-text) !important;
}

/* Тело карточек прайса: не заливать var(--color-surface) — иначе фото не видно ни на моб., ни на десктопе */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .card > .card-body {
  background: transparent !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #products-table-container .table-responsive {
  background: rgba(255, 253, 248, 0.12) !important;
  border-radius: 0.65rem;
  backdrop-filter: blur(10px) saturate(1.06);
  -webkit-backdrop-filter: blur(10px) saturate(1.06);
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-filters-panel .form-label,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-filters-panel .chip-title {
  color: var(--color-heading) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #products-table-container.card {
  border-radius: 1rem !important;
  border: 1px solid var(--ds-glass-border-soft) !important;
  box-shadow: var(--ds-shadow-panel-3d), var(--ds-glow-gold) !important;
  overflow: hidden;
  background: var(--ds-glass-fill) !important;
  backdrop-filter: blur(20px) saturate(1.12);
  -webkit-backdrop-filter: blur(20px) saturate(1.12);
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-table-custom thead th {
  background: var(--ds-table-head) !important;
  color: var(--ds-table-text) !important;
  font-weight: 700 !important;
  border-bottom: 2px solid rgba(184, 149, 92, 0.4) !important;
  border-color: var(--ds-table-border) !important;
  font-size: 0.82rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-table-custom tbody td {
  background: var(--ds-table-bg) !important;
  border-color: var(--ds-table-border) !important;
  color: var(--ds-table-text) !important;
  vertical-align: middle;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-table-custom tbody tr:hover td {
  background: var(--ds-table-hover) !important;
}

/*
 * Прайс: перебить theme-overrides (#fffdf8 на ячейках) — только когда есть .crm-price-ds.
 */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds #products-table-container .price-table-custom.table thead th {
  background: rgba(248, 243, 234, 0.34) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds #products-table-container .price-table-custom.table tbody td {
  background: rgba(255, 253, 248, 0.22) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds #products-table-container .price-table-custom.table tbody tr:hover td {
  background: rgba(255, 253, 248, 0.38) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-card {
  border: 1px solid var(--ds-glass-border) !important;
  border-radius: 0.85rem !important;
  background: rgba(255, 253, 248, 0.2) !important;
  box-shadow: var(--ds-shadow-panel-3d), var(--ds-glow-gold) !important;
  backdrop-filter: blur(18px) saturate(1.1);
  -webkit-backdrop-filter: blur(18px) saturate(1.1);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-card-header {
  border-bottom: 1px solid rgba(184, 149, 92, 0.28) !important;
}

/* Мобильный список прайса: те же цвета, что у таблицы на вебе (перебиваем legacy .price-page .price-mobile-*) */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-article,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-article a {
  color: #5a6578 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-name,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-name a {
  color: #172033 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-price-row {
  background: rgba(248, 243, 234, 0.62) !important;
  border: 1px solid rgba(216, 203, 184, 0.4) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-price-label {
  color: #5a6578 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-price-value,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-price-value * {
  color: #172033 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-badges,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-mobile-badges .text-muted {
  color: #5a6578 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-btn.price-search-btn--submit {
  background: var(--color-primary) !important;
  color: var(--color-primary-text) !important;
  border-color: var(--color-primary) !important;
  box-shadow: 0 6px 18px rgba(36, 50, 74, 0.18) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-btn.price-search-btn--submit:hover {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  color: var(--color-primary-text) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-btn.price-search-btn--reset {
  background: #f8f3ea !important;
  color: #172033 !important;
  border: 1px solid #d8cbb8 !important;
  box-shadow: none !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-btn.price-search-btn--reset:hover {
  background: #efe3cc !important;
  border-color: #b8955c !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .btn-golden-glossy.add-to-order-btn,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-table-custom .btn-cart,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-table-actions-cell .btn-primary {
  background: var(--color-primary) !important;
  color: var(--color-primary-text) !important;
  border: 1px solid var(--color-primary) !important;
  box-shadow: 0 4px 14px rgba(36, 50, 74, 0.18) !important;
  font-weight: 600 !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .btn-golden-glossy.add-to-order-btn:hover,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-table-custom .btn-cart:hover,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-table-actions-cell .btn-primary:hover {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  color: var(--color-primary-text) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .alert-info {
  background: var(--color-info-bg) !important;
  border-color: rgba(26, 85, 136, 0.28) !important;
  color: var(--color-heading) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .alert-secondary {
  background: var(--color-surface-soft) !important;
  border-color: var(--color-border) !important;
  color: var(--color-text) !important;
}

@media (max-width: 390px) {
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-page-hero-title {
    letter-spacing: 0.07em !important;
    font-size: 1.65rem !important;
  }

  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .price-search-block .price-search-actions-row .price-search-btn {
    font-size: 0.8125rem !important;
    height: 2.55rem !important;
  }

  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds .btn-golden-glossy.add-to-order-btn span {
    font-size: 0.75rem;
  }
}

/* =========================================================
   Тёмная тема «Тёмный бутик» — фон-изображение
   ========================================================= */

/* Морские body::before/::after из styles.css — отключаем, чтобы не перебивать фото */
html[data-theme="dark"] body.app-body-luxury::before,
html[data-theme="dark"] body.app-body-luxury::after {
  display: none !important;
}

html[data-theme="dark"] body.app-body-luxury {
  color: var(--color-text) !important;
  background:
    linear-gradient(
      165deg,
      rgba(8, 4, 16, 0.9) 0%,
      rgba(23, 19, 26, 0.68) 42%,
      rgba(12, 8, 22, 0.88) 100%
    ),
    url("/static/img/backgrounds/dark-boutique-ambient.png") !important;
  background-color: #0a0614 !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-attachment: scroll !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content {
  background: transparent !important;
}

/* =========================================================
   Тёмная тема — та же «шина», что светлая: стекло, 3D, ширина, прайс
   (цвета из токенов html[data-theme="dark"] в theme-overrides.css)
   ========================================================= */

html[data-theme="dark"] {
  --crm-sidebar-width: 300px;
  --sidebar-width: 300px;

  --ds-dark-glass-fill: rgba(36, 31, 41, 0.36);
  --ds-dark-glass-fill-dense: rgba(36, 31, 41, 0.52);
  --ds-dark-glass-fill-hover: rgba(45, 38, 51, 0.48);
  --ds-dark-glass-border: rgba(255, 255, 255, 0.14);
  --ds-dark-glass-border-soft: rgba(200, 155, 90, 0.22);
  --ds-dark-shadow-panel-3d:
    0 1px 0 rgba(255, 255, 255, 0.07) inset,
    0 2px 4px rgba(0, 0, 0, 0.45),
    8px 0 32px rgba(0, 0, 0, 0.55),
    20px 0 52px rgba(0, 0, 0, 0.38),
    -1px 0 0 rgba(200, 155, 90, 0.12) inset;
  --ds-dark-shadow-panel-3d-hover:
    0 1px 0 rgba(255, 255, 255, 0.1) inset,
    0 2px 6px rgba(0, 0, 0, 0.5),
    10px 0 36px rgba(0, 0, 0, 0.58),
    24px 0 60px rgba(0, 0, 0, 0.42),
    -1px 0 0 rgba(226, 183, 108, 0.18) inset;
  --ds-dark-glow-gold: 0 0 0 1px rgba(200, 155, 90, 0.28);

  --ds-dark-table-bg: rgba(42, 36, 48, 0.32);
  --ds-dark-table-head: rgba(53, 44, 59, 0.42);
  --ds-dark-table-border: rgba(255, 255, 255, 0.12);
  --ds-dark-table-hover: rgba(50, 42, 56, 0.52);
  --ds-dark-table-text: #f8f1e8;
}

html[data-theme="dark"] body.app-body-luxury .sidebar {
  background: linear-gradient(
    195deg,
    rgba(36, 31, 41, 0.4) 0%,
    rgba(26, 22, 30, 0.3) 45%,
    rgba(40, 34, 48, 0.38) 100%
  ) !important;
  border: 1px solid var(--ds-dark-glass-border) !important;
  border-left: 1px solid rgba(58, 48, 63, 0.95) !important;
  border-radius: 0 22px 22px 0 !important;
  box-shadow: var(--ds-dark-shadow-panel-3d), var(--ds-dark-glow-gold) !important;
  backdrop-filter: blur(22px) saturate(1.14);
  -webkit-backdrop-filter: blur(22px) saturate(1.14);
}

@media (min-width: 1024px) {
  html[data-theme="dark"] body.app-body-luxury #appShell:not(.sidebar-collapsed) .sidebar {
    width: 300px !important;
    max-width: 300px !important;
    flex: 0 0 300px !important;
    flex-basis: 300px !important;
    border-radius: 0 26px 26px 0 !important;
    margin: 14px 0 14px 14px !important;
    height: calc(100vh - 28px) !important;
    min-height: calc(100vh - 28px) !important;
    max-height: calc(100vh - 28px) !important;
    align-self: center !important;
    top: 0 !important;
  }

  html[data-theme="dark"] body.app-body-luxury #appShell:not(.sidebar-collapsed) .sidebar .sidebar-inner {
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
  }
}

html[data-theme="dark"] body.app-body-luxury .sidebar .nav-link {
  color: var(--color-text-muted) !important;
}

html[data-theme="dark"] body.app-body-luxury .sidebar .nav-link:hover {
  color: var(--color-heading) !important;
  background: rgba(200, 155, 90, 0.12) !important;
}

html[data-theme="dark"] body.app-body-luxury .sidebar .nav-link .nav-icon {
  color: var(--color-accent) !important;
}

html[data-theme="dark"] body.app-body-luxury .sidebar .nav-link.active {
  color: var(--color-heading) !important;
  background: rgba(200, 155, 90, 0.16) !important;
  border-left: 3px solid var(--color-accent) !important;
  box-shadow:
    inset 0 0 0 1px rgba(200, 155, 90, 0.22),
    0 6px 22px rgba(0, 0, 0, 0.35) !important;
  backdrop-filter: blur(8px);
}

html[data-theme="dark"] body.app-body-luxury .sidebar .nav-link.active .nav-icon {
  color: var(--color-heading) !important;
}

html[data-theme="dark"] body.app-body-luxury .sidebar-brand-line1,
html[data-theme="dark"] body.app-body-luxury .sidebar-brand-line2,
html[data-theme="dark"] body.app-body-luxury .sidebar-brand-title {
  color: var(--color-heading) !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45);
}

html[data-theme="dark"] body.app-body-luxury .sidebar-brand-logo {
  border: 1px solid rgba(200, 155, 90, 0.4) !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.4);
}

html[data-theme="dark"] body.app-body-luxury .sidebar-toggle {
  background: rgba(255, 255, 255, 0.06) !important;
  color: var(--color-accent) !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
}

html[data-theme="dark"] body.app-body-luxury .sidebar-toggle:hover {
  background: rgba(200, 155, 90, 0.14) !important;
  color: var(--color-heading) !important;
  border-color: rgba(226, 183, 108, 0.35) !important;
}

html[data-theme="dark"] body.app-body-luxury .sidebar .nav-link-logout {
  color: rgba(255, 138, 128, 0.88) !important;
}

html[data-theme="dark"] body.app-body-luxury .sidebar .nav-link-logout:hover {
  color: var(--color-danger) !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .btn-primary {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: var(--color-primary-text) !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .btn-primary:hover {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  color: var(--color-primary-text) !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .btn-secondary,
html[data-theme="dark"] body.app-body-luxury .app-content .btn-outline-secondary {
  background: rgba(45, 38, 51, 0.65) !important;
  color: var(--color-heading) !important;
  border: 1px solid var(--color-border) !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .btn-secondary:hover,
html[data-theme="dark"] body.app-body-luxury .app-content .btn-outline-secondary:hover {
  background: rgba(200, 155, 90, 0.12) !important;
  border-color: var(--ds-dark-glass-border-soft) !important;
  color: var(--color-heading) !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .btn-link,
html[data-theme="dark"] body.app-body-luxury .app-content .btn-ghost {
  background: transparent !important;
  color: var(--color-accent) !important;
  border-color: transparent !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .btn-danger {
  background: var(--color-danger) !important;
  border-color: var(--color-danger) !important;
  color: #24180c !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .btn-success {
  background: var(--color-success) !important;
  border-color: var(--color-success) !important;
  color: #0f1410 !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary),
html[data-theme="dark"] body.app-body-luxury .app-content .crm-panel-card,
html[data-theme="dark"] body.app-body-luxury .app-content .glass-panel,
html[data-theme="dark"] body.app-body-luxury .app-content .stat-card {
  background: var(--ds-dark-glass-fill) !important;
  border: 1px solid var(--ds-dark-glass-border) !important;
  box-shadow: var(--ds-dark-shadow-panel-3d), var(--ds-dark-glow-gold) !important;
  backdrop-filter: blur(20px) saturate(1.1);
  -webkit-backdrop-filter: blur(20px) saturate(1.1);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: box-shadow 0.22s ease, border-color 0.22s ease;
}

@media (hover: hover) and (pointer: fine) {
  html[data-theme="dark"] body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary):hover,
  html[data-theme="dark"] body.app-body-luxury .app-content .crm-panel-card:hover,
  html[data-theme="dark"] body.app-body-luxury .app-content .glass-panel:hover,
  html[data-theme="dark"] body.app-body-luxury .app-content .stat-card:hover {
    box-shadow: var(--ds-dark-shadow-panel-3d-hover), var(--ds-dark-glow-gold) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-theme="dark"] body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary),
  html[data-theme="dark"] body.app-body-luxury .app-content .crm-panel-card,
  html[data-theme="dark"] body.app-body-luxury .app-content .glass-panel,
  html[data-theme="dark"] body.app-body-luxury .app-content .stat-card {
    transition: none;
  }

}

@media (prefers-reduced-transparency: reduce) {
  html[data-theme="dark"] body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary),
  html[data-theme="dark"] body.app-body-luxury .app-content .crm-panel-card,
  html[data-theme="dark"] body.app-body-luxury .app-content .glass-panel,
  html[data-theme="dark"] body.app-body-luxury .app-content .stat-card {
    background: var(--ds-dark-glass-fill-dense) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-block.search-panel.glass-panel,
  html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-block.crm-panel-card,
  html[data-theme="dark"] body.app-body-luxury .crm-price-ds #products-table-container.card {
    background: rgba(36, 31, 41, 0.72) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-card {
    background: var(--ds-dark-glass-fill-dense) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  html[data-theme="dark"] body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary) .card-header,
  html[data-theme="dark"] body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary) .card-footer {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    background: var(--color-surface-soft) !important;
  }

  html[data-theme="dark"] body.app-body-luxury .sidebar {
    background: linear-gradient(180deg, #2d2633 0%, #241f29 100%) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}

html[data-theme="dark"] body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary) .card-header,
html[data-theme="dark"] body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary) .card-footer {
  background: rgba(45, 38, 51, 0.55) !important;
  border-color: var(--color-border) !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .card:not(.bg-danger):not(.bg-success):not(.bg-primary) .card-body {
  background: transparent !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .table {
  color: var(--ds-dark-table-text) !important;
  border-color: var(--ds-dark-table-border) !important;
  --bs-table-bg: var(--ds-dark-table-bg);
  --bs-table-color: var(--ds-dark-table-text);
}

html[data-theme="dark"] body.app-body-luxury .app-content .table > :not(caption) > * > * {
  background-color: var(--ds-dark-table-bg) !important;
  border-color: var(--ds-dark-table-border) !important;
  color: var(--ds-dark-table-text) !important;
  box-shadow: none !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .table thead th {
  background: var(--ds-dark-table-head) !important;
  color: var(--ds-dark-table-text) !important;
  border-color: var(--ds-dark-table-border) !important;
  font-weight: 700 !important;
}

html[data-theme="dark"] body.app-body-luxury .app-content .table tbody tr:hover > * {
  background-color: var(--ds-dark-table-hover) !important;
}

/* ---------- Прайс (.crm-price-ds), тёмная тема ---------- */
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-page-hero {
  text-align: center;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  margin-bottom: 1.5rem !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-page-hero-title {
  font-family: var(--font-brand-serif, "Cormorant Garamond", Georgia, serif) !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  font-size: clamp(1.85rem, 1.3rem + 1.8vw, 2.4rem) !important;
  color: var(--color-heading) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-page-hero-meta {
  font-size: 0.95rem !important;
  color: var(--color-text-muted) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-block.search-panel.glass-panel,
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-block.crm-panel-card {
  border-radius: 1.1rem !important;
  border: 1px solid var(--ds-dark-glass-border) !important;
  box-shadow: var(--ds-dark-shadow-panel-3d), var(--ds-dark-glow-gold) !important;
  background: var(--ds-dark-glass-fill) !important;
  backdrop-filter: blur(22px) saturate(1.08);
  -webkit-backdrop-filter: blur(22px) saturate(1.08);
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-heading {
  font-family: var(--font-brand-serif, "Cormorant Garamond", Georgia, serif) !important;
  font-weight: 600 !important;
  color: var(--color-heading) !important;
  border-bottom: 1px solid rgba(200, 155, 90, 0.3);
  padding-bottom: 0.5rem;
  margin-bottom: 1rem !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-block .price-search-label {
  color: var(--color-heading) !important;
  font-weight: 600 !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-block .form-control {
  border-radius: 0.6rem !important;
  border-color: var(--color-border) !important;
  background: rgba(36, 31, 41, 0.72) !important;
  color: var(--color-text) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-block .form-control:focus {
  border-color: var(--color-accent) !important;
  box-shadow: 0 0 0 3px rgba(200, 155, 90, 0.25) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-filters-panel {
  border-radius: 0.85rem !important;
  overflow: hidden;
  border: 1px solid var(--ds-dark-glass-border) !important;
  box-shadow: var(--ds-dark-shadow-panel-3d), var(--ds-dark-glow-gold) !important;
  background: rgba(36, 31, 41, 0.28) !important;
  backdrop-filter: blur(18px) saturate(1.06);
  -webkit-backdrop-filter: blur(18px) saturate(1.06);
  transform: translateZ(0);
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-filters-panel > .btn.btn-light {
  background: linear-gradient(180deg, rgba(52, 44, 59, 0.95) 0%, rgba(36, 31, 41, 0.98) 100%) !important;
  color: var(--color-heading) !important;
  font-weight: 600 !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-filters-panel > .btn.btn-light:hover {
  background: var(--color-surface-soft) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-filters-panel .border-top {
  border-color: rgba(200, 155, 90, 0.22) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds #priceFiltersCollapse .p-3 {
  background: rgba(36, 31, 41, 0.22) !important;
  backdrop-filter: blur(12px) saturate(1.04);
  -webkit-backdrop-filter: blur(12px) saturate(1.04);
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-filters-panel .text-primary {
  color: var(--color-accent) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .chip {
  background-color: rgba(45, 38, 51, 0.55) !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
  color: var(--color-text) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .chip:hover {
  background-color: rgba(55, 46, 62, 0.75) !important;
  border-color: rgba(200, 155, 90, 0.45) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .chip:focus {
  box-shadow: 0 0 0 0.2rem rgba(200, 155, 90, 0.28) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .chip.active {
  background: linear-gradient(180deg, rgba(200, 155, 90, 0.35) 0%, rgba(138, 106, 58, 0.55) 100%) !important;
  border-color: rgba(226, 183, 108, 0.55) !important;
  color: var(--color-heading) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .chip.active:hover {
  background: linear-gradient(180deg, rgba(200, 155, 90, 0.45) 0%, rgba(138, 106, 58, 0.65) 100%) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .chip.active:focus {
  box-shadow: 0 0 0 0.2rem rgba(200, 155, 90, 0.35) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-filters-panel .form-label,
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-filters-panel .chip-title {
  color: var(--color-heading) !important;
}

html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds .price-filters-btn.price-filters-btn--submit,
html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds .filters-actions .btn.btn-primary,
html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds .price-filter-actions .btn.btn-primary,
html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds .filter-actions .btn.btn-primary {
  background: var(--color-primary) !important;
  color: var(--color-primary-text) !important;
  border-color: var(--color-primary) !important;
}

html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds .price-filters-btn.price-filters-btn--submit:hover,
html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds .filters-actions .btn.btn-primary:hover,
html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds .price-filter-actions .btn.btn-primary:hover,
html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds .filter-actions .btn.btn-primary:hover {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  color: var(--color-primary-text) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .card > .card-body {
  background: transparent !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds #products-table-container .table-responsive {
  background: rgba(36, 31, 41, 0.18) !important;
  border-radius: 0.65rem;
  backdrop-filter: blur(10px) saturate(1.04);
  -webkit-backdrop-filter: blur(10px) saturate(1.04);
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds #products-table-container.card {
  border-radius: 1rem !important;
  border: 1px solid var(--ds-dark-glass-border-soft) !important;
  box-shadow: var(--ds-dark-shadow-panel-3d), var(--ds-dark-glow-gold) !important;
  overflow: hidden;
  background: var(--ds-dark-glass-fill) !important;
  backdrop-filter: blur(20px) saturate(1.06);
  -webkit-backdrop-filter: blur(20px) saturate(1.06);
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-table-custom thead th {
  background: var(--ds-dark-table-head) !important;
  color: var(--ds-dark-table-text) !important;
  font-weight: 700 !important;
  border-bottom: 2px solid rgba(200, 155, 90, 0.35) !important;
  border-color: var(--ds-dark-table-border) !important;
  font-size: 0.82rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-table-custom tbody td {
  background: var(--ds-dark-table-bg) !important;
  border-color: var(--ds-dark-table-border) !important;
  color: var(--ds-dark-table-text) !important;
  vertical-align: middle;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-table-custom tbody tr:hover td {
  background: var(--ds-dark-table-hover) !important;
}

html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds #products-table-container .price-table-custom.table thead th {
  background: rgba(53, 44, 59, 0.38) !important;
}

html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds #products-table-container .price-table-custom.table tbody td {
  background: rgba(42, 36, 48, 0.28) !important;
}

html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds #products-table-container .price-table-custom.table tbody tr:hover td {
  background: rgba(50, 42, 56, 0.48) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-card {
  border: 1px solid var(--ds-dark-glass-border-soft) !important;
  border-radius: 0.85rem !important;
  background: rgba(36, 31, 41, 0.48) !important;
  box-shadow: var(--ds-dark-shadow-panel-3d), var(--ds-dark-glow-gold) !important;
  backdrop-filter: blur(16px) saturate(1.05);
  -webkit-backdrop-filter: blur(16px) saturate(1.05);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-card-header {
  border-bottom: 1px solid rgba(200, 155, 90, 0.25) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-article,
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-article a {
  color: var(--color-text-muted) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-name,
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-name a {
  color: var(--color-heading) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-price-row {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-price-label {
  color: var(--color-text-muted) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-price-value,
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-price-value * {
  color: var(--ds-dark-table-text) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-badges,
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-mobile-badges .text-muted {
  color: var(--color-text-muted) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-btn.price-search-btn--submit {
  background: var(--color-primary) !important;
  color: var(--color-primary-text) !important;
  border-color: var(--color-primary) !important;
  box-shadow: 0 6px 22px rgba(0, 0, 0, 0.4) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-btn.price-search-btn--submit:hover {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-btn.price-search-btn--reset {
  background: rgba(45, 38, 51, 0.75) !important;
  color: var(--color-heading) !important;
  border: 1px solid var(--color-border) !important;
  box-shadow: none !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-btn.price-search-btn--reset:hover {
  background: rgba(200, 155, 90, 0.12) !important;
  border-color: var(--color-accent) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .btn-golden-glossy.add-to-order-btn,
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-table-custom .btn-cart,
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-table-actions-cell .btn-primary {
  background: var(--color-primary) !important;
  color: var(--color-primary-text) !important;
  border: 1px solid rgba(200, 155, 90, 0.45) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35) !important;
  font-weight: 600 !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .btn-golden-glossy.add-to-order-btn:hover,
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-table-custom .btn-cart:hover,
html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-table-actions-cell .btn-primary:hover {
  background: var(--color-primary-hover) !important;
  border-color: rgba(226, 183, 108, 0.55) !important;
  color: var(--color-primary-text) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .alert-info {
  background: var(--color-info-bg) !important;
  border-color: rgba(138, 180, 248, 0.35) !important;
  color: var(--color-heading) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds .alert-secondary {
  background: var(--color-surface-soft) !important;
  border-color: var(--color-border) !important;
  color: var(--color-text) !important;
}

@media (max-width: 390px) {
  html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-page-hero-title {
    letter-spacing: 0.07em !important;
    font-size: 1.65rem !important;
  }

  html[data-theme="dark"] body.app-body-luxury .crm-price-ds .price-search-block .price-search-actions-row .price-search-btn {
    font-size: 0.8125rem !important;
    height: 2.55rem !important;
  }

  html[data-theme="dark"] body.app-body-luxury .crm-price-ds .btn-golden-glossy.add-to-order-btn span {
    font-size: 0.75rem;
  }
}

/* ---------- Корзина: тот же glass-контейнер и таблица, что на прайсе ---------- */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #price-cart-container.card {
  border-radius: 1rem !important;
  border: 1px solid var(--ds-glass-border-soft) !important;
  box-shadow: var(--ds-shadow-panel-3d), var(--ds-glow-gold) !important;
  overflow: hidden;
  background: var(--ds-glass-fill) !important;
  backdrop-filter: blur(20px) saturate(1.12);
  -webkit-backdrop-filter: blur(20px) saturate(1.12);
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #price-cart-container .table-responsive {
  background: rgba(255, 253, 248, 0.12) !important;
  border-radius: 0.65rem;
  backdrop-filter: blur(10px) saturate(1.06);
  -webkit-backdrop-filter: blur(10px) saturate(1.06);
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #price-cart-container .price-table-custom thead th,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #price-cart-container .table-cart thead th {
  background: var(--ds-table-head) !important;
  color: var(--ds-table-text) !important;
  font-weight: 700 !important;
  border-bottom: 2px solid rgba(184, 149, 92, 0.4) !important;
  border-color: var(--ds-table-border) !important;
  font-size: 0.82rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #price-cart-container .price-table-custom tbody td,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #price-cart-container .table-cart tbody td {
  background: var(--ds-table-bg) !important;
  border-color: var(--ds-table-border) !important;
  color: var(--ds-table-text) !important;
  vertical-align: middle;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #price-cart-container .price-table-custom tbody tr:hover td,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .crm-price-ds #price-cart-container .table-cart tbody tr:hover td {
  background: var(--ds-table-hover) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds #price-cart-container .price-table-custom.table thead th,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds #price-cart-container .table-cart.table thead th {
  background: rgba(248, 243, 234, 0.34) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds #price-cart-container .price-table-custom.table tbody td,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds #price-cart-container .table-cart.table tbody td {
  background: rgba(255, 253, 248, 0.22) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds #price-cart-container .price-table-custom.table tbody tr:hover td,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page.crm-price-ds #price-cart-container .table-cart.table tbody tr:hover td {
  background: rgba(255, 253, 248, 0.38) !important;
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds #price-cart-container.card {
  border-radius: 1rem !important;
  border: 1px solid var(--ds-dark-glass-border-soft, rgba(255, 255, 255, 0.1)) !important;
  box-shadow: var(--ds-shadow-panel-3d) !important;
  overflow: hidden;
  background: var(--ds-dark-glass-fill, rgba(36, 31, 41, 0.36)) !important;
  backdrop-filter: blur(20px) saturate(1.12);
  -webkit-backdrop-filter: blur(20px) saturate(1.12);
}

html[data-theme="dark"] body.app-body-luxury .crm-price-ds #price-cart-container .table-responsive {
  background: rgba(36, 31, 41, 0.2) !important;
  border-radius: 0.65rem;
}

html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds #price-cart-container .price-table-custom.table thead th,
html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds #price-cart-container .table-cart.table thead th {
  background: rgba(36, 31, 41, 0.45) !important;
}

html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds #price-cart-container .price-table-custom.table tbody td,
html[data-theme="dark"] body.app-body-luxury .price-page.crm-price-ds #price-cart-container .table-cart.table tbody td {
  background: rgba(36, 31, 41, 0.28) !important;
}

/* Mobile: без фонового фото (только neutral/light; перебивает блок выше @1023px) */
@media (max-width: 767px) {
  html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury {
    background: var(--color-bg, #f5f0e8) !important;
    background-image: none !important;
    background-color: var(--color-bg, #f5f0e8) !important;
  }
}

/* Прайс: звезда избранного — navy сразу (без золотого от .btn-outline-secondary / :active) */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn {
  background: var(--color-surface-soft, #f8f3ea) !important;
  color: var(--color-primary) !important;
  border: 1px solid var(--color-border, #d8cbb8) !important;
  box-shadow: none !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn i,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn i.text-warning {
  color: var(--color-primary) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn:hover,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn:focus,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn:active {
  background: rgba(36, 50, 74, 0.1) !important;
  border-color: var(--color-primary) !important;
  color: var(--color-primary) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn:hover i,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn:focus i,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn:active i {
  color: var(--color-primary) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn.active,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn.is-in-favorites,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn[aria-pressed="true"] {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: var(--color-primary-text) !important;
}

html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn.active i,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn.is-in-favorites i,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-page .add-to-favorites-btn[aria-pressed="true"] i {
  color: var(--color-primary-text) !important;
}

/* Избранное / корзина: компактные мобильные карточки */
@media (max-width: 767.98px) {
  .price-fav-page .price-fav-mobile-item {
    margin-bottom: 0.65rem !important;
  }

  .price-fav-page .price-fav-mobile-item:last-child {
    margin-bottom: 0 !important;
  }

  .price-fav-page .price-mobile-card {
    min-height: 0 !important;
    padding: 0.7rem 0.8rem !important;
    row-gap: 0.3rem !important;
  }

  .price-fav-page .price-mobile-card-header {
    margin-bottom: 0.2rem !important;
    gap: 0.3rem !important;
  }

  .price-fav-page .price-mobile-prices {
    margin-top: 0.2rem !important;
    gap: 0.4rem !important;
  }

  .price-fav-page .price-mobile-price-row {
    padding: 0.45rem 0.6rem !important;
  }

  .price-cart-select-all-mobile-btn,
  .price-fav-select-all-mobile-btn {
    border-radius: 14px !important;
  }
}

/* Корзина / избранное (web): колонки таблицы и navy-чекбоксы (neutral/light) */
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-cart-page .form-check-input.price-cart-check:checked,
html:is([data-theme="neutral"], [data-theme="light"]) body.app-body-luxury .price-fav-page .form-check-input.price-cart-check:checked {
  border-color: #24324a !important;
  background-color: #24324a !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fffdf8' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.2 6.8 11.5 12.5 4.5'/%3E%3C/svg%3E") !important;
  background-size: 0.92rem !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 2px 8px rgba(36, 50, 74, 0.22) !important;
}

@media (min-width: 768px) {
  /* price-table-custom рассчитан на прайс (без чекбокса) — в корзине 6 колонок */
  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom {
    table-layout: fixed;
    width: 100%;
  }

  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) th:first-child,
  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) td:first-child {
    width: 2.75rem !important;
    min-width: 2.75rem !important;
    max-width: 3rem !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) th:nth-child(2),
  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) td:nth-child(2) {
    width: 7.25rem !important;
    min-width: 6rem !important;
    max-width: 8.5rem !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) th:nth-child(3),
  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) td:nth-child(3) {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    text-align: left !important;
    vertical-align: middle !important;
  }

  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) th:nth-child(4),
  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) td:nth-child(4),
  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) th:nth-child(5),
  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) td:nth-child(5),
  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) th:nth-child(6),
  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom:not(.price-table-custom--with-favorite-col):not(.price-table-custom--with-catalog-col) td:nth-child(6) {
    width: 7.5rem !important;
    min-width: 5.25rem !important;
    max-width: 9.5rem !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  body.app-body-luxury .price-cart-page #price-cart-container .table-cart.price-table-custom tbody td {
    vertical-align: middle !important;
  }

  body.app-body-luxury .price-cart-page #price-cart-container .table-cart td.price-cart-name-cell,
  body.app-body-luxury .price-fav-page #price-cart-container .table-fav td.price-cart-name-cell,
  body.app-body-luxury .price-fav-page #price-cart-container .table-fav td.price-fav-cell-name {
    max-width: none !important;
    text-align: left !important;
    word-break: normal;
    overflow-wrap: anywhere;
  }

  body.app-body-luxury .price-fav-page #price-cart-container .table-fav.table-cart {
    table-layout: fixed;
    width: 100%;
  }

  body.app-body-luxury .price-fav-page #price-cart-container .table-fav.table-cart th:first-child,
  body.app-body-luxury .price-fav-page #price-cart-container .table-fav.table-cart td:first-child {
    width: 2.75rem !important;
    min-width: 2.75rem !important;
    max-width: 3rem !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  body.app-body-luxury .price-fav-page #price-cart-container .table-fav.table-cart th:nth-child(2),
  body.app-body-luxury .price-fav-page #price-cart-container .table-fav.table-cart td:nth-child(2) {
    width: 7.25rem !important;
    min-width: 6rem !important;
    max-width: 8.5rem !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  body.app-body-luxury .price-fav-page #price-cart-container .table-fav.table-cart th:nth-child(3),
  body.app-body-luxury .price-fav-page #price-cart-container .table-fav.table-cart td:nth-child(3) {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    text-align: left !important;
    vertical-align: middle !important;
  }

  body.app-body-luxury .price-fav-page #price-cart-container .table-fav.table-cart th:nth-child(4),
  body.app-body-luxury .price-fav-page #price-cart-container .table-fav.table-cart td:nth-child(4) {
    width: 8rem !important;
    min-width: 6rem !important;
    max-width: 10rem !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  body.app-body-luxury .price-cart-page #price-cart-container .table-cart thead th.price-cart-col-name,
  body.app-body-luxury .price-fav-page #price-cart-container .table-fav thead th.price-cart-col-name {
    text-align: left !important;
  }
}
