/* DEV77: только компонент стола. Подключение и перенос в kit — интегратор. */
.stepper.stepper--status { flex-wrap: nowrap; gap: var(--space-1); padding: var(--space-2); overflow-x: auto; max-width: 100%; align-items: stretch; }
.stepper--status .stepper__step { flex: 0 1 auto; min-width: 0; min-height: var(--space-8); gap: var(--space-2); padding: var(--space-2); cursor: pointer; color: var(--text-strong); }
.stepper--status .stepper__label { position: static; clip-path: none; width: auto; height: auto; margin: 0; overflow: visible; white-space: normal; overflow-wrap: normal; font-size: var(--fs-caption); }
.stepper--status .stepper__num { width: var(--space-7); height: var(--space-7); flex-basis: var(--space-7); }
.stepper--status .stepper__sep { align-self: center; flex: 1 1 var(--space-4); min-width: var(--space-2); }
/* Расстояние «конец подписи шага → кружок следующего» одинаковое у всех шагов
   (замечание владельца продукта, 28-10, пятый раз): шаг шириной по своему
   содержимому, свободное место делят поровну разделители. Раньше шаги были
   равными колонками (flex 1 1 0) — равными выходили промежутки между КРУЖКАМИ,
   а после короткой подписи («Аналоги») оставалась дыра, после длинной — впритык. */
.stepper--status .is-warn .stepper__num { background: var(--wn-bg); color: var(--alert-text); border-color: var(--wn-br); }
.stepper--status .is-blocked .stepper__num { background: var(--surface-sunken); color: var(--text-strong); }
.stepper--status .is-na .stepper__num { border-style: dashed; }
.stepper--status .stepper__step.is-active .stepper__num { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
.stepper--status .stepper__step:focus-visible { outline: var(--space-1) solid var(--text-strong); outline-offset: var(--space-1); box-shadow: var(--ring); }
.desk-stepper-kicker.order-step-kicker { display: none; font-size: var(--fs-caption); line-height: var(--lh-normal); font-weight: var(--fw-medium); text-transform: none; letter-spacing: var(--ls-normal); margin-bottom: var(--space-4); }
.desk-step-card, .desk-step-summary { padding: var(--space-5); margin-bottom: var(--space-5); min-width: 0; }
.desk-step-card h2, .desk-step-summary h2 { margin: 0 0 var(--space-3); font-size: var(--fs-h3); }
.desk-step-card p { margin: var(--space-2) 0; }
.desk-step-card__hint, .desk-step-card__severity { color: var(--text-muted); }
.desk-step-card__reasons { list-style: none; padding: 0; margin: var(--space-4) 0 0; }
.desk-step-card__reason { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-4); padding: var(--space-4) 0; border-top: 1px solid var(--border); overflow-wrap: anywhere; }
.desk-step-card__reason > div { min-width: 0; flex: 1; }
.desk-step-card__reason > .btn { flex: 0 0 auto; }
.desk-step-card__reason details { margin-top: var(--space-3); }
.desk-step-card__reason summary { cursor: pointer; }
.desk-step-card__facts { margin: var(--space-4) 0; }
.desk-step-card__severity, .desk-step-summary__status { font-size: var(--fs-caption); }
/* Пометка «Нужно исправить / Обратите внимание» — своей строкой под заголовком
   причины: инлайном она слипалась с ним («…(нужно не меньше 3)Нужно
   исправить», приёмка b203, D6). */
.desk-step-card__severity { display: block; margin-top: var(--space-1); }
/* Спиннер ожидания — элемент flex-строки: голый inline-span не берёт размеры
   и рисовался пустой полоской рядом с «Ожидаем завершения» (D6). */
.desk-step-card__waiting { margin: var(--space-2) 0; }
.desk-step-summary ol { padding-left: var(--space-5); margin: 0; }
.desk-step-summary li { padding: var(--space-2) 0; }
.desk-step-summary__status { display: block; color: var(--text-muted); }
.desk-stepper-unknown { display: flex; gap: var(--space-3); align-items: center; flex-wrap: wrap; }
@media (max-width: 800px) {
 .stepper--status .stepper__step { flex: 0 0 var(--space-8); padding: var(--space-1); justify-content: center; }
 .stepper--status .stepper__step .stepper__label { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; clip-path: inset(50%); overflow: hidden; white-space: nowrap; }
 .desk-stepper-kicker.order-step-kicker { display: block; }
 .desk-step-card, .desk-step-summary { padding: var(--space-4); }
 .desk-step-card__reason { flex-wrap: wrap; }
 .desk-step-card__reason > .btn { max-width: 100%; }
}

.desk-step-card__overview { font-weight: var(--fw-medium); }
.desk-step-card__more { margin-top: var(--space-4); }
.desk-step-card__more > summary { cursor: pointer; }
