/* Checkout Dimavis (tema child dimavis), caricato da inc/checkout.php. Descrizione di ogni parte nel documento
   modifiche-checkout-dimavis-2026-09-26.md (27/09/2026: prima era scritto nella pagina). Tutti i layout. */
/* Campi, colonne Paese | C.A.P. | Provincia, metodi di pagamento, riepilogo (parti D–H) */
@media (min-width:850px){
form.checkout #billing_country_field,form.checkout #billing_postcode_field,form.checkout #billing_state_field,form.checkout #shipping_country_field,form.checkout #shipping_postcode_field,form.checkout #shipping_state_field{float:left!important;width:32%!important;margin-right:2%!important;clear:none!important}
form.checkout #billing_country_field,form.checkout #shipping_country_field{clear:both!important}
form.checkout #billing_state_field,form.checkout #shipping_state_field{margin-right:0!important}
form.checkout #billing_city_field,form.checkout #shipping_city_field{clear:both!important}
}
form.checkout .form-row select{display:inline-block;vertical-align:middle;height:3em;font-size:1.1em;color:rgba(0,0,0,.87);box-sizing:border-box}
form.checkout .form-row input.input-text,form.checkout .form-row select,form.checkout .form-row textarea{background-color:#f0f8f9;border:1px solid #d5e2e3;border-radius:10px;box-shadow:none}
form.checkout .form-row input.input-text:focus,form.checkout .form-row select:focus,form.checkout .form-row textarea:focus{background-color:#fff;border:1px solid #2d8185;box-shadow:0 0 0 3px rgba(45,129,133,.18);outline:0}
form.checkout .woocommerce-invalid input.input-text,form.checkout .woocommerce-invalid select{border:1px solid #ff6465;box-shadow:0 0 0 3px rgba(255,100,101,.14)}
form.checkout .form-row input.input-text:-webkit-autofill{box-shadow:inset 0 0 0 100px #f0f8f9;-webkit-text-fill-color:#333;caret-color:#333}
form.checkout .form-row.woocommerce-invalid input.input-text:-webkit-autofill{box-shadow:inset 0 0 0 100px #f0f8f9,0 0 0 3px rgba(255,100,101,.14)}
form.checkout .form-row input.input-text:-webkit-autofill:focus{box-shadow:inset 0 0 0 100px #fff,0 0 0 3px rgba(45,129,133,.18)}
form.checkout #place_order{border-radius:10px}
body.woocommerce-checkout .col-inner.has-border{border:1px solid #d5e2e3;border-radius:12px}
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,body.woocommerce-checkout .woocommerce-checkout-review-order-table td{border-width:0 0 1px;border-style:solid;border-color:#eef3f4}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th{border-bottom:1px solid #e5eeef}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{border-width:0;font-size:1.1em}
body.woocommerce-checkout #payment ul.wc_payment_methods{border:1px solid #d5e2e3;border-radius:10px;overflow:hidden;padding:0;margin:4px 0 18px}
body.woocommerce-checkout #payment ul.wc_payment_methods>li.wc_payment_method{margin:0;padding:12px 14px;border-top:1px solid #e5eeef;transition:background-color .2s ease}
body.woocommerce-checkout #payment ul.wc_payment_methods>li.wc_payment_method:first-child{border-top:0}
body.woocommerce-checkout #payment ul.wc_payment_methods>li.wc_payment_method:has(>input.input-radio:checked){background:#f0f8f9}
body.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method>input.input-radio{-webkit-appearance:none;appearance:none;display:inline-block;flex:none;position:relative;top:-1px;width:18px;height:18px;margin:0 10px 0 0;border:1.5px solid #b8cecf;border-radius:50%;background:#fff;vertical-align:middle;cursor:pointer;transition:border .15s ease}
body.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method>input.input-radio:checked{border:5px solid #2d8185}
body.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method>input.input-radio:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(45,129,133,.3)}
body.woocommerce-checkout #payment ul.wc_payment_methods>li.wc_payment_method{position:relative;cursor:pointer}
body.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method>label{cursor:pointer}
body.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method>label::after{content:"";position:absolute;inset:0;z-index:1}
body.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method>.payment_box{position:relative;z-index:2;cursor:auto}
body.woocommerce-checkout #payment .payment_box{margin:6px 0 0;padding:0 0 0 28px;background:transparent;color:#666;font-size:.9em}
body.woocommerce-checkout #payment .payment_box::before{display:none}
body.woocommerce-checkout #payment li.payment_method_woocommerce_payments>.payment_box{padding-left:0}
body.woocommerce-checkout #payment li.payment_method_woocommerce_payments fieldset.wc-payment-form{margin:0;padding:0;border:0}
body.woocommerce-checkout #payment li.payment_method_woocommerce_payments .wcpay-upe-element{padding:0}
form.checkout textarea#order_comments{background-color:#f0f8f9;border:1px solid #d5e2e3;border-radius:10px;box-shadow:none;font-size:1.1em;padding:.75em;color:rgba(0,0,0,.87);resize:vertical}
form.checkout textarea#order_comments:focus{background-color:#fff;border:1px solid #2d8185;box-shadow:0 0 0 3px rgba(45,129,133,.18);outline:0}
form.checkout .woocommerce-billing-fields{border-top:0;padding-top:0}
form.checkout .woocommerce-billing-fields .form-row,form.checkout .woocommerce-shipping-fields .form-row{margin-bottom:max(2%,10px)}
@media (min-width:550px){form.checkout .form-row-first,form.checkout .form-row-last{width:49%}form.checkout .form-row-first{margin-right:2%}}
form.checkout .form-row input.input-text,form.checkout .form-row select{margin-bottom:0}
form.checkout .form-row .checkout-inline-error-message{margin:6px 0 0 2px;font-size:12px;line-height:1.35;color:#ff6465}
form.checkout #ship-to-different-address label,form.checkout #dmv-notes-toggle-title label{display:inline-flex;align-items:center;gap:12px;cursor:pointer}
form.checkout #dmv-notes-toggle-title{padding-top:0}
form.checkout #dmv-notes-toggle-title label{font-weight:400;text-transform:none}
form.checkout #ship-to-different-address-checkbox,form.checkout #dmv-notes-toggle{-webkit-appearance:none;appearance:none;position:relative;flex:none;width:44px;height:26px;margin:0;border:0;border-radius:13px;background:#d5e2e3;cursor:pointer;vertical-align:middle;transition:background-color .2s ease}
form.checkout #ship-to-different-address-checkbox::before,form.checkout #dmv-notes-toggle::before{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s ease}
form.checkout #ship-to-different-address-checkbox:checked,form.checkout #dmv-notes-toggle:checked{background:#2d8185}
form.checkout #ship-to-different-address-checkbox:checked::before,form.checkout #dmv-notes-toggle:checked::before{transform:translateX(18px)}
form.checkout #ship-to-different-address-checkbox:focus-visible,form.checkout #dmv-notes-toggle:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(45,129,133,.3)}
@media (prefers-reduced-motion:reduce){form.checkout #ship-to-different-address-checkbox,form.checkout #ship-to-different-address-checkbox::before,form.checkout #dmv-notes-toggle,form.checkout #dmv-notes-toggle::before{transition:none}}
form.checkout #billing_country_field{display:block}
form.checkout .form-row label .optional{display:none}
form.checkout #billing_country_field label .required,form.checkout #shipping_country_field label .required{display:none}
/* Parte L: riepilogo richiudibile su mobile */
.dmv-riepilogo .dmv-riep-hd{display:none}
@media (max-width:849px){
html.dmv-riep body.woocommerce-checkout form.checkout .col-inner.has-border{border:0;border-radius:0;padding:0;box-shadow:none;background:transparent}
html.dmv-riep form.checkout #order_review_heading{display:none}
html.dmv-riep form.checkout .row>.large-7.col{padding-bottom:15px}
html.dmv-riep .dmv-riepilogo{border:1px solid #d5e2e3;border-radius:12px;background:#fff;overflow:hidden;margin:0 0 24px}
html.dmv-riep .dmv-riepilogo .dmv-riep-hd,html.dmv-riep .dmv-riepilogo .dmv-riep-hd:hover,html.dmv-riep .dmv-riepilogo .dmv-riep-hd:focus{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;cursor:pointer;color:inherit;font-family:inherit;line-height:1.3;text-align:left;-webkit-tap-highlight-color:transparent}
html.dmv-riep .dmv-riepilogo .dmv-riep-hd:focus-visible{outline:0;box-shadow:inset 0 0 0 3px rgba(45,129,133,.3);border-radius:12px}
html.dmv-riep .dmv-riep-tx{flex:1;min-width:0}
html.dmv-riep .dmv-riep-t{display:block;font-weight:700;text-transform:uppercase;font-size:1.05em;color:#555;letter-spacing:.01em}
html.dmv-riep .dmv-riep-s{display:block;margin-top:3px;font-size:.85em;color:#777}
html.dmv-riep .dmv-riep-s:empty{display:none}
html.dmv-riep .dmv-riep-p{flex:none;font-weight:700;font-size:1.15em;color:#111;white-space:nowrap}
html.dmv-riep .dmv-riep-f{flex:none;position:relative;width:30px;height:30px;border-radius:50%;background:#f0f8f9}
html.dmv-riep .dmv-riep-f::before{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border-right:2px solid #2d8185;border-bottom:2px solid #2d8185;transform:translate(-50%,-70%) rotate(45deg);transition:transform .2s ease}
html.dmv-riep .dmv-riepilogo:not(.dmv-chiuso) .dmv-riep-f::before{transform:translate(-50%,-25%) rotate(-135deg)}
@media (prefers-reduced-motion:reduce){html.dmv-riep .dmv-riep-f::before{transition:none}}
html.dmv-riep .dmv-riepilogo.dmv-chiuso .woocommerce-checkout-review-order-table{display:none}
html.dmv-riep .dmv-riepilogo .woocommerce-checkout-review-order-table{margin:0;border-top:1px solid #e5eeef}
html.dmv-riep .dmv-riepilogo .woocommerce-checkout-review-order-table thead{display:none}
html.dmv-riep .dmv-riepilogo .woocommerce-checkout-review-order-table>tbody>tr>:first-child,html.dmv-riep .dmv-riepilogo .woocommerce-checkout-review-order-table>tfoot>tr>:first-child{padding-left:16px}
html.dmv-riep .dmv-riepilogo .woocommerce-checkout-review-order-table>tbody>tr>:last-child,html.dmv-riep .dmv-riepilogo .woocommerce-checkout-review-order-table>tfoot>tr>:last-child{padding-right:16px}
html.dmv-riep .dmv-riepilogo .woocommerce-checkout-review-order-table>tfoot>tr:last-child>*{padding-bottom:14px}
html.dmv-riep form.checkout #payment:has(>ul.wc_payment_methods)::before{content:"Pagamento";display:block;margin:0 0 .5em;font-size:1.1em;font-weight:700;line-height:1.6;text-transform:uppercase;letter-spacing:normal;color:#555}
}
/* Parte M: avvisi di errore non doppi */
form.checkout .woocommerce-NoticeGroup-checkout li.dmv-err-doppio{display:none}
form.checkout .woocommerce-NoticeGroup-checkout.dmv-err-solo-lettori{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* Layout Focused di Flatsome su mobile: tutta larghezza */
@media (max-width:849px){
body.woocommerce-checkout #main-content.site-main{max-width:none!important;margin:0 auto 24px!important}
body.woocommerce-checkout #main-content>#main.page-checkout{padding:0 0 15px!important;box-shadow:none}
body.woocommerce-checkout #main-content .focused-checkout-logo{padding-top:20px!important;padding-bottom:20px!important}
}
/* Codice sconto sempre in maiuscolo mentre si scrive (27/09/2026, richiesta di Toti): solo l'aspetto, WooCommerce non
   distingue maiuscole e minuscole nei codici. Il segnaposto resta com'è (:not(:placeholder-shown)). Per il carrello la
   stessa regola è in inc/checkout.php. */
.dmv-sconto-input:not(:placeholder-shown),form.checkout_coupon #coupon_code:not(:placeholder-shown){text-transform:uppercase}
/* Partita IVA o Codice Fiscale sempre in maiuscolo (27/09/2026, richiesta di Toti); il valore lo porta in maiuscolo
   checkout-base.js all'uscita dal campo e inc/checkout.php nell'ordine salvato. */
form.checkout #billing_eu_vat_number:not(:placeholder-shown){text-transform:uppercase}
/* E-mail sempre in minuscolo (27/09/2026, richiesta di Toti): stesso schema della Partita IVA. */
form.checkout #billing_email:not(:placeholder-shown){text-transform:lowercase}
/* C.A.P. in maiuscolo (27/09/2026, richiesta di Toti): serve ai codici esteri con lettere ("SW1A 1AA", "1234 AB"). Nell'ordine
   salvato li formatta già WooCommerce (wc_format_postcode). */
form.checkout #billing_postcode:not(:placeholder-shown),form.checkout #shipping_postcode:not(:placeholder-shown){text-transform:uppercase}
/* Maschera di attesa all'invio dell'ordine su tutta la finestra (27/09/2026, richiesta di Toti). WooCommerce (blockUI) copre
   solo il modulo: restavano scoperti l'intestazione, il footer e i bordi del pulsante. Solo la maschera figlia diretta del
   modulo in invio (form.checkout.processing): quelle dei ricalcoli stanno dentro #payment e il riepilogo e non cambiano.
   z-index sotto le finestre dei pagamenti (3D Secure di Stripe, Klarna, PayPal), che stanno sopra a tutto. */
form.checkout.processing>.blockUI.blockOverlay{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:auto!important;height:auto!important;z-index:9990!important}
/* WooCommerce 11.2.0 (08/10/2026): form-shipping.php stampa sempre il titolo "Informazioni aggiuntive" sopra le note
   (prima solo senza spedizione, quindi da noi mai). Nascosto: le note si aprono da "Aggiungi note per la consegna". */
form.checkout .woocommerce-additional-fields>h3:not(#dmv-notes-toggle-title){display:none}
