/* ==========================================================================
   DS2026 — Сложные компоненты (интерактивные состояния)

   Файл для составных/интерактивных компонентов, которые не входят в base.css.
   Подключается после base.css.
   ========================================================================== */

/* --- Steps: переключение шагов «Как подключить» (логика — из блока EPD) --- */
.steps__item {
    border: 0;
    background: none;
    cursor: pointer;
    font: inherit;
    color: inherit;
}
.steps__panel { display: none; }
.steps__panel_active {
    display: flex;
    animation: steps_pane_in .3s ease;
}
@keyframes steps_pane_in {
    from { opacity: 0; }
    to   { opacity: 1; }
}
/* Пройденный шаг: номер и коннектор — акцентный цвет */
.steps__item_done .steps__num {
    background-color: var(--uni-colors-blue-blue-2);
    color: var(--uni-colors-white-white-100);
}
.steps__line_done {
    background-color: var(--uni-colors-blue-blue-2);
}
/* Активный коннектор заполняется по --steps-progress (0..100%), дефолт — 15px из base */
.steps__line_active::before {
    width: var(--steps-progress, 15px);
}
@media (prefers-reduced-motion: reduce) {
    .steps__panel_active { animation: none; }
}

/* --- Quiz: шаги вопросов и экран результатов (логика — из EPD/quiz5) --- */
.quiz__step { display: none; }
.quiz__step_active {
    display: flex;
    flex-direction: column;
    gap: var(--space16);
    animation: quiz_step_in .3s ease;
}
@keyframes quiz_step_in {
    from { opacity: 0; }
    to   { opacity: 1; }
}
/* Невалидный шаг: подсветка контрола в вариантах */
.quiz__option.form_error .form_radio_control,
.quiz__option.form_error .form_checkbox_control {
    border-color: var(--input-stroke-error);
}
/* Навигация: скрытые кнопки (у .button display:inline-flex перебивает [hidden]) */
.quiz__nav [hidden] { display: none; }

/* Экран результатов */
.quiz__results[hidden],
.quiz__result[hidden] { display: none; }
.quiz__results {
    display: flex;
    flex-direction: column;
    gap: var(--space24);
}
.quiz__result {
    display: flex;
    flex-direction: column;
    gap: var(--space16);
}
.quiz__result_head {
    display: flex;
    align-items: center;
    gap: var(--space16);
}
/* Иконка вердикта: 40×40, radius 12 (Figma var(--3,12px) — фикс.) */
.quiz__result_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background-color: var(--bg-colors-blue-blue-7);
    color: var(--uni-colors-blue-blue-2);
}
.quiz__result_icon > svg {
    width: 26.667px;
    height: 26.667px;
}
.quiz__result_title {
    flex: 1 1 auto;
    min-width: 0;
    font-family: var(--font-google-sans);
    font-size: var(--font-h3);
    line-height: var(--lh-h3);
    font-weight: var(--fw-semibold);
    color: var(--text-colors-titles);
}
/* Блок текста вердикта: bg blue-7, radius 24 (Figma var(--5,24px) — фикс.) */
.quiz__result_box {
    display: flex;
    flex-direction: column;
    gap: var(--space12);
    padding: var(--space24);
    border-radius: 24px;
    background-color: var(--bg-colors-blue-blue-7);
    font-family: var(--font-google-sans);
    font-size: var(--font-body-normal);
    line-height: var(--lh-body);
    color: var(--text-colors-titles);
}
.quiz__result_box p { margin: 0; }
.quiz__result_box b,
.quiz__result_box strong { font-weight: var(--fw-bold); }

@media (prefers-reduced-motion: reduce) {
    .quiz__step_active { animation: none; }
}
