/* Faceted product listing (plain CSS; no build step required) */
.cat-wrap{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:1.5rem}
@media(min-width:1024px){.cat-wrap{grid-template-columns:16rem 1fr}}
.cat-side{font-size:.875rem}
.cat-side__inner{display:flex;flex-direction:column;gap:.25rem}
.cat-facet{border-top:1px solid var(--color-line);padding:.75rem 0}
.cat-facet summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;font-weight:600;color:var(--color-paper);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.cat-facet summary::-webkit-details-marker{display:none}
.cat-facet summary::after{content:"+";color:var(--color-mute)}
.cat-facet[open] summary::after{content:"–"}
.cat-facet ul{margin-top:.5rem;display:flex;flex-direction:column;gap:.3rem;max-height:16rem;overflow:auto}
.cat-opt{display:flex;align-items:center;gap:.5rem;color:var(--color-mute);cursor:pointer}
.cat-opt:hover{color:var(--color-paper)}
.cat-opt input{accent-color:var(--color-copper)}
.cat-opt.is-on{color:var(--color-paper)}
.cat-opt .cat-count{margin-left:auto;font-size:.75rem;color:var(--color-mute)}
.cat-range{display:flex;gap:.5rem;margin-top:.5rem}
.cat-range input{width:100%}
.cat-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;justify-content:space-between}
.cat-bar__ctrls{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.cat-bar select{width:auto}
.cat-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}
.cat-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--color-line);border-radius:999px;padding:.2rem .65rem;font-size:.75rem;color:var(--color-paper)}
.cat-chip:hover{border-color:var(--color-copper)}
.cat-chip span{color:var(--color-copper)}
.cat-chip--clear{color:var(--color-copper);border-style:dashed}
.cat-grid{display:grid;gap:1rem;margin-top:1rem}
@media(min-width:768px){.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1280px){.cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cat-meta{display:flex;flex-wrap:wrap;gap:.35rem .75rem;margin-top:.6rem;font-size:.72rem;color:var(--color-mute)}
.cat-meta b{color:var(--color-paper);font-weight:500}
.cat-filter-btn{display:inline-flex}
.cat-scrim{display:none}
.cat-wrap>div:last-child{min-width:0}
.cat-drawer-head{display:none}
@media(min-width:1024px){.cat-filter-btn{display:none}}
@media(max-width:1023px){
  .cat-side{position:fixed;inset:0 auto 0 0;width:min(22rem,88vw);background:var(--color-ink-2);border-right:1px solid var(--color-line);padding:1rem;overflow:auto;z-index:60;transform:translateX(-105%);transition:transform .2s ease}
  .cat-side.is-open{transform:none}
  .cat-drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}
  .cat-scrim{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:55;display:none}
  .cat-scrim.is-open{display:block}
}
