.custom-variations-wrapper { margin: 20px 0;}
.attribute-section {margin-bottom: 25px;}
.attribute-title {margin-bottom: 15px;font-weight: bold;color: #333;}
.variation-boxes-container.grid {display: flex; flex-wrap: nowrap; gap: 1rem; overflow-x: scroll; max-width: 490px; padding-bottom: 15px;}
.variation-boxes-container.list {display: flex;flex-direction: column; gap: 10px;}
.variation-boxes-container.inline {display: flex;flex-wrap: wrap; gap: 10px;}
.variation-box {border: 2px solid var( --e-global-color-primary );padding: 10px;border-radius: 10px;min-width: 180px;text-align: center;cursor: pointer;background-color: #f8f8f8;transition: all 0.3s;}
[data-attribute="pa_livello-di-rischio"] .variation-box {min-width: 100px}
.variation-box:hover { border-color: #0073aa; box-shadow: 0 2px 8px rgba(0,115,170,0.1);}
.variation-box.selected {border-color: #007cba;background-color: #e0f7ff;}
.variation-box.disabled { opacity: 0.5; cursor: not-allowed; background: #f5f5f5;}
.variation-box.hidden {display: none; /* Aggiunto per nascondere completamente i box non disponibili */}
/* Stili specifici per box data */
.date-box { text-align: center;}
.box-date {font-size: 1.8rem;color: #00a5df;}
.box-month {font-weight: bold;}
.box-time, .box-location {font-size: 0.9rem;margin-top: 4px;}
.box-status {color: white;background-color: var( --e-global-color-primary );border-radius: 5px;padding: 2px 5px;margin-top: 6px;}
/* Stili per box colore */
.color-box { display: flex; align-items: center; gap: 10px;}
.color-swatch {width: 30px; height: 30px; border-radius: 50%; border: 2px solid #ddd;}
/* Stili per box generici */
.generic-box {text-align: center; padding: 20px;}
.box-label { font-weight: bold;color: #333;}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled:hover{background:var( --e-global-color-primary )!important}

form.variations_form .variations, .woocommerce-variation-price { display: none;}
.variation dt {display:block; width:100%}
p.price{color:var( --e-global-color-primary )!important}
.quantity.qty-buttons-processed {position: relative;align-items: center;border: 3px solid var(--e-global-color-primary);border-radius: 0;overflow: hidden;vertical-align: middle;max-width: 125px;
	height:50px;display: inline-flex;}
.elementor-widget-woocommerce-product-add-to-cart .quantity,.elementor-add-to-cart .quantity,.elementor-widget-wc-add-to-cart .quantity {display: inline-flex !important;}
.quantity input[type="number"] {border: none !important;text-align: center!important;width: 40px !important;height: 40px !important;margin: 0 !important;-moz-appearance: textfield;padding: 0 !important;
	font-size: 16px;box-shadow: none !important;outline: none !important;background: #fff !important;	min-width: 40px !important;	max-width: 40px !important;}
.quantity input[type="number"]::-webkit-outer-spin-button,.quantity input[type="number"]::-webkit-inner-spin-button {-webkit-appearance: none;	margin: 0;}
.qty-btn {background: #f8f8f8 !important;border: none !important;width: 40px !important;height: 40px !important;cursor: pointer;font-size: 18px;font-weight: bold;color: #333 !important;transition: background-color 0.3s ease;display: flex;align-items: center;justify-content: center;outline: none !important;box-shadow: none !important;margin: 0 !important;padding: 0 !important;min-width: 40px !important;max-width: 40px !important;flex-shrink: 0;}
.qty-btn:hover {background: #e8e8e8 !important;}
.qty-btn:active {background: #ddd !important;}
.qty-btn.minus {border-right: 1px solid #ddd !important;border-radius: 3px 0 0 3px !important;}
.qty-btn.plus {border-left: 1px solid #ddd !important;border-radius: 0 3px 3px 0 !important;}
.qty-btn:disabled {opacity: 0.5 !important;	cursor: not-allowed !important;	background: #f0f0f0 !important;}
/* Specifici per Elementor */
.elementor-widget-woocommerce-product-add-to-cart .qty-btn,.elementor-add-to-cart .qty-btn,.elementor-widget-wc-add-to-cart .qty-btn {	background: #f8f8f8 !important;}
/* Reset per eventuali conflitti di tema */
.quantity .qty-btn:before,.quantity .qty-btn:after {display: none !important;}

@media screen and (max-width:1024px){
	.variation-boxes-wrapper {max-width: 100%;}
}