/* Approved format badge reused on native listing cards. Never alter commerce controls. */
.product-miniature .thumbnail-top { position: relative; }
.product-miniature .bjm-list-lot-badge { position: absolute; right: 8px; bottom: 8px; z-index: 1; pointer-events: none; }
/* Native discounts sit at the top, sold-out in the centre; badge typography stays shared with the header. */
/* One system on home/category/search cards. Known format + one prioritized native state, at most two. */
.product-miniature.bjm-list-card .bjm-card-badges { position:absolute; top:8px; left:8px; right:8px; display:flex; flex-wrap:wrap; gap:4px; z-index:1; pointer-events:none; }
.product-miniature.bjm-list-card .bjm-card-badges .bjm-hdr-lot-badge { font-size:13px; font-style:normal; background:#fff; border:1px solid #e2dfe7; color:#7828c8; }
.product-miniature.bjm-list-card .bjm-card-badge[data-badge-kind=stock] { color:#625b6b; }
.product-miniature.bjm-card-badges-ready .product-flags,.product-miniature.bjm-card-badges-ready .bm-product-out-of-stock-overlay,.product-miniature.bjm-card-badges-ready .discount-product { display:none!important; }
@media(max-width:767px) { .product-miniature.bjm-list-card .bjm-card-badges .bjm-hdr-lot-badge { font-size:16px; } }
/* LISTING_V1_MOCKUP: scoped to native category/search listings, never home/product/checkout. */
body:is(#category,#search).bjm-list-page #wrapper > .container { width: 100%; max-width: none; padding-inline: 28px; }
body:is(#category,#search).bjm-list-page #wrapper > .container > .row { margin-inline: 0; }
body:is(#category,#search).bjm-list-page #content-wrapper { padding-inline: 0; }
body:is(#category,#search).bjm-list-page #js-product-list .products {
 display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 14px !important;
 width: 100% !important; margin: 0 !important;
}
body:is(#category,#search).bjm-list-page #js-product-list .js-product { width: auto !important; max-width: 100%; padding: 0; margin: 0; float: none; display: flex; min-width: 0; }
body:is(#category,#search).bjm-list-page #js-product-list .product-miniature {
 width: 100% !important; max-width: 100%; margin: 0 !important; padding: 10px !important;
 border: 1px solid #e2dfe7; border-radius: 12px; background: #fff; box-shadow: none; min-width: 0;
}
body:is(#category,#search).bjm-list-page #js-product-list .thumbnail-container { width: 100% !important; height: auto !important; margin: 0; background: #fff; box-shadow: none; border-radius: 0; }
body:is(#category,#search).bjm-list-page #js-product-list .thumbnail-top { height: 205px; width: 100%; background: #fff; border-radius: 8px; overflow: hidden; }
body:is(#category,#search).bjm-list-page #js-product-list .product-thumbnail { display: block; width: 100%; height: 100%; margin: 0; }
body:is(#category,#search).bjm-list-page #js-product-list .product-thumbnail img { width: 100% !important; height: 100% !important; max-width: 100%; object-fit: contain; margin: 0; }
body:is(#category,#search).bjm-list-page #js-product-list .product-description { width: 100% !important; height: auto !important; position: static; padding: 0; background: #fff; text-align: left !important; }
body:is(#category,#search).bjm-list-page #js-product-list .product-title { margin: 10px 0 12px !important; height: 44px; font-size: 16px !important; line-height: 1.35; text-align: left !important; font-weight: 600; text-transform: none; }
body:is(#category,#search).bjm-list-page #js-product-list .product-title a { color: #232323 !important; font-size: 16px !important; line-height: 1.35; text-transform: none; text-align: left !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
body:is(#category,#search).bjm-list-page #js-product-list .product-price-and-shipping { margin: 0 !important; text-align: left !important; justify-content: flex-start !important; gap: 0 !important; line-height: 1.4 !important; min-height: 26px !important; }
body:is(#category,#search).bjm-list-page #js-product-list .price { font-size: 18px; font-weight: 800; color: #232323; }
body:is(#category,#search).bjm-list-page #js-product-list .regular-price { font-size: 14px; }
body:is(#category,#search).bjm-list-page #js-product-list .bjm-list-sale-unit { font-size: 16px; color: #625b6b; font-weight: 400; white-space: normal; padding-left: 4px; }
body:is(#category,#search).bjm-list-page #js-product-list .bjm-list-details { min-height: 48px; }
body:is(#category,#search).bjm-list-page #js-product-list .bjm-list-minimum { margin: 3px 0 0; min-height: 22px; font-size: 16px; line-height: 1.4; color: #625b6b; }
body:is(#category,#search).bjm-list-page #js-product-list .bjm-list-state { margin: 8px 0 0; min-height: 22px; font-size: 16px; font-weight: 700; line-height: 1.4; color: #625b6b; }
body:is(#category,#search).bjm-list-page #js-product-list .bjm-list-state:empty { display: none; }
body:is(#category,#search).bjm-list-page #js-product-list .bjm-list-lot-badge { left: 8px; right: auto; bottom: auto; top: 8px; }
body:is(#category,#search).bjm-list-page #js-product-list .bjm-list-state-ready .bm-product-out-of-stock-overlay { display: none; }
body:is(#category,#search).bjm-list-page #js-product-list-header .block-category { padding: 0; border: 0; border-radius: 0; background: transparent; margin-bottom: 18px !important; }
body:is(#category,#search).bjm-list-page #js-product-list-header h1 { font-size: 28px; line-height: 1.25; font-weight: 800; margin: 0 0 12px; }
body:is(#category,#search).bjm-list-page #js-product-list-header .category-cover { display: none; }
body:is(#category,#search).bjm-list-page #category-description { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; max-height: 24px !important; margin: 0 0 18px !important; font-size: 16px; line-height: 1.5; color: #625b6b; }
body:is(#category,#search).bjm-list-page #category-description :is(h2,h3,p) { display: inline; margin: 0; font-size: 16px; font-weight: 400; line-height: 1.5; }
body:is(#category,#search).bjm-list-page .bm-category-description-toggle { display: none; }
body:is(#category,#search).bjm-list-page .bm-category-description--collapsed::after { display: none; }
body:is(#category,#search).bjm-list-page #subcategories .bm-subcategories-title { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
body:is(#category,#search).bjm-list-page #subcategories .bm-subcategories-grid { display: flex; flex-wrap: nowrap; gap: 8px; overflow-x: auto; margin: 0; padding: 3px 2px 8px; max-width: 100%; }
body:is(#category,#search).bjm-list-page #subcategories .bm-subcategories-item { flex: 0 0 auto; }
body:is(#category,#search).bjm-list-page #subcategories .bm-subcategory-link { border: 1px solid #e2dfe7; border-radius: 999px; min-height: 44px; padding: 10px 14px; font-size: 16px; font-weight: 600; color: #232323; white-space: nowrap; text-transform: none; }
body:is(#category,#search).bjm-list-page .bm-listing-toolbar { background: transparent; border: 0; border-bottom: 1px solid #e2dfe7; border-radius: 0; padding: 12px 0; margin: 0 0 10px; }
body:is(#category,#search).bjm-list-page .bm-listing-toolbar .bm-listing-sort { display: flex; align-items: center; gap: 8px; }
body:is(#category,#search).bjm-list-page .bm-listing-toolbar .bm-filter-open,body:is(#category,#search).bjm-list-page #search_filter_toggler { display: none; }
body:is(#category,#search).bjm-list-page .products-sort-order .select-title { min-height: 44px; border: 1px solid #e2dfe7; border-radius: 8px; padding: 8px; color: #232323; background: #fff; }
body:is(#category,#search).bjm-list-page #subcategories .bm-subcategory-link:focus-visible { outline: 3px solid #7828c8; outline-offset: -3px; }
/* Native btn-unstyle suppresses its focus ring. Restore the approved keyboard-only focus on the now-visible sort control. */
body:is(#category,#search).bjm-list-page :is(.bm-listing-toolbar,#js-product-list) :is(a,button):focus-visible { outline: 3px solid #7828c8 !important; outline-offset: 2px; }
body:is(#category,#search).bjm-list-page #js-product-list .product-thumbnail:focus-visible { outline-offset: -3px; }
@media (min-width: 768px) and (max-width: 1023px) {
 body:is(#category,#search).bjm-list-page #js-product-list .products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
}
@media (min-width: 1680px) {
 body:is(#category,#search).bjm-list-page #js-product-list .products { grid-template-columns: repeat(6,minmax(0,1fr)) !important; }
}
@media (max-width: 767px) {
 body:is(#category,#search).bjm-list-page #wrapper > .container { padding-inline: 14px; }
 body:is(#category,#search).bjm-list-page #content-wrapper { padding: 0 !important; }
 body:is(#category,#search).bjm-list-page #js-product-list .products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 10px !important; }
 body:is(#category,#search).bjm-list-page #js-product-list .product-miniature { padding: 8px !important; }
 body:is(#category,#search).bjm-list-page #js-product-list .thumbnail-top { height: 150px; }
 body:is(#category,#search).bjm-list-page #js-product-list .price { font-size: 17px; }
 body:is(#category,#search).bjm-list-page #js-product-list .product-price-and-shipping { min-height: 48px !important; }
 body:is(#category,#search).bjm-list-page #js-product-list .bjm-list-details { min-height: 72px; }
 body:is(#category,#search).bjm-list-page #js-product-list-header h1 { font-size: 24px; }
 body#category #subcategories.bm-subcategories { display: block; max-width: 100%; min-width: 0; margin: 0; }
 body#category #subcategories .bm-subcategories-title { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
 body#category #subcategories .bm-subcategories-grid { display: flex; flex-wrap: nowrap; overflow-x: auto; max-width: 100%; gap: 8px; padding: 3px 3px 4px; }
 body#category #subcategories .bm-subcategories-item { flex: 0 0 auto; }
 body#category #subcategories .bm-subcategory-link { white-space: nowrap; min-height: 44px; font-size: 16px; border-radius: 999px; text-transform: none; }
 body#category .bm-listing-toolbar { margin-bottom: 0; }
 body#category #subcategories .bm-subcategory-link:focus-visible { outline: 3px solid #7828c8; outline-offset: -3px; }
}
