    :root{--ast-blue:#0878e8;--ast-blue-dark:#075fbd;--ast-navy:#0b2745;--ast-text:#29445f;--ast-copy:#62788e;--ast-line:#d7e3ee;--ast-soft:#f5f9fd;--ast-green:#06a579;--ast-green-soft:#edfaf5;--ast-purple:#7955e8;--ast-shadow:0 12px 36px rgba(16,49,82,.09)}
    html body.sagomato-lab-astucci-page::before,
    html body.sagomato-lab-astucci-page::after{content:none!important;display:none!important;background:none!important}
    html body.sagomato-lab-astucci-page #main,
    html body.sagomato-lab-astucci-page #astApp{position:relative!important;z-index:2!important}
    body:has(#astApp){background:#f7f9fc!important}
    body:has(#astApp) .entry-header,body:has(#astApp) .page-header,body:has(#astApp) .entry-title{display:none!important}
    body:has(#astApp) .container,body:has(#astApp) .container-width,body:has(#astApp) .row-main,body:has(#astApp) .large-12,body:has(#astApp) .col{width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important}
    #astApp,#astApp *{box-sizing:border-box}
    #astApp{width:min(1500px,calc(100vw - 34px));margin:28px auto 56px;color:var(--ast-text);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:13px;line-height:1.35}
    #astApp button,#astApp input,#astApp select{font:inherit}
    #astApp button{cursor:pointer}
    .ast-head{min-height:82px;display:grid;grid-template-columns:minmax(360px,.8fr) minmax(620px,1.2fr);align-items:center;gap:36px;padding:14px 22px;border:1px solid var(--ast-line);border-radius:7px 7px 0 0;background:#fff}
    .ast-title small{display:flex;align-items:center;gap:7px;color:var(--ast-blue);font-size:8px;font-weight:900;letter-spacing:.11em}.ast-title small span{width:18px;height:2px;background:var(--ast-blue)}
    .ast-title h1{margin:3px 0 1px;color:var(--ast-navy);font-size:23px;line-height:1.08;letter-spacing:-.035em}.ast-title p{margin:0;color:#60768b;font-size:9px}.ast-title p i{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:var(--ast-green);box-shadow:0 0 0 3px #dff7ee}
    .ast-steps{position:relative;display:grid;grid-template-columns:repeat(3,1fr)}.ast-steps:before{content:"";position:absolute;left:11%;right:11%;top:25px;height:2px;background:#dce7f1}.ast-steps:after{content:"";position:absolute;left:11%;width:39%;top:25px;height:2px;background:var(--ast-blue)}
    .ast-steps button{position:relative;z-index:1;display:grid;grid-template-columns:28px 1fr;align-items:center;gap:9px;padding:10px 12px;border:0;background:transparent;text-align:left}.ast-steps button b{width:28px;height:28px;display:grid;place-items:center;border:1px solid #d5e1ec;border-radius:50%;color:#6e8397;background:#fff;font-size:10px}.ast-steps button.is-active b{border-color:var(--ast-blue);color:#fff;background:var(--ast-blue);box-shadow:0 6px 15px rgba(8,120,232,.2)}.ast-steps span{display:grid}.ast-steps strong{color:#29445f;font-size:9px;text-transform:uppercase}.ast-steps small{color:#71859a;font-size:7px;text-transform:uppercase}
    .ast-workspace{display:grid;grid-template-columns:330px minmax(560px,1fr) 350px;min-height:645px;border-right:1px solid var(--ast-line);border-bottom:1px solid var(--ast-line);border-left:1px solid var(--ast-line);background:#fff}
    .ast-measures{padding:14px 12px;border-right:1px solid var(--ast-line);background:#fff}.ast-section-title{display:flex;justify-content:space-between;gap:10px}.ast-section-title h2,.ast-quote h2{margin:0;color:var(--ast-navy);font-size:15px;letter-spacing:-.025em}.ast-section-title p{margin:2px 0 0;color:var(--ast-copy);font-size:8px}.ast-live{height:25px;display:flex;align-items:center;gap:5px;padding:0 8px;border:1px solid #cbeadf;border-radius:4px;color:#087857;background:#f1fbf7;font-size:7px;font-weight:850;white-space:nowrap}.ast-live i{width:6px;height:6px;border-radius:50%;background:var(--ast-green)}
    .ast-preset-head,.ast-customize-head{display:flex;justify-content:space-between;align-items:center;margin:14px 0 7px;color:#2e4963;font-size:8px}.ast-preset-head small,.ast-customize-head small{color:#7a8da0;font-size:7px}.ast-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.ast-presets button{min-height:50px;padding:8px;border:1px solid #dbe6ef;border-radius:4px;color:#2d4861;background:#fff;text-align:left}.ast-presets button:hover,.ast-presets button.is-active{border-color:#78b7f0;background:#f5faff}.ast-presets strong,.ast-presets small{display:block}.ast-presets strong{font-size:8px}.ast-presets small{margin-top:3px;color:#76899b;font-size:6.5px}
    .ast-fields{display:grid;gap:8px;margin-top:14px}.ast-fields>label{display:grid;grid-template-columns:1fr 178px;align-items:center;gap:9px;color:#203e5b;font-size:9px;font-weight:800}.ast-input{height:38px;display:grid;grid-template-columns:30px 1fr 28px;align-items:center;overflow:hidden;border:1px solid #cbdbe9;border-radius:4px;background:#fff}.ast-input:focus-within{border-color:var(--ast-blue);box-shadow:0 0 0 3px rgba(8,120,232,.11)}.ast-input i{height:100%;display:grid;place-items:center;color:var(--ast-blue);background:#eef7ff;font-style:normal}.ast-input input{width:100%;border:0;outline:0;color:#0b2a49;background:transparent;font-size:17px;font-weight:850}.ast-input em{color:#577087;font-size:8px;font-style:normal}
    .ast-validation{display:flex;align-items:center;gap:9px;margin-top:9px;padding:8px;border:1px solid #cde9df;border-radius:4px;background:#f3fbf8}.ast-validation>i{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--ast-green);font-style:normal}.ast-validation span{display:grid}.ast-validation strong{color:#087657;font-size:8px}.ast-validation small{color:#658879;font-size:7px}.ast-validation.is-error{border-color:#f0c6ca;background:#fff5f6}.ast-validation.is-error>i{background:#c6424f}.ast-validation.is-error strong{color:#a92d38}
    .ast-option{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:9px;margin-top:9px;padding:9px;border:1px solid #cfe8dd;border-radius:4px;background:#f3fbf8}.ast-option-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:4px;color:#087c5b;background:#dcf5eb}.ast-option span{display:grid}.ast-option strong{color:#126d54;font-size:8px}.ast-option small{color:#628477;font-size:7px}.ast-option>b{color:#078563;font-size:6px}
    .ast-details{margin-top:9px;border:1px solid #dbe6ef;border-radius:4px}.ast-details summary{height:34px;display:grid;grid-template-columns:22px 1fr auto;align-items:center;padding:0 9px;list-style:none;color:#2e4b66;font-size:8px;cursor:pointer}.ast-details summary::-webkit-details-marker{display:none}.ast-details summary span{color:var(--ast-blue)}.ast-details summary i{font-style:normal}.ast-detail-body{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:9px;border-top:1px solid #e2ebf3;background:#f8fbfe}.ast-detail-body label,.ast-property-section>label{display:grid;gap:4px;color:#536b82;font-size:8px}.ast-detail-body select,.ast-property-section select,.ast-property-section input[type=text]{height:34px;border:1px solid #cedde9;border-radius:4px;padding:0 8px;color:#183b5c;background:#fff;outline:0}
    .ast-action{width:100%;min-height:46px;display:grid;grid-template-columns:34px 1fr 24px;align-items:center;gap:8px;margin-top:7px;padding:6px 8px;border-radius:4px;color:#fff;text-align:left}.ast-action>i{width:30px;height:30px;display:grid;place-items:center;border-radius:4px;background:rgba(255,255,255,.14);font-style:normal}.ast-action span{display:grid}.ast-action strong{font-size:9px}.ast-action small{color:rgba(255,255,255,.85);font-size:7px}.ast-action>b{font-size:19px}.ast-action-green{border:1px solid #078d68;background:linear-gradient(180deg,#0bad80,#099d73)}.ast-action-blue{border:1px solid #0768ce;background:linear-gradient(180deg,#0a82f0,#0871d8)}
    .ast-stage{position:relative;min-width:0;display:grid;grid-template-rows:1fr 31px 74px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}.ast-model-tabs{position:absolute;z-index:4;top:10px;right:10px;display:flex;overflow:hidden;border:1px solid #0b416f;border-radius:4px;box-shadow:0 6px 16px rgba(5,40,75,.15)}.ast-model-tabs button{min-height:34px;padding:0 12px;border:0;color:#fff;background:#0b3155;font-size:7px;font-weight:850}.ast-model-tabs button.is-active{background:#0877df}.ast-model-tabs button:disabled{opacity:1}.ast-model-tabs small{margin-left:5px;color:#8cb0ce;font-size:5px}
    .ast-three-wrap{position:relative;min-height:460px;overflow:hidden;background:radial-gradient(circle at 52% 43%,#fff 0,#fff 38%,#f7fbff 100%)}.ast-three{position:absolute;inset:0}.ast-three canvas{width:100%!important;height:100%!important;display:block}.ast-fallback{position:absolute;inset:10% 8%;width:84%;height:80%}.ast-three-wrap.has-webgl .ast-fallback{display:none}.ast-dimension{position:absolute;z-index:3;padding:5px 8px;border:1px solid #6eb4ef;border-radius:4px;color:#075fbd;background:#fff;box-shadow:0 4px 12px rgba(8,93,173,.1);font-size:8px;font-weight:850;pointer-events:none}.ast-dim-l{left:45%;bottom:64px}.ast-dim-p{right:16%;top:55%}.ast-dim-h{left:18%;top:49%}.ast-scene-hint{position:absolute;left:50%;bottom:17px;transform:translateX(-50%);padding:5px 9px;border-radius:20px;color:#718498;background:rgba(255,255,255,.82);font-size:7px;opacity:.7}
    .ast-rotation{height:31px;display:grid;grid-template-columns:70px 1fr 35px;align-items:center;gap:8px;padding:0 12px;border-top:1px solid var(--ast-line);border-bottom:1px solid var(--ast-line);background:#fff}.ast-rotation label,.ast-rotation output{color:#516b84;font-size:7px}.ast-rotation input{accent-color:#1a2939}
    .ast-viewbar{min-width:0;display:grid;grid-template-columns:minmax(230px,1fr) minmax(150px,.7fr) 130px 190px;align-items:stretch;background:#fff}.ast-view-group,.ast-switch,.ast-export{padding:8px 10px;border-right:1px solid var(--ast-line)}.ast-view-group>small,.ast-switch small{display:block;margin-bottom:6px;color:#62788d;font-size:7px;font-weight:800;text-transform:uppercase}.ast-view-group>div{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.ast-state-group>div{grid-template-columns:repeat(2,1fr)}.ast-view-group button{height:31px;border:1px solid #d4e1ec;border-radius:3px;color:#35516b;background:#fff;font-size:7px;font-weight:800}.ast-view-group button.is-active{border-color:#0a75dc;color:#fff;background:#0a75dc}.ast-switch{display:grid;grid-template-columns:1fr 30px;align-items:center}.ast-switch span{display:grid}.ast-switch strong{color:#24425f;font-size:7px}.ast-switch input{display:none}.ast-switch>i{width:30px;height:17px;position:relative;border-radius:20px;background:#b9c8d5}.ast-switch>i:after{content:"";position:absolute;top:3px;left:3px;width:11px;height:11px;border-radius:50%;background:#fff;transition:.2s}.ast-switch input:checked+i{background:var(--ast-blue)}.ast-switch input:checked+i:after{left:16px}.ast-export{display:grid;grid-template-columns:30px 1fr;align-items:center;gap:7px;border:0;background:#fff;text-align:left}.ast-export>span{width:28px;height:28px;display:grid;place-items:center;border:1px solid #d6e3ed;border-radius:4px;color:var(--ast-blue)}.ast-export b,.ast-export small{display:block}.ast-export b{color:#29455f;font-size:8px}.ast-export small{color:#73879a;font-size:6px}
    .ast-quote{padding:14px 12px;background:#fff}.ast-quote-head{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;padding-bottom:13px;border-bottom:1px solid var(--ast-line)}.ast-quote-head>span{width:38px;height:38px;display:grid;place-items:center;border:3px solid var(--ast-blue);border-right-color:#dceaf6;border-radius:50%;color:#0a6dcc;font-size:9px;font-weight:900}.ast-quote-head p{margin:2px 0 0;color:#73879a;font-size:6px;font-weight:800}.ast-quote-tabs{display:grid;grid-template-columns:1fr 1fr;margin-top:10px;border-bottom:1px solid var(--ast-line)}.ast-quote-tabs button{height:30px;border:0;border-bottom:2px solid transparent;color:#667b8e;background:#fff;font-size:7px;font-weight:900}.ast-quote-tabs button.is-active{border-bottom-color:var(--ast-blue);color:var(--ast-blue)}
    .ast-choice-title{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:8px;margin-top:12px;padding:7px;border:1px solid #ccecdf;border-radius:4px;background:#f3fbf8}.ast-choice-title>i{width:25px;height:25px;display:grid;place-items:center;border-radius:4px;color:#078b66;background:#ddf5ec;font-style:normal}.ast-choice-title span{display:grid}.ast-choice-title strong{color:#1e4b42;font-size:8px}.ast-choice-title small{color:#67867c;font-size:6.5px}
    .ast-qty-presets{display:grid;grid-template-columns:repeat(4,1fr);margin-top:8px;border:1px solid #d7e3ed;border-radius:4px}.ast-qty-presets button{position:relative;min-height:51px;border:0;border-right:1px solid #d7e3ed;color:#183d61;background:#fff;font-size:10px;font-weight:900}.ast-qty-presets button:nth-child(4){border-right:0}.ast-qty-presets small{font-size:6px;font-weight:500}.ast-qty-presets button>b{position:absolute;top:3px;left:50%;transform:translateX(-50%);padding:2px 5px;border-radius:2px;color:#fff;background:#0a76df;font-size:5px;white-space:nowrap}.ast-qty-presets button.is-active{color:#fff;background:#0877e6}.ast-qty-presets button.is-active>b{background:#fff;color:#0877e6}.ast-qty-presets button:nth-child(5){grid-column:1/-1;min-height:32px;border-top:1px solid #d7e3ed;border-right:0}.ast-qty-presets button:nth-child(5) em{position:absolute;right:8px;color:#6c8195;font-size:5px;font-style:normal}
    .ast-qty-row{display:grid;grid-template-columns:1fr auto;align-items:center;margin-top:10px}.ast-qty-row>span{font-size:7px;font-weight:800}.ast-qty-row>small{font-size:6px}.ast-qty-row>div{grid-column:1/-1;height:38px;display:grid;grid-template-columns:30px 25px 1fr 20px 30px;align-items:center;margin-top:5px;border:1px solid #7cbaef;border-radius:4px}.ast-qty-row button{height:100%;border:0;color:var(--ast-blue);background:#f6fbff}.ast-qty-row i{color:#079c74;font-style:normal}.ast-qty-row input{width:100%;border:0;outline:0;color:#163c60;font-size:14px;font-weight:900}.ast-qty-row em{font-size:6px;font-style:normal}
    .ast-price-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;margin-top:10px;padding:11px;border:1px solid #8dc7f5;border-left:4px solid var(--ast-blue);border-radius:4px;background:#f8fcff}.ast-price-card small,.ast-price-card strong,.ast-price-card p{display:block}.ast-price-card small{color:#0872d6;font-size:6px;font-weight:900}.ast-price-card>div:first-child>strong{color:#0873d9;font-size:23px;line-height:1.15}.ast-price-card strong em{font-size:7px;font-style:normal}.ast-price-card p{margin:4px 0 0;color:#71869a;font-size:5.7px}.ast-price-card>div:last-child{text-align:right}.ast-price-card>div:last-child strong{color:#0b2f52;font-size:11px}
    .ast-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.ast-summary div{padding:8px 6px;border:1px solid #dbe6ef;border-radius:4px;background:#fbfdff}.ast-summary small,.ast-summary strong{display:block}.ast-summary small{color:#71869a;font-size:5.5px}.ast-summary strong{margin-top:3px;color:#27445f;font-size:7px}
    .ast-progress-title{display:flex;justify-content:space-between;margin-top:12px;padding-bottom:6px;border-bottom:1px solid var(--ast-line);font-size:7px;font-weight:800}.ast-progress-title small{color:#71869a;font-size:6px}.ast-checks{display:grid;gap:0;margin:0;padding:0;list-style:none}.ast-checks li{padding:7px 4px;border-bottom:1px solid #e7edf3;color:#8a9bad;font-size:7px}.ast-checks li.is-done{color:#07976f}.ast-checks li span{margin-left:5px;color:#3f586f}.ast-continue{width:100%;height:38px;margin-top:8px;border:0;border-radius:3px;color:#fff;background:#0877e6;font-size:8px;font-weight:900}.ast-continue span{margin-left:6px}.ast-quote footer{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:8px;padding:8px 2px;border-bottom:1px solid var(--ast-line);color:#63798d;font-size:5.5px;text-align:center}.ast-save-row{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.ast-save-row button{border:0;color:#657a8e;background:transparent;font-size:6px;font-weight:800}
    .ast-process{display:grid;grid-template-columns:1.08fr repeat(3,1fr);gap:8px;margin-top:14px;padding:16px;border:1px solid #cfe1ef;border-top:2px solid var(--ast-blue);border-radius:4px;background:linear-gradient(90deg,#f4f9ff,#f6fffb)}.ast-process-intro{padding:5px}.ast-process-intro>span{width:28px;height:28px;display:grid;place-items:center;margin-bottom:7px;border:1px solid #b9daf5;border-radius:5px;color:var(--ast-blue);background:#fff}.ast-process-intro>small{color:#0871d5;font-size:6px;font-weight:900;letter-spacing:.1em}.ast-process-intro h2{margin:4px 0;color:var(--ast-navy);font-size:15px}.ast-process-intro p,.ast-process article p{margin:0;color:#71869a;font-size:7px}.ast-process-intro button{height:30px;margin-top:10px;border:0;border-radius:3px;color:#fff;background:#0877e6;font-size:7px;font-weight:850}.ast-process article{position:relative;display:grid;grid-template-columns:32px 1fr;align-items:center;gap:9px;padding:14px;border:1px solid #d7e4ee;border-radius:4px;background:#fff}.ast-process article>b{position:absolute;top:5px;right:7px;color:#9aabba;font-size:6px}.ast-process article>i{width:30px;height:30px;display:grid;place-items:center;border-radius:5px;color:var(--ast-blue);background:#eff7ff;font-style:normal}.ast-process article strong{color:#29455f;font-size:8px}
    .ast-editor{position:fixed;z-index:2147483000;inset:0;display:none;grid-template-rows:72px 1fr;color:var(--ast-text);background:#f4f8fc}.ast-editor.is-open{display:grid}.ast-editor>header{display:grid;grid-template-columns:300px 1fr 250px;align-items:center;gap:20px;padding:0 20px;border-bottom:1px solid var(--ast-line);background:#fff}.ast-editor-brand{display:flex;align-items:center;gap:10px}.ast-editor-brand>b{width:38px;height:38px;display:grid;place-items:center;border-radius:6px;color:#fff;background:linear-gradient(145deg,#0b83ee,#075fc5)}.ast-editor-brand span{display:grid}.ast-editor-brand strong{color:var(--ast-navy);font-size:12px}.ast-editor-brand small{color:var(--ast-blue);font-size:6px;font-weight:900;letter-spacing:.1em}.ast-editor>header nav{display:grid;grid-template-columns:repeat(3,1fr);max-width:680px;margin:auto}.ast-editor>header nav>span{display:grid;grid-template-columns:25px 1fr;align-items:center;gap:7px}.ast-editor>header nav i{width:24px;height:24px;display:grid;place-items:center;border:1px solid #d6e2ec;border-radius:50%;font-size:7px;font-style:normal}.ast-editor>header nav .is-done i{color:#fff;background:var(--ast-green)}.ast-editor>header nav .is-active i{border-color:var(--ast-blue);color:#fff;background:var(--ast-blue)}.ast-editor>header nav b{display:grid;font-size:7px;text-transform:uppercase}.ast-editor>header nav small{color:#7b8ea1;font-size:5px}.ast-editor-actions{display:flex;justify-content:flex-end;gap:7px}.ast-editor-actions button{height:34px;padding:0 12px;border:1px solid #cddde9;border-radius:4px;color:#35536e;background:#fff;font-size:7px;font-weight:850}.ast-editor-actions button:first-child{border-color:#0a72d8;color:#fff;background:#0a72d8}
    .ast-editor-body{min-height:0;display:grid;grid-template-columns:88px minmax(0,1fr) 310px}.ast-editor-tools{display:flex;flex-direction:column;gap:4px;padding:10px 8px;border-right:1px solid var(--ast-line);background:#fff}.ast-editor-tools button{min-height:58px;display:grid;place-items:center;gap:2px;border:1px solid transparent;border-radius:5px;color:#506a82;background:#fff;font-size:7px}.ast-editor-tools button i{font-size:18px;font-style:normal}.ast-editor-tools button.is-active,.ast-editor-tools button:hover{border-color:#b9dafa;color:var(--ast-blue);background:#eff7ff}.ast-editor-tools hr{width:100%;border:0;border-top:1px solid var(--ast-line)}
    .ast-editor-stage{min-width:0;min-height:0;display:grid;grid-template-rows:54px 1fr 40px;padding:12px 14px}.ast-editor-topbar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:7px;border:1px solid var(--ast-line);border-radius:5px 5px 0 0;background:#fff}.ast-editor-topbar>div{display:flex;gap:4px}.ast-editor-topbar button{height:30px;padding:0 9px;border:1px solid #d4e1ec;border-radius:3px;color:#456078;background:#fff;font-size:6.5px;font-weight:850}.ast-editor-topbar button.is-active{border-color:var(--ast-blue);color:#fff;background:var(--ast-blue)}.ast-editor-topbar output{min-width:46px;display:grid;place-items:center;color:#3f5d78;font-size:7px}.ast-editor-canvas{position:relative;min-height:0;display:grid;place-items:center;overflow:auto;border-right:1px solid var(--ast-line);border-bottom:1px solid var(--ast-line);border-left:1px solid var(--ast-line);background-color:#f7fafc;background-image:linear-gradient(#eaf0f5 1px,transparent 1px),linear-gradient(90deg,#eaf0f5 1px,transparent 1px);background-size:22px 22px}.ast-editor-canvas>svg{width:88%;height:88%;overflow:visible;filter:drop-shadow(0 12px 24px rgba(20,54,86,.08));transition:transform .2s}.ast-canvas-status{position:absolute;z-index:3;top:12px;left:12px;padding:6px 9px;border:1px solid #c8eadf;border-radius:20px;color:#087759;background:#f3fbf8;font-size:6px;font-weight:850}.ast-canvas-status i{display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:var(--ast-green)}.ast-editor-legend{position:absolute;right:12px;bottom:12px;display:flex;gap:10px;padding:6px 9px;border:1px solid var(--ast-line);border-radius:4px;background:rgba(255,255,255,.93);font-size:6px;font-weight:800}.ast-editor-legend span{display:flex;align-items:center;gap:4px}.ast-editor-legend i{width:17px;height:2px}.ast-editor-legend .cut{background:#ed2f3e}.ast-editor-legend .crease{border-top:2px dashed #00a250}.ast-editor-legend .safe{border-top:2px dashed #8c65df}.ast-editor-stage>footer{display:flex;justify-content:space-between;align-items:center;padding:0 10px;border:1px solid var(--ast-line);border-top:0;border-radius:0 0 5px 5px;color:#6e8295;background:#fff;font-size:6px}.ast-editor-stage>footer strong{color:var(--ast-blue)}
    .ast-editor-properties{min-height:0;overflow:auto;border-left:1px solid var(--ast-line);background:#fff}.ast-editor-properties>header{height:62px;display:flex;justify-content:space-between;align-items:center;padding:0 14px;border-bottom:1px solid var(--ast-line)}.ast-editor-properties>header span{display:grid}.ast-editor-properties>header small{color:#7a8da0;font-size:6px;font-weight:900}.ast-editor-properties>header strong{color:var(--ast-navy);font-size:13px}.ast-editor-properties>header i{padding:3px 6px;border-radius:12px;color:#08795b;background:#e6f8f1;font-size:6px;font-style:normal;font-weight:900}.ast-property-section{display:grid;gap:9px;padding:14px;border-bottom:1px solid var(--ast-line)}.ast-property-section>small{color:#6d8296;font-size:6px;font-weight:900;letter-spacing:.08em}.ast-property-upload{height:48px;display:grid;grid-template-columns:32px 1fr;align-items:center;gap:8px;padding:6px;border:1px dashed #94c7ef;border-radius:4px;color:#20547e;background:#f4faff;text-align:left}.ast-property-upload i{width:30px;height:30px;display:grid;place-items:center;color:var(--ast-blue);background:#e4f2ff;font-style:normal}.ast-property-upload span{display:grid}.ast-property-upload strong{font-size:8px}.ast-property-upload small{color:#69839a;font-size:6px}.ast-property-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.ast-property-grid label{position:relative;display:grid;gap:4px;color:#63798e;font-size:7px}.ast-property-grid input{width:100%;height:34px;padding:0 26px 0 8px;border:1px solid #d0dee9;border-radius:4px;color:#24435f}.ast-property-grid em{position:absolute;right:8px;bottom:9px;color:#7b8fa2;font-size:6px;font-style:normal}.ast-color-row{display:grid;grid-template-columns:38px 1fr;gap:6px}.ast-color-row input[type=color]{width:38px;height:34px;padding:2px;border:1px solid #cedde9;border-radius:4px;background:#fff}.ast-check-label{display:flex!important;grid-template-columns:none!important;align-items:center;gap:7px!important}.ast-check-label input{accent-color:var(--ast-blue)}.ast-preflight{display:grid;grid-template-columns:30px 1fr;align-items:center;gap:8px;margin:14px;padding:10px;border:1px solid #c8eadf;border-radius:5px;background:#f2fbf7}.ast-preflight>i{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--ast-green);font-style:normal}.ast-preflight span{display:grid}.ast-preflight strong{color:#087657;font-size:8px}.ast-preflight small{color:#66877a;font-size:6px}
    .ast-toast{position:fixed;z-index:2147483600;right:22px;bottom:22px;max-width:360px;padding:12px 16px;border-radius:5px;color:#fff;background:#0d2f50;box-shadow:0 12px 30px rgba(0,0,0,.2);font-size:8px;font-weight:800;opacity:0;transform:translateY(12px);pointer-events:none;transition:.25s}.ast-toast.is-show{opacity:1;transform:none}
    /* V1.0.2 — isolamento dal tema, contrasto e leggibilità reali. */
    #astApp{font-size:14px!important;line-height:1.45!important;font-weight:400!important}
    #astApp [hidden]{display:none!important}
    #astApp button{font-size:12px!important;line-height:1.2}
    #astApp input,#astApp select{font-size:13px!important}
    #astApp small{font-size:10px!important;line-height:1.3!important}
    #astApp .ast-title h1{font-size:25px!important}
    #astApp .ast-title p,
    #astApp .ast-section-title p,
    #astApp .ast-quote-head p,
    #astApp .ast-process-intro p,
    #astApp .ast-process article p{font-size:11px!important;line-height:1.4!important}
    #astApp .ast-section-title h2,
    #astApp .ast-quote h2{font-size:18px!important}
    #astApp .ast-preset-head,
    #astApp .ast-customize-head,
    #astApp .ast-fields>label,
    #astApp .ast-details summary,
    #astApp .ast-detail-body label,
    #astApp .ast-property-section>label,
    #astApp .ast-qty-row>span,
    #astApp .ast-progress-title,
    #astApp .ast-checks li{font-size:11px!important}
    #astApp .ast-presets strong,
    #astApp .ast-validation strong,
    #astApp .ast-option strong,
    #astApp .ast-choice-title strong,
    #astApp .ast-summary strong,
    #astApp .ast-process article strong{font-size:11px!important}
    #astApp .ast-action strong{font-size:12px!important}
    #astApp .ast-input input{font-size:16px!important}
    #astApp .ast-rotation label,
    #astApp .ast-rotation output{font-size:10px!important}
    #astApp .ast-price-card p{font-size:9px!important;line-height:1.35!important}
    #astApp .ast-quote footer,
    #astApp .ast-save-row button{font-size:9px!important}
    #astApp .ast-workspace{min-height:720px}
    #astApp .ast-three-wrap{min-height:520px}
    #astApp .ast-head,
    #astApp .ast-workspace,
    #astApp .ast-process{isolation:isolate}
    @media(max-width:1260px){#astApp{width:calc(100vw - 20px)}.ast-head{grid-template-columns:340px 1fr}.ast-workspace{grid-template-columns:310px minmax(480px,1fr) 330px}.ast-viewbar{grid-template-columns:1fr .7fr 110px}.ast-export{display:none}.ast-editor>header{grid-template-columns:270px 1fr 200px}}
    @media(max-width:1050px){.ast-head{grid-template-columns:1fr}.ast-steps{display:none}.ast-workspace{grid-template-columns:330px minmax(0,1fr)}.ast-quote{grid-column:1/-1;border-top:1px solid var(--ast-line)}.ast-process{grid-template-columns:1fr 1fr}.ast-editor-body{grid-template-columns:76px minmax(0,1fr) 270px}.ast-editor>header nav{display:none}}
    @media(max-width:760px){#astApp{width:100%;margin:0}.ast-head{border-radius:0}.ast-workspace{grid-template-columns:1fr}.ast-measures{border-right:0;border-bottom:1px solid var(--ast-line)}.ast-stage{min-height:620px}.ast-three-wrap{min-height:460px}.ast-viewbar{grid-template-columns:1fr}.ast-view-group,.ast-switch{border-top:1px solid var(--ast-line)}.ast-process{grid-template-columns:1fr;margin:10px}.ast-editor{grid-template-rows:62px 1fr}.ast-editor>header{grid-template-columns:1fr auto;padding:0 10px}.ast-editor-actions button:first-child{display:none}.ast-editor-body{grid-template-columns:62px 1fr}.ast-editor-properties{position:fixed;z-index:4;top:62px;right:0;bottom:0;width:min(310px,88vw);transform:translateX(100%);transition:.2s}.ast-editor.is-properties-open .ast-editor-properties{transform:none}.ast-editor-tools{padding:6px 4px}.ast-editor-tools button{min-height:48px}.ast-editor-stage{padding:7px}.ast-editor-topbar{overflow:auto}.ast-editor-topbar>div:first-child{min-width:510px}.ast-dimension{display:none}}

    /*
     * V2.6.0 — struttura autonoma coordinata con /lab-fondo-coperchio/.
     * Un solo configuratore, a tutta larghezza, con pannello misure,
     * area tecnica centrale e preventivo laterale.
     */
    html body.sagomato-lab-astucci-page{margin:0!important;overflow-x:hidden!important;background:#fff!important}
    html body.sagomato-lab-astucci-page .ast-header-fallback{
      height:82px;
      display:grid;
      place-items:center;
      border-bottom:1px solid #e5edf4;
      background:#fff;
    }
    html body.sagomato-lab-astucci-page .ast-header-fallback a{
      color:#0a477f;
      font:900 18px/1 Inter,"Segoe UI",Arial,sans-serif;
      letter-spacing:.08em;
      text-decoration:none;
    }
    html body.sagomato-lab-astucci-page main#main,
    html body.sagomato-lab-astucci-page .site-main,
    html body.sagomato-lab-astucci-page .content-area{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
    #astApp{
      width:calc(100vw - 16px)!important;
      max-width:none!important;
      margin:14px 8px 2px!important;
      color:#24415e!important;
      background:#fff;
    }
    #astApp .ast-head{
      min-height:122px!important;
      grid-template-columns:minmax(410px,40%) minmax(660px,60%)!important;
      gap:34px!important;
      padding:18px 24px!important;
      border-color:#cbddea!important;
      border-radius:7px 7px 0 0!important;
      box-shadow:0 4px 18px rgba(20,57,89,.025);
    }
    #astApp .ast-title{position:relative;align-self:center}
    #astApp .ast-title small{font-size:10px!important}
    #astApp .ast-title h1{margin:5px 0 2px!important;font-size:27px!important;line-height:1.03!important}
    #astApp .ast-title p{max-width:570px;margin:0!important;font-size:11px!important}
    #astApp .ast-save-status{
      display:flex;
      align-items:center;
      gap:6px;
      margin-top:6px;
      color:#5f7b70;
      font-size:10px;
      font-weight:750;
    }
    #astApp .ast-save-status i{
      width:7px;
      height:7px;
      border-radius:50%;
      background:var(--ast-green);
      box-shadow:0 0 0 3px #ddf7ed;
    }
    #astApp .ast-steps:before,#astApp .ast-steps:after{top:29px!important}
    #astApp .ast-steps button{
      min-height:62px;
      grid-template-columns:34px 1fr!important;
      gap:10px!important;
      padding:10px 14px!important;
    }
    #astApp .ast-steps button b{width:34px!important;height:34px!important;font-size:11px!important}
    #astApp .ast-steps strong{font-size:11px!important}
    #astApp .ast-steps small{font-size:9px!important}

    #astApp .ast-workspace{
      grid-template-columns:minmax(320px,22%) minmax(0,1fr) minmax(350px,24%)!important;
      min-height:max(760px,calc(100vh - 220px))!important;
      border-color:#cbddea!important;
    }
    #astApp .ast-measures{
      padding:17px 14px!important;
      border-color:#cbddea!important;
    }
    #astApp .ast-section-title{align-items:flex-start}
    #astApp .ast-section-title h2,#astApp .ast-quote h2{font-size:18px!important}
    #astApp .ast-section-title p{max-width:210px}
    #astApp .ast-live{height:28px;padding:0 9px;font-size:9px!important}
    #astApp .ast-presets button{min-height:58px;padding:9px}
    #astApp .ast-presets strong{font-size:10px!important}
    #astApp .ast-presets small{font-size:9px!important}
    #astApp .ast-fields{gap:9px;margin-top:20px}
    #astApp .ast-fields>label{grid-template-columns:minmax(120px,1fr) minmax(155px,52%);font-size:11px!important}
    #astApp .ast-input{height:44px;grid-template-columns:34px 1fr 30px}
    #astApp .ast-validation,#astApp .ast-option{min-height:48px}
    #astApp .ast-details summary{height:40px}
    #astApp .ast-action{min-height:53px}

    #astApp .ast-stage{
      min-height:max(760px,calc(100vh - 220px))!important;
      grid-template-rows:minmax(590px,1fr) 35px 78px!important;
      border-color:#cbddea!important;
      background:#fff!important;
    }
    #astApp .ast-three-wrap{
      min-height:590px!important;
      background:radial-gradient(circle at 52% 47%,#fff 0,#fff 47%,#f8fbfe 100%)!important;
    }
    #astApp .ast-model-tabs{
      top:12px!important;
      right:12px!important;
      min-height:45px;
      border-color:#07365e!important;
      border-radius:4px!important;
    }
    #astApp .ast-model-tabs button{
      min-width:145px;
      min-height:43px!important;
      padding:0 16px!important;
      font-size:10px!important;
      letter-spacing:.01em;
    }
    #astApp .ast-model-tabs button:not(.is-active){background:#0b3155!important}
    #astApp .ast-model-tabs button span{margin-right:5px}
    #astApp .ast-stage-status{
      position:absolute;
      z-index:5;
      top:14px;
      left:76px;
      display:flex;
      align-items:center;
      gap:6px;
      min-height:29px;
      padding:0 10px;
      border:1px solid #cce9de;
      border-radius:4px;
      color:#28715e;
      background:rgba(248,255,252,.94);
      box-shadow:0 2px 8px rgba(21,72,52,.035);
      font-size:9px;
      font-weight:800;
    }
    #astApp .ast-stage-status i{width:7px;height:7px;border-radius:50%;background:var(--ast-green)}
    #astApp .ast-stage-status.is-error{border-color:#efc9ce;color:#a73540;background:#fff7f8}
    #astApp .ast-stage-status.is-error i{background:#c6424f}
    #astApp .ast-stage-tools{
      position:absolute;
      z-index:6;
      top:12px;
      left:10px;
      width:54px;
      display:grid;
      overflow:hidden;
      border:1px solid #cddde9;
      border-radius:4px;
      background:#fff;
      box-shadow:0 5px 14px rgba(20,54,86,.06);
    }
    #astApp .ast-stage-tools button{
      min-height:57px;
      display:grid;
      place-items:center;
      align-content:center;
      gap:2px;
      padding:5px 2px;
      border:0;
      border-bottom:1px solid #dbe5ed;
      color:#31516e;
      background:#fff;
      font-size:8px!important;
      font-weight:850;
      line-height:1.1;
      text-transform:uppercase;
    }
    #astApp .ast-stage-tools button:last-child{border-bottom:0}
    #astApp .ast-stage-tools button:hover{color:var(--ast-blue);background:#f2f8fe}
    #astApp .ast-stage-tools i{color:#0876df;font-size:17px;font-style:normal;line-height:1}
    #astApp .ast-dimension{padding:6px 9px;font-size:9px!important}
    #astApp .ast-scene-hint{font-size:9px!important}
    #astApp .ast-rotation{height:35px!important;grid-template-columns:75px 1fr 42px;padding:0 14px}
    #astApp .ast-viewbar{
      grid-template-columns:minmax(310px,1fr) minmax(150px,190px) minmax(190px,245px)!important;
      min-height:78px;
      border-color:#cbddea;
    }
    #astApp .ast-view-group,#astApp .ast-switch,#astApp .ast-export{padding:9px 12px}
    #astApp .ast-view-group>small,#astApp .ast-switch small{font-size:9px!important}
    #astApp .ast-view-group button{height:36px;font-size:10px!important}
    #astApp .ast-switch strong,#astApp .ast-export b{font-size:10px!important}
    #astApp .ast-export small{font-size:8px!important}

    #astApp .ast-quote{
      padding:17px 15px!important;
      border-left:1px solid #cbddea;
    }
    #astApp .ast-quote-head{grid-template-columns:48px 1fr;padding-bottom:15px}
    #astApp .ast-quote-head>span{width:44px;height:44px}
    #astApp .ast-quote-tabs{margin-top:11px}
    #astApp .ast-quote-tabs button{height:36px;font-size:10px!important}
    #astApp .ast-choice-title{min-height:54px;padding:9px}
    #astApp .ast-qty-presets button{min-height:58px;font-size:12px!important}
    #astApp .ast-qty-presets button:nth-child(5){min-height:38px}
    #astApp .ast-qty-row>div{height:46px}
    #astApp .ast-price-card{min-height:87px;padding:13px}
    #astApp .ast-summary div{min-height:52px}
    #astApp .ast-checks li{padding:8px 4px}
    #astApp .ast-continue{height:45px;font-size:11px!important}
    #astApp .ast-quote footer{padding:11px 2px}

    /*
     * Studio grafico nelle proporzioni del modulo Fondo e Coperchio:
     * testata di processo, rail strumenti, area tecnica dominante
     * e pannello proprietà sempre leggibile.
     */
    html body .ast-editor{
      width:100vw!important;
      height:100dvh!important;
      max-width:none!important;
      max-height:none!important;
      overflow:hidden!important;
      grid-template-rows:clamp(76px,3.15vw,118px) minmax(0,1fr)!important;
      color:#263f59!important;
      background:#f5f8fc!important;
      font-family:Inter,"Segoe UI",Arial,sans-serif!important;
    }
    html body .ast-editor>header{
      min-height:clamp(76px,3.15vw,118px)!important;
      height:clamp(76px,3.15vw,118px)!important;
      grid-template-columns:
        clamp(220px,13vw,390px)
        minmax(clamp(500px,36vw,900px),1.45fr)
        minmax(clamp(250px,20vw,620px),1fr)!important;
      gap:clamp(14px,1vw,30px)!important;
      padding:0 clamp(20px,1.15vw,40px)!important;
      border-bottom:1px solid #d8e3ed!important;
      box-shadow:0 4px 16px rgba(16,36,63,.035)!important;
    }
    html body .ast-editor-brand{gap:clamp(11px,.65vw,20px)!important}
    html body .ast-editor-brand>b{
      width:clamp(40px,1.8vw,62px)!important;
      height:clamp(40px,1.8vw,62px)!important;
      min-width:clamp(40px,1.8vw,62px)!important;
      border-radius:clamp(7px,.4vw,11px)!important;
      font-size:clamp(18px,.9vw,28px)!important;
      box-shadow:0 7px 16px rgba(8,119,230,.19);
    }
    html body .ast-editor-brand strong{font-size:clamp(14px,.62vw,21px)!important}
    html body .ast-editor-brand small{font-size:clamp(8px,.38vw,12px)!important}
    html body .ast-editor>header nav{
      width:100%;
      max-width:900px!important;
      height:clamp(54px,2.55vw,88px);
    }
    html body .ast-editor>header nav>span{
      position:relative;
      grid-template-columns:clamp(28px,1.35vw,44px) minmax(0,1fr)!important;
      gap:clamp(8px,.42vw,14px)!important;
      padding:0 clamp(12px,.72vw,24px);
    }
    html body .ast-editor>header nav>span:not(:last-child):after{
      content:"";
      position:absolute;
      top:50%;
      right:-6px;
      width:12px;
      height:1px;
      background:#d8e3ed;
    }
    html body .ast-editor>header nav i{
      width:clamp(26px,1.25vw,42px)!important;
      height:clamp(26px,1.25vw,42px)!important;
      font-size:clamp(9px,.45vw,15px)!important;
    }
    html body .ast-editor>header nav b{font-size:clamp(10px,.48vw,16px)!important}
    html body .ast-editor>header nav small{font-size:clamp(8px,.36vw,12px)!important}
    html body .ast-editor>header nav .is-active{
      background:#edf6ff;
      box-shadow:inset 0 -2px var(--ast-blue);
    }
    html body .ast-editor-actions{gap:clamp(6px,.35vw,11px)!important}
    html body .ast-editor-actions button{
      min-width:clamp(68px,5vw,150px)!important;
      height:clamp(40px,1.9vw,62px)!important;
      min-height:clamp(40px,1.9vw,62px)!important;
      padding:0 clamp(10px,.65vw,22px)!important;
      border-radius:clamp(6px,.34vw,10px)!important;
      font-size:clamp(10px,.44vw,14px)!important;
    }
    html body .ast-editor-body{
      width:100%!important;
      height:100%!important;
      min-width:0!important;
      min-height:0!important;
      grid-template-columns:
        clamp(154px,7.4vw,270px)
        minmax(0,1fr)
        clamp(370px,17.5vw,690px)!important;
      overflow:hidden!important;
      background:#f5f8fc!important;
    }
    html body .ast-editor-tools{
      gap:clamp(6px,.32vw,11px)!important;
      padding:clamp(14px,.72vw,25px) clamp(10px,.55vw,18px)!important;
      overflow-y:auto!important;
      scrollbar-width:none;
    }
    html body .ast-editor-tools::-webkit-scrollbar{display:none}
    html body .ast-editor-tools button{
      width:100%!important;
      min-height:clamp(46px,2.15vw,72px)!important;
      display:flex!important;
      flex-direction:row!important;
      justify-content:flex-start!important;
      gap:clamp(9px,.5vw,16px)!important;
      padding:clamp(6px,.32vw,11px) clamp(11px,.58vw,19px)!important;
      border-radius:clamp(7px,.36vw,12px)!important;
      font-size:clamp(10px,.47vw,16px)!important;
      font-weight:850;
    }
    html body .ast-editor-tools button i{
      width:clamp(24px,1.15vw,38px);
      min-width:clamp(24px,1.15vw,38px);
      font-size:clamp(18px,.9vw,29px)!important;
      text-align:center;
    }
    html body .ast-editor-stage{
      grid-template-rows:clamp(62px,3vw,92px) minmax(0,1fr) clamp(40px,2vw,66px)!important;
      padding:clamp(12px,.7vw,22px) clamp(14px,.8vw,26px)!important;
      overflow:hidden;
      background:#f5f8fc;
    }
    html body .ast-editor-topbar{
      min-width:0;
      padding:clamp(7px,.4vw,13px)!important;
      overflow-x:auto;
      border-color:#d8e3ed!important;
    }
    html body .ast-editor-topbar>div:first-child{min-width:max-content}
    html body .ast-editor-topbar button{
      height:clamp(32px,1.6vw,52px)!important;
      padding:0 clamp(9px,.5vw,17px)!important;
      border-radius:clamp(4px,.25vw,8px)!important;
      font-size:clamp(9px,.42vw,14px)!important;
    }
    html body .ast-editor-topbar output{font-size:clamp(9px,.42vw,14px)!important}
    html body .ast-editor-canvas{
      overflow:hidden!important;
      background-size:clamp(22px,1.15vw,38px) clamp(22px,1.15vw,38px);
    }
    html body .ast-editor-canvas>svg{
      width:94%!important;
      height:94%!important;
      max-width:94%!important;
      max-height:94%!important;
    }
    #astApp .ast-canvas-status{
      top:clamp(12px,.65vw,22px);
      left:clamp(12px,.65vw,22px);
      padding:clamp(6px,.33vw,11px) clamp(9px,.48vw,16px);
      font-size:clamp(9px,.4vw,14px)!important;
    }
    html body .ast-editor-legend{
      right:clamp(12px,.65vw,22px);
      bottom:clamp(12px,.65vw,22px);
      padding:clamp(6px,.33vw,11px) clamp(9px,.48vw,16px);
      font-size:clamp(8px,.36vw,12px)!important;
    }
    html body .ast-editor-stage>footer{
      gap:16px;
      padding:0 clamp(10px,.55vw,18px)!important;
      font-size:clamp(8px,.36vw,12px)!important;
    }
    html body .ast-editor-properties{
      padding:clamp(18px,.9vw,31px) clamp(17px,.85vw,29px) clamp(24px,1.2vw,41px)!important;
      border-left:1px solid #d8e3ed!important;
    }
    html body .ast-editor-properties>header{
      height:auto!important;
      min-height:clamp(62px,3vw,100px);
      margin:calc(-1 * clamp(18px,.9vw,31px)) calc(-1 * clamp(17px,.85vw,29px)) 0;
      padding:0 clamp(17px,.85vw,29px)!important;
    }
    html body .ast-editor-properties>header small{font-size:clamp(9px,.4vw,14px)!important}
    html body .ast-editor-properties>header strong{font-size:clamp(20px,.82vw,30px)!important}
    #astApp .ast-property-section{
      gap:clamp(9px,.45vw,15px);
      padding:clamp(14px,.72vw,24px) 0!important;
    }
    #astApp .ast-property-section>small,
    #astApp .ast-property-section>label,
    #astApp .ast-property-grid label,
    #astApp .ast-check-label{font-size:clamp(10px,.44vw,15px)!important}
    #astApp .ast-property-upload{
      height:clamp(48px,2.4vw,80px)!important;
      grid-template-columns:clamp(32px,1.6vw,52px) 1fr!important;
      gap:clamp(8px,.42vw,14px);
    }
    #astApp .ast-property-upload i{
      width:clamp(30px,1.5vw,50px);
      height:clamp(30px,1.5vw,50px);
    }
    #astApp .ast-property-upload strong{font-size:clamp(10px,.45vw,15px)!important}
    #astApp .ast-property-upload small{font-size:clamp(8px,.38vw,13px)!important}
    #astApp .ast-property-grid{gap:clamp(7px,.38vw,13px)!important}
    #astApp .ast-property-grid input,
    #astApp .ast-detail-body select,
    #astApp .ast-property-section select,
    #astApp .ast-property-section input[type=text]{
      height:clamp(36px,1.8vw,60px)!important;
      font-size:clamp(11px,.48vw,16px)!important;
    }
    #astApp .ast-preflight{
      min-height:clamp(56px,2.7vw,90px);
      margin:clamp(14px,.72vw,24px) 0!important;
      padding:clamp(10px,.52vw,18px)!important;
    }
    #astApp .ast-preflight strong{font-size:clamp(10px,.45vw,15px)!important}
    #astApp .ast-preflight small{font-size:clamp(8px,.38vw,13px)!important}

    #astApp.ast-is-fullscreen{
      position:fixed!important;
      z-index:2147482500!important;
      inset:0!important;
      width:100vw!important;
      height:100vh!important;
      margin:0!important;
      overflow:auto!important;
      background:#fff!important;
    }
    #astApp.ast-is-fullscreen .ast-head,
    #astApp.ast-is-fullscreen .ast-measures,
    #astApp.ast-is-fullscreen .ast-quote,
    #astApp.ast-is-fullscreen .ast-process{display:none!important}
    #astApp.ast-is-fullscreen .ast-workspace{display:block!important;height:100vh!important;border:0!important}
    #astApp.ast-is-fullscreen .ast-stage{height:100vh!important;grid-template-rows:1fr 35px 78px!important}

    @media(max-width:1320px){
      #astApp{width:calc(100vw - 10px)!important;margin:10px 5px 40px!important}
      #astApp .ast-head{grid-template-columns:360px 1fr!important}
      #astApp .ast-workspace{grid-template-columns:minmax(300px,22%) minmax(500px,1fr) minmax(330px,24%)!important}
      #astApp .ast-model-tabs button{min-width:125px;padding:0 10px!important}
      #astApp .ast-stage-status{display:none}
    }
    @media(max-width:1120px){
      #astApp .ast-head{grid-template-columns:1fr!important}
      #astApp .ast-steps{display:none!important}
      #astApp .ast-workspace{grid-template-columns:320px minmax(0,1fr)!important}
      #astApp .ast-quote{grid-column:1/-1;border-top:1px solid #cbddea}
      #astApp .ast-stage{min-width:0}
    }
    @media(max-width:760px){
      #astApp{width:100%!important;margin:0!important}
      #astApp .ast-head{min-height:auto!important;padding:17px 15px!important;border-radius:0!important}
      #astApp .ast-title h1{font-size:23px!important}
      #astApp .ast-workspace{grid-template-columns:1fr!important}
      #astApp .ast-stage{min-height:650px!important;grid-template-rows:minmax(480px,1fr) 35px auto!important}
      #astApp .ast-three-wrap{min-height:480px!important}
      #astApp .ast-stage-tools{top:66px}
      #astApp .ast-model-tabs{left:10px;right:10px}
      #astApp .ast-model-tabs button{min-width:0;flex:1}
      #astApp .ast-viewbar{grid-template-columns:1fr!important}
      #astApp .ast-switch,#astApp .ast-export{min-height:64px;border-top:1px solid var(--ast-line)}
      #astApp .ast-process{grid-template-columns:1fr!important;margin:10px!important}
      html body .ast-editor{grid-template-rows:64px minmax(0,1fr)!important}
      html body .ast-editor>header{
        min-height:64px!important;
        height:64px!important;
        grid-template-columns:minmax(0,1fr) auto!important;
        gap:8px!important;
        padding:0 10px!important;
      }
      html body .ast-editor-brand>b{width:38px!important;height:38px!important;min-width:38px!important}
      html body .ast-editor-brand strong{font-size:12px!important}
      html body .ast-editor-brand small{font-size:7px!important}
      html body .ast-editor>header nav,
      html body .ast-editor-actions button:first-child{display:none!important}
      html body .ast-editor-actions button{min-width:66px!important;height:38px!important;font-size:9px!important}
      html body .ast-editor-body{grid-template-columns:64px minmax(0,1fr)!important}
      html body .ast-editor-tools{padding:6px 4px!important}
      html body .ast-editor-tools button{
        min-height:49px!important;
        display:grid!important;
        place-items:center!important;
        gap:1px!important;
        padding:4px 2px!important;
        font-size:7px!important;
      }
      html body .ast-editor-tools button i{width:auto;min-width:0;font-size:17px!important}
      html body .ast-editor-stage{
        grid-template-rows:54px minmax(0,1fr) 36px!important;
        padding:7px!important;
      }
      html body .ast-editor-topbar>div:first-child{min-width:510px}
      html body .ast-editor-properties{
        position:fixed;
        z-index:4;
        top:64px;
        right:0;
        bottom:0;
        width:min(340px,88vw);
        padding:18px!important;
        transform:translateX(100%);
        transition:transform .2s;
      }
      html body .ast-editor.is-properties-open .ast-editor-properties{transform:none}
    }

    /*
     * V2.6.0 — proporzioni misurate sul LAB Fondo e Coperchio.
     * Stessa gerarchia, scala, ritmo verticale e proporzioni dei tre pannelli.
     */
    #astApp{
      --ast-navy:#092a4b;
      --ast-text:#294761;
      --ast-copy:#667f96;
      --ast-line:#cdddea;
      --ast-soft:#f5f9fd;
      width:calc(100vw - 36px)!important;
      margin:18px 12px 3px!important;
      border-radius:7px 7px 0 0;
      box-shadow:0 10px 34px rgba(18,53,84,.035);
    }
    #astApp .ast-product-icon svg,
    #astApp .ast-input i svg,
    #astApp .ast-option-icon svg,
    #astApp .ast-details summary svg,
    #astApp .ast-external-card svg,
    #astApp .ast-action svg,
    #astApp .ast-model-tabs svg,
    #astApp .ast-stage-tools svg,
    #astApp .ast-export svg,
    #astApp .ast-choice-title svg,
    #astApp .ast-qty-row svg{
      display:block;
      fill:none;
      stroke:currentColor;
      stroke-width:1.8;
      stroke-linecap:round;
      stroke-linejoin:round;
    }
    #astApp .ast-head{
      min-height:120px!important;
      grid-template-columns:minmax(430px,38.5%) minmax(660px,61.5%)!important;
      gap:32px!important;
      padding:15px 28px!important;
      border-color:var(--ast-line)!important;
      box-shadow:0 5px 20px rgba(18,53,84,.03)!important;
    }
    #astApp button,
    #astApp .ast-input,
    #astApp .ast-action,
    #astApp .ast-price-card{transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}
    #astApp button:focus-visible,
    #astApp input:focus-visible,
    #astApp select:focus-visible{
      outline:3px solid rgba(8,120,232,.2);
      outline-offset:2px;
    }
    #astApp .ast-title{
      display:grid!important;
      grid-template-columns:38px minmax(0,1fr);
      align-items:center!important;
      gap:13px!important;
    }
    #astApp .ast-product-icon{
      width:36px;
      height:36px;
      display:grid;
      place-items:center;
      align-self:center;
      color:#0878e8;
    }
    #astApp .ast-product-icon svg{width:31px;height:31px;stroke-width:1.7}
    #astApp .ast-title-copy{min-width:0}
    #astApp .ast-title small{gap:8px!important;font-size:10px!important;letter-spacing:.12em!important}
    #astApp .ast-title small span{width:20px}
    #astApp .ast-title h1{
      margin:5px 0 2px!important;
      font-size:37px!important;
      line-height:1!important;
      letter-spacing:-.04em!important;
    }
    #astApp .ast-title p{max-width:610px!important;font-size:12px!important}
    #astApp .ast-save-status{margin-top:6px!important;font-size:9px!important}
    #astApp .ast-steps:before,#astApp .ast-steps:after{top:31px!important}
    #astApp .ast-steps button{
      min-height:66px!important;
      grid-template-columns:36px minmax(0,1fr)!important;
      gap:11px!important;
      padding:9px 16px!important;
    }
    #astApp .ast-steps button b{width:36px!important;height:36px!important;font-size:12px!important}
    #astApp .ast-steps strong{font-size:12px!important}
    #astApp .ast-steps small{font-size:9px!important}

    #astApp .ast-workspace{
      grid-template-columns:clamp(360px,27.5vw,548px) minmax(520px,1fr) clamp(390px,30vw,595px)!important;
      min-height:max(790px,calc(100vh - 190px))!important;
      border-color:var(--ast-line)!important;
    }
    #astApp .ast-measures{
      padding:17px 15px 22px!important;
      border-color:var(--ast-line)!important;
    }
    #astApp .ast-section-title h2,#astApp .ast-quote h2{
      font-size:20px!important;
      line-height:1.08!important;
    }
    #astApp .ast-section-title p{max-width:250px!important;margin-top:5px!important;font-size:10px!important;line-height:1.35}
    #astApp .ast-live{
      height:30px!important;
      padding:0 10px!important;
      border-radius:4px!important;
      font-size:9px!important;
    }
    #astApp .ast-preset-head{
      margin:32px 0 8px!important;
      font-size:10px!important;
    }
    #astApp .ast-customize-head{
      margin:14px 0 8px!important;
      font-size:10px!important;
    }
    #astApp .ast-preset-head small,#astApp .ast-customize-head small{font-size:9px!important}
    #astApp .ast-presets{gap:8px!important}
    #astApp .ast-presets button{
      min-height:61px!important;
      padding:10px!important;
      border-radius:4px!important;
    }
    #astApp .ast-presets strong{font-size:10px!important;letter-spacing:.02em}
    #astApp .ast-presets small{margin-top:5px!important;font-size:8.5px!important}
    #astApp .ast-fields{gap:10px!important;margin-top:13px!important}
    #astApp .ast-fields>label{
      grid-template-columns:minmax(128px,1fr) minmax(168px,54%)!important;
      gap:11px!important;
      font-size:12px!important;
    }
    #astApp .ast-input{
      height:56px!important;
      grid-template-columns:44px minmax(0,1fr) 42px!important;
      border-color:#bcd2e5!important;
      border-radius:5px!important;
      box-shadow:inset 0 1px 2px rgba(14,51,83,.025);
    }
    #astApp .ast-input i{color:#0878e8!important;background:#eff7ff!important}
    #astApp .ast-input i.ast-input-depth{color:#6958d9!important;background:#f1efff!important}
    #astApp .ast-input i.ast-input-height{color:#079b78!important;background:#ecfaf6!important}
    #astApp .ast-input i.ast-input-board{color:#7357d8!important;background:#f2efff!important}
    #astApp .ast-input i svg{width:21px;height:21px;margin:auto}
    #astApp .ast-input input,
    #astApp .ast-input select{
      width:100%;
      height:100%;
      padding:0 12px!important;
      border:0;
      outline:0;
      color:#0b2a49;
      background:transparent;
      font-size:17px!important;
      font-weight:850;
    }
    #astApp .ast-input select{appearance:none;cursor:pointer}
    #astApp .ast-input em{font-size:9px!important;font-weight:750}
    #astApp .ast-input:hover{border-color:#8abbe3!important}
    #astApp .ast-validation{
      min-height:35px!important;
      margin-top:14px!important;
      padding:6px 9px!important;
      border-color:#d6e4ef!important;
      background:#f8fbfe!important;
    }
    #astApp .ast-validation>i{
      width:19px!important;
      height:19px!important;
      color:#52738f!important;
      background:#edf4fa!important;
      font-size:10px!important;
      font-weight:900;
    }
    #astApp .ast-validation strong{color:#34516a!important;font-size:9px!important}
    #astApp .ast-validation small{color:#6f8598!important;font-size:7.5px!important}
    #astApp .ast-validation.is-error{
      border-color:#f0c6ca!important;
      background:#fff5f6!important;
    }
    #astApp .ast-validation.is-error>i{color:#fff!important;background:#c6424f!important}
    #astApp .ast-validation.is-error strong{color:#a92d38!important}
    #astApp .ast-option{
      position:relative;
      min-height:56px!important;
      grid-template-columns:36px minmax(0,1fr) auto!important;
      gap:10px!important;
      margin-top:12px!important;
      padding:9px 10px!important;
      border-color:#d7e4ee!important;
      background:#f7fafc!important;
      cursor:pointer;
    }
    #astApp .ast-option-icon{
      width:32px!important;
      height:32px!important;
      color:#0878e8!important;
      background:#edf6ff!important;
    }
    #astApp .ast-option-icon svg{width:19px;height:19px;margin:auto}
    #astApp .ast-option strong{color:#294761!important;font-size:10px!important}
    #astApp .ast-option small{color:#71869a!important;font-size:8px!important}
    #astApp .ast-proportion>input{position:absolute;opacity:0;pointer-events:none}
    #astApp .ast-toggle{
      width:37px;
      height:22px;
      position:relative;
      display:block;
      border:1px solid #c6d5e1;
      border-radius:22px;
      background:#dce6ee;
      transition:background-color .18s ease,border-color .18s ease;
    }
    #astApp .ast-toggle:after{
      content:"";
      position:absolute;
      top:2px;
      left:2px;
      width:16px;
      height:16px;
      border-radius:50%;
      background:#fff;
      box-shadow:0 1px 4px rgba(14,44,70,.18);
      transition:transform .18s ease;
    }
    #astApp .ast-proportion>input:checked+.ast-toggle{
      border-color:#0878e8;
      background:#0878e8;
    }
    #astApp .ast-proportion>input:focus-visible+.ast-toggle{outline:3px solid rgba(8,120,232,.2);outline-offset:2px}
    #astApp .ast-proportion>input:checked+.ast-toggle:after{transform:translateX(15px)}
    #astApp .ast-external-card{
      min-height:66px;
      display:block;
      margin-top:8px;
      padding:0;
      border:1px solid #a9dfce;
      border-radius:4px;
      color:#174c41;
      background:#f2fcf8;
    }
    #astApp .ast-external-card>summary{
      min-height:64px;
      display:grid;
      grid-template-columns:38px minmax(0,1fr) 18px;
      align-items:center;
      gap:10px;
      padding:9px 10px;
      list-style:none;
      cursor:pointer;
    }
    #astApp .ast-external-card>summary::-webkit-details-marker{display:none}
    #astApp .ast-external-card>summary>i{
      width:34px;
      height:34px;
      display:grid;
      place-items:center;
      border-radius:6px;
      color:#079a73;
      background:#ddf6ed;
    }
    #astApp .ast-external-card svg{width:20px;height:20px}
    #astApp .ast-external-card summary span{display:grid;gap:1px}
    #astApp .ast-external-card small{color:#4e796e;font-size:8px;font-weight:800}
    #astApp .ast-external-card strong{color:#123f38;font-size:12px}
    #astApp .ast-external-card em{color:#6d8a82;font-size:8px;font-style:normal}
    #astApp .ast-external-card summary>b{
      color:#5e8177;
      font-size:11px;
      font-weight:800;
      transition:transform .18s ease;
    }
    #astApp .ast-external-card[open] summary>b{transform:rotate(180deg)}
    #astApp .ast-external-settings{
      padding:9px 10px 10px;
      border-top:1px solid #cde9df;
      background:#f8fffc;
    }
    #astApp .ast-external-settings label{
      display:grid;
      grid-template-columns:1fr 116px;
      align-items:center;
      gap:10px;
      color:#4e796e;
      font-size:9px;
      font-weight:800;
    }
    #astApp .ast-external-settings select{
      height:34px;
      padding:0 8px;
      border:1px solid #b9dcd0;
      border-radius:4px;
      color:#174c41;
      background:#fff;
      font-size:10px!important;
    }
    #astApp .ast-action{
      min-height:60px!important;
      grid-template-columns:40px minmax(0,1fr) 34px!important;
      gap:10px!important;
      margin-top:8px!important;
      padding:8px 9px!important;
      border-radius:4px!important;
      box-shadow:0 4px 10px rgba(7,74,137,.08);
    }
    #astApp .ast-action>i{width:36px!important;height:36px!important}
    #astApp .ast-action>i svg{width:20px;height:20px;margin:auto}
    #astApp .ast-action strong{font-size:12px!important;text-transform:uppercase}
    #astApp .ast-action small{font-size:8px!important;text-transform:uppercase}
    #astApp .ast-action>b{
      width:28px;
      height:28px;
      display:grid;
      place-items:center;
      justify-self:end;
      border-radius:4px;
      color:currentColor;
      background:#fff;
      font-size:15px!important;
    }
    #astApp .ast-action-green>b{color:#079c73}
    #astApp .ast-action-blue>b{color:#0877e6}
    #astApp .ast-action:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(7,74,137,.14)}

    #astApp .ast-stage{
      min-height:max(790px,calc(100vh - 190px))!important;
      grid-template-rows:clamp(620px,58vh,720px) 41px 92px!important;
      align-content:start!important;
      border-color:var(--ast-line)!important;
      background:#fff!important;
    }
    #astApp .ast-three-wrap{
      min-height:clamp(620px,58vh,720px)!important;
      height:clamp(620px,58vh,720px)!important;
      background:radial-gradient(circle at 52% 47%,#fff 0,#fff 52%,#f8fbfe 100%)!important;
    }
    #astApp .ast-model-tabs{
      top:12px!important;
      right:12px!important;
      min-height:46px!important;
      border-radius:4px!important;
    }
    #astApp .ast-model-tabs button{
      min-width:148px!important;
      min-height:44px!important;
      display:flex;
      align-items:center;
      justify-content:center;
      gap:6px;
      padding:0 15px!important;
      font-size:10px!important;
    }
    #astApp .ast-model-tabs button span{width:15px;height:15px;display:grid;place-items:center;margin:0!important}
    #astApp .ast-model-tabs button svg{width:14px;height:14px}
    #astApp .ast-model-tabs button:hover{filter:brightness(1.045)}
    #astApp .ast-stage-status{min-height:31px!important;font-size:9px!important}
    #astApp .ast-stage-tools{width:56px!important}
    #astApp .ast-stage-tools button{min-height:60px!important;font-size:8px!important}
    #astApp .ast-stage-tools i{display:grid!important;place-items:center}
    #astApp .ast-stage-tools i svg{width:20px;height:20px}
    #astApp .ast-dimension{padding:7px 10px!important;font-size:9px!important;font-weight:900}
    #astApp .ast-scene-hint{bottom:12px!important;font-size:8px!important}
    #astApp .ast-rotation{
      height:41px!important;
      grid-template-columns:86px 1fr 46px!important;
      padding:0 15px!important;
    }
    #astApp .ast-rotation label,#astApp .ast-rotation output{font-size:9px!important;font-weight:800}
    #astApp .ast-viewbar{
      min-height:92px!important;
      grid-template-columns:minmax(330px,1fr) minmax(170px,210px) minmax(210px,260px)!important;
    }
    #astApp .ast-view-group,#astApp .ast-switch,#astApp .ast-export{padding:11px 13px!important}
    #astApp .ast-view-group>small,#astApp .ast-switch small{font-size:9px!important}
    #astApp .ast-view-group button{height:39px!important;font-size:10px!important}
    #astApp .ast-switch strong,#astApp .ast-export b{font-size:10px!important}
    #astApp .ast-export small{font-size:8px!important}
    #astApp .ast-export{
      grid-template-columns:32px minmax(0,1fr) 31px!important;
      gap:8px!important;
    }
    #astApp .ast-export>span{width:31px!important;height:31px!important}
    #astApp .ast-export>span svg{width:18px;height:18px;margin:auto}
    #astApp .ast-export>em{
      width:29px;
      height:29px;
      display:grid;
      place-items:center;
      justify-self:end;
      border:1px solid #c9dbe9;
      border-radius:4px;
      color:#0878e8;
      background:#fff;
      font-size:14px;
      font-style:normal;
    }

    #astApp .ast-quote{
      padding:32px 15px 22px!important;
      border-left:1px solid var(--ast-line)!important;
    }
    #astApp .ast-quote-head{
      min-height:58px;
      grid-template-columns:50px 1fr!important;
      gap:12px!important;
      padding-bottom:16px!important;
    }
    #astApp .ast-quote-head>span{width:46px!important;height:46px!important;font-size:10px!important}
    #astApp .ast-quote-head h2{font-size:20px!important}
    #astApp .ast-quote-head p{margin-top:4px!important;font-size:9px!important}
    #astApp .ast-quote-tabs{margin-top:12px!important}
    #astApp .ast-quote-tabs button{height:42px!important;font-size:10px!important}
    #astApp .ast-choice-title{
      min-height:44px!important;
      grid-template-columns:32px 1fr!important;
      gap:8px!important;
      margin-top:14px!important;
      padding:7px!important;
    }
    #astApp .ast-choice-title>i{width:28px!important;height:28px!important;display:grid;place-items:center}
    #astApp .ast-choice-title>i svg{width:17px;height:17px}
    #astApp .ast-choice-title strong{font-size:10px!important}
    #astApp .ast-choice-title small{margin-top:1px;font-size:8px!important}
    #astApp .ast-qty-presets{margin-top:14px!important}
    #astApp .ast-qty-presets button{min-height:61px!important;font-size:13px!important}
    #astApp .ast-qty-presets button:nth-child(5){min-height:43px!important}
    #astApp .ast-qty-presets small{font-size:8px!important}
    #astApp .ast-qty-presets button>b{font-size:6px!important}
    #astApp .ast-qty-presets button:nth-child(5) em{font-size:6px!important}
    #astApp .ast-qty-row{margin-top:16px!important}
    #astApp .ast-qty-row>span{font-size:9px!important}
    #astApp .ast-qty-row>small{font-size:8px!important}
    #astApp .ast-qty-row>div{
      height:51px!important;
      grid-template-columns:34px 34px 1fr 24px 34px!important;
      margin-top:6px!important;
    }
    #astApp .ast-qty-row i{display:grid;place-items:center}
    #astApp .ast-qty-row i svg{width:19px;height:19px}
    #astApp .ast-qty-row input{font-size:16px!important}
    #astApp .ast-qty-row em{font-size:8px!important}
    #astApp .ast-qty-note{
      min-height:21px;
      display:flex;
      align-items:center;
      justify-content:center;
      gap:6px;
      color:#5f7d71;
      font-size:7px;
      font-weight:750;
      text-align:center;
    }
    #astApp .ast-qty-note i{
      width:6px;
      height:6px;
      border-radius:50%;
      background:var(--ast-green);
      box-shadow:0 0 0 3px #def6ed;
    }
    #astApp .ast-price-card{
      position:relative;
      min-height:116px!important;
      margin-top:19px!important;
      padding:14px!important;
      border-color:#76baf1!important;
      border-left-width:4px!important;
      background:#f8fcff!important;
    }
    #astApp .ast-simulation{
      position:absolute;
      top:12px;
      right:12px;
      padding:3px 7px;
      border:1px solid #a4dfcc;
      border-radius:3px;
      color:#07865f;
      background:#eaf9f3;
      font-size:6px;
      font-weight:900;
      line-height:1;
    }
    #astApp .ast-price-card small{font-size:8px!important}
    #astApp .ast-price-card>div:first-child>strong{font-size:27px!important}
    #astApp .ast-price-card strong em{font-size:8px!important}
    #astApp .ast-price-card p{font-size:7px!important}
    #astApp .ast-price-card>div:last-child strong{font-size:12px!important}
    #astApp .ast-summary{display:none!important}
    #astApp .ast-summary div{min-height:58px!important;padding:10px 8px!important}
    #astApp .ast-summary small{font-size:7px!important}
    #astApp .ast-summary strong{font-size:9px!important}
    #astApp .ast-progress-title{margin-top:30px!important;padding-bottom:8px!important;font-size:9px!important}
    #astApp .ast-progress-title small{font-size:8px!important}
    #astApp .ast-checks li{padding:10px 5px!important;font-size:9px!important}
    #astApp .ast-continue{height:48px!important;margin-top:10px!important;font-size:11px!important}
    #astApp .ast-continue:hover{background:#066bcf!important;box-shadow:0 7px 17px rgba(8,101,199,.18)}
    #astApp .ast-quote footer{margin-top:10px!important;padding:12px 2px!important;font-size:7px!important}
    #astApp .ast-save-row{margin-top:10px!important}
    #astApp .ast-save-row button{font-size:8px!important}

    @media(max-width:1320px){
      #astApp .ast-head{grid-template-columns:400px 1fr!important;padding:14px 20px!important}
      #astApp .ast-title{grid-template-columns:32px 1fr!important;gap:10px!important}
      #astApp .ast-product-icon{width:31px;height:31px}
      #astApp .ast-title h1{font-size:29px!important}
      #astApp .ast-workspace{grid-template-columns:minmax(350px,28%) minmax(460px,1fr) minmax(380px,30%)!important}
      #astApp .ast-fields>label{grid-template-columns:minmax(112px,1fr) minmax(148px,52%)!important;font-size:10px!important}
      #astApp .ast-input{grid-template-columns:40px minmax(0,1fr) 40px!important}
      #astApp .ast-quote{padding-left:12px!important;padding-right:12px!important}
      #astApp .ast-model-tabs button{min-width:126px!important;padding:0 10px!important}
      #astApp .ast-stage{grid-template-rows:620px 41px 92px!important}
      #astApp .ast-three-wrap{height:620px!important;min-height:620px!important}
      #astApp .ast-viewbar{grid-template-columns:minmax(260px,1fr) 150px 195px!important}
    }
    @media(max-width:1120px){
      #astApp .ast-head{grid-template-columns:1fr!important}
      #astApp .ast-title{max-width:580px}
      #astApp .ast-workspace{grid-template-columns:330px minmax(0,1fr)!important}
      #astApp .ast-quote{grid-column:1/-1}
      #astApp .ast-stage{grid-template-rows:540px 41px 92px!important}
      #astApp .ast-three-wrap{height:540px!important;min-height:540px!important}
    }
    @media(max-width:760px){
      #astApp{width:100%!important;margin:0!important;border-radius:0!important}
      #astApp .ast-head{padding:16px!important}
      #astApp .ast-title{grid-template-columns:31px minmax(0,1fr)!important}
      #astApp .ast-title h1{font-size:23px!important}
      #astApp .ast-title p{font-size:10px!important}
      #astApp .ast-workspace{grid-template-columns:1fr!important}
      #astApp .ast-fields>label{grid-template-columns:minmax(125px,1fr) minmax(170px,54%)!important;font-size:11px!important}
      #astApp .ast-stage{min-height:650px!important;grid-template-rows:500px 41px auto!important}
      #astApp .ast-three-wrap{height:500px!important;min-height:500px!important}
      #astApp .ast-model-tabs{top:10px!important;left:10px!important;right:10px!important}
      #astApp .ast-model-tabs button{min-width:0!important}
      #astApp .ast-stage-tools{top:67px!important}
      #astApp .ast-viewbar{grid-template-columns:1fr!important}
    }

    /*
     * V2.7.1 — quote tecniche CAD proiettate dalla geometria 3D.
     * Linea, frecce e testo condividono sempre l'angolo dello spigolo
     * misurato; la profondità usa il vero lato corto fronte-retro.
     */
    #astApp .ast-dimension-layer{
      position:absolute;
      z-index:3;
      inset:0;
      width:100%;
      height:100%;
      display:none;
      overflow:visible;
      pointer-events:none;
      color:#0878e8;
    }
    #astApp .ast-three-wrap.has-webgl .ast-dimension-layer{display:block}
    #astApp .ast-dimension-layer.is-hidden{display:none!important}
    #astApp .ast-three-wrap.has-webgl .ast-dimension{display:none!important}
    #astApp .ast-dimension-group{
      opacity:1;
      transition:opacity .18s ease;
    }
    #astApp .ast-dimension-line{
      stroke:currentColor;
      stroke-width:1.12;
      stroke-linecap:round;
      vector-effect:non-scaling-stroke;
    }
    #astApp .ast-dimension-extension{
      stroke:#0878e8;
      stroke-width:.82;
      stroke-linecap:round;
      opacity:.62;
      vector-effect:non-scaling-stroke;
    }
    #astApp .ast-dimension-label rect{
      height:18px;
      rx:0;
      fill:rgba(255,255,255,.94);
      stroke:none;
    }
    #astApp .ast-dimension-label text{
      fill:#0b2745;
      font:600 10px/1 Inter,"Segoe UI",Arial,sans-serif;
      letter-spacing:.012em;
      text-anchor:middle;
      dominant-baseline:middle;
      paint-order:stroke;
      stroke:rgba(255,255,255,.94);
      stroke-width:2.2px;
      stroke-linejoin:round;
    }
    #astApp .ast-dimension-name{
      font-weight:600;
      letter-spacing:.025em;
    }
    #astApp .ast-dimension-value{
      font-weight:850;
      letter-spacing:0;
    }

    /*
     * V3.0.0 — Modelli A/B/C/D e quantità di produzione 300–2.000.
     * Otto scaglioni rapidi, campo libero a passo unitario e feedback
     * non distruttivo durante la digitazione.
     */
    #astApp .ast-qty-scale-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      margin-top:15px;
      color:#6a8298;
      font-size:8px;
      font-weight:850;
      letter-spacing:.07em;
    }
    #astApp .ast-qty-scale-head strong{
      color:#0872d6;
      font-size:8px;
      letter-spacing:.035em;
    }
    #astApp .ast-family-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      margin:16px 0 7px;
      color:#294761;
      font-size:9px;
      font-weight:850;
    }
    #astApp .ast-family-head small{color:#768a9d;font-size:7.5px!important;font-weight:650}
    #astApp .ast-family-selector{
      display:grid;
      grid-template-columns:repeat(3,minmax(0,1fr));
      gap:6px;
    }
    #astApp .ast-family-selector button{
      min-width:0;
      min-height:63px;
      display:grid;
      grid-template-columns:27px minmax(0,1fr);
      align-items:center;
      gap:6px;
      padding:7px 6px;
      border:1px solid #d4e2ec;
      border-radius:5px;
      color:#294761;
      background:#fff;
      text-align:left;
      transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease;
    }
    #astApp .ast-family-selector button>b{
      width:25px;
      height:25px;
      display:grid;
      place-items:center;
      border:1px solid #bcd7ed;
      border-radius:50%;
      color:#0872d6;
      background:#eff7ff;
      font-size:10px;
    }
    #astApp .ast-family-selector button span{min-width:0;display:grid}
    #astApp .ast-family-selector button strong{
      overflow:hidden;
      color:inherit;
      font-size:8px!important;
      line-height:1.1;
      text-overflow:ellipsis;
      white-space:nowrap;
    }
    #astApp .ast-family-selector button small{
      margin-top:3px;
      overflow:hidden;
      color:#73889b;
      font-size:6.5px!important;
      line-height:1.15;
      text-overflow:ellipsis;
    }
    #astApp .ast-family-selector button:hover{border-color:#85bcea;background:#f5faff}
    #astApp .ast-family-selector button.is-active{
      border-color:#0878e8;
      color:#fff;
      background:#0878e8;
      box-shadow:0 6px 14px rgba(8,120,232,.16);
    }
    #astApp .ast-family-selector button.is-active>b{border-color:#fff;color:#0878e8;background:#fff}
    #astApp .ast-family-selector button.is-active small{color:rgba(255,255,255,.78)}
    #astApp .ast-qty-presets{
      display:grid!important;
      grid-template-columns:repeat(4,minmax(0,1fr))!important;
      margin-top:7px!important;
      overflow:hidden;
      border:1px solid #cddfeb!important;
      border-radius:5px!important;
      background:#fff;
    }
    #astApp .ast-qty-presets button,
    #astApp .ast-qty-presets button:nth-child(5){
      grid-column:auto!important;
      min-width:0;
      min-height:54px!important;
      padding:8px 3px!important;
      border:0!important;
      border-right:1px solid #d9e5ee!important;
      border-bottom:1px solid #d9e5ee!important;
      border-radius:0!important;
      color:#173d60!important;
      background:#fff!important;
      font-size:13px!important;
      font-weight:850!important;
      line-height:1.05!important;
      transition:color .16s ease,background-color .16s ease,box-shadow .16s ease;
    }
    #astApp .ast-qty-presets button:nth-child(4n){border-right:0!important}
    #astApp .ast-qty-presets button:nth-child(n+5){border-bottom:0!important}
    #astApp .ast-qty-presets button:nth-child(n+4){background:#f8fbfe!important}
    #astApp .ast-qty-presets button:hover{
      position:relative;
      z-index:1;
      color:#0872d6!important;
      background:#eff7ff!important;
      box-shadow:inset 0 0 0 1px #8bc1ed;
    }
    #astApp .ast-qty-presets button.is-active{
      position:relative;
      z-index:2;
      color:#fff!important;
      background:#0878e8!important;
      box-shadow:inset 0 0 0 1px #0878e8,0 5px 13px rgba(8,120,232,.16);
    }
    #astApp .ast-qty-presets button small{
      display:block;
      margin-top:4px;
      color:#6f869a!important;
      font-size:8px!important;
      font-weight:650!important;
    }
    #astApp .ast-qty-presets button.is-active small{color:rgba(255,255,255,.82)!important}
    #astApp .ast-qty-row{margin-top:17px!important}
    #astApp .ast-qty-row>span{color:#24435f;font-size:10px!important;font-weight:850}
    #astApp .ast-qty-row>small{color:#70869a;font-size:8px!important}
    #astApp #astQtyControl{
      height:50px!important;
      grid-template-columns:38px 35px minmax(0,1fr) 25px 38px!important;
      overflow:hidden;
      border:1px solid #8dbfea!important;
      border-radius:5px!important;
      background:#fff;
      transition:border-color .16s ease,box-shadow .16s ease;
    }
    #astApp #astQtyControl:focus-within{
      border-color:#0878e8!important;
      box-shadow:0 0 0 3px rgba(8,120,232,.11);
    }
    #astApp #astQtyControl button{
      color:#0872d6;
      background:#f5faff;
      font-size:17px!important;
      font-weight:500;
    }
    #astApp #astQtyControl button:hover{color:#fff;background:#0878e8}
    #astApp #astQtyControl i{height:100%;color:#079b73;background:#eefaf6}
    #astApp #astQtyControl input{
      min-width:0;
      padding:0 8px;
      color:#102f4d;
      background:#fff;
      font-size:18px!important;
      font-weight:850;
      text-align:left;
      appearance:textfield;
    }
    #astApp #astQtyControl input::-webkit-inner-spin-button,
    #astApp #astQtyControl input::-webkit-outer-spin-button{margin:0;appearance:none}
    #astApp #astQtyControl em{color:#6a8094;font-size:9px!important;font-weight:750}
    #astApp #astQtyControl.is-draft-empty{
      border-color:#e0a43a!important;
      box-shadow:0 0 0 3px rgba(224,164,58,.1);
    }
    #astApp #astQtyControl.is-draft-invalid{
      border-color:#d95763!important;
      box-shadow:0 0 0 3px rgba(217,87,99,.1);
    }
    #astApp .ast-qty-note{
      min-height:28px!important;
      padding:5px 3px;
      color:#58766b;
      font-size:8px!important;
      line-height:1.3;
    }
    #astApp .ast-qty-note.is-error{color:#b13b46}
    #astApp .ast-qty-note.is-error i{
      background:#d95763;
      box-shadow:0 0 0 3px #fdebee;
    }
    #astApp .ast-price-card[hidden]{display:none!important}
    #astApp .ast-continue:disabled{
      cursor:not-allowed;
      color:#7d91a3!important;
      background:#dce6ee!important;
      box-shadow:none!important;
    }
    @media(max-width:420px){
      #astApp .ast-qty-presets{grid-template-columns:repeat(2,minmax(0,1fr))!important}
      #astApp .ast-qty-presets button:nth-child(4n){border-right:1px solid #d9e5ee!important}
      #astApp .ast-qty-presets button:nth-child(2n){border-right:0!important}
      #astApp .ast-qty-presets button:nth-child(n+5){border-bottom:1px solid #d9e5ee!important}
      #astApp .ast-qty-presets button:nth-child(n+7){border-bottom:0!important}
    }
    #astApp .ast-input.is-draft-invalid{
      border-color:#d95763!important;
      box-shadow:0 0 0 3px rgba(217,87,99,.10)!important;
    }
    #astApp .ast-input.is-draft-empty{
      border-color:#e0a43a!important;
      box-shadow:0 0 0 3px rgba(224,164,58,.10)!important;
    }

    /*
     * V3.6.0 — veri snapshot dei modelli 3D aperti.
     * Il motore usa per A/B/C/D la stessa camera, lo stesso zoom, le stesse
     * misure e le stesse luci; non esistono più illustrazioni interpretate.
     */
    #astApp .ast-family-selector{
      gap:7px!important;
    }
    #astApp .ast-family-selector button{
      min-height:156px!important;
      grid-template-columns:1fr!important;
      grid-template-rows:94px auto;
      align-items:center!important;
      justify-items:center;
      gap:9px!important;
      padding:10px 9px!important;
      border-radius:8px!important;
      text-align:center!important;
      box-shadow:0 3px 10px rgba(18,58,92,.035);
    }
    #astApp .ast-family-preview{
      position:relative;
      width:118px;
      height:92px;
      display:grid!important;
      place-items:center;
      align-self:center;
      border:1px solid #d5e5f1;
      border-radius:10px;
      color:#0875df;
      background:linear-gradient(145deg,#fff,#f2f8fd);
      isolation:isolate;
    }
    #astApp .ast-model-shot{
      position:absolute;
      z-index:1;
      inset:0;
      width:100%;
      height:100%;
      display:block;
      border-radius:9px;
      object-fit:cover;
      opacity:0;
      transform:scale(1.01);
      transition:opacity .25s ease;
    }
    #astApp .ast-model-shot.is-ready{opacity:1}
    #astApp .ast-model-shot-loader{
      position:absolute;
      z-index:0;
      inset:0;
      display:grid;
      place-content:center;
      justify-items:center;
      gap:6px;
      color:#6f8ba4;
      background:linear-gradient(145deg,#fff,#edf6fc);
      transition:opacity .2s ease,visibility .2s ease;
    }
    #astApp .ast-model-shot-loader i{
      width:21px;
      height:21px;
      border:2px solid #d6e6f2;
      border-top-color:#0878e8;
      border-radius:50%;
      animation:ast-model-shot-spin .8s linear infinite;
    }
    #astApp .ast-model-shot-loader small{
      min-height:0!important;
      margin:0!important;
      color:inherit!important;
      font-size:6px!important;
      font-weight:900;
      letter-spacing:.12em;
    }
    #astApp .ast-model-shot.is-ready+.ast-model-shot-loader{opacity:0;visibility:hidden}
    @keyframes ast-model-shot-spin{to{transform:rotate(360deg)}}
    #astApp .ast-family-preview b{
      position:absolute;
      z-index:2;
      right:-5px;
      bottom:-5px;
      width:23px;
      height:23px;
      display:grid;
      place-items:center;
      border:3px solid #fff;
      border-radius:50%;
      color:#fff;
      background:#0878e8;
      font-size:9px;
      line-height:1;
      box-shadow:0 2px 6px rgba(8,94,180,.18);
    }
    #astApp .ast-family-copy{
      min-width:0;
      display:grid!important;
      align-content:center;
      justify-items:center;
      text-align:center;
    }
    #astApp .ast-family-selector button strong{
      font-size:10px!important;
      line-height:1.15!important;
    }
    #astApp .ast-family-selector button em{
      display:inline-grid;
      place-items:center;
      min-height:19px;
      margin-top:4px;
      padding:0 7px;
      border-radius:20px;
      color:#08775d;
      background:#e9f9f3;
      font-size:6.8px;
      font-style:normal;
      font-weight:900;
      letter-spacing:.045em;
      line-height:1;
      text-transform:uppercase;
    }
    #astApp .ast-family-selector button small{
      min-height:28px;
      margin-top:5px!important;
      font-size:7.5px!important;
      line-height:1.25!important;
    }
    #astApp .ast-family-selector button.is-active .ast-family-preview{
      border-color:rgba(255,255,255,.74);
      color:#0878e8;
      background:#fff;
      box-shadow:0 5px 12px rgba(4,55,108,.12);
    }
    #astApp .ast-family-selector button.is-active em{
      color:#0878e8;
      background:#fff;
    }
    #astApp .ast-family-selector button.is-active .ast-family-preview b{
      border-color:#0878e8;
      color:#0878e8;
      background:#fff;
    }
    #astApp .ast-three canvas{
      cursor:grab;
      touch-action:none;
      user-select:none;
      -webkit-user-select:none;
      -webkit-touch-callout:none;
    }
    #astApp .ast-three canvas.is-dragging{cursor:grabbing}

    #astApp .ast-stage-status{left:102px!important}
    #astApp .ast-stage-tools{
      width:78px!important;
      display:grid!important;
      gap:8px!important;
      overflow:visible!important;
      border:0!important;
      border-radius:0!important;
      background:transparent!important;
      box-shadow:none!important;
    }
    #astApp .ast-stage-tools button{
      width:78px;
      min-height:76px!important;
      display:grid!important;
      grid-template-rows:39px auto;
      place-items:center!important;
      align-content:center!important;
      gap:5px!important;
      padding:8px 6px!important;
      border:1px solid #d2e1ec!important;
      border-radius:8px!important;
      color:#294b69!important;
      background:rgba(255,255,255,.97)!important;
      box-shadow:0 4px 12px rgba(17,54,87,.045);
      font-size:8.5px!important;
      line-height:1.15!important;
      text-align:center;
      transition:border-color .18s ease,color .18s ease,background-color .18s ease,transform .18s ease,box-shadow .18s ease;
    }
    #astApp .ast-stage-tools button:hover{
      border-color:#75b8ee!important;
      color:#0872d6!important;
      background:#f7fbff!important;
      box-shadow:0 7px 16px rgba(8,92,175,.09);
      transform:translateY(-1px);
    }
    #astApp .ast-stage-tools button:active{transform:translateY(0)}
    #astApp .ast-stage-tools i{
      width:40px;
      height:39px;
      display:grid!important;
      place-items:center!important;
      border:0;
      border-radius:0;
      color:#0878e8!important;
      background:transparent;
    }
    #astApp .ast-stage-tools i svg{
      width:28px!important;
      height:28px!important;
      margin:auto;
      stroke-width:1.65!important;
    }
    #astApp .ast-stage-tools button span{
      width:100%;
      display:block;
      align-self:start;
      overflow-wrap:normal;
      font-size:8.5px;
      font-weight:900;
      letter-spacing:.025em;
      line-height:1.15;
      text-align:center;
      text-transform:uppercase;
    }

    #astApp .ast-quote-tabs button{
      display:grid;
      place-items:center;
      padding:0!important;
      line-height:1!important;
      text-align:center;
    }
    #astApp .ast-choice-title{
      grid-template-columns:36px minmax(0,1fr)!important;
      align-items:center!important;
      gap:10px!important;
      padding:8px 10px!important;
    }
    #astApp .ast-choice-title>i{
      width:32px!important;
      height:32px!important;
      justify-self:center;
      border-radius:7px!important;
    }
    #astApp .ast-choice-title>i svg{width:18px!important;height:18px!important;margin:auto}
    #astApp .ast-choice-title span{align-content:center}
    #astApp .ast-choice-title strong,
    #astApp .ast-choice-title small{line-height:1.2!important}
    #astApp .ast-qty-scale-head{
      min-height:20px;
      align-items:end!important;
      margin-top:15px!important;
      line-height:1!important;
    }
    #astApp .ast-qty-presets button,
    #astApp .ast-qty-presets button:nth-child(5){
      display:flex!important;
      flex-direction:column;
      align-items:center!important;
      justify-content:center!important;
      gap:4px;
      padding:7px 4px!important;
      line-height:1!important;
      text-align:center!important;
    }
    #astApp .ast-qty-presets button small{
      display:block!important;
      margin:0!important;
      line-height:1!important;
    }
    #astApp .ast-qty-row{
      align-items:end!important;
      row-gap:0;
    }
    #astApp .ast-qty-row>span,
    #astApp .ast-qty-row>small{line-height:1.2!important}
    #astApp #astQtyControl{
      height:54px!important;
      grid-template-columns:46px 42px minmax(0,1fr) 36px 46px!important;
      align-items:stretch!important;
      margin-top:8px!important;
    }
    #astApp #astQtyControl button{
      width:100%;
      height:100%;
      display:grid!important;
      place-items:center!important;
      padding:0!important;
      font-size:19px!important;
      line-height:1!important;
    }
    #astApp #astQtyControl i{
      width:100%;
      height:100%!important;
      display:grid!important;
      place-items:center!important;
      margin:0;
    }
    #astApp #astQtyControl i svg{width:19px!important;height:19px!important;margin:auto}
    #astApp #astQtyControl input{
      height:100%;
      padding:0 4px!important;
      line-height:54px;
      text-align:center!important;
    }
    #astApp #astQtyControl em{
      display:grid;
      place-items:center;
      height:100%;
      line-height:1;
    }
    #astApp .ast-qty-note{
      min-height:30px!important;
      align-items:center!important;
      padding:6px 8px!important;
      line-height:1.25!important;
    }
    #astApp .ast-qty-note i{flex:0 0 6px}
    #astApp .ast-qty-note span{text-align:center}
    #astApp .ast-price-card{
      min-height:120px!important;
      grid-template-columns:minmax(0,1.25fr) minmax(150px,.75fr)!important;
      align-items:center!important;
      gap:18px!important;
      padding:18px 16px!important;
      border-radius:7px!important;
    }
    #astApp .ast-price-card>div:first-of-type{
      display:grid;
      align-content:center;
      justify-items:start;
      min-width:0;
    }
    #astApp .ast-price-card>div:last-child{
      display:grid;
      align-content:center;
      justify-items:end;
      min-width:0;
      text-align:right;
    }
    #astApp .ast-price-card small,
    #astApp .ast-price-card strong,
    #astApp .ast-price-card p{line-height:1.18!important}
    #astApp .ast-simulation{
      top:11px!important;
      right:11px!important;
      display:grid;
      place-items:center;
      min-height:20px;
      padding:0 8px!important;
      line-height:1!important;
    }
    #astApp .ast-progress-title{
      min-height:28px;
      align-items:center!important;
      line-height:1.2!important;
    }
    #astApp .ast-checks li{
      min-height:38px;
      display:grid;
      grid-template-columns:20px minmax(0,1fr);
      align-items:center;
      gap:8px;
      padding:8px 0!important;
      line-height:1.2!important;
    }
    #astApp .ast-checks li>i{
      position:relative;
      width:18px;
      height:18px;
      display:grid;
      place-items:center;
      justify-self:center;
      border:1px solid #b9cbd9;
      border-radius:50%;
      background:#fff;
    }
    #astApp .ast-checks li.is-done>i{
      border-color:#8bd8c0;
      background:#ebfaf5;
    }
    #astApp .ast-checks li.is-done>i:after{
      content:"";
      width:6px;
      height:3px;
      border-bottom:1.5px solid #07976f;
      border-left:1.5px solid #07976f;
      transform:translateY(-1px) rotate(-45deg);
    }
    #astApp .ast-checks li span{
      margin:0!important;
      align-self:center;
      color:#3f586f;
    }
    #astApp .ast-continue{
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
      gap:11px!important;
      border-radius:6px!important;
      line-height:1!important;
    }
    #astApp .ast-continue span{margin:0!important;line-height:1!important}
    #astApp .ast-continue svg{
      width:17px;
      height:17px;
      display:block;
      fill:none;
      stroke:currentColor;
      stroke-width:2;
      stroke-linecap:round;
      stroke-linejoin:round;
    }
    #astApp .ast-quote footer{
      min-height:53px;
      align-items:center!important;
      gap:0!important;
      padding:10px 0!important;
    }
    #astApp .ast-quote footer>span{
      min-width:0;
      min-height:25px;
      display:flex;
      align-items:center;
      justify-content:center;
      gap:5px;
      padding:0 7px;
      line-height:1.15;
      text-align:center;
    }
    #astApp .ast-quote footer>span+span{border-left:1px solid #dbe6ee}
    #astApp .ast-quote footer i{
      width:18px;
      height:18px;
      display:grid;
      place-items:center;
      flex:0 0 18px;
      color:#0877df;
      font-size:7px;
      font-style:normal;
      font-weight:900;
    }
    #astApp .ast-quote footer i svg{
      width:16px;
      height:16px;
      display:block;
      fill:none;
      stroke:currentColor;
      stroke-width:1.7;
      stroke-linecap:round;
      stroke-linejoin:round;
    }
    #astApp .ast-quote footer .ast-it{
      border:1px solid #b9d8ef;
      border-radius:50%;
      background:#f1f8fe;
    }
    #astApp .ast-quote footer b{
      min-width:0;
      color:#526d84;
      font-size:7px;
      font-weight:750;
      line-height:1.15;
    }
    #astApp .ast-save-row{
      align-items:center!important;
      justify-content:flex-end!important;
      gap:8px!important;
      min-height:38px;
    }
    #astApp .ast-save-row button{
      min-height:30px;
      display:flex;
      align-items:center;
      justify-content:center;
      gap:6px;
      padding:0 9px!important;
      border:1px solid transparent!important;
      border-radius:5px;
      line-height:1!important;
    }
    #astApp .ast-save-row button:hover{
      border-color:#cce0ef!important;
      color:#0872d6!important;
      background:#f5faff!important;
    }
    #astApp .ast-save-row svg{
      width:14px;
      height:14px;
      display:block;
      fill:none;
      stroke:currentColor;
      stroke-width:1.6;
      stroke-linecap:round;
      stroke-linejoin:round;
    }
    #astApp .ast-save-row span{line-height:1;text-transform:uppercase}

    @media(max-width:1320px){
      #astApp .ast-family-selector button{
        min-height:148px!important;
        grid-template-columns:1fr!important;
        grid-template-rows:78px auto;
        gap:8px!important;
        padding:9px 5px!important;
        text-align:center;
      }
      #astApp .ast-family-preview{width:102px;height:82px}
      #astApp .ast-family-copy{justify-items:center;text-align:center}
      #astApp .ast-family-selector button small{min-height:29px}
    }
    @media(max-width:760px){
      #astApp .ast-stage-status{
        top:67px!important;
        right:10px;
        left:84px!important;
        justify-content:center;
      }
      #astApp .ast-stage-tools{width:66px!important;gap:6px!important}
      #astApp .ast-stage-tools button{width:66px;min-height:70px!important;padding:6px 4px!important}
      #astApp .ast-stage-tools i{width:35px;height:34px}
      #astApp .ast-stage-tools i svg{width:24px!important;height:24px!important}
      #astApp .ast-stage-tools button span{font-size:7.3px}
    }

    /*
     * V3.7.0 — snapshot grandi e sidebar quantità/prezzo riallineata.
     * Le anteprime usano quasi tutta la card; nella colonna destra ogni
     * elemento ha una griglia esplicita e una tipografia realmente leggibile.
     */
    #astApp .ast-family-selector button{
      min-height:174px!important;
      grid-template-rows:116px auto!important;
      gap:8px!important;
      padding:8px!important;
    }
    #astApp .ast-family-preview{
      width:100%!important;
      max-width:156px;
      height:116px!important;
      border-radius:9px;
    }
    #astApp .ast-model-shot{border-radius:8px;transform:none}
    #astApp .ast-family-copy{gap:5px}
    #astApp .ast-family-selector button strong{
      font-size:11px!important;
      line-height:1!important;
    }
    #astApp .ast-family-selector button em{
      min-height:20px;
      margin:0!important;
      padding:0 8px;
      font-size:7px;
      letter-spacing:.035em;
    }

    #astApp .ast-quote{padding:28px 18px 24px!important}
    #astApp .ast-quote-head{
      min-height:64px;
      grid-template-columns:54px minmax(0,1fr)!important;
      align-items:center!important;
      gap:13px!important;
    }
    #astApp .ast-quote-head>span{
      width:50px!important;
      height:50px!important;
      font-size:11px!important;
    }
    #astApp .ast-quote-head h2{font-size:21px!important;line-height:1.1!important}
    #astApp .ast-quote-head p{font-size:10px!important;line-height:1.2!important}
    #astApp .ast-quote-tabs button{height:46px!important;font-size:11px!important}
    #astApp .ast-choice-title{
      min-height:60px!important;
      grid-template-columns:42px minmax(0,1fr)!important;
      align-items:center!important;
      gap:11px!important;
      padding:9px 11px!important;
    }
    #astApp .ast-choice-title>i{width:38px!important;height:38px!important}
    #astApp .ast-choice-title>i svg{width:21px!important;height:21px!important}
    #astApp .ast-choice-title strong{font-size:12px!important;line-height:1.15!important}
    #astApp .ast-choice-title small{margin-top:2px!important;font-size:9.5px!important;line-height:1.25!important}
    #astApp .ast-qty-scale-head{
      min-height:24px;
      margin-top:17px!important;
      font-size:9px!important;
      line-height:1!important;
    }
    #astApp .ast-qty-scale-head strong{font-size:9px!important}
    #astApp .ast-qty-presets{margin-top:8px!important}
    #astApp .ast-qty-presets button,
    #astApp .ast-qty-presets button:nth-child(5){
      min-height:64px!important;
      gap:5px!important;
      padding:9px 4px!important;
      font-size:16px!important;
      line-height:1!important;
    }
    #astApp .ast-qty-presets button small{
      margin:0!important;
      font-size:9px!important;
      line-height:1!important;
    }
    #astApp .ast-qty-row{
      margin-top:20px!important;
      align-items:center!important;
    }
    #astApp .ast-qty-row>span{font-size:11px!important;line-height:1.2!important}
    #astApp .ast-qty-row>small{font-size:9px!important;line-height:1.2!important}
    #astApp #astQtyControl{
      height:58px!important;
      grid-template-columns:48px 44px minmax(0,1fr) 38px 48px!important;
      align-items:stretch!important;
      margin-top:9px!important;
    }
    #astApp #astQtyControl button{font-size:20px!important}
    #astApp #astQtyControl i svg{width:21px!important;height:21px!important}
    #astApp #astQtyControl input{
      padding:0 6px!important;
      font-size:21px!important;
      line-height:58px!important;
      text-align:center!important;
    }
    #astApp #astQtyControl em{font-size:10px!important}
    #astApp .ast-qty-note{
      min-height:34px!important;
      gap:7px!important;
      padding:7px 5px!important;
      font-size:9px!important;
    }
    #astApp .ast-price-card{
      min-height:132px!important;
      grid-template-columns:minmax(0,1fr) minmax(138px,.72fr)!important;
      align-items:center!important;
      gap:20px!important;
      margin-top:14px!important;
      padding:20px 17px!important;
      border-radius:8px!important;
    }
    #astApp .ast-price-card>div:first-of-type{justify-items:start!important}
    #astApp .ast-price-card>div:last-child{
      justify-items:end!important;
      align-content:center!important;
      padding-top:17px;
    }
    #astApp .ast-price-card small{font-size:9px!important;letter-spacing:.04em}
    #astApp .ast-price-card>div:first-of-type>strong{font-size:31px!important;line-height:1!important}
    #astApp .ast-price-card strong em{font-size:9px!important}
    #astApp .ast-price-card p{
      max-width:310px;
      margin-top:7px!important;
      font-size:9px!important;
      line-height:1.3!important;
    }
    #astApp .ast-price-card>div:last-child strong{font-size:16px!important;line-height:1.1!important}
    #astApp .ast-simulation{
      top:12px!important;
      right:12px!important;
      min-height:23px;
      padding:0 9px!important;
      font-size:7.5px!important;
    }
    #astApp .ast-progress-title{
      min-height:34px;
      margin-top:28px!important;
      padding-bottom:9px!important;
      font-size:11px!important;
    }
    #astApp .ast-progress-title small{font-size:9px!important}
    #astApp .ast-checks li{
      min-height:42px;
      grid-template-columns:22px minmax(0,1fr);
      gap:9px;
      padding:9px 0!important;
      font-size:10.5px!important;
    }
    #astApp .ast-checks li>i{width:20px;height:20px}
    #astApp .ast-continue{
      height:58px!important;
      margin-top:12px!important;
      gap:12px!important;
      font-size:14px!important;
    }
    #astApp .ast-continue svg{width:20px;height:20px}
    #astApp .ast-quote footer{
      min-height:64px;
      margin-top:12px!important;
      padding:12px 0!important;
    }
    #astApp .ast-quote footer>span{min-height:30px;gap:7px;padding:0 8px}
    #astApp .ast-quote footer i{width:21px;height:21px;flex-basis:21px;font-size:8px}
    #astApp .ast-quote footer i svg{width:19px;height:19px}
    #astApp .ast-quote footer b{font-size:8.5px;line-height:1.15}
    #astApp .ast-save-row{
      min-height:46px;
      justify-content:center!important;
      gap:14px!important;
      margin-top:12px!important;
    }
    #astApp .ast-save-row button{
      min-height:34px;
      gap:7px;
      padding:0 12px!important;
      font-size:9.5px!important;
    }
    #astApp .ast-save-row svg{width:16px;height:16px}

    @media(max-width:1320px){
      #astApp .ast-family-selector button{
        min-height:160px!important;
        grid-template-rows:104px auto!important;
        padding:7px 5px!important;
      }
      #astApp .ast-family-preview{width:100%!important;max-width:140px;height:104px!important}
      #astApp .ast-family-selector button strong{font-size:10px!important}
      #astApp .ast-family-selector button em{font-size:6.5px}
      #astApp .ast-quote{padding-right:14px!important;padding-left:14px!important}
      #astApp .ast-price-card{grid-template-columns:minmax(0,1fr) 132px!important;gap:12px!important}
    }
    @media(max-width:520px){
      #astApp .ast-family-selector{gap:5px!important}
      #astApp .ast-family-selector button{
        min-height:149px!important;
        grid-template-rows:96px auto!important;
        padding:6px 4px!important;
      }
      #astApp .ast-family-preview{height:96px!important}
      #astApp .ast-family-selector button em{padding:0 5px;font-size:6px}
      #astApp .ast-price-card{grid-template-columns:minmax(0,1fr) 120px!important;padding:17px 13px!important}
      #astApp .ast-price-card>div:first-of-type>strong{font-size:28px!important}
      #astApp .ast-price-card>div:last-child strong{font-size:14px!important}
      #astApp .ast-quote footer>span{padding:0 4px}
      #astApp .ast-quote footer b{font-size:7.5px}
    }

    /*
     * V3.8.0 — scala tipografica leggibile sull'intero configuratore.
     * Il precedente insieme di patch lasciava molte micro-label tra 6 e
     * 9 px: su monitor ampi sembravano note tecniche anziché controlli.
     */
    #astApp{font-size:16px!important}
    #astApp .ast-title small{font-size:12px!important}
    #astApp .ast-title h1{font-size:40px!important}
    #astApp .ast-title p{font-size:14px!important}
    #astApp .ast-save-status{font-size:11px!important}
    #astApp .ast-steps button b{font-size:14px!important}
    #astApp .ast-steps strong{font-size:14px!important}
    #astApp .ast-steps small{font-size:11px!important}

    #astApp .ast-section-title h2,
    #astApp .ast-quote-head h2{font-size:23px!important}
    #astApp .ast-section-title p{font-size:12px!important}
    #astApp .ast-live{font-size:10px!important}
    #astApp .ast-family-head{font-size:12px!important}
    #astApp .ast-family-head small{font-size:10px!important}
    #astApp .ast-family-selector button strong{font-size:13px!important}
    #astApp .ast-family-selector button em{font-size:9px!important}
    #astApp .ast-preset-head,
    #astApp .ast-customize-head{font-size:12px!important}
    #astApp .ast-preset-head small,
    #astApp .ast-customize-head small{font-size:10px!important}
    #astApp .ast-presets strong{font-size:12px!important}
    #astApp .ast-presets small{font-size:10px!important}
    #astApp .ast-fields>label{font-size:13px!important}
    #astApp .ast-input input,
    #astApp .ast-input select{font-size:20px!important}
    #astApp .ast-input em{font-size:11px!important}
    #astApp .ast-validation strong{font-size:11px!important}
    #astApp .ast-validation small{font-size:9.5px!important}
    #astApp .ast-option strong{font-size:12px!important}
    #astApp .ast-option small{font-size:10px!important}
    #astApp .ast-external-card small{font-size:10px!important}
    #astApp .ast-external-card strong{font-size:14px!important}
    #astApp .ast-external-card em{font-size:9.5px!important}
    #astApp .ast-external-settings label,
    #astApp .ast-external-settings select{font-size:11px!important}
    #astApp .ast-action strong{font-size:13px!important}
    #astApp .ast-action small{font-size:9.5px!important}

    #astApp .ast-model-tabs button{font-size:11.5px!important}
    #astApp .ast-stage-status{font-size:10.5px!important}
    #astApp .ast-stage-tools button,
    #astApp .ast-stage-tools button span{font-size:10px!important}
    #astApp .ast-dimension-label rect{height:22px}
    #astApp .ast-dimension-label text{font-size:13px!important}
    #astApp .ast-scene-hint{font-size:10px!important}
    #astApp .ast-rotation label,
    #astApp .ast-rotation output{font-size:11px!important}
    #astApp .ast-view-group>small,
    #astApp .ast-switch small{font-size:10.5px!important}
    #astApp .ast-view-group button{font-size:11.5px!important}
    #astApp .ast-switch strong,
    #astApp .ast-export b{font-size:11.5px!important}
    #astApp .ast-export small{font-size:9.5px!important}

    #astApp .ast-quote-head p{font-size:11px!important}
    #astApp .ast-quote-tabs button{font-size:12px!important}
    #astApp .ast-choice-title strong{font-size:13px!important}
    #astApp .ast-choice-title small{font-size:10px!important}
    #astApp .ast-qty-scale-head,
    #astApp .ast-qty-scale-head strong{font-size:10px!important}
    #astApp .ast-qty-presets button,
    #astApp .ast-qty-presets button:nth-child(5){font-size:17px!important}
    #astApp .ast-qty-presets button small{font-size:10px!important}
    #astApp .ast-qty-row>span{font-size:12px!important}
    #astApp .ast-qty-row>small{font-size:10px!important}
    #astApp #astQtyControl input{font-size:22px!important}
    #astApp #astQtyControl em{font-size:11px!important}
    #astApp .ast-qty-note{font-size:9.5px!important}
    #astApp .ast-price-card small{font-size:10px!important}
    #astApp .ast-price-card>div:first-of-type>strong{font-size:34px!important}
    #astApp .ast-price-card strong em{font-size:10px!important}
    #astApp .ast-price-card p{font-size:9.5px!important}
    #astApp .ast-price-card>div:last-child strong{font-size:17px!important}
    #astApp .ast-simulation{font-size:8.5px!important}
    #astApp .ast-progress-title{font-size:12px!important}
    #astApp .ast-progress-title small{font-size:10px!important}
    #astApp .ast-checks li{font-size:11.5px!important}
    #astApp .ast-continue{font-size:15px!important}
    #astApp .ast-quote footer b{font-size:9.5px!important}
    #astApp .ast-save-row button{font-size:10px!important}

    #astApp .ast-process-intro>small{font-size:10px!important}
    #astApp .ast-process-intro h2{font-size:21px!important}
    #astApp .ast-process-intro p,
    #astApp .ast-process article p{font-size:10.5px!important}
    #astApp .ast-process-intro button{font-size:11px!important}
    #astApp .ast-process article strong{font-size:12px!important}
    #astApp .ast-process article>b{font-size:9px!important}

    @media(max-width:1320px){
      #astApp .ast-title h1{font-size:34px!important}
      #astApp .ast-title p{font-size:12px!important}
      #astApp .ast-steps strong{font-size:12px!important}
      #astApp .ast-steps small{font-size:10px!important}
      #astApp .ast-section-title h2,
      #astApp .ast-quote-head h2{font-size:21px!important}
      #astApp .ast-fields>label{font-size:12px!important}
      #astApp .ast-stage-tools button,
      #astApp .ast-stage-tools button span{font-size:9px!important}
    }
    @media(max-width:760px){
      #astApp .ast-title h1{font-size:27px!important}
      #astApp .ast-title p{font-size:11px!important}
      #astApp .ast-family-head{font-size:11px!important}
      #astApp .ast-family-head small{font-size:9px!important}
      #astApp .ast-family-selector button strong{font-size:11px!important}
      #astApp .ast-family-selector button em{font-size:7.5px!important}
      #astApp .ast-stage-tools button,
      #astApp .ast-stage-tools button span{font-size:8.5px!important}
      #astApp .ast-view-group button{font-size:11px!important}
      #astApp .ast-quote-head h2{font-size:21px!important}
    }

    /*
     * V3.9.0 — quantità e prezzo riprogettati.
     * Un solo livello minimo per i testi informativi, controlli separati
     * e riepilogo economico con unitario/totale leggibili a colpo d'occhio.
     */
    #astApp>.ast-head small,
    #astApp>.ast-workspace small,
    #astApp>.ast-process small{font-size:11.5px!important;line-height:1.35!important}

    @media(min-width:1321px){
      #astApp .ast-workspace{
        grid-template-columns:
          clamp(360px,22vw,440px)
          minmax(520px,1fr)
          clamp(430px,27vw,500px)!important;
      }
    }

    #astApp .ast-section-title p,
    #astApp .ast-title p{font-size:13.5px!important}
    #astApp .ast-family-selector button em{font-size:10.5px!important}
    #astApp .ast-fields>label{font-size:14px!important}
    #astApp .ast-validation strong{font-size:12.5px!important}
    #astApp .ast-validation small{font-size:11px!important}
    #astApp .ast-option strong{font-size:12.5px!important}
    #astApp .ast-option small{font-size:11px!important}
    #astApp .ast-input em{font-size:12px!important}
    #astApp .ast-action small{font-size:11px!important}
    #astApp .ast-scene-hint{font-size:11px!important}
    #astApp .ast-rotation label,
    #astApp .ast-rotation output{font-size:12px!important}
    #astApp .ast-view-group>small,
    #astApp .ast-switch small{font-size:11.5px!important}
    #astApp .ast-export small{font-size:11px!important}

    #astApp .ast-quote{
      padding:28px 20px 26px!important;
      background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
    }
    #astApp .ast-quote-head{
      min-height:70px!important;
      grid-template-columns:58px minmax(0,1fr)!important;
      gap:14px!important;
      padding-bottom:18px!important;
    }
    #astApp .ast-quote-head>span{
      width:54px!important;
      height:54px!important;
      font-size:12px!important;
    }
    #astApp .ast-quote-head h2{font-size:24px!important}
    #astApp .ast-quote-head p{font-size:11.5px!important}
    #astApp .ast-quote-tabs{
      margin-top:14px!important;
      border-bottom-color:#cbddea!important;
    }
    #astApp .ast-quote-tabs button{
      height:48px!important;
      font-size:13px!important;
      letter-spacing:.025em;
    }

    #astApp .ast-choice-title{
      min-height:72px!important;
      grid-template-columns:48px minmax(0,1fr)!important;
      gap:13px!important;
      margin-top:16px!important;
      padding:11px 13px!important;
      border-radius:8px!important;
      background:#f1fbf7!important;
    }
    #astApp .ast-choice-title>i{
      width:44px!important;
      height:44px!important;
      border-radius:8px!important;
    }
    #astApp .ast-choice-title>i svg{width:24px!important;height:24px!important}
    #astApp .ast-choice-title strong{font-size:15px!important}
    #astApp .ast-choice-title small{font-size:11.5px!important}

    #astApp .ast-qty-scale-head{
      min-height:28px!important;
      align-items:center!important;
      margin-top:19px!important;
      color:#536f88!important;
      font-size:12.5px!important;
      letter-spacing:0!important;
      text-transform:none;
    }
    #astApp .ast-qty-scale-head strong{
      color:#0872d6!important;
      font-size:11.5px!important;
      letter-spacing:0!important;
    }
    #astApp .ast-qty-presets{
      gap:9px!important;
      margin-top:9px!important;
      overflow:visible!important;
      border:0!important;
      border-radius:0!important;
      background:transparent!important;
    }
    #astApp .ast-qty-presets button,
    #astApp .ast-qty-presets button:nth-child(5){
      min-height:70px!important;
      padding:10px 5px!important;
      border:1px solid #cbddea!important;
      border-radius:7px!important;
      color:#173d60!important;
      background:#fff!important;
      font-size:19px!important;
      box-shadow:0 2px 7px rgba(22,58,91,.025);
    }
    #astApp .ast-qty-presets button:nth-child(n+4){background:#f8fbfe!important}
    #astApp .ast-qty-presets button:hover{
      border-color:#75b8ee!important;
      color:#0872d6!important;
      background:#f2f8fe!important;
    }
    #astApp .ast-qty-presets button.is-active{
      border-color:#0878e8!important;
      color:#fff!important;
      background:linear-gradient(180deg,#1388f1,#0874dc)!important;
      box-shadow:0 7px 15px rgba(8,120,232,.18)!important;
    }
    #astApp .ast-qty-presets button small{
      margin-top:2px!important;
      font-size:11px!important;
      font-weight:700!important;
    }

    #astApp .ast-qty-row{margin-top:23px!important}
    #astApp .ast-qty-row>span{font-size:14px!important}
    #astApp .ast-qty-row>small{font-size:11.5px!important}
    #astApp #astQtyControl{
      height:64px!important;
      grid-template-columns:52px 48px minmax(0,1fr) 44px 52px!important;
      margin-top:10px!important;
      border-radius:7px!important;
      background:#fff!important;
    }
    #astApp #astQtyControl button{font-size:22px!important}
    #astApp #astQtyControl i svg{width:23px!important;height:23px!important}
    #astApp #astQtyControl input{
      font-size:25px!important;
      line-height:64px!important;
    }
    #astApp #astQtyControl em{font-size:12px!important}
    #astApp .ast-qty-note{
      min-height:40px!important;
      padding:8px 6px!important;
      font-size:11.5px!important;
      font-weight:750!important;
    }

    #astApp .ast-price-card{
      min-height:218px!important;
      display:block!important;
      margin-top:16px!important;
      padding:16px 17px 15px!important;
      border:1px solid #71b6ef!important;
      border-left:5px solid #0878e8!important;
      border-radius:9px!important;
      background:linear-gradient(145deg,#f5fbff 0%,#fff 74%)!important;
      box-shadow:0 8px 22px rgba(8,91,169,.07);
    }
    #astApp .ast-price-head{
      display:grid!important;
      grid-template-columns:40px minmax(0,1fr) auto!important;
      align-items:center!important;
      gap:11px!important;
      min-height:42px;
    }
    #astApp .ast-price-head-icon{
      width:38px;
      height:38px;
      display:grid;
      place-items:center;
      border-radius:8px;
      color:#0878e8;
      background:#e8f4ff;
    }
    #astApp .ast-price-head-icon svg{
      width:21px;
      height:21px;
      fill:none;
      stroke:currentColor;
      stroke-width:1.8;
      stroke-linecap:round;
      stroke-linejoin:round;
    }
    #astApp .ast-price-head>span:nth-child(2){display:grid;gap:2px}
    #astApp .ast-price-head small{
      color:#0872d6!important;
      font-size:10.5px!important;
      font-weight:900;
      letter-spacing:.055em;
    }
    #astApp .ast-price-head strong{
      color:#173b5e;
      font-size:15px!important;
      line-height:1.15!important;
    }
    #astApp .ast-simulation{
      position:static!important;
      min-height:25px!important;
      display:grid!important;
      place-items:center!important;
      padding:0 9px!important;
      border-radius:20px!important;
      font-size:9px!important;
      font-style:normal;
    }
    #astApp .ast-price-values{
      display:grid!important;
      grid-template-columns:1fr 1fr!important;
      align-items:stretch!important;
      gap:0!important;
      margin-top:13px;
      padding:14px 0 12px;
      border-top:1px solid #d7e7f3;
      border-bottom:1px solid #d7e7f3;
    }
    #astApp .ast-unit-price,
    #astApp .ast-order-total{
      min-width:0;
      display:grid!important;
      align-content:center!important;
      gap:2px;
    }
    #astApp .ast-unit-price{
      justify-items:start!important;
      padding-right:16px;
      border-right:1px solid #d7e7f3;
    }
    #astApp .ast-order-total{
      justify-items:end!important;
      padding-left:16px;
      text-align:right;
    }
    #astApp .ast-price-values small{
      color:#58738b!important;
      font-size:11.5px!important;
      font-weight:800!important;
      letter-spacing:0;
      text-transform:none;
    }
    #astApp .ast-price-values small b{color:#173b5e;font-size:inherit}
    #astApp .ast-price-values strong{
      color:#0a6fd1!important;
      font-size:34px!important;
      line-height:1.04!important;
      letter-spacing:-.025em;
      white-space:nowrap;
    }
    #astApp .ast-order-total strong{
      color:#0b2f52!important;
      font-size:27px!important;
    }
    #astApp .ast-price-values em{
      color:#647d93;
      font-size:11px!important;
      font-style:normal;
      font-weight:750;
      line-height:1.15;
    }
    #astApp .ast-price-note{
      min-height:34px;
      display:flex!important;
      align-items:center;
      gap:8px;
      margin:8px 0 0!important;
      color:#5d778e!important;
      font-size:11px!important;
      line-height:1.3!important;
    }
    #astApp .ast-price-note i{
      width:19px;
      height:19px;
      display:grid;
      place-items:center;
      flex:0 0 19px;
      border:1px solid #aad0ef;
      border-radius:50%;
      color:#0878e8;
      background:#fff;
      font-size:10px;
      font-style:normal;
      font-weight:900;
    }

    #astApp .ast-progress-title{
      min-height:39px!important;
      margin-top:26px!important;
      font-size:13px!important;
    }
    #astApp .ast-progress-title small{font-size:11.5px!important}
    #astApp .ast-checks li{
      min-height:46px!important;
      grid-template-columns:23px minmax(0,1fr)!important;
      gap:10px!important;
      font-size:12.5px!important;
    }
    #astApp .ast-checks li>i{width:21px!important;height:21px!important}
    #astApp .ast-continue{
      height:62px!important;
      margin-top:14px!important;
      border-radius:7px!important;
      font-size:16px!important;
      box-shadow:0 8px 18px rgba(8,103,202,.14);
    }
    #astApp .ast-quote footer{
      min-height:72px!important;
      margin-top:14px!important;
      padding:14px 0!important;
    }
    #astApp .ast-quote footer>span{gap:8px!important;padding:0 9px!important}
    #astApp .ast-quote footer i{
      width:24px!important;
      height:24px!important;
      flex-basis:24px!important;
    }
    #astApp .ast-quote footer i svg{width:21px!important;height:21px!important}
    #astApp .ast-quote footer b{font-size:10.5px!important}
    #astApp .ast-save-row{min-height:54px!important;margin-top:13px!important}
    #astApp .ast-save-row button{min-height:38px!important;font-size:11px!important}

    #astApp .ast-process-intro p,
    #astApp .ast-process article p{font-size:11.5px!important}
    #astApp .ast-process article strong{font-size:13px!important}

    @media(max-width:1320px){
      #astApp .ast-quote{padding-right:17px!important;padding-left:17px!important}
      #astApp .ast-price-values strong{font-size:31px!important}
      #astApp .ast-order-total strong{font-size:24px!important}
    }
    @media(max-width:520px){
      #astApp .ast-quote{padding-right:13px!important;padding-left:13px!important}
      #astApp .ast-choice-title{grid-template-columns:42px minmax(0,1fr)!important}
      #astApp .ast-choice-title>i{width:40px!important;height:40px!important}
      #astApp .ast-qty-scale-head{align-items:flex-end!important}
      #astApp #astQtyControl{
        grid-template-columns:46px 42px minmax(0,1fr) 38px 46px!important;
      }
      #astApp .ast-price-card{padding-right:13px!important;padding-left:13px!important}
      #astApp .ast-price-head{grid-template-columns:36px minmax(0,1fr) auto!important;gap:8px!important}
      #astApp .ast-price-head-icon{width:34px;height:34px}
      #astApp .ast-price-head strong{font-size:13px!important}
      #astApp .ast-price-values strong{font-size:28px!important}
      #astApp .ast-order-total strong{font-size:21px!important}
      #astApp .ast-price-values small{font-size:10.5px!important}
      #astApp .ast-price-note{font-size:10.5px!important}
    }
    @media(prefers-reduced-motion:reduce){
      #astApp *,#astApp *:before,#astApp *:after{scroll-behavior:auto!important;transition:none!important}
    }

    /*
     * V4.1 — EDITOR GRAFICO PRO ASTUCCI
     * Stessa grammatica visiva del LAB Fondo e Coperchio, con strumenti,
     * superfici e verifiche esclusivamente pertinenti agli astucci.
     * L'editor viene montato sul body per non ereditare offset o contenitori
     * trasformati dal tema e rimane sempre ancorato al viewport reale.
     */
    html body .ast-editor.ast-editor-pro{
      --aste-blue:#0877e6;
      --aste-blue-dark:#0767ca;
      --aste-navy:#10243f;
      --aste-text:#2a455f;
      --aste-muted:#708398;
      --aste-line:#d9e3ed;
      --aste-soft:#f5f8fc;
      --aste-green:#0aa678;
      --aste-rail:138px;
      --aste-props:370px;
      --aste-site-top:0px;
      position:fixed!important;
      inset:var(--aste-site-top) 0 0!important;
      z-index:2147483000!important;
      width:100vw!important;
      height:calc(100dvh - var(--aste-site-top))!important;
      grid-template-rows:74px minmax(0,1fr)!important;
      overflow:hidden!important;
      color:var(--aste-text)!important;
      background:var(--aste-soft)!important;
      font-family:Inter,"Segoe UI",Arial,sans-serif!important;
    }
    html body .ast-editor.ast-editor-pro,
    html body .ast-editor.ast-editor-pro *{box-sizing:border-box!important}
    html body .ast-editor.ast-editor-pro button,
    html body .ast-editor.ast-editor-pro input,
    html body .ast-editor.ast-editor-pro select{font:inherit}
    html body .ast-editor.ast-editor-pro button{cursor:pointer}
    html body .ast-editor.ast-editor-pro [hidden]{display:none!important}
    html:has(#astEditor.is-open),
    html:has(#astEditor.is-open) body{overflow:hidden!important}
    html body .ast-editor-pro .ast-studio-header{
      position:relative!important;
      z-index:120!important;
      min-width:0!important;
      height:74px!important;
      display:grid!important;
      grid-template-columns:minmax(245px,.78fr) minmax(450px,1.22fr) auto!important;
      align-items:center!important;
      gap:18px!important;
      padding:0 18px!important;
      overflow:visible!important;
      border:0!important;
      border-bottom:1px solid var(--aste-line)!important;
      background:#fff!important;
      box-shadow:0 3px 14px rgba(16,36,63,.035)!important;
    }
    html body .ast-editor-pro .ast-editor-brand{min-width:0!important;display:flex!important;align-items:center!important;gap:11px!important}
    html body .ast-editor-pro .ast-editor-brand>b{
      width:40px!important;height:40px!important;min-width:40px!important;
      display:grid!important;place-items:center!important;
      border:0!important;border-radius:9px!important;color:#fff!important;
      background:linear-gradient(145deg,#1185ee,#0767ca)!important;
      box-shadow:0 7px 16px rgba(8,119,230,.16)!important;
    }
    html body .ast-editor-pro .ast-editor-brand>b svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
    html body .ast-editor-pro .ast-editor-brand span{min-width:0!important;display:grid!important;gap:2px!important}
    html body .ast-editor-pro .ast-editor-brand strong{overflow:hidden!important;color:var(--aste-navy)!important;font-size:15px!important;font-weight:900!important;letter-spacing:-.02em!important;text-overflow:ellipsis!important;white-space:nowrap!important}
    html body .ast-editor-pro .ast-editor-brand small{overflow:hidden!important;color:#0768ca!important;font-size:8px!important;font-weight:900!important;letter-spacing:.075em!important;text-overflow:ellipsis!important;white-space:nowrap!important}
    html body .ast-editor-pro .ast-studio-header>nav{
      width:min(100%,630px)!important;height:100%!important;
      display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:center!important;
      margin:auto!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav>span{
      position:relative!important;min-width:0!important;
      display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;
      align-items:center!important;gap:9px!important;padding:0 13px!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav>span:not(:last-child):after{
      content:""!important;position:absolute!important;right:-7px!important;top:50%!important;width:14px!important;height:1px!important;background:#d8e2ec!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav i{
      width:27px!important;height:27px!important;display:grid!important;place-items:center!important;
      border:1px solid #cfdae5!important;border-radius:50%!important;color:#526b83!important;background:#fff!important;
      font-size:9px!important;font-style:normal!important;font-weight:900!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav .is-done i{color:#08785a!important;border-color:#9edfc8!important;background:#effaf6!important}
    html body .ast-editor-pro .ast-studio-header>nav .is-active i{color:#fff!important;border-color:var(--aste-blue)!important;background:var(--aste-blue)!important;box-shadow:0 0 0 4px rgba(8,119,230,.08)!important}
    html body .ast-editor-pro .ast-studio-header>nav b{min-width:0!important;display:grid!important;gap:2px!important;color:var(--aste-navy)!important;font-size:10px!important;font-weight:900!important;text-transform:none!important}
    html body .ast-editor-pro .ast-studio-header>nav small{overflow:hidden!important;color:var(--aste-muted)!important;font-size:7px!important;font-weight:650!important;text-overflow:ellipsis!important;white-space:nowrap!important;text-transform:none!important}
    html body .ast-editor-pro .ast-editor-actions{min-width:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important}
    html body .ast-editor-pro .ast-editor-saved{display:inline-flex!important;align-items:center!important;gap:7px!important;margin-right:2px!important;color:#167458!important;font-size:8px!important;font-weight:800!important;white-space:nowrap!important}
    html body .ast-editor-pro .ast-editor-saved i{width:7px!important;height:7px!important;border-radius:50%!important;background:#16b57f!important;box-shadow:0 0 0 3px rgba(22,181,127,.11)!important}
    html body .ast-editor-pro .ast-editor-actions button{
      min-width:38px!important;height:40px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
      margin:0!important;padding:0 11px!important;border:1px solid #d2dde8!important;border-radius:8px!important;
      color:#38536d!important;background:#fff!important;box-shadow:none!important;font-size:9px!important;font-weight:850!important;white-space:nowrap!important;
    }
    html body .ast-editor-pro .ast-editor-actions button:hover:not(:disabled){border-color:#98c5ef!important;color:#076bcf!important;background:#f4f9ff!important}
    html body .ast-editor-pro .ast-editor-actions button:disabled{opacity:.38!important;cursor:not-allowed!important}
    html body .ast-editor-pro .ast-editor-actions svg{width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
    html body .ast-editor-pro .ast-editor-actions .ast-icon-action{width:38px!important;padding:0!important}
    html body .ast-editor-pro .ast-editor-actions .ast-primary-action{color:#fff!important;border-color:var(--aste-blue)!important;background:linear-gradient(180deg,#1185ee,#0871d9)!important;box-shadow:0 6px 14px rgba(8,119,230,.15)!important}
    html body .ast-editor-pro .ast-editor-actions .ast-primary-action:hover{color:#fff!important;border-color:#0668cb!important;background:#066ed5!important}
    html body .ast-editor-pro .ast-editor-actions .ast-close-action{padding:0 10px!important;color:#536980!important;background:#fafbfd!important}
    html body .ast-editor-pro .ast-close-action b{font-size:17px!important;font-weight:500!important}

    html body .ast-editor-pro .ast-editor-body{
      position:relative!important;min-width:0!important;min-height:0!important;width:100%!important;height:100%!important;
      display:grid!important;grid-template-columns:var(--aste-rail) minmax(0,1fr) var(--aste-props)!important;
      grid-template-rows:minmax(0,1fr)!important;gap:0!important;padding:0!important;overflow:hidden!important;background:var(--aste-soft)!important;
    }
    html body .ast-editor-pro .ast-editor-tools{
      grid-column:1!important;grid-row:1!important;min-width:0!important;min-height:0!important;
      display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:3px!important;
      padding:12px 9px 14px!important;overflow-y:auto!important;overflow-x:hidden!important;
      border:0!important;border-right:1px solid var(--aste-line)!important;background:#fff!important;scrollbar-width:none!important;
    }
    html body .ast-editor-pro .ast-editor-tools::-webkit-scrollbar{display:none!important}
    html body .ast-editor-pro .ast-editor-tools>small{
      width:100%!important;margin:9px 0 2px!important;padding-left:10px!important;
      color:#93a2b2!important;font-size:7px!important;font-weight:950!important;letter-spacing:.12em!important;text-align:left!important;
    }
    html body .ast-editor-pro .ast-editor-tools>small:first-child{margin-top:0!important}
    html body .ast-editor-pro .ast-editor-tools button{
      position:relative!important;width:100%!important;min-height:43px!important;
      display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;
      padding:5px 9px!important;border:1px solid transparent!important;border-radius:7px!important;
      color:#526a83!important;background:transparent!important;box-shadow:none!important;font-size:9px!important;font-weight:850!important;
    }
    html body .ast-editor-pro .ast-editor-tools button:hover{border-color:#d8e7f5!important;color:#0868ca!important;background:#f5f9fe!important}
    html body .ast-editor-pro .ast-editor-tools button.is-active{border-color:#9bc7ef!important;color:#0868ca!important;background:#edf6ff!important;box-shadow:0 4px 12px rgba(8,119,230,.08)!important}
    html body .ast-editor-pro .ast-editor-tools button.is-active:after{content:""!important;position:absolute!important;left:-10px!important;top:7px!important;width:3px!important;height:28px!important;border-radius:0 3px 3px 0!important;background:var(--aste-blue)!important}
    html body .ast-editor-pro .ast-editor-tools button i{width:21px!important;height:21px!important;min-width:21px!important;display:grid!important;place-items:center!important;font-style:normal!important}
    html body .ast-editor-pro .ast-editor-tools button svg{width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
    html body .ast-editor-pro .ast-editor-tools button span{font-size:9px!important;font-weight:850!important;text-align:left!important}
    html body .ast-editor-pro .ast-editor-tools hr{display:none!important}

    html body .ast-editor-pro .ast-editor-stage{
      position:relative!important;grid-column:2!important;grid-row:1!important;min-width:0!important;min-height:0!important;
      display:block!important;padding:72px 20px 70px!important;overflow:hidden!important;border:0!important;
      background:radial-gradient(circle at 50% 43%,#fff 0,rgba(255,255,255,.95) 36%,rgba(246,249,252,.98) 78%),var(--aste-soft)!important;
      isolation:isolate!important;
    }
    html body .ast-editor-pro .ast-editor-topbar{
      position:absolute!important;z-index:48!important;top:14px!important;left:50%!important;
      width:min(760px,calc(100% - 80px))!important;height:46px!important;display:block!important;
      padding:0!important;overflow:hidden!important;border:1px solid #d5e0ea!important;border-radius:9px!important;
      background:#fff!important;box-shadow:0 5px 16px rgba(16,36,63,.05)!important;transform:translateX(-50%)!important;
    }
    html body .ast-editor-pro .ast-editor-topbar>div{width:100%!important;height:100%!important;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:0!important}
    html body .ast-editor-pro .ast-editor-topbar button{
      position:relative!important;height:45px!important;min-height:45px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
      padding:0 8px!important;border:0!important;border-right:1px solid #edf1f5!important;border-radius:0!important;
      color:#4b647c!important;background:#fff!important;box-shadow:none!important;font-size:8.5px!important;font-weight:900!important;
    }
    html body .ast-editor-pro .ast-editor-topbar button:last-child{border-right:0!important}
    html body .ast-editor-pro .ast-editor-topbar button i{width:6px!important;height:6px!important;display:block!important;border-radius:50%!important;background:#d8e3ed!important}
    html body .ast-editor-pro .ast-editor-topbar button.has-graphic i{background:#16ad7b!important;box-shadow:0 0 0 3px rgba(22,173,123,.1)!important}
    html body .ast-editor-pro .ast-editor-topbar button.is-active{color:#076fd8!important;background:#eef6ff!important;box-shadow:inset 0 -2px var(--aste-blue)!important}
    html body .ast-editor-pro .ast-canvas-status{
      position:absolute!important;z-index:47!important;top:66px!important;left:50%!important;height:25px!important;
      display:flex!important;align-items:center!important;gap:7px!important;padding:0 10px!important;
      border:1px solid #cce9de!important;border-radius:14px!important;color:#356f5d!important;background:rgba(255,255,255,.96)!important;
      font-size:8px!important;font-weight:780!important;white-space:nowrap!important;transform:translateX(-50%)!important;
    }
    html body .ast-editor-pro .ast-canvas-status i{width:6px!important;height:6px!important;border-radius:50%!important;background:#17b580!important;box-shadow:0 0 0 3px rgba(23,181,128,.11)!important}
    html body .ast-editor-pro .ast-editor-canvas{
      position:relative!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
      display:grid!important;place-items:center!important;overflow:hidden!important;
      border:0!important;border-radius:0!important;background:transparent!important;background-image:none!important;
    }
    html body .ast-editor-pro .ast-editor-canvas:before{
      content:""!important;position:absolute!important;inset:8%!important;z-index:-1!important;border-radius:50%!important;
      background:radial-gradient(circle,rgba(255,255,255,.92),rgba(255,255,255,0) 70%)!important;
    }
    html body .ast-editor-pro .ast-editor-canvas>svg{
      width:76%!important;height:76%!important;max-width:980px!important;max-height:calc(100% - 24px)!important;
      overflow:hidden!important;filter:drop-shadow(0 12px 24px rgba(20,54,86,.07))!important;
      transform-origin:center!important;transition:transform .18s ease,opacity .18s ease!important;touch-action:none!important;
    }
    html body .ast-editor-pro.is-focus-view .ast-editor-canvas>svg{width:60%!important;height:77%!important;max-width:720px!important}
    html body .ast-editor-pro.is-clean-view .ast-editor-topbar,
    html body .ast-editor-pro.is-clean-view .ast-canvas-status,
    html body .ast-editor-pro.is-clean-view .ast-tech-preview,
    html body .ast-editor-pro.is-clean-view .ast-canvas-dock{opacity:0!important;pointer-events:none!important}
    html body .ast-editor-pro.is-dragging-artwork .ast-editor-canvas{cursor:grabbing!important}
    html body .ast-editor-pro .ast-editor-help{
      position:absolute!important;left:50%!important;bottom:3px!important;margin:0!important;
      color:#8a9bad!important;font-size:8px!important;font-weight:650!important;transform:translateX(-50%)!important;pointer-events:none!important;
    }
    html body .ast-editor-pro .ast-canvas-empty{
      position:absolute!important;left:50%!important;top:58%!important;z-index:7!important;width:min(280px,44%)!important;
      display:none!important;gap:5px!important;padding:15px!important;border:1px dashed #a9ccec!important;border-radius:11px!important;
      color:#5f7891!important;background:rgba(255,255,255,.94)!important;text-align:center!important;transform:translate(-50%,-50%)!important;
    }
    html body .ast-editor-pro.is-surface-empty .ast-canvas-empty{display:grid!important}
    html body .ast-editor-pro .ast-canvas-empty strong{color:var(--aste-navy)!important;font-size:11px!important;font-weight:900!important}
    html body .ast-editor-pro .ast-canvas-empty span{font-size:8px!important;line-height:1.4!important}
    html body .ast-editor-pro .ast-canvas-empty button{justify-self:center!important;height:34px!important;margin-top:3px!important;padding:0 12px!important;border:0!important;border-radius:7px!important;color:#fff!important;background:var(--aste-blue)!important;font-size:8px!important;font-weight:900!important}
    html body .ast-editor-pro .ast-editor-legend{display:none!important}
    html body .ast-editor-pro .ast-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

    html body .ast-editor-pro .ast-tech-preview{
      position:absolute!important;z-index:72!important;right:18px!important;top:76px!important;width:300px!important;
      display:grid!important;grid-template-rows:52px 190px auto!important;overflow:hidden!important;
      border:1px solid #d5e1ec!important;border-radius:13px!important;background:#fff!important;
      box-shadow:0 16px 38px rgba(16,36,63,.13)!important;opacity:1!important;transform:none!important;transition:opacity .18s ease,transform .18s ease!important;
    }
    html body .ast-editor-pro:not(.is-preview-open) .ast-tech-preview{opacity:0!important;transform:translate3d(20px,8px,0)!important;pointer-events:none!important}
    html body .ast-editor-pro .ast-tech-preview>header{
      min-height:52px!important;display:flex!important;align-items:center!important;gap:7px!important;padding:0 10px!important;border:0!important;border-bottom:1px solid #e3eaf2!important;background:#fff!important;
    }
    html body .ast-editor-pro .ast-tech-preview>header span{min-width:0!important;display:grid!important;gap:2px!important;margin-right:auto!important}
    html body .ast-editor-pro .ast-tech-preview>header small{color:#0870da!important;font-size:7px!important;font-weight:950!important;letter-spacing:.07em!important}
    html body .ast-editor-pro .ast-tech-preview>header strong{overflow:hidden!important;color:var(--aste-navy)!important;font-size:11px!important;font-weight:900!important;text-overflow:ellipsis!important;white-space:nowrap!important}
    html body .ast-editor-pro .ast-tech-preview>header button{
      width:27px!important;min-width:27px!important;height:27px!important;display:grid!important;place-items:center!important;
      padding:0!important;border:1px solid #d9e3ed!important;border-radius:7px!important;color:#60768b!important;background:#f8fafc!important;font-size:13px!important;font-weight:750!important;
    }
    html body .ast-editor-pro .ast-tech-preview-body{
      position:relative!important;min-width:0!important;min-height:0!important;display:grid!important;place-items:center!important;
      padding:20px 12px 10px!important;overflow:hidden!important;
      background:linear-gradient(rgba(92,125,157,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(92,125,157,.04) 1px,transparent 1px),#f8fafc!important;background-size:22px 22px!important;
    }
    html body .ast-editor-pro .ast-tech-preview-body svg{width:88%!important;height:88%!important;overflow:hidden!important;filter:drop-shadow(0 5px 10px rgba(16,36,63,.07))!important;transition:transform .18s ease!important}
    html body .ast-editor-pro .ast-mini-sync{position:absolute!important;z-index:2!important;top:8px!important;left:9px!important;display:flex!important;align-items:center!important;gap:5px!important;color:#08775b!important;font-size:7px!important;font-weight:850!important}
    html body .ast-editor-pro .ast-mini-sync i{width:5px!important;height:5px!important;border-radius:50%!important;background:#15b47e!important}
    html body .ast-editor-pro .ast-tech-preview>footer{display:grid!important;gap:9px!important;padding:11px!important;border:0!important;border-top:1px solid #e3eaf2!important;color:inherit!important;background:#fff!important}
    html body .ast-editor-pro .ast-tech-preview>footer>div:first-child{display:flex!important;align-items:center!important;justify-content:space-between!important;padding-bottom:8px!important;border-bottom:1px solid #e9eef4!important}
    html body .ast-editor-pro .ast-tech-preview footer small{color:#75889b!important;font-size:7px!important;font-weight:850!important;letter-spacing:.04em!important}
    html body .ast-editor-pro .ast-tech-preview footer strong{color:var(--aste-navy)!important;font-size:9px!important;font-weight:900!important}
    html body .ast-editor-pro .ast-preview-metrics{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important}
    html body .ast-editor-pro .ast-preview-metrics span{display:grid!important;gap:3px!important;padding:7px!important;border:1px solid #e1e9f0!important;border-radius:7px!important;background:#fafcfe!important}
    html body .ast-editor-pro .ast-preview-legend{display:flex!important;gap:10px!important;color:#657b90!important;font-size:6.5px!important;font-weight:760!important}
    html body .ast-editor-pro .ast-preview-legend span{display:flex!important;align-items:center!important;gap:4px!important}
    html body .ast-editor-pro .ast-preview-legend i{width:15px!important;height:2px!important}
    html body .ast-editor-pro .ast-preview-legend .cut{background:#ed2f3e!important}
    html body .ast-editor-pro .ast-preview-legend .crease{border-top:2px dashed #00a250!important}
    html body .ast-editor-pro .ast-preview-legend .safe{border-top:2px dashed #8c65df!important}
    html body .ast-editor-pro #astMiniFullDieline{height:34px!important;border:0!important;border-radius:7px!important;color:#fff!important;background:var(--aste-blue)!important;font-size:8px!important;font-weight:900!important}
    html body .ast-editor-pro .ast-preview-open{
      position:absolute!important;z-index:70!important;right:18px!important;top:78px!important;height:36px!important;display:flex!important;align-items:center!important;gap:7px!important;
      padding:0 11px!important;border:1px solid #b8d8f5!important;border-radius:8px!important;color:#076bcf!important;background:#fff!important;box-shadow:0 7px 18px rgba(16,36,63,.09)!important;font-size:8px!important;font-weight:900!important;
    }
    html body .ast-editor-pro .ast-preview-open i{width:6px!important;height:6px!important;border-radius:50%!important;background:#15b47e!important}

    html body .ast-editor-pro .ast-canvas-dock{
      position:absolute!important;z-index:82!important;left:50%!important;bottom:14px!important;min-height:48px!important;
      display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;padding:5px!important;
      border:1px solid #d5e0ea!important;border-radius:10px!important;background:rgba(255,255,255,.985)!important;
      box-shadow:0 9px 24px rgba(16,36,63,.09)!important;transform:translateX(-50%)!important;
    }
    html body .ast-editor-pro .ast-canvas-dock button,
    html body .ast-editor-pro .ast-canvas-dock output{
      min-width:38px!important;height:36px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
      padding:0 10px!important;border:0!important;border-radius:7px!important;color:#4a637c!important;background:transparent!important;
      font-size:8.5px!important;font-weight:850!important;white-space:nowrap!important;
    }
    html body .ast-editor-pro .ast-canvas-dock button:hover,
    html body .ast-editor-pro .ast-canvas-dock button.is-active{color:#076bcf!important;background:#edf6ff!important}
    html body .ast-editor-pro .ast-canvas-dock>i{width:1px!important;height:24px!important;margin:0 2px!important;background:#dce5ee!important}
    html body .ast-editor-pro .ast-canvas-dock svg{width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
    html body .ast-editor-pro .ast-canvas-dock output{min-width:52px!important;padding:0 6px!important}

    html body .ast-editor-pro .ast-editor-properties{
      position:relative!important;grid-column:3!important;grid-row:1!important;min-width:0!important;min-height:0!important;
      display:flex!important;flex-direction:column!important;padding:18px 15px 0!important;overflow-y:auto!important;overflow-x:hidden!important;
      border:0!important;border-left:1px solid var(--aste-line)!important;background:#fff!important;scrollbar-width:thin!important;scrollbar-color:#c9d7e4 transparent!important;
    }
    html body .ast-editor-pro .ast-editor-properties>header{height:auto!important;min-height:58px!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;padding:0 2px 14px!important;border:0!important;border-bottom:1px solid #e6edf3!important}
    html body .ast-editor-pro .ast-editor-properties>header span{display:grid!important;gap:3px!important}
    html body .ast-editor-pro .ast-editor-properties>header small{color:#0870da!important;font-size:8px!important;font-weight:950!important;letter-spacing:.09em!important}
    html body .ast-editor-pro .ast-editor-properties>header strong{color:var(--aste-navy)!important;font-size:18px!important;font-weight:900!important;line-height:1.2!important;letter-spacing:-.025em!important}
    html body .ast-editor-pro .ast-editor-properties>header>i{margin-top:3px!important;padding:4px 7px!important;border-radius:12px!important;color:#08795b!important;background:#e6f8f1!important;font-size:7px!important;font-style:normal!important;font-weight:900!important}
    html body .ast-editor-pro .ast-property-sync{
      min-height:50px!important;display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;
      margin:12px 0 0!important;padding:8px!important;border:1px solid #cce9de!important;border-radius:9px!important;background:#f1faf7!important;
    }
    html body .ast-editor-pro .ast-property-sync>i{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;border-radius:7px!important;background:#dff5ed!important}
    html body .ast-editor-pro .ast-property-sync>i:before{content:""!important;width:7px!important;height:7px!important;border-radius:50%!important;background:#12ad79!important;box-shadow:0 0 0 4px rgba(18,173,121,.12)!important}
    html body .ast-editor-pro .ast-property-sync span{display:grid!important;gap:2px!important}
    html body .ast-editor-pro .ast-property-sync strong{color:#08775a!important;font-size:8px!important;font-weight:900!important;text-transform:uppercase!important}
    html body .ast-editor-pro .ast-property-sync small{color:#628477!important;font-size:7px!important;font-weight:650!important}
    html body .ast-editor-pro .ast-property-card{
      display:grid!important;gap:10px!important;margin-top:11px!important;padding:12px!important;
      border:1px solid #dee7ef!important;border-radius:10px!important;background:#fff!important;box-shadow:0 4px 12px rgba(16,36,63,.025)!important;
    }
    html body .ast-editor-pro .ast-property-card>header{height:auto!important;min-height:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0 0 8px!important;border:0!important;border-bottom:1px solid #edf1f5!important}
    html body .ast-editor-pro .ast-property-card>header strong{color:var(--aste-navy)!important;font-size:10px!important;font-weight:900!important}
    html body .ast-editor-pro .ast-property-card>header span{color:#0871d5!important;font-size:7px!important;font-weight:850!important}
    html body .ast-editor-pro .ast-property-card>label{display:grid!important;gap:5px!important;color:#526b82!important;font-size:8px!important;font-weight:750!important}
    html body .ast-editor-pro .ast-property-card input[type=text],
    html body .ast-editor-pro .ast-property-card input[type=number]{height:36px!important;border:1px solid #cedde9!important;border-radius:7px!important;padding:0 9px!important;color:#183b5c!important;background:#fff!important;outline:0!important;font-size:10px!important}
    html body .ast-editor-pro .ast-property-card input:focus{border-color:#7fbaf0!important;box-shadow:0 0 0 3px rgba(8,119,230,.08)!important}
    html body .ast-editor-pro .ast-property-upload{
      width:100%!important;min-height:55px!important;display:grid!important;grid-template-columns:34px minmax(0,1fr) 22px!important;align-items:center!important;gap:9px!important;
      padding:7px!important;border:1px dashed #93c6ef!important;border-radius:8px!important;color:#20547e!important;background:#f5faff!important;text-align:left!important;
    }
    html body .ast-editor-pro .ast-property-upload>i{width:32px!important;height:32px!important;display:grid!important;place-items:center!important;border-radius:7px!important;color:#0873dc!important;background:#e2f1ff!important}
    html body .ast-editor-pro .ast-property-upload svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
    html body .ast-editor-pro .ast-property-upload span{min-width:0!important;display:grid!important;gap:2px!important}
    html body .ast-editor-pro .ast-property-upload strong{overflow:hidden!important;color:#174b77!important;font-size:9px!important;font-weight:900!important;text-overflow:ellipsis!important;white-space:nowrap!important}
    html body .ast-editor-pro .ast-property-upload small{overflow:hidden!important;color:#6b8298!important;font-size:7px!important;font-weight:650!important;text-overflow:ellipsis!important;white-space:nowrap!important}
    html body .ast-editor-pro .ast-property-upload>b{width:20px!important;height:20px!important;display:grid!important;place-items:center!important;border-radius:50%!important;color:#fff!important;background:var(--aste-blue)!important;font-size:13px!important}
    html body .ast-editor-pro .ast-print-check dl{display:grid!important;gap:0!important;margin:0!important}
    html body .ast-editor-pro .ast-print-check dl>div{min-height:28px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;border-bottom:1px solid #edf1f5!important}
    html body .ast-editor-pro .ast-print-check dl>div:last-child{border-bottom:0!important}
    html body .ast-editor-pro .ast-print-check dt{color:#526b82!important;font-size:7.5px!important;font-weight:750!important}
    html body .ast-editor-pro .ast-print-check dd{display:flex!important;align-items:center!important;gap:6px!important;margin:0!important;color:#657b90!important;font-size:7.5px!important;font-weight:700!important}
    html body .ast-editor-pro .ast-print-check dd i{width:15px!important;height:15px!important;display:grid!important;place-items:center!important;border-radius:50%!important;color:#fff!important;background:#12a878!important;font-size:8px!important;font-style:normal!important}
    html body .ast-editor-pro .ast-print-check dd i.is-warn{color:#8a6410!important;background:#fff0bd!important}
    html body .ast-editor-pro .ast-print-check p{margin:0!important;color:#74879a!important;font-size:7px!important;line-height:1.4!important}
    html body .ast-editor-pro .ast-property-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
    html body .ast-editor-pro .ast-property-grid label{position:relative!important;display:grid!important;gap:4px!important;color:#63798e!important;font-size:8px!important;font-weight:750!important}
    html body .ast-editor-pro .ast-property-grid em{position:absolute!important;right:9px!important;bottom:10px!important;color:#7b8fa2!important;font-size:7px!important;font-style:normal!important}
    html body .ast-editor-pro .ast-quick-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
    html body .ast-editor-pro .ast-quick-actions button{height:34px!important;padding:0 7px!important;border:1px solid #d5e1eb!important;border-radius:7px!important;color:#4e677f!important;background:#fafcfe!important;font-size:7.5px!important;font-weight:850!important}
    html body .ast-editor-pro .ast-quick-actions button:hover{border-color:#9ec9ef!important;color:#076bcf!important;background:#f2f8fe!important}
    html body .ast-editor-pro .ast-color-row{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:7px!important}
    html body .ast-editor-pro .ast-color-row input[type=color]{width:42px!important;height:36px!important;padding:3px!important;border:1px solid #cedde9!important;border-radius:7px!important;background:#fff!important}
    html body .ast-editor-pro .ast-check-label{display:flex!important;align-items:center!important;gap:8px!important;min-height:24px!important}
    html body .ast-editor-pro .ast-check-label input{width:15px!important;height:15px!important;accent-color:var(--aste-blue)!important}
    html body .ast-editor-pro .ast-check-label span{font-size:8px!important;font-weight:750!important}
    html body .ast-editor-pro .ast-preflight{
      min-height:52px!important;display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;
      margin:11px 0 14px!important;padding:9px!important;border:1px solid #c8eadf!important;border-radius:9px!important;background:#f2fbf7!important;
    }
    html body .ast-editor-pro .ast-preflight>i{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;border-radius:50%!important;color:#fff!important;background:var(--aste-green)!important;font-size:11px!important;font-style:normal!important}
    html body .ast-editor-pro .ast-preflight span{display:grid!important;gap:2px!important}
    html body .ast-editor-pro .ast-preflight strong{color:#087657!important;font-size:8px!important;font-weight:900!important}
    html body .ast-editor-pro .ast-preflight small{color:#66877a!important;font-size:7px!important;font-weight:650!important}
    html body .ast-editor-pro .ast-properties-footer{
      position:sticky!important;z-index:4!important;bottom:0!important;margin-top:auto!important;padding:12px 0 14px!important;border:0!important;border-top:1px solid #e4ebf2!important;background:#fff!important;
    }
    html body .ast-editor-pro .ast-properties-footer button{width:100%!important;height:46px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;border:0!important;border-radius:8px!important;color:#fff!important;background:linear-gradient(180deg,#1185ee,#0871d9)!important;box-shadow:0 7px 16px rgba(8,119,230,.15)!important;font-size:10px!important;font-weight:900!important}
    html body .ast-editor-pro .ast-properties-footer span{font-size:16px!important}

    @media(max-width:1700px){
      html body .ast-editor.ast-editor-pro{--aste-rail:122px;--aste-props:330px}
      html body .ast-editor-pro .ast-studio-header{grid-template-columns:220px minmax(400px,1fr) auto!important;gap:10px!important;padding:0 12px!important}
      html body .ast-editor-pro .ast-editor-saved,
      html body .ast-editor-pro .ast-editor-actions #astCleanView span,
      html body .ast-editor-pro .ast-editor-actions #astFullDieline span{display:none!important}
      html body .ast-editor-pro .ast-editor-actions #astCleanView,
      html body .ast-editor-pro .ast-editor-actions #astFullDieline{width:38px!important;padding:0!important}
      html body .ast-editor-pro .ast-tech-preview{width:270px!important}
    }
    @media(max-width:1180px){
      html body .ast-editor.ast-editor-pro{--aste-rail:82px;--aste-props:310px;grid-template-rows:64px minmax(0,1fr)!important}
      html body .ast-editor-pro .ast-studio-header{height:64px!important;grid-template-columns:minmax(210px,1fr) auto!important}
      html body .ast-editor-pro .ast-studio-header>nav{display:none!important}
      html body .ast-editor-pro .ast-editor-actions #astCleanView,
      html body .ast-editor-pro .ast-editor-actions #astFullDieline{display:none!important}
      html body .ast-editor-pro .ast-editor-brand strong{font-size:13px!important}
      html body .ast-editor-pro .ast-editor-tools{padding:8px 6px!important}
      html body .ast-editor-pro .ast-editor-tools>small{display:none!important}
      html body .ast-editor-pro .ast-editor-tools button{min-height:49px!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;padding:4px 2px!important}
      html body .ast-editor-pro .ast-editor-tools button span{font-size:7px!important;text-align:center!important}
      html body .ast-editor-pro .ast-editor-tools button.is-active:after{left:-7px!important}
      html body .ast-editor-pro .ast-editor-stage{padding-right:14px!important;padding-left:14px!important}
      html body .ast-editor-pro .ast-tech-preview{right:12px!important;width:248px!important}
    }
    @media(max-width:900px){
      html body .ast-editor.ast-editor-pro{--aste-rail:70px}
      html body .ast-editor-pro .ast-editor-body{grid-template-columns:var(--aste-rail) minmax(0,1fr)!important}
      html body .ast-editor-pro .ast-editor-properties{
        position:absolute!important;z-index:130!important;top:0!important;right:0!important;bottom:0!important;width:min(340px,88vw)!important;
        transform:translateX(102%)!important;box-shadow:-14px 0 34px rgba(16,36,63,.13)!important;transition:transform .2s ease!important;
      }
      html body .ast-editor-pro.is-properties-open .ast-editor-properties{transform:none!important}
      html body .ast-editor-pro .ast-editor-stage{grid-column:2!important}
      html body .ast-editor-pro .ast-tech-preview{width:235px!important}
      html body .ast-editor-pro .ast-editor-topbar{width:calc(100% - 32px)!important;overflow-x:auto!important}
      html body .ast-editor-pro .ast-editor-topbar>div{min-width:610px!important}
      html body .ast-editor-pro .ast-editor-actions .ast-icon-action{display:none!important}
    }
    @media(max-width:620px){
      html body .ast-editor.ast-editor-pro{--aste-rail:62px;grid-template-rows:60px minmax(0,1fr)!important}
      html body .ast-editor-pro .ast-studio-header{height:60px!important;padding:0 8px!important;grid-template-columns:minmax(0,1fr) auto!important}
      html body .ast-editor-pro .ast-editor-brand>b{width:36px!important;height:36px!important;min-width:36px!important}
      html body .ast-editor-pro .ast-editor-brand strong{font-size:11px!important}
      html body .ast-editor-pro .ast-editor-brand small{font-size:6.5px!important}
      html body .ast-editor-pro .ast-editor-actions #astEditor3D{width:38px!important;min-width:38px!important;padding:0!important}
      html body .ast-editor-pro .ast-editor-actions #astEditor3D span{display:none!important}
      html body .ast-editor-pro .ast-editor-actions .ast-close-action{min-width:54px!important}
      html body .ast-editor-pro .ast-editor-actions .ast-close-action b{display:none!important}
      html body .ast-editor-pro .ast-editor-tools button{min-height:46px!important}
      html body .ast-editor-pro .ast-editor-tools button span{font-size:6.5px!important}
      html body .ast-editor-pro .ast-editor-stage{padding:68px 8px 64px!important}
      html body .ast-editor-pro .ast-editor-topbar{top:9px!important}
      html body .ast-editor-pro .ast-canvas-status{top:59px!important}
      html body .ast-editor-pro .ast-tech-preview{top:auto!important;right:8px!important;bottom:66px!important;width:min(265px,calc(100% - 16px))!important}
      html body .ast-editor-pro .ast-tech-preview-body{height:150px!important}
      html body .ast-editor-pro .ast-canvas-dock{bottom:8px!important}
      html body .ast-editor-pro .ast-canvas-dock #astFocusSurface span,
      html body .ast-editor-pro .ast-canvas-dock #astMoveMode span,
      html body .ast-editor-pro .ast-canvas-dock #astFit{display:none!important}
      html body .ast-editor-pro.is-focus-view .ast-editor-canvas>svg{width:82%!important;height:72%!important}
      html body .ast-editor-pro .ast-canvas-empty{width:76%!important}
    }

    /*
     * V4.2 — SCALA VISIVA ALLINEATA A FONDO E COPERCHIO V123
     * Stesse proporzioni desktop per testata, rail, proprietà, anteprima
     * tecnica, controlli e tipografia. Nessuna modifica al motore grafico.
     */
    html body .ast-editor.ast-editor-pro{
      --aste-rail:clamp(164px,8vw,215px)!important;
      --aste-props:clamp(380px,18.2vw,480px)!important;
      grid-template-rows:clamp(90px,4.2vw,112px) minmax(0,1fr)!important;
    }
    html body .ast-editor-pro .ast-studio-header{
      height:clamp(90px,4.2vw,112px)!important;
      min-height:clamp(90px,4.2vw,112px)!important;
      grid-template-columns:clamp(245px,12.2vw,370px) minmax(500px,1.05fr) minmax(620px,1.3fr)!important;
      gap:clamp(20px,1.05vw,34px)!important;
      padding:0 clamp(24px,1.25vw,42px)!important;
    }
    html body .ast-editor-pro .ast-editor-brand{gap:14px!important}
    html body .ast-editor-pro .ast-editor-brand>b{
      width:48px!important;height:48px!important;min-width:48px!important;border-radius:11px!important;
    }
    html body .ast-editor-pro .ast-editor-brand>b svg{width:25px!important;height:25px!important}
    html body .ast-editor-pro .ast-editor-brand strong{font-size:clamp(14px,.71vw,19px)!important}
    html body .ast-editor-pro .ast-editor-brand small{font-size:clamp(9px,.42vw,12px)!important}
    html body .ast-editor-pro .ast-studio-header>nav{
      width:min(100%,760px)!important;height:64px!important;
      border:1px solid #dde7ef!important;border-radius:12px!important;background:#fbfdff!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav>span{gap:11px!important;padding:0 clamp(17px,.86vw,27px)!important}
    html body .ast-editor-pro .ast-studio-header>nav i{width:31px!important;height:31px!important;font-size:11px!important}
    html body .ast-editor-pro .ast-studio-header>nav b{font-size:clamp(10px,.5vw,14px)!important}
    html body .ast-editor-pro .ast-studio-header>nav small{font-size:clamp(8px,.37vw,11px)!important}
    html body .ast-editor-pro .ast-editor-actions{gap:11px!important}
    html body .ast-editor-pro .ast-editor-actions button{
      min-width:50px!important;height:50px!important;min-height:50px!important;gap:9px!important;
      padding:0 17px!important;border-radius:10px!important;font-size:clamp(10px,.5vw,14px)!important;
    }
    html body .ast-editor-pro .ast-editor-actions .ast-icon-action{width:50px!important}
    html body .ast-editor-pro .ast-editor-actions .ast-close-action{min-width:102px!important}
    html body .ast-editor-pro .ast-editor-actions svg{width:18px!important;height:18px!important}

    html body .ast-editor-pro .ast-editor-tools{
      gap:6px!important;
      padding:clamp(15px,.8vw,24px) clamp(10px,.58vw,17px)!important;
    }
    html body .ast-editor-pro .ast-editor-tools>small{
      margin:clamp(10px,.52vw,16px) 0 3px!important;padding-left:11px!important;
      font-size:clamp(8px,.4vw,12px)!important;
    }
    html body .ast-editor-pro .ast-editor-tools button{
      min-height:clamp(50px,2.35vw,66px)!important;gap:clamp(10px,.54vw,15px)!important;
      padding:7px clamp(11px,.62vw,18px)!important;border-radius:10px!important;
    }
    html body .ast-editor-pro .ast-editor-tools button i{
      width:clamp(22px,1.1vw,30px)!important;height:clamp(22px,1.1vw,30px)!important;min-width:clamp(22px,1.1vw,30px)!important;
    }
    html body .ast-editor-pro .ast-editor-tools button svg{
      width:clamp(20px,1vw,28px)!important;height:clamp(20px,1vw,28px)!important;
    }
    html body .ast-editor-pro .ast-editor-tools button span{font-size:clamp(10px,.5vw,14px)!important}
    html body .ast-editor-pro .ast-editor-tools button.is-active:after{
      left:calc(-1 * clamp(11px,.62vw,18px))!important;top:50%!important;height:32px!important;transform:translateY(-50%)!important;
    }

    html body .ast-editor-pro .ast-editor-stage{
      padding:clamp(100px,5vw,132px) clamp(24px,1.25vw,42px) clamp(82px,4.2vw,112px)!important;
    }
    html body .ast-editor-pro .ast-editor-topbar{
      top:clamp(17px,.85vw,27px)!important;width:min(900px,calc(100% - 110px))!important;
      height:clamp(49px,2.35vw,68px)!important;border-radius:11px!important;
    }
    html body .ast-editor-pro .ast-editor-topbar button{
      height:clamp(48px,2.3vw,67px)!important;min-height:clamp(48px,2.3vw,67px)!important;
      gap:8px!important;font-size:clamp(10px,.48vw,14px)!important;
    }
    html body .ast-editor-pro .ast-editor-topbar button i{width:7px!important;height:7px!important}
    html body .ast-editor-pro .ast-canvas-status{
      top:clamp(76px,3.95vw,104px)!important;height:clamp(34px,1.7vw,48px)!important;
      gap:9px!important;padding:0 13px!important;border-radius:9px!important;font-size:clamp(9px,.43vw,13px)!important;
    }
    html body .ast-editor-pro .ast-editor-help{bottom:10px!important;font-size:clamp(9px,.42vw,13px)!important}
    html body .ast-editor-pro .ast-canvas-empty{
      width:min(380px,52%)!important;gap:8px!important;padding:clamp(18px,.9vw,28px)!important;border-radius:13px!important;
    }
    html body .ast-editor-pro .ast-canvas-empty strong{font-size:clamp(13px,.58vw,18px)!important}
    html body .ast-editor-pro .ast-canvas-empty span{font-size:clamp(10px,.44vw,14px)!important}
    html body .ast-editor-pro .ast-canvas-empty button{
      height:clamp(42px,2vw,56px)!important;padding:0 18px!important;border-radius:9px!important;font-size:clamp(10px,.48vw,14px)!important;
    }

    html body .ast-editor-pro .ast-tech-preview{
      right:clamp(20px,1.1vw,34px)!important;top:clamp(96px,4.8vw,126px)!important;
      width:clamp(440px,22.5vw,570px)!important;
      grid-template-rows:clamp(68px,3.4vw,86px) clamp(300px,16vw,430px) auto!important;
      border-radius:14px!important;box-shadow:0 18px 42px rgba(16,47,78,.14)!important;
    }
    html body .ast-editor-pro .ast-tech-preview>header{
      min-height:clamp(68px,3.4vw,86px)!important;gap:10px!important;padding:0 clamp(14px,.75vw,22px)!important;
    }
    html body .ast-editor-pro .ast-tech-preview>header small{font-size:clamp(9px,.42vw,13px)!important}
    html body .ast-editor-pro .ast-tech-preview>header strong{font-size:clamp(14px,.62vw,19px)!important}
    html body .ast-editor-pro .ast-tech-preview>header button{
      width:clamp(38px,1.9vw,50px)!important;min-width:clamp(38px,1.9vw,50px)!important;
      height:clamp(38px,1.9vw,50px)!important;border-radius:9px!important;font-size:clamp(14px,.66vw,20px)!important;
    }
    html body .ast-editor-pro .ast-tech-preview-body{padding:clamp(28px,1.4vw,42px) clamp(18px,.9vw,28px) clamp(16px,.8vw,24px)!important}
    html body .ast-editor-pro .ast-mini-sync{top:13px!important;left:15px!important;font-size:clamp(9px,.42vw,13px)!important}
    html body .ast-editor-pro .ast-tech-preview>footer{gap:14px!important;padding:clamp(15px,.78vw,23px)!important}
    html body .ast-editor-pro .ast-tech-preview>footer>div:first-child{padding-bottom:12px!important}
    html body .ast-editor-pro .ast-tech-preview footer small{font-size:clamp(9px,.42vw,13px)!important}
    html body .ast-editor-pro .ast-tech-preview footer strong{font-size:clamp(11px,.5vw,15px)!important}
    html body .ast-editor-pro .ast-preview-metrics{gap:9px!important}
    html body .ast-editor-pro .ast-preview-metrics span{gap:5px!important;padding:11px!important;border-radius:9px!important}
    html body .ast-editor-pro .ast-preview-legend{gap:14px!important;font-size:clamp(9px,.4vw,12px)!important}
    html body .ast-editor-pro #astMiniFullDieline{
      height:clamp(46px,2.2vw,60px)!important;border-radius:9px!important;font-size:clamp(10px,.48vw,14px)!important;
    }
    html body .ast-editor-pro .ast-preview-open{
      right:clamp(20px,1.1vw,34px)!important;top:clamp(96px,4.8vw,126px)!important;
      height:clamp(42px,2vw,56px)!important;padding:0 16px!important;border-radius:9px!important;font-size:clamp(10px,.48vw,14px)!important;
    }

    html body .ast-editor-pro .ast-canvas-dock{
      bottom:clamp(16px,.85vw,28px)!important;min-height:clamp(58px,2.8vw,74px)!important;
      gap:5px!important;padding:7px!important;border-radius:12px!important;
    }
    html body .ast-editor-pro .ast-canvas-dock button,
    html body .ast-editor-pro .ast-canvas-dock output{
      min-width:clamp(44px,2.1vw,58px)!important;height:clamp(46px,2.2vw,60px)!important;
      gap:8px!important;padding:0 clamp(12px,.62vw,18px)!important;border-radius:9px!important;font-size:clamp(10px,.48vw,14px)!important;
    }
    html body .ast-editor-pro .ast-canvas-dock svg{width:19px!important;height:19px!important}

    html body .ast-editor-pro .ast-editor-properties{
      padding:clamp(20px,1vw,30px) clamp(18px,.95vw,28px) 0!important;
    }
    html body .ast-editor-pro .ast-editor-properties>header{
      min-height:clamp(72px,3.5vw,94px)!important;gap:4px!important;
      padding:0 2px 15px!important;margin-bottom:0!important;
    }
    html body .ast-editor-pro .ast-editor-properties>header small{font-size:clamp(9px,.42vw,13px)!important}
    html body .ast-editor-pro .ast-editor-properties>header strong{font-size:clamp(21px,.92vw,28px)!important}
    html body .ast-editor-pro .ast-editor-properties>header>i{padding:6px 10px!important;font-size:clamp(9px,.4vw,12px)!important}
    html body .ast-editor-pro .ast-property-sync{
      min-height:clamp(52px,2.5vw,68px)!important;grid-template-columns:38px minmax(0,1fr)!important;
      gap:11px!important;margin-top:14px!important;padding:10px 12px!important;border-radius:9px!important;
    }
    html body .ast-editor-pro .ast-property-sync>i{width:36px!important;height:36px!important}
    html body .ast-editor-pro .ast-property-sync strong{font-size:clamp(9px,.42vw,13px)!important}
    html body .ast-editor-pro .ast-property-sync small{font-size:clamp(9px,.4vw,12px)!important}
    html body .ast-editor-pro .ast-property-card{
      gap:clamp(11px,.58vw,17px)!important;margin-top:clamp(13px,.7vw,19px)!important;
      padding:clamp(13px,.68vw,19px)!important;border-radius:11px!important;
    }
    html body .ast-editor-pro .ast-property-card>header{padding-bottom:11px!important}
    html body .ast-editor-pro .ast-property-card>header strong{font-size:clamp(12px,.52vw,16px)!important}
    html body .ast-editor-pro .ast-property-card>header span{font-size:clamp(9px,.42vw,13px)!important}
    html body .ast-editor-pro .ast-property-card>label{gap:7px!important;font-size:clamp(10.5px,.48vw,14px)!important}
    html body .ast-editor-pro .ast-property-card input[type=text],
    html body .ast-editor-pro .ast-property-card input[type=number]{
      height:clamp(42px,2vw,56px)!important;padding:0 12px!important;border-radius:9px!important;font-size:clamp(12px,.54vw,16px)!important;
    }
    html body .ast-editor-pro .ast-property-upload{
      min-height:clamp(64px,3.1vw,82px)!important;grid-template-columns:44px minmax(0,1fr) 28px!important;
      gap:11px!important;padding:9px 10px!important;border-radius:9px!important;
    }
    html body .ast-editor-pro .ast-property-upload>i{width:42px!important;height:42px!important;border-radius:9px!important}
    html body .ast-editor-pro .ast-property-upload svg{width:22px!important;height:22px!important}
    html body .ast-editor-pro .ast-property-upload strong{font-size:clamp(11px,.5vw,15px)!important}
    html body .ast-editor-pro .ast-property-upload small{font-size:clamp(9px,.42vw,13px)!important}
    html body .ast-editor-pro .ast-property-upload>b{width:26px!important;height:26px!important;font-size:16px!important}
    html body .ast-editor-pro .ast-print-check dl>div{min-height:clamp(34px,1.65vw,46px)!important}
    html body .ast-editor-pro .ast-print-check dt,
    html body .ast-editor-pro .ast-print-check dd{font-size:clamp(10.5px,.48vw,14px)!important}
    html body .ast-editor-pro .ast-print-check dd i{width:20px!important;height:20px!important;font-size:10px!important}
    html body .ast-editor-pro .ast-print-check p{font-size:clamp(9px,.42vw,13px)!important}
    html body .ast-editor-pro .ast-property-grid{gap:10px!important}
    html body .ast-editor-pro .ast-property-grid label{gap:6px!important;font-size:clamp(10.5px,.48vw,14px)!important}
    html body .ast-editor-pro .ast-property-grid em{right:11px!important;bottom:clamp(14px,.68vw,19px)!important;font-size:clamp(9px,.4vw,12px)!important}
    html body .ast-editor-pro .ast-quick-actions{gap:9px!important}
    html body .ast-editor-pro .ast-quick-actions button{
      height:clamp(52px,2.5vw,68px)!important;padding:0 10px!important;border-radius:9px!important;font-size:clamp(10px,.47vw,14px)!important;
    }
    html body .ast-editor-pro .ast-color-row{grid-template-columns:clamp(48px,2.3vw,62px) minmax(0,1fr)!important;gap:9px!important}
    html body .ast-editor-pro .ast-color-row input[type=color]{
      width:clamp(48px,2.3vw,62px)!important;height:clamp(42px,2vw,56px)!important;border-radius:9px!important;
    }
    html body .ast-editor-pro .ast-check-label{gap:10px!important;min-height:34px!important}
    html body .ast-editor-pro .ast-check-label input{width:18px!important;height:18px!important}
    html body .ast-editor-pro .ast-check-label span{font-size:clamp(10.5px,.48vw,14px)!important}
    html body .ast-editor-pro .ast-preflight{
      min-height:clamp(58px,2.8vw,76px)!important;grid-template-columns:38px minmax(0,1fr)!important;
      gap:11px!important;margin:clamp(13px,.7vw,19px) 0!important;padding:11px 12px!important;border-radius:10px!important;
    }
    html body .ast-editor-pro .ast-preflight>i{width:36px!important;height:36px!important;font-size:14px!important}
    html body .ast-editor-pro .ast-preflight strong{font-size:clamp(10.5px,.48vw,14px)!important}
    html body .ast-editor-pro .ast-preflight small{font-size:clamp(9px,.42vw,13px)!important}
    html body .ast-editor-pro .ast-properties-footer{padding:14px 0 clamp(18px,.9vw,28px)!important}
    html body .ast-editor-pro .ast-properties-footer button{
      height:clamp(46px,2.2vw,60px)!important;border-radius:9px!important;font-size:clamp(12px,.54vw,16px)!important;
    }

    @media(max-width:1760px){
      html body .ast-editor.ast-editor-pro{--aste-rail:154px!important;--aste-props:360px!important}
      html body .ast-editor-pro .ast-studio-header{
        grid-template-columns:220px minmax(450px,1fr) minmax(560px,1.2fr)!important;gap:15px!important;padding:0 18px!important;
      }
      html body .ast-editor-pro .ast-editor-actions{gap:8px!important}
      html body .ast-editor-pro .ast-editor-actions button{padding:0 13px!important}
      html body .ast-editor-pro .ast-tech-preview{width:400px!important;grid-template-rows:68px 300px auto!important}
    }
    @media(max-width:1380px){
      html body .ast-editor.ast-editor-pro{--aste-rail:140px!important;--aste-props:330px!important}
      html body .ast-editor-pro .ast-studio-header{
        grid-template-columns:190px minmax(390px,1fr) minmax(500px,1.2fr)!important;gap:10px!important;padding:0 12px!important;
      }
      html body .ast-editor-pro .ast-editor-tools{
        padding:12px 8px!important;
      }
      html body .ast-editor-pro .ast-editor-tools>small{display:none!important}
      html body .ast-editor-pro .ast-editor-tools button{
        min-height:46px!important;flex-direction:row!important;justify-content:flex-start!important;gap:8px!important;padding:6px 9px!important;
      }
      html body .ast-editor-pro .ast-editor-tools button span{display:block!important;font-size:10px!important;text-align:left!important}
      html body .ast-editor-pro .ast-tech-preview{width:360px!important;grid-template-rows:62px 260px auto!important}
      html body .ast-editor-pro .ast-tech-preview>header{min-height:62px!important}
      html body .ast-editor-pro .ast-editor-properties{padding:18px 15px 0!important}
    }
    @media(max-width:1080px){
      html body .ast-editor.ast-editor-pro{--aste-rail:112px!important;--aste-props:300px!important;grid-template-rows:78px minmax(0,1fr)!important}
      html body .ast-editor-pro .ast-studio-header{height:78px!important;min-height:78px!important;grid-template-columns:158px minmax(320px,1fr) auto!important}
      html body .ast-editor-pro .ast-editor-tools button{justify-content:center!important;padding:6px!important}
      html body .ast-editor-pro .ast-editor-tools button span{display:none!important}
      html body .ast-editor-pro .ast-tech-preview{max-width:42%!important}
    }
    @media(max-width:760px){
      html body .ast-editor.ast-editor-pro{--aste-rail:82px!important;--aste-props:min(88vw,360px)!important}
      html body .ast-editor-pro .ast-editor-stage{padding:82px 10px 70px!important}
      html body .ast-editor-pro .ast-tech-preview{
        top:auto!important;right:10px!important;bottom:76px!important;width:min(360px,calc(100% - 20px))!important;max-width:none!important;
        grid-template-rows:58px 210px auto!important;
      }
      html body .ast-editor-pro .ast-tech-preview>header{min-height:58px!important}
    }

    /*
     * V4.3 — STEPPER E TESTATA PROPRIETÀ PREMIUM
     * Intervento mirato sulla gerarchia dei due elementi indicati.
     * Scala V4.2, fustella, 3D, animazioni e logica restano invariati.
     */
    html body .ast-editor-pro .ast-studio-header>nav{
      position:relative!important;
      height:clamp(68px,3.05vw,78px)!important;
      gap:clamp(5px,.3vw,9px)!important;
      padding:clamp(6px,.36vw,9px)!important;
      overflow:hidden!important;
      border:1px solid #dbe6f0!important;
      border-radius:16px!important;
      background:linear-gradient(180deg,#f8fbfe 0%,#f3f7fb 100%)!important;
      box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 7px 22px rgba(16,47,78,.055)!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav>span{
      position:relative!important;
      height:100%!important;
      grid-template-columns:clamp(34px,1.55vw,42px) minmax(0,1fr)!important;
      gap:clamp(9px,.48vw,14px)!important;
      padding:0 clamp(10px,.65vw,20px)!important;
      overflow:hidden!important;
      border:1px solid transparent!important;
      border-radius:11px!important;
      background:transparent!important;
      transition:border-color .18s ease,background .18s ease,box-shadow .18s ease!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav>span:not(:last-child):after{display:none!important}
    html body .ast-editor-pro .ast-studio-header>nav i{
      position:relative!important;
      z-index:2!important;
      width:clamp(34px,1.55vw,42px)!important;
      height:clamp(34px,1.55vw,42px)!important;
      border:1px solid #cbd8e4!important;
      background:rgba(255,255,255,.92)!important;
      box-shadow:0 3px 9px rgba(16,47,78,.045)!important;
      font-size:clamp(10px,.48vw,14px)!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav b{
      position:relative!important;
      z-index:2!important;
      gap:3px!important;
      font-size:clamp(12px,.56vw,16px)!important;
      line-height:1.05!important;
      letter-spacing:-.01em!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav small{
      font-size:clamp(9px,.39vw,12px)!important;
      line-height:1.15!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav .is-done i{
      color:#08785a!important;
      border-color:#9fdcc8!important;
      background:linear-gradient(180deg,#f5fcf9,#eaf8f3)!important;
      box-shadow:0 3px 9px rgba(8,120,90,.07)!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav .is-done b{color:#24445e!important}
    html body .ast-editor-pro .ast-studio-header>nav .is-active{
      border-color:#b9dcfa!important;
      background:linear-gradient(180deg,#fff 0%,#f8fcff 100%)!important;
      box-shadow:0 8px 20px rgba(8,119,230,.10),inset 0 -3px 0 #0877e6!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav .is-active:after{
      content:""!important;
      position:absolute!important;
      top:-38px!important;
      right:-20px!important;
      width:108px!important;
      height:108px!important;
      display:block!important;
      border-radius:50%!important;
      background:radial-gradient(circle,rgba(8,119,230,.105),rgba(8,119,230,0) 68%)!important;
      pointer-events:none!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav .is-active i{
      color:#fff!important;
      border-color:#0877e6!important;
      background:linear-gradient(145deg,#168af0,#086ed6)!important;
      box-shadow:0 6px 14px rgba(8,119,230,.24),0 0 0 4px rgba(8,119,230,.08)!important;
    }
    html body .ast-editor-pro .ast-studio-header>nav .is-active b{color:#083c6d!important}

    html body .ast-editor-pro .ast-editor-properties>header.ast-properties-hero{
      position:relative!important;
      min-height:clamp(112px,5vw,132px)!important;
      display:grid!important;
      grid-template-columns:clamp(48px,2.55vw,64px) minmax(0,1fr) auto!important;
      align-items:center!important;
      gap:clamp(11px,.65vw,18px)!important;
      margin:0!important;
      padding:clamp(14px,.78vw,22px)!important;
      overflow:hidden!important;
      border:1px solid #d9e8f5!important;
      border-radius:15px!important;
      background:linear-gradient(135deg,#f4f9ff 0%,#fbfdff 58%,#fff 100%)!important;
      box-shadow:0 10px 26px rgba(16,47,78,.07),inset 0 1px 0 #fff!important;
    }
    html body .ast-editor-pro .ast-editor-properties>header.ast-properties-hero:before{
      content:""!important;
      position:absolute!important;
      left:0!important;
      top:18px!important;
      bottom:18px!important;
      width:4px!important;
      border-radius:0 5px 5px 0!important;
      background:linear-gradient(180deg,#1490f2,#0769ce)!important;
      box-shadow:0 0 18px rgba(8,119,230,.22)!important;
    }
    html body .ast-editor-pro .ast-editor-properties>header.ast-properties-hero:after{
      content:""!important;
      position:absolute!important;
      right:-56px!important;
      bottom:-72px!important;
      width:190px!important;
      height:190px!important;
      border-radius:50%!important;
      background:radial-gradient(circle,rgba(8,119,230,.075),rgba(8,119,230,0) 70%)!important;
      pointer-events:none!important;
    }
    html body .ast-editor-pro .ast-properties-surface-icon{
      position:relative!important;
      z-index:2!important;
      width:clamp(48px,2.55vw,64px)!important;
      height:clamp(48px,2.55vw,64px)!important;
      display:grid!important;
      place-items:center!important;
      border:1px solid #b9daf7!important;
      border-radius:13px!important;
      color:#0872db!important;
      background:linear-gradient(145deg,#fff,#e9f5ff)!important;
      box-shadow:0 7px 17px rgba(8,119,230,.10)!important;
    }
    html body .ast-editor-pro .ast-properties-surface-icon svg{
      width:clamp(24px,1.2vw,32px)!important;
      height:clamp(24px,1.2vw,32px)!important;
      fill:none!important;
      stroke:currentColor!important;
      stroke-width:1.55!important;
      stroke-linecap:round!important;
      stroke-linejoin:round!important;
    }
    html body .ast-editor-pro .ast-properties-hero-copy{
      position:relative!important;
      z-index:2!important;
      min-width:0!important;
      display:grid!important;
      gap:clamp(3px,.22vw,7px)!important;
    }
    html body .ast-editor-pro .ast-properties-hero-copy>small{
      display:flex!important;
      align-items:center!important;
      gap:7px!important;
      color:#0870da!important;
      font-size:clamp(9px,.4vw,12px)!important;
      font-weight:950!important;
      letter-spacing:.105em!important;
      line-height:1!important;
    }
    html body .ast-editor-pro .ast-properties-hero-copy>small>i{
      width:clamp(14px,.7vw,20px)!important;
      height:3px!important;
      border-radius:4px!important;
      background:linear-gradient(90deg,#0877e6,#56b4f4)!important;
    }
    html body .ast-editor-pro .ast-properties-hero-copy>strong{
      overflow:hidden!important;
      color:#102d49!important;
      font-size:clamp(21px,1.02vw,30px)!important;
      font-weight:900!important;
      line-height:1.05!important;
      letter-spacing:-.035em!important;
      text-overflow:ellipsis!important;
      white-space:nowrap!important;
    }
    html body .ast-editor-pro .ast-properties-hero-copy>em{
      overflow:hidden!important;
      color:#6d8397!important;
      font-size:clamp(9px,.42vw,13px)!important;
      font-style:normal!important;
      font-weight:700!important;
      line-height:1.2!important;
      text-overflow:ellipsis!important;
      white-space:nowrap!important;
    }
    html body .ast-editor-pro .ast-editor-properties>header.ast-properties-hero>.ast-properties-live{
      position:relative!important;
      z-index:3!important;
      align-self:start!important;
      min-height:clamp(28px,1.45vw,38px)!important;
      display:inline-flex!important;
      align-items:center!important;
      gap:7px!important;
      margin:0!important;
      padding:0 clamp(9px,.48vw,14px)!important;
      border:1px solid #bde7d8!important;
      border-radius:999px!important;
      color:#08785a!important;
      background:rgba(255,255,255,.88)!important;
      box-shadow:0 5px 12px rgba(8,120,90,.065)!important;
      font-size:clamp(9px,.4vw,12px)!important;
      font-style:normal!important;
      font-weight:950!important;
      letter-spacing:.045em!important;
    }
    html body .ast-editor-pro .ast-properties-live>b{
      width:7px!important;
      height:7px!important;
      border-radius:50%!important;
      background:#12ad79!important;
      box-shadow:0 0 0 4px rgba(18,173,121,.11)!important;
    }
    html body .ast-editor-pro .ast-properties-hero+.ast-property-sync{
      min-height:clamp(50px,2.35vw,62px)!important;
      margin-top:clamp(10px,.55vw,16px)!important;
      border-color:#d5e9e1!important;
      background:linear-gradient(90deg,#f4fbf8,#fbfefd)!important;
      box-shadow:inset 3px 0 0 #16ad7c!important;
    }

    @media(max-width:1760px){
      html body .ast-editor-pro .ast-studio-header>nav{
        height:60px!important;
        padding:5px!important;
        gap:4px!important;
        border-radius:13px!important;
      }
      html body .ast-editor-pro .ast-studio-header>nav>span{
        grid-template-columns:34px minmax(0,1fr)!important;
        gap:8px!important;
        padding:0 9px!important;
        border-radius:9px!important;
      }
      html body .ast-editor-pro .ast-studio-header>nav i{width:34px!important;height:34px!important}
      html body .ast-editor-pro .ast-editor-properties>header.ast-properties-hero{
        min-height:104px!important;
        grid-template-columns:50px minmax(0,1fr) auto!important;
        gap:11px!important;
        padding:13px!important;
      }
      html body .ast-editor-pro .ast-properties-surface-icon{width:50px!important;height:50px!important}
    }
    @media(max-width:1380px){
      html body .ast-editor-pro .ast-studio-header>nav small{display:none!important}
      html body .ast-editor-pro .ast-studio-header>nav b{font-size:11px!important}
      html body .ast-editor-pro .ast-editor-properties>header.ast-properties-hero{
        min-height:94px!important;
        grid-template-columns:42px minmax(0,1fr) auto!important;
        gap:9px!important;
        padding:11px!important;
        border-radius:12px!important;
      }
      html body .ast-editor-pro .ast-properties-surface-icon{width:42px!important;height:42px!important;border-radius:10px!important}
      html body .ast-editor-pro .ast-properties-surface-icon svg{width:23px!important;height:23px!important}
      html body .ast-editor-pro .ast-properties-hero-copy>strong{font-size:20px!important}
      html body .ast-editor-pro .ast-properties-hero-copy>em{display:none!important}
      html body .ast-editor-pro .ast-editor-properties>header.ast-properties-hero>.ast-properties-live{
        min-height:28px!important;padding:0 8px!important;font-size:9px!important;
      }
    }
    @media(max-width:760px){
      html body .ast-editor-pro .ast-editor-properties>header.ast-properties-hero{
        min-height:88px!important;
        grid-template-columns:40px minmax(0,1fr) auto!important;
        padding:10px!important;
      }
      html body .ast-editor-pro .ast-properties-surface-icon{width:40px!important;height:40px!important}
      html body .ast-editor-pro .ast-properties-hero-copy>small{font-size:8px!important}
      html body .ast-editor-pro .ast-properties-hero-copy>strong{font-size:18px!important}
      html body .ast-editor-pro .ast-editor-properties>header.ast-properties-hero>.ast-properties-live{font-size:8px!important}
    }

    /*
     * V5.4.0 — quattro famiglie senza comprimere le anteprime.
     * La matrice 2×2 mantiene ogni snapshot leggibile anche nella colonna
     * misure più stretta e lascia spazio ai nomi tecnici completi.
     */
    #astApp .ast-family-selector{
      grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    /*
     * V5.5.0 — rifinitura mirata dell'interfaccia.
     * Solo tre interventi: barra comandi 3D più leggibile, percorso
     * produttivo più compatto e rimozione del footer vuoto del tema.
     */
    #astApp .ast-stage{
      grid-template-rows:clamp(620px,58vh,720px) 41px 104px!important;
    }
    #astApp .ast-viewbar{
      min-height:104px!important;
      grid-template-columns:minmax(360px,1fr) minmax(190px,230px) minmax(240px,290px)!important;
      gap:8px!important;
      padding:8px!important;
      border-top:1px solid #d6e4ef!important;
      background:linear-gradient(180deg,#f8fbfe 0%,#f3f8fc 100%)!important;
    }
    #astApp .ast-view-group,
    #astApp .ast-switch,
    #astApp .ast-export{
      min-width:0!important;
      min-height:86px!important;
      padding:9px 11px!important;
      border:1px solid #d8e5ef!important;
      border-radius:8px!important;
      background:#fff!important;
      box-shadow:0 3px 10px rgba(20,57,89,.035)!important;
    }
    #astApp .ast-view-group>small,
    #astApp .ast-switch small{
      margin-bottom:7px!important;
      color:#526b82!important;
      font-size:9px!important;
      font-weight:900!important;
      letter-spacing:.055em!important;
    }
    #astApp .ast-view-group>div{gap:7px!important}
    #astApp .ast-view-group button{
      height:43px!important;
      border-color:#cedeea!important;
      border-radius:6px!important;
      color:#294b69!important;
      background:#f9fbfd!important;
      font-size:10.5px!important;
      font-weight:900!important;
      letter-spacing:.01em!important;
      transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease!important;
    }
    #astApp .ast-view-group button:hover{
      border-color:#7eb9ec!important;
      color:#086dce!important;
      background:#f0f8ff!important;
      transform:translateY(-1px);
    }
    #astApp .ast-view-group button.is-active{
      border-color:#0877e6!important;
      color:#fff!important;
      background:linear-gradient(180deg,#1689f1 0%,#0874dc 100%)!important;
      box-shadow:0 5px 12px rgba(8,119,230,.19)!important;
    }
    #astApp .ast-switch{
      grid-template-columns:minmax(0,1fr) 42px!important;
      gap:10px!important;
      align-content:center!important;
    }
    #astApp .ast-switch strong{
      color:#193c5d!important;
      font-size:12px!important;
      font-weight:900!important;
    }
    #astApp .ast-switch>i{width:42px!important;height:23px!important}
    #astApp .ast-switch>i:after{top:3px!important;left:3px!important;width:17px!important;height:17px!important}
    #astApp .ast-switch input:checked+i:after{left:22px!important}
    #astApp .ast-export{
      grid-template-columns:38px minmax(0,1fr) 34px!important;
      gap:10px!important;
      align-content:center!important;
      text-align:left!important;
    }
    #astApp .ast-export>span{
      width:38px!important;
      height:38px!important;
      border-color:#bcd9f1!important;
      border-radius:7px!important;
      background:#eef7ff!important;
    }
    #astApp .ast-export>span svg{width:20px!important;height:20px!important}
    #astApp .ast-export b{color:#173b5c!important;font-size:12px!important;font-weight:900!important}
    #astApp .ast-export small{margin-top:2px!important;color:#647d94!important;font-size:9px!important;font-weight:600!important}
    #astApp .ast-export>em{
      width:34px!important;
      height:34px!important;
      border-color:#bcd9f1!important;
      border-radius:50%!important;
      background:#f4f9fe!important;
      font-size:17px!important;
      font-weight:900!important;
    }
    #astApp .ast-process{
      grid-template-columns:minmax(275px,1.12fr) repeat(3,minmax(220px,1fr))!important;
      gap:7px!important;
      margin-top:8px!important;
      padding:9px!important;
      border-top-width:2px!important;
      border-radius:6px!important;
    }
    #astApp .ast-process-intro{
      min-width:0!important;
      display:grid!important;
      grid-template-columns:34px minmax(0,1fr) auto!important;
      grid-template-rows:auto auto!important;
      align-items:center!important;
      column-gap:9px!important;
      row-gap:1px!important;
      padding:5px 6px!important;
    }
    #astApp .ast-process-intro>span{
      grid-row:1/3!important;
      width:32px!important;
      height:32px!important;
      margin:0!important;
    }
    #astApp .ast-process-intro>small{grid-column:2!important;font-size:8.5px!important;line-height:1.1!important}
    #astApp .ast-process-intro h2{
      grid-column:2!important;
      margin:1px 0 0!important;
      font-size:16px!important;
      line-height:1.12!important;
      white-space:nowrap!important;
    }
    #astApp .ast-process-intro p{display:none!important}
    #astApp .ast-process-intro button{
      grid-column:3!important;
      grid-row:1/3!important;
      min-width:118px!important;
      height:34px!important;
      margin:0!important;
      padding:0 11px!important;
      font-size:9.5px!important;
      white-space:nowrap!important;
    }
    #astApp .ast-process article{
      min-height:64px!important;
      grid-template-columns:30px minmax(0,1fr)!important;
      gap:8px!important;
      padding:9px 10px!important;
      border-radius:5px!important;
    }
    #astApp .ast-process article>b{top:4px!important;right:6px!important;font-size:8px!important}
    #astApp .ast-process article>i{width:29px!important;height:29px!important}
    #astApp .ast-process article strong{font-size:11px!important;line-height:1.2!important}
    #astApp .ast-process article p{
      margin-top:2px!important;
      font-size:9px!important;
      line-height:1.25!important;
    }
    html body.sagomato-lab-astucci-page #footer,
    html body.sagomato-lab-astucci-page .footer-wrapper,
    html body.sagomato-lab-astucci-page .absolute-footer{
      display:none!important;
    }
    html body.sagomato-lab-astucci-page,
    html body.sagomato-lab-astucci-page #wrapper,
    html body.sagomato-lab-astucci-page #main{
      background:#fff!important;
    }
    @media(max-width:1260px){
      #astApp .ast-viewbar{grid-template-columns:minmax(330px,1fr) 190px 240px!important}
      #astApp .ast-process{grid-template-columns:1fr 1fr!important}
    }
    @media(max-width:760px){
      #astApp .ast-stage{grid-template-rows:500px 41px auto!important}
      #astApp .ast-viewbar{grid-template-columns:1fr!important;min-height:0!important}
      #astApp .ast-process{grid-template-columns:1fr!important;margin:8px!important}
      #astApp .ast-process-intro{grid-template-columns:34px minmax(0,1fr)!important}
      #astApp .ast-process-intro button{grid-column:1/-1!important;grid-row:auto!important;margin-top:5px!important}
    }

    /*
     * V5.6.0 — misure centrate, cartoncino unico e finiture nel preventivo.
     */
    #astApp .ast-fields .ast-input input{
      padding:0 4px!important;
      text-align:center!important;
      font-variant-numeric:tabular-nums;
    }
    #astApp .ast-fields .ast-input input[type=number]{appearance:textfield}
    #astApp .ast-fields .ast-input input[type=number]::-webkit-inner-spin-button,
    #astApp .ast-fields .ast-input input[type=number]::-webkit-outer-spin-button{
      margin:0;
      appearance:none;
    }
    #astApp .ast-input-board-fixed{
      cursor:default!important;
      background:#fbfcfe!important;
    }
    #astApp .ast-input-board-fixed input{
      color:#163b5d!important;
      cursor:default!important;
    }
    #astApp .ast-input-board-fixed:hover{border-color:#bcd2e5!important}
    #astApp .ast-lamination{
      margin-top:13px;
      padding:12px;
      border:1px solid #d3e2ed;
      border-radius:9px;
      background:linear-gradient(145deg,#fff 0%,#f8fbfe 100%);
      box-shadow:0 5px 16px rgba(19,56,89,.04);
    }
    #astApp .ast-lamination>header{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      margin-bottom:9px;
    }
    #astApp .ast-lamination>header>span{display:grid;gap:1px}
    #astApp .ast-lamination>header small{
      color:#0872d6!important;
      font-size:8.5px!important;
      font-weight:900!important;
      letter-spacing:.065em;
    }
    #astApp .ast-lamination>header strong{
      color:#173b5d;
      font-size:13px;
      line-height:1.15;
    }
    #astApp .ast-lamination>header em{
      min-height:23px;
      display:grid;
      place-items:center;
      padding:0 8px;
      border-radius:20px;
      color:#5d7489;
      background:#eef4f8;
      font-size:8px;
      font-style:normal;
      font-weight:850;
      white-space:nowrap;
    }
    #astApp .ast-lamination-options{
      display:grid;
      grid-template-columns:repeat(3,minmax(0,1fr));
      gap:7px;
    }
    #astApp .ast-lamination-options>label{
      position:relative;
      min-width:0;
      display:grid;
      grid-template-rows:42px auto;
      gap:7px;
      padding:7px;
      overflow:hidden;
      border:1px solid #d8e4ed;
      border-radius:7px;
      background:#fff;
      cursor:pointer;
      transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
    }
    #astApp .ast-lamination-options>label:hover{
      border-color:#83bbed;
      transform:translateY(-1px);
    }
    #astApp .ast-lamination-options>label.is-active{
      border-color:#0878e8;
      box-shadow:0 0 0 2px rgba(8,120,232,.10),0 5px 12px rgba(8,92,167,.08);
    }
    #astApp .ast-lamination-options input{
      position:absolute;
      width:1px;
      height:1px;
      opacity:0;
      pointer-events:none;
    }
    #astApp .ast-finish-sample{
      position:relative;
      height:42px;
      display:block;
      overflow:hidden;
      border:1px solid rgba(14,48,77,.12);
      border-radius:5px;
      background-color:#247ec5;
      isolation:isolate;
    }
    #astApp .ast-finish-sample:before,
    #astApp .ast-finish-sample:after{
      content:"";
      position:absolute;
      inset:0;
      pointer-events:none;
    }
    #astApp .ast-finish-sample>i{
      position:absolute;
      z-index:2;
      left:8px;
      bottom:7px;
      width:30px;
      height:5px;
      border-radius:5px;
      background:rgba(255,255,255,.83);
      box-shadow:0 -9px 0 -1px rgba(255,255,255,.42);
    }
    #astApp .ast-finish-matte{
      background:linear-gradient(135deg,#4d99cf 0%,#327eb6 48%,#286eaa 100%);
    }
    #astApp .ast-finish-matte:before{
      opacity:.28;
      background-image:radial-gradient(rgba(255,255,255,.55) .55px,transparent .7px);
      background-size:3px 3px;
    }
    #astApp .ast-finish-matte:after{
      background:linear-gradient(115deg,rgba(255,255,255,.12),transparent 58%);
    }
    #astApp .ast-finish-gloss{
      background:linear-gradient(135deg,#178be7 0%,#0870ce 55%,#0559ad 100%);
    }
    #astApp .ast-finish-gloss:before{
      left:-32%;
      right:auto;
      width:65%;
      transform:skewX(-22deg);
      background:linear-gradient(90deg,transparent,rgba(255,255,255,.76),rgba(255,255,255,.12));
      filter:blur(.2px);
    }
    #astApp .ast-finish-gloss:after{
      inset:2px 3px auto;
      height:1px;
      background:rgba(255,255,255,.72);
    }
    #astApp .ast-finish-softtouch{
      background:radial-gradient(circle at 72% 18%,#4d7093 0%,#274d70 36%,#173b5b 100%);
    }
    #astApp .ast-finish-softtouch:before{
      opacity:.22;
      background-image:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.18) 48%,transparent 66%);
      filter:blur(4px);
    }
    #astApp .ast-finish-softtouch:after{
      opacity:.18;
      background-image:radial-gradient(rgba(255,255,255,.45) .45px,transparent .6px);
      background-size:2px 2px;
    }
    #astApp .ast-lamination-options>label>span:nth-of-type(2){
      min-width:0;
      display:grid;
      gap:1px;
    }
    #astApp .ast-lamination-options strong{
      overflow:hidden;
      color:#1b405f;
      font-size:10.5px;
      line-height:1.15;
      text-overflow:ellipsis;
      white-space:nowrap;
    }
    #astApp .ast-lamination-options small{
      min-height:22px;
      color:#6a8093!important;
      font-size:7.5px!important;
      line-height:1.25!important;
    }
    #astApp .ast-finish-check{
      position:absolute;
      z-index:3;
      top:4px;
      right:4px;
      width:18px;
      height:18px;
      display:grid;
      place-items:center;
      border:2px solid #fff;
      border-radius:50%;
      color:#fff;
      background:#0878e8;
      box-shadow:0 2px 6px rgba(6,70,130,.22);
      font-size:9px;
      font-style:normal;
      font-weight:900;
      opacity:0;
      transform:scale(.75);
      transition:.16s ease;
    }
    #astApp .ast-lamination-options>label.is-active .ast-finish-check{
      opacity:1;
      transform:scale(1);
    }
    #astApp .ast-lamination>p{
      display:flex;
      align-items:center;
      gap:6px;
      margin:8px 0 0;
      color:#708497;
      font-size:8.5px;
      line-height:1.25;
    }
    #astApp .ast-lamination>p i{
      width:16px;
      height:16px;
      display:grid;
      place-items:center;
      flex:0 0 16px;
      border:1px solid #b9d7ee;
      border-radius:50%;
      color:#0878e8;
      background:#fff;
      font-size:8px;
      font-style:normal;
      font-weight:900;
    }
    #astApp .ast-price-finish{
      min-height:31px;
      display:flex;
      align-items:center;
      gap:7px;
      margin:11px 0 0;
      padding:6px 9px;
      border:1px solid #cce7dc;
      border-radius:6px;
      color:#087656;
      background:#f0faf6;
      font-size:10px;
      font-weight:850;
    }
    #astApp .ast-price-finish i{
      width:17px;
      height:17px;
      display:grid;
      place-items:center;
      border-radius:50%;
      color:#fff;
      background:#08a477;
      font-size:9px;
      font-style:normal;
    }
    @media(max-width:1380px){
      #astApp .ast-lamination{padding:10px}
      #astApp .ast-lamination-options{gap:5px}
      #astApp .ast-lamination-options>label{padding:6px}
      #astApp .ast-lamination-options small{font-size:7px!important}
    }
    @media(max-width:760px){
      #astApp .ast-lamination-options>label{grid-template-rows:48px auto}
      #astApp .ast-finish-sample{height:48px}
      #astApp .ast-lamination-options strong{font-size:11px}
      #astApp .ast-lamination-options small{font-size:8px!important}
    }

    /*
     * V5.6.2 — Plastificazione, Versione A premium.
     * Lo stesso soggetto viene mostrato sulle tre finiture: cambia soltanto
     * la risposta della superficie alla luce. Gerarchia e testi sono
     * dimensionati per restare leggibili anche nella colonna preventivo.
     */
    #astApp .ast-lamination{
      margin-top:13px!important;
      padding:13px!important;
      border:1px solid #cbddea!important;
      border-radius:9px!important;
      background:#fff!important;
      box-shadow:none!important;
    }
    #astApp .ast-lamination>header{
      align-items:flex-start!important;
      margin-bottom:11px!important;
    }
    #astApp .ast-lamination>header>span{
      display:grid!important;
      gap:2px!important;
      min-width:0;
    }
    #astApp .ast-lamination>header small{
      font-size:9.5px!important;
      line-height:1.1!important;
      letter-spacing:.055em!important;
    }
    #astApp .ast-lamination>header strong{
      color:#092d4e!important;
      font-size:16px!important;
      line-height:1.15!important;
      letter-spacing:-.015em;
    }
    #astApp .ast-lamination>header b{
      color:#6c8295!important;
      font-size:9.5px!important;
      font-weight:650!important;
      line-height:1.3!important;
    }
    #astApp .ast-lamination>header em{
      min-height:25px!important;
      padding:0 9px!important;
      color:#526b80!important;
      background:#eef4f8!important;
      font-size:9px!important;
      font-weight:850!important;
    }
    #astApp .ast-lamination-options{
      grid-template-columns:repeat(3,minmax(0,1fr))!important;
      gap:7px!important;
    }
    #astApp .ast-lamination-options>label{
      grid-template-rows:62px auto!important;
      gap:8px!important;
      padding:7px!important;
      border:1px solid #cfdee9!important;
      border-radius:7px!important;
      background:#fff!important;
      box-shadow:none!important;
      transform:none!important;
      transition:border-color .16s ease,box-shadow .16s ease!important;
    }
    #astApp .ast-lamination-options>label:hover{
      border-color:#76afe2!important;
      box-shadow:0 0 0 1px rgba(8,120,232,.05)!important;
      transform:none!important;
    }
    #astApp .ast-lamination-options>label.is-active{
      border-color:#0878e8!important;
      box-shadow:inset 0 0 0 1px #0878e8!important;
    }
    #astApp .ast-lamination-options>label:focus-within{
      outline:2px solid rgba(8,120,232,.32);
      outline-offset:2px;
    }
    #astApp .ast-finish-sample{
      height:62px!important;
      border:1px solid rgba(11,55,91,.14)!important;
      border-radius:5px!important;
      background:#0b70bd!important;
      box-shadow:none!important;
    }
    #astApp .ast-finish-sample>svg{
      position:absolute;
      z-index:1;
      inset:0;
      width:100%;
      height:100%;
      display:block;
    }
    #astApp .ast-proof-base{fill:#0b70bd}
    #astApp .ast-proof-panel{fill:#4e9bcf}
    #astApp .ast-proof-primary{fill:rgba(255,255,255,.92)}
    #astApp .ast-proof-secondary{fill:rgba(255,255,255,.55)}
    #astApp .ast-proof-rule{
      fill:none;
      stroke:rgba(255,255,255,.65);
      stroke-width:1.2;
    }
    #astApp .ast-finish-sample:before,
    #astApp .ast-finish-sample:after{
      z-index:2!important;
      left:0!important;
      right:0!important;
      top:0!important;
      bottom:0!important;
      width:auto!important;
      height:auto!important;
      transform:none!important;
      filter:none!important;
      box-shadow:none!important;
    }
    #astApp .ast-finish-matte:before{
      opacity:.17!important;
      background-image:radial-gradient(rgba(255,255,255,.72) .45px,transparent .65px)!important;
      background-size:3px 3px!important;
    }
    #astApp .ast-finish-matte:after{
      opacity:1!important;
      background:linear-gradient(110deg,rgba(255,255,255,.09),transparent 58%)!important;
    }
    #astApp .ast-finish-gloss:before{
      opacity:1!important;
      background:linear-gradient(111deg,transparent 29%,rgba(255,255,255,.04) 30%,rgba(255,255,255,.52) 43%,rgba(255,255,255,.08) 55%,transparent 56%)!important;
    }
    #astApp .ast-finish-gloss:after{
      opacity:1!important;
      background:linear-gradient(180deg,rgba(255,255,255,.42),transparent 3px)!important;
    }
    #astApp .ast-finish-softtouch:before{
      opacity:1!important;
      background:radial-gradient(circle at 69% 28%,rgba(255,255,255,.15),transparent 46%)!important;
    }
    #astApp .ast-finish-softtouch:after{
      opacity:.13!important;
      background-image:radial-gradient(rgba(255,255,255,.65) .42px,transparent .62px)!important;
      background-size:2.5px 2.5px!important;
    }
    #astApp .ast-lamination-options>label>span.ast-finish-copy{
      min-width:0!important;
      display:grid!important;
      gap:4px!important;
    }
    #astApp .ast-finish-copy>span{
      min-width:0;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:5px;
    }
    #astApp .ast-lamination-options strong{
      overflow:visible!important;
      color:#123b5d!important;
      font-size:12px!important;
      line-height:1.15!important;
      text-overflow:clip!important;
      white-space:normal!important;
    }
    #astApp .ast-lamination-options small{
      min-height:36px!important;
      color:#60788d!important;
      font-size:9.5px!important;
      font-weight:600!important;
      line-height:1.3!important;
    }
    #astApp .ast-finish-copy>em{
      display:flex;
      align-items:center;
      flex-wrap:wrap;
      gap:3px 5px;
      color:#5d7589;
      font-size:8.5px;
      font-style:normal;
      font-weight:800;
      line-height:1.1;
    }
    #astApp .ast-finish-copy>em b{
      width:5px;
      height:5px;
      display:block;
      flex:0 0 5px;
      border-radius:50%;
      background:#62a5d8;
    }
    #astApp .ast-finish-check{
      position:static!important;
      z-index:auto!important;
      top:auto!important;
      right:auto!important;
      width:18px!important;
      height:18px!important;
      flex:0 0 18px;
      border:0!important;
      box-shadow:none!important;
      font-size:10px!important;
      opacity:0!important;
      transform:none!important;
    }
    #astApp .ast-lamination-options>label.is-active .ast-finish-check{
      opacity:1!important;
      transform:none!important;
    }
    #astApp .ast-lamination>p{
      gap:5px!important;
      margin:10px 0 0!important;
      padding-top:9px;
      border-top:1px solid #dfe9f1;
      color:#6e8294!important;
      font-size:9.5px!important;
      line-height:1.25!important;
    }
    #astApp .ast-lamination>p i{
      width:18px!important;
      height:18px!important;
      flex:0 0 18px!important;
      border-color:#bde7d9!important;
      color:#087656!important;
      background:#ecf8f4!important;
      font-size:9px!important;
    }
    #astApp .ast-lamination>p strong{
      color:#284c68;
      font-size:10px;
    }
    #astApp .ast-lamination>p span{white-space:nowrap}
    @media(max-width:1380px){
      #astApp .ast-lamination{padding:12px!important}
      #astApp .ast-lamination-options{gap:6px!important}
      #astApp .ast-lamination-options>label{padding:6px!important}
      #astApp .ast-lamination-options strong{font-size:11.5px!important}
      #astApp .ast-lamination-options small{font-size:9px!important}
    }
    @media(max-width:520px){
      #astApp .ast-lamination-options{grid-template-columns:1fr!important}
      #astApp .ast-lamination-options>label{
        grid-template-columns:120px minmax(0,1fr)!important;
        grid-template-rows:auto!important;
        align-items:center!important;
      }
      #astApp .ast-finish-sample{height:72px!important}
      #astApp .ast-lamination-options small{min-height:0!important}
    }

    /*
     * V5.6.3 — finiture e supplementi leggibili nel preventivo.
     */
    #astApp .ast-lamination-options>label{
      grid-template-rows:74px auto!important;
    }
    #astApp .ast-finish-sample{
      height:74px!important;
    }
    #astApp .ast-finish-cost{
      position:absolute;
      z-index:4;
      right:6px;
      bottom:6px;
      min-height:21px;
      display:flex;
      align-items:center;
      justify-content:center;
      padding:0 7px;
      border:1px solid rgba(255,255,255,.42);
      border-radius:12px;
      color:#fff;
      background:rgba(6,47,81,.84);
      box-shadow:0 1px 3px rgba(7,42,70,.15);
      font-size:8.5px;
      font-weight:900;
      line-height:1;
      letter-spacing:.005em;
      white-space:nowrap;
      backdrop-filter:blur(2px);
    }
    #astApp .ast-finish-cost.is-included{
      border-color:rgba(255,255,255,.55);
      background:rgba(5,124,89,.88);
    }
    #astApp .ast-lamination-options small{
      min-height:40px!important;
      font-size:10px!important;
      line-height:1.34!important;
    }
    #astApp .ast-finish-copy>em{
      font-size:9px!important;
    }
    #astApp .ast-price-finish{
      min-height:44px!important;
      display:grid!important;
      grid-template-columns:20px minmax(0,1fr) auto!important;
      align-items:center!important;
      gap:8px!important;
      margin:11px 0 0!important;
      padding:7px 9px!important;
      border:1px solid #c9ddeb!important;
      border-radius:7px!important;
      color:#173e5e!important;
      background:#f6fafe!important;
      font-size:inherit!important;
      font-weight:inherit!important;
    }
    #astApp .ast-price-finish>i{
      width:20px!important;
      height:20px!important;
      border-radius:50%!important;
      color:#fff!important;
      background:#08a477!important;
      font-size:10px!important;
    }
    #astApp .ast-price-finish>span{
      min-width:0;
      display:grid;
      gap:1px;
    }
    #astApp .ast-price-finish>span strong{
      overflow:hidden;
      color:#173e5e;
      font-size:10.5px;
      font-weight:900;
      line-height:1.15;
      text-overflow:ellipsis;
      white-space:nowrap;
    }
    #astApp .ast-price-finish>span small{
      overflow:hidden;
      color:#6b8295!important;
      font-size:8.5px!important;
      font-weight:650!important;
      line-height:1.15!important;
      text-overflow:ellipsis;
      white-space:nowrap;
    }
    #astApp .ast-price-finish>b{
      min-height:24px;
      display:flex;
      align-items:center;
      justify-content:center;
      padding:0 8px;
      border-radius:13px;
      color:#087656;
      background:#e7f7f1;
      font-size:9.5px;
      font-weight:950;
      line-height:1;
      white-space:nowrap;
    }
    @media(max-width:1380px){
      #astApp .ast-lamination-options>label{grid-template-rows:70px auto!important}
      #astApp .ast-finish-sample{height:70px!important}
      #astApp .ast-lamination-options small{font-size:9.5px!important}
      #astApp .ast-finish-cost{right:5px;bottom:5px;padding:0 6px;font-size:8px}
    }
    @media(max-width:520px){
      #astApp .ast-lamination-options>label{
        grid-template-columns:132px minmax(0,1fr)!important;
        grid-template-rows:auto!important;
      }
      #astApp .ast-finish-sample{height:76px!important}
      #astApp .ast-lamination-options small{min-height:0!important}
    }

    /*
     * V5.6.4 — scala tipografica accessibile per l'intera colonna
     * preventivo. Nessuna micro-label informativa resta sotto gli 11 px.
     */
    #astApp .ast-quote small{
      font-size:11.5px!important;
      line-height:1.3!important;
    }
    #astApp .ast-quote p{
      font-size:12px!important;
      line-height:1.35!important;
    }
    #astApp .ast-quote button{
      font-size:12px!important;
    }
    #astApp .ast-quote-head h2{
      font-size:25px!important;
      line-height:1.12!important;
    }
    #astApp .ast-quote-head p{
      font-size:13px!important;
      line-height:1.35!important;
    }
    #astApp .ast-quote-tabs button{
      font-size:14px!important;
    }
    #astApp .ast-choice-title strong{
      font-size:16px!important;
    }
    #astApp .ast-choice-title small{
      font-size:12.5px!important;
      line-height:1.3!important;
    }
    #astApp .ast-qty-scale-head{
      font-size:13.5px!important;
    }
    #astApp .ast-qty-scale-head strong{
      font-size:12.5px!important;
    }
    #astApp .ast-qty-presets button small{
      font-size:11.5px!important;
    }
    #astApp .ast-qty-row>span{
      font-size:14.5px!important;
    }
    #astApp .ast-qty-row>small{
      font-size:12px!important;
    }
    #astApp #astQtyControl em{
      font-size:12.5px!important;
    }
    #astApp .ast-qty-note{
      font-size:12.5px!important;
      line-height:1.35!important;
    }

    #astApp .ast-lamination>header small{
      font-size:11.5px!important;
      line-height:1.15!important;
    }
    #astApp .ast-lamination>header strong{
      font-size:19px!important;
      line-height:1.15!important;
    }
    #astApp .ast-lamination>header b{
      font-size:11.5px!important;
      line-height:1.35!important;
    }
    #astApp .ast-lamination>header em{
      min-height:27px!important;
      font-size:11px!important;
    }
    #astApp .ast-lamination-options strong{
      font-size:14px!important;
      line-height:1.2!important;
    }
    #astApp .ast-lamination-options small{
      min-height:47px!important;
      font-size:12px!important;
      line-height:1.35!important;
    }
    #astApp .ast-finish-copy>em{
      font-size:11.5px!important;
      line-height:1.2!important;
    }
    #astApp .ast-finish-cost{
      min-height:23px!important;
      padding:0 8px!important;
      font-size:11px!important;
    }
    #astApp .ast-lamination>p{
      min-height:31px;
      font-size:11.5px!important;
      line-height:1.3!important;
    }
    #astApp .ast-lamination>p strong{
      font-size:12px!important;
    }
    #astApp .ast-lamination>p span{
      font-size:11.5px!important;
    }

    #astApp .ast-price-head small{
      font-size:11.5px!important;
    }
    #astApp .ast-price-head strong{
      font-size:17px!important;
    }
    #astApp .ast-simulation{
      font-size:11px!important;
    }
    #astApp .ast-price-finish>span strong{
      font-size:13px!important;
    }
    #astApp .ast-price-finish>span small{
      font-size:11.5px!important;
    }
    #astApp .ast-price-finish>b{
      min-height:27px!important;
      font-size:11.5px!important;
    }
    #astApp .ast-price-values small{
      font-size:13px!important;
      line-height:1.25!important;
    }
    #astApp .ast-price-values em{
      font-size:12.5px!important;
    }
    #astApp .ast-price-note{
      font-size:12.5px!important;
      line-height:1.35!important;
    }
    #astApp .ast-price-card>small,
    #astApp .ast-price-card>div>small{
      font-size:12.5px!important;
      line-height:1.25!important;
    }
    #astApp .ast-price-values small{
      font-size:13px!important;
    }

    #astApp .ast-progress-title{
      font-size:14px!important;
      line-height:1.25!important;
    }
    #astApp .ast-progress-title small{
      font-size:12px!important;
    }
    #astApp .ast-checks li,
    #astApp .ast-checks li span{
      font-size:13.5px!important;
      line-height:1.3!important;
    }
    #astApp .ast-continue{
      font-size:16.5px!important;
    }
    #astApp .ast-quote footer b{
      font-size:12px!important;
      line-height:1.25!important;
    }
    #astApp .ast-save-row button{
      font-size:12px!important;
    }
    #astApp .ast-quote h3{
      font-size:18px!important;
      line-height:1.2!important;
    }
    #astApp .ast-quote article p,
    #astApp .ast-quote article small{
      font-size:12px!important;
      line-height:1.35!important;
    }
    #astApp .ast-quote [class*="next"] small,
    #astApp .ast-quote [class*="next"] span{
      font-size:12px!important;
      line-height:1.3!important;
    }

    @media(max-width:1380px){
      #astApp .ast-lamination-options strong{font-size:13.5px!important}
      #astApp .ast-lamination-options small{font-size:11.5px!important}
      #astApp .ast-finish-copy>em{font-size:11px!important}
      #astApp .ast-quote footer b{font-size:11.5px!important}
    }
    @media(max-width:520px){
      #astApp .ast-lamination-options small{min-height:0!important}
      #astApp .ast-price-values small{font-size:12px!important}
      #astApp .ast-price-note{font-size:12px!important}
    }

    /* V5.7 — trasformazione grafica professionale stile editor vettoriale. */
    html body .ast-editor-pro .ast-resize-mode{
      display:grid!important;grid-template-columns:1fr 1fr!important;gap:4px!important;padding:4px!important;
      border:1px solid #d7e3ed!important;border-radius:9px!important;background:#f4f8fc!important;
    }
    html body .ast-editor-pro .ast-property-grid label:nth-child(5){grid-column:1/-1!important}
    html body .ast-editor-pro .ast-resize-mode button{
      min-height:36px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
      padding:0 8px!important;border:1px solid transparent!important;border-radius:7px!important;color:#63798e!important;background:transparent!important;
      font-size:8px!important;font-weight:850!important;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease!important;
    }
    html body .ast-editor-pro .ast-resize-mode button i{font-size:13px!important;font-style:normal!important;line-height:1!important}
    html body .ast-editor-pro .ast-resize-mode button.is-active{
      border-color:#75b8ef!important;color:#076ed4!important;background:#fff!important;box-shadow:0 3px 9px rgba(8,96,178,.09)!important;
    }
    html body .ast-editor-pro .ast-transform-hint{margin:0!important;color:#72869a!important;font-size:7px!important;line-height:1.45!important}
    html body .ast-editor-pro .ast-transform-hint b{color:#355a7b!important;font-weight:850!important}
    html body .ast-editor-pro svg .ast-transform-box{pointer-events:none!important}
    html body .ast-editor-pro svg .ast-transform-hit{fill:transparent!important;stroke:none!important;pointer-events:all!important;cursor:move!important}
    html body .ast-editor-pro svg .ast-transform-outline{
      fill:none!important;stroke:#087cf0!important;stroke-width:1.45!important;stroke-dasharray:5 3!important;pointer-events:none!important;
      filter:drop-shadow(0 1px 1px rgba(5,74,145,.16))!important;
    }
    html body .ast-editor-pro svg .ast-transform-handle{
      fill:#fff!important;stroke:#087cf0!important;stroke-width:1.5!important;pointer-events:all!important;filter:drop-shadow(0 1px 2px rgba(6,70,132,.22))!important;
    }
    html body .ast-editor-pro svg .ast-transform-handle.is-corner{
      fill:#087cf0!important;stroke:#fff!important;stroke-width:2.4!important;
      filter:drop-shadow(0 0 0 #087cf0) drop-shadow(0 2px 4px rgba(4,65,126,.38))!important;
    }
    html body .ast-editor-pro svg .ast-transform-handle.is-side{opacity:.82!important;stroke-width:1.35!important}
    html body .ast-editor-pro svg .ast-transform-handle.is-corner:hover{fill:#075fbe!important;stroke:#dff1ff!important}
    html body .ast-editor-pro svg [data-transform-handle="nw"],
    html body .ast-editor-pro svg [data-transform-handle="se"]{cursor:nwse-resize!important}
    html body .ast-editor-pro svg [data-transform-handle="ne"],
    html body .ast-editor-pro svg [data-transform-handle="sw"]{cursor:nesw-resize!important}
    html body .ast-editor-pro svg [data-transform-handle="n"],
    html body .ast-editor-pro svg [data-transform-handle="s"]{cursor:ns-resize!important}
    html body .ast-editor-pro svg [data-transform-handle="e"],
    html body .ast-editor-pro svg [data-transform-handle="w"]{cursor:ew-resize!important}
    html body .ast-editor-pro svg .ast-transform-rotate-line{stroke:#087cf0!important;stroke-width:1.25!important;stroke-dasharray:3 2!important;pointer-events:none!important}
    html body .ast-editor-pro svg .ast-transform-rotate{
      fill:#087cf0!important;stroke:#fff!important;stroke-width:1.4!important;pointer-events:all!important;cursor:grab!important;
      filter:drop-shadow(0 2px 3px rgba(4,72,139,.25))!important;
    }
    html body .ast-editor-pro svg .ast-transform-rotate-icon{fill:#fff!important;font-family:Arial,sans-serif!important;font-weight:900!important;pointer-events:none!important}
    html body .ast-editor-pro.is-dragging-artwork svg .ast-transform-rotate{cursor:grabbing!important}
    @media(min-width:1400px){
      html body .ast-editor-pro .ast-resize-mode button{min-height:42px!important;font-size:clamp(10px,.45vw,14px)!important}
      html body .ast-editor-pro .ast-transform-hint{font-size:clamp(9px,.4vw,12px)!important}
    }
