/* Главный экран (dash.js, этап 3.4): плитки групп, последние просмотренные, подразделы «Пополнение по складам»,
   «Последние поступления», «Стоимость остатков» - классы ds-*; компоненты - ui.css. Цвет учетной записи - только у
   меток (.ui-tag): числа плиток без цвета, уровень числа - меткой подписи. */

.sh-home .ds h2 { margin: var(--s-10) 0 var(--s-5); }
.ds-tiles { grid-template-columns: repeat(auto-fill, minmax(min(100%, 210px), 1fr)); }
.ds-tile { align-content: start; text-align: left; font: inherit; color: inherit; }
button.ds-tile[disabled] { cursor: default; }
button.ds-tile:focus-visible { outline: none; box-shadow: var(--focus); }
.ds-tile .ui-stat-v { font-size: var(--fs-3xl); }
.ds-tile .ds-why { font-size: var(--fs-md); font-weight: 500; letter-spacing: 0; color: var(--text-2); }
.ds-tile .ui-stat-s { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2) var(--s-3); }
.ds-more { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2) var(--s-6); font-size: var(--fs-sm); color: var(--text-2); }
.ds-more b { color: var(--text); font-variant-numeric: tabular-nums; }
.ds-gap { white-space: nowrap; }

/* плитка с переходом у каждого числа: числа - кнопки внутри карточки */
.ds-parts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 76px), 1fr)); gap: var(--s-4); }
.ds-part { display: grid; justify-items: start; align-content: start; gap: var(--s-2); min-width: 0; min-height: 44px; padding: var(--s-4) var(--s-5);
  text-align: left; font: inherit; color: inherit; background: transparent; border: 1px solid var(--line); border-radius: var(--r-lg); cursor: pointer;
  transition: border-color var(--t-fast), background var(--t-fast); }
.ds-part:hover { background: var(--hover); border-color: var(--accent-line); }
.ds-part:focus-visible { outline: none; box-shadow: var(--focus); }
.ds-part[disabled] { cursor: default; }
.ds-part .ui-stat-v { font-size: var(--fs-3xl); }
.ds-part-l { font-size: var(--fs-sm); color: var(--text-2); }

.ds-wait { margin: 0; color: var(--text-2); }

/* последние просмотренные */
.ds-recent { display: grid; overflow: hidden; }
.ds-rec { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2) var(--s-5); min-height: 44px; padding: var(--s-4) var(--s-8);
  text-align: left; font: inherit; color: inherit; background: transparent; border: 0; border-bottom: 1px solid var(--line); cursor: pointer; }
.ds-rec:last-child { border-bottom: 0; }
.ds-rec:hover { background: var(--hover); }
.ds-rec:focus-visible { outline: none; box-shadow: inset var(--focus); }
.ds-rec-n { flex: 1 1 240px; min-width: 0; font-weight: 600; overflow-wrap: anywhere; }
.ds-rec-c { font-size: var(--fs-sm); color: var(--text-3); font-variant-numeric: tabular-nums; }

/* подразделы */
.ds-note { margin: 0 0 var(--s-6); }
.ds-na { color: var(--text-3); }
.ds-table .ds-num { min-width: 44px; justify-content: flex-end; font-variant-numeric: tabular-nums; color: var(--text); }
.ds-table th.ds-focus { color: var(--text); font-weight: 700; }
.ds-table .ds-link { height: auto; min-height: var(--h-sm); padding-inline: 0; font-weight: 600; text-align: left; white-space: normal; color: var(--text); }
.ds-total td { font-weight: 650; border-top: 1px solid var(--line-2); }
.ds-table td.ds-nw { white-space: nowrap; overflow-wrap: normal; }
.ds-count { margin: var(--s-5) 0 0; color: var(--text-2); font-size: var(--fs-sm); }
.ds-sub .ui-tag { vertical-align: middle; }
.ds-table td.ds-focus { background: var(--hover); }
.ds-table td.ds-focus .ds-num { font-weight: 700; }
.ds-old { display: inline-flex; }
