
    .shop-layout{display:grid; grid-template-columns:250px 1fr; gap:34px; align-items:start;}
    @media (max-width:900px){ .shop-layout{grid-template-columns:1fr;} }
    .filter-box{background:var(--panel); border:1px solid var(--line-soft); border-radius:var(--radius-m); padding:20px; position:sticky; top:96px;}
    .filter-box h4{font-size:13.5px; color:var(--plum-deep); margin-bottom:12px; padding-bottom:10px; border-bottom:1px solid var(--line-soft);}
    .filter-group{margin-bottom:22px;}
    .filter-group label{display:flex; align-items:center; gap:8px; font-size:13.5px; color:var(--ink-soft); margin-bottom:9px; cursor:pointer;}
    .filter-group input[type=checkbox]{width:15px; height:15px; accent-color:var(--plum-deep);}
    .color-filter{display:flex; flex-wrap:wrap; gap:8px;}
    .color-filter button{width:24px; height:24px; border-radius:50%; border:2px solid #fff; box-shadow:0 0 0 1px var(--line); }
    .color-filter button.active{box-shadow:0 0 0 2px var(--plum-deep);}
    .size-filter{display:flex; flex-wrap:wrap; gap:8px;}
    .size-filter button{min-width:36px; height:32px; padding:0 6px; border:1px solid var(--line); background:#fff; border-radius:var(--radius-s); font-size:12.5px;}
    .size-filter button.active{border-color:var(--plum-deep); background:var(--plum-deep); color:#fff;}
    .range-inputs{display:flex; gap:8px; align-items:center;}
    .range-inputs input{width:100%; border:1px solid var(--line); border-radius:var(--radius-s); padding:8px; font-size:12.5px; font-family:inherit;}
    .toolbar{display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; flex-wrap:wrap; gap:14px;}
    .toolbar .count{font-size:13px; color:var(--ink-soft);}
    .toolbar select{border:1px solid var(--line); border-radius:var(--radius-s); padding:9px 12px; font-family:inherit; font-size:13px; background:#fff;}
    .mobile-filter-btn{display:none;}
    .filter-box .close-drawer{display:none;}
    @media (max-width:900px){
      .mobile-filter-btn{display:inline-flex;}
      .filter-box{position:fixed; top:0; bottom:0; right:0; left:auto; width:82%; max-width:320px; z-index:70; border-radius:0; transform:translateX(100%); visibility:hidden; transition:transform .3s ease, visibility .3s; overflow-y:auto; padding:20px;}
      .filter-box.open{transform:translateX(0); visibility:visible;}
      .filter-box .close-drawer{display:block;}
    }
    .pagination{display:flex; justify-content:center; gap:8px; margin-top:38px;}
    .pagination button{width:38px; height:38px; border:1px solid var(--line); background:#fff; border-radius:var(--radius-s); font-size:13.5px;}
    .pagination button.active{background:var(--plum-deep); color:#fff; border-color:var(--plum-deep);}
