/**
 * NM-D Theme — category listing (mockup)
 * Author: Paweł Nosko / Design Cart
 */

/** Shared product listings — same chrome as category page */


/* Gap under hero / header — mockup content padding-top 24px */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .columns-container.container,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #wrapper > .columns-container {
  padding-top: 24px;
  padding-bottom: 64px;
}

/* Layout: sidebar ~300px + main, gap 28 */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .columns-container > .row {
  --bs-gutter-x: 28px;
  align-items: flex-start;
}

@media (min-width: 992px) {
  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #left-column.left-column {
    flex: 0 0 300px;
    width: 300px;
    max-width: 300px;
  }

  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #center-column.center-column {
    flex: 1 1 0;
    width: auto;
    max-width: none;
  }
}

/* Hide non-filter left blocks on category pages */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #left-column .ps-categorytree,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #left-column .ps-brandlist,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #left-column .ps-supplierlist,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #left-column .block-categories {
  display: none !important;
}

/* ── Faceted search card (mockup sidebar) ───────────────────── */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .ps-facetedsearch.left-block,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #search_filters_wrapper {
  background: #fff;
  border: 1px solid var(--nmd-hero-gray, #d5d7e4);
  border-radius: 12px;
  padding: 20px;
  margin-bottom: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #search-filters,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters {
  font-family: var(--nmd-font-sans, 'DM Sans', sans-serif);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-facets__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-facets__title {
  display: flex !important;
  align-items: center;
  gap: 8px;
  margin: 0 !important;
  font-size: 15px;
  font-weight: 700;
  color: var(--nmd-dark, #1a1c2e);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-facets__clear-link {
  background: transparent;
  border: none;
  cursor: pointer;
  font-size: 12px;
  font-weight: 600;
  color: var(--nmd-purple, #5b3fc8);
  padding: 0;
  font-family: var(--nmd-font-sans, 'DM Sans', sans-serif);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters__clear {
  margin-bottom: 12px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters__clear .btn {
  font-size: 12px;
  font-weight: 600;
  color: var(--nmd-purple, #5b3fc8);
  border-color: transparent;
  padding: 0;
  background: transparent;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters .accordion,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #search-filters .accordion {
  --bs-accordion-border-width: 0;
  --bs-accordion-btn-padding-x: 0;
  --bs-accordion-btn-padding-y: 0;
  --bs-accordion-body-padding-x: 0;
  --bs-accordion-body-padding-y: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters .accordion-item,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #search-filters .accordion-item {
  border: 0;
  border-bottom: 1px solid var(--nmd-hero-gray, #d5d7e4);
  padding-bottom: 16px;
  margin-bottom: 16px;
  background: transparent;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters .accordion-item:last-child,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #search-filters .accordion-item:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters .accordion-button,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #search-filters .accordion-button {
  font-size: 14px;
  font-weight: 600;
  color: var(--nmd-dark, #1a1c2e);
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 0 10px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters .accordion-button::after {
  width: 15px;
  height: 15px;
  background-size: 15px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters .accordion-body,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #search-filters .accordion-body {
  padding: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters__item,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .facet-label,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters .form-check {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  font-size: 13px;
  color: var(--nmd-dark, #1a1c2e);
  cursor: pointer;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters .form-check-input {
  width: 16px;
  height: 16px;
  margin-top: 0;
  accent-color: var(--nmd-purple, #5b3fc8);
  border-color: var(--nmd-hero-gray, #d5d7e4);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters .form-check-input:checked {
  background-color: var(--nmd-purple, #5b3fc8);
  border-color: var(--nmd-purple, #5b3fc8);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .search-filters .form-check-label {
  font-size: 13px;
  color: var(--nmd-dark, #1a1c2e);
  cursor: pointer;
}

/* ── Toolbar ────────────────────────────────────────────────── */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #js-product-list-top {
  margin-bottom: 20px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__selection,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-listing-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  background: #fff;
  border: 1px solid var(--nmd-hero-gray, #d5d7e4);
  border-radius: 12px;
  padding: 12px 16px;
  margin-bottom: 0;
  grid-template-columns: none;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__count {
  font-size: 13px;
  color: var(--nmd-muted, #6b6d8a);
  order: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__count strong,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__count b {
  color: var(--nmd-dark, #1a1c2e);
  font-weight: 700;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-listing-toolbar__end {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort {
  margin-left: 0;
  order: 0;
  gap: 10px;
}

/* Grid / list toggle (mockup) */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-view-toggle {
  display: inline-flex;
  border: 1px solid var(--nmd-hero-gray, #d5d7e4);
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-view-toggle__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 11px;
  margin: 0;
  background: #fff;
  border: 0;
  color: var(--nmd-muted, #6b6d8a);
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
  line-height: 1;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-view-toggle__btn + .nmd-view-toggle__btn {
  border-left: 1px solid var(--nmd-hero-gray, #d5d7e4);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-view-toggle__btn:hover {
  color: var(--nmd-dark, #1a1c2e);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-view-toggle__btn.is-active {
  background: var(--nmd-purple, #5b3fc8);
  color: #fff;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort-label {
  display: none !important;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort-dropdown {
  flex-grow: 0;
  width: auto;
  border: 0;
  background: transparent;
  padding: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort select,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort .form-select,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort .dropdown-toggle,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort-dropdown-button {
  appearance: none;
  background: var(--nmd-bg, #f0f1f8);
  border: 1px solid var(--nmd-hero-gray, #d5d7e4);
  border-radius: 8px;
  box-shadow: none;
  padding: 7px 32px 7px 12px;
  font-size: 13px;
  font-weight: 500;
  color: var(--nmd-dark, #1a1c2e);
  font-family: var(--nmd-font-sans, 'DM Sans', sans-serif);
  min-height: 0;
  width: auto;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort-dropdown-button:hover,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort-dropdown-button:focus,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort-dropdown-button:active,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__sort-dropdown-button.show {
  background: var(--nmd-bg, #f0f1f8);
  border-color: var(--nmd-purple, #5b3fc8);
  color: var(--nmd-dark, #1a1c2e);
  box-shadow: none;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__filter-button {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  background: var(--nmd-bg, #f0f1f8);
  color: var(--nmd-dark, #1a1c2e);
  border: none;
  border-radius: 8px;
  padding: 8px 14px;
  font-weight: 600;
  font-size: 13px;
}

@media (min-width: 992px) {
  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__filter-button {
    display: none !important;
  }
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .active_filters,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-active-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 16px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .active_filters .filter-block,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .active_filters a {
  background: #ede9fb;
  color: var(--nmd-purple, #5b3fc8);
  font-size: 12px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 20px;
  text-decoration: none;
}

/* ── Product grid / list ────────────────────────────────────── */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier).layout-left-column #products.nmd-products-view--grid .products,
body.layout-left-column:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--grid .products {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

@media (min-width: 576px) {
  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier).layout-left-column #products.nmd-products-view--grid .products,
  body.layout-left-column:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--grid .products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier).layout-left-column #products.nmd-products-view--grid .products,
  body.layout-left-column:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--grid .products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier).layout-left-column #products.nmd-products-view--grid .products,
  body.layout-left-column:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--grid .products {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Default / list: stacked rows like mockup */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier).layout-left-column #products.nmd-products-view--list .products,
body.layout-left-column:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .products,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .products {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* Grid also on full-width listings (e.g. search) */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--grid .products {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
@media (min-width: 576px) {
  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--grid .products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 992px) {
  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--grid .products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier).layout-full-width #products.nmd-products-view--grid .products {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* ── Product cards (mockup) ─────────────────────────────────── */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature {
  background: #fff;
  border: 1px solid var(--nmd-hero-gray, #d5d7e4);
  border-radius: 14px;
  overflow: hidden;
  height: 100%;
  transition:
    box-shadow 0.22s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.22s cubic-bezier(0.4, 0, 0.2, 1),
    border-color 0.22s ease;
  font-family: var(--nmd-font-sans, 'DM Sans', sans-serif);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature:hover {
  transform: translateY(-4px);
  border-color: rgba(91, 63, 200, 0.28);
  box-shadow: 0 16px 40px rgba(91, 63, 200, 0.14);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__top {
  position: relative;
  background: #fff;
  aspect-ratio: 1 / 0.78;
  overflow: hidden;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__image-container,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__image-container.thumbnail-container {
  background: transparent;
  padding: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__image-link {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  background: transparent;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__image,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__top img,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__top .product-miniature__thumb {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 0;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature:hover .product-miniature__image,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature:hover .product-miniature__top img {
  transform: scale(1.05);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__bottom {
  padding: 1rem 1.1rem 1.15rem;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__infos {
  flex: 1;
  display: flex;
  flex-direction: column;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__title {
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--nmd-dark, #1a1c2e);
  line-height: 1.35;
  text-decoration: none;
  margin-bottom: 0.4rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.7em;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__title:hover {
  color: var(--nmd-purple, #5b3fc8);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__meta {
  margin: 0 0 0.5rem;
  font-family: var(--nmd-font-mono, 'JetBrains Mono', monospace);
  font-size: 0.7rem;
  color: var(--nmd-muted, #6b6d8a);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: 0 0 0.65rem;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__tag {
  display: inline-flex;
  align-items: center;
  background: var(--nmd-bg, #f0f1f8);
  color: var(--nmd-muted, #6b6d8a);
  font-size: 10px;
  font-weight: 500;
  line-height: 1.3;
  padding: 2px 7px;
  border-radius: 20px;
  border: 1px solid var(--nmd-hero-gray, #d5d7e4);
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Grid: max 2 chips; list: max 4 */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--grid .product-miniature__tag:nth-child(n + 3),
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__tag:nth-child(n + 5) {
  display: none;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__tags {
  gap: 6px;
  margin-bottom: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__tag {
  font-size: 11px;
  padding: 2px 8px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__prices {
  margin-top: 0;
  padding-top: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__price {
  font-family: var(--nmd-font-mono, 'JetBrains Mono', monospace);
  font-size: 1.15rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--nmd-purple, #5b3fc8);
  line-height: 1.1;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__regular,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__price--regular,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__regular-price {
  font-size: 0.7rem;
  color: var(--nmd-muted, #6b6d8a);
  text-decoration: line-through;
  display: block;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__actions {
  margin-top: auto;
  padding-top: 0.85rem;
  border-top: 1px solid rgba(26, 28, 46, 0.07);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__form {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--grid .quantity-button {
  display: none !important;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__add,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__actions .btn-primary {
  background: var(--nmd-purple, #5b3fc8);
  border: none;
  border-radius: 999px;
  font-weight: 700;
  font-size: 0.78rem;
  padding: 0.45rem 0.85rem;
  gap: 0.35rem;
  width: auto;
  white-space: nowrap;
  box-shadow: 0 6px 16px rgba(91, 63, 200, 0.28);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__add:hover,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature__actions .btn-primary:hover {
  background: #4a32a0;
  filter: brightness(1.05);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-flags .badge,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature .product-flag {
  display: inline-flex;
  align-items: center;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  line-height: 1.2;
  border-radius: 6px !important;
  border: none !important;
  padding: 3px 8px;
  color: #fff !important;
  background: var(--nmd-purple, #5b3fc8) !important;
  box-shadow: 0 3px 10px rgba(26, 28, 46, 0.16);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-flags .badge.discount,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature .product-flag.discount {
  background: #e5484d !important;
  color: #fff !important;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-flags .badge.new,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .product-miniature .product-flag.new {
  background: var(--nmd-cyan, #00c8e8) !important;
  color: #fff !important;
}

/* ── List view card layout (mockup) ─────────────────────────── */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature {
  height: auto;
  overflow: visible;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature:hover {
  transform: none;
  box-shadow: 0 6px 24px rgba(91, 63, 200, 0.12);
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__inner {
  flex-direction: row;
  align-items: stretch;
  gap: 20px;
  padding: 20px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__top {
  flex: 0 0 120px;
  width: 120px;
  aspect-ratio: 1 / 1;
  border-radius: 8px;
  overflow: hidden;
  align-self: flex-start;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature:hover .product-miniature__image,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature:hover .product-miniature__top img {
  transform: none;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__image-container,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__image-link {
  display: block;
  width: 100%;
  height: 100%;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__quickview-button,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__quickview-touch {
  display: none !important;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-flags {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 2;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__bottom {
  flex: 1;
  min-width: 0;
  padding: 0;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 16px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__infos {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__meta {
  font-size: 12px;
  margin-bottom: 4px;
  order: -1;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__title {
  font-size: 15px;
  -webkit-line-clamp: 3;
  margin-bottom: 8px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__prices {
  margin-top: 0;
  padding-top: 0;
  text-align: right;
  width: 100%;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__price {
  font-size: 22px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__actions {
  margin-top: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  flex-shrink: 0;
  gap: 10px;
  min-width: 0;
  width: auto;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__form {
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  width: auto;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .quantity-button {
  display: none !important;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__add {
  width: auto;
  max-width: none;
  justify-content: center;
  padding: 0.45rem 0.9rem;
  font-size: 0.78rem;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__add-text {
  display: inline !important;
}

@media (max-width: 767.98px) {
  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__inner {
    flex-direction: column;
    gap: 14px;
    padding: 14px;
  }

  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__top {
    width: 100%;
    flex-basis: auto;
    aspect-ratio: 16 / 10;
    align-self: stretch;
  }

  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__bottom {
    flex-direction: column;
  }

  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__actions {
    align-items: flex-end;
    min-width: 0;
    width: 100%;
  }

  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__form {
    width: auto;
  }

  body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products.nmd-products-view--list .product-miniature__prices {
    text-align: left;
    width: 100%;
  }
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) #products {
  padding-bottom: 48px;
}

/* ── Pagination (mockup) ────────────────────────────────────── */
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .products__pagination {
  margin-top: 32px;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-pagination,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .pagination__container.nmd-pagination {
  display: flex;
  justify-content: center;
  padding-top: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .pagination__number {
  display: none !important;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-pagination__list,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) ul.pagination.nmd-pagination__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-pagination__list .page-item {
  margin: 0;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-pagination__btn.page-link,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-pagination__list .page-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  min-width: 38px;
  padding: 0;
  border-radius: 8px;
  border: 1.5px solid var(--nmd-hero-gray, #d5d7e4);
  background: #fff;
  color: var(--nmd-dark, #1a1c2e);
  font-family: var(--nmd-font-sans, 'DM Sans', sans-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  box-shadow: none;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-pagination__btn.page-link:hover:not(:disabled):not(.disabled),
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-pagination__list .page-link:hover:not(:disabled):not(.disabled) {
  border-color: var(--nmd-purple, #5b3fc8);
  color: var(--nmd-purple, #5b3fc8);
  background: #fff;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .page-item.active .nmd-pagination__btn.page-link,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .page-item.active .page-link {
  background: var(--nmd-purple, #5b3fc8);
  border-color: var(--nmd-purple, #5b3fc8);
  color: #fff;
  font-weight: 700;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-pagination__btn.page-link:disabled,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-pagination__btn.page-link.disabled,
body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .page-item.disabled .nmd-pagination__btn {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}

body:is(.page-category, .page-new-products, .page-best-sales, .page-prices-drop, .page-search, .page-manufacturer, .page-supplier) .nmd-pagination__ellipsis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  color: var(--nmd-muted, #6b6d8a);
  border: 0;
  background: transparent;
}
