.v3d-open{display:inline-flex!important;align-items:center;justify-content:center;gap:9px;background:#fff!important;color:#242c30!important;border:1px solid #d4d5d4!important;border-radius:30px!important;padding:12px 20px!important;font-size:14px!important;font-weight:600!important;line-height:1.3!important;margin:16px 0!important;cursor:pointer;box-shadow:0 2px 8px #00000008}
.v3d-open:hover{background:#f3f1ed!important}.v3d-open:focus-visible,.v3d-dialog button:focus-visible{outline:3px solid #467764!important;outline-offset:3px}
.v3d-dialog{box-sizing:border-box;position:fixed;inset:0;width:min(960px,94vw);max-width:94vw;height:min(780px,90dvh);max-height:90dvh;margin:auto;padding:0;border:2px solid #3c3c3c;border-radius:18px;background:#050606;color:#f0f2ef;overflow:hidden;box-shadow:0 24px 100px #0006;font:15px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.v3d-dialog[open]{display:flex;flex-direction:column}.v3d-dialog::backdrop{background:#000c;backdrop-filter:blur(5px)}
.v3d-header{display:flex;flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:24px 28px 10px;gap:12px;background:transparent}
.v3d-dialog .v3d-kicker{font-size:10px;letter-spacing:2px;font-weight:700;color:#9aa69d;margin:0 0 5px}.v3d-dialog h2{font-size:28px;line-height:1.15;letter-spacing:-.5px;color:#f0f2ef;margin:0!important}.v3d-dialog .v3d-selection{font-size:13px;color:#a7afa9;margin:7px 0 0;min-height:19px}
.v3d-dialog .v3d-close{display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;flex:0 0 38px!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;margin:0!important;padding:0!important;background:#19201b!important;color:#f0f2ef!important;border:1px solid #39463c!important;border-radius:50%!important;line-height:1!important;cursor:pointer}
.v3d-dialog .v3d-close svg{display:block!important;flex:none!important;width:18px!important;height:18px!important;margin:0!important;transform:none!important;pointer-events:none}
.v3d-stage{position:relative;flex:1;min-height:120px;overflow:hidden;background:#000}.v3d-stage canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.v3d-stage canvas:active{cursor:grabbing}
.v3d-dialog .v3d-status{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;color:#b8c0ba;font-size:15px;pointer-events:none}.v3d-dialog .v3d-status[hidden]{display:none}
.v3d-footer{padding:12px 24px 22px;text-align:center;flex-shrink:0}.v3d-dialog .v3d-footer p{color:#a7afa9;font-size:12px;margin:0 0 12px;line-height:1.5}.v3d-tools{display:flex;justify-content:center;gap:7px;flex-wrap:wrap}.v3d-dialog .v3d-tools button{min-width:38px!important;padding:9px 13px!important;margin:0!important;color:#eef3ec!important;background:#19201b!important;border:1px solid #39463c!important;border-radius:8px!important;font-size:14px!important;font-weight:500!important;line-height:20px!important;cursor:pointer}.v3d-dialog .v3d-tools button:hover{background:#2b3c2e!important}
@media(max-width:600px){.v3d-dialog{width:96vw;max-width:96vw;height:88dvh;border-radius:12px}.v3d-header{padding:18px 18px 5px}.v3d-dialog h2{font-size:25px}.v3d-footer{padding:8px 10px 16px}.v3d-dialog .v3d-footer p{font-size:11px}.v3d-dialog .v3d-tools button{padding:8px 11px!important}}

.woocommerce-product-gallery .v3d-launch-host{position:relative}
.single-product .woocommerce-product-gallery button.v3d-open.v3d-open--overlay{position:absolute!important;inset:auto auto 14px 14px!important;z-index:6!important;display:inline-flex!important;float:none!important;transform:none!important;width:auto!important;min-width:0!important;height:auto!important;min-height:36px!important;max-width:calc(100% - 28px)!important;margin:0!important;padding:8px 12px!important;gap:6px!important;font-size:12px!important;line-height:18px!important;letter-spacing:0!important;white-space:nowrap!important;color:#f4f6f2!important;background:rgba(10,16,12,.84)!important;border:1px solid rgba(188,213,188,.38)!important;border-radius:18px!important;box-shadow:0 2px 10px #0004!important;backdrop-filter:blur(8px);cursor:pointer}
.single-product .woocommerce-product-gallery button.v3d-open.v3d-open--overlay:hover{background:rgba(30,51,32,.96)!important;border-color:#789b73!important}
.single-product .woocommerce-product-gallery button.v3d-open.v3d-open--overlay svg{width:16px!important;height:16px!important;flex:0 0 16px}
@media(max-width:600px){.single-product .woocommerce-product-gallery button.v3d-open.v3d-open--overlay{inset:auto auto 10px 10px!important}}

.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_colore"] .cfvsw-label-option .cfvsw-swatch-inner{display:inline-flex;align-items:center;gap:7px}
.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_colore"] .cfvsw-label-option .cfvsw-swatch-inner::before{box-sizing:border-box;display:block;flex:0 0 14px;width:14px;height:14px;border:1px solid rgba(255,255,255,.5);border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.2)}

/* Equal-sized options; columns follow the actual product panel width. */
.single-product form.variations_form{container-type:inline-size;container-name:v3d-options}
.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_colore"],.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_taglia"]{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:8px!important;width:100%;margin:0!important}
.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_taglia"]{grid-template-columns:repeat(4,minmax(0,1fr))}
.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_colore"] .cfvsw-swatches-option,.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_taglia"] .cfvsw-swatches-option{box-sizing:border-box!important;width:100%!important;min-width:0!important;min-height:44px!important;height:100%!important;margin:0!important;padding:8px 10px!important;border-radius:10px!important}
.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_colore"] .cfvsw-swatch-inner{width:100%!important;justify-content:flex-start!important;text-align:left!important;white-space:normal!important;font-size:12px!important;line-height:17px!important;gap:8px!important}
.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_taglia"] .cfvsw-swatch-inner{width:100%!important;justify-content:center!important;text-align:center!important;white-space:nowrap!important;font-size:12px!important;line-height:17px!important}
@container v3d-options (min-width:390px){.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_colore"]{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container v3d-options (max-width:279px){.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_taglia"]{grid-template-columns:repeat(2,minmax(0,1fr))}}

.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_colore"] .cfvsw-swatch-inner,.single-product .cfvsw-swatches-container[swatches-attr="attribute_pa_taglia"] .cfvsw-swatch-inner{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important}

/* Keep the thumbnail rail bounded before the theme adds its arrow viewport.
   Explicit heights prevent intrinsic image dimensions from stretching flex items. */
.single-product .product .woocommerce-product-gallery{min-width:0;max-width:100%}
.single-product .product .woocommerce-product-gallery > .flex-control-thumbs{
 overflow:hidden!important;max-width:100%;margin-top:16px!important;
}
.single-product .product .woocommerce-product-gallery .flex-control-thumbs li{
 box-sizing:border-box!important;flex:0 0 116px!important;
 width:116px!important;min-width:116px!important;max-width:116px!important;
 height:84px!important;min-height:84px!important;max-height:84px!important;
}
.single-product .product .woocommerce-product-gallery .flex-control-thumbs li img{
 box-sizing:border-box!important;width:100%!important;height:100%!important;
 min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;
}
@media(max-width:992px){
 .single-product .product .woocommerce-product-gallery .flex-control-thumbs li{
  flex-basis:82px!important;width:82px!important;min-width:82px!important;max-width:82px!important;
  height:60px!important;min-height:60px!important;max-height:60px!important;
 }
}
