/* Mivyo Product Styler V3.2 — Desktop gallery tabs, never a standalone landing page */
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .mivyo-gallery-stack {
  display:block!important;float:left!important;clear:none!important;
  width:48%!important;max-width:48%!important;
  margin:0 0 30px!important;padding:0!important;
  box-sizing:border-box!important;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .mivyo-gallery-stack .woocommerce-product-gallery,
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .mivyo-gallery-stack div.images {
  float:none!important;clear:none!important;width:100%!important;max-width:100%!important;
  margin:0!important;padding:0!important;box-sizing:border-box!important;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .summary.entry-summary{
  float:right!important;clear:none!important;width:48%!important;max-width:48%!important;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tabs{
  width:100%;clear:both;display:block;box-sizing:border-box;
  margin:26px 0 12px;padding:0;
  font-family:inherit;color:var(--mivyo-navy,#0A1226);
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tabs *{box-sizing:border-box}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tablist{
  display:flex;align-items:stretch;gap:28px;min-width:0;border-bottom:1px solid #e9e2e2;
  margin:0 0 17px;padding:0;overflow-x:auto;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tab{
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
  border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;
  background:transparent!important;color:#8b858b!important;
  box-shadow:none!important;margin:0!important;padding:13px 2px 14px!important;
  font:700 12px/1.35 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:.13em;text-transform:uppercase!important;cursor:pointer;
  min-height:44px;white-space:nowrap;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tab.is-active,
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tab[aria-selected="true"]{
  border-bottom-color:var(--mivyo-navy,#0A1226)!important;color:var(--mivyo-navy,#0A1226)!important;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tab:focus-visible{
  outline:2px solid var(--mivyo-coral,#FF2D6D)!important;outline-offset:-3px;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-panel[hidden]{display:none!important}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-videos{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:12px;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video{margin:0;min-width:0}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-frame{
  position:relative;overflow:hidden;aspect-ratio:9 / 16;
  background:#f7edf0;border-radius:12px;border:1px solid #f1e6e9;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-frame video{
  display:block;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:12px;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video figcaption{
  margin-top:8px;padding:0 3px;color:#536070;font-size:12px;line-height:1.35;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-play{
  display:flex;align-items:center;justify-content:center;position:absolute;
  inset:0;margin:0!important;width:100%;height:100%;border:0!important;
  background:linear-gradient(0deg,rgba(8,17,38,.30),transparent 55%);
  padding:0;cursor:pointer;z-index:2;border-radius:12px;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-play span{
  display:grid;place-items:center;color:#fff;font-size:19px;line-height:1;
  width:54px;height:54px;padding-left:4px;border-radius:50%;
  background:rgba(9,18,38,.68);border:2px solid #fff;box-shadow:0 3px 14px #0003;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-play:focus-visible{outline:3px solid var(--mivyo-coral,#FF2D6D);outline-offset:-5px}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-contents{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:12px 0 8px;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-included-item{
  display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;
  min-width:0;color:#23232c;font-family:inherit;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-included-item svg,
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-included-item img{
  width:42px;height:42px;max-width:42px;max-height:42px;display:block;object-fit:contain;
  margin:0 auto 5px!important;color:var(--mivyo-navy,#0A1226);
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-included-item strong{
  display:block;font-size:13px;line-height:1.38;font-weight:600;overflow-wrap:anywhere;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-included-item small{
  display:block;font-size:11px;line-height:1.42;color:#687080;
}
/* Avoid duplicate video embeds when existing legacy videos are reused in tabs. */
@media(min-width:901px){
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on.mivyo-gallery-has-videos .mivyo-standalone-ugc{display:none!important}
}
@media(min-width:901px) and (max-width:1150px){
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-videos{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-contents{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tablist{gap:13px}
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tab{letter-spacing:.08em;font-size:11px!important}
}
/* Desktop gallery feature: never disrupt the independently draggable mobile layout. */
@media(max-width:900px){
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .mivyo-gallery-stack{
  width:100%!important;max-width:100%!important;float:none!important;clear:both!important;
  margin:0 auto 24px!important;display:block!important;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .mivyo-gallery-stack .woocommerce-product-gallery,
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .mivyo-gallery-stack div.images{
  width:100%!important;max-width:100%!important;float:none!important;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .summary.entry-summary{
  width:100%!important;max-width:100%!important;float:none!important;clear:both!important;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on:not(.mivyo-gallery-mobile-enabled) .mivyo-gallery-tabs{display:none!important}
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on.mivyo-gallery-mobile-enabled .mivyo-gallery-tabs{
   display:block!important;visibility:visible!important;opacity:1!important;
   width:100%!important;max-width:100%!important;clear:both!important;
   margin:14px auto 24px!important;padding:0!important;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tablist{
   gap:clamp(10px,3vw,24px)!important;justify-content:flex-start!important;
   overscroll-behavior-x:contain;scrollbar-width:thin;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tab{
   min-width:0!important;font-size:clamp(10px,2.75vw,12px)!important;
   letter-spacing:.06em!important;white-space:normal!important;text-align:center!important;
   min-height:48px!important;padding:12px 3px 11px!important;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-contents{
   grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:14px;row-gap:22px;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-included-item img,
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-included-item svg{
   width:40px;height:40px;max-width:40px;max-height:40px;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-videos{
   grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px;
 }
}
@media(max-width:370px){
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tab{font-size:10px!important;letter-spacing:0!important}
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-tablist{gap:9px!important}
}

body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-play[hidden]{display:none!important}

/* V3.2.1: Shoptimizer wraps single-product gallery in its product-details structure.
   The previous direct-child (>) selector failed, so the gallery stack became full-width
   while the summary stayed right-floated below it. This targets nested stacks safely. */
@media (min-width: 901px) {
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .mivyo-gallery-stack {
   float:left!important;
   clear:none!important;
   display:block!important;
   width:48%!important;
   max-width:48%!important;
   margin:0 0 28px!important;
   padding:0!important;
   box-sizing:border-box!important;
   min-width:0!important;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .mivyo-gallery-stack .woocommerce-product-gallery,
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .mivyo-gallery-stack div.images {
   float:none!important; clear:both!important; position:relative!important;
   display:block!important; width:100%!important;max-width:100%!important;
   margin:0!important;padding:0!important;box-sizing:border-box!important;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .summary.entry-summary {
   float:right!important;clear:none!important;
   width:48%!important;max-width:48%!important;
   min-width:0!important;box-sizing:border-box!important;
   margin:0 0 28px!important;
 }
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-stack .mivyo-gallery-tabs {
   display:block;clear:both!important;width:100%!important;max-width:100%!important;
   margin:18px 0 12px!important;
 }
}
@media (max-width:900px) {
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on div.product .mivyo-gallery-stack {
   float:none!important;clear:both!important;width:100%!important;max-width:100%!important;
   margin:0 auto 18px!important;
 }
}

/* One source of truth for videos: do not show a duplicate standalone UGC strip on mobile. */
@media(max-width:900px){
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on.mivyo-gallery-mobile-enabled.mivyo-gallery-has-videos .mivyo-standalone-ugc{display:none!important}
}
/* Respect the admin mobile visibility toggle even when the section was moved by Mobile Layout. */
@media(max-width:900px){
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on:not(.mivyo-gallery-mobile-enabled) div.product .mivyo-gallery-tabs,
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on:not(.mivyo-gallery-mobile-enabled) div.product .mivyo-mobile-flow>.mivyo-gallery-tabs{
  display:none!important;
 }
}


/* v3.2.3 — ONE horizontal row for UGC, swipe + scrollbar on all screen sizes. */
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-videos,
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on.mivyo-gallery-mobile-enabled .mivyo-gallery-videos {
 display:flex!important; flex-flow:row nowrap!important; align-items:flex-start!important;
 gap:12px!important; width:100%!important; max-width:100%!important;
 min-width:0!important; overflow-x:auto!important; overflow-y:hidden!important;
 -webkit-overflow-scrolling:touch; scrollbar-width:thin;
 scroll-snap-type:x proximity; scroll-padding-inline:2px;
 overscroll-behavior-inline:contain;
 padding:2px 2px 14px!important;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-videos .mivyo-gallery-video {
 flex:0 0 clamp(138px,31%,200px)!important;
 width:clamp(138px,31%,200px)!important;
 max-width:200px!important; min-width:0!important;
 scroll-snap-align:start; margin:0!important;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-controls {
 display:flex; align-items:center; justify-content:flex-end; gap:8px;
 margin:-7px 0 7px!important; padding:0!important;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-controls button {
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 padding:0!important;margin:0!important; flex:0 0 32px!important;
 width:32px!important;height:32px!important;min-height:32px!important;
 border:1px solid #e6dce2!important;border-radius:50%!important;
 background:#fff!important;color:#0a1226!important;box-shadow:none!important;
 line-height:1!important;cursor:pointer;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-controls button svg {
 display:block!important;margin:auto!important;width:18px!important;height:18px!important;flex-shrink:0;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-controls button:disabled {
 opacity:.3!important;cursor:default!important;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-controls button:focus-visible {
 outline:2px solid var(--mivyo-coral,#ff2d6d)!important; outline-offset:2px!important;
}
@media(max-width:767px) {
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-videos .mivyo-gallery-video {
  flex-basis:clamp(142px,44vw,188px)!important; width:clamp(142px,44vw,188px)!important;
 }
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-controls[hidden]{display:none!important}

/* Tabs are the single source of UGC videos on mobile too: prevent duplicates from legacy section. */
@media(max-width:900px){
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on.mivyo-gallery-mobile-enabled.mivyo-gallery-has-videos .mivyo-standalone-ugc{display:none!important}
}

/* V3.2.5: preview thumbnails are visible before videos begin playing. */
body.mivyo-gallery-tabs-on .mivyo-gallery-video-frame.mivyo-no-poster{
 background:linear-gradient(140deg,#fbe5ed,#e8d7de 55%,#e7c3d3)!important;
}
body.mivyo-gallery-tabs-on .mivyo-gallery-video-frame .mivyo-gallery-generated-thumbnail{
 position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;
 z-index:1;pointer-events:none;display:block!important;
}
body.mivyo-gallery-tabs-on .mivyo-gallery-video-frame.mivyo-video-playing .mivyo-gallery-generated-thumbnail{display:none!important}
body.mivyo-gallery-tabs-on .mivyo-gallery-video-frame.mivyo-video-playing .mivyo-gallery-play{display:none!important}
body.mivyo-gallery-tabs-on .mivyo-gallery-video-frame.mivyo-no-poster:not(.mivyo-video-playing) video{
 background:transparent!important;
}

/* V3.2.6: remove central video overlay; thumbnails are the tappable playback surface. */
body.mivyo-gallery-tabs-on .mivyo-gallery-video-frame .mivyo-gallery-play {display:none!important}
body.mivyo-gallery-tabs-on .mivyo-gallery-video-frame video {cursor:pointer;touch-action:pan-x pan-y}
body.mivyo-gallery-tabs-on .mivyo-gallery-video-frame video:focus-visible {outline:3px solid #FF2D6D!important;outline-offset:-3px}

/* v3.2.7: compact WooCommerce-style video indicator in thumbnail TOP-RIGHT, not in the center. */
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-frame .mivyo-video-type-icon {
 position:absolute!important;
 top:9px!important;right:9px!important;bottom:auto!important;left:auto!important;
 z-index:4!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:32px!important;height:32px!important;min-width:32px!important;
 margin:0!important;padding:0!important;
 border:1px solid rgba(255,255,255,.68)!important;
 border-radius:9px!important;
 color:#101827!important;
 background:rgba(255,255,255,.94)!important;
 box-shadow:0 2px 9px rgba(0,0,0,.13)!important;
 line-height:0!important;
 pointer-events:none!important;
 user-select:none!important;
 backdrop-filter:blur(5px);
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-frame .mivyo-video-type-icon svg {
 display:block!important;width:18px!important;height:18px!important;
 flex:0 0 18px!important;margin:0!important;
 fill:none!important;stroke:currentColor!important;
}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-frame.mivyo-video-playing .mivyo-video-type-icon {
 display:none!important;
}
@media(max-width:767px){
 body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-video-frame .mivyo-video-type-icon{
  width:29px!important;height:29px!important;min-width:29px!important;
  top:8px!important;right:8px!important;
 }
}
/* v3.4 product-specific technical specs tab */
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-specs{margin:0;padding:4px 0 14px;display:block}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-spec{display:grid;grid-template-columns:minmax(110px,40%) minmax(0,1fr);gap:12px;align-items:start;padding:13px 10px;border-bottom:1px solid #eee7e9}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-spec:nth-child(odd){background:#fff7f9}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-spec dt{margin:0;font-weight:700;line-height:1.45;color:#222b3b}
body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-spec dd{margin:0;line-height:1.45;color:#455161;overflow-wrap:anywhere}
@media(max-width:480px){body.single-product.mivyo-styler-active.mivyo-gallery-tabs-on .mivyo-gallery-spec{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:10px 8px;font-size:12px}}
