:root{--mcs-accent:#1f469d;--mcs-accent-soft:rgba(31,70,157,.08);--mcs-accent-mid:rgba(31,70,157,.18);--mcs-surface:#fff;--mcs-text:#1f2937;--mcs-muted:#667085;--mcs-border:#e4e7ec;--mcs-radius:16px;--mcs-shadow:0 16px 44px rgba(16,24,40,.09);--mcs-font-body:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;--mcs-font-display:Manrope,Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.mcs-type-technical{--mcs-font-body:Inter,Arial,sans-serif;--mcs-font-display:Inter,Arial,sans-serif}.mcs-type-theme{--mcs-font-body:inherit;--mcs-font-display:inherit}
.mcs-ui-enabled .wapf,.mcs-project-mode .woocommerce,.mcs-project-mode .wc-block-cart,.mcs-project-mode .wc-block-checkout{font-family:var(--mcs-font-body);color:var(--mcs-text)}
.mcs-ui-enabled.single-product .wapf{position:relative}.mcs-ui-enabled.single-product .wapf-field-container{margin-bottom:30px}.mcs-ui-enabled.single-product .wapf-field-label{display:flex;align-items:center;gap:11px;margin-bottom:10px}.mcs-ui-enabled.single-product .wapf-field-label,.mcs-ui-enabled.single-product .wapf-field-label label{font-family:var(--mcs-font-display);font-weight:800;letter-spacing:-.018em;color:var(--mcs-text)}
.mcs-field-icon{width:32px;height:32px;flex:0 0 32px;border-radius:10px;background:var(--mcs-accent-soft);position:relative}.mcs-field-icon:before,.mcs-field-icon:after{content:"";position:absolute;inset:8px;border:1.8px solid var(--mcs-accent);border-radius:3px}.mcs-icon-label:before{inset:9px 7px;border-radius:2px}.mcs-icon-upload:after{inset:8px 14px 12px;border-width:0 2px 2px 0;transform:rotate(225deg)}.mcs-icon-palette:before{border-radius:50%}.mcs-icon-quantity:before{border-radius:50%;box-shadow:8px 0 0 -5px var(--mcs-accent),-8px 0 0 -5px var(--mcs-accent)}.mcs-icon-company:before{border-radius:1px;box-shadow:0 -5px 0 -3px var(--mcs-accent)}
.mcs-ui-enabled.single-product .wapf-field-description{color:var(--mcs-muted);line-height:1.65;margin-top:7px}.mcs-ui-enabled.single-product .wapf-swatch,.mcs-ui-enabled.single-product .wapf-checkable{border:1px solid var(--mcs-border);border-radius:var(--mcs-radius);background:var(--mcs-surface);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background-color .2s ease}.mcs-motion-enabled.single-product .wapf-swatch:hover,.mcs-motion-enabled.single-product .wapf-checkable:hover{transform:translateY(-3px)}
.mcs-ui-enabled.single-product .wapf-swatch:hover,.mcs-ui-enabled.single-product .wapf-checkable:hover{border-color:var(--mcs-accent-mid);box-shadow:0 10px 28px rgba(16,24,40,.09)}.mcs-ui-enabled.single-product .mcs-selected,.mcs-ui-enabled.single-product .wapf-swatch--selected{border-color:var(--mcs-accent)!important;background:linear-gradient(180deg,var(--mcs-surface),var(--mcs-accent-soft));box-shadow:0 0 0 3px var(--mcs-accent-soft),0 10px 28px rgba(16,24,40,.08)}
.mcs-ui-enabled.single-product .mcs-selected:after{content:"✓";position:absolute;top:9px;right:9px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--mcs-accent);color:#fff;font-weight:900;font-size:13px}.mcs-ui-enabled.single-product .wapf-swatch,.mcs-ui-enabled.single-product .wapf-checkable{position:relative}
.mcs-ui-enabled.single-product input[type=text],.mcs-ui-enabled.single-product input[type=email],.mcs-ui-enabled.single-product input[type=tel],.mcs-ui-enabled.single-product input[type=number],.mcs-ui-enabled.single-product textarea,.mcs-ui-enabled.single-product select{border:1px solid var(--mcs-border);border-radius:12px;min-height:48px;padding:12px 14px;background:#fff;box-shadow:none;font:inherit}.mcs-ui-enabled.single-product input:focus,.mcs-ui-enabled.single-product textarea:focus,.mcs-ui-enabled.single-product select:focus{border-color:var(--mcs-accent);box-shadow:0 0 0 4px var(--mcs-accent-soft);outline:none}
.mcs-upload-zone{position:relative;padding:22px;border:1.5px dashed var(--mcs-accent-mid);border-radius:var(--mcs-radius);background:linear-gradient(180deg,#fff,var(--mcs-accent-soft));transition:.2s ease}.mcs-upload-zone:hover{border-color:var(--mcs-accent);box-shadow:0 10px 28px rgba(16,24,40,.07)}.mcs-upload-zone:after{content:attr(data-file-name);display:block;margin-top:10px;color:var(--mcs-muted);font-size:.9em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mcs-upload-zone[data-file-name=""]:after{content:"Carica il file del logo o della grafica"}
.mcs-section-numbers .wapf-section{counter-increment:mcsstep}.mcs-section-numbers .mcs-section-title{display:flex;align-items:center;gap:12px;font-family:var(--mcs-font-display);letter-spacing:-.025em}.mcs-section-numbers .mcs-section-title:before{content:attr(data-mcs-step);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--mcs-accent);color:#fff;font-size:13px;font-weight:900;box-shadow:0 7px 18px var(--mcs-accent-soft)}
.mcs-ui-enabled.single-product .wapf-product-totals{margin-top:34px;padding:22px 24px;border:1px solid var(--mcs-border);border-radius:var(--mcs-radius);background:#fff;box-shadow:var(--mcs-shadow)}.mcs-ui-enabled.single-product .wapf-grand-total,.mcs-ui-enabled.single-product .wapf-grand-total .woocommerce-Price-amount{font-family:var(--mcs-font-display);font-size:1.2em;font-weight:850;color:var(--mcs-text)}
.mcs-ui-enabled.single-product .single_add_to_cart_button{min-height:52px!important;border-radius:12px!important;padding:14px 26px!important;background:var(--mcs-primary-button-bg,var(--mcs-accent))!important;color:var(--mcs-primary-button-text,#fff)!important;font-family:var(--mcs-font-display)!important;font-weight:850!important;letter-spacing:.01em;box-shadow:0 10px 26px var(--mcs-accent-mid);transition:transform .18s ease,box-shadow .18s ease}.mcs-motion-enabled.single-product .single_add_to_cart_button:hover{transform:translateY(-2px);box-shadow:0 14px 34px var(--mcs-accent-mid)}
.mcs-hidden-price{display:none!important}.mcs-project-banner{display:flex;gap:18px;align-items:flex-start;margin:0 0 28px;padding:24px 26px;border:1px solid var(--mcs-accent-mid);border-left:5px solid var(--mcs-accent);border-radius:var(--mcs-radius);background:linear-gradient(135deg,var(--mcs-accent-soft),#fff 72%);box-shadow:var(--mcs-shadow)}.mcs-project-badge{flex:none;display:inline-flex;padding:8px 12px;border-radius:999px;background:var(--mcs-accent);color:#fff;font-size:10px;font-weight:850;letter-spacing:.09em;line-height:1}.mcs-project-copy h2{margin:0 0 7px;font-family:var(--mcs-font-display);font-size:21px;line-height:1.25;color:var(--mcs-text)}.mcs-project-copy p{margin:0 0 7px;color:var(--mcs-text);line-height:1.65}.mcs-project-copy small{color:var(--mcs-muted)}
.mcs-project-mode .woocommerce-cart-form,.mcs-project-mode .cart_totals,.mcs-project-mode #customer_details,.mcs-project-mode #order_review{border-radius:var(--mcs-radius)}.mcs-project-mode .mcs-product-name{font-family:var(--mcs-font-display);font-weight:800;color:var(--mcs-text)}.mcs-compact-meta dl.variation,.mcs-compact-meta .wc-item-meta{margin:12px 0 0;padding:15px 17px;border:1px solid #edf0f5;border-radius:12px;background:#f8fafc;font-size:.92em;line-height:1.58}.mcs-compact-meta dl.variation dt,.mcs-compact-meta .wc-item-meta-label{font-weight:750;color:var(--mcs-text)}.mcs-project-mode .wc-proceed-to-checkout a.checkout-button,.mcs-project-mode #place_order{border-radius:12px!important;background:var(--mcs-accent)!important;font-family:var(--mcs-font-display)!important;font-weight:850!important;min-height:50px}.mcs-project-mode .wc-block-cart,.mcs-project-mode .wc-block-checkout{--wp--preset--color--primary:var(--mcs-accent)}
@media(max-width:767px){.mcs-project-banner{flex-direction:column;padding:19px}.mcs-project-copy h2{font-size:18px}.mcs-ui-enabled.single-product .wapf-field-container{margin-bottom:24px}.mcs-ui-enabled.single-product .single_add_to_cart_button{width:100%}.mcs-sticky-total-mobile.single-product .wapf-product-totals{position:sticky;bottom:8px;z-index:20;margin:22px 0 12px;padding:16px 18px;box-shadow:0 14px 38px rgba(16,24,40,.18)}.mcs-field-icon{width:30px;height:30px;flex-basis:30px}.mcs-section-numbers .mcs-section-title:before{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.mcs-motion-enabled *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* v5.1.8 — true square image cards, based on the requested configurator example. */
.mcs-ui-enabled.single-product .mcs-image-options{
 display:flex!important;
 flex-wrap:wrap!important;
 align-items:flex-start!important;
 gap:16px!important;
 width:100%!important;
}
.mcs-ui-enabled.single-product .mcs-image-card{
 position:relative!important;
 display:flex!important;
 flex-direction:column!important;
 flex:0 0 var(--mcs-card-size,150px)!important;
 width:var(--mcs-card-size,150px)!important;
 min-width:var(--mcs-card-size,150px)!important;
 max-width:var(--mcs-card-size,150px)!important;
 height:auto!important;
 min-height:0!important;
 box-sizing:border-box!important;
 overflow:hidden!important;
 border-radius:14px!important;
}
/* The product image itself is a true square and is never cropped. */
.mcs-ui-enabled.single-product .mcs-image-card img{
 display:block!important;
 width:var(--mcs-card-size,150px)!important;
 min-width:var(--mcs-card-size,150px)!important;
 max-width:var(--mcs-card-size,150px)!important;
 height:var(--mcs-card-size,150px)!important;
 min-height:var(--mcs-card-size,150px)!important;
 max-height:var(--mcs-card-size,150px)!important;
 aspect-ratio:1 / 1!important;
 object-fit:contain!important;
 object-position:center!important;
 box-sizing:border-box!important;
 padding:12px!important;
 margin:0!important;
 background:#fff!important;
}
.mcs-ui-enabled.single-product .mcs-image-field--packaging .mcs-image-card{--mcs-card-size:170px}
.mcs-ui-enabled.single-product .mcs-image-field--caps .mcs-image-card{--mcs-card-size:145px}
.mcs-ui-enabled.single-product .mcs-image-field--large .mcs-image-card{--mcs-card-size:155px}
.mcs-ui-enabled.single-product .mcs-image-card .wapf-swatch-label,
.mcs-ui-enabled.single-product .mcs-image-card .wapf-label-text,
.mcs-ui-enabled.single-product .mcs-image-card .wapf-swatch-text,
.mcs-ui-enabled.single-product .mcs-image-card .wapf-option-label{
 display:block!important;
 width:100%!important;
 box-sizing:border-box!important;
 padding:10px 8px 11px!important;
 text-align:center!important;
 white-space:normal!important;
 word-break:normal!important;
 overflow-wrap:break-word!important;
 hyphens:none!important;
 line-height:1.25!important;
}
.mcs-zoom-button{
 position:absolute!important;
 top:8px!important;
 right:8px!important;
 width:24px!important;
 height:24px!important;
 min-width:24px!important;
 min-height:24px!important;
 padding:0!important;
 margin:0!important;
 border:1px solid rgba(31,70,157,.18)!important;
 border-radius:50%!important;
 background:rgba(255,255,255,.94)!important;
 box-shadow:0 2px 7px rgba(16,24,40,.12)!important;
 z-index:8!important;
 display:grid!important;
 place-items:center!important;
 cursor:zoom-in!important;
 color:var(--mcs-accent)!important;
 opacity:.9!important;
 transform:none!important;
}
.mcs-zoom-button:hover,.mcs-zoom-button:focus-visible{opacity:1!important;box-shadow:0 3px 9px rgba(16,24,40,.18)!important;outline:2px solid var(--mcs-accent-soft)!important}
.mcs-zoom-button span{width:8px;height:8px;border:1.5px solid currentColor;border-radius:50%;position:relative;display:block}
.mcs-zoom-button span:after{content:"";position:absolute;width:4px;height:1.5px;background:currentColor;right:-3px;bottom:-2px;transform:rotate(45deg);border-radius:2px}
@media(max-width:767px){
 .mcs-ui-enabled.single-product .mcs-image-options{gap:12px!important}
 .mcs-ui-enabled.single-product .mcs-image-field--packaging .mcs-image-card{--mcs-card-size:145px}
 .mcs-ui-enabled.single-product .mcs-image-field--caps .mcs-image-card{--mcs-card-size:132px}
 .mcs-ui-enabled.single-product .mcs-image-field--large .mcs-image-card{--mcs-card-size:138px}
 .mcs-zoom-button{top:7px!important;right:7px!important;width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important}
}
.mcs-quantity-field .wapf-pricing-hint{display:none!important}
html.mcs-lightbox-open{overflow:hidden}.mcs-lightbox[hidden]{display:none!important}.mcs-lightbox{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:24px}.mcs-lightbox__backdrop{position:absolute;inset:0;background:rgba(8,12,20,.82);backdrop-filter:blur(3px)}.mcs-lightbox__dialog{position:relative;z-index:1;width:min(1080px,94vw);height:min(840px,92vh);display:grid;grid-template-columns:60px minmax(0,1fr) 60px;grid-template-rows:minmax(0,1fr) auto;background:#fff;border-radius:18px;box-shadow:0 28px 90px rgba(0,0,0,.42);overflow:hidden;color:#344054}.mcs-lightbox figure{grid-column:2;grid-row:1;margin:0;min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto}.mcs-lightbox__stage{min-height:0;display:grid;place-items:center;overflow:auto;padding:34px;background:var(--mcs-lightbox-stage,#fff)}.mcs-lightbox__stage img{display:block;max-width:100%;max-height:calc(92vh - 150px);width:auto;height:auto;transform-origin:center;transition:transform .18s ease}.mcs-lightbox__stage.is-zoomed{cursor:grab}.mcs-lightbox figcaption{padding:14px 18px;text-align:center;font-family:var(--mcs-font-display);font-size:16px;font-weight:700;background:#fff;color:#111827;border-top:1px solid #eaecf0;white-space:normal;overflow-wrap:anywhere}.mcs-lightbox__close,.mcs-lightbox__nav,.mcs-lightbox__tools button{border:1px solid #d0d5dd!important;color:#344054!important;background:rgba(255,255,255,.96)!important;cursor:pointer;box-shadow:0 4px 14px rgba(16,24,40,.12)}.mcs-lightbox__close{position:absolute;right:14px;top:14px;z-index:4;width:44px;height:44px;border-radius:50%!important;font-size:30px;line-height:1}.mcs-lightbox__nav{grid-row:1;align-self:center;width:46px;height:66px;border-radius:12px!important;font-size:42px}.mcs-lightbox__prev{grid-column:1;justify-self:center}.mcs-lightbox__next{grid-column:3;justify-self:center}.mcs-lightbox__tools{grid-column:1/-1;grid-row:2;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;background:#fff;border-top:1px solid #eaecf0;color:#344054}.mcs-lightbox__tools button{min-width:40px;height:38px;padding:0 12px!important;border-radius:9px!important;font-size:18px}.mcs-lightbox__tools [data-mcs-reset]{font-size:13px}.mcs-lightbox__tools span{min-width:52px;text-align:center;font-variant-numeric:tabular-nums}
@media(max-width:767px){.mcs-lightbox{padding:0}.mcs-lightbox__dialog{width:100vw;height:100dvh;border-radius:0;grid-template-columns:46px minmax(0,1fr) 46px}.mcs-lightbox__stage{padding:16px}.mcs-lightbox__stage img{max-height:calc(100dvh - 145px)}.mcs-lightbox__close{right:8px;top:8px}}
.mcs-runtime-empty-catalog{padding:12px 14px;border:1px dashed #cbd5e1;border-radius:10px;background:#f8fafc;color:#667085;font-size:13px;line-height:1.45}


/* v13.3.26 — internal shipping service is preserved only for APF progression. */
.mcs-internal-shipping-service{display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;}


/* v13.4.5 — self-sufficient runtime catalogue cards.
 * Product Definition is authoritative; APF does not need pre-existing swatch
 * options for a product-specific Packaging / Closure / Graphic catalogue. */
.mcs-ui-enabled.single-product .mcs-runtime-generated-card > input[type="radio"]{
 position:absolute!important;
 inline-size:1px!important;
 block-size:1px!important;
 opacity:0!important;
 pointer-events:none!important;
 margin:0!important;
}
.mcs-ui-enabled.single-product .mcs-runtime-generated-card > label{
 display:flex!important;
 flex-direction:column!important;
 width:100%!important;
 height:100%!important;
 margin:0!important;
 padding:0!important;
 cursor:pointer!important;
}
.mcs-ui-enabled.single-product .mcs-runtime-generated-card .wapf-swatch-image{
 display:block!important;
 width:100%!important;
 background:#fff!important;
}
.mcs-ui-enabled.single-product .mcs-runtime-generated-wrapper{
 min-height:0!important;
}

/* v13.5.0 — premium APF-compatible controls. Original inputs remain authoritative. */
.mcs-ui-enabled.single-product .wapf-field-container{margin-bottom:23px}
.mcs-ui-enabled.single-product .wapf-field-description{margin-top:5px;font-size:14px;line-height:1.58}
.mcs-ui-enabled.single-product .mcs-image-options{gap:14px!important}
.mcs-ui-enabled.single-product .mcs-image-card{min-height:calc(var(--mcs-card-size,150px) + 58px)!important;border:1px solid #dfe4ec!important;border-radius:16px!important;background:#fff!important;box-shadow:0 5px 16px rgba(16,24,40,.055)!important;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease!important}
.mcs-ui-enabled.single-product .mcs-image-card:hover{border-color:rgba(51,57,241,.42)!important;box-shadow:0 12px 26px rgba(16,24,40,.10)!important;transform:translateY(-2px)!important}
.mcs-ui-enabled.single-product .mcs-image-card.mcs-selected,.mcs-ui-enabled.single-product .mcs-image-card.selected,.mcs-ui-enabled.single-product .mcs-image-card[aria-pressed="true"]{border:2px solid var(--mcs-accent)!important;background:linear-gradient(180deg,#fff 62%,var(--mcs-accent-soft))!important;box-shadow:0 0 0 3px var(--mcs-accent-soft),0 12px 28px rgba(31,70,157,.13)!important}
.mcs-ui-enabled.single-product .mcs-image-card img{padding:16px!important}
.mcs-ui-enabled.single-product .mcs-image-card .wapf-swatch-label,.mcs-ui-enabled.single-product .mcs-image-card .wapf-label-text,.mcs-ui-enabled.single-product .mcs-image-card .wapf-swatch-text,.mcs-ui-enabled.single-product .mcs-image-card .wapf-option-label{display:flex!important;align-items:center!important;justify-content:center!important;min-height:54px!important;padding:10px 11px 12px!important;color:#26334a!important;font-size:13px!important;font-weight:750!important;line-height:1.32!important}
.mcs-ui-enabled.single-product .mcs-image-card:focus-within{outline:3px solid rgba(51,57,241,.24)!important;outline-offset:3px!important}
.mcs-zoom-button{top:9px!important;right:9px!important;width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;opacity:.68!important;box-shadow:0 2px 6px rgba(16,24,40,.09)!important}.mcs-image-card:hover .mcs-zoom-button,.mcs-zoom-button:focus-visible{opacity:1!important}
.mcs-ui-enabled.single-product .mcs-quantity-field .wapf-field-input,.mcs-ui-enabled.single-product [data-mcs-summary-role="quantity"] .wapf-field-input{display:flex;flex-wrap:wrap;gap:10px}
.mcs-ui-enabled.single-product .mcs-quantity-field .wapf-checkable,.mcs-ui-enabled.single-product .mcs-quantity-field .wapf-swatch,.mcs-ui-enabled.single-product [data-mcs-summary-role="quantity"] .wapf-checkable,.mcs-ui-enabled.single-product [data-mcs-summary-role="quantity"] .wapf-swatch{display:flex!important;align-items:center!important;justify-content:center!important;min-width:112px;min-height:54px;padding:12px 17px!important;border:1px solid #d7ddea!important;border-radius:13px!important;background:#fff!important;color:#26334a;font-size:15px;font-weight:800;box-shadow:0 4px 12px rgba(16,24,40,.045)}
.mcs-ui-enabled.single-product .mcs-quantity-field .mcs-selected,.mcs-ui-enabled.single-product .mcs-quantity-field .selected,.mcs-ui-enabled.single-product [data-mcs-summary-role="quantity"] .mcs-selected,.mcs-ui-enabled.single-product [data-mcs-summary-role="quantity"] .selected{border:2px solid var(--mcs-accent)!important;background:var(--mcs-accent-soft)!important;color:var(--mcs-accent)!important;box-shadow:0 0 0 3px var(--mcs-accent-soft)!important}
.mcs-ui-enabled.single-product .mcs-quantity-field .wapf-checkable:focus-within,.mcs-ui-enabled.single-product .mcs-quantity-field .wapf-swatch:focus-within{outline:3px solid rgba(51,57,241,.24);outline-offset:2px}
@media(max-width:767px){.mcs-ui-enabled.single-product .wapf-field-container{margin-bottom:20px}.mcs-ui-enabled.single-product .mcs-image-options{gap:11px!important}.mcs-ui-enabled.single-product .mcs-quantity-field .wapf-checkable,.mcs-ui-enabled.single-product .mcs-quantity-field .wapf-swatch,.mcs-ui-enabled.single-product [data-mcs-summary-role="quantity"] .wapf-checkable,.mcs-ui-enabled.single-product [data-mcs-summary-role="quantity"] .wapf-swatch{flex:1 1 105px;min-width:0}}
