/* Stronger, parent-level overflow guards */
.kt-sidebar-content, .kt-sidebar, #kt_app_sidebar {
    overflow-x: hidden !important;
}
/* Ensure all descendants of the menu respect the box model and can shrink */
#sidebar_menu, #sidebar_menu *, #sidebar_menu *::before, #sidebar_menu *::after {
    box-sizing: border-box !important;
    min-width: 0 !important;
}
    /* Prevent any horizontal growth on items/links */
    #sidebar_menu .kt-menu-item, #sidebar_menu .kt-menu-link, #sidebar_menu .kt-menu-accordion {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }
    /* Keep arrow visible and push it to the end */
    #sidebar_menu .kt-menu-link {
        justify-content: space-between !important;
    }

    #sidebar_menu .kt-menu-arrow {
        margin-left: auto !important;
    }
    /* Ellipsis that always shrinks inside flex */
    #sidebar_menu .kt-menu-title {
        display: block !important;
        flex: 11 auto !important; /* allow shrink and growth */
        width: 0 !important; /* let flexbox shrink text container */
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    #sidebar_menu .kt-menu-arrow, #sidebar_menu .kt-menu-icon, #sidebar_menu .kt-menu-bullet {
        flex-shrink: 0 !important;
    }
