.vd-catalog{ display:flex; max-width:var(--wrap); margin:0 auto; border-top:1px solid var(--line); }

/* ─── Sidebar ─────────────────────────────────────────────── */
.vd-sidebar{ width:280px; flex-shrink:0; padding:32px 28px; border-right:1px solid var(--line); }
.vd-sidebar__head{ margin-bottom:8px; }
.vd-sidebar__title-row{ display:flex; align-items:center; gap:8px; }
.vd-sidebar__title{ font-size:22px; font-weight:600; }
.vd-sidebar__title-row .vd-chip{ margin-left:auto; }
.vd-sidebar__reset{ width:100%; margin-top:14px; }
.vd-sidebar__reset[disabled]{ opacity:.5; cursor:default; }

.vd-filter{ padding:20px 0; border-bottom:1px solid var(--line); }
.vd-filter__head{ display:flex; align-items:center; justify-content:space-between; cursor:pointer; }
.vd-filter__head span{ font-size:14px; font-weight:600; }
.vd-filter__head svg{ transition:transform .2s; }
.vd-filter:not(.is-open) .vd-filter__head svg{ transform:rotate(-90deg); }
.vd-filter__body{ margin-top:14px; }
.vd-filter:not(.is-open) .vd-filter__body{ display:none; }

.vd-price-inputs{ display:flex; gap:8px; }
.vd-price-inputs input{ flex:1; width:100%; padding:8px 12px; border:1px solid var(--line-2); border-radius:8px; font-size:13px; outline:none; }
.vd-price-inputs input:focus{ border-color:var(--green); }

.vd-check{ display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.vd-check__box{ width:18px; height:18px; border-radius:5px; border:1px solid var(--line-2); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.vd-check.is-on .vd-check__box{ background:var(--green); border-color:var(--green); }
.vd-check__label{ font-size:13.5px; flex:1; color:var(--ink-2); }
.vd-check.is-on .vd-check__label{ color:var(--ink); font-weight:500; }
.vd-check__count{ font-size:12px; color:var(--ink-soft); }

/* ─── Main ────────────────────────────────────────────────── */
.vd-catalog__main{ flex:1; min-width:0; }
.vd-toolbar{ padding:40px 40px 24px; }
.vd-toolbar__top{ display:flex; align-items:flex-end; justify-content:space-between; gap:24px; }
.vd-toolbar__h1{ font-size:56px; margin:0; letter-spacing:-.04em; }
.vd-toolbar__count{ font-size:13.5px; color:var(--ink-soft); margin-top:8px; }
.vd-toolbar__sort{ display:flex; align-items:center; gap:8px; }
.vd-toolbar__sort-label{ font-size:13px; color:var(--ink-soft); }
.vd-select{ border:1px solid var(--line-2); background:var(--white); padding:8px 14px; border-radius:999px; font:500 13px/1 'Geist',sans-serif; color:var(--ink); cursor:pointer; }

.vd-tabs-row{ display:flex; gap:8px; margin-top:28px; flex-wrap:wrap; }
.vd-tab{ padding:7px 14px; font-size:13px; cursor:pointer; }

.vd-active-bar{ padding:14px 40px; display:flex; flex-wrap:wrap; gap:8px; align-items:center; background:var(--paper); border-top:1px solid var(--line); }
.vd-active-bar__label{ font-size:12px; color:var(--ink-soft); margin-right:6px; }
.vd-active-bar__chip{ cursor:pointer; }
.vd-active-bar__x{ font-size:14px; line-height:.8; color:var(--green-dark); }
.vd-active-bar__reset{ font-size:12.5px; color:var(--green); font-weight:500; margin-left:6px; cursor:pointer; }

.vd-catalog__grid-wrap{ padding:32px 40px 16px; }

/* ─── Pagination ──────────────────────────────────────────── */
.vd-pagination{ display:flex; justify-content:center; align-items:center; gap:6px; padding:48px 0 16px; }
.vd-pagination__item a, .vd-pagination__item span{ width:40px; height:40px; border-radius:999px; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:500; color:var(--ink-2); }
.vd-pagination__item a:hover{ background:var(--paper); }
.vd-pagination__item.is-current span{ background:var(--ink); color:var(--white); }
.vd-pagination__item .next, .vd-pagination__item .prev{ border:1px solid var(--line-2); }
.vd-pagination__item .prev svg{ transform:rotate(180deg); }

.vd-empty{ padding:60px 0 40px; text-align:center; color:var(--ink-soft); font-size:16px; }
.vd-empty a{ color:var(--green); }

/* Mobile filters toggle */
.vd-filters-toggle{ display:none; }

@media (max-width:1024px){
  .vd-toolbar{ padding:32px 24px 20px; }
  .vd-toolbar__h1{ font-size:44px; }
  .vd-catalog__grid-wrap{ padding:24px; }
  .vd-active-bar{ padding:14px 24px; }
  .vd-catalog{ position:relative; }
  .vd-sidebar{ position:fixed; top:0; left:0; height:100%; z-index:90; background:var(--white); transform:translateX(-100%); transition:transform .25s; box-shadow:0 0 40px rgba(15,26,20,.15); overflow:auto; }
  .vd-sidebar.is-open{ transform:translateX(0); }
  .vd-filters-toggle{ display:inline-flex; margin:20px 24px 0; }
}
@media (max-width:640px){
  .vd-toolbar__top{ flex-direction:column; align-items:flex-start; gap:14px; }
  .vd-toolbar__h1{ font-size:36px; }
}
