.block-categories {
    margin-bottom: 1.5rem;
    padding: 1rem;
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.block-categories .block-title {
    margin-bottom: 1rem;
    font-size: 1.25rem;
    font-weight: 600;
    color: #e50046;
}

.category-tree {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.category-tree ul {
    list-style: none;
    padding-left: .7rem;
}

.category-item {
    margin: 0.5rem 0;
}

.category-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.collapse-button {
    background: none;
    border: none;
    padding: 0;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #e50046;
}

.collapse-button svg {
    width: 24px;
    height: 24px;
}

.collapse-button .collapse-icon {
    display: none;
}

.collapse-button[aria-expanded="true"] .expand-icon {
    display: none;
}

.collapse-button[aria-expanded="true"] .collapse-icon {
    display: block;
}

.category-link {
    color: #232323;
    text-decoration: none;
    transition: color 0.2s;
}

.category-link:hover {
    color: #e50046;
}

.category-link.has-children {
    font-weight: 600;
}

.category-item.active > .category-header > .category-link {
    color: #e50046;
}

.subcategories-wrapper {
    overflow: visible;
    height: auto !important;
    transition: opacity 0.3s ease-in-out;
    opacity: 1;
}

.subcategories-wrapper.collapsed {
    height: 0 !important;
    opacity: 0;
    pointer-events: none;
} 