.kmz-disabled:disabled{opacity:.5!important;cursor:not-allowed!important;pointer-events:none!important}.kmz-quote{margin-top:24px;padding:24px;border:1px solid #ddd;border-radius:10px;background:#fafafa;color:#222;clear:both}.kmz-quote h2{font-size:1.4em;margin-top:0}.kmz-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.kmz-quote label{display:block;font-weight:600;margin-bottom:6px}.kmz-quote input:not([type=hidden]),.kmz-quote textarea{box-sizing:border-box;width:100%;padding:10px;border:1px solid #bbb;border-radius:4px;background:#fff;color:#222}.kmz-quote small{display:block;font-size:.85em;line-height:1.4;margin-top:5px}.kmz-quote textarea{margin-bottom:12px}.kmz-quote-form>.kmz-grid{margin-bottom:18px}.kmz-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.kmz-status{padding:14px;border-left:4px solid #08918a;background:#fff}.kmz-privacy{font-size:.9em}.kmz-quote input:focus,.kmz-quote textarea:focus{outline:2px solid #08918a;outline-offset:2px}@media(max-width:600px){.kmz-grid{grid-template-columns:1fr}.kmz-quote{padding:18px}.kmz-quote button{width:100%}}
/* Stile 2: pulsante fisso e modale nativa con gestione accessibile del focus. */
.kmz-float{position:fixed!important;right:0!important;top:50%!important;transform:translateY(-50%)!important;z-index:99990;writing-mode:vertical-rl;text-orientation:mixed;padding:18px 12px!important;border:0;border-radius:8px 0 0 8px;background:#08918a;color:#fff;font-family:inherit;font-weight:600;font-size:15px;line-height:1.3;cursor:pointer;box-shadow:0 3px 15px #0003;max-height:80vh}.kmz-float:hover,.kmz-float:focus{background:#06726d;color:#fff}.kmz-dialog{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(760px,calc(100vw - 32px));max-width:760px;max-height:85vh;max-height:85dvh;padding:0;border:0;border-radius:12px;background:#fafafa;color:#222;box-shadow:0 20px 70px #0005;overflow:auto;z-index:100000}.kmz-dialog::backdrop{background:rgba(0,0,0,.6)}.kmz-dialog .kmz-quote{margin:0;padding:36px 28px 24px;border:0}.kmz-close{position:sticky;top:8px;float:right;margin:8px 8px -40px 0;z-index:1;border:1px solid #bbb;border-radius:50%;width:36px;height:36px;padding:0;background:#fff;color:#222;font-size:26px;line-height:32px;cursor:pointer}.kmz-modal-open{overflow:hidden!important}.woocommerce-Tabs-panel .kmz-quote{margin-top:0}@media(max-width:600px){.kmz-float{padding:14px 8px!important;font-size:13px}.kmz-dialog{width:calc(100vw - 20px);max-height:90vh;max-height:90dvh}.kmz-dialog .kmz-quote{padding:40px 18px 20px}}
