/**
 * Archives produits DJOBI : catégories, étiquettes et boutique.
 */

body.djobi-theme.djobi-product-archive { background: #fff; }
body.djobi-theme.djobi-product-archive .djobi-content { width: min(calc(100% - 40px), 1420px); padding: 0 0 64px; }
.djobi-shop-layout { display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 30px; align-items: start; }
.djobi-shop-results { min-width: 0; }
.djobi-archive-utilitybar { width: 100%; margin: 0 0 22px; border-top: 1px solid #edf0f3; border-bottom: 1px solid #e4e7ec; background: #f8f9fb; }
.djobi-archive-utilitybar__inner { display: flex; width: min(calc(100% - 40px), 1420px); min-height: 34px; margin: 0 auto; align-items: center; justify-content: space-between; gap: 18px; }
.djobi-archive-breadcrumb { min-width: 0; margin: 0; }
.djobi-archive-breadcrumb .woocommerce-breadcrumb { margin: 0; color: #667085; font-size: 13px; }
.djobi-archive-breadcrumb .djobi-breadcrumb-separator { padding: 0 7px; color: #98a2b3; }
.djobi-archive-utilitybar .woocommerce-ordering { flex: 0 0 auto; margin: 0; }
.djobi-archive-utilitybar .woocommerce-ordering select { min-width: 218px; height: 26px; padding: 2px 28px 2px 9px; border: 1px solid #d0d5dd; border-radius: 6px; outline: 0; color: #344054; background: #fff; font: inherit; font-size: 11px; cursor: pointer; }
.djobi-archive-heading { margin: 0 0 12px; color: #101828; font-size: 20px; font-weight: 400; line-height: 1.25; }
.djobi-shop-results .woocommerce-products-header__title,
.djobi-shop-results h1.page-title { display: none !important; }
.djobi-shop-results .term-description { margin: -6px 0 20px; color: #667085; font-size: 14px; }

.djobi-shop-sidebar { min-width: 0; }
.djobi-archive-filters { display: block; }
.djobi-shop-price-filter { margin: 0 0 26px; padding: 0 0 22px; border: 0; border-bottom: 1px solid #e4e7ec; background: transparent; box-shadow: none; }
.djobi-shop-price-filter h2,
.djobi-archive-filter-group h2,
.djobi-shop-sidebar .djobi-widget__title { margin: 0 0 12px; padding: 0; border: 0; color: #101828; font-size: 17px; font-weight: 500; }
.djobi-price-values { display: flex; margin-bottom: 8px; justify-content: space-between; color: #475467; font-size: 12px; }
.djobi-price-sliders { position: relative; height: 26px; }
.djobi-price-sliders::before { position: absolute; top: 11px; right: 4px; left: 4px; height: 4px; border-radius: 999px; background: linear-gradient(to right, #d0d5dd 0 var(--djobi-price-min), var(--djobi-primary) var(--djobi-price-min) var(--djobi-price-max), #d0d5dd var(--djobi-price-max) 100%); content: ''; }
.djobi-price-sliders input[type="range"] { position: absolute; inset: 0; width: 100%; height: 26px; margin: 0; padding: 0; appearance: none; pointer-events: none; background: transparent; }
.djobi-price-sliders input[type="range"]::-webkit-slider-runnable-track { height: 4px; background: transparent; }
.djobi-price-sliders input[type="range"]::-webkit-slider-thumb { width: 16px; height: 16px; margin-top: -6px; appearance: none; pointer-events: auto; border: 2px solid var(--djobi-primary); border-radius: 50%; background: #fff; cursor: grab; }
.djobi-price-sliders input[type="range"]::-moz-range-track { height: 4px; background: transparent; }
.djobi-price-sliders input[type="range"]::-moz-range-thumb { width: 13px; height: 13px; pointer-events: auto; border: 2px solid var(--djobi-primary); border-radius: 50%; background: #fff; cursor: grab; }
.djobi-archive-filter-group { margin: 0 0 24px; padding: 0 0 20px; border-bottom: 1px solid #e4e7ec; }
.djobi-archive-filter-group label { display: grid; min-height: 30px; grid-template-columns: 18px minmax(0, 1fr) auto; gap: 7px; align-items: center; color: #344054; font-size: 13px; cursor: pointer; }
.djobi-archive-filter-group input { width: 15px; height: 15px; margin: 0; accent-color: var(--djobi-primary); }
.djobi-archive-filter-group small { color: #98a2b3; font-size: 11px; }
.djobi-archive-brand-list { max-height: 260px; overflow: auto; padding-right: 5px; scrollbar-width: thin; }
.djobi-archive-filters-reset { display: inline; padding: 0; border: 0; color: #075ec8; background: transparent; font-size: 13px; line-height: 1.4; text-decoration: underline; text-underline-offset: 2px; }
.djobi-archive-filters-reset:hover { color: var(--djobi-primary); text-decoration: underline; }
.djobi-shop-sidebar .djobi-widget { margin-bottom: 26px; }

.djobi-archive-subcategories { width: min(calc(100% - 40px), 1420px); margin: -4px auto 28px; }
.djobi-archive-subcategories__grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 24px 20px; }
.djobi-archive-subcategory { display: flex; min-width: 0; flex-direction: column; align-items: center; color: #101828; text-align: center; text-decoration: none; }
.djobi-archive-subcategory__image { display: grid; width: min(100%, 176px); aspect-ratio: 1; place-items: center; overflow: hidden; border-radius: 50%; background: #f5f6f7; }
.djobi-archive-subcategory__image img { width: 84%; height: 84%; object-fit: contain; transition: transform .18s ease; }
.djobi-archive-subcategory__name { margin-top: 10px; font-size: 14px; font-weight: 600; line-height: 1.35; }
.djobi-archive-subcategory:hover { color: var(--djobi-primary); }
.djobi-archive-subcategory:hover img { transform: scale(1.04); }

body.djobi-theme.djobi-product-archive ul.products { display: grid !important; grid-template-columns: 1fr; gap: 12px; clear: both; margin: 0 !important; padding: 0; }
body.djobi-theme.djobi-product-archive ul.products::before,
body.djobi-theme.djobi-product-archive ul.products::after { display: none !important; }
body.djobi-theme.djobi-product-archive ul.products li.product-category { display: none !important; }
body.djobi-theme.djobi-product-archive ul.products li.product { position: relative; display: grid; width: auto !important; min-width: 0; min-height: 244px; grid-template-columns: 250px minmax(0, 1fr); gap: 24px; float: none !important; margin: 0 !important; padding: 14px 18px 14px 14px !important; border: 1px solid #e4e7ec; border-radius: 10px; background: #fff; }
body.djobi-theme.djobi-product-archive ul.products li.product .woocommerce-loop-product__link { position: relative; display: block; min-width: 0; align-self: stretch; }
body.djobi-theme.djobi-product-archive ul.products li.product img { display: block; width: 100%; height: 214px; margin: 0 !important; object-fit: contain; }
body.djobi-theme.djobi-product-archive ul.products li.product .woocommerce-loop-product__title,
body.djobi-theme.djobi-product-archive ul.products li.product > .star-rating,
body.djobi-theme.djobi-product-archive ul.products li.product > .price,
body.djobi-theme.djobi-product-archive ul.products li.product .woocommerce-loop-product__link .price { display: none !important; }
.djobi-archive-product-summary { display: flex !important; width: 100% !important; min-width: 0; flex: 1 1 auto !important; flex-direction: column !important; align-items: stretch !important; padding: 2px 58px 2px 0; }
.djobi-archive-product-categories { width: 100%; margin: 0 0 4px; overflow: hidden; color: #667085; font-size: 12px; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.djobi-archive-product-categories a { color: inherit; text-decoration: none; }
.djobi-archive-product-title { max-width: 880px; margin: 0; overflow: hidden; color: #101828 !important; font-size: 18px; font-weight: 500; line-height: 1.3; text-decoration: none !important; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.djobi-archive-product-title:hover { color: var(--djobi-primary) !important; text-decoration: none !important; }
.djobi-archive-product-seller { display: block !important; width: 100%; margin: 1px 0 0; overflow: hidden; color: #475467; font-size: 12px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.djobi-archive-product-seller strong { display: inline !important; width: auto !important; color: #344054; font-weight: 600; }
.djobi-archive-product-seller br { display: none !important; }
.djobi-archive-product-rating { position: static !important; inset: auto !important; display: grid !important; width: max-content !important; min-height: 18px; grid-template-columns: auto auto auto; align-items: center !important; column-gap: 6px; margin: 7px 0 0; line-height: 17px !important; transform: none !important; }
.djobi-archive-rating-score { color: #475467; font-size: 12px; line-height: 17px; }
.djobi-archive-product-summary .djobi-archive-product-rating .star-rating.djobi-svg-star-rating { position: static !important; inset: auto !important; display: inline-flex !important; float: none !important; width: auto !important; height: 17px !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; transform: none !important; }
.djobi-archive-product-rating .djobi-svg-star-rating::before,
.djobi-archive-product-rating .djobi-svg-star-rating span::before { display: none !important; content: none !important; }
.djobi-archive-product-summary .djobi-archive-product-rating .djobi-rating-stars { position: static !important; inset: auto !important; display: inline-flex !important; float: none !important; width: auto !important; height: 17px !important; align-items: center; gap: 0; margin: 0 !important; padding: 0 !important; overflow: visible !important; line-height: 17px !important; transform: none !important; }
.djobi-archive-product-rating .djobi-rating-star { position: relative; top: -1px; display: block; width: 17px; height: 17px; flex: 0 0 17px; fill: #d7dce2; }
.djobi-archive-product-rating .djobi-rating-star + .djobi-rating-star { margin-left: -3px; }
.djobi-archive-product-rating .djobi-rating-star.is-filled { fill: #f5b301; }
.djobi-archive-product-rating a { display: inline-block !important; align-self: center !important; margin: 0 !important; color: #075ec8; font-size: 12px; line-height: 17px !important; text-decoration: none; }
.djobi-archive-product-price { display: flex; margin: 4px 0 0; align-items: flex-start; gap: 9px; color: #101828 !important; font-size: 22px; line-height: 1.12; text-decoration: none !important; }
.djobi-archive-product-price__values { display: flex; flex-direction: column; align-items: flex-start; }
.djobi-archive-price-prefix { display: block; margin-bottom: 1px; color: #475467; font-size: 12px; line-height: 1.15; }
.djobi-archive-product-price del { order: 2; margin: 1px 0 0; color: #98a2b3; font-size: 12px; }
.djobi-archive-product-price ins { order: 1; color: #e11d1d; text-decoration: none; }
.djobi-archive-product-tax { margin-top: 4px; color: #667085; font-size: 11px; line-height: 1.25; white-space: nowrap; }
.djobi-archive-product-price.is-variable .djobi-archive-product-tax { margin-top: 18px; }
.djobi-archive-product-shipping { margin-top: 8px; color: #344054; font-size: 13px; font-weight: 600; line-height: 1.35; }
.djobi-archive-low-stock { margin-top: 3px; color: #d92d20; font-size: 12px; font-weight: 600; line-height: 1.35; }
.djobi-archive-regulatory-labels { display: flex; min-height: 36px; flex-wrap: wrap; align-items: center; gap: 5px 7px; margin-top: 7px; padding-right: 48px; }
.djobi-archive-regulatory-labels img { display: block; width: auto !important; max-width: 68px !important; height: 34px !important; margin: 0 !important; object-fit: contain !important; }
body.djobi-theme.djobi-product-archive ul.products li.product .button:not(.djobi-archive-cart) { display: none !important; }
body.djobi-theme.djobi-product-archive ul.products li.product a.added_to_cart.wc-forward { display: none !important; }
body.djobi-theme.djobi-product-archive ul.products li.product .onsale { display: none !important; }
body.djobi-theme.djobi-product-archive .djobi-mm-badge-layer { pointer-events: none; }
.djobi-archive-cart { position: absolute; right: 18px; bottom: 18px; z-index: 4; display: grid !important; width: 42px; height: 42px; margin: 0 !important; padding: 0 !important; place-items: center; border: 0 !important; border-radius: 50% !important; color: #fff !important; background: var(--djobi-primary) !important; box-shadow: none !important; }
.djobi-archive-cart:hover { color: #fff !important; background: #0f57c5 !important; }
.djobi-archive-cart svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.djobi-archive-cart.is-disabled { color: #98a2b3 !important; background: #e4e7ec !important; cursor: not-allowed; }
.djobi-archive-sale-percentage { position: absolute; top: 9px; left: 9px; z-index: 8; display: inline-flex; min-width: 41px; min-height: 25px; padding: 4px 8px; align-items: center; justify-content: center; border-radius: 7px; color: #fff; background: #e21b17; font-size: 11px; font-weight: 600; line-height: 1; }
body.djobi-theme.djobi-product-archive .djobi-mm-badge-layer[data-context="loop"] { top: 8px !important; right: 8px !important; bottom: auto !important; left: auto !important; display: flex !important; width: auto !important; height: auto !important; flex-direction: column; align-items: flex-end; gap: 6px; }
body.djobi-theme.djobi-product-archive .djobi-mm-badge-layer[data-context="loop"] .djobi-mm-badge { position: static !important; inset: auto !important; margin: 0 !important; }

@media (max-width: 1180px) {
    .djobi-shop-layout { grid-template-columns: 230px minmax(0, 1fr); gap: 22px; }
    .djobi-archive-subcategories__grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    body.djobi-theme.djobi-product-archive ul.products li.product { grid-template-columns: 210px minmax(0, 1fr); gap: 20px; }
    body.djobi-theme.djobi-product-archive ul.products li.product img { height: 190px; }
}

@media (max-width: 900px) {
    .djobi-shop-layout { grid-template-columns: 1fr; }
    .djobi-shop-sidebar { display: block; }
    .djobi-archive-filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
    .djobi-shop-price-filter,
    .djobi-archive-filter-group { margin-bottom: 18px; }
    .djobi-archive-subcategories__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
    body.djobi-theme.djobi-product-archive .djobi-content { width: min(calc(100% - 22px), 1420px); padding-top: 18px; }
    .djobi-archive-utilitybar { margin-top: -18px; }
    .djobi-archive-utilitybar__inner { width: min(calc(100% - 22px), 1420px); min-height: 52px; gap: 8px; }
    .djobi-archive-breadcrumb .woocommerce-breadcrumb { overflow: hidden; max-width: 52vw; text-overflow: ellipsis; white-space: nowrap; }
    .djobi-archive-utilitybar .woocommerce-ordering select { min-width: 0; width: 154px; }
    .djobi-shop-sidebar { grid-template-columns: 1fr; }
    .djobi-archive-filters { grid-template-columns: 1fr; }
    .djobi-archive-subcategories { width: min(calc(100% - 22px), 1420px); }
    .djobi-archive-subcategories__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 12px; }
    .djobi-archive-subcategory__name { font-size: 12px; }
    body.djobi-theme.djobi-product-archive ul.products li.product { min-height: 176px; grid-template-columns: 132px minmax(0, 1fr); gap: 12px; padding: 10px !important; }
    body.djobi-theme.djobi-product-archive ul.products li.product img { height: 148px; }
    .djobi-archive-product-summary { padding-right: 44px; }
    .djobi-archive-product-categories { display: none; }
    .djobi-archive-product-title { font-size: 14px; }
    .djobi-archive-product-tax { white-space: normal; }
    .djobi-archive-product-price { font-size: 18px; }
    .djobi-archive-cart { right: 10px; bottom: 10px; width: 36px; height: 36px; }
}

@media (max-width: 420px) {
    .djobi-archive-subcategories__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.djobi-theme.djobi-product-archive ul.products li.product { display: block; padding-bottom: 58px !important; }
    body.djobi-theme.djobi-product-archive ul.products li.product img { width: 100%; height: 200px; margin-bottom: 10px !important; }
    .djobi-archive-product-summary { padding-right: 0; }
    .djobi-archive-regulatory-labels { padding-right: 0; }
}
