/* Scoped catalogue density. Header, footer and menu are intentionally untouched. */
.catalog-v3.catalog-page-container { width: 100%; max-width: 1360px !important; padding: 24px; margin-top: 0; display: grid; grid-template-columns: 260px minmax(0,1fr); gap: 24px; align-items: start; color: #202428; --sidebar-width: 260px; --content-gap: 24px; --accent-color: #ff6b0a; --subcategory-panel-width: 470px; }
.catalog-v3::before, .catalog-v3::after { display: none; }
.catalog-v3 .catalog-intro { grid-column: 1 / -1; min-width: 0; }
.catalog-v3 .breadcrumb { padding: 0; margin: 0 0 12px; background: transparent; font-size: 12px; color: #75808d; }
.catalog-v3 .breadcrumb a { color: #75808d; }
.catalog-v3 .breadcrumb .active { color: #202428; }
.catalog-v3 .page-title { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.catalog-v3 .page-title h1 { margin: 0; font-size: 34px; font-weight: 800; line-height: 1.15; color: #202428; }
.catalog-v3 .product-count { font-size: 13px; color: #75808d; }
.catalog-v3 .catalog-description { margin: 12px 0 0; font-size: 14px; line-height: 1.5; color: #75808d; max-width: 90ch; }
.catalog-v3 .category-child-tiles { display: flex; gap: 10px; overflow-x: auto; padding: 2px 0 6px; margin: 20px 0 0; scroll-snap-type: x proximity; }
.catalog-v3 .category-child-tile { flex: 0 0 145px; height: 145px; padding: 10px; display: flex; flex-direction: column; gap: 6px; border: 1px solid #e8ecf0; border-radius: 10px; background: #f5f6f8; scroll-snap-align: start; text-decoration: none; box-shadow: none; }
.catalog-v3 .category-child-tile:hover { border-color: #ff6b0a; transform: none; box-shadow: 0 3px 8px rgba(32,36,40,.06); }
.category-preview-image { display: grid; place-items: center; height: 85px; width: 100%; min-height: 0; }
.category-preview-image img { width: 100%; height: 85px; object-fit: contain; }
.category-preview-placeholder { color: #98a3ad; }
.category-preview-image [hidden] { display: none !important; }
.catalog-v3 .category-child-tile-name { color: #202428; font-size: 12px; line-height: 1.35; font-weight: 650; overflow-wrap: anywhere; }
.catalog-v3 .category-child-tile-meta { display: none; }
.catalog-v3 .category-child-tile { height: auto; min-height: 145px; }
.catalog-v3 .catalog-sidebar { width: 260px; margin: 0; z-index: 20; }
.catalog-v3 .sidebar-categories { width: 100%; padding: 14px; border-radius: 10px; border: 1px solid #e2e7ec; }
.catalog-v3 .sidebar-categories h3 { font-size: 14px; margin: 0 0 10px; padding-bottom: 10px; border-bottom-width: 1px; }
.catalog-v3 .sidebar-categories > ul > .category-item > a { padding: 9px 6px; min-height: 42px; gap: 8px; font-size: 12px; border-radius: 6px; }
.catalog-v3 .cat-icon { width: 26px; height: 26px; min-width: 26px; border-radius: 6px; font-size: 14px; }
.catalog-v3 .category-item.active > a { background: #fff1e8; color: #e95a00; }
.catalog-v3 .filter-block { margin-top: 14px; padding: 14px; border: 1px solid #e2e7ec; border-radius: 10px; }
.catalog-v3 .filter-title-group h4 { font-size: 16px; }
.catalog-v3 .filter-group { margin-bottom: 16px !important; }
.catalog-v3 .filter-group-header { font-size: 13px; margin-bottom: 10px; }
.catalog-v3 .custom-checkbox-label { min-height: 28px; gap: 7px; padding: 3px 0; }
.catalog-v3 .custom-checkbox-box { width: 16px; height: 16px; border-radius: 3px; border-width: 1px; }
.catalog-v3 .checkbox-text, .catalog-v3 .checkbox-count { font-size: 12px; }
.catalog-v3 .filter-brand-list { max-height: none; overflow: visible; }
.catalog-v3 .price-input { min-width: 0; height: 36px; font-size: 12px; }
.catalog-v3 .btn-apply-filters { font-size: 13px; min-height: 38px; background: #ff6b0a; }
.catalog-v3 .catalog-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 14px; margin-bottom: 14px; min-height: 38px; color: #75808d; font-size: 13px; }
.catalog-v3 .catalog-toolbar > .filter-group { margin: 0 !important; display: flex; align-items: center; gap: 10px; }
.catalog-v3 .catalog-toolbar h6 { margin: 0; font-size: 12px; }
.catalog-v3 .sort-select-trigger { min-height: 38px; height: 38px; padding: 8px 12px; border-radius: 6px; font-size: 12px; }
.catalog-v3 .product-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.catalog-v3 .product-card { min-width: 0; min-height: 0; height: auto; border: 1px solid #e2e7ec; border-radius: 9px; overflow: hidden; background: #fff; }
.catalog-v3 .product-card-image-wrapper { height: 180px; min-height: 180px; padding: 12px; background: #fff; }
.catalog-v3 .product-card-image-wrapper > a { width: 100%; height: 100%; }
.catalog-v3 .product-card-image-wrapper .product-picture img { width: 100%; height: 100%; object-fit: contain; }
.catalog-v3 .product-card-info { padding: 10px 12px 12px; display: flex; flex-direction: column; flex: 1; gap: 6px; }
.catalog-v3 .product-card-brand { font-size: 11px; margin: 0; line-height: 1.3; }
.catalog-v3 .product-card-title { font-size: 13px; line-height: 1.4; font-weight: 650; margin: 0; min-height: 0; height: auto; display: block; overflow: visible; -webkit-line-clamp: unset; overflow-wrap: anywhere; }
.catalog-v3 .product-card-title-link { margin: 0; order: -1; }
.catalog-v3 .product-card-rating { margin: 0; gap: 2px; }
.catalog-v3 .star-icon { width: 12px; height: 12px; }
.catalog-v3 .reviews { font-size: 10px; }
.catalog-v3 .product-card-bottom { margin-top: auto; padding-top: 8px; gap: 6px; }
.catalog-v3 .current-price { font-size: 19px; line-height: 1.2; font-weight: 800; }
.catalog-v3 .old-price { font-size: 11px; }
.catalog-v3 .add-to-cart-plus-btn { width: 34px; height: 34px; min-width: 34px; border-radius: 6px; color: #fff; background: #ff6b0a; border-color: #ff6b0a; }
.catalog-v3 .preorder-action-container { gap: 4px !important; }
.catalog-v3 .preorder-action-container > span { color: #75808d !important; font-size: 9px !important; max-width: 65px !important; }
.catalog-v3 .preorder-action-container > button { background: #ff6b0a !important; border-color: #ff6b0a !important; }
.catalog-v3 .product-card-badges { gap: 4px; top: 8px; left: 8px; }
.catalog-v3 .product-card-badges .badge { font-size: 9px; padding: 4px 7px; border-radius: 5px; background: #ff6b0a !important; }
.catalog-v3 .product-card .favorite-btn, .catalog-v3 .product-card .compare-btn { width: 28px; height: 28px; min-width: 28px; border-radius: 6px; margin: 0; transform: none; bottom: auto; background: #fff; border: 1px solid #e2e7ec; box-shadow: none; }
.catalog-v3 .product-card .compare-btn { top: 42px !important; }
.catalog-v3 .quick-view-btn { font-size: 10px; padding: 8px 10px; white-space: nowrap; }
.catalog-v3 .pagination-list .page-link { min-width: 36px; height: 36px; border-radius: 6px; }
.catalog-v3 .pagination-list .active .page-link { background: #ff6b0a; border-color: #ff6b0a; color: #fff; }
@media (max-width: 1199px) { .catalog-v3 .product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 960px) { .catalog-v3.catalog-page-container { grid-template-columns: 230px minmax(0,1fr); gap: 18px; padding: 20px; } .catalog-v3 .catalog-sidebar { width: 230px; } .catalog-v3 .product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 991px) {
    .catalog-v3.catalog-page-container { display: flex; flex-direction: column; padding: 16px 12px; gap: 16px; }
    .catalog-v3 .catalog-sidebar, .catalog-v3 .catalog-main-content, .catalog-v3 .catalog-intro { width: 100%; }
    .catalog-v3 .page-title h1 { font-size: 28px; }
    .catalog-v3 .sidebar-categories { display: none; }
    .catalog-v3 .category-child-tile { flex-basis: 130px; height: 145px; }
    .catalog-v3 .catalog-toolbar { flex-wrap: wrap; }
    .catalog-v3 .catalog-toolbar .sort-select-custom { min-width: 170px; }
    .catalog-v3 .product-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 10px !important; }
    .catalog-v3 .product-card-image-wrapper { height: 160px !important; min-height: 160px; padding: 12px !important; }
    .catalog-v3 .product-card-image-wrapper .product-picture img { width: 100% !important; height: 100% !important; max-height: 100% !important; }
    .catalog-v3 .product-card-info { padding: 10px !important; }
    .catalog-v3 .current-price { font-size: 17px; }
    .catalog-v3 .preorder-action-container > span { display: none; }
}
@media (max-width: 359px) { .catalog-v3 .product-grid { grid-template-columns: 1fr !important; } }

/* Navigation and filters only; product card styles above remain unchanged. */
.catalog-category-tree { padding: 14px; border: 1px solid #e2e7ec; border-radius: 10px; background: #fff; }
.catalog-category-tree h3 { margin: 0 0 10px; font-size: 14px; font-weight: 700; }
.catalog-tree-all { display: block; font-size: 12px; padding: 9px 6px; color: #75808d; }
.catalog-tree-row { display: flex; align-items: center; border-radius: 6px; }
.catalog-tree-row a { flex: 1; min-width: 0; padding: 9px 6px; color: #202428; font-size: 12px; line-height: 1.4; text-decoration: none; overflow-wrap: anywhere; }
.catalog-tree-row a i { font-size: 15px; margin-right: 8px; }
.catalog-tree-row button { width: 32px; height: 34px; flex: 0 0 32px; border: 0; background: transparent; color: #75808d; border-radius: 5px; }
.catalog-tree-row.is-active { background: #fff1e8; }
.catalog-tree-row.is-active a, .catalog-tree-row a:hover { color: #ff6b0a; }
.catalog-tree-children { margin-left: 14px; }
.catalog-v3 [hidden] { display: none !important; }
.catalog-v3 .filter-group { padding-bottom: 12px; border-bottom: 1px solid #e2e7ec; }
.catalog-v3 .catalog-toolbar .filter-group { border: 0; padding-bottom: 0; }
.catalog-filter-disclosure { display: flex; width: 100%; text-align: left; border: 0; background: none; padding: 0 0 10px; font-weight: 700; font-size: 13px; color: #202428; }
.catalog-v3 #catalog-brand-search { width: 100%; height: 34px; padding: 6px 9px; border: 1px solid #e2e7ec; border-radius: 6px; font-size: 12px; margin-bottom: 8px; background: #f5f6f8; }
.catalog-v3 .custom-checkbox-box { --brand-color: #ff6b0a !important; }
.catalog-v3 .custom-checkbox-input:checked + .custom-checkbox-box { animation: none; }
.catalog-v3 .custom-checkbox-input:focus-visible + .custom-checkbox-box { outline: 2px solid #ff6b0a; outline-offset: 2px; }
.catalog-brands-more { border: 0; background: none; color: #e95a00; padding: 8px 0; font-size: 12px; }
.catalog-stock-filter { display: flex; gap: 7px; align-items: center; font-size: 12px; font-weight: 400; min-height: 32px; }
.catalog-stock-filter input { accent-color: #ff6b0a; margin: 0; }
.catalog-filter-chips { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 14px; }
.catalog-filter-chips a { display: inline-flex; align-items: center; gap: 8px; min-height: 30px; padding: 5px 9px; background: #f5f6f8; border-radius: 6px; color: #202428; font-size: 12px; text-decoration: none; }
.catalog-filter-chips a:hover { color: #e95a00; }
.catalog-filter-error { color: #b44219; font-size: 12px; line-height: 1.4; }
.catalog-category-tree button:focus-visible, .catalog-filter-disclosure:focus-visible { outline: 2px solid #ff6b0a; outline-offset: 2px; }
.catalog-filter-disclosure { justify-content: space-between; }
.catalog-tree-row a { padding: 6px; }
.catalog-tree-row button[aria-expanded=true] { transform: rotate(180deg); }
.catalog-category-carousel { display: flex; align-items: center; gap: 8px; margin-top: 20px; min-width: 0; }
.catalog-v3 .catalog-category-carousel .category-child-tiles { margin: 0; min-width: 0; flex: 1; scrollbar-width: none; }
.catalog-category-carousel .category-child-tiles::-webkit-scrollbar { display: none; }
.catalog-category-carousel > button { flex: 0 0 36px; height: 44px; border: 1px solid #e2e7ec; background: #fff; border-radius: 6px; font-size: 24px; color: #202428; }
.catalog-category-carousel > button:disabled { opacity: .35; cursor: default; }
.catalog-v3 .category-child-tile { flex-basis: 165px; min-height: 160px; }
.catalog-v3 .category-child-tile-name { min-height: 34px; overflow-wrap: normal; hyphens: auto; }
.catalog-price-range { font-size: 12px; color: #626d78; }
.catalog-filter-apply { display: grid; gap: 10px; background: #fff; }
.catalog-filter-apply > a { font-size: 12px; color: #c24b00; text-align: center; }
.catalog-drawer-close, .catalog-filter-backdrop { display: none; }
.catalog-v3 .noUi-connect { background: #ff6b0a; }
.catalog-v3 .noUi-handle { border-color: #ff6b0a; }
.catalog-v3 .empty-state { grid-column: 1 / -1; }
@media (max-width: 991px) {
    .catalog-v3 .mobile-filters-toggle { display: flex; width: 100%; }
    .catalog-v3 .filter-block.show-mobile { display: block; position: fixed; inset: 0 0 0 auto; width: min(420px,100%) !important; height: 100dvh; max-height: none; overflow-y: auto; margin: 0 !important; border-radius: 0; padding: 20px 16px !important; z-index: 1201; }
    .catalog-v3 .catalog-sidebar { z-index: auto; }
    .catalog-v3 .catalog-drawer-close { display: block; margin-left: auto; width: 44px; height: 44px; background: #f5f6f8; border: 0; border-radius: 6px; font-size: 26px; }
    .catalog-filter-backdrop:not([hidden]) { display: block; position: fixed; inset: 0; background: rgba(32,36,40,.45); border: 0; z-index: 1200; }
    .catalog-filter-apply { position: sticky; bottom: -20px; padding: 14px 0 20px; border-top: 1px solid #e2e7ec; }
    .catalog-v3 .category-child-tile { flex-basis: 155px; }
}
@media (max-width: 991px) { .catalog-category-tree { max-height: 280px; overflow-y: auto; } .catalog-tree-row button { width: 44px; height: 44px; flex-basis: 44px; } .catalog-tree-row a { min-height: 44px; display: flex; align-items: center; } }
