/*
 * RolMax Mobile Menu Scroll Fix
 * Se activează numai pe ecrane mobile/tabletă și numai pe panoul identificat
 * de script ca meniu lateral.
 */

:root {
    --rolmax-mobile-bottom-bar-height: 86px;
}

@media (max-width: 1024px) {
    .rolmax-mobile-menu-scroll-panel {
        box-sizing: border-box !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior-y: contain;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-y;
        scroll-padding-bottom: calc(var(--rolmax-mobile-bottom-bar-height) + 28px + env(safe-area-inset-bottom, 0px));
        padding-bottom: calc(var(--rolmax-mobile-bottom-bar-height) + 28px + env(safe-area-inset-bottom, 0px)) !important;
    }

    /* Unele versiuni Elessi/NASA blochează scroll-ul pe un container interior. */
    .rolmax-mobile-menu-scroll-panel .nasa-mobile-nav-wrap,
    .rolmax-mobile-menu-scroll-panel .nasa-mobile-nav,
    .rolmax-mobile-menu-scroll-panel .nasa-mobile-menu,
    .rolmax-mobile-menu-scroll-panel .nasa-menus-account,
    .rolmax-mobile-menu-scroll-panel .nasa-menu-wrapper,
    .rolmax-mobile-menu-scroll-panel .elementskit-navbar-nav,
    .rolmax-mobile-menu-scroll-panel .elementor-nav-menu--dropdown {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    .rolmax-mobile-menu-scroll-panel::-webkit-scrollbar {
        width: 4px;
    }

    .rolmax-mobile-menu-scroll-panel::-webkit-scrollbar-thumb {
        border-radius: 4px;
        background: rgba(44, 55, 74, 0.22);
    }

    /*
     * Elessi poziționează butonul de închidere parțial în afara panoului.
     * După activarea scroll-ului, acea zonă este decupată; îl mutăm complet
     * în interior, fără să-i schimbăm aspectul sau acțiunea.
     */
    .rolmax-mobile-menu-scroll-panel .rolmax-mobile-menu-close-control {
        position: absolute !important;
        top: 12px !important;
        right: 12px !important;
        bottom: auto !important;
        left: auto !important;
        margin: 0 !important;
        transform: none !important;
        z-index: 2147483001 !important;
    }
}
