/* ==========================================================
   Фирменный стиль: Учет совместных расходов СНТ
   ========================================================== */
:root {
  /* Цветовая идентификация СНТ */
  --zenit-primary: #1565C0;
  --zenit-subtle: #E3F2FD;
  --lesnoy-primary: #2E7D32;
  --lesnoy-subtle: #E8F5E9;

  /* Пастельная дачная зона ввода */
  --card-entry-bg: #F5EBE1;
  --card-entry-border: #D7CCC8;
  --card-entry-text: #4E342E;

  /* Базовый фон и текст */
  --app-bg: #F1F5F9;
  --app-text: #1E293B;
  --navbar-bg: #1E293B;

  /* Тени и радиусы скругления */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 12px;
  --shadow-card: 0 4px 12px rgba(15, 23, 42, 0.05);
}

body {
  background-color: var(--app-bg);
  color: var(--app-text);
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.main-wrapper {
  flex: 1 0 auto;
}

/* Навигационная панель */
.navbar-custom {
  background-color: var(--navbar-bg);
  border-bottom: 3px solid var(--zenit-primary);
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.15);
}

.navbar-brand-title {
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: 0.3px;
}

/* Карточка блока добавления расходов */
.dacha-card-entry {
  background-color: var(--card-entry-bg) !important;
  border: 1px solid var(--card-entry-border) !important;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
}

/* Бейджи принадлежности к СНТ */
.badge-zenit {
  background-color: var(--zenit-primary) !important;
  color: #FFFFFF !important;
  border-radius: var(--radius-sm);
}

.badge-lesnoy {
  background-color: var(--lesnoy-primary) !important;
  color: #FFFFFF !important;
  border-radius: var(--radius-sm);
}

/* Бейджи типов расходов */
.badge-materials {
  background-color: #0288D1;
  color: #FFFFFF;
}

.badge-services {
  background-color: #F57C00;
  color: #FFFFFF;
}

.badge-labor {
  background-color: #5D4037;
  color: #FFFFFF;
}

/* Стилизация шапки таблицы */
.table thead.table-dark th {
  background-color: var(--navbar-bg);
  border-color: #334155;
  vertical-align: middle;
}

/* Подвал */
footer {
  flex-shrink: 0;
  background-color: #FFFFFF;
  border-top: 1px solid #E2E8F0;
  color: #64748B;
  font-size: 0.85rem;
}

/* Мобильная адаптация */
@media (max-width: 768px) {
  .navbar-brand-title {
    font-size: 0.9rem;
    white-space: normal;
  }
}