/* Shared listing type control for category and section catalogs. */
.category-listing-controls {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
}

.category-listing-controls .listing-type-toggle { margin-bottom: 0; }

.category-desktop-sort {
    display: flex;
    align-items: center;
    margin-left: auto;
}

.listing-type-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0;
    border-bottom: 2px solid var(--color-outline-variant, #e0e0e0);
    margin-bottom: 12px;
}

.listing-type-toggle__item {
    position: relative;
    border: 0;
    background: transparent;
    color: var(--color-on-surface-variant, #666);
    cursor: pointer;
    font: inherit;
    font-weight: 600;
    padding: 9px 16px;
    min-height: 42px;
    white-space: nowrap;
}

.listing-type-toggle__item:hover,
.listing-type-toggle__item.is-active { color: var(--color-primary, #4f46e5); }

.listing-type-toggle__item.is-active::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    height: 2px;
    border-radius: 2px 2px 0 0;
    background: var(--color-primary, #4f46e5);
}

@media (max-width: 768px) {
    .category-listing-controls { display: block; margin-bottom: 0; }
    .category-listing-controls .listing-type-toggle { width: 100%; margin-bottom: 20px; }
    .listing-type-toggle__item { flex: 1; padding-inline: 8px; font-size: 14px; }
}