﻿/* Increase sidebar width */
.custom-menu-sidebar.rz-sidebar-expanded {
    width: 280px !important;
    max-width: none !important;
    background-color: var(--sidebar-color);
}

/* Overall sidebar menu styling */
.sidebar-menu {
    padding: 0;
    width: 100%;
}

/* Ensure the panel menu takes full width */
.rz-panel-menu {
    width: 100%;
    background-color: transparent;
}

/* Parent menu items */
.parent-menu-item {
    border-bottom: 1px solid rgba(var(--sidebar-text-rgb), 0.1);
    margin-bottom: 0;
}

/* Set background of all menu items to transparent */
.rz-panel-menu .rz-navigation-item-wrapper,
.rz-panel-menu .rz-panel-menu-item {
    background-color: transparent !important;
}

/* Minimize padding for all menu items */
.parent-menu-item > .rz-panel-menu-item,
.sub-parent-menu-item > .rz-panel-menu-item,
.child-menu-item > .rz-panel-menu-item {
    padding: 0px 2px; /* Minimal padding */
    white-space: normal;
    word-wrap: break-word;
    line-height: 1; /* Tightest possible line height */
    width: 100%;
}

.parent-menu-item > .rz-panel-menu-item {
    font-weight: 600;
}

/* Sub-parent menu items */
.sub-parent-menu-item > .rz-panel-menu-item {
    padding-left: 10px; /* Reduced left padding */
    font-weight: 500;
}

/* Child menu items */
.child-menu-item {
    padding-left: 18px; /* Reduced left padding */
}

.child-menu-item > .rz-panel-menu-item {
    font-size: 0.9em;
    padding: 0px 2px; /* Minimal padding */
}

/* Ensure text doesn't overflow */
.rz-panel-menu .rz-navigation-item-text {
    white-space: normal;
    word-wrap: break-word;
    overflow: visible;
    width: 100%;
    color: var(--sidebar-text-color);
}

/* Adjust the layout of menu items */
.rz-panel-menu .rz-navigation-item-wrapper {
    display: flex;
    align-items: center;
    padding: 0px 2px; /* Minimal padding */
    width: 100%;
    transition: all 0.2s ease;
    border-left: 2px solid transparent; /* Reduced border width */
}

.rz-panel-menu .rz-navigation-item-icon {
    margin-right: 2px; /* Minimal margin */
    flex-shrink: 0;
    color: var(--sidebar-text-color);
}

/* Force text wrapping for very long words */
.rz-panel-menu .rz-navigation-item-wrapper,
.rz-panel-menu .rz-navigation-item-text {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -ms-word-break: break-all;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
}

/* Hover effect for all menu items */
.rz-panel-menu .rz-navigation-item-wrapper:hover {
    background-color: rgba(var(--sidebar-text-rgb), 0.1) !important;
    border-left-color: rgba(var(--sidebar-text-rgb), 0.3);
}

/* Active menu item indicator */
.menu-item.active > .rz-panel-menu-item,
.parent-menu-item.active > .rz-panel-menu-item,
.sub-parent-menu-item.active > .rz-panel-menu-item,
.child-menu-item.active > .rz-panel-menu-item {
    background-color: rgba(var(--sidebar-text-rgb), 0.15) !important;
    border-left-color: var(--sidebar-text-color);
    font-weight: bold;
}

/* Background for expanded submenus */
.rz-panel-menu .rz-navigation-item-wrapper-active {
    background-color: rgba(var(--sidebar-text-rgb), 0.05) !important;
}

/* Adjustments for expandable menu items */
.rz-panel-menu .rz-navigation-item-wrapper-active {
    background-color: rgba(var(--sidebar-text-rgb), 0.05);
}

.rz-panel-menu .rz-navigation-item-wrapper-active .rz-navigation-item-icon-children {
    transform: rotate(90deg);
}

/* Reduce space between main menu sections */
.rz-panel-menu > .rz-navigation-item {
    margin-bottom: 0;
}

/* Responsive design */
@media (max-width: 768px) {
    .custom-menu-sidebar.rz-sidebar {
        position: fixed;
        left: -280px;
        transition: left 0.3s ease;
    }

    .sidebar.open,
    .rz-sidebar.open {
        left: 0;
    }
}
