/* DomShop – Video Discount (form My Account + widget home + lightbox) */

/* =========================================================================
   1) MY ACCOUNT – Stato endpoint /ottieni-sconto
   ========================================================================= */
.ds-vd-panel {
  font-family: var(--ds-font, "Inter", system-ui, sans-serif);
  color: var(--ds-black, #2b2b2b);
}

.ds-vd-alert {
  margin: 0 0 16px;
  padding: 12px 14px;
  border-radius: var(--ds-radius, 12px);
  border: 1px solid var(--ds-border, rgba(0,0,0,.12));
  background: var(--ds-surface, #fbfbf7);
  font-size: 14px;
}
.ds-vd-alert--err {
  background: rgba(180, 83, 9, .08);
  border-color: rgba(180, 83, 9, .25);
  color: var(--ds-warning, #b45309);
}
.ds-vd-alert--ok {
  background: rgba(47, 125, 74, .08);
  border-color: rgba(47, 125, 74, .25);
  color: var(--ds-success, #2f7d4a);
}

.ds-vd-state {
  margin: 0 0 12px;
  padding: 14px 16px;
  border-radius: var(--ds-radius, 12px);
  background: var(--ds-surface-2, #f1f1ec);
  font-size: 14px;
}
.ds-vd-state--pending { border-left: 4px solid var(--ds-warning, #b45309); }
.ds-vd-state--rejected { border-left: 4px solid var(--ds-warning, #b45309); }

/* Coupon box (approved_valid) */
.ds-vd-coupon { margin: 0; }
.ds-vd-coupon__box {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  padding: 14px;
  border-radius: var(--ds-radius, 12px);
  border: 1px dashed var(--ds-border-strong, rgba(0,0,0,.22));
  background: #fff;
}
.ds-vd-coupon__code {
  display: inline-block;
  padding: 8px 14px;
  border-radius: var(--ds-radius-sm, 10px);
  background: var(--ds-surface-2, #f1f1ec);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--ds-black, #2b2b2b);
}
.ds-vd-coupon__meta { margin: 10px 0 0; font-size: 13px; color: var(--ds-muted, rgba(0,0,0,.6)); }

/* Lista recensioni esistenti */
.ds-vd-sub {
  margin: 18px 0 10px;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -.2px;
}
.ds-vd-list { list-style: none; margin: 0 0 18px; padding: 0; display: grid; gap: 10px; }
.ds-vd-row {
  display: grid;
  gap: 8px;
  padding: 12px 14px;
  border: 1px solid var(--ds-border, rgba(0,0,0,.12));
  border-radius: var(--ds-radius, 12px);
  background: #fff;
}
.ds-vd-row__head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.ds-vd-row__main { display: flex; flex-direction: column; gap: 2px; flex: 1 1 auto; min-width: 0; }
.ds-vd-row__product { font-weight: 600; color: var(--ds-black, #2b2b2b); text-decoration: none; border-bottom: 1px dashed transparent; }
.ds-vd-row__product:hover { border-bottom-color: var(--ds-border-strong, rgba(0,0,0,.22)); }
.ds-vd-row__more { font-size: 12px; color: var(--ds-muted, rgba(0,0,0,.6)); font-weight: 500; }
.ds-vd-row__date { font-size: 12px; color: var(--ds-muted, rgba(0,0,0,.6)); }
.ds-vd-row__order { font-size: 12px; color: var(--ds-muted, rgba(0,0,0,.6)); }
.ds-vd-row__state {
  margin-left: auto;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  padding: 3px 8px;
  border-radius: 999px;
  background: var(--ds-surface-2, #f1f1ec);
  color: var(--ds-black, #2b2b2b);
}
.ds-vd-row__state--pending { background: rgba(180, 83, 9, .12); color: var(--ds-warning, #b45309); }
.ds-vd-row__state--approved_valid { background: rgba(47, 125, 74, .12); color: var(--ds-success, #2f7d4a); }
.ds-vd-row__state--approved_used,
.ds-vd-row__state--approved_expired { background: var(--ds-surface-2, #f1f1ec); color: var(--ds-muted, rgba(0,0,0,.6)); }
.ds-vd-row__state--rejected { background: rgba(180, 83, 9, .12); color: var(--ds-warning, #b45309); }
.ds-vd-row__reason { margin: 0; font-size: 13px; color: var(--ds-muted, rgba(0,0,0,.6)); }

/* =========================================================================
   2) FORM
   ========================================================================= */
.ds-vd-form {
  display: grid;
  gap: 16px;
  background: #fff;
  border: 1px solid var(--ds-border, rgba(0,0,0,.12));
  border-radius: var(--ds-radius, 12px);
  padding: 18px;
  box-shadow: var(--ds-shadow, 0 6px 20px rgba(0, 0, 0, .025));
}

.ds-vd-field { display: grid; gap: 6px; }
.ds-vd-field label {
  font-size: 13px;
  font-weight: 600;
  color: var(--ds-black, #2b2b2b);
}
.ds-vd-form select,
.ds-vd-form textarea,
.ds-vd-form input[type="file"] {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--ds-border, rgba(0,0,0,.12));
  border-radius: var(--ds-radius-sm, 10px);
  background: #fff;
  font-family: var(--ds-font);
  font-size: 14px;
  color: var(--ds-black, #2b2b2b);
}
.ds-vd-form textarea { min-height: 96px; resize: vertical; }
.ds-vd-form input[type="file"] { padding: 8px; }

.ds-vd-help { margin: 0; font-size: 12px; color: var(--ds-muted, rgba(0,0,0,.6)); }

.ds-vd-error {
  margin: 4px 0 0;
  padding: 8px 10px;
  border-radius: 8px;
  background: rgba(180, 83, 9, .08);
  color: var(--ds-warning, #b45309);
  font-size: 12px;
}

.ds-vd-consent {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-weight: 500;
  font-size: 13px;
  color: var(--ds-black, #2b2b2b);
}
.ds-vd-consent input { margin-top: 3px; }

/* Star rating */
.ds-vd-rating {
  display: inline-flex;
  flex-direction: row-reverse;
  gap: 4px;
}
.ds-vd-rating input { position: absolute; left: -9999px; }
.ds-vd-rating label {
  font-size: 28px;
  line-height: 1;
  color: var(--ds-border-strong, rgba(0,0,0,.22));
  cursor: pointer;
  transition: color .15s;
}
.ds-vd-rating input:checked ~ label,
.ds-vd-rating label:hover,
.ds-vd-rating label:hover ~ label {
  color: #f5a623;
}

.ds-vd-video-preview { margin-top: 8px; }
.ds-vd-video-preview video {
  max-width: 100%;
  border-radius: var(--ds-radius-sm, 10px);
  background: #000;
  aspect-ratio: 9 / 16;
  object-fit: contain;
  max-height: 360px;
}
.ds-vd-video-meta {
  margin: 6px 0 0;
  font-size: 12px;
  color: var(--ds-muted, rgba(0,0,0,.6));
}

.ds-vd-submit {
  background: var(--ds-black, #2b2b2b);
  color: #fff;
  border: 1px solid var(--ds-black, #2b2b2b);
}
.ds-vd-submit[disabled] { opacity: .5; cursor: not-allowed; }

/* =========================================================================
   3) WIDGET HOME – feed video stile TikTok/Reels
   ========================================================================= */
.ds-vrw-section {
  margin: 48px auto;
  padding: 0 16px;
  max-width: 1200px;
  font-family: var(--ds-font, "Inter", system-ui, sans-serif);
}

/* Header a 3-colonne: [filler 1fr] [titolo centrato] [frecce 1fr a destra]
   Il filler simmetrico garantisce che il titolo resti perfettamente centrato
   anche con le frecce a destra. */
.ds-vrw-section .ds-sectionsell__head {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
  margin-bottom: 28px;
}
.ds-vrw-section .ds-sectionsell__title {
  grid-column: 2;
  justify-self: center;
  margin: 0;
  font-size: clamp(22px, 2.4vw, 30px);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--ds-black, #2b2b2b);
  text-align: center;
}
.ds-vrw-section .ds-sectionsell__nav {
  grid-column: 3;
  justify-self: end;
  display: flex;
  gap: 10px;
}

/* Rating dentro il box CTA della PDP (sopra add-to-cart) */
.ds-vrw-pdp-rating {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  padding: 0;
}
.ds-vrw-pdp-rating__text {
  font-family: var(--ds-font, "Inter", system-ui, sans-serif);
  font-size: 13px;
  font-weight: 500;
  color: var(--ds-muted, rgba(0,0,0,.6));
}

/* Summary rating sotto al titolo (solo PDP) */
.ds-vrw-summary {
  grid-column: 2;
  justify-self: center;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: -8px;
  font-size: 14px;
  color: var(--ds-black, #2b2b2b);
}
.ds-vrw-summary__text {
  font-weight: 500;
  color: var(--ds-muted, rgba(0,0,0,.6));
}
@media (max-width: 768px) {
  .ds-vrw-summary {
    grid-column: 1;
    justify-self: center;
  }
}

/* =========================================================================
   FRECCE CAROSELLO — stile unificato per tutti i .ds-sectionsell__arrow
   (best seller home, review widget classico, widget video, eventuali altri).
   Sovrascrive lo stile base in style.css (~3592) sfruttando l'ordine di
   caricamento (questo file ha dipendenza `domshop-style` quindi vince).
   ========================================================================= */
.ds-sectionsell__arrow {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--ds-border, rgba(0,0,0,.12));
  color: var(--ds-black, #2b2b2b);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  user-select: none;
  transition: background .2s, border-color .2s, transform .2s, color .2s;
}
.ds-sectionsell__arrow:hover,
.ds-sectionsell__arrow:focus-visible {
  background: var(--ds-black, #2b2b2b);
  color: #fff;
  border-color: var(--ds-black, #2b2b2b);
  outline: none;
}
.ds-sectionsell__arrow:active { transform: scale(0.95); }
.ds-sectionsell__arrow[disabled],
.ds-sectionsell__arrow:disabled {
  opacity: .35;
  cursor: not-allowed;
  background: #fff;
  color: var(--ds-black, #2b2b2b);
}

/* Carousel */
.ds-vrw-section .ds-sectionsell__carousel {
  /* Permettiamo allo shadow delle card di sforare verticalmente. */
  padding: 8px 0;
}
.ds-vrw-track {
  list-style: none;
  margin: 0;
  padding: 8px 4px 24px;
  display: flex;
  gap: 28px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  justify-content: safe center;
}
.ds-vrw-track::-webkit-scrollbar { height: 6px; }
.ds-vrw-track::-webkit-scrollbar-thumb { background: var(--ds-border, rgba(0,0,0,.12)); border-radius: 6px; }

.ds-vrw-card {
  flex: 0 0 auto;
  width: clamp(280px, 24vw, 340px);
  display: flex;
  flex-direction: column;
  gap: 14px;
  scroll-snap-align: start;
  cursor: pointer;
  background: transparent;
}

.ds-vrw-card__media {
  border-radius: 20px;
  box-shadow: 0 8px 28px rgba(0, 0, 0, .08), 0 2px 6px rgba(0, 0, 0, .04);
  transition: transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s cubic-bezier(.16,1,.3,1);
}
.ds-vrw-card:hover .ds-vrw-card__media {
  transform: translateY(-6px);
  box-shadow: 0 22px 50px rgba(0, 0, 0, .16), 0 4px 10px rgba(0, 0, 0, .06);
}
.ds-vrw-card:hover .ds-vrw-card__play { opacity: 0; }

.ds-vrw-card__play {
  transition: opacity .25s ease;
}

/* Mobile: card che riempiono quasi il viewport con peek di affordance.
   Header collassa a colonna (frecce sotto al titolo) per evitare strizzature. */
@media (max-width: 768px) {
  .ds-vrw-section { margin: 32px 0; padding: 0 12px; }
  .ds-vrw-section .ds-sectionsell__head {
    grid-template-columns: 1fr;
    justify-items: center;
    margin-bottom: 18px;
  }
  .ds-vrw-section .ds-sectionsell__title { grid-column: 1; }
  .ds-vrw-section .ds-sectionsell__nav { grid-column: 1; justify-self: center; }
  .ds-vrw-track { gap: 16px; padding: 4px 4px 20px; }
  .ds-vrw-card { width: clamp(240px, 78vw, 300px); }
}
.ds-vrw-card__media {
  position: relative;
  border-radius: var(--ds-radius, 12px);
  overflow: hidden;
  background: var(--ds-surface-2, #f1f1ec);
  aspect-ratio: 9 / 16;
  box-shadow: var(--ds-shadow, 0 6px 20px rgba(0, 0, 0, .025));
}
.ds-vrw-card__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.ds-vrw-card__play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 56px;
  height: 56px;
  border-radius: 999px;
  background: rgba(0, 0, 0, .55);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .25);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.ds-vrw-card:hover .ds-vrw-card__play { background: rgba(0, 0, 0, .75); }
.ds-vrw-card__duration {
  position: absolute;
  right: 8px;
  bottom: 8px;
  background: rgba(0, 0, 0, .65);
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 7px;
  border-radius: 6px;
}

.ds-vrw-card__meta { display: grid; gap: 4px; font-size: 12px; color: var(--ds-black, #2b2b2b); }
.ds-vrw-card__id { display: flex; align-items: center; gap: 8px; }
.ds-vrw-card__avatar {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--ds-surface-2, #f1f1ec);
  color: var(--ds-black, #2b2b2b);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
}
.ds-vrw-card__name { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ds-vrw-card__initials { font-weight: 700; font-size: 13px; }
.ds-vrw-card__verified {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 10px;
  color: var(--ds-success, #2f7d4a);
  font-weight: 600;
}
.ds-vrw-card__product {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--ds-black, #2b2b2b);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ds-vrw-card__product:hover { border-bottom-color: var(--ds-border-strong, rgba(0,0,0,.22)); }
.ds-vrw-card__more {
  font-size: 11px;
  font-weight: 600;
  color: var(--ds-muted, rgba(0,0,0,.6));
  letter-spacing: .02em;
}
.ds-vrw-card__date { font-size: 11px; color: var(--ds-muted, rgba(0,0,0,.6)); }
.ds-vrw-card__rating .star-rating {
  font-size: 12px;
}

/* =========================================================================
   4) LIGHTBOX — TikTok/Reels modal
   ========================================================================= */
.ds-vrw-lightbox {
  position: fixed;
  inset: 0;
  z-index: 100;
  background: rgba(10, 10, 10, .92);
  -webkit-backdrop-filter: blur(20px) saturate(120%);
          backdrop-filter: blur(20px) saturate(120%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  font-family: var(--ds-font, "Inter", system-ui, sans-serif);
  animation: ds-vrw-fade .25s ease both;
}
.ds-vrw-lightbox[hidden] { display: none; }
body.ds-vrw-lock { overflow: hidden; }

@keyframes ds-vrw-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes ds-vrw-pop {
  from { opacity: 0; transform: scale(.94) translateY(8px); }
  to   { opacity: 1; transform: scale(1)   translateY(0); }
}

/* Quando la lightbox è aperta, nascondi tutti gli elementi flottanti del tema
   (WhatsApp / CookieYes revisit / bottom-nav mobile / Cookie Law Info) che
   altrimenti bucherebbero l'overlay con il loro z-index superiore. */
body.ds-vrw-lock #ds-wa-minimized,
body.ds-vrw-lock #ds-wa-popup,
body.ds-vrw-lock #ds-wa-overlay,
body.ds-vrw-lock .cky-btn-revisit-wrapper,
body.ds-vrw-lock .cky-btn-revisit,
body.ds-vrw-lock .cky-revisit-consent,
body.ds-vrw-lock .ds-mobile-nav,
body.ds-vrw-lock #cookie-law-info-bar,
body.ds-vrw-lock .cli-bar-container {
  display: none !important;
}

/* Close X — top right floating */
.ds-vrw-lightbox__close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .12);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .18);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 3;
  transition: background .2s, transform .2s, border-color .2s;
}
.ds-vrw-lightbox__close:hover,
.ds-vrw-lightbox__close:focus-visible {
  background: rgba(255, 255, 255, .22);
  border-color: rgba(255, 255, 255, .3);
  transform: scale(1.04);
  outline: none;
}

/* Prev / Next nav — laterali */
.ds-vrw-lightbox__nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 56px;
  height: 56px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .12);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .18);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 3;
  transition: background .2s, transform .2s, opacity .2s;
}
.ds-vrw-lightbox__nav:hover,
.ds-vrw-lightbox__nav:focus-visible {
  background: rgba(255, 255, 255, .22);
  transform: translateY(-50%) scale(1.06);
  outline: none;
}
.ds-vrw-lightbox__nav:disabled,
.ds-vrw-lightbox__nav[disabled] {
  opacity: .25;
  cursor: not-allowed;
  transform: translateY(-50%);
}
.ds-vrw-lightbox__nav--prev { left: 24px; }
.ds-vrw-lightbox__nav--next { right: 24px; }

/* Stage (video + side) */
.ds-vrw-lightbox__stage {
  display: flex;
  gap: 28px;
  align-items: center;
  max-width: 100%;
  max-height: 100%;
  animation: ds-vrw-pop .35s cubic-bezier(.16, 1, .3, 1) both;
}

.ds-vrw-lightbox__videoWrap {
  flex: 0 0 auto;
  position: relative;
  aspect-ratio: 9 / 16;
  height: min(86vh, 760px);
  width: auto;
  border-radius: 24px;
  overflow: hidden;
  background: #000;
  box-shadow: 0 30px 80px rgba(0, 0, 0, .55), 0 10px 30px rgba(0, 0, 0, .3);
}
.ds-vrw-lightbox__video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  background: #000;
}

/* Side panel */
.ds-vrw-lightbox__side {
  flex: 0 0 auto;
  width: clamp(260px, 26vw, 340px);
  display: flex;
  flex-direction: column;
  gap: 18px;
  color: #fff;
  min-width: 0;
}

.ds-vrw-lightbox__author {
  display: flex;
  align-items: center;
  gap: 12px;
}
.ds-vrw-lightbox__avatar {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .14);
  border: 1px solid rgba(255, 255, 255, .2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 15px;
  letter-spacing: .03em;
}
.ds-vrw-lightbox__authorMeta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.ds-vrw-lightbox__initials {
  display: block;
  font-weight: 700;
  font-size: 17px;
  letter-spacing: .02em;
}
.ds-vrw-lightbox__verified {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  color: #65d693;
  font-weight: 600;
  letter-spacing: .03em;
}
.ds-vrw-lightbox__rating { color: #f5b73d; font-size: 16px; line-height: 1; }
.ds-vrw-lightbox__rating .star-rating { font-size: 18px; }

.ds-vrw-lightbox__products {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 14px 16px;
  background: rgba(255, 255, 255, .06);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 14px;
}
.ds-vrw-lightbox__productsTitle {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(255, 255, 255, .6);
  font-weight: 700;
}
.ds-vrw-lightbox__productsList {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.ds-vrw-lightbox__productsList li {
  margin: 0;
  position: relative;
  padding-left: 14px;
}
.ds-vrw-lightbox__productsList li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .5);
}
.ds-vrw-lightbox__productsList a {
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  border-bottom: 1px solid transparent;
  transition: border-color .2s;
}
.ds-vrw-lightbox__productsList a:hover { border-bottom-color: rgba(255, 255, 255, .6); }

.ds-vrw-lightbox__meta {
  display: flex;
  gap: 14px;
  font-size: 12px;
  color: rgba(255, 255, 255, .6);
  font-weight: 500;
  letter-spacing: .02em;
}
.ds-vrw-lightbox__meta > span:empty { display: none; }

/* =========================================================================
   LIGHTBOX MOBILE — full-screen + bottom-sheet info
   ========================================================================= */
@media (max-width: 768px) {
  .ds-vrw-lightbox {
    padding: 0;
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
    background: #000;
  }
  .ds-vrw-lightbox__close {
    top: env(safe-area-inset-top, 16px);
    right: 16px;
    width: 40px;
    height: 40px;
  }
  .ds-vrw-lightbox__nav {
    width: 44px;
    height: 44px;
    top: 50%;
  }
  .ds-vrw-lightbox__nav--prev { left: 12px; }
  .ds-vrw-lightbox__nav--next { right: 12px; }
  .ds-vrw-lightbox__stage {
    flex-direction: column;
    width: 100%;
    height: 100%;
    gap: 0;
    align-items: stretch;
  }
  .ds-vrw-lightbox__videoWrap {
    width: 100%;
    height: 100%;
    border-radius: 0;
    aspect-ratio: auto;
    box-shadow: none;
  }
  .ds-vrw-lightbox__video { object-fit: cover; }
  /* Bottom sheet overlay con info */
  .ds-vrw-lightbox__side {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    max-height: 50vh;
    overflow-y: auto;
    padding: 60px 18px calc(env(safe-area-inset-bottom, 0px) + 20px);
    color: #fff;
    background: linear-gradient(180deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, .55) 30%,
      rgba(0, 0, 0, .88) 70%,
      rgba(0, 0, 0, .95) 100%);
    pointer-events: auto;
    gap: 14px;
  }
  .ds-vrw-lightbox__products {
    background: rgba(255, 255, 255, .08);
    padding: 12px 14px;
  }
  .ds-vrw-lightbox__productsList {
    max-height: 120px;
    overflow-y: auto;
  }
}
