/* ZooMag final clean category list/grid restore — v2026-04-26 clean7 */

#product-list.zm-final-grid,
body.zm-final-grid-mode #product-list {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

#product-list.zm-final-list,
body.zm-final-list-mode #product-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
}

#product-list .zoomag-product-item {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

/* GRID */
#product-list.zm-final-grid .zoomag-product-item,
body.zm-final-grid-mode #product-list .zoomag-product-item {
  display: block !important;
  min-height: 0 !important;
}

#product-list.zm-final-grid .petz-product-card,
body.zm-final-grid-mode #product-list .petz-product-card {
  display: flex !important;
  flex-direction: column !important;
  height: 410px !important;
  min-height: 410px !important;
  width: 100% !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

#product-list.zm-final-grid .petz-image-section,
body.zm-final-grid-mode #product-list .petz-image-section {
  width: 100% !important;
  height: 205px !important;
  flex: 0 0 205px !important;
  padding: 10px 10px 0 !important;
}

#product-list.zm-final-grid .petz-image-link,
#product-list.zm-final-grid .petz-image-container,
body.zm-final-grid-mode #product-list .petz-image-link,
body.zm-final-grid-mode #product-list .petz-image-container {
  width: 100% !important;
  height: 100% !important;
}

#product-list.zm-final-grid .petz-product-image,
body.zm-final-grid-mode #product-list .petz-product-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

/* LIST — clean horizontal card */
#product-list.zm-final-list .zoomag-product-item,
body.zm-final-list-mode #product-list .zoomag-product-item {
  display: block !important;
  min-height: 0 !important;
}

#product-list.zm-final-list .petz-product-card,
body.zm-final-list-mode #product-list .petz-product-card {
  display: grid !important;
  grid-template-columns: 220px minmax(0, 1fr) !important;
  gap: 22px !important;
  width: 100% !important;
  height: auto !important;
  min-height: 230px !important;
  padding: 14px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #fff !important;
}

#product-list.zm-final-list .petz-image-section,
body.zm-final-list-mode #product-list .petz-image-section {
  width: 220px !important;
  height: 220px !important;
  min-width: 220px !important;
  max-width: 220px !important;
  padding: 0 !important;
  align-self: center !important;
  border-radius: 16px !important;
  overflow: hidden !important;
}

#product-list.zm-final-list .petz-image-link,
#product-list.zm-final-list .petz-image-container,
body.zm-final-list-mode #product-list .petz-image-link,
body.zm-final-list-mode #product-list .petz-image-container {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

#product-list.zm-final-list .petz-product-image,
body.zm-final-list-mode #product-list .petz-product-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

#product-list.zm-final-list .petz-content-section,
body.zm-final-list-mode #product-list .petz-content-section {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 230px !important;
  grid-template-areas:
    "header price"
    "features actions" !important;
  column-gap: 22px !important;
  row-gap: 10px !important;
  min-width: 0 !important;
  padding: 4px 2px !important;
  align-items: start !important;
}

#product-list.zm-final-list .petz-header,
body.zm-final-list-mode #product-list .petz-header { grid-area: header !important; min-width: 0 !important; }
#product-list.zm-final-list .petz-features,
body.zm-final-list-mode #product-list .petz-features { grid-area: features !important; display: flex !important; flex-wrap: wrap !important; gap: 8px !important; max-height: 78px !important; overflow: hidden !important; }
#product-list.zm-final-list .petz-pricing-section,
body.zm-final-list-mode #product-list .petz-pricing-section { grid-area: price !important; justify-self: end !important; text-align: right !important; min-width: 180px !important; }
#product-list.zm-final-list .petz-actions-section,
body.zm-final-list-mode #product-list .petz-actions-section { grid-area: actions !important; align-self: end !important; justify-self: stretch !important; }

#product-list.zm-final-list .petz-product-name a,
body.zm-final-list-mode #product-list .petz-product-name a {
  font-size: 18px !important;
  line-height: 1.35 !important;
  -webkit-line-clamp: 3 !important;
}

#product-list.zm-final-list .petz-price-main,
#product-list.zm-final-list .petz-special-price,
body.zm-final-list-mode #product-list .petz-price-main,
body.zm-final-list-mode #product-list .petz-special-price {
  font-size: 24px !important;
  line-height: 1.1 !important;
}

#product-list.zm-final-list .petz-action-buttons,
body.zm-final-list-mode #product-list .petz-action-buttons {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: center !important;
}

#product-list.zm-final-list .petz-cart-btn,
body.zm-final-list-mode #product-list .petz-cart-btn {
  min-height: 46px !important;
  width: 100% !important;
  border-radius: 12px !important;
}

#product-list.zm-final-list .petz-secondary-actions,
body.zm-final-list-mode #product-list .petz-secondary-actions {
  display: flex !important;
  gap: 8px !important;
}

#product-list.zm-final-list .petz-secondary-actions .petz-btn,
body.zm-final-list-mode #product-list .petz-secondary-actions .petz-btn {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  border-radius: 12px !important;
}

#product-list.zm-final-list .petz-decoration,
body.zm-final-list-mode #product-list .petz-decoration { display: none !important; }

#button-grid.zoomag-view-active,
#button-list.zoomag-view-active,
#button-grid.active,
#button-list.active {
  opacity: 1;
}

/* Remove variant helper note if a cached template still outputs it */
.zoohub-variant-switches__note,
[data-zm-variant-status] { display: none !important; }

@media (max-width: 1199px) {
  #product-list.zm-final-list .petz-product-card,
  body.zm-final-list-mode #product-list .petz-product-card { grid-template-columns: 190px minmax(0, 1fr) !important; }
  #product-list.zm-final-list .petz-image-section,
  body.zm-final-list-mode #product-list .petz-image-section { width: 190px !important; height: 190px !important; min-width: 190px !important; max-width: 190px !important; }
  #product-list.zm-final-list .petz-content-section,
  body.zm-final-list-mode #product-list .petz-content-section { grid-template-columns: 1fr !important; grid-template-areas: "header" "price" "features" "actions" !important; }
  #product-list.zm-final-list .petz-pricing-section,
  body.zm-final-list-mode #product-list .petz-pricing-section { justify-self: start !important; text-align: left !important; }
}

@media (max-width: 767px) {
  #product-list.zm-final-list .petz-product-card,
  body.zm-final-list-mode #product-list .petz-product-card { display: flex !important; flex-direction: column !important; padding: 12px !important; }
  #product-list.zm-final-list .petz-image-section,
  body.zm-final-list-mode #product-list .petz-image-section { width: 100% !important; max-width: none !important; min-width: 0 !important; height: 190px !important; }
  #product-list.zm-final-grid,
  body.zm-final-grid-mode #product-list { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)) !important; gap: 14px !important; }
}
