/* Studio Tomorrow · PASS 29 · R3.4.2 · Product Focus + Hotspot Motion */

/* Keep the expanded product view about the product itself. */
#shopLookOverlay .shop-look-context{display:none!important}

/* Give the product identity room instead of crushing title/price beside controls. */
.st-v34-unified-rail,
.studio-feed-product-popover.st-v34-normalized{
  grid-template-columns:58px minmax(0,1fr)!important;
  column-gap:12px!important;
  row-gap:8px!important;
  align-items:center!important;
}
.st-v34-unified-rail>img,
.studio-feed-product-popover.st-v34-normalized>img{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  align-self:center!important;
}
.st-v34-unified-rail .st-v34-rail-copy,
.studio-feed-product-popover.st-v34-normalized .st-v34-rail-copy{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  gap:3px!important;
  padding-right:2px!important;
}
.st-v34-unified-rail .st-v34-rail-copy strong,
.studio-feed-product-popover.st-v34-normalized .st-v34-rail-copy strong{
  font-size:13px!important;
  line-height:1.18!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}
.st-v34-unified-rail .st-v34-rail-copy span,
.studio-feed-product-popover.st-v34-normalized .st-v34-rail-copy span{
  font-size:11px!important;
  line-height:1.1!important;
}
.st-v34-unified-rail .st-v34-rail-actions,
.studio-feed-product-popover.st-v34-normalized .st-v34-rail-actions{
  grid-column:2!important;
  grid-row:2!important;
  display:grid!important;
  grid-template-columns:minmax(82px,104px) minmax(126px,1fr)!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  justify-content:stretch!important;
}
.st-v34-unified-rail .st-v34-size,
.studio-feed-product-popover.st-v34-normalized .st-v34-size,
.st-v34-unified-rail .st-v34-add,
.studio-feed-product-popover.st-v34-normalized .st-v34-add{
  width:100%!important;
  min-width:0!important;
}

/* Product hotspot: calm/dark/transparent at rest, brighter on intent. */
@keyframes stV342HotspotThrob{
  0%,100%{
    box-shadow:0 2px 10px rgba(8,20,76,.22),0 0 0 0 rgba(49,93,255,.20);
    transform:translate(-50%,-50%) scale(.94);
  }
  50%{
    box-shadow:0 3px 14px rgba(8,20,76,.28),0 0 0 7px rgba(49,93,255,0);
    transform:translate(-50%,-50%) scale(1.04);
  }
}
.review-photo .studio-feed-product-hotspot,
#shopLookHotspot{
  background:rgba(20,44,128,.48)!important;
  border:1.5px solid rgba(255,255,255,.72)!important;
  opacity:.74!important;
  box-shadow:0 2px 10px rgba(8,20,76,.22)!important;
  animation:stV342HotspotThrob 1.9s ease-in-out infinite!important;
  transition:background .16s ease,opacity .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
.review-photo .studio-feed-product-hotspot::after,
#shopLookHotspot::after{
  border-color:rgba(31,64,176,.22)!important;
}
.review-photo .studio-feed-product-hotspot:hover,
.review-photo .studio-feed-product-hotspot:focus-visible,
.review-photo .studio-feed-product-hotspot.is-active,
#shopLookHotspot:hover,
#shopLookHotspot:focus-visible{
  background:rgba(49,93,255,.94)!important;
  border-color:rgba(255,255,255,.98)!important;
  opacity:1!important;
  box-shadow:0 4px 18px rgba(49,93,255,.42),0 0 0 4px rgba(49,93,255,.14)!important;
  animation:none!important;
  transform:translate(-50%,-50%) scale(1.10)!important;
}
body.st-v34-admin .review-photo .studio-feed-product-hotspot.st-v34-dragging{
  background:rgba(49,93,255,.96)!important;
  opacity:1!important;
  animation:none!important;
  transform:translate(-50%,-50%) scale(1.16)!important;
}

@media(max-width:640px){
  .st-v34-unified-rail,
  .studio-feed-product-popover.st-v34-normalized{
    grid-template-columns:52px minmax(0,1fr)!important;
  }
  .st-v34-unified-rail>img,
  .studio-feed-product-popover.st-v34-normalized>img{
    width:52px!important;height:52px!important;
  }
  .st-v34-unified-rail .st-v34-rail-actions,
  .studio-feed-product-popover.st-v34-normalized .st-v34-rail-actions{
    grid-template-columns:minmax(76px,94px) minmax(116px,1fr)!important;
  }
}
