/* ============================================================
   SWIMIT SIDEBAR CATALOGUE
   Spécificité via nav.swimit-sidebar pour primer sur Konte
   Espacement via gap (un seul endroit à régler)
   ============================================================ */

nav.swimit-sidebar {
    --mm-font-nav:   var(--e-global-typography-47a5208-font-family, "National2", sans-serif);
    --mm-font-body:  "function_pro", sans-serif;
    --mm-color-text: var(--e-global-color-text, #000000);
    --mm-color-border: #EBEBEB;
    --sidebar-gap: 0px; /* un seul endroit pour régler l'espacement vertical */
    width: 100%;
    box-sizing: border-box;
}

nav.swimit-sidebar ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--sidebar-gap);
}

nav.swimit-sidebar li {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: left;
    border-bottom: 1px solid var(--mm-color-border);
}

nav.swimit-sidebar li::before,
nav.swimit-sidebar li::marker {
    content: none;
    display: none;
}

nav.swimit-sidebar li.swimit-sidebar__item--depth-0:last-child {
    border-bottom: none;
}

/* Ligne cliquable : lien + bouton toggle */
nav.swimit-sidebar .swimit-sidebar__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    padding: 14px 0;
    border-bottom: 1px solid rgba(122, 131, 142, 0.24);
}

/* Lien (icône + label) */
nav.swimit-sidebar a.swimit-sidebar__link {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
    min-width: 0;
    text-decoration: none;
    color: var(--mm-color-text);
    background: none;
    border: none;
    border-radius: 0;
}

/* Icône — niveau 0 uniquement */
nav.swimit-sidebar .swimit-sidebar__icon {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

nav.swimit-sidebar .swimit-sidebar__icon img {
    width: 100%;
    height: 100%;
    max-width: 32px;
    max-height: 32px;
    object-fit: contain;
}

/* Label niveau 0 — National2, uppercase, bold */
nav.swimit-sidebar .swimit-sidebar__label {
    font-family: var(--mm-font-nav);
    font-size: 1.1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.2px;
    line-height: 1.3;
}

/* Label niveaux 1+ — function_pro, normal case, regular */
nav.swimit-sidebar li.swimit-sidebar__item--depth-1 .swimit-sidebar__label,
nav.swimit-sidebar li.swimit-sidebar__item--depth-2 .swimit-sidebar__label,
nav.swimit-sidebar li.swimit-sidebar__item--depth-3 .swimit-sidebar__label {
    font-family: var(--mm-font-body);
    font-size: 0.95rem;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
    color: #555555;
}

/* Indentation par profondeur */
nav.swimit-sidebar li.swimit-sidebar__item--depth-1 > .swimit-sidebar__row {
    padding-left: 20px;
}

nav.swimit-sidebar li.swimit-sidebar__item--depth-2 > .swimit-sidebar__row {
    padding-left: 40px;
}

nav.swimit-sidebar li.swimit-sidebar__item--depth-3 > .swimit-sidebar__row {
    padding-left: 60px;
}

/* Bouton toggle (chevron) */
nav.swimit-sidebar button.swimit-sidebar__toggle {
    flex-shrink: 0;
    width: auto;
    height: auto;
    background: none;
    border: none;
    border-radius: 0;
    padding: 8px;
    margin: 0;
    cursor: pointer;
    color: var(--mm-color-text);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.25s ease;
    box-shadow: none;
    min-width: 0;
    line-height: 1;
    color: rgba(122, 131, 142, 0.7);
    border: 1px solid rgba(122, 131, 142, 0.2);
	padding: 4px;
	border-radius: 100px;
}

nav.swimit-sidebar button.swimit-sidebar__toggle svg {
    width: 14px;
    height: 14px;
    display: block;
}

nav.swimit-sidebar li.is-open > .swimit-sidebar__row > button.swimit-sidebar__toggle {
    transform: rotate(180deg);
}

/* Sous-liste : repliée par défaut */
nav.swimit-sidebar ul.swimit-sidebar__sublist {
    display: none;
}

nav.swimit-sidebar li.is-open > ul.swimit-sidebar__sublist {
    display: flex;
    flex-direction: column;
    gap: var(--sidebar-gap);
}

/* Item bientôt */
nav.swimit-sidebar li.swimit-sidebar__item--bientot > .swimit-sidebar__row > a {
    opacity: 0.45;
    pointer-events: none;
}

/* Badge bientôt */
nav.swimit-sidebar .mm-badge-bientot {
    display: inline-block;
    font-size: 0.6rem;
    font-family: National2;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    background: #ffffff;
    color: #858585;
    border: 1px solid #858585;
    padding: 2px 5px;
    border-radius: 4px;
    margin-left: 5px;
    vertical-align: middle;
}

/* Masquer sur mobile et tablette portrait */
@media (max-width: 990px) {
    nav.swimit-sidebar {
        display: none;
    }
}