/**
 * Menus accordéon dans la barre de navigation.
 * Les sous-menus s'affichent en catégories repliées ; l'utilisateur peut déplier
 * uniquement la catégorie qui l'intéresse.
 */

/* Limiter la hauteur des dropdowns et activer le scroll */
.navbar .dropdown-menu.dropdown-menu-accordion {
    max-height: 70vh;
    overflow-y: auto;
    min-width: 280px;
    padding: 0;
}

/* Accordion intégré dans le dropdown - style compact */
.navbar .dropdown-menu-accordion .accordion {
    --bs-accordion-border-width: 0;
    --bs-accordion-btn-focus-box-shadow: none;
}

.navbar .dropdown-menu-accordion .accordion-item {
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.navbar .dropdown-menu-accordion .accordion-item:last-child {
    border-bottom: none;
}

/* Bouton d'en-tête accordion - style dropdown header */
.navbar .dropdown-menu-accordion .accordion-button {
    padding: 0.6rem 1rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: #6c757d;
    background-color: transparent;
    border: none;
    box-shadow: none;
}

.navbar .dropdown-menu-accordion .accordion-button:not(.collapsed) {
    background-color: rgba(0, 0, 0, 0.05);
    color: #212529;
}

.navbar .dropdown-menu-accordion .accordion-button::after {
    width: 0.6rem;
    height: 0.6rem;
}

.navbar .dropdown-menu-accordion .accordion-button:focus {
    box-shadow: none;
}

/* Corps de l'accordion - liens en format dropdown-item */
.navbar .dropdown-menu-accordion .accordion-body {
    padding: 0;
}

.navbar .dropdown-menu-accordion .accordion-body .dropdown-item {
    padding-left: 1.5rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    border-radius: 0;
    font-size: 0.95rem;
}

.navbar .dropdown-menu-accordion .accordion-body .dropdown-item:hover {
    background-color: rgba(0, 0, 0, 0.08);
}

/* --- Mode sombre : accordéons et sous-menus --- */
[data-theme="noir"] .navbar .dropdown-menu.dropdown-menu-accordion {
    background-color: var(--card-bg-dark) !important;
    border-color: var(--border-dark) !important;
}

[data-theme="noir"] .navbar .dropdown-menu-accordion .accordion-item {
    background-color: transparent !important;
    border-bottom-color: var(--border-dark) !important;
}

[data-theme="noir"] .navbar .dropdown-menu-accordion .accordion-body,
[data-theme="noir"] .navbar .dropdown-menu-accordion .accordion-collapse {
    background-color: transparent !important;
}

[data-theme="noir"] .navbar .dropdown-menu-accordion .accordion-button {
    color: #b0b0b0 !important;
    background-color: transparent !important;
}

[data-theme="noir"] .navbar .dropdown-menu-accordion .accordion-button:not(.collapsed) {
    background-color: rgba(255, 255, 255, 0.08) !important;
    color: var(--text-dark) !important;
}

[data-theme="noir"] .navbar .dropdown-menu-accordion .accordion-button::after {
    filter: invert(1);
}

[data-theme="noir"] .navbar .dropdown-menu-accordion .accordion-body .dropdown-item {
    color: var(--text-dark) !important;
}

[data-theme="noir"] .navbar .dropdown-menu-accordion .accordion-body .dropdown-item:hover,
[data-theme="noir"] .navbar .dropdown-menu-accordion .accordion-body .dropdown-item:focus {
    background-color: #2a2a2a !important;
    color: var(--text-dark) !important;
}
