/* ===========================================================================
   Tubo Forte - barra lateral de filtros do catalogo
   Usa as mesmas variaveis, cores e tipografia do design (style.css).
   =========================================================================== */

.catalogoGrid{display:grid;grid-template-columns:272px 1fr;gap:38px;align-items:start}
.catalogoGrid .cards{grid-template-columns:repeat(auto-fill,minmax(246px,1fr))}

/* ------------------------------------------------------------------ painel */
.filtros{position:sticky;top:118px;background:#fff;border:1px solid var(--line);border-radius:5px;overflow:hidden}
.filtrosTopo{display:flex;align-items:center;gap:10px;padding:15px 17px;background:var(--g0);color:#fff}
.filtrosTopo b{display:flex;align-items:center;gap:8px;font:700 13px "Chivo",sans-serif;letter-spacing:.02em}
.filtrosTopo svg{color:var(--marca)}
.filtrosTopo .limpar{margin-left:auto;font-size:11px;font-weight:700;color:var(--marca);border-bottom:1px solid #ed323755;padding-bottom:1px}
.filtrosTopo .limpar:hover{color:#fff;border-color:#fff}
.fecharFiltros{display:none;margin-left:auto;border:0;background:none;color:#fff;cursor:pointer;padding:0}

.campoBusca{display:flex;align-items:center;gap:9px;padding:0 15px;margin:14px 15px 0;border:1px solid var(--line);background:var(--soft);color:var(--muted)}
.campoBusca:focus-within{border-color:var(--g2);background:#fff}
.campoBusca input{width:100%;height:44px;border:0;outline:0;background:none;font-size:14px;color:var(--ink)}

.grupo{padding:17px 17px 15px}
.grupo + .grupo{border-top:1px solid var(--line)}
.grupo h3{display:flex;align-items:center;gap:8px;font:700 11px "Chivo",sans-serif;text-transform:uppercase;letter-spacing:.11em;color:var(--g1);margin-bottom:11px}
.grupo h3 span{font-size:9px;font-weight:700;color:var(--muted);background:var(--soft);border-radius:9px;padding:2px 7px;letter-spacing:0}

.opcoes{display:grid}
.rolavel{max-height:296px;overflow-y:auto;padding-right:6px;scrollbar-width:thin;scrollbar-color:#cfdbd4 transparent}
.rolavel::-webkit-scrollbar{width:6px}
.rolavel::-webkit-scrollbar-thumb{background:#cfdbd4;border-radius:3px}

.op{display:flex;align-items:center;gap:9px;padding:7px 0;font-size:13px;line-height:1.3;color:var(--ink);cursor:pointer}
.op:hover{color:var(--g2)}
.op input{width:16px;height:16px;flex:0 0 auto;accent-color:var(--g2);cursor:pointer;border:1px solid var(--line);border-radius:3px}
.op span{flex:1;min-width:0}
.op i{font-style:normal;font-size:10px;font-weight:700;color:var(--muted);background:var(--soft);border-radius:9px;padding:2px 7px}
.op:has(input:checked){color:var(--g2);font-weight:700}
.op:has(input:checked) i{background:var(--pale);color:var(--g2)}
.op.vazia{opacity:.42}

.grupo select{width:100%;height:44px;padding:0 12px;border:1px solid var(--line);background:var(--soft);color:var(--ink);font-size:13px;outline:0;cursor:pointer}
.grupo select:focus{border-color:var(--g2);background:#fff}

.aplicar{display:block;width:calc(100% - 34px);margin:0 17px 17px;min-height:46px;border:0;border-radius:4px;background:var(--g2);color:#fff;font-weight:700;cursor:pointer;transition:.2s}
.aplicar:hover{background:var(--g1)}

/* -------------------------------------------------------------- resultados */
.resultadosTopo{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:46px;margin-bottom:15px}
.resultadosTopo p{margin:0;font-size:13px;color:var(--muted)}
.resultadosTopo strong{font:700 15px "Chivo",sans-serif;color:var(--ink)}
.resultadosTopo em{font-style:normal}
.ordenar{display:flex;align-items:center;gap:9px}
.ordenar>span{font:700 11px "Chivo",sans-serif;text-transform:uppercase;letter-spacing:.11em;color:var(--g1);white-space:nowrap}
.ordenar select{height:42px;padding:0 12px;border:1px solid var(--line);background:var(--soft);color:var(--ink);font-size:13px;outline:0;cursor:pointer}
.ordenar select:focus{border-color:var(--g2);background:#fff}
.abrirFiltros{display:none;align-items:center;gap:8px;border:1px solid var(--g2);background:#fff;color:var(--g2);padding:11px 16px;border-radius:4px;font-size:13px;font-weight:700;cursor:pointer}
.abrirFiltros:hover{background:var(--g2);color:#fff}

.etiquetas{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:24px}
.etiquetas a{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid var(--line);border-radius:3px;background:#fff;font-size:12px;color:var(--ink)}
.etiquetas a svg{color:var(--muted)}
.etiquetas a:hover{border-color:var(--g2);color:var(--g2)}
.etiquetas a:hover svg{color:var(--g2)}
.etiquetas .tudo{border-style:dashed;color:var(--muted);font-weight:700}

.catalogoGrid .empty{padding:60px 0}
.catalogoGrid .more{margin-top:34px}

/* ------------------------------------------------------------------ mobile */
.filtrosFundo{position:fixed;inset:0;z-index:88;background:#04341ea8;opacity:0;visibility:hidden;transition:.25s}
.filtrosFundo.ativo{opacity:1;visibility:visible}

@media(max-width:1050px){
    .catalogoGrid{grid-template-columns:240px 1fr;gap:28px}
}

@media(max-width:860px){
    .catalogoGrid{grid-template-columns:1fr;gap:0}
    .abrirFiltros{display:inline-flex}
    .fecharFiltros{display:block}
    .filtrosTopo .limpar{margin-left:auto}
    .filtros{position:fixed;top:0;left:0;bottom:0;width:min(330px,88vw);z-index:90;border:0;border-radius:0;overflow-y:auto;
        transform:translateX(-103%);transition:transform .28s ease;box-shadow:0 0 45px #00000038}
    .filtros.aberto{transform:none}
    .rolavel{max-height:none}
    .resultadosTopo{flex-direction:row-reverse;justify-content:space-between;flex-wrap:wrap}
    .ordenar{order:1;width:100%}
    .ordenar select{flex:1}
}
