.cca-widget {
    position: relative;
    font-family: inherit;
    border: 1px solid #e5e5e5;
}

/* ---- Header bar (yellow, label only) ---- */
.cca-header-bar {
    background: #ffc114;
    color: #22262a;
    padding: 14px 16px;
}

.cca-header-text {
    font-size: 15px;
    font-weight: 700;
}

/* ---- "View Product Category" hover button ---- */
.cca-view-more {
    position: relative;
    background: #fff8e1;
    border-bottom: 1px solid #f0e0a8;
}

.cca-view-more-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 16px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
    color: #8a6a00;
}

.cca-view-more-arrow {
    width: 8px;
    height: 8px;
    border-right: 2px solid #8a6a00;
    border-bottom: 2px solid #8a6a00;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

.cca-view-more:hover .cca-view-more-arrow {
    transform: rotate(-135deg);
}

.cca-flyout {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid #e5e5e5;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
    z-index: 50;
    max-height: 420px;
    overflow-y: auto;
}

.cca-view-more:hover .cca-flyout {
    display: block;
}

/* ---- Shared accordion list/item styling (body list + flyout list, any depth) ---- */
.cca-accordion-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.cca-item {
    border-bottom: 1px solid #eee;
}

.cca-item-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
}

.cca-level-1 .cca-item-row,
.cca-level-2 .cca-item-row,
.cca-level-3 .cca-item-row {
    padding: 10px 16px 10px 28px;
}

.cca-cat-link {
    flex: 1;
    text-decoration: none;
    color: #333;
    font-size: 14px;
}

.cca-level-1 .cca-cat-link,
.cca-level-2 .cca-cat-link {
    font-size: 13px;
    color: #555;
}

.cca-cat-link:hover {
    color: #8a6a00;
}

.cca-cat-icon {
    width: 22px;
    height: 22px;
    object-fit: contain;
    flex-shrink: 0;
}

.cca-toggle-arrow {
    width: 8px;
    height: 8px;
    border-right: 2px solid #999;
    border-bottom: 2px solid #999;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
    flex-shrink: 0;
    cursor: pointer;
}

.cca-item.open > .cca-item-row .cca-toggle-arrow {
    transform: rotate(-135deg);
}

.cca-children {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.cca-item.open > .cca-children {
    max-height: 1000px;
}

.cca-item.pinned-active .cca-cat-link {
    color: #a67c00;
    font-weight: 700;
}

.cca-item.pinned-active {
    background: #ffc114;
}

.cca-pinned-icon {
    display: inline-flex;
    color: #a67c00;
    flex-shrink: 0;
}

.cca-empty-note {
    padding: 13px 16px;
    color: #888;
    font-size: 13px;
}
