/* dash-hierarchy.css — главная: иерархия и разделение блоков (20.10, замечание владельца: «блоки сливаются в простыню»). Макет не меняется — только ритм, карточки, заголовки.
   Подключается сразу после dash-v3.css. Цвета — токены темы: рамка = 7 % цвета текста (в тёмной теме это rgba(255,255,255,.07), в светлой — тонкая тёмная). */

.d3 {
  --d3-gap: 28px;                                   /* между секциями: 24–32 px */
  --d3-card-bg: var(--bg-secondary);                /* чуть светлее фона страницы */
  --d3-card-bd: color-mix(in srgb, var(--text-primary) 7%, transparent);
  --d3-hair: color-mix(in srgb, var(--text-primary) 8%, transparent);
  gap: var(--d3-gap); padding-top: 24px; padding-bottom: 40px;
}
.d3-top { gap: 20px; }                              /* герой и плашки показателей — одна «шапка» страницы, ближе друг к другу */
.d3-cols { gap: var(--d3-gap); }
.d3-col { gap: var(--d3-gap); }
.d3-strip { gap: 16px; }

/* ── карточка секции: одинаковая у новых (d3) и прежних (hm-card: задачи, очереди) блоков ── */
.d3 .d3-blk[data-block]:not([data-block="hero"]):not([data-block="strip"]):not([data-block="biz"]):not([data-block="h4tiles"]):not(.d3-collapsed):not([hidden]) {
  background: var(--d3-card-bg); border: 1px solid var(--d3-card-bd); border-radius: 12px; padding: 20px; box-shadow: none;
}

/* ── заголовок секции: 19 px / 600, 16 px до содержимого ── */
.d3 .d3-head, .d3 .tk-head, .d3 .hm-dec-head { margin-bottom: 16px; padding-bottom: 0; }
.d3 .d3-h, .d3 .tk-head__t, .d3 .hm-dec-head__t { font: 600 19px/1.25 var(--font-display); letter-spacing: -.005em; color: var(--text-primary); }
.d3 .d3-h small { font: 400 13px var(--font-sans); letter-spacing: 0; }
.d3 .c3-title { font: 600 17px var(--font-display); }
.d3-count b { font-size: 28px; }

/* ── главная секция дня — «Решения»: крупнее, с акцентной рамкой и тоном фона ── */
.d3 .d3-blk[data-block="decisions"]:not(.d3-collapsed) {
  padding: 26px 28px 16px; border-radius: 14px;
  background: color-mix(in srgb, var(--accent-primary) 5%, var(--d3-card-bg));
  border-color: color-mix(in srgb, var(--accent-primary) 34%, var(--d3-card-bd));
  box-shadow: 0 14px 36px -22px rgba(0, 0, 0, .6);
}
.d3 .d3-blk[data-block="decisions"] .hm-dec-head { margin-bottom: 18px; }
.d3 .d3-blk[data-block="decisions"] .hm-dec-head__t { font-size: 21px; }

/* ── список внутри секции: тонкие разделители, ритм 12–16 px ── */
.d3-blk[data-block="decisions"] .hm-dec { padding-top: 14px; padding-bottom: 14px; border-top: 1px solid var(--d3-hair); }
.d3-blk[data-block="decisions"] .hm-dec:first-of-type { border-top: 0; }
.d3-news { gap: 14px; }
.d3-week { gap: 10px; }
.d3-next { margin-top: 16px; }
.d3 .c3-day { margin-top: 16px; padding-top: 16px; border-top-color: var(--d3-hair); gap: 12px; }
.d3 .c3-notes { margin-top: 8px; gap: 10px; }
.d3 .d3-dec-foot { padding-top: 14px; margin-top: 4px; border-top-color: var(--d3-hair); }

/* ── пустое состояние секции: заголовок остаётся, под ним внятная подсказка (не пустая карточка) ── */
.d3-ph { margin: 0; padding: 22px 18px; display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; border: 1px dashed var(--border-strong); border-radius: 10px; color: var(--text-muted); font-size: 13px; line-height: 1.45; }
.d3-ph b { color: var(--text-secondary); font: 600 14px var(--font-sans); }
.d3-ph a { color: var(--accent-primary); text-decoration: none; font-weight: 500; }
.d3 .d3-empty, .d3 .hm-empty, .d3 .so-empty:not([hidden]) {
  padding: 22px 18px; text-align: center; border: 1px dashed var(--border-strong); border-radius: 10px; color: var(--text-muted); font-size: 13px; line-height: 1.45;
}
.d3 .so-empty b { display: block; color: var(--text-secondary); font: 600 14px var(--font-sans); margin-bottom: 4px; }

/* ── телефон и узкий планшет: одна колонка, между секциями 24 px ── */
@media (max-width: 860px) {
  .d3 { --d3-gap: 24px; padding: 16px 14px 96px; gap: var(--d3-gap); }
  .d3 .d3-blk[data-block]:not([data-block="hero"]):not([data-block="strip"]):not([data-block="biz"]):not([data-block="h4tiles"]):not(.d3-collapsed):not([hidden]) { padding: 18px; }
  .d3 .d3-blk[data-block="decisions"]:not(.d3-collapsed) { padding: 20px 18px 12px; }
  .d3 .d3-h, .d3 .tk-head__t, .d3 .hm-dec-head__t { font-size: 18px; }
  .d3 .d3-blk[data-block="decisions"] .hm-dec-head__t { font-size: 19px; }
}
