/* ADMIN NAV */
.admin-fab {
    position: fixed;
    bottom: 20px;
    left: 20px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #222;
    color: #fff;
    border: none;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    z-index: 1100;
    transition: background 0.2s;
}
.admin-fab:hover, .admin-fab:focus {
    background: #444;
    color: #ffc007;
    outline: none;
}
.admin-mega-menu-container { pointer-events: none;}
.admin-mega-menu-container .admin-fab, .admin-mega-menu { pointer-events: auto; }
.admin-mega-menu {
    animation: slideUp 0.3s ease;
    min-width: 320px;
    max-width: 95vw;
    background-color: #eee !important;
    border: 1px solid #ccc !important;
}
.admin-mega-menu .dropdown-item:hover {
    background-color: #f8f9fa;
    color: #212529;
}

.admin-mega-menu .dropdown-item {
    padding: 0.25rem 1.5rem;
}
@keyframes slideUp {
    from { transform: translateY(100%); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}
@media (max-width: 767px) {
    .admin-mega-menu {
        left: 0 !important;
        right: unset !important;
        top: 0 !important;
        bottom: 0 !important;
        width: 85vw !important;
        min-width: unset !important;
        max-width: unset !important;
        height: 100vh !important;
        border-radius: 0 16px 16px 0 !important;
        box-shadow: 2px 0 16px rgba(0,0,0,0.15);
        padding: 45px 1rem 1rem 1rem !important; /* Increased top padding to show content */
        transform: translateX(-100%);
        transition: transform 0.3s cubic-bezier(.4,0,.2,1);
        display: block !important;
        z-index: 1200;
        overflow-y: auto !important; /* Enable vertical scrolling */
    }
    .admin-mega-menu .admin-menu-content {
        padding-top: 15px; /* Additional padding for menu content */
    }
    .admin-mega-menu[style*="display: none"] {
        transform: translateX(-100%) !important;
        display: none !important;
    }
    .admin-mega-menu[style*="display: block"] {
        transform: translateX(0) !important;
        display: block !important;
    }
    .admin-drawer-close {
        display: block !important;
        position: fixed !important; /* Keep close button in view */
        top: 12px !important;
        right: 18px !important;
        z-index: 1201 !important;
    }
    .admin-mega-menu .row > div { 
        margin-bottom: 1rem; 
    }
    .admin-mega-menu h5 {
        margin-top: 10px; /* Add space before each category heading */
    }
    body.drawer-open {
        overflow: hidden;
    }
}
.admin-drawer-close {
    display: none;
}