.etc-vertical-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

/* Liens principaux */
.etc-vertical-menu>li {
    position: relative;
}

.etc-vertical-menu>li>a {
    display: block;
    padding: 5px 0px;
    text-decoration: none;
    color: inherit;
    border-radius: 6px;
    transition: background-color 0.2s, color 0.2s;
}


/* Flèche sur les items avec sous-menu */
.etc-vertical-menu>li.menu-item-has-children>a {
    position: relative;
}

.etc-vertical-menu>li.menu-item-has-children>a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0.6em;
    width: 1em;
    height: 1em;
    transform: translateY(-50%) rotate(0deg);
    transition: transform 0.2s ease;
    background-color: currentColor;
    /* prend la couleur du texte */
    mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") no-repeat center / contain;
    -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") no-repeat center / contain;
}

/* Flèche tournée quand ouvert */
.etc-vertical-menu>li.open>a::after {
    transform: translateY(-50%) rotate(180deg);
}

/* Sous-menus */
.etc-vertical-menu .sub-menu {
    list-style: none;
    padding: 0 0 0 20px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;

    border-left: 1px solid;
    margin: 5px 0 0 4px;
    padding: 0;
    border-color: #e2e8f0;
}

/* Afficher le sous-menu quand .open est présent */
.etc-vertical-menu>li.open>.sub-menu {
    max-height: 500px;
    /* grande valeur pour permettre l’expansion */
    opacity: 1;
    visibility: visible;

}

.etc-vertical-menu .sub-menu li a {
    display: block;
    padding: 8px 14px;
    text-decoration: none;
    border-radius: 4px;
    transition: background-color 0.2s, color 0.2s;
}

.etc-vertical-menu .sub-menu li a span {
    display: none;
}