/* TVPH Shoppable Videos V5.2.1 */
.tvph-sv{width:100%;position:relative;box-sizing:border-box}
.tvph-sv-heading{margin:0 0 14px;text-align:center}
.tvph-sv-heading h2{margin:0;font-size:24px}

.tvph-sv-showcase{
  position:relative!important;
  width:100%!important;
  height:430px!important;
  padding:20px 0!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#effff1 0%,#e6fbe9 100%)!important;
  touch-action:pan-y!important;
}
.tvph-sv-track{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  overflow:visible!important;
}
.tvph-sv-card{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:185px!important;
  height:330px!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  cursor:pointer!important;
  transform-origin:center center!important;
  transition:transform .38s cubic-bezier(.22,.8,.2,1),opacity .38s ease,filter .38s ease!important;
  will-change:transform,opacity!important;
  visibility:visible!important;
}
.tvph-sv-card.is-active{
  width:250px!important;
  height:390px!important;
}
.tvph-sv-media{
  width:100%!important;height:100%!important;
  position:relative!important;
  overflow:hidden!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 12px 30px rgba(0,0,0,.16)!important;
}
.tvph-sv-media video{
  width:100%!important;height:100%!important;
  display:block!important;
  object-fit:cover!important;
  background:#111!important;
  border-radius:20px!important;
}
.tvph-sv-play{
  position:absolute!important;
  left:50%!important;top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:48px!important;height:48px!important;
  border-radius:50%!important;
  background:rgba(0,0,0,.45)!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;justify-content:center!important;
  font-size:18px!important;
  pointer-events:none!important;
}
.tvph-sv-mini-cart{
  position:absolute!important;
  right:10px!important;bottom:10px!important;
  width:38px!important;height:38px!important;
  border-radius:50%!important;
  background:rgba(0,0,0,.55)!important;color:#fff!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
.tvph-sv-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:20!important;
  width:42px!important;height:42px!important;
  border:0!important;border-radius:50%!important;
  background:rgba(255,255,255,.92)!important;
  color:#222!important;
  box-shadow:0 4px 16px rgba(0,0,0,.14)!important;
  cursor:pointer!important;
  font-size:22px!important;
}
.tvph-sv-prev{left:12px!important}
.tvph-sv-next{right:12px!important}

/* Fullscreen reel */
.tvph-sv-modal{
  position:fixed!important;inset:0!important;z-index:999999!important;
  display:none!important;align-items:center!important;justify-content:center!important;
  background:#000!important;overscroll-behavior:none!important;touch-action:none!important;
}
.tvph-sv-modal.is-open{display:flex!important}
.tvph-sv-backdrop{position:absolute!important;inset:0!important;background:#000!important}
.tvph-sv-close{
  position:absolute!important;z-index:100!important;top:16px!important;right:16px!important;
  width:42px!important;height:42px!important;border:0!important;border-radius:50%!important;
  background:rgba(0,0,0,.48)!important;color:#fff!important;font-size:22px!important;cursor:pointer!important;
}
.tvph-sv-counter{
  position:absolute!important;z-index:100!important;top:20px!important;left:50%!important;
  transform:translateX(-50%)!important;padding:6px 11px!important;border-radius:999px!important;
  background:rgba(0,0,0,.45)!important;color:#fff!important;font:700 12px/1 Arial,sans-serif!important;
}
.tvph-sv-viewer{
  position:relative!important;z-index:10!important;
  width:min(430px,100vw)!important;height:100dvh!important;max-height:100dvh!important;
  display:flex!important;flex-direction:column!important;justify-content:flex-end!important;
  overflow:hidden!important;background:#000!important;
}
.tvph-sv-video-wrap{
  position:absolute!important;inset:0!important;
  background:#111 center/cover no-repeat!important;
  overflow:hidden!important;
}
.tvph-sv-main-video{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  object-fit:contain!important;background:#000!important;display:block!important;
}
.tvph-sv-topbar{
  position:absolute!important;z-index:30!important;left:14px!important;right:58px!important;top:16px!important;
  display:flex!important;justify-content:space-between!important;align-items:center!important;
}
.tvph-sv-badge{color:#fff;background:rgba(0,0,0,.45);border-radius:999px;padding:7px 10px;font:800 10px/1 Arial;letter-spacing:.1em}
.tvph-sv-sound{
  width:40px!important;height:40px!important;padding:0!important;border:0!important;border-radius:50%!important;
  background:rgba(0,0,0,.48)!important;color:#fff!important;font-size:18px!important;cursor:pointer!important;
}
.tvph-sv-progress{
  position:absolute!important;z-index:31!important;left:10px!important;right:10px!important;top:8px!important;
  height:3px!important;background:rgba(255,255,255,.28)!important;border-radius:5px!important;overflow:hidden!important;
}
.tvph-sv-progress span{display:block;width:0;height:100%;background:#fff;border-radius:5px}
.tvph-sv-right-actions{
  position:absolute!important;z-index:35!important;right:12px!important;bottom:155px!important;
  display:flex!important;flex-direction:column!important;gap:13px!important;
}
.tvph-sv-action{
  border:0!important;background:transparent!important;color:#fff!important;padding:0!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;gap:3px!important;
  cursor:pointer!important;text-shadow:0 2px 8px #000!important;
}
.tvph-sv-action span{
  width:43px;height:43px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.42);font-size:22px
}
.tvph-sv-action small{font:700 10px/1 Arial}
.tvph-sv-like.is-liked span{background:#fff;color:#e11}
.tvph-sv-video-toggle{
  position:absolute!important;z-index:34!important;left:50%!important;top:50%!important;
  transform:translate(-50%,-50%)!important;width:66px!important;height:66px!important;
  border:0!important;border-radius:50%!important;background:rgba(0,0,0,.42)!important;color:#fff!important;
  opacity:0!important;font-size:21px!important;cursor:pointer!important;
}
.tvph-sv-video-wrap.paused .tvph-sv-video-toggle{opacity:1!important}
.tvph-sv-product{
  position:absolute!important;z-index:40!important;left:12px!important;right:58px!important;bottom:14px!important;
  display:flex!important;align-items:center!important;gap:10px!important;padding:10px!important;
  border-radius:14px!important;background:rgba(255,255,255,.97)!important;
  box-shadow:0 8px 30px rgba(0,0,0,.35)!important;
}
.tvph-sv-product-image{width:52px!important;height:52px!important;flex:0 0 52px!important;border-radius:9px!important;overflow:hidden!important;background:#eee}
.tvph-sv-product-image img{width:100%;height:100%;object-fit:cover}
.tvph-sv-product-info{min-width:0;flex:1}
.tvph-sv-product-name{font:700 13px/1.25 Arial,sans-serif;color:#111;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tvph-sv-product-price{font:700 14px/1.2 Arial,sans-serif;color:#111;margin-top:4px}
.tvph-sv-product-price del{color:#777;font-weight:500;margin-right:5px}
.tvph-sv-product-price ins{color:#111;text-decoration:none;font-weight:800}
.tvph-sv-product-note{font:10px/1.2 Arial;color:#777;margin-top:3px}
.tvph-sv-buy{
  flex:0 0 auto;border:0!important;background:#111!important;color:#fff!important;
  border-radius:10px!important;padding:11px 12px!important;font:800 12px/1 Arial!important;
  display:flex!important;align-items:center!important;gap:6px!important;cursor:pointer!important;
}
.tvph-sv-buy b{font-size:17px}
.tvph-sv-modal-arrow{
  position:absolute!important;z-index:80!important;top:50%!important;transform:translateY(-50%)!important;
  width:42px!important;height:42px!important;border:0!important;border-radius:50%!important;
  background:rgba(255,255,255,.15)!important;color:#fff!important;cursor:pointer!important;
}
.tvph-sv-modal-prev{left:calc(50% - 270px)!important}
.tvph-sv-modal-next{right:calc(50% - 270px)!important}

.tvph-sv-loading{display:none!important}

/* animations */
.tvph-sv-viewer.tvph-reel-animate-next{animation:tvphReelNext .25s ease}
.tvph-sv-viewer.tvph-reel-animate-prev{animation:tvphReelPrev .25s ease}
.tvph-sv-viewer.tvph-reel-animate-left{animation:tvphReelLeft .25s ease}
.tvph-sv-viewer.tvph-reel-animate-right{animation:tvphReelRight .25s ease}
@keyframes tvphReelNext{from{transform:translateY(30px);opacity:.5}to{transform:none;opacity:1}}
@keyframes tvphReelPrev{from{transform:translateY(-30px);opacity:.5}to{transform:none;opacity:1}}
@keyframes tvphReelLeft{from{transform:translateX(30px);opacity:.5}to{transform:none;opacity:1}}
@keyframes tvphReelRight{from{transform:translateX(-30px);opacity:.5}to{transform:none;opacity:1}}

.tvph-sv-empty{padding:24px;border:1px dashed #bbb;border-radius:12px;background:#fafafa;text-align:center}

@media(max-width:700px){
  .tvph-sv-showcase{height:390px!important;border-radius:20px!important}
  .tvph-sv-card{width:128px!important;height:285px!important}
  .tvph-sv-card.is-active{width:190px!important;height:335px!important}
  .tvph-sv-prev{left:6px!important}.tvph-sv-next{right:6px!important}
  .tvph-sv-modal-arrow{display:none!important}
  .tvph-sv-product{left:9px!important;right:55px!important;bottom:9px!important}
  .tvph-sv-right-actions{right:8px!important;bottom:145px!important}
}

@media(min-width:701px){
  .tvph-sv-showcase .tvph-sv-card[data-side="left"],
  .tvph-sv-showcase .tvph-sv-card[data-side="right"]{opacity:.72!important}
}
