.app-redesign {
        color: var(--rd-color-ink, #171a18);
        background-color: var(--rd-color-paper, #f7f8f6);
        font-family: var(--rd-font-family, Arial, sans-serif);
        font-size: var(--rd-font-size-md, 1rem);
        line-height: var(--rd-line-height-body, 1.5);
}

.app-redesign *,
.app-redesign *::before,
.app-redesign *::after {
    box-sizing: border-box;
}

.app-redesign :where(button, input, select, textarea) {
    font: inherit;
}

.app-redesign :where(a) {
    color: inherit;
}

.app-redesign :focus-visible {
    outline: var(--rd-focus-size, 0.125rem) solid var(--rd-color-focus, #327a39);
    outline-offset: var(--rd-focus-offset, 0.1875rem);
}

.app-redesign :where(img, svg) {
    max-width: 100%;
}

/* ===== 8.4 (post-SOL): skip-link (WCAG 2.4.1) ===== */
.app-redesign .rd-skip-link {
    position: absolute;
    left: 0.75rem;
    top: -4rem;
    z-index: 100;
    padding: 0.6rem 1rem;
    color: #ffffff;
    background: #101413;
    border-radius: 0 0 0.5rem 0.5rem;
    font-size: 0.95rem;
    text-decoration: none;
}

.app-redesign .rd-skip-link:focus {
    top: 0;
    outline: 2px solid #ffffff;
    outline-offset: -4px;
}

/* ===== 8.5 (post-SOL, ред-2): micro-reboot для lean-оболочки =====
   Мигрированные маршруты не грузят bootstrap5, чей Reboot неявно нормализовал базу.
   Минимальная замена — строго под html.rd-lean, чтобы legacy-страницы (bootstrap4/5)
   остались байт в байт прежними. */

html.rd-lean body { margin: 0; }

html.rd-lean h1, html.rd-lean h2, html.rd-lean h3,
html.rd-lean h4, html.rd-lean h5, html.rd-lean h6 {
    margin: 0 0 0.5rem;
    font-weight: 500;
    line-height: 1.2;
}

html.rd-lean p { margin-top: 0; margin-bottom: 1rem; }
html.rd-lean ul, html.rd-lean ol { margin-top: 0; margin-bottom: 1rem; }

html.rd-lean button, html.rd-lean input, html.rd-lean select, html.rd-lean textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

html.rd-lean img, html.rd-lean svg { vertical-align: middle; }

/* UA [hidden] проигрывает display-классам карточек/форм (0,2,0); bootstrap Reboot
   прикрывал это !important-правилом. Здесь специфичность (0,2,1) перебивает их без
   !important: чип-фильтры (card.hidden) и редактор диапазона работают как на baseline. */
html.rd-lean [hidden] { display: none; }
