/* Final price-preview release contract: compact, provenance-safe, uncropped, beautifully blended. */
#previewDialog[data-preview-release="v1"] {
  width: min(calc(100% - 24px), 900px) !important;
  max-width: 660px !important;
  max-height: calc(100dvh - 24px) !important;
  overflow: auto;
  border-radius: 16px !important;
  border: 1px solid rgba(223, 126, 158, .26) !important;
  background: radial-gradient(circle at 85% 15%, rgba(223, 126, 158, .07), transparent 60%), #08090d !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .85), 0 0 35px rgba(223, 126, 158, .07) !important;
}

#previewDialog[data-preview-release="v1"] .dialog-head {
  padding: 10px 16px !important;
  border-bottom: 1px solid rgba(239, 231, 220, .1) !important;
}

#previewDialog[data-preview-release="v1"] .dialog-head h2 {
  font-size: 1.18rem !important;
  line-height: 1.1 !important;
  margin: 2px 0 0 !important;
  color: #fff8ef !important;
}

#previewDialog[data-preview-release="v1"] .dialog-head .label {
  font-size: 12px !important;
  letter-spacing: .2em !important;
  color: var(--pink, #df7e9e) !important;
}

#previewDialog .close,
#previewDialog[data-preview-release="v1"] .close {
  width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(239, 231, 220, .2) !important;
  background: rgba(255, 255, 255, .03) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  line-height: 1 !important;
  transition: border-color .15s ease, background .15s ease !important;
}

#previewDialog .close:hover,
#previewDialog .close:focus-visible {
  border-color: var(--pink, #df7e9e) !important;
  background: rgba(223, 126, 158, .15) !important;
}

#previewDialog[data-preview-release="v1"] .preview-body {
  padding: 12px 16px 16px !important;
}

#previewDialog [data-preview-release="v1"] {
  grid-template-columns: 210px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: start !important;
}

#previewDialog .preview-media-stack {
  display: grid;
  min-width: 0;
  gap: 8px;
  align-content: start;
}

#previewDialog .preview-media-stack > .preview-media,
#previewDialog .preview-media-stack > .price-flower-preview__media,
#previewDialog .preview-media,
#previewDialog .price-flower-preview__media {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 195px !important;
  min-height: 0 !important;
  max-height: 195px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  border: 1px solid rgba(223, 126, 158, .18) !important;
  background:
    radial-gradient(circle at 50% 50%, rgba(223, 126, 158, .13) 0%, rgba(14, 16, 22, .88) 65%, #06070a 100%) !important;
  box-shadow: inset 0 0 35px 10px #06070a, 0 4px 16px rgba(0, 0, 0, .5) !important;
}

/* Atmospheric dark-mode vignette overlay to dissolve rectangular/square photo edges into the card */
#previewDialog .preview-media-stack > .preview-media::after,
#previewDialog .preview-media-stack > .price-flower-preview__media::after,
#previewDialog .preview-media::after,
#previewDialog .price-flower-preview__media::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  border-radius: inherit !important;
  box-shadow: inset 0 0 32px 10px #06070a, inset 0 0 10px 2px rgba(6, 7, 10, .75) !important;
  z-index: 2 !important;
}

#previewDialog .preview-media-stack > .preview-media > img,
#previewDialog .preview-media-stack > .price-flower-preview__media > img,
#previewDialog .preview-media > img,
#previewDialog .price-flower-preview__media > img,
#previewDialog img[data-flower-photo],
#previewDialog img[data-package-photo],
#previewDialog img[data-preview-media-photo="flower"] {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  width: auto !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 auto !important;
  padding: 6px !important;
  box-sizing: border-box !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
  image-rendering: auto;
  -webkit-mask-image:
    linear-gradient(to right, transparent 0%, #000 14%, #000 86%, transparent 100%),
    linear-gradient(to bottom, transparent 0%, #000 14%, #000 86%, transparent 100%) !important;
  mask-image:
    linear-gradient(to right, transparent 0%, #000 14%, #000 86%, transparent 100%),
    linear-gradient(to bottom, transparent 0%, #000 14%, #000 86%, transparent 100%) !important;
  -webkit-mask-composite: source-in !important;
  mask-composite: intersect !important;
  filter: drop-shadow(0 6px 14px rgba(0, 0, 0, .65)) contrast(1.04) saturate(1.06) !important;
  transition: transform .22s ease, filter .22s ease !important;
}


#previewDialog .preview-media-stack > .price-terpene-profile,
#previewDialog .preview-media-stack > .price-terpene-chart {
  margin: 0 !important;
  padding: 8px 10px !important;
  border: 1px solid rgba(239, 231, 220, .1) !important;
  border-radius: 10px !important;
  background: rgba(255, 255, 255, .02) !important;
}

#previewDialog .preview-media-stack .price-terpene-profile h4,
#previewDialog .preview-media-stack .price-terpene-chart h4 {
  margin: 0 0 5px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #e6dccf !important;
}

#previewDialog .preview-media-stack .price-terpene-profile__visual {
  grid-template-columns: 46px minmax(0, 1fr) !important;
  gap: 8px !important;
}

#previewDialog .preview-media-stack .price-terpene-donut {
  width: 44px !important;
  height: 44px !important;
}

#previewDialog .preview-media-stack .price-terpene-donut::before {
  width: 28px !important;
  height: 28px !important;
}

#previewDialog .price-terpene-donut > span,
#previewDialog .image-kind,
#previewDialog .price-illustration-disclosure,
#priceTableBody .image-kind {
  display: none !important;
}

#previewDialog .preview-media-stack .price-terpene-legend {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 3px 6px !important;
}

#previewDialog .preview-media-stack .price-terpene-legend__item {
  min-height: 20px !important;
  padding: 2px 4px !important;
  font-size: 12px !important;
}

#previewDialog .preview-media-stack .price-terpene-chart__row {
  grid-template-columns: minmax(70px, 1fr) 34px minmax(54px, 1.15fr) !important;
  min-height: 24px !important;
  gap: 5px !important;
  font-size: 12px !important;
}

#previewDialog [data-preview-release="v1"] .price-flower-preview__details {
  justify-content: flex-start !important;
  padding-top: 0 !important;
  min-width: 0;
}

#previewDialog [data-preview-release="v1"] .price-flower-preview__details .product-title {
  font-size: 1.35rem !important;
  line-height: 1.12 !important;
  margin: 0 0 2px !important;
  color: #fff8ef !important;
}

#previewDialog [data-preview-release="v1"] .price-flower-preview__details .producer {
  font-size: 12px !important;
  color: var(--muted, #b6a994) !important;
  margin: 0 0 6px !important;
}

#previewDialog [data-preview-release="v1"] .price-flower-preview__details > span.label {
  display: none !important;
  font-size: 12px !important;
  letter-spacing: .15em !important;
  margin-bottom: 2px !important;
}

#previewDialog [data-preview-release="v1"] .preview-facts,
#previewDialog [data-preview-release="v1"] .price-detail-facts {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 3px 10px !important;
  margin-top: 6px !important;
}

#previewDialog [data-preview-release="v1"] .preview-fact {
  min-height: 0 !important;
  padding: 3px 0 !important;
  border-top: 1px solid rgba(239, 231, 220, .08) !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
}

#previewDialog [data-preview-release="v1"] .preview-fact strong {
  margin-bottom: 1px !important;
  font-size: 12px !important;
  letter-spacing: .06em !important;
  color: var(--faint, #857a6a) !important;
}

#previewDialog [data-preview-release="v1"] .price-prescription {
  margin-top: 8px !important;
  padding: 7px 10px !important;
  font-size: 12px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(239, 231, 220, .1) !important;
  background: rgba(255, 255, 255, .02) !important;
}

#previewDialog [data-preview-release="v1"] .price-detail-cta {
  min-height: 34px !important;
  margin-top: 8px !important;
  padding: 6px 14px !important;
  font-size: 12px !important;
  letter-spacing: .1em !important;
  border-radius: 7px !important;
}

#previewDialog .price-preview-no-media {
  display: grid;
  width: min(100%, 22ch);
  min-height: 80px;
  place-items: center;
  margin: auto;
  padding: 12px;
  border: 1px dashed rgba(239, 231, 220, .22);
  border-radius: 10px;
  color: var(--muted, #b6a994);
  font: 650 12px/1.35 var(--ui, 'Hanken Grotesk', system-ui, sans-serif);
  text-align: center;
}

#priceTableBody .thumb-button img[data-package-photo],
#previewDialog img[data-package-photo] {
  display: block !important;
  object-fit: contain !important;
}

@media (max-width: 720px) {
  #previewDialog[data-preview-release="v1"] {
    width: min(calc(100% - 16px), 480px) !important;
    max-height: calc(100dvh - 16px) !important;
    border-radius: 14px !important;
  }

  #previewDialog [data-preview-release="v1"] {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  #previewDialog .preview-media-stack > .preview-media,
  #previewDialog .preview-media-stack > .price-flower-preview__media {
    height: 175px !important;
    max-height: 175px !important;
  }

  #previewDialog [data-preview-release="v1"] .price-flower-preview__details .product-title {
    font-size: 1.22rem !important;
  }

  #previewDialog .preview-media-stack .price-terpene-profile__visual {
    grid-template-columns: 44px minmax(0, 1fr) !important;
  }

  #previewDialog .preview-media-stack .price-terpene-donut {
    width: 42px !important;
    height: 42px !important;
  }

  #previewDialog .preview-media-stack .price-terpene-donut::before {
    width: 26px !important;
    height: 26px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #previewDialog img { transition: none !important; }
}

