/* Demo-slice минимальные стили поверх Bootstrap 5 */

body { font-size: 14px; }

/* KPI карточки */
.kpi-card {
  background: #fff;
  border: 1px solid #dee2e6;
  border-radius: 8px;
  padding: 12px 14px;
  height: 100%;
}
.kpi-card.danger { border-color: #dc3545; }
.kpi-label { color: #6c757d; font-size: 12px; text-transform: uppercase; letter-spacing: 0.03em; }
.kpi-value { font-size: 18px; font-weight: 600; margin-top: 4px; }
.kpi-hint  { color: #6c757d; font-size: 11px; margin-top: 2px; }

/* Таблица бюджета */
.budget-table th { font-size: 12px; text-transform: uppercase; letter-spacing: 0.02em; }
.budget-table td { font-variant-numeric: tabular-nums; }
.budget-table .name-cell { min-width: 260px; }

/* Уровни классификатора */
.level-1 { background: #f1f3f5; font-weight: 600; }
.level-2 { background: #f8f9fa; font-weight: 500; }
.level-3 { }
.level-4 { color: #495057; }

/* Светофор — тонкая полоса слева */
tr.tl-red    { border-left: 3px solid #dc3545; }
tr.tl-yellow { border-left: 3px solid #ffc107; }
tr.tl-green  { border-left: 3px solid transparent; }

.deviation-item.tl-red    { border-left: 4px solid #dc3545; }
.deviation-item.tl-yellow { border-left: 4px solid #ffc107; }

/* Липкие заголовки */
.sticky-top { top: 0; z-index: 5; }

/* Ссылки в navbar */
.navbar a { text-decoration: none; }
.navbar a:hover { color: #fff !important; }
