/* OVIAPro Mobile Menu Toggle Fix
   Scope: mobile menu CSS only. No business logic changes. */

@media (max-width: 768px) {
    body.ovia-menu-open {
        overflow: hidden !important;
    }

    /* Default closed state on mobile */
    .sidebar,
    .admin-sidebar,
    .side-nav,
    aside.sidebar,
    aside.admin-sidebar {
        display: none !important;
    }

    /* Open state */
    body.ovia-menu-open .sidebar,
    body.ovia-menu-open .admin-sidebar,
    body.ovia-menu-open .side-nav,
    body.ovia-menu-open aside.sidebar,
    body.ovia-menu-open aside.admin-sidebar,
    .sidebar.ovia-mobile-menu-open,
    .admin-sidebar.ovia-mobile-menu-open,
    .side-nav.ovia-mobile-menu-open,
    aside.sidebar.ovia-mobile-menu-open,
    aside.admin-sidebar.ovia-mobile-menu-open {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: min(86vw, 340px) !important;
        max-width: 86vw !important;
        height: 100vh !important;
        overflow-y: auto !important;
        z-index: 9999 !important;
        background: linear-gradient(180deg, #071429 0%, #0b1c38 72%, #08111f 100%) !important;
        color: #eef6ff !important;
        box-shadow: 20px 0 60px rgba(15, 23, 42, 0.28) !important;
        padding-bottom: 40px !important;
    }

    .ovia-menu-backdrop {
        display: none;
    }

    body.ovia-menu-open .ovia-menu-backdrop {
        display: block !important;
        position: fixed !important;
        inset: 0 !important;
        background: rgba(15, 23, 42, 0.48) !important;
        z-index: 9998 !important;
    }

    /* Make menu/close controls tappable */
    .menu-toggle,
    .mobile-menu-toggle,
    .open-menu,
    .close-menu,
    .sidebar-close,
    [data-menu-toggle],
    [data-close-menu],
    a[href="#menu"],
    a[href="#close-menu"] {
        cursor: pointer !important;
        touch-action: manipulation !important;
        position: relative;
        z-index: 10000;
    }
}

/* Desktop remains normal */
@media (min-width: 769px) {
    .ovia-menu-backdrop {
        display: none !important;
    }
}

/* Mobile menu contrast hardening: keep menu text readable on the dark mobile sidebar. */
@media (max-width: 768px) {
    body.ovia-menu-open .sidebar a,
    body.ovia-menu-open .admin-sidebar a,
    body.ovia-menu-open .side-nav a,
    body.ovia-menu-open aside.sidebar a,
    body.ovia-menu-open aside.admin-sidebar a,
    .sidebar.ovia-mobile-menu-open a,
    .admin-sidebar.ovia-mobile-menu-open a,
    .side-nav.ovia-mobile-menu-open a,
    aside.sidebar.ovia-mobile-menu-open a,
    aside.admin-sidebar.ovia-mobile-menu-open a,
    body.ovia-menu-open .sidebar button,
    body.ovia-menu-open .admin-sidebar button,
    body.ovia-menu-open .side-nav button,
    .sidebar.ovia-mobile-menu-open button,
    .admin-sidebar.ovia-mobile-menu-open button,
    .side-nav.ovia-mobile-menu-open button,
    body.ovia-menu-open .sidebar .nav-item,
    body.ovia-menu-open .admin-sidebar .nav-item,
    body.ovia-menu-open .side-nav .nav-item,
    .sidebar.ovia-mobile-menu-open .nav-item,
    .admin-sidebar.ovia-mobile-menu-open .nav-item,
    .side-nav.ovia-mobile-menu-open .nav-item,
    body.ovia-menu-open .sidebar .nav-subitem,
    body.ovia-menu-open .admin-sidebar .nav-subitem,
    body.ovia-menu-open .side-nav .nav-subitem,
    .sidebar.ovia-mobile-menu-open .nav-subitem,
    .admin-sidebar.ovia-mobile-menu-open .nav-subitem,
    .side-nav.ovia-mobile-menu-open .nav-subitem,
    body.ovia-menu-open .sidebar .menu-section-title,
    body.ovia-menu-open .admin-sidebar .menu-section-title,
    body.ovia-menu-open .side-nav .menu-section-title,
    .sidebar.ovia-mobile-menu-open .menu-section-title,
    .admin-sidebar.ovia-mobile-menu-open .menu-section-title,
    .side-nav.ovia-mobile-menu-open .menu-section-title {
        color: #eef6ff !important;
    }

    body.ovia-menu-open .sidebar .active,
    body.ovia-menu-open .admin-sidebar .active,
    body.ovia-menu-open .side-nav .active,
    .sidebar.ovia-mobile-menu-open .active,
    .admin-sidebar.ovia-mobile-menu-open .active,
    .side-nav.ovia-mobile-menu-open .active {
        color: #ffffff !important;
    }
}

