/* Menu Bullet List Fixes */

/* Remove all default list styling from menu */
#layout-menu,
#layout-menu *,
#layout-menu ul,
#layout-menu ul li,
#layout-menu ol,
#layout-menu ol li {
    list-style: none !important;
    list-style-type: none !important;
    list-style-image: none !important;
    list-style-position: outside !important;
}

/* Remove pseudo-elements that might create bullets */
#layout-menu ul li::before,
#layout-menu ul li::after,
#layout-menu ol li::before,
#layout-menu ol li::after,
#layout-menu .menu-item::before,
#layout-menu .menu-item::after,
#layout-menu .menu-inner li::before,
#layout-menu .menu-inner li::after,
#layout-menu .menu-sub li::before,
#layout-menu .menu-sub li::after {
    display: none !important;
    content: none !important;
    visibility: hidden !important;
}

/* Ensure menu containers have no list styling */
.menu,
.menu-vertical,
.menu-inner,
.menu-sub,
.menu-item,
.menu-header,
.menu-divider {
    list-style: none !important;
    list-style-type: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Fix for nested lists */
.menu-inner ul,
.menu-inner ul li,
.menu-sub ul,
.menu-sub ul li {
    list-style: none !important;
    list-style-type: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Override any inherited list styles */
.layout-menu ul,
.layout-menu ul li,
.layout-menu ol,
.layout-menu ol li {
    list-style: none !important;
    list-style-type: none !important;
}

/* Specific fixes for menu items */
.menu-item {
    position: relative;
}

.menu-item::marker {
    display: none !important;
    content: none !important;
}

/* Fix for any remaining bullet points in sub-menus */
.menu-sub .menu-item {
    list-style: none !important;
    list-style-type: none !important;
}

.menu-sub .menu-item::before,
.menu-sub .menu-item::after {
    display: none !important;
    content: none !important;
}

/* Ensure no default browser styling */
.menu-vertical ul {
    -webkit-padding-start: 0 !important;
    -moz-padding-start: 0 !important;
    padding-inline-start: 0 !important;
    -webkit-margin-before: 0 !important;
    -webkit-margin-after: 0 !important;
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}

/* Fix for RTL languages */
[dir="rtl"] .menu-vertical ul {
    -webkit-padding-end: 0 !important;
    -moz-padding-end: 0 !important;
    padding-inline-end: 0 !important;
}

/* Additional specificity for stubborn browsers */
body .layout-menu ul li,
body .layout-menu .menu-inner li,
body .layout-menu .menu-sub li {
    list-style: none !important;
    list-style-type: none !important;
}

/* Fix for any CSS frameworks that might add list styles */
.bootstrap .menu-vertical ul li,
.bootstrap .menu-inner li,
.bootstrap .menu-sub li {
    list-style: none !important;
    list-style-type: none !important;
}

/* Ensure menu links don't have list styling */
.menu-link {
    list-style: none !important;
    list-style-type: none !important;
}

.menu-link::before,
.menu-link::after {
    display: none !important;
    content: none !important;
}
