/* ==========================
   ТЕМНАЯ ТЕМА ГЛАВНОЙ СТРАНИЦЫ
   Активируется только при [data-bs-theme="dark"]
   ========================== */

/* Только когда активирована темная тема */
:root[data-bs-theme="dark"] .home-page-root {
  /* Токены темной темы, совместимые с app-dark.css */
  --home-bg-panel: #1a1b26;
  --home-bg-surface: #1d1e2a;
  --home-bg-muted: #21222e;
  --home-border: #2a2b3a;
  --home-border-strong: #343547;
  --home-text-primary: #e2e4e9;
  --home-text-secondary: #a6a8b3;
  --home-accent: #fdd007;
  --home-accent-light: #ffd633;
  --home-shadow-light: rgba(0, 0, 0, 0.3);
  --home-shadow-medium: rgba(0, 0, 0, 0.4);
  --home-shadow-heavy: rgba(0, 0, 0, 0.5);
}

/* ==========================
   БАЗОВЫЕ СТИЛИ ТЕМНОЙ ТЕМЫ
   ========================== */

:root[data-bs-theme="dark"] .home-page-root,
:root[data-bs-theme="dark"] .home-page-root .home-section-title,
:root[data-bs-theme="dark"] .home-page-root .home-hero-title,
:root[data-bs-theme="dark"] .home-page-root .home-hero-lead,
:root[data-bs-theme="dark"] .home-page-root .home-hero-chip-desc,
:root[data-bs-theme="dark"] .home-page-root .home-hero-article-title,
:root[data-bs-theme="dark"] .home-page-root .home-hero-article-desc,
:root[data-bs-theme="dark"] .home-page-root .home-news-strip-title,
:root[data-bs-theme="dark"] .home-page-root .home-tile .fw-semibold,
:root[data-bs-theme="dark"] .home-page-root .home-tile a,
:root[data-bs-theme="dark"] .home-page-root .home-about-text,
:root[data-bs-theme="dark"] .home-page-root .home-hero-chip-value,
:root[data-bs-theme="dark"] .home-page-root .home-hero-kicker-main,
:root[data-bs-theme="dark"] .home-page-root .home-hero-chip-label,
:root[data-bs-theme="dark"] .home-page-root .home-kicker,
:root[data-bs-theme="dark"] .home-page-root .home-link-more,
:root[data-bs-theme="dark"] .home-page-root .list-group-item,
:root[data-bs-theme="dark"] .home-page-root .small {
  color: var(--home-text-primary, #e2e4e9) !important;
}

/* Вторичный текст */
:root[data-bs-theme="dark"] .home-page-root .home-hero-article-desc,
:root[data-bs-theme="dark"] .home-page-root .home-hero-chip-desc,
:root[data-bs-theme="dark"] .home-page-root .home-tile .text-muted,
:root[data-bs-theme="dark"] .home-page-root .home-list-group-slim .text-muted,
:root[data-bs-theme="dark"] .home-page-root .home-news-strip .small.text-muted,
:root[data-bs-theme="dark"] .home-page-root .home-hero-articles-empty,
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel-week .home-hero-chip-desc,
:root[data-bs-theme="dark"] .home-page-root .home-calculator-line .text-muted {
  color: var(--home-text-secondary, #a6a8b3) !important;
  opacity: 0.9;
}

/* ==========================
   ФОНЫ ВСЕХ БЛОКОВ
   ========================== */

:root[data-bs-theme="dark"] .home-page-root .home-panel,
:root[data-bs-theme="dark"] .home-page-root .home-hero-surface,
:root[data-bs-theme="dark"] .home-page-root .home-hero-services-shell,
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel-main,
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel,
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel-week,
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel-articles,
:root[data-bs-theme="dark"] .home-page-root .home-news-strip,
:root[data-bs-theme="dark"] .home-page-root .home-dashboard-tile,
:root[data-bs-theme="dark"] .home-page-root .home-tile,
:root[data-bs-theme="dark"] .home-page-root .home-about-strip,
:root[data-bs-theme="dark"] .home-page-root #home-map-section .home-tile,
:root[data-bs-theme="dark"] .home-page-root .home-calculator-line,
:root[data-bs-theme="dark"] .home-page-root .home-hero-articles-nav {
  /* Фон - ТЕМНЫЙ */
  background-color: var(--home-bg-panel, #1a1b26) !important;
  background-image: 
    radial-gradient(circle at 15% 50%, rgba(26, 27, 38, 0.8) 0%, transparent 50%),
    radial-gradient(circle at 85% 30%, rgba(26, 27, 38, 0.6) 0%, transparent 50%) !important;
  
  /* Границы - ТЕМНЫЕ */
  border: 1px solid var(--home-border, #2a2b3a) !important;
  border-radius: 1rem !important;
  
  /* Тени - ТЕМНЫЕ */
  box-shadow: 
    0 4px 6px -1px var(--home-shadow-light, rgba(0, 0, 0, 0.3)),
    0 2px 4px -1px rgba(0, 0, 0, 0.25),
    0 1px 3px 0 rgba(0, 0, 0, 0.2),
    inset 0 1px 0 0 rgba(255, 255, 255, 0.05) !important;
}

/* Эффект парения при наведении */
:root[data-bs-theme="dark"] .home-page-root .home-panel:hover,
:root[data-bs-theme="dark"] .home-page-root .home-hero-surface:hover,
:root[data-bs-theme="dark"] .home-page-root .home-hero-services-shell:hover,
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel-main:hover,
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel:hover,
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel-week:hover,
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel-articles:hover,
:root[data-bs-theme="dark"] .home-page-root .home-news-strip:hover,
:root[data-bs-theme="dark"] .home-page-root .home-dashboard-tile:hover,
:root[data-bs-theme="dark"] .home-page-root .home-tile:hover,
:root[data-bs-theme="dark"] .home-page-root .home-about-strip:hover,
:root[data-bs-theme="dark"] .home-page-root #home-map-section .home-tile:hover {
  transform: translateY(-2px) !important;
  box-shadow: 
    0 10px 15px -3px var(--home-shadow-medium, rgba(0, 0, 0, 0.4)),
    0 4px 6px -2px rgba(0, 0, 0, 0.3),
    0 1px 3px 0 rgba(0, 0, 0, 0.25),
    inset 0 1px 0 0 rgba(255, 255, 255, 0.08) !important;
  border-color: var(--home-border-strong, #343547) !important;
}

/* ==========================
   СПЕЦИФИЧНЫЕ НАСТРОЙКИ БЛОКОВ
   ========================== */

/* Герой-блоки */
:root[data-bs-theme="dark"] .home-page-root .home-hero-surface {
  background-color: var(--home-bg-surface, #1d1e2a) !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-hero-panel-main {
  background-color: var(--home-bg-panel, #1a1b26) !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
}

/* Блок "Цифра недели" - акцентный фон */
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel-week {
  background-color: rgba(253, 208, 7, 0.08) !important;
  border: 1px solid rgba(253, 208, 7, 0.3) !important;
}

/* Блок статей и исследований */
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel-articles {
  background-color: rgba(253, 208, 7, 0.05) !important;
  border: 1px solid rgba(253, 208, 7, 0.3) !important;
}

/* Новостная лента */
:root[data-bs-theme="dark"] .home-page-root .home-news-strip {
  background-color: var(--home-bg-panel, #1a1b26) !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
}

/* Дашборд */
:root[data-bs-theme="dark"] .home-page-root .home-dashboard-tile {
  background-color: var(--home-bg-panel, #1a1b26) !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
}

/* Три горизонтальных блока */
:root[data-bs-theme="dark"] .home-page-root .home-tile {
  background-color: var(--home-bg-surface, #1d1e2a) !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
}

/* Блок "Связаться с нами" */
:root[data-bs-theme="dark"] .home-page-root .home-about-strip {
  background-color: rgba(253, 208, 7, 0.08) !important;
  border: 1px solid rgba(253, 208, 7, 0.3) !important;
}

/* Строка калькулятора */
:root[data-bs-theme="dark"] .home-page-root .home-calculator-line {
  background-color: var(--home-bg-muted, #21222e) !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
  border-radius: 0.6rem !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-calculator-line:hover {
  background-color: var(--home-bg-panel, #1a1b26) !important;
  border-color: var(--home-border-strong, #343547) !important;
}

/* Кнопки навигации в статьях */
:root[data-bs-theme="dark"] .home-page-root .home-hero-articles-nav {
  background-color: var(--home-bg-surface, #1d1e2a) !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
  box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.25) !important;
  color: var(--home-text-primary, #e2e4e9) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-hero-articles-nav:hover {
  background-color: var(--home-bg-panel, #1a1b26) !important;
  border-color: var(--home-border-strong, #343547) !important;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3) !important;
}

/* Прогресс-бар в статьях */
:root[data-bs-theme="dark"] .home-page-root .home-hero-articles-progress {
  background-color: rgba(42, 43, 58, 0.5) !important;
  border-radius: 999px !important;
}

/* Внутренний контейнер карты */
:root[data-bs-theme="dark"] .home-page-root .home-map-wrapper {
  border-radius: 0.9rem !important;
  overflow: hidden !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
  box-shadow: 
    inset 0 2px 4px 0 rgba(0, 0, 0, 0.25),
    0 1px 2px 0 rgba(0, 0, 0, 0.2) !important;
}

/* ==========================
   ЭЛЕМЕНТЫ СПИСКОВ И КАРТОЧЕК
   ========================== */

/* Отчёты - ССЫЛКИ */
:root[data-bs-theme="dark"] .home-page-root .home-list-group-slim .list-group-item {
  padding: 0.8rem 1rem !important;
  border: none !important;
  border-radius: 0.75rem !important;
  margin-bottom: 0.5rem;
  background-color: var(--home-bg-muted, #21222e) !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
  box-shadow: 
    0 1px 3px 0 rgba(0, 0, 0, 0.25),
    inset 0 1px 0 0 rgba(255, 255, 255, 0.05) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-list-group-slim .list-group-item:hover {
  background-color: var(--home-bg-panel, #1a1b26) !important;
  border-color: var(--home-border-strong, #343547) !important;
  transform: translateY(-1px) !important;
  box-shadow: 
    0 4px 6px -1px rgba(0, 0, 0, 0.35),
    0 2px 4px -1px rgba(0, 0, 0, 0.3) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-list-group-slim .list-group-item + .list-group-item {
  border-top: 1px dashed rgba(100, 102, 122, 0.35) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-list-group-slim .fw-semibold {
  font-weight: 700 !important;
  color: var(--home-text-primary, #e2e4e9) !important;
}

/* Справочники - ССЫЛКИ */
:root[data-bs-theme="dark"] .home-page-root .home-tile .list-unstyled li a {
  display: block;
  padding: 0.8rem 1rem !important;
  border-radius: 0.75rem !important;
  text-decoration: none;
  background-color: var(--home-bg-muted, #21222e) !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
  box-shadow: 
    0 1px 3px 0 rgba(0, 0, 0, 0.25),
    inset 0 1px 0 0 rgba(255, 255, 255, 0.05) !important;
  color: var(--home-text-primary, #e2e4e9) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-tile .list-unstyled li a:hover {
  background-color: var(--home-bg-panel, #1a1b26) !important;
  border-color: var(--home-border-strong, #343547) !important;
  transform: translateY(-1px) !important;
  box-shadow: 
    0 4px 6px -1px rgba(0, 0, 0, 0.35),
    0 2px 4px -1px rgba(0, 0, 0, 0.3) !important;
  text-decoration: none;
  color: var(--home-text-primary, #e2e4e9) !important;
}

/* ==========================
   ЖЕЛТЫЕ АКЦЕНТЫ #fdd007 - СОХРАНЕНЫ
   ========================== */

:root[data-bs-theme="dark"] .home-page-root .home-hero-articles-nav {
  border-color: var(--home-accent, #fdd007) !important;
  color: var(--home-accent, #fdd007) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-hero-articles-nav:hover {
  border-color: var(--home-accent-light, #ffd633) !important;
  color: var(--home-accent-light, #ffd633) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-calc-open-btn {
  background-color: var(--home-accent, #fdd007) !important;
  border-color: var(--home-accent, #fdd007) !important;
  color: #222 !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-calc-open-btn:hover {
  background-color: var(--home-accent-light, #ffd633) !important;
  border-color: var(--home-accent-light, #ffd633) !important;
  color: #222 !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-about-actions .btn-outline-dark {
  background-color: var(--home-accent, #fdd007) !important;
  border-color: var(--home-accent, #fdd007) !important;
  color: #222 !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-about-actions .btn-outline-dark:hover {
  background-color: var(--home-accent-light, #ffd633) !important;
  border-color: var(--home-accent-light, #ffd633) !important;
  color: #222 !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-kicker,
:root[data-bs-theme="dark"] .home-page-root .home-hero-chip-label,
:root[data-bs-theme="dark"] .home-page-root .home-hero-kicker-main {
  color: var(--home-accent, #fdd007) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-hero-articles-progress > div {
  background-color: var(--home-accent, #fdd007) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-link-more {
  color: var(--home-accent, #fdd007) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-link-more:hover {
  color: var(--home-accent-light, #ffd633) !important;
}

/* Пульсация цифры недели */
@keyframes home-week-pulse-dark {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.03);
    color: var(--home-text-primary, #e2e4e9) !important;
  }
  100% {
    transform: scale(1);
  }
}

:root[data-bs-theme="dark"] .home-page-root .home-hero-chip-value {
  animation: home-week-pulse-dark 3s ease-in-out infinite;
}

:root[data-bs-theme="dark"] .home-page-root .home-list-group-slim .list-group-item:hover,
:root[data-bs-theme="dark"] .home-page-root .home-tile .list-unstyled li a:hover {
  border-left: 3px solid var(--home-accent, #fdd007) !important;
}

:root[data-bs-theme="dark"] .home-page-root .home-calculator-line:hover {
  border-left: 3px solid var(--home-accent, #fdd007) !important;
}

/* ==========================
   КАРТОЧКИ С ССЫЛКАМИ
   ========================== */

/* Статьи и исследования */
:root[data-bs-theme="dark"] .home-page-root .home-hero-article-card {
  border-radius: 0.75rem;
  padding: 1rem;
  color: inherit;
}

:root[data-bs-theme="dark"] .home-page-root .home-hero-article-card:hover {
  background-color: rgba(42, 43, 58, 0.7) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.35) !important;
}

/* Новости */
:root[data-bs-theme="dark"] .home-page-root .home-news-strip-item {
  background-color: var(--home-bg-muted, #21222e) !important;
  border: 1px solid var(--home-border, #2a2b3a) !important;
  border-radius: 0.85rem;
  padding: 1rem;
  margin: 0.25rem;
}

:root[data-bs-theme="dark"] .home-page-root .home-news-strip-item:hover {
  background-color: var(--home-bg-panel, #1a1b26) !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 15px -3px rgba(0, 0, 0, 0.35) !important;
  border-color: var(--home-border-strong, #343547) !important;
}

/* ==========================
   АДАПТИВНОСТЬ ДЛЯ МОБИЛЬНЫХ УСТРОЙСТВ
   ========================== */

@media (max-width: 768px) {
  :root[data-bs-theme="dark"] .home-page-root .home-panel,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-surface,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-services-shell,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-panel-main,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-panel,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-panel-week,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-panel-articles,
  :root[data-bs-theme="dark"] .home-page-root .home-news-strip,
  :root[data-bs-theme="dark"] .home-page-root .home-dashboard-tile,
  :root[data-bs-theme="dark"] .home-page-root .home-tile,
  :root[data-bs-theme="dark"] .home-page-root .home-about-strip {
    box-shadow: 
      0 2px 4px -1px rgba(0, 0, 0, 0.35),
      0 1px 2px -1px rgba(0, 0, 0, 0.3),
      inset 0 1px 0 0 rgba(255, 255, 255, 0.05) !important;
  }
  
  :root[data-bs-theme="dark"] .home-page-root .home-panel:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-surface:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-services-shell:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-panel-main:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-panel:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-panel-week:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-hero-panel-articles:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-news-strip:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-dashboard-tile:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-tile:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-about-strip:hover {
    transform: translateY(-1px) !important;
    box-shadow: 
      0 4px 6px -1px rgba(0, 0, 0, 0.4),
      0 2px 4px -1px rgba(0, 0, 0, 0.35),
      inset 0 1px 0 0 rgba(255, 255, 255, 0.08) !important;
  }
  
  :root[data-bs-theme="dark"] .home-page-root .home-list-group-slim .list-group-item,
  :root[data-bs-theme="dark"] .home-page-root .home-tile .list-unstyled li a {
    padding: 0.7rem 0.9rem !important;
    border-radius: 0.65rem !important;
  }
  
  :root[data-bs-theme="dark"] .home-page-root .home-calculator-line {
    padding: 0.8rem 0.9rem !important;
    border-radius: 0.75rem !important;
  }
  
  :root[data-bs-theme="dark"] .home-page-root .home-list-group-slim .list-group-item:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-tile .list-unstyled li a:hover,
  :root[data-bs-theme="dark"] .home-page-root .home-calculator-line:hover {
    transform: translateY(-1px) !important;
    border-left-width: 2px !important;
  }
}

/* ==========================
   СОСТОЯНИЕ ФОКУСА ДЛЯ ДОСТУПНОСТИ
   ========================== */

:root[data-bs-theme="dark"] .home-page-root .home-panel:focus-within,
:root[data-bs-theme="dark"] .home-page-root .home-tile:focus-within,
:root[data-bs-theme="dark"] .home-page-root .home-hero-panel:focus-within,
:root[data-bs-theme="dark"] .home-page-root .home-list-group-slim .list-group-item:focus-within,
:root[data-bs-theme="dark"] .home-page-root .home-tile .list-unstyled li a:focus-within {
  outline: 2px solid rgba(253, 208, 7, 0.5) !important;
  outline-offset: 2px !important;
}

/* ==========================
   УТОЧНЕНИЯ ДЛЯ СОГЛАСОВАННОСТИ С APP-DARK.CSS
   ========================== */

/* Убираем возможные белые фоны из Bootstrap классов */
:root[data-bs-theme="dark"] .home-page-root .bg-white,
:root[data-bs-theme="dark"] .home-page-root .bg-light {
  background: var(--home-bg-panel, #1a1b26) !important;
  color: var(--home-text-primary, #e2e4e9) !important;
}

/* Тёмный текст в темной теме */
:root[data-bs-theme="dark"] .home-page-root .text-dark,
:root[data-bs-theme="dark"] .home-page-root .text-body {
  color: var(--home-text-primary, #e2e4e9) !important;
}

/* Сохраняем желтый акцент для выделенных элементов */
:root[data-bs-theme="dark"] .home-page-root .border-bottom.border-warning {
  border-color: var(--home-accent, #fdd007) !important;
}

/* Адаптируем таблицы */
:root[data-bs-theme="dark"] .home-page-root table {
  background: var(--home-bg-panel, #1a1b26) !important;
  color: var(--home-text-primary, #e2e4e9) !important;
  border-color: var(--home-border, #2a2b3a) !important;
}

:root[data-bs-theme="dark"] .home-page-root table thead th {
  background: var(--home-bg-surface, #1d1e2a) !important;
  color: var(--home-text-primary, #e2e4e9) !important;
  border-bottom-color: var(--home-border-strong, #343547) !important;
}
:root[data-bs-theme="dark"] .home-page-root
.home-hero-panel-week,
:root[data-bs-theme="dark"] .home-page-root
.home-hero-panel-articles {
  background-color: rgba(253, 208, 7, 0.07) !important;
  border: 1px solid rgba(253, 208, 7, 0.35) !important;

  box-shadow:
    0 6px 12px -4px rgba(0, 0, 0, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}
/* === Строгая высота для нижних hero-блоков === */
.home-hero-panel-week,
.home-hero-panel-articles {
  min-height: 220px;
  max-height: 220px;
}

/* на больших экранах чуть выше */
@media (min-width: 992px) {
  .home-hero-panel-week,
  .home-hero-panel-articles {
    min-height: 260px;
    max-height: 260px;
  }
}
/* === Строгая высота основного hero-блока с заголовком === */
.home-hero-panel-main {
  min-height: 260px;
  max-height: 260px;
}

/* Десктоп — чуть выше */
@media (min-width: 992px) {
  .home-hero-panel-main {
    min-height: 300px;
    max-height: 300px;
  }
}
.home-hero-panel-main {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
