/* =========================================
   VN PRO - MzM Sudan Style Sidebar Styling
   ========================================= */

:root {
    --sidebar-bg: #101924;
    --sidebar-text: #b6c6e3;
    --sidebar-text-active: #798bff;
    --sidebar-icon: #b6c6e3;
    --sidebar-icon-active: #798bff;
    --sidebar-label: #8fa1c3;
    --sidebar-hover-bg: rgba(121, 139, 255, 0.08);
}

/* ── Global Sidebar Container ── */
.fi-sidebar {
    background: var(--sidebar-bg) !important;
    border: none !important; /* Neutralize all borders */
    box-shadow: none !important; /* Remove shadows that appear as gray lines */
    ring: none !important;
    outline: none !important;
}

/* Neutralize Filament's default rings and shadows on the sidebar */
.fi-sidebar, 
.fi-sidebar * {
    --tw-ring-offset-shadow: 0 0 #0000 !important;
    --tw-ring-shadow: 0 0 #0000 !important;
    --tw-shadow: 0 0 #0000 !important;
    --tw-shadow-colored: 0 0 #0000 !important;
}

/* ── Navigation Items ── */
.fi-sidebar-item {
    border-radius: 8px !important;
    margin: 4px 12px !important;
    transition: all 0.3s ease !important;
}

.fi-sidebar-item-button {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.fi-sidebar-item-label {
    color: var(--sidebar-text) !important;
    font-weight: 600 !important;
    font-size: 0.9rem !important;
}

.fi-sidebar-item-icon {
    color: var(--sidebar-icon) !important;
    width: 1.25rem !important;
    height: 1.25rem !important;
    transition: all 0.3s ease !important;
}

/* ── Hover State ── */
.fi-sidebar-item:hover {
    background: var(--sidebar-hover-bg) !important;
}

.fi-sidebar-item:hover .fi-sidebar-item-label {
    color: var(--sidebar-text-active) !important;
}

.fi-sidebar-item:hover .fi-sidebar-item-icon {
    color: var(--sidebar-icon-active) !important;
    transform: scale(1.1);
}

/* ── Active State ── */
.fi-sidebar-item-active,
.fi-sidebar-item-active a {
    background: transparent !important; /* No background for active in MzM style, just text color */
}

.fi-sidebar-item-active .fi-sidebar-item-label {
    color: var(--sidebar-text-active) !important;
    font-weight: 800 !important;
}

.fi-sidebar-item-active .fi-sidebar-item-icon {
    color: var(--sidebar-icon-active) !important;
}

/* ── Group Labels ── */
.fi-sidebar-group-label {
    color: var(--sidebar-label) !important;
    font-weight: 800 !important;
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 20px 24px 8px !important;
}

/* ── Disclosure Arrow (Dropdown) ── */
.fi-sidebar-group-button svg {
    color: var(--sidebar-icon) !important;
}

.fi-sidebar-group-button:hover svg {
    color: var(--sidebar-icon-active) !important;
}

/* ── Brand / Header ── */
.fi-sidebar-header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    background: rgba(255, 255, 255, 0.02) !important;
}

.fi-sidebar-header .fi-sidebar-header-brand-name {
    color: white !important;
    font-weight: 900 !important;
}

/* ── Mobile Optimization ── */
@media (max-width: 767px) {
    .fi-sidebar {
        right: 0 !important;
        left: auto !important;
        transform: translateX(100%) !important;
    }

    .fi-sidebar-open {
        transform: translateX(0) !important;
    }
}

/* ── Desktop RTL Fixes ── */
@media (min-width: 768px) {
    .fi-sidebar {
        right: 0 !important;
        left: auto !important;
        width: 17rem !important;
        border: none !important;
    }
    
    .fi-main-ctn {
        transition: all 0.3s ease !important;
        padding-right: 17rem !important;
        padding-left: 0 !important;
        background-color: #f4f6fb !important; /* Matches .fi-main background */
    }

    [dir="rtl"] .fi-main {
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
        border: none !important;
    }

    /* Ensure the inner container also doesn't have a max-width gap or gray borders */
    [dir="rtl"] .fi-main > div {
        max-width: 100% !important;
        width: 100% !important;
        border: none !important;
        box-shadow: none !important;
    }

    /* Force full width on all main containers - Eliminate empty side space */
    .fi-main,
    .fi-main > div,
    .fi-page,
    .fi-page > div,
    .fi-section,
    .fi-wi-stats-overview,
    .fi-wi-chart,
    .fi-ta,
    .fi-ta-content {
        max-width: none !important;
        width: 100% !important;
    }

    /* Ensure content alignment is centered but fills available space */
    .fi-main > div {
        display: block !important;
    }
}