/* Approved peach and matcha palette, scoped to the public product catalogue. */
.marketplace-cloud-product-card {
  --product-ink: #24261b;
  --product-muted: #616453;
  --product-line: #e6e8dd;
  --product-peach: #f1dfd3;
  --product-green: #587d0d;
  --product-green-ink: #405717;
  --product-soft: #f1f6d9;
  border: 1px solid var(--product-line) !important;
  border-radius: 22px !important;
  background: #fff !important;
  color: var(--product-ink);
  box-shadow: 0 8px 24px rgb(70 57 35 / 8%) !important;
}

.marketplace-cloud-product-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 360px)) !important;
}

.marketplace-product-media {
  position: relative;
  box-sizing: border-box;
  height: 230px;
  padding: 12px;
  background: var(--product-peach);
}

.marketplace-product-media .marketplace-cloud-product-card-image {
  height: 100% !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  border-radius: 11px !important;
  object-fit: cover !important;
}

.marketplace-product-media .marketplace-cloud-product-image-empty {
  display: grid !important;
  place-items: center;
  background: #fffaf6;
  color: var(--product-muted);
  font-size: .875rem;
}

.marketplace-card-status {
  position: absolute;
  top: 24px;
  left: 24px;
  max-width: calc(100% - 96px);
  border-radius: 999px;
  padding: 7px 11px;
  background: var(--product-soft);
  color: var(--product-green-ink);
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.4;
}

.marketplace-card-status.is-growing {
  background: #fff0d7;
  color: #79520c;
}

.marketplace-product-save {
  position: absolute;
  top: 22px;
  right: 22px;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid var(--product-line);
  border-radius: 50%;
  padding: 0;
  background: #fff;
  color: var(--product-green-ink);
  box-shadow: 0 3px 10px rgb(36 38 27 / 10%);
  cursor: pointer;
}

.marketplace-product-save svg { width: 19px; height: 19px; }
.marketplace-product-save[aria-pressed="true"] { background: var(--product-green); color: #fff; border-color: var(--product-green); }
.marketplace-product-save[aria-pressed="true"] svg { fill: currentColor; }

.marketplace-cloud-product-card-body {
  gap: 10px !important;
  padding: 20px !important;
}

.marketplace-cloud-product-card-body .marketplace-card-category {
  color: var(--product-green-ink);
  font-size: .8125rem;
  line-height: 1.5;
}

.marketplace-cloud-product-card-body h3 {
  font-size: 1.3125rem !important;
  font-weight: 600;
  line-height: 1.5;
  color: var(--product-ink) !important;
  overflow-wrap: anywhere;
}

.marketplace-cloud-product-card-body > .marketplace-card-garden {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 8px;
  border: 0;
  padding: 0;
  line-height: 1.6;
}

.marketplace-card-garden strong { font-size: .875rem; font-weight: 500; color: var(--product-ink); }
.marketplace-cloud-product-card-body > .marketplace-card-garden small { font-size: .8125rem; color: var(--product-muted); }

.marketplace-cloud-product-card-body > p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  min-height: 0;
  font-size: .875rem;
  line-height: 1.6;
  color: var(--product-muted);
  overflow-wrap: anywhere;
}

.marketplace-card-specs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(70px, 1fr));
  gap: 12px;
  margin: 4px 0 0;
  border-radius: 11px;
  padding: 12px;
  background: var(--product-soft);
}

.marketplace-card-specs > div { min-width: 0; }
.marketplace-card-specs dt { margin-bottom: 4px; color: var(--product-green-ink); font-size: .75rem; line-height: 1.5; }
.marketplace-card-specs dd { margin: 0; color: var(--product-ink); font-size: .875rem; font-weight: 500; line-height: 1.5; overflow-wrap: anywhere; }

.marketplace-cloud-product-card-body > footer {
  flex-direction: column;
  align-items: stretch;
  gap: 16px;
  padding-top: 8px;
}

.marketplace-cloud-product-card-body > footer small { color: var(--product-muted); font-size: .75rem; letter-spacing: 0; }
.marketplace-cloud-product-card-body > footer b { color: var(--product-ink); font-size: 1.375rem; font-weight: 600; line-height: 1.45; overflow-wrap: anywhere; }
.marketplace-cloud-product-card-body > footer button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  width: 100%;
  min-height: 46px;
  border: 0;
  border-radius: 11px;
  padding: 11px 14px;
  background: var(--product-green);
  color: #fff;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.5;
}

.marketplace-cloud-product-card-body > .marketplace-card-save-note { display: block; font-size: .8125rem; color: var(--product-green-ink); }
.marketplace-card-save-note[hidden] { display: none !important; }
.marketplace-cloud-product-card button:focus-visible { outline: 3px solid var(--product-green-ink); outline-offset: 3px; }

@media (hover: hover) {
  .marketplace-cloud-product-card-body > footer button:hover { background: #4d6d15; color: #fff; }
}

@media (max-width: 640px) {
  .marketplace-cloud-product-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .marketplace-cloud-product-card-body { padding: 17px !important; }
}
