/* © 2026 VEYRO (ИП Макаров И. В.). appagent — проприетарная программа. Использование — по лицензионному договору https://appagent.ru/legal/offer/. Копирование и распространение без разрешения запрещены. */
/* Дашборд пульта: лента «Решения и события» под доской (pult/js/dashboard/feed.js, модель — feed-model.js).
   Только токены tokens.css, обе темы. Страница прокручивается целиком, вложенной прокрутки нет; горизонтальной прокрутки нет на 390 и 1440.
   Строка: проект · суть (переносится) · «Срочно» · сколько ждёт · «Открыть». На телефоне суть занимает свою строку, кнопка — не ниже 44 px. */

.db-feed-host { margin-top: var(--space-8); min-width: 0; }
.df { display: grid; gap: var(--space-3); min-width: 0; color: var(--color-ink); font: var(--text-ui-weight) var(--text-ui-size)/var(--text-ui-line) var(--font-sans); }
.df[hidden] { display: none; }

.df__head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; min-width: 0; }
.df__ttl {
  margin: 0; min-width: 0; overflow-wrap: anywhere;
  font: var(--text-h3-weight) var(--text-h3-size)/var(--text-h3-line) var(--text-h3-family); letter-spacing: var(--text-h3-track);
}
.df__all {
  display: inline-flex; align-items: center; min-height: var(--size-touch-min); color: var(--color-ink2);
  font: var(--text-caption-weight) var(--text-caption-size)/var(--text-caption-line) var(--font-sans); text-decoration: none;
}
.df__all:hover { color: var(--color-acc-text); text-decoration: underline; }
.df__all:focus-visible, .df__old-sum:focus-visible { outline: var(--size-focus-width) solid var(--color-focus); outline-offset: var(--size-focus-offset); border-radius: var(--radius-xs); }

.df__tabs { min-width: 0; }
.df__tabs .ui-seg { max-width: 100%; }
.df__panel { display: grid; gap: var(--space-3); min-width: 0; }

.df__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: minmax(0, 1fr); min-width: 0; }
.df__row {
  display: flex; align-items: center; gap: var(--space-3); min-width: 0; padding: var(--space-2) 0; border-bottom: 1px solid var(--color-line);
}
.df__row:last-child { border-bottom: 0; }
.df__proj {
  flex: 0 0 10rem; min-width: 0; overflow-wrap: anywhere; color: var(--color-ink2);
  font: var(--text-label-weight) var(--text-label-size)/var(--text-label-line) var(--font-sans);
}
.df__title { flex: 1 1 auto; min-width: 0; overflow-wrap: anywhere; color: var(--color-ink); }
.df__urg {
  flex: none; padding: var(--space-1) var(--space-2); border-radius: var(--radius-pill); white-space: nowrap;
  background: var(--color-danger-soft); color: var(--color-danger-soft-text);
  font: var(--text-label-weight) var(--text-label-size)/var(--text-label-line) var(--font-sans);
}
.df__kind { flex: none; color: var(--color-ink3); white-space: nowrap; font: var(--text-label-weight) var(--text-label-size)/var(--text-label-line) var(--font-sans); }
.df__time {
  flex: none; color: var(--color-ink3); white-space: nowrap;
  font: var(--weight-regular) var(--text-mono-size)/var(--space-5) var(--font-mono); font-variant-numeric: var(--num-features);
}
.df__row[data-urgent="true"] .df__time { color: var(--color-danger-text); }
.df__open { flex: none; white-space: nowrap; }

.df__empty {
  margin: 0; padding: var(--space-4); border-radius: var(--radius-card); background: var(--surface-card); box-shadow: var(--shadow-ring);
  color: var(--color-ink2); font: var(--text-caption-weight) var(--text-caption-size)/var(--text-caption-line) var(--font-sans);
}
.df__more, .df__close { justify-self: start; }

/* «Давно ждут (N)»: свёрнутый блок под основным списком. */
.df__old { display: grid; gap: var(--space-2); min-width: 0; border-top: 1px solid var(--color-line); padding-top: var(--space-1); }
.df__old-sum {
  display: flex; align-items: center; gap: var(--space-2); min-height: var(--size-touch-min); cursor: pointer; list-style: none;
  color: var(--color-ink2); font: var(--text-ui-strong-weight) var(--text-caption-size)/var(--space-5) var(--font-sans);
}
.df__old-sum::-webkit-details-marker { display: none; }
.df__old-sum::before { content: "\203A"; flex: none; color: var(--color-ink3); transition: transform var(--duration-fast) var(--ease-out); }
.df__old[open] > .df__old-sum::before { transform: rotate(90deg); }
.df__old .df__row { opacity: 0.85; }

.df__note { margin: 0; color: var(--color-danger-text); font: var(--text-caption-weight) var(--text-caption-size)/var(--text-caption-line) var(--font-sans); }

.df__open:focus-visible, .df__more:focus-visible, .df__close:focus-visible {
  outline: var(--size-focus-width) solid var(--color-focus); outline-offset: var(--size-focus-offset);
}

@media (pointer: coarse) {
  .df__open, .df__more, .df__close { min-height: var(--size-touch-min); }
}

/* Телефон: проект и суть на всю ширину, под ними — «Срочно», вид, время и «Открыть» в один ряд. */
@media (max-width: 47.9375rem) {
  .db-feed-host { margin-top: var(--space-6); }
  .df__row { display: grid; grid-template-columns: auto auto minmax(0, 1fr) auto; align-items: center; column-gap: var(--space-2); row-gap: var(--space-1); padding: var(--space-3) 0; }
  .df__proj, .df__title { grid-column: 1 / -1; }
  .df__urg, .df__kind { grid-column: auto; }
  .df__time { grid-column: -3 / -2; justify-self: start; }
  .df__open { grid-column: -2 / -1; min-height: var(--size-touch-min); min-width: var(--size-touch-min); }
  .df__more, .df__close { width: 100%; min-height: var(--size-touch-min); }
}

@media (prefers-reduced-motion: reduce) {
  .df__old-sum::before { transition: none; }
}
