/* cw-category.css — Category listing (/<slug>/) by macket catalog-category.html, gated body.cwnew.
   Maps macket .filters/.cat-layout/.pcard/.pager onto live .cw-filter*/.shop-all-items/.pcard. */

/* hide legacy slider + h1 on shop category pages under the flag (macket head renders in cwnew-cat).
   P30 Task2.1: H1 also gated in list.php (PHP) — this descendant selector is belt-and-suspenders
   (legacy h1 is nested in .margin-top-15, the old `>` direct-child rule missed it → 2 H1). */
body.cwnew.cw-shop .shop-list-slider{display:none;}
body.cwnew.cw-shop .section-content h1.margin-top-15{display:none;}

body.cwnew .cwnew-cat{display:block;max-width:1720px;margin:0 auto;padding:0 clamp(24px,5vw,80px);}
@media (min-width:1680px){body.cwnew .cwnew-cat{max-width:1860px;}}

/* crumbs + page head */
body.cwnew .cwnew-cat .crumbs{font-family:"PT Mono",monospace;font-size:12px;color:var(--ink-60);display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding-top:26px;}
body.cwnew .cwnew-cat .crumbs a{color:var(--violet);text-decoration:none;}
body.cwnew .cwnew-cat .crumbs a:hover{text-decoration:underline;}
body.cwnew .cwnew-cat .crumbs .sep{color:var(--ink-40);}
body.cwnew .cwnew-cat .crumbs .cur{color:var(--ink-60);}
body.cwnew .cwnew-cat .page-head{padding-top:22px;padding-bottom:10px;}
body.cwnew .cwnew-cat .page-head .eyebrow{font-family:"PT Mono",monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:var(--violet);margin-bottom:14px;display:flex;align-items:center;gap:10px;}
body.cwnew .cwnew-cat .page-head .eyebrow::before{content:"";width:40px;height:2px;background:var(--violet);}
body.cwnew .cwnew-cat .page-head h1{font-family:"Inter Tight",sans-serif;font-weight:800;font-size:clamp(27px,3.6vw,42px);line-height:1.05;letter-spacing:-0.02em;color:var(--ink);}
body.cwnew .cwnew-cat .page-head .count{margin-top:12px;font-family:"PT Mono",monospace;font-size:13px;color:var(--ink-40);}

/* layout: sidebar + main */
body.cwnew .cwnew-cat .cat-layout{display:grid;grid-template-columns:248px 1fr;gap:clamp(24px,3vw,44px);align-items:start;padding:24px 0 40px;}
body.cwnew .cwnew-cat .cw-cat-main{min-width:0;}
body.cwnew .cwnew-cat .cw-cat-nofilter{padding:24px 0 40px;}

/* filter sidebar — macket .filters look on the live .cw-filter* classes */
body.cwnew .cwnew-cat .cw-filter{border:1px solid var(--line);background:var(--paper);position:sticky;top:88px;}
body.cwnew .cwnew-cat .cw-filter__form{display:block;}
body.cwnew .cwnew-cat .cw-filter__head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line);}
body.cwnew .cwnew-cat .cw-filter__title{font-family:"Inter Tight",sans-serif;font-weight:800;font-size:15px;color:var(--ink);}
body.cwnew .cwnew-cat .cw-filter__reset{font-size:12px;color:var(--violet);text-decoration:none;}
body.cwnew .cwnew-cat .cw-filter__group{padding:16px 18px;border-bottom:1px solid var(--line);}
body.cwnew .cwnew-cat .cw-filter__unit,body.cwnew .cwnew-cat .cw-filter__group > b,body.cwnew .cwnew-cat .cw-filter__gtitle{font-family:"PT Mono",monospace;font-size:12px;letter-spacing:0.05em;text-transform:uppercase;color:var(--ink-40);margin:0 0 12px;display:block;}
body.cwnew .cwnew-cat .cw-filter__opt{display:flex;align-items:center;gap:9px;padding:6px 0;font-size:14px;color:var(--ink);cursor:pointer;}
body.cwnew .cwnew-cat .cw-filter__opt input{width:16px;height:16px;accent-color:var(--violet);flex:0 0 auto;}
body.cwnew .cwnew-cat .cw-filter__lbl{flex:1 1 auto;min-width:0;}
body.cwnew .cwnew-cat .cw-filter__cnt{margin-left:auto;font-family:"PT Mono",monospace;font-size:11px;color:var(--ink-40);}
body.cwnew .cwnew-cat .cw-filter__apply{display:inline-flex;align-items:center;justify-content:center;width:100%;font-family:"Inter Tight",sans-serif;font-weight:700;font-size:14px;padding:12px 18px;border:1px solid var(--violet);background:var(--violet);color:#fff;cursor:pointer;margin:14px 18px 18px;width:calc(100% - 36px);}
body.cwnew .cwnew-cat .cw-filter__apply:hover{background:#4a3b85;border-color:#4a3b85;}

/* mobile filters toggle */
body.cwnew .cwnew-cat .filters-toggle{display:none;align-items:center;justify-content:space-between;gap:10px;width:100%;font-family:"Inter Tight",sans-serif;font-weight:700;font-size:15px;color:var(--ink);background:var(--paper);border:1px solid var(--ink);padding:14px 18px;cursor:pointer;margin-bottom:16px;}
body.cwnew .cwnew-cat .filters-toggle::after{content:"+";font-family:"PT Mono",monospace;color:var(--violet);font-size:20px;line-height:1;}
body.cwnew .cwnew-cat .filters-toggle[aria-expanded=true]::after{content:"\2212";}

/* listing top: count + sort */
body.cwnew .cwnew-cat .listing-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px;}
body.cwnew .cwnew-cat .listing-top .lt-count{font-family:"PT Mono",monospace;font-size:13px;color:var(--ink-40);}
body.cwnew .cwnew-cat .sortbar{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink-60);}
body.cwnew .cwnew-cat .sortbar select{font-family:"Inter",sans-serif;font-size:14px;padding:9px 12px;border:1px solid var(--line);background:var(--paper);color:var(--ink);}

/* product grid + cards (.pcard) */
body.cwnew .cwnew-cat .shop-all-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin:0;}
body.cwnew .cwnew-cat .pcard{background:var(--paper);display:flex;flex-direction:column;padding:18px;transition:background .15s;min-width:0;}
body.cwnew .cwnew-cat .pcard:hover{background:#fff;}
body.cwnew .cwnew-cat .pcard .ph-img{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;background:var(--paper);border:1px solid var(--line);overflow:hidden;color:var(--ink-40);flex-direction:column;gap:8px;}
body.cwnew .cwnew-cat .pcard .ph-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;}
body.cwnew .cwnew-cat .pcard .ph-img .cap{font-family:"PT Mono",monospace;font-size:11px;}
body.cwnew .cwnew-cat .pcard .art{font-family:"PT Mono",monospace;font-size:11px;color:var(--ink-40);margin:12px 0 6px;}
body.cwnew .cwnew-cat .pcard h3{font-family:"Inter Tight",sans-serif;font-size:16px;font-weight:700;line-height:1.25;margin:0;overflow-wrap:anywhere;}
body.cwnew .cwnew-cat .pcard h3 a{color:inherit;text-decoration:none;}
body.cwnew .cwnew-cat .pcard h3 a:hover{color:var(--violet);}
/* price from buy_form inside .pcard */
body.cwnew .cwnew-cat .pcard .pcard-price{margin:12px 0 12px;flex:1 1 auto;display:flex;flex-direction:column;justify-content:flex-end;}
body.cwnew .cwnew-cat .pcard .product-id-price{font-family:"PT Mono",monospace;font-size:16px;color:var(--violet);}
body.cwnew .cwnew-cat .pcard .product-id-price__num{font-weight:400;}
body.cwnew .cwnew-cat .pcard .shop-price{display:block;}
/* the КП button from buy_form */
body.cwnew .cwnew-cat .pcard .cw-btn-cart{display:inline-flex;align-items:center;justify-content:center;font-family:"Inter Tight",sans-serif;font-weight:700;font-size:13px;padding:9px 14px;border:1px solid var(--violet);background:var(--violet);color:#fff;text-decoration:none;margin-top:8px;}
body.cwnew .cwnew-cat .pcard .cw-btn-cart:hover{background:#4a3b85;border-color:#4a3b85;}
body.cwnew .cwnew-cat .pcard .acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
body.cwnew .cwnew-cat .pcard .acts .btn.sm{display:inline-flex;align-items:center;justify-content:center;font-family:"Inter Tight",sans-serif;font-weight:700;font-size:13px;padding:9px 14px;border:1px solid var(--violet);background:transparent;color:var(--violet);text-decoration:none;}
body.cwnew .cwnew-cat .pcard .acts .btn.sm:hover{background:var(--violet);color:#fff;}
/* the no-price "Цена по запросу" pill from buy_form */
body.cwnew .cwnew-cat .pcard .btn-product-item-no-price{font-family:"PT Mono",monospace;font-size:12px;color:var(--ink-60);padding:6px 0;}

/* paginator (Diafan) -> macket .pager */
body.cwnew .cwnew-cat .paginator,body.cwnew .cwnew-cat .navigation,body.cwnew .cwnew-cat .pages{display:flex;gap:6px;justify-content:center;margin-top:32px;flex-wrap:wrap;list-style:none;padding:0;}
body.cwnew .cwnew-cat .paginator a,body.cwnew .cwnew-cat .paginator span,body.cwnew .cwnew-cat .navigation a,body.cwnew .cwnew-cat .navigation span{font-family:"PT Mono",monospace;font-size:13px;min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);text-decoration:none;color:var(--ink);padding:0 8px;}
body.cwnew .cwnew-cat .paginator .active,body.cwnew .cwnew-cat .paginator .current,body.cwnew .cwnew-cat .navigation .active{background:var(--violet);color:#fff;border-color:var(--violet);}
body.cwnew .cwnew-cat .paginator a:hover,body.cwnew .cwnew-cat .navigation a:hover{border-color:var(--violet);color:var(--violet);}

/* SEO category text */
body.cwnew .cwnew-cat .text_theme_nsv{margin-top:36px;font-size:15px;line-height:1.6;color:var(--ink-60);}

@media (max-width:980px){body.cwnew .cwnew-cat .cat-layout{grid-template-columns:1fr;}body.cwnew .cwnew-cat .cw-filter{position:static;}body.cwnew .cwnew-cat .shop-all-items{grid-template-columns:repeat(2,minmax(0,1fr));}body.cwnew .cwnew-cat .filters-toggle{display:flex;}body.cwnew .cwnew-cat .cw-filter{display:none;}body.cwnew .cwnew-cat .cw-filter.open{display:block;}}
@media (max-width:620px){body.cwnew .cwnew-cat .shop-all-items{grid-template-columns:1fr;}}

/* P27: filter group titles (legend) visible like macket .filters h3; .sub under H1 */
body.cwnew .cwnew-cat .cw-filter__group{border:0;margin:0;padding:16px 18px;border-bottom:1px solid var(--line);}
body.cwnew .cwnew-cat .cw-filter__group legend{display:block;width:100%;float:none;padding:0;margin:0 0 12px;font-family:"PT Mono",monospace;font-size:12px;letter-spacing:0.05em;text-transform:uppercase;color:var(--ink-40);}
body.cwnew .cwnew-cat .cw-filter__group legend .cw-filter__unit{text-transform:none;color:var(--ink-60);}
body.cwnew .cwnew-cat .page-head .sub{margin-top:15px;font-size:16px;line-height:1.5;color:var(--ink-60);max-width:64ch;}

/* P28: .pcard verbatim from catalog-category.html macket (.ch/.price/.acts btn sm) */
body.cwnew .cwnew-cat .pcard{background:var(--paper);display:flex;flex-direction:column;padding:18px;transition:background .15s;min-width:0;}
body.cwnew .cwnew-cat .pcard:hover{background:#fff;}
body.cwnew .cwnew-cat .pcard .ph-img{aspect-ratio:4/3;border:1px solid var(--line);margin-bottom:0;}
body.cwnew .cwnew-cat .pcard .art{font-family:"PT Mono",monospace;font-size:11px;color:var(--ink-40);margin:12px 0 6px;min-height:1em;}
body.cwnew .cwnew-cat .pcard h3{font-family:"Inter Tight",sans-serif;font-size:16px;font-weight:700;line-height:1.25;margin:0;overflow-wrap:anywhere;}
body.cwnew .cwnew-cat .pcard h3 a{color:inherit;text-decoration:none;}
body.cwnew .cwnew-cat .pcard h3 a:hover{color:var(--violet);}
body.cwnew .cwnew-cat .pcard .ch{margin-top:9px;font-size:13px;color:var(--ink-60);line-height:1.45;flex:1 1 auto;}
body.cwnew .cwnew-cat .pcard .price{font-family:"PT Mono",monospace;font-size:15px;color:var(--ink);margin:14px 0 12px;}
body.cwnew .cwnew-cat .pcard .price b{color:var(--violet);font-weight:400;}
body.cwnew .cwnew-cat .pcard .price--req{font-size:13px;color:var(--ink-60);}
body.cwnew .cwnew-cat .pcard .acts{display:flex;gap:8px;flex-wrap:wrap;}
body.cwnew .cwnew-cat .pcard .acts .btn.sm{display:inline-flex;align-items:center;justify-content:center;font-family:"Inter Tight",sans-serif;font-weight:700;padding:9px 14px;font-size:13px;border:1px solid var(--violet);background:var(--violet);color:#fff;text-decoration:none;}
body.cwnew .cwnew-cat .pcard .acts .btn.sm:hover{background:#4a3b85;border-color:#4a3b85;}
body.cwnew .cwnew-cat .pcard .acts .btn.ghost.sm{background:transparent;color:var(--violet);}
body.cwnew .cwnew-cat .pcard .acts .btn.ghost.sm:hover{background:var(--violet);color:#fff;}

/* P29: filter groups Категория/Наличие/Бренд (macket .filters h3 + category links) */
body.cwnew .cwnew-cat .cw-filter__gh{font-family:"PT Mono",monospace;font-size:12px;letter-spacing:0.05em;text-transform:uppercase;color:var(--ink-40);margin:0 0 12px;}
body.cwnew .cwnew-cat .cw-filter__catlink{display:flex;align-items:center;gap:9px;padding:6px 0;font-size:14px;color:var(--ink);text-decoration:none;}
body.cwnew .cwnew-cat .cw-filter__catlink:hover{color:var(--violet);}
body.cwnew .cwnew-cat .cw-filter__catlink.is-active{color:var(--violet);font-weight:600;}
body.cwnew .cwnew-cat .cw-filter__catlink .cw-filter__cnt{margin-left:auto;}

/* P30 Task2.3: легаси SEO-описание категории (.text_theme_nsv.width-100) рендерится сиблингом
   ПОСЛЕ .cwnew-cat → под full-width cw-shop растягивался на всю ширину (1438px). Вгоняем в тот же
   контейнер, что и контент страницы (макет: текст в рамках контента). */
body.cwnew.cw-shop .text_theme_nsv.width-100{max-width:1720px;margin-left:auto;margin-right:auto;padding-left:clamp(24px,5vw,80px);padding-right:clamp(24px,5vw,80px);box-sizing:border-box;font-size:15px;line-height:1.6;color:var(--ink-60);}
@media (min-width:1680px){body.cwnew.cw-shop .text_theme_nsv.width-100{max-width:1860px;}}

/* P30 Task2.4: фильтр дословно к макету catalog-category.html — .fg padding:18px, последняя группа без нижней границы */
body.cwnew .cwnew-cat .cw-filter__group{padding:18px;}
body.cwnew .cwnew-cat .cw-filter__group:last-of-type{border-bottom:0;}

/* P31 Task3.2: ШРИФТ фильтра к макету (.filters label = Inter 14px). Легаси-правило задаёт спану
   .cw-filter__lbl 18px — наследование от .cw-filter__opt(14px) проигрывает прямому правилу, поэтому
   ставим прямое правило на спан. Заголовки групп/единицы = PT Mono 12px (как .filters h3). */
body.cwnew .cwnew-cat .cw-filter__lbl{font-family:"Inter",sans-serif;font-size:14px;line-height:1.3;}
body.cwnew .cwnew-cat .cw-filter__opt{font-size:14px;}
body.cwnew .cwnew-cat .cw-filter__catlink{font-family:"Inter",sans-serif;font-size:14px;}
body.cwnew .cwnew-cat .cw-filter__gh,
body.cwnew .cwnew-cat .cw-filter__group legend{font-family:"PT Mono",monospace;font-size:12px;letter-spacing:0.05em;text-transform:uppercase;}
body.cwnew .cwnew-cat .cw-filter__cnt{font-family:"PT Mono",monospace;font-size:11px;}

/* P33 Блок6.1: листинг КОМПАКТНЕЕ (меньше padding/высота, .ch в 2 строки) + бейдж НАЛИЧИЕ на карточке. */
body.cwnew .cwnew-cat .pcard{padding:13px;}
body.cwnew .cwnew-cat .pcard h3{font-size:15px;line-height:1.22;}
body.cwnew .cwnew-cat .pcard .art{margin:10px 0 5px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
body.cwnew .cwnew-cat .pcard .cw-stock{font-family:"PT Mono",monospace;font-size:10.5px;color:#1F8A5B;letter-spacing:.02em;}
body.cwnew .cwnew-cat .pcard .cw-stock--no{color:var(--ink-40);}
body.cwnew .cwnew-cat .pcard .ch{margin-top:7px;font-size:12.5px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
body.cwnew .cwnew-cat .pcard .price{margin:10px 0 10px;font-size:14px;}
body.cwnew .cwnew-cat .pcard .acts{gap:7px;}
body.cwnew .cwnew-cat .pcard .acts .btn.sm{padding:8px 12px;font-size:12px;}
