.zlpf-project{--zlpf-accent:#111;--zlpf-text:#333;--zlpf-border:#deded8;--zlpf-radius:0;--zlpf-gap:24px;--zlpf-title-size:18px;--zlpf-checkbox-size:16px;background:transparent;color:var(--zlpf-text);position:relative;transition:opacity .15s}
.zlpf-project:after{background:transparent;content:"";inset:0;opacity:0;pointer-events:none;position:absolute;z-index:5}
.zlpf-project.is-loading{opacity:.65}
.zlpf-project.is-loading:after{opacity:1;pointer-events:auto}
.zlpf-form{display:flex;flex-direction:column;gap:var(--zlpf-gap)}
.zlpf-filter{border:0;border-bottom:1px solid var(--zlpf-border);margin:0;min-width:0;padding:0 0 var(--zlpf-gap)}
.zlpf-filter__heading{display:block;margin:0;padding:0;width:100%}
.zlpf-accordion{align-items:center;background:transparent!important;border:0!important;box-shadow:none!important;color:inherit;display:flex;font-size:var(--zlpf-title-size);font-weight:500;justify-content:space-between;line-height:1.3;padding:0 0 16px!important;text-align:left;text-transform:none;width:100%}
.zlpf-accordion__icon{border-bottom:1px solid currentColor;border-right:1px solid currentColor;height:7px;margin-right:3px;transform:rotate(45deg);transition:transform .15s;width:7px}
.zlpf-accordion[aria-expanded=false] .zlpf-accordion__icon{transform:rotate(-135deg)}
.zlpf-options{display:flex;flex-direction:column;gap:12px}
.zlpf-option{align-items:center;cursor:pointer;display:flex;font-size:15px;gap:9px;line-height:1.35;margin:0;min-width:0;position:relative}
.zlpf-option>input,.zlpf-switch-row>input{height:1px!important;opacity:0;overflow:hidden;position:absolute;width:1px!important}
.zlpf-checkbox{background:#fff;border:1px solid var(--zlpf-border);border-radius:2px;display:inline-grid;flex:0 0 var(--zlpf-checkbox-size);height:var(--zlpf-checkbox-size);place-items:center;width:var(--zlpf-checkbox-size)}
.zlpf-option.is-selected .zlpf-checkbox{background:var(--zlpf-accent);border-color:var(--zlpf-accent)}
.zlpf-option.is-selected .zlpf-checkbox:after{border:solid #fff;border-width:0 2px 2px 0;content:"";height:7px;transform:rotate(45deg) translate(-1px,-1px);width:3px}
.zlpf-option input:focus-visible~.zlpf-checkbox,.zlpf-option input:focus-visible~.zlpf-box-value,.zlpf-option input:focus-visible~.zlpf-swatch,.zlpf-switch-row input:focus-visible~.zlpf-switch{outline:2px solid var(--zlpf-accent);outline-offset:3px}
.zlpf-option__label{min-width:0}
.zlpf-count{color:#777;font-size:12px;margin-left:auto}
.zlpf-option--extra{display:none}
.zlpf-options.is-expanded .zlpf-option--extra{display:flex}
.zlpf-show-more{align-self:flex-start;background:transparent!important;border:0!important;border-bottom:1px solid currentColor!important;border-radius:0!important;box-shadow:none!important;color:inherit;margin-top:18px;padding:0 0 2px!important;text-transform:none}
.zlpf-options--box,.zlpf-options--swatch{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px}
.zlpf-options--box .zlpf-option,.zlpf-options--swatch .zlpf-option{display:inline-flex}
.zlpf-box-value{align-items:center;border:1px solid var(--zlpf-border);border-radius:var(--zlpf-radius);display:flex;justify-content:center;min-height:38px;min-width:42px;padding:7px 12px}
.zlpf-option.is-selected .zlpf-box-value{background:var(--zlpf-accent);border-color:var(--zlpf-accent);color:#fff}
.zlpf-swatch{background-position:center;background-size:cover;border:1px solid var(--zlpf-border);display:block;height:var(--zlpf-swatch-h,32px);overflow:hidden;position:relative;width:var(--zlpf-swatch-w,32px)}
.zlpf-swatch img{height:100%;object-fit:cover;width:100%}
.zlpf-swatch--circle{border-radius:50%}
.zlpf-swatch--rounded{border-radius:8px}
.zlpf-option.is-selected .zlpf-swatch:after{border:2px solid #fff;box-shadow:0 0 0 2px var(--zlpf-accent);content:"";inset:2px;position:absolute}
.zlpf-swatch--circle:after{border-radius:50%}
.zlpf-switch-row{align-items:center;border:1px solid var(--zlpf-border);border-radius:var(--zlpf-radius);cursor:pointer;display:flex;justify-content:space-between;padding:15px 16px}
.zlpf-switch{background:#dfe2d8;border-radius:99px;display:block;height:18px;padding:2px;transition:background .15s;width:31px}
.zlpf-switch span{background:#fff;border-radius:50%;box-shadow:0 1px 2px rgba(0,0,0,.15);display:block;height:14px;transform:translateX(0);transition:transform .15s;width:14px}
.zlpf-switch-row.is-selected .zlpf-switch{background:var(--zlpf-accent)}
.zlpf-switch-row.is-selected .zlpf-switch span{transform:translateX(13px)}
.zlpf-price__ranges{height:22px;margin:0 0 14px;position:relative}
.zlpf-price-range{appearance:none;background:transparent;height:4px;left:0;margin:0;pointer-events:none;position:absolute;top:8px;width:100%}
.zlpf-price-range::-webkit-slider-runnable-track{background:var(--zlpf-border);height:3px}
.zlpf-price-range::-webkit-slider-thumb{appearance:none;background:var(--zlpf-accent);border:0;border-radius:50%;height:15px;margin-top:-6px;pointer-events:auto;width:15px}
.zlpf-price-range::-moz-range-track{background:var(--zlpf-border);height:3px}
.zlpf-price-range::-moz-range-thumb{background:var(--zlpf-accent);border:0;border-radius:50%;height:15px;pointer-events:auto;width:15px}
.zlpf-price--handle-line .zlpf-price-range::-webkit-slider-thumb{border-radius:0;height:18px;margin-top:-8px;width:4px}
.zlpf-price--handle-line .zlpf-price-range::-moz-range-thumb{border-radius:0;height:18px;width:4px}
.zlpf-price__inputs{display:grid;gap:10px;grid-template-columns:1fr 1fr}
.zlpf-price__inputs label{font-size:12px}
.zlpf-price__inputs label span{display:block;margin-bottom:4px}
.zlpf-price__inputs input{height:38px;width:100%}
.zlpf-price__label{color:#666;font-size:12px;margin-top:8px;text-align:right}
.zlpf-actions{align-items:center;display:flex;gap:14px;justify-content:space-between}
.zlpf-project[data-apply-mode=instant] .zlpf-apply{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}
.zlpf-apply{background:var(--zlpf-accent);border:1px solid var(--zlpf-accent);border-radius:var(--zlpf-radius);color:#fff;padding:11px 17px}
.zlpf-clear-all,.zlpf-active a{color:inherit;text-decoration:underline}
.zlpf-clear-all--button{align-items:center;background:var(--zlpf-clear-background)!important;border:var(--zlpf-clear-border-width) solid var(--zlpf-clear-border)!important;border-radius:var(--zlpf-clear-radius)!important;color:var(--zlpf-clear-text)!important;display:inline-flex;justify-content:center;padding:10px 16px;text-decoration:none!important}
.zlpf-project[data-apply-mode=instant] .zlpf-clear-all--button{flex:1;width:100%}
.zlpf-clear-all--button:focus-visible{outline:2px solid var(--zlpf-accent);outline-offset:3px}
.zlpf-active{border-bottom:1px solid var(--zlpf-border);margin-bottom:var(--zlpf-gap);padding-bottom:16px}
.zlpf-active__head{align-items:center;display:flex;justify-content:space-between}
.zlpf-active__items{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.zlpf-active__items span{background:#f3f3f0;border-radius:99px;font-size:12px;padding:5px 9px}
.zlpf-empty{color:#777;font-size:13px;margin:0}
.zlpf-admin-message{border:1px dashed #cc1818;padding:10px}
@media(max-width:767px){.zlpf-swatch{height:var(--zlpf-swatch-mobile,36px);width:var(--zlpf-swatch-mobile,36px)}
.zlpf-price__inputs{grid-template-columns:1fr}
.zlpf-switch-row{padding:14px}
}

.zlpf-project .zlpf-option{margin-left:calc(var(--zlpf-depth,0)*14px)}
.zlpf-project .zlpf-options--box .zlpf-option,.zlpf-project .zlpf-options--swatch .zlpf-option{margin-left:0}
.zlpf-active__items>.zlpf-active__item{align-items:center;background:#f3f3f0;border-radius:99px;display:inline-flex;font-size:12px;gap:6px;padding:5px 9px;text-decoration:none}
.zlpf-active__items>.zlpf-active__item>span{background:transparent;border-radius:0;padding:0}
.zlpf-active__item>span:nth-child(2){font-size:16px;line-height:1}

.zlpf-switch-list{display:flex;flex-direction:column;gap:12px}

.zlpf-project .zlpf-checkbox{border-color:var(--zlpf-checkbox-border,var(--zlpf-border))}
.zlpf-project[data-apply-mode=instant] .zlpf-apply.zlpf-apply--fallback{clip:auto;clip-path:none;height:auto;overflow:visible;position:static;white-space:normal;width:auto}

.zlpf-switch-row>.zlpf-count{margin-left:auto;margin-right:10px}

/* Tipografia configurável do projeto. Mantém o peso consistente mesmo quando
 * o tema aplica pesos próprios a botões, links ou labels do filtro. */
.zlpf-project,.zlpf-project button,.zlpf-project input,.zlpf-project select,.zlpf-project label,.zlpf-project a{font-weight:var(--zlpf-font-weight,700)!important}
.zlpf-project .zlpf-accordion{font-weight:var(--zlpf-font-weight,700)!important}

/* Rolagem escolhida individualmente por bloco. */
.zlpf-options--scroll{align-content:flex-start;max-height:var(--zlpf-scroll-height,280px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-right:8px;scrollbar-color:var(--zlpf-border) transparent;scrollbar-width:thin}
.zlpf-options--scroll:focus-visible{outline:2px solid var(--zlpf-accent);outline-offset:3px}
.zlpf-options--scroll::-webkit-scrollbar{width:6px}
.zlpf-options--scroll::-webkit-scrollbar-thumb{background:var(--zlpf-border);border-radius:99px}
.zlpf-options--scroll::-webkit-scrollbar-track{background:transparent}
