/**
 *  - v2.1.15
 * 
 * Copyright (c) 2025
 * Licensed GPLv2+
 */
.ct-filter-widget-wrapper {
    display: flex;
    flex-direction: column;
    gap: 15px
}

.ct-filter-widget-wrapper.ct-active .ct-filter-widget:not(.ct-filter-search-results) {
    display: none
}

.ct-filter-widget {
    display: flex;
    gap: 10px 15px;
    font-size: 15px;
    --theme-link-initial-color: var(--theme-text-color)
}

.ct-filter-widget[data-display-type=inline] {
    flex-wrap: wrap
}

.ct-filter-widget[data-display-type=list] {
    flex-direction: column
}

.ct-filter-widget .ct-filter-item-inner {
    display: flex;
    align-items: center;
    gap: 10px
}

.ct-filter-widget .ct-filter-item-inner a {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1
}

.ct-filter-widget .ct-filter-item-inner a .ct-checkbox {
    top: 0;
    margin: 0
}

.ct-filter-widget .ct-filter-item-inner a>.ct-filter-count {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    min-width: 30px;
    height: 22px;
    padding: 0 5px;
    margin-inline-start:auto;border-radius: 50px;
    border: 1px solid var(--theme-border-color);
    transition: color .12s cubic-bezier(0.455, 0.03, 0.515, 0.955),background .12s cubic-bezier(0.455, 0.03, 0.515, 0.955),border-color .12s cubic-bezier(0.455, 0.03, 0.515, 0.955)
}

.ct-filter-widget .ct-filter-item-inner a:hover>.ct-filter-count {
    color: #fff;
    background: var(--theme-link-hover-color);
    border-color: var(--theme-link-hover-color)
}

.ct-filter-widget .active>.ct-filter-item-inner .ct-filter-label {
    font-weight: 600
}

.ct-filter-widget .ct-filter-label .ct-filter-count {
    opacity: .5;
    margin-inline-start:.5em}

.ct-price-filter-slider {
    --handle-size: 18px;
    display: flex;
    align-items: center;
    position: relative;
    margin-block:calc(var(--handle-size)/2) 25px;margin-inline: calc(var(--handle-size)/2)
}

.ct-price-filter-slider .ct-price-filter-range-track {
    position: absolute;
    inset-inline: calc(var(--handle-size)/2*-1);
    height: 14px;
    padding: 6px 0;
    background-clip: content-box;
    cursor: pointer;
    background-image: linear-gradient(90deg, var(--theme-form-field-border-initial-color) var(--start), var(--theme-palette-color-1) var(--start), var(--theme-palette-color-1) var(--end), var(--theme-form-field-border-initial-color) var(--end))
}

.ct-price-filter-slider [class*=ct-price-filter-range-handle] {
    display: flex;
    justify-content: center;
    position: absolute;
    width: var(--handle-size);
    height: var(--handle-size);
    border-radius: 100%;
    background: #fff;
    border: 2px solid var(--theme-palette-color-1);
    transform: translateX(calc(var(--handle-size) / 2 * -1));
    transition: box-shadow .1s ease
}

.ct-price-filter-slider [class*=ct-price-filter-range-handle] .ct-tooltip {
    transform: translate3d(0px, calc(-100% - 7px), 0px)
}

.ct-price-filter-slider input[type=range] {
    position: absolute;
    z-index: 2;
    opacity: 0;
    width: calc(100% + var(--handle-size));
    inset-inline: calc(var(--handle-size)/2*-1);
    outline: none;
    appearance: none;
    pointer-events: none;
    background: rgba(0,0,0,0)
}

.ct-price-filter-slider input[type=range]::-webkit-slider-thumb {
    width: var(--handle-size);
    height: var(--handle-size);
    cursor: grab;
    pointer-events: auto
}

.ct-price-filter-slider input[type=range]::-moz-range-thumb {
    width: var(--handle-size);
    height: var(--handle-size);
    cursor: grab;
    pointer-events: auto
}

.ct-price-filter-slider input[type=range]:hover+[class*=ct-price-filter-range-handle] {
    z-index: 1;
    box-shadow: 0px 0px 0px 1px var(--theme-palette-color-1),0px 6px 13px rgba(0,0,0,.2)
}

.ct-price-filter-slider input[type=range]:hover+[class*=ct-price-filter-range-handle] .ct-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0px, calc(-100% - 15px), 0px)
}

.ct-price-filter-inputs {
    display: flex;
    align-items: center;
    font-size: 14px
}

.ct-price-filter-inputs [class*=ct-price-filter] {
    font-weight: 600
}

[data-filter-criteria*=taxonomy] .ct-filter-children {
    display: flex;
    flex-direction: column;
    gap: 10px
}

[data-filter-criteria*=taxonomy] .ct-filter-children li:first-child {
    margin-top: 10px
}

[data-filter-criteria*=taxonomy] .ct-media-container {
    overflow: initial;
    justify-content: center;
    width: var(--product-taxonomy-logo-size, 40px)
}

[data-filter-criteria*=taxonomy] .ct-media-container .ct-tooltip {
    top: 0;
    transform: translate3d(0px, calc(-100% - 7px), 0px)
}

[data-filter-criteria*=taxonomy] .ct-media-container:hover .ct-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0px, calc(-100% - 12px), 0px)
}

[data-filter-criteria*=taxonomy][data-frame=yes] .ct-media-container {
    padding: 8px;
    border-radius: 2px;
    box-sizing: content-box;
    transition: border .2s ease;
    border: 2px solid var(--theme-border-color)
}

[data-filter-criteria*=taxonomy][data-frame=yes] .ct-filter-item:is(:hover,.active) .ct-media-container {
    border-color: var(--theme-link-hover-color)
}

[data-filter-criteria*=brands][data-display-type=inline] {
    row-gap: 15px
}

.ct-rating-filter ul {
    gap: 0
}

.ct-rating-filter li:not(:last-child) a {
    padding-inline-end:3px}

.ct-rating-filter li:not(:first-child) a {
    padding-inline-start:3px}

.ct-rating-filter li.active a,.ct-rating-filter li:has(~.active) a,.ct-rating-filter li:hover a,.ct-rating-filter li:has(~:hover) a {
    color: var(--star-rating-initial-color, #FDA256)
}

.ct-rating-filter li:hover~li a {
    color: var(--star-rating-inactive-color, #F9DFCC)
}

.ct-rating-filter li a {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--star-rating-inactive-color, #F9DFCC)
}

.ct-rating-filter li a:hover .ct-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0px, calc(-100% - 10px), 0px)
}

.ct-rating-filter .ct-tooltip {
    transform: translate3d(0px, calc(-100% - 5px), 0px)
}

.wp-block-heading.ct-expandable-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    --theme-icon-color: currentColor
}

.wp-block-heading[aria-expanded=false] {
    margin-bottom: 0 !important
}

.ct-filter-search {
    position: relative;
    --theme-form-field-height: 40px
}

.ct-filter-search input[type=search] {
    padding-inline-end:var(--theme-form-field-height, 40px)}

.ct-filter-search input[type=search]: :-webkit-search-cancel-button {
    -webkit-appearance:none
}

.ct-filter-search .ct-filter-search-icon {
    position: absolute;
    top: 0;
    inset-inline-end: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--theme-form-field-height, 40px);
    height: var(--theme-form-field-height, 40px);
    cursor: pointer
}

.ct-filter-widget-wrapper.ct-active .ct-filter-search-zoom-icon {
    display: none
}

.ct-filter-widget-wrapper:not(.ct-active) .ct-filter-search-reset-icon {
    display: none
}

.ct-filter-widget[style*=height] {
    overflow-y: auto;
    scrollbar-width: thin;
    padding-inline-end:7px;-webkit-overflow-scrolling: touch
}

.ct-filter-widget[style*=height]::-webkit-scrollbar-track {
    border-radius: 10px;
    background-color: rgba(0,0,0,.03)
}

.ct-filter-widget[style*=height]::-webkit-scrollbar {
    width: 4px
}

.ct-filter-widget[style*=height]::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: rgba(0,0,0,.1)
}
