/*
 * Стили вертикального меню «Правовая информация» в футере (legal_menu).
 * Базовая верстка — утилиты Tailwind CSS в template.php,
 * здесь только поведение: шевроны, анимации раскрытия, фокус.
 * Поддержка темной темы обеспечивается классами dark:* в template.php
 * (переключение класса dark на <html> через toggleDarkMode в footer.php).
 */

/* Плавный поворот шевронов триггеров (мобильная панель и подменю) */
.legal-menu .legal-menu-chevron {
    transition: transform 0.25s ease;
}

/* Шеврон раскрытого триггера поворачивается вверх */
.legal-menu .legal-menu-trigger.is-open .legal-menu-chevron,
.legal-menu button[aria-expanded="true"] .legal-menu-chevron {
    transform: rotate(180deg);
}

/* Плавное изменение цвета ссылок и фона пунктов */
.legal-menu a,
.legal-menu button {
    transition: color 0.2s ease, background-color 0.2s ease;
}

/* Точка-маркер пункта меню */
.legal-menu .legal-menu-dot {
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.legal-menu a:hover .legal-menu-dot,
.legal-menu a:focus-visible .legal-menu-dot {
    transform: scale(1.4);
}

/* Доступная фокусировка с клавиатуры (корпоративный красный ROST) */
.legal-menu a:focus-visible,
.legal-menu button:focus-visible {
    outline: 2px solid #e21a22;
    outline-offset: 2px;
    border-radius: 0.5rem;
}

/* Анимация раскрытия мобильной панели и вложенных подменю */
.legal-menu .legal-menu-panel:not(.hidden),
.legal-menu .legal-menu-sub:not(.hidden) {
    animation: legal-menu-expand 0.25s ease;
}

@keyframes legal-menu-expand {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Уважение к системным настройкам анимации пользователя */
@media (prefers-reduced-motion: reduce) {
    .legal-menu .legal-menu-chevron,
    .legal-menu a,
    .legal-menu button,
    .legal-menu .legal-menu-dot {
        transition: none;
    }

    .legal-menu .legal-menu-panel:not(.hidden),
    .legal-menu .legal-menu-sub:not(.hidden) {
        animation: none;
    }
}
