.catalog-main{background:#f5f6f7;min-height:70vh;padding-bottom:72px}
.catalog-heading{padding:28px 0 24px}.catalog-heading h1{font-size:clamp(1.7rem,3vw,2.6rem);font-weight:500;margin:12px 0;color:var(--blue)}
.catalog-browser{display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;align-items:start;scroll-margin-top:100px}
.category-sidebar{background:#fff;padding:18px 14px;position:sticky;top:100px;max-height:calc(100vh - 120px);overflow:auto;scrollbar-width:thin;border:1px solid #e8ebef;border-radius:4px}
.category-sidebar h2{font-size:1rem;margin:0 0 16px;color:var(--blue)}
.category-tree{font-size:.875rem;color:var(--blue)}.category-tree a{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex:1;min-width:0;padding:11px 5px;line-height:1.5}
.category-tree a:hover{background:#f0f4f9;text-decoration:underline}.category-tree a[aria-current="true"]{font-weight:700;background:#eaf0f9;text-decoration:underline;text-underline-offset:3px}
.tree-count{font-size:.75rem;color:#778095;flex-shrink:0;font-weight:400}.tree-all{margin-bottom:8px;border-bottom:1px solid var(--line)}
.category-tree summary{list-style:none;display:flex;align-items:center;gap:7px;cursor:pointer}.category-tree summary::-webkit-details-marker{display:none}
.branch-symbol{width:21px;height:21px;border:1px solid #7181a1;display:grid;place-content:center;flex-shrink:0;border-radius:3px}.branch-symbol:after{content:'+';font-size:16px;line-height:1}
.category-tree details[open]>summary>.branch-symbol:after{content:'−'}
.tree-children{border-left:1px solid #9ba9c0;margin-left:5px;padding-left:10px}.tree-unavailable{display:flex;justify-content:space-between;flex:1;padding:11px 5px;color:#8a929f}
.catalog-results{min-width:0}.tree-toolbar{display:flex;gap:12px;margin-bottom:22px;align-items:center}.filter-toggle{border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--blue);padding:12px 16px;white-space:nowrap;cursor:pointer;min-height:46px}
.tree-search{flex:1}.tree-search input{width:100%;min-height:46px;background:#fff;border:1px solid var(--line);border-radius:3px;padding:10px 14px;font-size:1rem}
.tree-result-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:0 0 20px}.tree-result-head h2{margin:0;color:var(--blue);font-size:1.25rem;font-weight:500}.tree-result-head span{font-size:.875rem;color:var(--muted);flex-shrink:0}
.catalog-browser .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.catalog-browser .product-card{border:0;border-radius:5px;overflow:hidden}.catalog-browser .product-card .image{background:#fff;padding:14px;aspect-ratio:1.12}.catalog-browser .product-card .body{padding:18px}.catalog-browser .product-card h3{font-size:1rem}.catalog-browser .product-card p{font-size:.875rem;line-height:1.65}
.catalog-browser.categories-hidden{grid-template-columns:minmax(0,1fr)}.catalog-browser.categories-hidden .category-sidebar{display:none}.catalog-browser.categories-hidden .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.category-tree a:focus-visible,.category-tree summary:focus-visible,.filter-toggle:focus-visible{outline:2px solid #087ea9;outline-offset:2px}
@media(min-width:1600px){.catalog-main .container{--max:1500px}.catalog-browser .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1050px){.catalog-browser{grid-template-columns:235px minmax(0,1fr);gap:18px}.catalog-browser .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.catalog-browser{display:block}.category-sidebar{position:static;max-height:55vh;margin-bottom:20px}.tree-toolbar{flex-wrap:wrap}.tree-search{min-width:170px}.tree-result-head{align-items:start;flex-direction:column;gap:6px}.catalog-browser .product-grid,.catalog-browser.categories-hidden .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-browser .product-card .body{padding:12px}.catalog-heading{padding-top:18px}}
@media(max-width:440px){.catalog-browser .product-grid,.catalog-browser.categories-hidden .product-grid{grid-template-columns:1fr}}
