/* Barra de filtros da vitrine da landing (<x-vitrine-filtros>). Cores do modelo via --vf-*; a grade do modelo vira auto-fill. */
.vf{--vf-accent:currentColor;--vf-on-accent:#fff;--vf-ink:inherit;--vf-muted:#6b7280;--vf-line:rgba(0,0,0,.12);--vf-card:#fff;--vf-radius:14px;display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px;align-items:start;text-align:left}
.vf--right{grid-template-columns:minmax(0,1fr) 260px}.vf--right .vf-panel{order:2}
.vf [data-vf-grid]{grid-template-columns:repeat(auto-fill,minmax(var(--vf-card-min,200px),1fr))}
.vf-panel{position:sticky;top:110px;max-height:calc(100vh - 130px);overflow:auto;scrollbar-width:thin;background:var(--vf-card);color:var(--vf-ink);border:1px solid var(--vf-line);border-radius:calc(var(--vf-radius) + 4px);padding:20px 18px 18px}
.vf-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px}
.vf-panel-head b{font-size:19px;font-weight:700}
.vf-close{display:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--vf-line);background:transparent;color:var(--vf-ink);font-size:22px;line-height:1;cursor:pointer;align-items:center;justify-content:center}
.vf-w{border-top:1px solid var(--vf-line);padding:14px 0 12px}
.vf-panel-head+.vf-w{border-top:0;padding-top:2px}
.vf-w-title{margin:0;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--vf-accent);display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none}
.vf-w-title::-webkit-details-marker{display:none}
.vf-w-title span{flex:1}
.vf-w-title::after{content:"▾";font-size:12px;transition:transform .15s}
.vf-w[open]>.vf-w-title{margin-bottom:10px}
.vf-w[open]>.vf-w-title::after{transform:rotate(180deg)}
.vf-w:not([open]){padding-bottom:14px}
.vf-gbadge{background:var(--vf-accent);color:var(--vf-on-accent);border-radius:999px;font-size:11px;line-height:1;padding:3px 7px;letter-spacing:0}
.vf-gbadge[hidden]{display:none}
.vf-search{width:100%;box-sizing:border-box;margin:0 0 8px;padding:8px 10px;border-radius:10px;border:1px solid var(--vf-line);background:transparent;color:var(--vf-ink);font:inherit;font-size:13px}
[data-vf-group]:not(.is-all):not(.is-searching) [data-vf-extra]:not(:has(input:checked)),[data-vf-group] [data-label][hidden]{display:none}
.vf-all{margin-top:8px;padding:0;border:0;background:none;color:var(--vf-accent);font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.is-all>.vf-all,.is-searching>.vf-all{display:none}
.vf-list{max-height:250px;overflow:auto;scrollbar-width:thin;margin-right:-6px;padding-right:6px}
.vf-opt{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:14px;cursor:pointer;color:var(--vf-ink)}
.vf-opt input{width:17px;height:17px;margin:0;flex:none;accent-color:var(--vf-accent)}
.vf-opt span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vf-opt em{font-style:normal;font-size:12px;color:var(--vf-muted);background:color-mix(in srgb,var(--vf-line) 60%,transparent);border-radius:999px;padding:1px 8px}
.vf-opt-thumb{width:22px;height:22px;object-fit:contain;border-radius:4px;flex:none}
.vf-pills{display:flex;flex-wrap:wrap;gap:6px;max-height:260px;overflow:auto;scrollbar-width:thin}
.vf-pill{position:relative;cursor:pointer}
.vf-pill input{position:absolute;opacity:0;pointer-events:none}
.vf-pill span{display:inline-block;padding:6px 12px;border:1px solid var(--vf-line);border-radius:999px;font-size:13px;color:var(--vf-ink);transition:background .15s,border-color .15s}
.vf-pill input:checked+span{background:var(--vf-accent);border-color:var(--vf-accent);color:var(--vf-on-accent)}
.vf-pill input:focus-visible+span{outline:2px solid var(--vf-accent);outline-offset:2px}
.vf-range{position:relative;height:26px}
.vf-range input{position:absolute;inset:0;width:100%;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none;accent-color:var(--vf-accent)}
.vf-range input::-webkit-slider-runnable-track{height:4px;background:var(--vf-line);border-radius:4px}
.vf-range input::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:18px;height:18px;margin-top:-7px;border-radius:50%;background:var(--vf-accent);border:2px solid var(--vf-card);cursor:pointer}
.vf-range input::-moz-range-track{height:4px;background:var(--vf-line);border-radius:4px}
.vf-range input::-moz-range-thumb{pointer-events:auto;width:16px;height:16px;border-radius:50%;background:var(--vf-accent);border:2px solid var(--vf-card);cursor:pointer}
.vf-range-label{margin:6px 0 0;font-size:14px;font-weight:700;color:var(--vf-ink)}
.vf-panel-foot{display:none}
.vf-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-weight:700;font-size:14px;padding:11px 18px;border-radius:999px;border:1.5px solid var(--vf-accent);background:var(--vf-accent);color:var(--vf-on-accent);cursor:pointer}
.vf-btn--ghost{background:transparent;color:var(--vf-ink);border-color:var(--vf-line)}
.vf-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.vf-count{margin:0;font-size:14px;color:var(--vf-muted)}.vf-count b{color:var(--vf-ink)}
.vf-open{display:none}
.vf-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--vf-accent);color:var(--vf-on-accent);font-size:12px;margin-left:6px}
.vf-badge[hidden]{display:none}
.vf-backdrop{display:none}
.vf-loading{margin:18px 0;color:var(--vf-muted);font-size:14px}
.vf-loading[hidden],.vf-empty[hidden],.vf-more[hidden]{display:none}
.vf-empty{text-align:center;padding:44px 20px;border:1.5px dashed var(--vf-line);border-radius:var(--vf-radius);display:grid;gap:14px;justify-items:center;color:var(--vf-muted)}
.vf-empty p{margin:0;font-size:16px}
.vf-more{text-align:center;margin-top:24px}
@media (max-width:900px){
 .vf,.vf--right{grid-template-columns:1fr;gap:0}
 .vf [data-vf-grid]{grid-template-columns:repeat(2,minmax(0,1fr))}
 .vf-open{display:inline-flex;align-items:center;gap:6px;font:inherit;font-weight:700;font-size:14px;padding:11px 20px;border-radius:999px;border:1.5px solid var(--vf-ink);background:transparent;color:var(--vf-ink);cursor:pointer}
 .vf-panel,.vf--right .vf-panel{position:fixed;top:0;bottom:0;left:0;right:auto;order:0;width:min(380px,90vw);max-height:none;z-index:95;border-radius:0;border:0;padding:20px 20px 20px;transform:translateX(-105%);transition:transform .32s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column}
 .vf-close{display:inline-flex}
 .vf-list{max-height:none}
 .vf-panel-foot{display:flex;gap:10px;margin-top:auto;padding-top:14px;border-top:1px solid var(--vf-line);background:var(--vf-card);position:sticky;bottom:-20px;padding-bottom:4px}
 .vf-panel-foot .vf-btn{flex:1}
 .vf.is-open .vf-panel{transform:none}
 .vf.is-open .vf-backdrop{display:block;position:fixed;inset:0;z-index:94;background:rgba(0,0,0,.5)}
}
@media (prefers-reduced-motion:reduce){.vf-panel{transition:none}}
