/* Tablet fallback remains a native select; fit its existing 44px row. */
@media (min-width: 768px) and (max-width: 1024px) {
  html body.m80-v7:not(.m80-v7-legal) .wd-product .wd-loop-prod-variations select:not(.m80-v7-native-variation-select) {
    height: 44px !important;
    min-height: 44px !important;
    padding-right: 36px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M5 7l5 5 5-5' fill='none' stroke='%23244d3d' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-position: right 12px center !important;
    background-size: 20px 20px !important;
    background-repeat: no-repeat !important;
  }
}

/* Proposal only. Keep failed lazy thumbnails inside the existing shelf card.
 * Missing derivatives still require source/file restoration; this only bounds
 * the layout and does not make a broken image a verified loaded photo. */
html body.m80-v7 .products .wd-product-wrapper:has(img.m80-thumbnail-fallback) {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
html body.m80-v7 .products .wd-loop-prod-thumb:has(img.m80-thumbnail-fallback) {
  width: 100% !important;
  min-width: 0 !important;
  aspect-ratio: 1 / 1 !important;
}
html body.m80-v7 .products .wd-product-img-link:has(img.m80-thumbnail-fallback) {
  width: 100% !important;
  height: 100% !important;
}
html body.m80-v7 .products img.m80-thumbnail-fallback {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

/* Native tablet fallback already has an 8px tbody grid gap; keep select inside its 44px row. */
@media (min-width: 768px) and (max-width: 1024px) {
 html body.m80-v7:not(.m80-v7-legal) .wd-product .wd-loop-prod-variations select:not(.m80-v7-native-variation-select) {
  margin-top: 0 !important;
 }
}
