*{box-sizing:border-box}body{color:#172033;background:#f4f7fb;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.full-state{place-items:center;min-height:100vh;padding:24px;font-family:Segoe UI,system-ui,sans-serif;display:grid}.state-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;gap:10px;padding:16px 18px;display:flex}.state-card.error{color:#b91c1c;font-weight:600}.btn{color:#fff;background:#0f766e;border:0;border-radius:12px;padding:10px 16px;font-weight:700}.contratto{overflow-wrap:anywhere;font-size:15px;line-height:1.55}.contratto table{border-collapse:collapse;width:100%;margin:8px 0}.contratto th,.contratto td{text-align:left;vertical-align:top;border:1px solid #e2e8f0;padding:4px 6px;font-size:14px}.contratto [data-campo=spunta][data-chi=cliente]{background:#f8fafc;border:2px solid #cbd5e1;border-radius:10px;margin:10px 0;padding:10px 12px;display:block}.contratto [data-campo=firma]{border:1px solid #cbd5e1;border-radius:10px;margin:12px 0;padding:10px;display:block}.contratto .doc-attestazione{color:#475569;font-size:12px}@media print{body:has(.contratto-print) :not(:has(.contratto-print)):not(.contratto-print):not(.contratto-print *){display:none!important}.contratto-print .no-print{display:none!important}body:has(.contratto-print){background:#fff}}
