:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#17354b;background:#f4f8fb;font-size:16px}*{box-sizing:border-box}body{margin:0;line-height:1.5}button,input,select{font:inherit}button,.button{border:0;border-radius:12px;background:#0b6f9b;color:#fff;padding:.7rem 1rem;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block;text-align:center}button:hover,.button:hover{background:#075a80}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ef923c;outline-offset:2px}.secondary{background:#e5f1f8;color:#124e70}.secondary:hover{background:#cde5f4}.quiet{background:transparent;color:#17354b;border:1px solid #b5cbd9}.quiet:hover{background:#e8f1f7}.shell{max-width:1120px;margin:auto;padding-left:24px;padding-right:24px}.top{background:#fff;border-bottom:1px solid #dce8ee}.top-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px}.brand img{object-fit:contain;border-radius:50%}.brand strong,.brand small{display:block}.brand strong{font-size:1.1rem}.brand small{font-size:.82rem;color:#607c8c}.top form{margin:0}.heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:38px 0 26px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:800;color:#0a719b;margin:0 0 4px}h1{font-size:clamp(1.8rem,4vw,2.65rem);letter-spacing:-.04em;margin:0;line-height:1.15}h2{font-size:1.4rem;margin:0 0 18px;letter-spacing:-.025em}h3{font-size:1.05rem;margin:0 0 14px}p{margin:.3rem 0}.card,.records{background:#fff;border:1px solid #d9e7ef;border-radius:18px;box-shadow:0 6px 24px rgba(15,60,92,.035)}.card{padding:22px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:34px}.stats .card{display:flex;flex-direction:column;gap:2px}.stats strong{font-size:2rem;line-height:1.1;color:#096b98}.stats span,.muted{color:#61798a}.panel{margin:32px 0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid .card{min-width:0}.card form,.auth form{display:grid;gap:14px}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{font-size:.9rem;font-weight:650;display:grid;gap:5px}input,select{width:100%;border:1px solid #bdced9;border-radius:10px;background:#fff;color:#17354b;padding:.65rem .75rem;min-height:44px}form button{justify-self:start}.client-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #e6eef3}.client-row:last-child{border-bottom:0}.client-row strong,.client-row small{display:block}.client-row small{color:#61798a;overflow-wrap:anywhere}.client-row button{font-size:.84rem}.record{padding:20px 23px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e5edf2}.record:last-child{border-bottom:0}.record h3{margin:5px 0}.record p{color:#61798a;font-size:.9rem}.date{color:#096b98;font-weight:750;font-size:.9rem}.record-end{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:140px}.record-end strong{font-size:1.08rem}.record-end form{display:flex;align-items:center;gap:6px}.record-end select{width:auto;min-width:130px}.record-end button{font-size:.85rem}.badge{display:inline-flex;border-radius:99px;background:#edf2f5;color:#3e5968;padding:5px 12px;font-size:.85rem;font-weight:750}.badge.pagato,.badge.pagata{background:#e5f7ee;color:#176e43}.badge.scaduto{background:#ffebea;color:#a2322b}.badge.in_scadenza{background:#fff2df;color:#935619}.empty{padding:28px;color:#61798a}.auth{max-width:460px;margin:64px auto;display:grid;gap:12px}.auth p{color:#61798a}.notice{margin:24px 0;background:#e8f4fa;border-left:4px solid #0b6f9b;padding:15px 18px;border-radius:9px}.break{overflow-wrap:anywhere}.footer{color:#7991a0;font-size:.85rem;padding-top:35px;padding-bottom:30px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:700px){.shell{padding-left:16px;padding-right:16px}.top-inner{min-height:70px}.brand small{font-size:.73rem}.brand img{width:44px;height:44px}.heading{display:block;margin:27px 0}.heading .button{margin-top:18px}.grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(3,1fr)}.stats .card{padding:12px}.stats strong{font-size:1.45rem}.stats span{font-size:.75rem}.record{display:block;padding:17px}.record-end{margin-top:10px;align-items:flex-start;text-align:left}.record-end form{flex-wrap:wrap}.auth{margin:32px auto}}@media(max-width:390px){.two{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.brand strong{font-size:.97rem}}
