/* =========================================
   Sidebar Menu Design
   ========================================= */
.category-sidebar {
    background-color: var(--white);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    border: 1px solid var(--border-color);
    margin-bottom: 25px;
}

.sidebar-header {
    background-color: var(--white);
    padding: 20px 25px;
    border-bottom: 1px solid var(--border-color);
}

.sidebar-header h3 {
    font-size: 1.2rem;
    margin: 0;
    color: var(--secondary-color);
    font-weight: 700;
}

.sidebar-list {
    padding: 10px 0;
}

.sidebar-item {
    position: relative;
    border-bottom: 1px solid transparent;
}

.sidebar-link {
    display: block;
    padding: 12px 25px;
    color: var(--text-color);
    font-weight: 500;
    transition: var(--transition);
    border-left: 3px solid transparent;
    font-size: 1rem;
}

.sidebar-link:hover {
    color: var(--primary-color);
    background-color: rgba(0, 0, 0, 0.015);
}

.sidebar-item.active>.sidebar-link {
    color: var(--secondary-color);
    font-weight: 700;
    border-left-color: var(--primary-color);
    background-color: rgba(255, 152, 0, 0.05);
}

.sidebar-link i {
    color: var(--text-light);
    font-size: 0.9em;
    transition: transform 0.3s ease;
}

.sidebar-item.active>.sidebar-link i {
    color: var(--primary-color);
    transform: rotate(0deg);
}

/* Submenu Styles */
.sidebar-sublist {
    display: none;
    padding: 5px 0 15px 0;
    background-color: rgba(0, 0, 0, 0.01);
}

.sidebar-sublist.open {
    display: block;
}

.sub-item {
    position: relative;
}

.sub-link {
    display: block;
    padding: 8px 25px 8px 45px;
    /* Indented padding */
    font-size: 0.95rem;
    color: #666;
    transition: var(--transition);
}

.sub-link:hover {
    color: var(--primary-color);
    transform: translateX(5px);
}

.sub-item.active .sub-link {
    color: var(--primary-color);
    font-weight: 600;
}

.sub-item::before {
    content: '';
    position: absolute;
    left: 28px;
    top: 50%;
    width: 6px;
    height: 6px;
    background-color: var(--border-color);
    border-radius: 50%;
    transform: translateY(-50%) scale(0.5);
    transition: var(--transition);
}

.sub-item.active::before {
    background-color: var(--primary-color);
    transform: translateY(-50%) scale(1);
}