/* Платформа SHAMBI — визуал 2.0 (надстройка над style.css): меньше шума, чёткие границы у показателей.
   Подключается после style.css; чтобы вернуть прежний вид — убрать подключение этого файла. */
:root {
  --line: #ddd8cc;        /* граница плашек и карточек */
  --line-soft: #efebe3;   /* разделители строк таблиц */
  --line-strong: #c9c3b5; /* шапка таблиц, итоговые строки */
  --hover: #faf8f3;
  --shadow: none;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) { --line: #3a3a35; --line-soft: #2a2a27; --line-strong: #4a4a44; --hover: #22221f; }
}
:root[data-theme="dark"] { --line: #3a3a35; --line-soft: #2a2a27; --line-strong: #4a4a44; --hover: #22221f; }

/* Плашки-показатели: рамка, без тени, подпись спокойная, число крупное */
.tiles { gap: 10px; }
.tile { border: 1px solid var(--line); border-radius: 10px; padding: 12px 14px; box-shadow: none; display: flex; flex-direction: column; gap: 2px; }
.tile .k { font-size: 11px; letter-spacing: .4px; text-transform: uppercase; color: var(--muted); font-weight: 600; }
.tile .v { font-size: 26px; line-height: 1.15; margin: 4px 0 2px; }
.tile .d { font-size: 12px; color: var(--text-2); line-height: 1.35; }
.tile.dark { border-color: var(--text); }

/* Карточки: рамка вместо тени, заголовок отделён линией */
.card { border: 1px solid var(--line); border-radius: 12px; padding: 16px 18px; box-shadow: none; }
.card > h2:first-child { padding-bottom: 8px; margin-bottom: 8px; border-bottom: 1px solid var(--line-soft); }
.dept, .task, .col { box-shadow: none; border-color: var(--line); }

/* Пояснения — тише */
.note { color: var(--muted); font-size: 12px; line-height: 1.4; }
.lead { font-size: 13px; }

/* Таблицы: шапка с линией, светлые разделители, подсветка строки */
th { font-size: 11px; letter-spacing: .3px; text-transform: uppercase; color: var(--muted); border-bottom: 1px solid var(--line-strong); }
td { border-bottom: 1px solid var(--line-soft); }
tbody tr:hover td { background: var(--hover); }
tfoot td { border-top: 1px solid var(--line-strong); }
.scroll { border: 1px solid var(--line-soft); border-radius: 8px; }

/* Поля и кнопки — ровнее */
input[type=search], input[type=text], input[type=date], select, textarea, button { border-color: var(--line); border-radius: 8px; }
.warn { border-color: var(--line); }

/* Плашки в один ряд; изменение к прошлому периоду — отдельной строкой под числом (не переносится как попало) */
.tiles { grid-template-columns: repeat(auto-fit, minmax(135px, 1fr)); }
.tile .v .delta { display: block; font-size: 12px; font-weight: 600; margin: 3px 0 0; white-space: nowrap; }
.tile .v { white-space: nowrap; font-size: 23px; letter-spacing: -.3px; }

/* Источники данных — тихая строка текста вместо «таблеток»; пропущенный источник заметен */
.chips { gap: 2px 14px; margin: 4px 0 14px; }
.chip { border: 0; background: none; padding: 0; font-size: 11px; color: var(--muted); border-radius: 0; }
.chip.miss { color: var(--text-2); font-weight: 600; }

/* Таблицы по всей платформе: столбцы разделены тонкими линиями, шапка выровнена как данные */
.scroll th + th, .scroll td + td { border-left: 1px solid var(--line-soft); }
.scroll thead th { vertical-align: bottom; }
.scroll td { vertical-align: middle; }
