/* Responsive restoration for missing Otomatic product styles.
 * Scoped to Amazon product blocks: catalogue photos and theme layout stay unchanged.
 */
body .amazon-products,
body .amazon-products * { box-sizing:border-box; }
body .amazon-products[data-template="grid_3x"],
body .amazon-products[data-template="grid_2x"],
body .amazon-products[data-template="grid_1x"] {
  display:grid;
  gap:16px;
  min-width:0;
  max-width:100%;
  margin:24px 0;
  container-type:inline-size;
}
body .amazon-products[data-template="grid_3x"] { grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); }
body .amazon-products[data-template="grid_2x"] { grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); }
body .amazon-products[data-template="grid_1x"] { grid-template-columns:minmax(0,1fr); }
body .amazon-products[data-template^="grid"] .amazon-product {
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:16px;
  margin:0;
  border:1px solid #dce1df;
  border-radius:12px;
  background:#fff;
  color:#20342e;
  overflow:hidden;
}
body .amazon-products[data-template^="grid"] .amazon-product-content {
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
}
body .amazon-products[data-template^="grid"] .amazon-product-thumbnail {
  width:100%;
  height:180px;
  aspect-ratio:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  overflow:hidden;
}
body .amazon-products .amazon-product-thumbnail img {
  display:block;
  width:100%;
  height:100%;
  max-height:180px;
  margin:0;
  padding:8px;
  object-fit:contain;
}
body .amazon-products[data-template^="grid"] .amazon-product-title {
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  line-clamp:3;
  min-height:4.35em;
  max-height:4.35em;
  margin:12px 0 0;
  overflow:hidden;
  font-size:15px;
  line-height:1.45;
  font-weight:600;
  hyphens:manual;
  overflow-wrap:break-word;
}
body .amazon-products .amazon-product-price {
  margin:14px 0 0;
  font-size:20px;
  line-height:1.25;
  font-weight:700;
}
body .amazon-products .amazon-product-price small {
  display:block;
  margin-top:5px;
  color:#56655f;
  font-size:11px;
  line-height:1.45;
  font-weight:400;
}
body .amazon-products .amazon-product-button { margin:14px 0 0; width:100%; }
body .amazon-products .amazon-product-button > a {
  display:inline-flex!important;
  width:100%;
  min-height:44px;
  height:44px!important;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:10px 12px!important;
  border-radius:7px;
  font-size:13px;
  line-height:1.25;
  text-decoration:none!important;
  white-space:nowrap;
  box-sizing:border-box;
}
body .amazon-products .amazon-product-button > a svg {
  display:block;
  flex:0 0 18px;
  width:18px!important;
  height:18px!important;
  margin:0;
}
body .amazon-products .amazon-product-button-label { min-width:0; white-space:nowrap; }
@container (max-width:520px) {
  body .amazon-products[data-template^="grid"] .amazon-product {
    display:grid;
    grid-template-columns:96px minmax(0,1fr);
    align-items:start;
    gap:12px;
    padding:14px;
  }
  body .amazon-products[data-template^="grid"] .amazon-product-content { display:contents; }
  body .amazon-products[data-template^="grid"] .amazon-product-thumbnail {
    grid-column:1;
    grid-row:1 / span 2;
    width:96px;
    height:124px;
  }
  body .amazon-products[data-template^="grid"] .amazon-product-title {
    grid-column:2;
    grid-row:1;
    min-height:0;
    margin:0;
  }
  body .amazon-products[data-template^="grid"] .amazon-product-price {
    grid-column:2;
    grid-row:2;
    margin:0;
  }
  body .amazon-products[data-template^="grid"] .amazon-product-button {
    grid-column:1 / -1;
    grid-row:3;
    margin:0;
  }
}

/* Keep each site's palette, with an accessible fallback. */
body .amazon-products[data-template] .amazon-product-button > a {
 background:var(--greg-amazon-ui-bg,#925000)!important;
 color:var(--greg-amazon-ui-fg,#ffffff)!important;
}
body .amazon-products .amazon-product-button > a:focus-visible { outline:3px solid currentColor; outline-offset:3px; }
body .amazon-products .amazon-product-thumbnail > a { display:flex; width:100%; height:100%; }
