/* Turbo & Layout Fixes - Unified for Desktop and Mobile */

/* Desktop Only Rules (min-width: 991.98px) */
@media (min-width: 991.98px) {

    /* Ensure proper navbar positioning when sidebar is present */
    .vertical-layout.vertical-menu-modern .header-navbar {
        width: calc(100% - 260px) !important;
    }

    .vertical-layout.vertical-menu-modern.menu-collapsed .header-navbar {
        width: calc(100% - 80px) !important;
    }

    /* RTL Specifics for Desktop */
    html[lang="ar"] .vertical-layout.vertical-menu-modern .header-navbar {
        right: 260px !important;
        left: auto !important;
    }

    html[lang="ar"] .vertical-layout.vertical-menu-modern.menu-collapsed .header-navbar {
        right: 80px !important;
        left: auto !important;
    }

    /* Fix for app-content in RTL Desktop */
    html[lang="ar"] .vertical-layout.vertical-menu-modern .app-content {
        margin-right: 260px !important;
        margin-left: 0 !important;
    }

    html[lang="ar"] .vertical-layout.vertical-menu-modern.menu-collapsed .app-content {
        margin-right: 80px !important;
        margin-left: 0 !important;
    }
}

/* Mobile Fixes (max-width: 991px) */
@media (max-width: 991px) {

    /* Force full width for header and content on mobile */
    html body.vertical-layout .header-navbar,
    html body.vertical-layout .app-content,
    html body.vertical-layout .content-wrapper,
    html[lang="ar"] body.vertical-layout .header-navbar,
    html[lang="ar"] body.vertical-layout .app-content,
    html[lang="ar"] body.vertical-layout .content-wrapper {
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        right: 0 !important;
        left: 0 !important;
        overflow-x: hidden !important;
    }

    /* ESSENTIAL: Force display the main menu on mobile when it should be open */
    .vertical-layout.vertical-menu-modern.menu-open .main-menu,
    body.menu-open .main-menu {
        display: block !important;
        transform: translate3d(0, 0, 0) !important;
        z-index: 1045 !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: 260px !important;
        top: 0 !important;
        position: fixed !important;
        height: 100% !important;
    }

    /* RTL positioning */
    html[lang="ar"] body.menu-open .main-menu {
        right: 0 !important;
        left: auto !important;
    }

    /* LTR positioning */
    html[lang="en"] body.menu-open .main-menu {
        left: 0 !important;
        right: auto !important;
    }

    /* Force hide sidebar when it has menu-hide class on mobile */
    html[lang="ar"] body.menu-hide .main-menu {
        transform: translate3d(100%, 0, 0) !important;
        display: none !important;
        right: -260px !important;
    }

    html[lang="en"] body.menu-hide .main-menu {
        transform: translate3d(-100%, 0, 0) !important;
        display: none !important;
        left: -260px !important;
    }

    /* Fix backdrop z-index and visibility */
    .sidenav-overlay {
        z-index: 1040 !important;
    }

    /* Prevent horizontal scroll on small devices */
    html,
    body {
        overflow-x: hidden !important;
        width: 100% !important;
        position: relative !important;
    }
}

/* Dark Layout Support Fixes */
.dark-layout {
    background-color: #161d31 !important;
    color: #b4b7bd !important;
}

.dark-layout .header-navbar,
.dark-layout .main-menu {
    background-color: #283046 !important;
}

.dark-layout .card {
    background-color: #283046 !important;
    color: #b4b7bd !important;
}

.dark-layout .content-body {
    color: #b4b7bd !important;
}

/* Force show icons if they disappear */
.ficon {
    width: 1.2rem;
    height: 1.2rem;
}