/* Filtros do catalogo (substituem o FacetWP): vendor fSelect + noUiSlider (MIT) + regras basicas. As classes facetwp-* foram mantidas de proposito: o CSS do tema (scss/pages/_categoria-produto.scss) as usa. */
.fs-wrap {
    width: 220px;
    display: inline-block;
    position: relative;
    cursor: pointer;
    line-height: 1;
}

.fs-label-wrap {
    position: relative;
    background-color: #fff;
    border: 1px solid #ddd;
    cursor: default;
}

.fs-label-wrap,
.fs-dropdown {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.fs-label-wrap .fs-label {
    padding: 6px 22px 6px 8px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.fs-arrow {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid #333;
    position: absolute;
    top: 0;
    right: 5px;
    bottom: 0;
    margin: auto;
    transition: ease-in 0.15s;
}

.fs-open .fs-arrow {
    transform: rotate(-180deg);
}

.fs-dropdown {
    width: 100%;
    position: absolute;
    background-color: #fff;
    border: 1px solid #ddd;
    border-top: none;
    z-index: 1000;
}

.fs-dropdown .fs-options {
    max-height: 200px;
    overflow: auto;
}

.fs-search {
    background-color: #f8f8f8;
    padding: 0 8px;
}

.fs-wrap .fs-search input {
    border: none;
    box-shadow: none;
    background-color: transparent;
    outline: none;
    padding: 0;
    width: 100%;
}

.fs-option,
.fs-search,
.fs-optgroup-label {
    padding: 6px 8px;
    cursor: default;
}

.fs-option:last-child {
    border-bottom: none;
}

.fs-no-results {
    padding: 6px 8px;
}

.fs-option {
    cursor: pointer;
    word-break: break-all;
}

.fs-option.disabled {
    opacity: 0.4;
    cursor: default;
}

.fs-wrap.single .fs-option.selected {
    background-color: #dff3ff;
}

.fs-wrap.multiple .fs-option {
    position: relative;
    padding-left: 30px;
}

.fs-wrap.multiple .fs-checkbox {
    position: absolute;
    display: block;
    width: 30px;
    top: 0;
    left: 0;
    bottom: 0;
}

.fs-wrap.multiple .fs-option .fs-checkbox i {
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 14px;
    height: 14px;
    border: 1px solid #aeaeae;
    border-radius: 2px;
    background-color: #fff;
}

.fs-wrap.multiple .fs-option.selected .fs-checkbox i {
    background-color: rgb(108, 138, 255);
    border-color: transparent;
}

.fs-optgroup-label {
    font-weight: bold;
    text-align: center;
    background-color: #f8f8f8;
}

.fs-hidden {
    display: none;
}

.noUi-target,
.noUi-target * {
    touch-action: none;
    user-select: none;
    box-sizing: border-box;
}
.noUi-target {
    position: relative;
}
.noUi-base,
.noUi-connects {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
}
.noUi-connects {
    overflow: hidden;
    z-index: 0;
}
.noUi-connect,
.noUi-origin {
    will-change: transform;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    transform-origin: 0 0;
    transform-style: flat;
}
.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
    left: 0;
    right: auto;
}
.noUi-horizontal .noUi-origin {
    height: 0;
}
.noUi-handle {
    backface-visibility: hidden;
    position: absolute;
}
.noUi-touch-area {
    height: 100%;
    width: 100%;
}
.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
    transition: transform 0.3s;
}
.noUi-horizontal {
    height: 14px;
}
.noUi-horizontal .noUi-handle {
    width: 20px;
    height: 20px;
    right: -10px;
    top: -4px;
}
.noUi-target {
    background: #FAFAFA;
    border-radius: 4px;
    border: 1px solid #D3D3D3;
    padding: 0 8px;
}
.noUi-connects {
    border-radius: 3px;
}
.noUi-connect {
    background: #ddd;
}
.noUi-handle {
    border: 1px solid #D9D9D9;
    border-radius: 3px;
    background: #FFF;
    cursor: default;
}
.noUi-pips,
.noUi-pips * {
    box-sizing: border-box;
}
.noUi-pips {
    position: absolute;
    color: #999;
}
.noUi-value {
    position: absolute;
    white-space: nowrap;
    text-align: center;
}
.noUi-value-sub {
    color: #ccc;
    font-size: 10px;
}
.noUi-marker {
    position: absolute;
    background: #CCC;
}
.noUi-marker-sub {
    background: #AAA;
}
.noUi-marker-large {
    background: #AAA;
}
.noUi-pips-horizontal {
    padding: 10px 0;
    height: 80px;
    top: 100%;
    left: 0;
    width: 100%;
}
.noUi-value-horizontal {
    transform: translate(-50%, 50%);
}
.noUi-rtl .noUi-value-horizontal {
    transform: translate(50%, 50%);
}
.noUi-marker-horizontal.noUi-marker {
    margin-left: -1px;
    width: 2px;
    height: 5px;
}
.noUi-marker-horizontal.noUi-marker-sub {
    height: 10px;
}
.noUi-marker-horizontal.noUi-marker-large {
    height: 15px;
}
.noUi-tooltip {
    display: block;
    position: absolute;
    border: 1px solid #D9D9D9;
    border-radius: 3px;
    background: #fff;
    color: #000;
    padding: 5px;
    text-align: center;
    white-space: nowrap;
}
.noUi-horizontal .noUi-tooltip {
    transform: translate(-50%, 0);
    left: 50%;
    bottom: 120%;
}
.noUi-horizontal .noUi-origin > .noUi-tooltip {
    transform: translate(50%, 0);
    left: auto;
    bottom: 10px;
}

/* regras basicas (antes vinham do front.css do FacetWP) */
.facetwp-facet { margin-bottom: 40px; }
.facetwp-hidden { display: none; }
.facetwp-slider-wrap { padding-bottom: 15px; }
.facetwp-slider-reset { border: 1px solid #d9d9d9; border-radius: 3px; background: #fff; box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ebebeb, 0 3px 6px -3px #bbb; padding: 4px 8px; cursor: pointer; }
.facetwp-input-wrap { display: inline-block; position: relative; }
.facetwp-facet input.facetwp-search { margin: 0; padding-right: 30px; min-width: 240px; }
.facetwp-icon { right: 0; height: 100%; line-height: 1; position: absolute; cursor: pointer; opacity: 0.5; }
.facetwp-icon:before { display: inline-block; content: ''; width: 30px; height: 100%; background-position: 5px 50%; background-size: 20px 20px; }
.facetwp-type-fselect .fs-option .fs-option-label { white-space: nowrap; }

/* novo */
.nachi-oculto { display: none !important; }
.nachi-sem-resultados { margin: 48px 0 0; text-align: center; font-family: "Inter", sans-serif; color: #65737b; }
