/**
 * SIDE NAVIGATION
 * Supporta sia vertical che horizontal tramite modifier class
 */
/* ============================================
       BASE STYLES - Common to all layouts
       ============================================ */
.rtds-side-navigation__title {
    gap: var(--spacing-3);
    font-size: var(--fontsize-text-base);
        color: var(--color-content-03);
    display: grid;
    font-weight: 700;
}
.rtds-side-navigation__label-context {
    font-family: var(--fontfamily-sans), sans-serif;
    font-size: var(--fontsize-text-lg);
    font-weight: 700;
}
@media (min-width: 1024px) {
    .rtds-side-navigation__label-context {
        font-size: var(--fontsize-text-xl);
    }
}
@media (min-width: 1280px) {
    .rtds-side-navigation__label-context {
        font-size: var(--fontsize-text-xl);
    }
}
@media (min-width: 1536px) {
    .rtds-side-navigation__label-context {
        font-size: var(--fontsize-text-xl);
    }
}
.rtds-side-navigation__label-context {
    display: block;
        color: var(--color-content-01);
    font-family: var(--fontfamily-sans), sans-serif;
    font-size: var(--fontsize-text-lg);
    font-weight: 700;
}
@media (min-width: 1024px) {
    .rtds-side-navigation__label-context {
        font-size: var(--fontsize-text-xl);
    }
}
@media (min-width: 1280px) {
    .rtds-side-navigation__label-context {
        font-size: var(--fontsize-text-xl);
    }
}
@media (min-width: 1536px) {
    .rtds-side-navigation__label-context {
        font-size: var(--fontsize-text-xl);
    }
}
@media (min-width: 768px) {
    .rtds-side-navigation__label-context {
        font-size: var(--fontsize-text-xl);
    }
}
@media (min-width: 1024px) {
    .rtds-side-navigation__label-context {
        font-size: var(--fontsize-text-2xl);
    }
}
.rtds-side-navigation__item {
    flex-wrap: wrap;
    align-items: stretch;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    font-size: var(--fontsize-text-base);
        color: var(--color-content-03);
    display: flex;
}
.rtds-side-navigation__first-level-label {
    flex: 1 1 0%;
    display: flex;
    font-weight: 700;
}
.rtds-side-navigation__link {
    flex: 1 1 0%;
    border-color: transparent;
    padding: var(--spacing-4);
    color: currentColor;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
    display: flex;
    align-items: center;
    gap: var(--spacing-2);
}
.rtds-side-navigation__link:hover {
    text-decoration-line: underline;
        color: var(--color-content-primary);
}
.rtds-side-navigation__label {
    display: inline-block;
}
.rtds-side-navigation__link:where(.is-current) {
    border-color: currentColor;
        color: var(--color-content-primary);
}
:where(.rtds-side-navigation__link.is-current) .rtds-side-navigation__label {
    border-bottom-width: 2px;
    border-color: currentColor;
    padding-bottom: var(--spacing-1);
}
.rtds-side-navigation__nav-toggle {
    width: var(--spacing-8);
    display: flex;
    justify-content: center;
    align-items: center;
}
.rtds-side-navigation__nav-toggle:hover {
        color: var(--color-content-primary);
    }
/* MOBILE */
.rtds-side-navigation__list-toggle {
    width: 100%;
    align-items: flex-end;
    justify-content: space-between;
    border-radius: 0px;
    border-top-width: 0px;
    border-left-width: 0px;
    border-right-width: 0px;
    border-bottom-width: 1px;
    padding-left: var(--spacing-0);
    font-size: var(--fontsize-text-sm);
    font-weight: 500;
        color: var(--color-content-03);
        border-color: var(--color-border-gray-01);
}
.rtds-side-navigation__list-toggle:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        border-color: var(--color-border-gray-02);
}
.rtds-side-navigation__list-toggle:focus {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
@media (min-width: 768px) {
    .rtds-side-navigation__list-toggle {
        font-size: var(--fontsize-text-base);
    }
}
.rtds-side-navigation__list-toggle:where([aria-expanded="false"]) .rtds-icon {
    --tw-rotate: -180deg;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rtds-side-navigation__list-toggle:where([aria-expanded="false"]) ~ .rtds-side-navigation__list {
    display: none;
}
@media (min-width: 768px) {
    .rtds-side-navigation__list-toggle:where([aria-expanded="false"]) ~ .rtds-side-navigation__list {
        display: block;
    }
}
/* sub-navigation */
.rtds-side-navigation__submenu {
    padding-left: var(--spacing-4);
}
/* ============================================
       HORIZONTAL MODIFIER - Layout orizzontale da MD
       ============================================ */
.rtds-side-navigation--horizontal {
        @media (min-width: 768px) {
            /* Title nascosto per horizontal */
            .rtds-side-navigation__title {
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border-width: 0;
        }

    
    .rtds-article-body  .rtds-side-navigation__title + * {
            margin-top: var(--spacing-0);
        }
.rtds-side-navigation__title {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

            /* Lista: flex horizontal */
            .rtds-side-navigation__list {
            display: flex;
        }
            .rtds-side-navigation__list {
            flex-wrap: wrap;
        }
            .rtds-side-navigation__list {
            gap: var(--spacing-0);
        }
            .rtds-side-navigation__list {
            border-top-width: 0px;
        }
            .rtds-side-navigation__list {
            padding-top: var(--spacing-4);
            padding-bottom: var(--spacing-4);
        }
.rtds-side-navigation__list {
    display: flex;
}

            /* Items: no wrap, posizione relativa */
            .rtds-side-navigation__item {
            position: relative;
        }
            .rtds-side-navigation__item {
            flex-wrap: nowrap;
        }

            /* First level label: inline con toggle */
            .rtds-side-navigation__first-level-label {
            display: flex;
        }
            .rtds-side-navigation__first-level-label {
            align-items: center;
        }
.rtds-side-navigation__first-level-label {
    display: flex;
}
.rtds-side-navigation__first-level-label {
    align-items: center;
}

            /* Link: padding ridotto, border-bottom, no underline */
            .rtds-side-navigation__link {
            margin-left: var(--spacing-4);
            margin-right: var(--spacing-4);
        }
            .rtds-side-navigation__link {
            border-bottom-width: 2px;
        }
            .rtds-side-navigation__link {
            border-color: transparent;
        }
            .rtds-side-navigation__link {
            padding-left: var(--spacing-2);
            padding-right: var(--spacing-2);
        }
            .rtds-side-navigation__link {
            padding-top: var(--spacing-0);
            padding-bottom: var(--spacing-0);
        }
            .rtds-side-navigation__link {
            font-size: var(--fontsize-text-sm);
        }
            .rtds-side-navigation__link {
            font-weight: 600;
        }
            .rtds-side-navigation__link:hover {
            text-decoration-line: none;
        }

    .rtds-side-navigation__link:hover {
        border-color: var(--color-border-primary);
    }
            @media (min-width: 768px) {
            .rtds-side-navigation__link {
                font-size: var(--fontsize-text-base);
            }
        }

    .rtds-side-navigation__link:where(.is-current) {
        color: var(--color-content-primary);
    }

    .rtds-side-navigation__link:where(.is-current) {
        border-color: var(--color-border-primary);
    }

            :where(.rtds-side-navigation__link.is-current) .rtds-side-navigation__label {
            border-bottom-width: 0px;
        }

            :where(.rtds-side-navigation__link.is-current) .rtds-side-navigation__label {
            padding-bottom: var(--spacing-0);
        }

            /* Toggle button per horizontal */
            .rtds-side-navigation__nav-toggle {
            width: auto;
        }
            .rtds-side-navigation__nav-toggle {
            padding-left: var(--spacing-2);
            padding-right: var(--spacing-2);
        }
            .rtds-side-navigation__nav-toggle {
            padding-top: var(--spacing-2);
            padding-bottom: var(--spacing-2);
        }

            /* Submenu: dropdown assoluto */
            .rtds-side-navigation__submenu {
            position: absolute;
        }
            .rtds-side-navigation__submenu {
            top: 100%;
        }
            .rtds-side-navigation__submenu {
            left: var(--spacing-0);
        }
            .rtds-side-navigation__submenu {
            z-index: 10;
        }
            .rtds-side-navigation__submenu {
            min-width: 200px;
        }
            .rtds-side-navigation__submenu {
            border-width: 1px;
        }
            .rtds-side-navigation__submenu {
            --tw-bg-opacity: 1;
            background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        }
            .rtds-side-navigation__submenu {
            padding-left: var(--spacing-0);
        }
            .rtds-side-navigation__submenu {
            --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
            --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
        }
    .rtds-side-navigation__submenu {
        border-color: var(--color-border-gray-01);
    }
.rtds-side-navigation__submenu {
    border-width: 1px;
}

            /* Submenu items */
            .rtds-side-navigation__submenu .rtds-side-navigation__item {
            width: 100%;
        }
            .rtds-side-navigation__submenu .rtds-side-navigation__item {
            flex-wrap: wrap;
        }

            /* Submenu links con hover background */
            .rtds-side-navigation__submenu .rtds-side-navigation__link {
            margin-left: var(--spacing-0);
            margin-right: var(--spacing-0);
        }
            .rtds-side-navigation__submenu .rtds-side-navigation__link {
            border-bottom-width: 0px;
        }
            .rtds-side-navigation__submenu .rtds-side-navigation__link {
            padding-left: var(--spacing-6);
            padding-right: var(--spacing-6);
        }
            .rtds-side-navigation__submenu .rtds-side-navigation__link {
            padding-top: var(--spacing-3);
            padding-bottom: var(--spacing-3);
        }
            .rtds-side-navigation__submenu .rtds-side-navigation__link {
            font-size: var(--fontsize-text-sm);
        }
.rtds-side-navigation__submenu .rtds-side-navigation__link {
    padding-top: var(--spacing-3);
    padding-bottom: var(--spacing-3);
}
            .rtds-side-navigation__submenu .rtds-side-navigation__link:hover {
            border-color: transparent;
        }
    .rtds-side-navigation__submenu .rtds-side-navigation__link:hover {
        background-color: var(--color-background-01);
    }

            /* Submenu link corrente con background */
            .rtds-side-navigation__submenu .rtds-side-navigation__link:where(.is-current) {
            border-color: transparent;
        }
            .rtds-side-navigation__submenu .rtds-side-navigation__link:where(.is-current) {
            font-weight: 500;
        }

    .rtds-side-navigation__submenu .rtds-side-navigation__link:where(.is-current) {
        background-color: var(--color-background-02);
    }

            .rtds-side-navigation__submenu .rtds-side-navigation__link:where(.is-current) .rtds-side-navigation__label {
            border-bottom-width: 0px;
        }
        }
    }
/* ============================================
       ANCHOR NAVIGATION
       ============================================ */
.rtds-side-navigation--anchor {
    scroll-margin: var(--header-height);
}
@media (min-width: 768px) {
    .rtds-side-navigation--anchor {
        scroll-margin: var(--spacing-0);
    }
}
:where(.rtds-side-navigation--anchor) .rtds-side-navigation__link {
    border-bottom-width: 0px;
    border-left-width: 4px;
}
:where(.rtds-side-navigation--anchor .rtds-side-navigation__link.is-current) .rtds-side-navigation__label {
    border-bottom-width: 0px;
    padding-bottom: var(--spacing-0);
}
/* Anchor + horizontal: usa border-bottom */
.rtds-side-navigation--anchor.rtds-side-navigation--horizontal {
        @media (min-width: 768px) {
            :where(.rtds-side-navigation__link) {
            border-left-width: 0px;
        }
            :where(.rtds-side-navigation__link) {
            border-bottom-width: 2px;
        }
        }
    }
