/* Mobile menu improvements using dual-menu system */

@media (max-width: 991px) {
    .mobile-nav-overlay {
        position: absolute;
        top: 100%; /* Position below the navbar */
        left: 0;
        right: 0;
        background-color: inherit; /* Use theme background color */
        z-index: 1000;
        padding: 1rem 0; /* Vertical padding only, horizontal padding is on nav-links */
        border-top: 1px solid rgba(255, 255, 255, 0.1);
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        max-height: calc(100vh - 100px); /* Ensure it fits on screen */
        overflow-y: auto; /* Allow scrolling if content is too long */
    }

    .navbar-toggler {
        z-index: 1001; /* Ensure toggler is above overlay */
    }

    /* Mobile menu items styling - simplified for dual-menu system */
    .navbar-nav .nav-item {
        border-bottom: none !important;
        padding: 0 !important;
    }

    .navbar-nav .nav-item:last-child {
        border-bottom: none !important;
    }

    .navbar-nav .nav-link {
        display: block !important;
        padding: 1rem 1rem !important; /* Increased vertical padding */
        color: #fff !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
    }

    /* Profile dropdown - seamless integration with mobile menu */
    .mobile-dropdown-wrapper .mobile-dropdown-toggle {
        cursor: pointer;
        display: flex !important;
        justify-content: space-between;
        align-items: center;
        padding: 1rem 1rem !important; /* Increased vertical padding */
        color: #fff !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
        text-decoration: none !important;
        width: 100%;
        font-size: inherit;
        margin: 0 !important;
    }
    
    .mobile-dropdown-wrapper .mobile-dropdown-toggle::before,
    .mobile-dropdown-wrapper .mobile-dropdown-toggle::after {
        content: none !important;
    }
    
    .mobile-dropdown-wrapper .mobile-dropdown-toggle i {
        transition: transform 0.3s ease;
    }
    
    .mobile-dropdown-wrapper .mobile-dropdown-toggle.collapsed i {
        transform: rotate(0deg);
    }
    
    .mobile-dropdown-wrapper .mobile-dropdown-toggle:not(.collapsed) i {
        transform: rotate(180deg);
    }
    
    /* Profile submenu styling - individual li items instead of dropdown */
    .profile-menu-item {
        border-bottom: none !important;
        padding: 0 !important;
    }
    
    .profile-menu-item .nav-link {
        display: block !important;
        padding: 1rem 1rem !important; /* Increased vertical padding */
        color: #fff !important;
        font-size: inherit;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
        background-color: transparent !important;
        margin-left: 0;
        width: 100%;
        position: static !important;
        line-height: inherit !important;
    }
    
    .profile-menu-item .nav-link:hover,
    .profile-menu-item .nav-link:focus {
        color: #fff !important;
        background-color: rgba(255, 255, 255, 0.1) !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
    }
    
    /* Ensure the Profile main menu item has proper styling */
    .nav-item .nav-link[onclick*="toggleMobileProfile"] {
        cursor: pointer;
        display: flex !important;
        justify-content: space-between;
        align-items: center;
        padding: 1rem 1rem !important; /* Increased vertical padding */
        color: #fff !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
        text-decoration: none !important;
        width: 100%;
        font-size: inherit;
        margin: 0 !important;
        margin-bottom: 0 !important;
    }
    
    .nav-item .nav-link[onclick*="toggleMobileProfile"] i {
        transition: transform 0.3s ease;
        margin-left: 0.5rem;
    }
    
    /* Remove any double bottom borders */
    .profile-menu-item:last-child .nav-link {
        border-bottom: none !important;
    }
    
    /* Ensure consistent border for all nav items */
    .navbar-nav > .nav-item > .nav-link {
        border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
    }
    
    .navbar-nav > .nav-item:last-child > .nav-link {
        border-bottom: none !important;
    }
}

/* Ensure navbar collapse works properly */
.navbar-collapse.collapse.in {
    display: block !important;
}

/* White hamburger icon for better visibility */
.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.navbar-toggler {
    border-color: rgba(255, 255, 255, 0.5) !important;
}

/* Ensure links are white in mobile menu */
.theme .navbar-nav .nav-link,
.theme .mobile-nav-overlay .navbar-nav .nav-link {
    color: #fff !important;
    font-size: 15px;
    font-weight: bold;
}

/* Enable hover dropdown on desktop */
.hover-dropdown:hover .dropdown-menu {
    display: block;
}

/* Mobile hover dropdown for Bookings */
@media (max-width: 991px) {
    .hover-dropdown {
        position: relative;
    }
    
    .hover-dropdown .dropdown-menu {
        position: static;
        background-color: transparent;
        border: none;
        border-radius: 0;
        padding: 0;
        margin: 0;
        width: 100%;
        box-shadow: none;
        display: none;
    }
    
    /* Show dropdown menu on hover for mobile */
    .hover-dropdown:hover .dropdown-menu,
    .hover-dropdown .dropdown-menu.show-mobile {
        display: block;
    }
    
    .hover-dropdown .dropdown-toggle {
        cursor: pointer;
    }
    
    /* Style dropdown items similar to nav items */
    .hover-dropdown .dropdown-item {
        display: block;
        padding: 0.5rem 1rem !important;
        color: #fff !important;
        font-size: 0.9rem;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        background-color: transparent !important;
    }
    
    .hover-dropdown .dropdown-item:hover,
    .hover-dropdown .dropdown-item:focus,
    .hover-dropdown .dropdown-item:active {
        color: #fff !important;
        background-color: rgba(255, 255, 255, 0.1) !important;
    }
    
    .hover-dropdown .dropdown-item:last-child {
        border-bottom: none;
    }
    
    .hover-dropdown .dropdown-divider {
        border-color: rgba(255, 255, 255, 0.2);
        margin: 0.25rem 0;
    }
}

/* Ensure dropdown menu shows on hover specifically for mobile */
.navbar-nav .hover-dropdown.show-on-mobile:hover .dropdown-menu {
    display: block !important;
}

/* Remove list item markers from desktop menu - Comprehensive overrides */
@media (min-width: 992px) {
    .navbar-nav li.nav-item,
    .navbar-nav .nav-item,
    .navbar-expand-lg .navbar-nav li.nav-item,
    .navbar-expand-lg .navbar-nav .nav-item {
        list-style: none !important;
        list-style-type: none !important;
        list-style-image: none !important;
    }
    
    .navbar-nav li.nav-item::marker,
    .navbar-nav .nav-item::marker,
    .navbar-expand-lg .navbar-nav li.nav-item::marker,
    .navbar-expand-lg .navbar-nav .nav-item::marker {
        display: none !important;
        content: "" !important;
    }
    
    /* Hide all potential marker pseudo-elements */
    .navbar-nav li::before,
    .navbar-nav .nav-item::before,
    .navbar-expand-lg .navbar-nav li::before,
    .navbar-expand-lg .navbar-nav .nav-item::before,
    .navbar-nav li::after,
    .navbar-nav .nav-item::after,
    .navbar-expand-lg .navbar-nav li::after,
    .navbar-expand-lg .navbar-nav .nav-item::after {
        content: none !important;
        display: none !important;
    }
}

/* Additional override for list markers - Global scope */
.navbar-nav li,
.navbar-nav .nav-item,
.navbar-expand-lg .navbar-nav li,
.navbar-expand-lg .navbar-nav .nav-item {
    list-style: none !important;
    list-style-type: none !important;
    list-style-image: none !important;
}

/* Remove all potential bullet points */
ul.navbar-nav,
.navbar-nav ul,
.navbar-expand-lg ul.navbar-nav,
.navbar-expand-lg .navbar-nav ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

li.nav-item,
.navbar-nav li {
    list-style: none !important;
    list-style-type: none !important;
}

/* Hide any remaining markers */
.nav-item::before,
.nav-item::after,
li::before,
li::after {
    content: none !important;
    display: none !important;
}

/* Override any potential theme styles */
.theme .navbar-nav li.nav-item,
.theme .navbar-nav .nav-item {
    list-style: none !important;
    list-style-type: none !important;
}

/* Ultra-specific overrides to eliminate any remaining dots */
html body .navbar .navbar-nav > li.nav-item,
html body .navbar .navbar-nav > .nav-item,
html body .navbar-expand-lg .navbar-nav > li,
html body .navbar-expand-lg .navbar-nav > .nav-item {
    list-style: none !important;
    list-style-type: none !important;
    list-style-image: none !important;
}

/* Remove inherited list styles from all parent elements */
.navbar-nav,
.navbar-nav *,
.navbar-expand-lg .navbar-nav,
.navbar-expand-lg .navbar-nav * {
    list-style: none !important;
    list-style-type: none !important;
}

/* Force removal of any bullet characters */
li.nav-item:before,
.nav-item:before,
li.nav-item::before,
.nav-item::before,
li.nav-item::marker,
.nav-item::marker,
li:before,
li::before,
li::marker {
    display: none !important;
    content: "" !important;
    visibility: hidden !important;
    opacity: 0 !important;
}