/* PULSE — волна E: «Распределение нагрузки» (в «Рисках»), «Сценарии» (новый
 * экран), «Настроение и выручка» (в «Аналитике» + «Настройках»). Классы —
 * префикс mqe-, не пересекается с mq-/mqd1-/mqd2-/mqd3-. Где смысл совпадает
 * с готовыми блоками (mqd3-block, mqd1-chip, mqd2-intform/table) — эти классы
 * переиспользуются напрямую в разметке, без дублирования в этом файле.
 * Светлая тема, токены кабинета (voice.css) с фолбэками. Один акцент,
 * без эмодзи и глифов — только инлайн-SVG. */

/* ===== 1) Распределение нагрузки (в «Рисках») ===== */
.mqe-overload { margin-top: 22px; }
.mqe-overload__head { margin-bottom: 12px; }
.mqe-overload__ttl { font-size: 15px; font-weight: 600; color: var(--vx-text, #0A0A0A); }
.mqe-overload__sub { font-size: 12.5px; color: var(--vx-text-2, #9A9A9A); margin-top: 3px; line-height: 1.5; }

.mqe-dept-card { background: #fff; border: 1px solid var(--vx-border, #ECECEC); border-radius: var(--vx-r-card-sm, 16px); padding: 18px 20px; margin-bottom: 14px; }
.mqe-dept-card__head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 4px; }
.mqe-dept-card__name { font-size: 14.5px; font-weight: 700; color: var(--vx-text, #0A0A0A); }
.mqe-dept-card__avg { font-size: 12px; color: var(--vx-text-2, #9A9A9A); }
.mqe-dept-card__empty { font-size: 13px; color: var(--vx-text-2, #9A9A9A); padding: 8px 0 2px; line-height: 1.5; }

.mqe-person { border-top: 1px solid var(--vx-border-soft, #F4F4F4); padding: 14px 0; }
.mqe-person:first-of-type { border-top: none; padding-top: 10px; }
.mqe-person__head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.mqe-person__name { font-size: 13.5px; font-weight: 600; color: var(--vx-text, #0A0A0A); }
.mqe-person__load { font-size: 12.5px; color: var(--vx-zone-warn, #B28A50); font-weight: 600; white-space: nowrap; }
.mqe-person__why { font-size: 12.5px; color: var(--vx-text-2, #9A9A9A); margin-top: 4px; line-height: 1.5; }
.mqe-person__note { font-size: 12.5px; color: var(--vx-text-2, #9A9A9A); margin-top: 8px; font-style: italic; }
.mqe-person__decision { font-size: 11.5px; color: var(--vx-text-3, #B0B0B0); margin-top: 10px; line-height: 1.5; }

.mqe-cands { display: flex; flex-direction: column; gap: 6px; margin-top: 10px; }
.mqe-cand { background: var(--vx-bg-hover, #F6F6F5); border-radius: 10px; padding: 10px 12px; }
.mqe-cand__name { font-size: 12.5px; font-weight: 600; color: var(--vx-text, #0A0A0A); }
.mqe-cand__reason { font-size: 12px; color: var(--vx-text-2, #9A9A9A); margin-top: 2px; line-height: 1.5; }
.mqe-cand__cost { font-size: 12px; color: var(--vx-text-soft, #6A6A6A); margin-top: 3px; }

/* ===== 2) Сценарии — форма и результат ===== */
.mqe-scn-form { background: #fff; border: 1px solid var(--vx-border, #ECECEC); border-radius: var(--vx-r-card-sm, 16px); padding: 20px 22px; margin: 16px 0 22px; }
.mqe-field { margin-bottom: 14px; }
.mqe-field label { display: block; font-size: 12.5px; font-weight: 600; color: var(--vx-text-2, #9A9A9A); margin-bottom: 6px; }
.mqe-input {
  width: 100%; box-sizing: border-box; height: 44px; padding: 0 14px; font: inherit; font-size: 14px;
  border: 1px solid var(--vx-border-input, #E0E0E0); border-radius: 10px; background: #fff; color: var(--vx-text, #0A0A0A);
}
.mqe-emp-list { display: flex; flex-direction: column; gap: 6px; max-height: 220px; overflow-y: auto; border: 1px solid var(--vx-border-soft, #F4F4F4); border-radius: 10px; padding: 10px 12px; }
.mqe-emp-check { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--vx-text, #0A0A0A); }
.mqe-emp-check input { width: 16px; height: 16px; flex: none; }
.mqe-hint { font-size: 12.5px; color: var(--vx-text-2, #9A9A9A); margin: 2px 0; }

.mqe-result { margin-top: 16px; }
.mqe-result__current { font-size: 12.5px; color: var(--vx-text-2, #9A9A9A); margin-bottom: 4px; }
.mqe-result__range { font-size: 26px; font-weight: 700; color: var(--vx-text, #0A0A0A); font-variant-numeric: tabular-nums; line-height: 1.2; }
.mqe-result__range--text { font-size: 17px; }
.mqe-result__caption { font-size: 12.5px; color: var(--vx-text-2, #9A9A9A); margin-top: 4px; }
.mqe-result__week { font-size: 12.5px; color: var(--vx-text, #0A0A0A); margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--vx-border-soft, #F4F4F4); }
.mqe-result__notes { margin: 6px 0 0; padding-left: 18px; color: var(--vx-text-2, #9A9A9A); line-height: 1.6; }
.mqe-result__confidence { font-size: 12.5px; font-weight: 600; color: var(--vx-text, #0A0A0A); margin-top: 12px; }
/* Оговорка — рядом с числом, обычным размером, не мелкой сноской (требование ТЗ). */
.mqe-result__disclaimer { font-size: 13px; color: var(--vx-text-soft, #6A6A6A); margin-top: 6px; line-height: 1.55; }
.mqe-result__footnote { font-size: 12px; color: var(--vx-text-2, #9A9A9A); margin-top: 8px; }

.mqe-scn-history-wrap { margin-top: 8px; }
.mqe-scn-history-ttl { font-size: 15px; font-weight: 600; color: var(--vx-text, #0A0A0A); margin-bottom: 12px; }
.mqe-hist { display: flex; flex-direction: column; gap: 10px; }
.mqe-hist-row { background: #fff; border: 1px solid var(--vx-border, #ECECEC); border-radius: 12px; padding: 14px 16px; }
.mqe-hist-row__head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.mqe-hist-row__type { font-size: 13.5px; font-weight: 600; color: var(--vx-text, #0A0A0A); }
.mqe-hist-row__time { font-size: 11.5px; color: var(--vx-text-3, #B0B0B0); white-space: nowrap; }
.mqe-hist-row__input { font-size: 12.5px; color: var(--vx-text-2, #9A9A9A); margin-top: 4px; }
.mqe-hist-row__predicted { font-size: 12.5px; color: var(--vx-text, #0A0A0A); margin-top: 8px; }
.mqe-hist-row__actual { font-size: 12.5px; color: var(--vx-zone-norm, #5F8B6F); font-weight: 600; margin-top: 8px; }
.mqe-hist-row [data-compare] { margin-top: 10px; }

/* ===== 3а) Настроение и выручка (в «Аналитике») ===== */
.mqe-corr { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.mqe-corr__num { font-size: 30px; font-weight: 700; color: var(--vx-text, #0A0A0A); font-variant-numeric: tabular-nums; line-height: 1.1; }
.mqe-corr__label { font-size: 12.5px; color: var(--vx-text-2, #9A9A9A); }
/* Оговорка про совпадение/причину — рядом с числом, обычный размер (не сноска). */
.mqe-corr__text { font-size: 13.5px; color: var(--vx-text-soft, #6A6A6A); line-height: 1.6; margin: 10px 0 4px; }

/* ===== 3б) Связка «Источник выручки» (в «Настройках») ===== */
.mqe-rev-active { display: flex; align-items: center; gap: 8px; font-weight: 500; color: var(--t0, #111827); font-size: 13px; }
.mqe-rev-active input { width: auto; }
.mqe-rev-filebtn { cursor: pointer; }

/* ===== Мобильный вид (390 px) ===== */
@media (max-width: 640px) {
  .mqe-dept-card, .mqe-scn-form { padding: 16px; }
  .mqe-person__head { flex-direction: column; align-items: flex-start; gap: 2px; }
  .mqe-hist-row__head { flex-direction: column; align-items: flex-start; gap: 2px; }
  .mqe-corr { flex-direction: column; align-items: flex-start; gap: 4px; }
}

/* ===== Финальная доводка 390 px (29.09) ===== */
/* Карточка сотрудника: подписи столбиков — полностью, сеткой 4 x 2, с переносом (не обрезкой). */
.emp-pbar__full { display: none; }
@media (max-width: 640px) {
  .emp-card__bars { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px 8px; align-items: start; }
  .emp-card__bars .emp-pbar__short { display: none; }
  .emp-card__bars .emp-pbar__full { display: inline; }
  .emp-card__bars .emp-pbar__lbl { font-size: 10.5px; white-space: normal; overflow-wrap: anywhere; hyphens: auto; }
}

/* Команда: на телефоне фильтры сворачиваются в кнопку «Фильтры (N)». */
.team-filters-toggle { display: none; }
@media (max-width: 640px) {
  .team-filters-toggle { display: inline-flex; margin-bottom: 12px; }
  .team-filters-toggle.is-active { border-color: var(--vx-accent, #5F8B6F); }
  .team-filters { display: none; }
  .team-filters.is-open { display: block; }
  /* код входа не перехватывает нажатие по строке: копировать можно из меню «Коды для входа» */
  .vx-trow2 .vx-codechip { display: none; }
}
