.cat-layout{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:start!important}
.cat-filters{background:#fff;border:1px solid #e8ebe7;border-radius:18px;padding:20px;position:sticky;top:90px}
.cat-filters h2{margin:0 0 16px;font-size:16px;letter-spacing:-.3px}
.filter-group{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #eef1ee}
.filter-group:last-of-type{border-bottom:0}
.filter-group legend,.filter-label{display:block;font-size:12px;font-weight:800;color:#7c887f;letter-spacing:.4px;text-transform:uppercase;margin-bottom:10px}
.filter-group label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;margin:0 0 8px;cursor:pointer}
.filter-group input[type=checkbox]{width:auto;margin:0;accent-color:#1d2923}
.price-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.price-inputs input{width:100%;margin:0;padding:10px 12px;border:1px solid #e1e6e1;border-radius:10px;font:inherit}
.filter-actions{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.filter-actions .btn{width:100%}
.cat-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.cat-toolbar select{padding:10px 14px;border:1px solid #e1e6e1;border-radius:10px;font:inherit;font-weight:700;background:#fff}
.cat-count{font-size:13px;color:#7c887f;font-weight:600}
.cat-empty{padding:40px;text-align:center;background:#fff;border:1px dashed #dce2dc;border-radius:16px;color:#7c887f}
@media(max-width:900px){
  .cat-layout{grid-template-columns:1fr}
}

.tag-cloud{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 12px;max-width:700px}
.tag-cloud-item{display:inline-block;padding:7px 14px;border-radius:20px;font-size:13px;font-weight:700;text-decoration:none;background:#3fa4e1;color:#fff!important;border:0;transition:filter .15s,transform .15s}
.tag-cloud-item:hover{filter:brightness(1.08);color:#fff!important}
.tag-cloud-item.is-active{background:#1d6fa8;box-shadow:0 0 0 2px rgba(63,164,225,.35)}
.tag-cloud-reset{display:inline-block;padding:7px 14px;border-radius:20px;font-size:13px;font-weight:700;color:#a53d3d;text-decoration:none;background:#fdecec}
.cat-filters{background:#fff;border:1px solid #e5ebe6;border-radius:20px;padding:22px 20px;box-shadow:0 10px 28px rgba(29,41,35,.05);position:sticky;top:90px}
.cat-filters h2{margin:0 0 18px;font-size:15px;letter-spacing:-.2px;font-weight:800}
.cat-filters .filter-group{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #eef1ee}
.cat-filters .filter-group:last-of-type{border-bottom:0;margin-bottom:12px;padding-bottom:0}
.cat-filters .filter-label{display:block;font-size:11px;font-weight:800;color:#7c887f;letter-spacing:.6px;text-transform:uppercase;margin-bottom:10px}
.cat-filters .filter-group label{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;margin:0 0 9px;cursor:pointer;color:#2a342e}
.cat-filters .filter-group input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:#3fa4e1;flex-shrink:0}
.cat-filters .filter-price{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.cat-filters .filter-price input,.cat-filters select{width:100%;padding:10px 12px;border:1px solid #dce2dc;border-radius:10px;font:inherit;font-size:13px;background:#fafbfa}
.cat-filters .filter-actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.cat-filters .filter-actions .btn{width:100%;text-align:center;justify-content:center}


.categories-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cat-card{background:#fff;border:1px solid #e7e8e3;border-radius:18px;padding:28px;transition:.25s;display:block;color:inherit;text-decoration:none}
.cat-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(30,45,36,.08)}
.cat-card-img{margin:-28px -28px 16px;border-radius:18px 18px 0 0;overflow:hidden;height:140px;background:#edf0eb}
.cat-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.cat-card h3{font-size:18px;margin:0 0 10px}
.cat-card p{font-size:13px;color:#78827c;line-height:1.6;margin:0}
.cat-card .cat-meta{margin-top:12px;font-size:12px;font-weight:700;color:#4778eb}
@media(max-width:900px){.categories-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.categories-grid{grid-template-columns:1fr}}
