:root{--ink:#183c35;--muted:#71817b;--green:#174f43;--lime:#def49d;--bg:#f5f7f5;--line:#e1e8e3;--white:#fff;--radius:18px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}button{border:0;background:none;color:inherit}button,.btn,a,input,textarea,select{transition:background .16s,border-color .16s,transform .16s}button:active,.btn:active{transform:translateY(1px)}.icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:34px 20px 20px;display:flex;flex-direction:column;position:fixed;top:0;bottom:0;width:244px}.brand{display:flex;gap:10px;align-items:center;font-weight:800;font-size:18px;letter-spacing:-.6px;line-height:1.03;text-decoration:none}.brand-mark{background:var(--green);color:var(--lime);height:42px;width:42px;border-radius:12px;display:grid;place-items:center;font-size:22px;letter-spacing:-2px;font-weight:800}.brand small{display:block;font-size:11px;letter-spacing:3.7px;font-weight:600;margin-top:6px}.workspace-tag{margin:24px 8px 32px;display:flex;gap:7px;align-items:center;color:var(--muted);font-size:12px}.workspace-tag .icon{height:14px;width:14px}.nav-label{font-size:11px;letter-spacing:1.8px;color:#89948e;margin:0 14px 12px;font-weight:600}.nav{display:flex;flex-direction:column;gap:7px}.nav button{display:flex;align-items:center;gap:12px;text-align:left;padding:13px 14px;border-radius:9px;font-size:14px;font-weight:500}.nav button:hover{background:#f4f7f4}.nav button.active{background:#eaf1e9;color:#225441;font-weight:650}.nav .count{margin-left:auto;background:#fff;padding:2px 7px;border-radius:5px;font-size:12px}.sidebar-bottom{margin-top:auto}.sidebar-bottom .nav{margin-top:30px}.demo-note{padding:16px 13px;margin:22px 0;color:#6b796f;background:#f7f8f4;border-radius:12px;font-size:12px;line-height:1.65}.demo-note strong{color:#3d5442;display:block;font-size:13px}.profile{border-top:1px solid var(--line);padding:21px 3px 0;display:flex;align-items:center;gap:10px}.avatar{height:35px;width:35px;border-radius:50%;background:#edf0e8;display:grid;place-items:center;font-size:12px;font-weight:700}.profile b{font-size:13px;display:block}.profile small{font-size:11px;color:var(--muted)}.profile button{margin-left:auto}.main{grid-column:2;min-width:0}.topbar{height:80px;border-bottom:1px solid var(--line);background:#ffffffab;display:flex;align-items:center;justify-content:space-between;padding:0 45px;font-size:14px}.topbar .breadcrumb{color:var(--muted);display:flex;align-items:center;gap:10px}.topbar .breadcrumb b{color:var(--ink);font-weight:500}.topbar-right{display:flex;align-items:center;gap:20px}.private{display:flex;align-items:center;gap:6px;color:#6d7f75;font-size:12px}.private .icon{width:14px;height:14px}.content{max-width:1510px;margin:auto;padding:42px 45px 30px}.eyebrow{font-size:11px;font-weight:650;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:12px}h1{font-size:32px;letter-spacing:-1px;line-height:1.2;margin:0 0 10px;font-weight:650}h2{font-size:19px;letter-spacing:-.4px;margin:0;font-weight:650}h3{font-size:16px;margin:0 0 9px}p{line-height:1.6;margin:0;color:var(--muted);font-size:14px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.btn{display:inline-flex;gap:9px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:9px;padding:12px 17px;white-space:nowrap;text-decoration:none;font-size:14px;font-weight:600;background:#fff;min-height:44px}.btn:hover{background:#f1f4ef}.btn.primary{background:var(--green);border-color:var(--green);color:white;box-shadow:0 3px 6px #123f3510}.btn.primary:hover{background:#22634f}.btn.lime{background:var(--lime);border-color:var(--lime);color:#254c32}.btn.ghost{background:transparent;border-color:transparent}.btn.small{font-size:12px;min-height:34px;padding:8px 12px}.hero{background:#174f43;border-radius:20px;padding:30px 33px;color:white;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:28px;min-height:195px}.hero h2{font-size:26px;line-height:1.25;font-weight:500;max-width:430px;letter-spacing:-.7px}.hero p{color:#c4d7cb;margin:12px 0 20px}.hero .eyebrow{color:#b6d293;font-size:10px}.mini-flow{display:flex;align-items:center;gap:9px;margin-right:6px}.mini-flow span{height:68px;width:68px;display:grid;place-items:center;border-radius:17px;background:#ffffff0c;border:1px solid #ffffff21}.mini-flow span:last-child{background:#def49d;color:#174f43;transform:rotate(7deg);border-color:transparent}.mini-flow .icon{height:27px;width:27px}.mini-flow>small{opacity:.45}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:37px}.stat{background:#fff;border:1px solid var(--line);border-radius:13px;padding:19px 21px;position:relative;text-align:left}.stat:hover{border-color:#acc1b1}.stat .label{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:7px}.stat strong{display:block;font-size:29px;letter-spacing:-.8px;margin:12px 0 4px;font-weight:550}.stat small{font-size:11px;color:var(--muted)}.stat .stat-icon{position:absolute;right:20px;top:18px;color:#9ba69f}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:15px}.section-title p{margin-top:5px;font-size:13px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px;gap:15px}.tabs{display:flex;gap:5px;flex-wrap:wrap}.tabs button{font-size:12px;color:var(--muted);padding:9px 12px;border-radius:7px}.tabs button.active{background:#e6eee4;color:#36583f;font-weight:600}.tabs button span{margin-left:5px;font-size:10px;opacity:.7}.search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:9px 12px;max-width:260px}.search .icon{height:16px;width:16px;color:#8b9690}.search input{border:0;width:100%;min-width:0;font-size:12px;background:transparent;outline:none}.table-wrap{border:1px solid var(--line);border-radius:13px;background:white;overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left}th{background:#f9faf8;color:#8a938c;font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:550;padding:15px 19px}td{font-size:12px;padding:18px 19px;border-top:1px solid #edf0ea}tbody tr{cursor:pointer}tbody tr:hover{background:#fafcf8}.client-cell{display:flex;align-items:center;gap:11px}.client-cell .client-icon{height:34px;width:34px;display:grid;place-items:center;border-radius:9px;background:#f0ede6;color:#a08c70;font-size:11px;font-weight:700}.client-cell b{font-size:13px;font-weight:600;display:block}.client-cell small{display:block;font-size:11px;color:#96a095;margin-top:4px}.code{color:#849086;font-size:11px}.status{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:6px;font-size:11px;white-space:nowrap}.status::before{content:'';width:5px;height:5px;background:currentColor;border-radius:50%}.status.bozza{color:#747e78;background:#f0f2ef}.status.da-controllare{color:#aa7c29;background:#fff5df}.status.definitivo{color:#396d9c;background:#edf4fb}.status.inviato{color:#418160;background:#edf5e9}.table-footer{display:flex;justify-content:space-between;align-items:center;margin:17px 3px;color:#8b978d;font-size:11px}.footer{margin-top:42px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;font-size:11px;color:#95a095}.card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:26px}.narrow{max-width:1010px;margin:auto}.steps{display:flex;align-items:center;justify-content:center;gap:15px;margin:0 auto 35px;max-width:720px}.step{display:flex;align-items:center;gap:9px;font-size:12px;color:#869188;white-space:nowrap}.step span{border:1px solid #dce3db;border-radius:50%;width:27px;height:27px;display:grid;place-items:center;font-size:11px}.step.current{color:var(--green);font-weight:600}.step.current span{background:var(--green);color:#fff;border-color:var(--green)}.step.done span{background:#e3eed9;border-color:#e3eed9;color:var(--green)}.step-line{height:1px;background:#dce3db;width:40px}.request-title{display:flex;align-items:center;gap:12px;margin-bottom:17px}.icon-box{display:grid;place-items:center;height:39px;width:39px;border-radius:10px;background:#ecf3e5;color:#416944}.request-input{width:100%;border:0;resize:vertical;min-height:165px;color:var(--ink);font-size:19px;line-height:1.7;background:transparent;padding:4px 0}.request-input::placeholder{color:#a2ada3}.request-input:focus{outline:none}.request-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;color:var(--muted);font-size:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field label{display:block;font-size:12px;color:#65766c;margin-bottom:8px;font-weight:550}.field input,.field select,.field textarea{width:100%;border:1px solid #dce4db;border-radius:8px;background:#fff;padding:12px;color:var(--ink);font-size:14px;min-height:44px}.field input:focus,.field textarea:focus,.field select:focus{border-color:#5b8770;outline:2px solid #eaf2e4}.field textarea{resize:vertical;min-height:85px}.form-section{margin-top:20px}.form-section summary{cursor:pointer;font-size:14px;font-weight:600;padding:8px 0 19px}.muted{color:var(--muted)}.actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:25px}.actions-right{display:flex;gap:10px}.notice{padding:13px 16px;background:#f1f5eb;border:1px solid #e1e9d8;border-radius:10px;font-size:12px;color:#5d7458;line-height:1.6;display:flex;gap:9px;align-items:flex-start;margin-top:20px}.notice.warning{background:#fff9ec;color:#946e30;border-color:#f2e9d4}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.summary-block{position:relative;min-height:112px;text-align:left;width:100%}.summary-block:hover{border-color:#adc5ac}.summary-block>small{display:block;color:#839084;font-size:10px;letter-spacing:1.2px;margin-bottom:12px}.summary-block>strong{font-size:18px;font-weight:550;display:block}.summary-block>.icon{position:absolute;right:19px;top:19px;width:15px;color:#82947f}.summary-block.missing{border-color:#dfb668;background:#fffcf5}.summary-block p{font-size:13px;margin-top:7px}.offer-editor{border:1px solid var(--line);padding:19px;border-radius:12px;margin-top:17px}.offer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.service-row{display:grid;grid-template-columns:1.2fr .9fr 75px 32px;gap:8px;align-items:end;margin-top:12px}.service-row .field input,.service-row .field select{font-size:12px;padding:10px}.service-row button{height:43px}.offer-price{margin-top:16px;max-width:230px}.preview-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:25px;align-items:start}.document-stage{background:#e9eee8;padding:27px;border-radius:13px;overflow:hidden}.paper{background:#fff;box-shadow:0 5px 16px #1e422815;margin:0 auto 24px;padding:38px;max-width:680px;min-height:850px;position:relative;display:flex;flex-direction:column;color:#243e36;overflow-wrap:anywhere}.paper:last-child{margin-bottom:0}.paper-top{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #dde4dc;padding-bottom:25px}.paper .brand{font-size:16px}.paper .brand-mark{height:35px;width:35px;font-size:18px}.paper .brand small{font-size:9px;letter-spacing:3px}.paper-type{font-size:10px;text-align:right;color:#78887d;line-height:1.7}.paper h2{font-size:29px;font-weight:550;margin:33px 0 8px;letter-spacing:-1px}.paper .doc-meta{display:flex;justify-content:space-between;gap:15px;font-size:10px;color:#899489;line-height:1.8;border-bottom:1px solid #e0e6de;padding-bottom:25px}.paper .doc-meta b{color:#435a4a;font-weight:500}.paper h4{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#879582;margin:25px 0 17px}.paper .doc-service{margin-bottom:15px}.paper .doc-service strong{font-size:14px;font-weight:550}.paper p{font-size:11px;line-height:1.7;color:#708070;margin-top:7px;white-space:pre-line}.doc-total{display:flex;justify-content:space-between;align-items:center;background:#f0f5e9;padding:18px;margin:25px 0 6px;font-size:12px}.doc-total strong{font-size:22px;font-weight:600}.doc-total small{font-size:10px}.doc-footer{margin-top:auto;padding-top:30px;font-size:9px;color:#84917f;line-height:1.8}.doc-footer .signature{display:flex;justify-content:space-between;margin:24px 0 20px}.demo-stamp{font-size:9px;color:#ad8650;letter-spacing:1px;margin:18px 0 0;text-align:center}.side-summary{position:sticky;top:25px}.side-summary .card{padding:22px}.side-summary hr{border:0;border-top:1px solid var(--line);margin:20px 0}.meta-item{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin:16px 0}.meta-item span{color:var(--muted)}.meta-item strong{font-weight:550;text-align:right}.checklist{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check{border:1px solid var(--line);border-radius:10px;padding:15px;display:flex;align-items:center;gap:12px}.check>span{display:grid;place-items:center;color:#588358;background:#ecf3e5;width:28px;height:28px;border-radius:50%}.check b{font-size:13px;display:block;font-weight:550}.check small{font-size:11px;color:var(--muted);display:block;margin-top:4px}.check.warn>span{color:#aa7c29;background:#fff3d9}.check .icon{width:15px;height:15px}.layout-confirm{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;margin-top:22px}.layout-confirm input{accent-color:var(--green);height:17px;width:17px;flex:none}.full{width:100%}.success{text-align:center;padding:32px 15px}.success-icon{display:grid;place-items:center;margin:0 auto 21px;background:#e9f2df;border-radius:50%;height:67px;width:67px;color:var(--green)}.success h1{font-size:28px}.empty{padding:55px 20px;text-align:center}.empty p{margin:10px 0 20px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-grid .card p{margin:12px 0 20px}.user-row{display:flex;align-items:center;gap:15px;padding:21px 0;border-bottom:1px solid var(--line)}.user-row .user-description{flex:1}.user-row b{font-size:14px}.user-row p{font-size:12px}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:white}.login-art{background:#174f43;color:white;display:flex;flex-direction:column;justify-content:space-between;padding:55px}.login-art .brand-mark{background:var(--lime);color:var(--green)}.login-art h1{font-size:50px;max-width:460px;line-height:1.15;letter-spacing:-2px}.login-art p{color:#b6cdba;max-width:320px;margin-top:22px;font-size:16px}.login-art small{font-size:12px;color:#b6cdba}.login-form{display:flex;flex-direction:column;justify-content:center;padding:70px;max-width:580px;margin:auto;width:100%}.login-form h1{font-size:29px}.login-form .field{margin:28px 0 16px}.login-form .notice{font-size:11px}.login-form .private{justify-content:center;margin-top:25px}dialog{border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 100px #153d3533;padding:29px;width:calc(100% - 36px);max-width:640px;color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#142f2b66;backdrop-filter:blur(4px)}dialog .modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}dialog h2{font-size:23px}dialog .form-grid{margin-top:20px}#toast{position:fixed;bottom:27px;left:50%;transform:translateX(-50%) translateY(20px);background:#173f35;color:white;border-radius:12px;padding:14px 22px;font-size:13px;box-shadow:0 5px 30px #153d3533;z-index:99;opacity:0;pointer-events:none;transition:.2s;max-width:90vw}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.mobile-menu{display:none}.error-text{color:#aa673b;font-size:12px}.draft-label{font-size:11px;color:#8e9c8e;display:flex;align-items:center;gap:5px}.section-subtitle{margin:8px 0 22px}.pill{font-size:10px;background:#edf2e7;color:#67825b;border-radius:5px;padding:5px 8px}.text-link{color:#345e43;text-decoration:underline;text-underline-offset:3px}.inline-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}body{animation:fade-in .25s}@keyframes fade-in{from{opacity:.5}to{opacity:1}}@media(min-width:1450px){.content{padding:48px 64px}.topbar{padding:0 64px}.hero{min-height:220px}}@media(max-width:1150px){.shell{grid-template-columns:206px minmax(0,1fr)}.sidebar{width:206px;padding:28px 14px}.content{padding:32px 26px}.topbar{padding:0 26px}.mini-flow{display:none}.hero h2{max-width:none}.toolbar{align-items:flex-start;flex-direction:column}.search{max-width:100%;width:100%}.preview-layout{grid-template-columns:minmax(0,1fr)}.side-summary{position:static}.side-summary .card{display:block}.paper{min-height:830px}.stat{padding:16px}.stat .stat-icon{display:none}}@media(max-width:760px){.shell{display:block}.sidebar{display:none;z-index:10;box-shadow:10px 0 40px #163f3520;width:244px}.sidebar.open{display:flex}.main{width:100%}.topbar{height:65px;padding:0 19px}.mobile-menu{display:block}.topbar .breadcrumb{font-size:12px}.topbar-right .private{display:none}.content{padding:28px 19px}.page-head{align-items:flex-start}h1{font-size:27px}.page-head>.btn{font-size:0;padding:12px}.page-head>.btn .icon{width:21px}.hero{padding:25px;min-height:200px}.hero h2{font-size:25px}.stats{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:28px}.stat strong{font-size:26px}.section-title h2{font-size:18px}.table-wrap th,.table-wrap td{padding:14px 16px}.footer{gap:15px;line-height:1.6}.steps{gap:7px;margin-bottom:27px}.step{font-size:10px;gap:5px}.step-line{width:10px}.step span{width:22px;height:22px}.card{padding:20px}.request-input{font-size:16px;min-height:185px}.request-bottom{gap:10px}.request-bottom>span{display:none}.form-grid,.summary-grid,.settings-grid,.checklist{grid-template-columns:1fr}.actions{align-items:stretch;flex-direction:column}.actions-right{display:flex}.actions-right .btn{flex:1}.service-row{grid-template-columns:1fr 80px 32px}.service-row .field:first-child{grid-column:1/-1}.document-stage{padding:10px;overflow:auto}.paper{padding:23px;min-width:300px;min-height:740px}.paper h2{font-size:23px}.paper .brand{font-size:12px}.paper .brand small{font-size:7px;letter-spacing:2px}.paper .brand-mark{width:28px;height:28px;font-size:15px}.paper .doc-meta{flex-wrap:wrap;font-size:9px}.doc-total strong{font-size:19px}.login{display:block}.login-art{padding:26px}.login-art h1,.login-art p,.login-art>small{display:none}.login-form{padding:40px 25px}.login-form h1{font-size:27px}.user-row{flex-wrap:wrap}.request-title h2{font-size:17px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media print{.sidebar,.topbar,.page-head,.steps,.side-summary,.actions,.footer,.notice,#toast,dialog{display:none!important}.shell{display:block}.content{padding:0}.preview-layout{display:block}.document-stage{padding:0;background:white}.paper{box-shadow:none;margin:0;max-width:none;min-height:270mm;page-break-after:always}.paper:last-child{page-break-after:auto}body{background:white}}
/* Readability across office displays and enlarged text. */
.workspace-tag,.demo-note,.profile small,.draft-label,.private,.table-footer,.footer{font-size:12px}.nav-label,.eyebrow{font-size:12px}.profile b{font-size:14px}.stat .label{font-size:14px}.stat small{font-size:12px}.tabs button,.search input{font-size:14px}.tabs button span{font-size:12px}th{font-size:12px}td{font-size:14px}.client-cell b{font-size:14px}.client-cell small,.code{font-size:12px}.status{font-size:12px}p{font-size:16px}.section-title p{font-size:14px}.field label{font-size:14px}.summary-block>small{font-size:12px}.summary-block p{font-size:14px}.check b{font-size:14px}.check small{font-size:12px}.step{font-size:14px}.notice{font-size:14px}.btn.small{font-size:13px}.meta-item{font-size:14px}.user-row p{font-size:14px}.paper p{font-size:12px}.paper .doc-meta{font-size:11px}.doc-footer{font-size:10px}.paper .doc-total small{font-size:12px}.demo-stamp{font-size:10px}.paper .brand small{font-size:9px}.paper-type{font-size:11px}@media(max-width:760px){.step{font-size:11px}.step-line{width:5px}.paper p{font-size:11px}.paper .doc-meta{font-size:10px}.tabs button{font-size:12px}.footer{font-size:11px}.service-row .field label{font-size:12px}.page-head .inline-actions .btn{font-size:12px}.page-head:has(.inline-actions){flex-direction:column}}
@font-face{font-family:Roboto Mono;src:url('assets/RobotoMono-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Roboto Mono;src:url('assets/RobotoMono-Bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--green:#064726;--ink:#163e2a;--lime:#d6f1a1;--bg:#f6f8f4}.sidebar{padding-top:25px}.official-logo{display:block;width:174px;height:85px;overflow:hidden;position:relative;flex:none}.official-logo img{position:absolute;width:220px;max-width:none;height:220px;top:-68px;left:-26px}.sidebar>a{display:block;margin:0 auto 30px}.sidebar .profile{margin-top:30px}.nav{gap:10px}.page-head{margin-bottom:25px}.page-head h1{margin:0}.mascot-stage{display:grid;grid-template-columns:1.2fr 1fr;gap:15px;min-height:315px;margin-bottom:24px;border:1px solid #e3ebdc;border-radius:22px;background:linear-gradient(120deg,#f0f5e7,#fff 75%);overflow:hidden;position:relative}.woman-scene{position:relative;min-height:315px}.woman-character{position:absolute;bottom:15px;left:16px;height:275px;width:184px;object-fit:contain;filter:drop-shadow(0 12px 12px #25492813)}.speech{position:absolute;left:182px;top:40px;background:#fff;box-shadow:0 8px 25px #2549280a;border:1px solid #e0e8d9;border-radius:19px 19px 19px 0;max-width:245px;padding:19px 20px;font-size:18px;font-weight:550;line-height:1.45;z-index:1}.speech:before{content:'';position:absolute;left:-13px;bottom:16px;border-top:12px solid transparent;border-bottom:12px solid transparent;border-right:14px solid white}.bojack-scene{width:230px;height:295px;position:relative;justify-self:center;align-self:end}.bojack-scene img{position:absolute;top:43px;left:20px;width:190px;height:260px;object-fit:contain}.lifted-button{position:absolute;left:6px;top:0;width:218px;border-radius:13px;background:var(--green);color:#fff;height:52px;font-weight:650;font-size:20px;z-index:2;box-shadow:0 7px 0 #032b17,0 11px 20px #144a2420;display:flex;gap:15px;align-items:center;justify-content:center}.lifted-button:hover{background:#116036;box-shadow:0 7px 0 #032b17,0 12px 25px #144a243a}.floating{animation:float 5s ease-in-out infinite}.bojack-scene{animation-delay:-2s}@keyframes float{0%,100%{transform:translateY(0) rotate(-.5deg)}50%{transform:translateY(-9px) rotate(.5deg)}}.validity-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0 34px}.validity-stat{display:flex;align-items:center;gap:18px;text-align:left;padding:22px 26px}.validity-stat>div{flex:1}.validity-stat>div>span{font-size:14px;color:var(--muted)}.validity-stat strong{display:block;font-size:33px;font-weight:600;margin-top:6px}.validity-stat>.icon{color:#87937e}.validity-stat:hover{border-color:#9fb48d}.expired-icon{color:#947d52;background:#f5f0e6}.validity{font-size:11px;display:inline-block;padding:4px 7px;border-radius:5px;margin-top:5px}.validity.active{color:#416c40;background:#edf4e6}.validity.expired{color:#9b7736;background:#fbf2df}.expiry-date{display:block;font-size:13px}.row-link{text-align:left;padding:0}.row-link:focus-visible{outline:2px solid var(--green)}.project-link{font-family:Roboto Mono,monospace;font-size:13px;text-decoration:underline;text-underline-offset:4px}.table-alternatives{display:block;font-size:11px;color:#7c8876;margin-top:4px}.share-row{border-color:#d8e3d1;color:#366342}.request-card h2{margin-bottom:15px}.small-text{font-size:13px!important;line-height:1.65}.original-request{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.side-summary .full{margin-top:16px}.steps{max-width:550px}.service-row{grid-template-columns:minmax(0,1fr) 90px 32px}.service-row .field select{font-size:14px}.item-editor{border-top:1px solid var(--line);margin-top:15px;padding-top:10px}.page-picker{border:0;padding:0;margin:16px 0;display:flex;gap:7px;flex-wrap:wrap}.page-picker legend{font-size:13px;margin-bottom:8px}.page-picker label{position:relative;cursor:pointer;font-size:12px}.page-picker input{position:absolute;opacity:0}.page-picker span{display:block;border:1px solid var(--line);padding:9px 11px;border-radius:8px}.page-picker input:checked+span{border-color:#3e714d;background:#eaf3e1;color:#265339}.page-picker input:focus-visible+span{outline:2px solid #3e714d;outline-offset:2px}.collab-toggle{font-size:13px;display:flex;gap:8px;align-items:flex-start;line-height:1.6}.collab-toggle input{accent-color:var(--green);margin-top:3px;flex:none}.service-description{margin:14px 0;font-size:13px}.service-description summary{cursor:pointer;color:#526d49;margin-bottom:12px}.service-description textarea{font-size:13px;min-height:120px;line-height:1.6}.summary-block>strong{font-size:17px;line-height:1.6;overflow-wrap:anywhere}.paper{font-family:Roboto Mono,monospace;min-height:880px}.paper-top{align-items:center;min-height:105px;padding-bottom:15px}.paper .official-logo{width:192px;height:90px}.paper .official-logo img{width:250px;height:250px;top:-79px;left:-31px}.paper h2{font-size:24px;font-weight:700;letter-spacing:-.7px;margin:24px 0 12px}.paper .billing-lines{font-size:11px;line-height:1.7;margin-bottom:22px;color:#60775c}.paper .doc-meta{font-size:10px;gap:12px}.paper .doc-meta b{font-size:11px}.paper .doc-service{margin:25px 0}.paper .doc-service h3{font-size:13px;line-height:1.7}.paper .doc-service p{font-size:11px;line-height:1.85}.paper .doc-total{gap:10px;flex-wrap:wrap;margin:27px 0 22px}.paper .doc-total strong{font-size:20px}.paper .doc-total small{font-size:11px}.paper .acceptance{font-size:10px;line-height:1.7;margin-bottom:27px;color:#60775c}.paper .doc-footer{font-size:10px;text-align:right}.paper .doc-footer p{text-align:left}.paper .paper-type{font-size:10px;line-height:1.8}.collaboration-tag{font-family:Inter,-apple-system,sans-serif;display:inline-block;margin-top:8px;color:#5c7b4f;font-size:10px}.project-heading{display:block;margin-top:12px;font-family:Roboto Mono,monospace;font-size:14px;color:#748a6b}.detail-actions{margin:0 0 24px}.pdf-frame{width:100%;height:70vh;border:1px solid var(--line);border-radius:10px}dialog:has(.pdf-frame){max-width:920px}.share-summary{display:flex;align-items:center;gap:15px;background:#f4f7ef;padding:18px;border-radius:12px;margin-bottom:22px}.share-summary>.icon{width:28px;height:28px}.share-summary p{font-size:13px;margin-top:6px}.share-summary b{font-size:16px}.share-summary+.btn{margin-bottom:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.empty h3{margin:15px 0 20px}.notice .text-link{white-space:nowrap;margin-left:auto}
@media(max-width:1150px){.mascot-stage{grid-template-columns:1.4fr 1fr}.speech{left:147px;font-size:16px;padding:16px;max-width:190px;top:40px}.woman-character{left:0;height:260px;width:170px}.bojack-scene{width:210px}.lifted-button{width:198px;font-size:18px}.bojack-scene img{left:12px;width:186px}.paper .doc-meta{font-size:10px}}@media(max-width:760px){.sidebar .official-logo{width:174px}.mascot-stage{grid-template-columns:1fr;gap:0;min-height:560px}.woman-scene{min-height:265px}.woman-character{height:252px;left:8px;width:168px;bottom:0}.speech{left:168px;top:35px;max-width:calc(100% - 181px);padding:14px;font-size:15px}.bojack-scene{height:280px;justify-self:center;margin-top:15px}.bojack-scene img{height:255px;top:39px}.validity-stats{gap:10px}.validity-stat{padding:16px 13px;gap:10px}.validity-stat .icon-box{display:none}.validity-stat strong{font-size:29px}.validity-stat>div>span{font-size:12px}.validity-stat>.icon{width:15px}.paper{padding:22px;min-height:780px}.paper .official-logo{width:148px;height:70px}.paper .official-logo img{width:190px;height:190px;top:-60px;left:-23px}.paper h2{font-size:20px}.paper .doc-meta{flex-wrap:wrap}.paper .doc-total strong{font-size:17px}.paper .doc-service h3{font-size:12px}.paper .doc-service p{font-size:10px}.service-row{grid-template-columns:minmax(0,1fr) 75px 30px}.service-row .field:first-child{grid-column:auto}.service-row .field select{font-size:12px}.share-row{font-size:12px}.steps{gap:7px}.step{font-size:12px}.step-line{width:20px}.notice{flex-wrap:wrap}.page-head .btn.ghost{font-size:12px}.summary-block>strong{font-size:16px}}@media(max-width:380px){.woman-character{width:142px;height:220px;left:0}.speech{left:139px;max-width:calc(100% - 147px);font-size:13px;padding:12px}.woman-scene{min-height:235px}.mascot-stage{min-height:530px}.validity-stat>div>span{font-size:11px}.steps{gap:6px}.step{font-size:11px}}
@media(prefers-reduced-motion:reduce){.floating{animation:none}}@media print{.mascot-stage{display:none}.paper{min-height:265mm}.paper .official-logo img{print-color-adjust:exact}}
/* Mezzi busti: testa e criniera restano sopra il pulsante. */
.woman-character{width:300px;height:300px;left:-35px;bottom:6px}.speech{left:205px}.bojack-scene{width:250px;height:310px}.bojack-scene img{width:290px;height:290px;left:-20px;top:12px}.lifted-button{left:0;top:160px;width:250px;height:44px;font-size:19px}
@media(max-width:1150px){.woman-character{width:260px;height:285px;left:-35px}.speech{left:165px;top:35px;max-width:165px;font-size:15px}.bojack-scene{width:230px}.bojack-scene img{left:-30px}.lifted-button{left:-10px}}
@media(max-width:760px){.woman-scene{min-height:265px}.woman-character{width:265px;height:265px;left:-40px;bottom:0}.speech{left:163px;top:35px;max-width:calc(100% - 176px);font-size:15px}.bojack-scene{width:250px;height:295px;margin-top:0}.bojack-scene img{left:-20px;top:0}.lifted-button{left:0;top:148px}.mascot-stage{min-height:560px}}
@media(max-width:380px){.woman-character{width:230px;height:245px;left:-37px}.speech{left:141px;max-width:calc(100% - 150px);font-size:13px;padding:12px}.woman-scene{min-height:245px}.mascot-stage{min-height:540px}}
@media(min-width:761px) and (max-width:1150px){.mascot-stage{grid-template-columns:minmax(0,1.4fr) 220px;padding-right:14px}.bojack-scene{width:220px}.bojack-scene img{width:250px;height:250px;left:-15px;top:33px}.lifted-button{width:216px;height:38px;left:2px;top:164px;font-size:17px}.speech{left:165px;max-width:calc(100% - 168px);font-size:14px;padding:14px}}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:30px 18px;background:var(--bg)}.login-card{width:100%;max-width:440px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px}.login-card>.official-logo{margin:0 auto 26px}.login-card h1{font-size:28px;margin:0 0 25px}.login-card .field{margin-top:18px}.login-card form{margin-bottom:22px}.login-card input,.invite-created input{width:100%}.login-card button{margin-top:8px}.login-help{font-size:13px;color:var(--muted);margin-top:28px}.login-help summary{cursor:pointer}.login-help p{line-height:1.6;margin:12px 0}.invite-card{max-width:740px}.invite-card form{display:flex;align-items:flex-end;gap:15px;margin-top:20px}.invite-card .field{flex:1}.invite-divider{margin:20px 0;color:var(--muted);font-size:13px}.invite-created{margin-top:20px;padding:20px;border-radius:12px;background:#edf4e7}.invite-created input{margin:14px 0;padding:12px;background:white;border:1px solid var(--line);border-radius:8px;font-size:12px}.user-description{min-width:0}.user-description p{overflow-wrap:anywhere}.profile b{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.error-text:empty{display:none}.login-card [hidden]{display:none}@media(max-width:760px){.invite-card form{display:block}.invite-card form button{margin-top:14px}.user-row{flex-wrap:wrap}.login-card{padding:26px}.user-row .user-description{flex:1}}
/* Document choice and proformas reuse the established card and form system. */
.document-choices{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px}.document-choice{text-align:left;padding:36px;cursor:pointer;transition:transform .2s,border-color .2s;min-height:260px}.document-choice>.icon{width:38px;height:38px;color:var(--green,#12533b);margin-bottom:24px}.document-choice:hover{transform:translateY(-3px);border-color:#12533b}.document-choice h2{font-size:26px;margin-bottom:12px}.document-choice p{line-height:1.6;color:#66736b}.document-choice>span{display:flex;align-items:center;gap:10px;margin-top:28px;font-weight:600;color:#12533b}.fiscal-card h2{margin-bottom:20px}.fiscal-card .notice{margin-bottom:20px;display:flex;flex-wrap:wrap}.fiscal-card .small-text{margin-top:18px}.proforma-recap{padding:38px}.proforma-recap>h2{margin-top:35px}.proforma-recap hr{margin:24px 0}.proforma-recap p{line-height:1.6}.proforma-recap .doc-total{margin-top:24px}button[hidden]{display:none!important}@media(max-width:650px){.document-choices{grid-template-columns:1fr;gap:16px}.document-choice{padding:24px;min-height:200px}.proforma-recap{padding:24px}}

/* PDF reference template: the preview shares the PDF's exact page geometry. */
.quote-template-page{background:#fff;box-shadow:0 5px 16px #1e422815;margin:0 auto 24px;max-width:760px;width:100%;aspect-ratio:596/842;overflow:hidden}
.quote-template-page:last-child{margin-bottom:0}.quote-template-page svg{display:block;width:100%;height:auto;font-family:'Roboto Mono',monospace}
