:root{--page:#071019;--sidebar:#08121c;--panel:#111923;--panel2:#0b121b;--line:rgba(255,255,255,.11);--text:#f4f7fb;--muted:#9da9b8;--teal:#2dd4bf;--gold:#f2b84b;--red:#f04452;--green:#2dcf84;--blue:#3ba8ef}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--text);font-family:"Segoe UI",system-ui,sans-serif;background:linear-gradient(115deg,rgba(45,212,191,.09) 0 7%,transparent 7% 71%,rgba(240,68,82,.08) 71% 75%,transparent 75%),var(--page)}body:before{position:fixed;inset:0;pointer-events:none;content:"";background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px}.app-shell{position:relative;display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:22px 14px;border-right:1px solid var(--line);background:rgba(7,16,25,.97);z-index:5}.brand{display:flex;align-items:center;gap:11px;padding:0 6px 22px}.brand-mark{display:grid;width:43px;height:43px;place-items:center;border:1px solid rgba(45,212,191,.5);border-radius:10px;color:var(--teal);background:rgba(45,212,191,.1);font-weight:900}.brand strong,.brand small{display:block}.brand strong{text-transform:uppercase}.brand small{margin-top:3px;color:var(--muted);font-size:11px}.nav-label{margin:3px 8px 9px;color:var(--gold);font-size:10px;font-weight:900;text-transform:uppercase}.sidebar nav{display:grid;gap:6px}.nav-button{display:grid;grid-template-columns:31px minmax(0,1fr);align-items:center;gap:8px;width:100%;border:1px solid transparent;border-radius:8px;padding:9px;color:#dfe6ef;background:transparent;font:800 13px inherit;text-align:left;text-decoration:none;cursor:pointer}.nav-icon{display:grid;width:29px;height:29px;place-items:center;border-radius:7px;color:var(--teal);background:rgba(45,212,191,.12);font-size:10px}.nav-button:hover,.nav-button.active{border-color:rgba(45,212,191,.55);background:rgba(255,255,255,.07)}.sidebar-card{position:absolute;right:14px;bottom:20px;left:14px;border:1px solid var(--line);border-radius:9px;padding:13px;background:#151f2b}.sidebar-card strong{font-size:12px}.sidebar-card p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.main{min-width:0;padding:16px 18px 50px}.topbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,520px);gap:16px;align-items:stretch}.hero,.toolbar,.panel,.card{border:1px solid var(--line);background:rgba(17,25,35,.96);box-shadow:0 20px 60px rgba(0,0,0,.2)}.hero{position:relative;overflow:hidden;padding:22px 26px;border-radius:10px;background:linear-gradient(125deg,#17313b,#111923 52%,#1d1518)}.hero:after{position:absolute;right:7%;top:-50%;width:35px;height:200%;content:"";transform:rotate(27deg);background:rgba(240,68,82,.2);box-shadow:-110px 0 rgba(242,184,75,.1),-220px 0 rgba(45,212,191,.13)}.hero h1{position:relative;margin:0;font-size:34px;text-transform:uppercase;z-index:1}.hero p:last-of-type{position:relative;margin:6px 0 0;color:#c9d1dc;z-index:1}.hero-line{position:relative;width:80%;height:3px;margin-top:17px;background:linear-gradient(90deg,var(--teal),var(--gold),var(--red));z-index:1}.eyebrow{margin:0 0 5px!important;color:var(--gold)!important;font-size:11px;font-weight:900;text-transform:uppercase}.top-actions{display:flex;align-content:flex-start;align-items:flex-start;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:12px}.cloud-pill{display:inline-flex;min-height:40px;align-items:center;border-radius:8px;padding:0 13px;color:#062117;background:var(--green);font-size:12px;font-weight:900}.button{border:0;border-radius:7px;padding:11px 15px;color:#07120f;background:linear-gradient(135deg,var(--teal),var(--gold));font:800 13px inherit;text-decoration:none;cursor:pointer}.button.secondary{border:1px solid var(--line);color:var(--text);background:rgba(255,255,255,.06)}.button.danger{color:#fff;background:#8e2632}.toolbar{margin:12px 0;padding:13px;border-radius:9px}.filters,.editor{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:10px}.filters label,.editor label,.dialog-form label{display:grid;gap:6px;color:#bdc6d2;font-size:10px;font-weight:900;text-transform:uppercase}.wide{grid-column:span 2}.filter-actions{display:flex;align-items:end;justify-content:flex-end}.span-2{grid-column:1/-1}input,select,textarea{width:100%;min-height:40px;border:1px solid rgba(255,255,255,.15);border-radius:6px;padding:9px 11px;color:var(--text);background:#070d14;font:inherit;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(45,212,191,.12)}textarea{resize:vertical}.filter-summary{margin:10px 2px 0;color:var(--muted);font-size:12px}.panel{display:none;border-radius:10px;padding:20px}.panel.active{display:block;animation:rise .22s ease both}@keyframes rise{from{opacity:.5;transform:translateY(4px)}}.section-heading,.card-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-heading{padding-bottom:16px;border-bottom:1px solid var(--line)}h2,h3{margin:0}h2{font-size:25px}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:16px;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#0b131c}.kpi-grid article{min-height:105px;padding:18px;border-right:1px solid var(--line)}.kpi-grid article:last-child{border:0}.kpi-grid span,.kpi-grid small{display:block;color:var(--muted)}.kpi-grid strong{display:block;margin:7px 0 3px;font-size:23px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.card{border-radius:9px;padding:16px}.card-header{padding-bottom:12px;border-bottom:1px solid var(--line)}.data-card{margin-top:16px}.data-card>h3{margin-bottom:10px}.editor{grid-template-columns:repeat(2,minmax(220px,1fr));margin-top:16px}.editor small{color:var(--muted);font-size:11px;text-transform:none}.form-actions,.status-legend{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.table-wrap{width:100%;margin-top:12px;overflow-x:auto}table{width:100%;min-width:830px;border-collapse:collapse}th,td{padding:11px 9px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:#bbc5d2;background:#0a111a;font-size:10px;text-transform:uppercase}td{color:#e6ebf2;font-size:13px}.numeric{text-align:right}.pill{display:inline-block;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900;text-transform:uppercase}.pill.green{color:#062117;background:var(--green)}.pill.gold{color:#281b02;background:var(--gold)}.pill.red{color:#fff;background:#9d2a36}.pill.gray{color:#e4e9ef;background:#303a47}.row-actions{display:flex;gap:5px;flex-wrap:wrap}.mini{border:1px solid var(--line);border-radius:5px;padding:6px 8px;color:var(--text);background:#202a36;font-weight:700;cursor:pointer}.empty{padding:22px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);text-align:center}.print-card{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:16px}.print-card p{max-width:800px;margin-bottom:0;color:var(--muted)}.print-report{display:none}dialog{width:min(560px,calc(100% - 30px));border:1px solid var(--line);border-radius:10px;padding:0;color:var(--text);background:var(--panel);box-shadow:0 30px 90px #000}dialog::backdrop{background:rgba(0,0,0,.72)}.dialog-form{display:grid;gap:14px;padding:24px}.dialog-form h2{margin-bottom:4px}
@media(max-width:1200px){.app-shell{grid-template-columns:76px minmax(0,1fr)}.brand>div,.nav-button>span:last-child,.nav-label,.sidebar-card{display:none}.brand{justify-content:center;padding-inline:0}.nav-button{grid-template-columns:1fr;justify-items:center}.topbar{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:1fr}.filters{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:relative;width:100%;height:auto;padding:10px}.brand{display:none}.sidebar nav{display:flex;overflow-x:auto}.nav-button{min-width:63px}.main{padding:10px}.filters,.editor,.kpi-grid{grid-template-columns:1fr}.wide,.span-2{grid-column:auto}.panel{padding:14px}.section-heading,.print-card{align-items:flex-start;flex-direction:column}.kpi-grid article{border-right:0;border-bottom:1px solid var(--line)}}
@page{size:A4 landscape;margin:11mm}@media print{body{color:#111;background:#fff!important;font:9pt Arial,sans-serif}body:before,.sidebar,.topbar,.toolbar,.panel,dialog{display:none!important}.app-shell,.main{display:block;width:100%;padding:0}.print-report{display:block}.print-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #12283a;padding-bottom:8mm}.print-header h1{margin:0 0 2mm;font-size:20pt}.print-header p{margin:0;color:#444}.print-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:3mm;margin:5mm 0}.print-meta div{border:1px solid #aaa;padding:3mm}.print-meta span{display:block;color:#555;font-size:8pt}.print-meta strong{display:block;margin-top:1mm;font-size:11pt}.print-section{margin-top:6mm;break-inside:auto}.print-section h2{margin:0 0 3mm;border-bottom:1px solid #777;padding-bottom:2mm;font-size:13pt}.print-report table{min-width:0;font-size:8pt}.print-report thead{display:table-header-group}.print-report tr{break-inside:avoid;page-break-inside:avoid}.print-report th,.print-report td{border:1px solid #888;padding:2mm;color:#111;background:#fff}.print-report th{background:#e7edf1!important}.print-report tfoot{display:table-row-group;font-weight:bold}.print-footer{display:flex;justify-content:space-between;margin-top:7mm;border-top:1px solid #777;padding-top:3mm;color:#555}}
.section-copy{margin:7px 0 0;color:var(--muted)}.mail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.mail-settings{display:grid;gap:12px}.mail-settings>label{display:grid;gap:6px;color:#bdc6d2;font-size:10px;font-weight:900;text-transform:uppercase}.mail-settings small{color:var(--muted);font-size:11px;text-transform:none}.switch-label{display:flex!important;align-items:center;gap:8px!important;color:var(--text)!important;font-size:12px!important}.switch-label input{width:18px;min-height:18px;accent-color:var(--teal)}.placeholder-help{color:var(--muted);font-size:12px}.placeholder-help code{color:#dffcf7;background:#071019;padding:2px 5px;border-radius:4px}.mail-status-ok{color:var(--green)}.mail-status-warn{color:var(--gold)}
@media(max-width:760px){.mail-grid{grid-template-columns:1fr}}

/* Anteprima e stampa rateizzazioni: documento autonomo in stile Avvisi Bonari. */
.work-print-preview-card{display:grid;gap:14px;margin-top:18px}.work-print-preview{max-height:70vh;overflow:auto;padding:22px;border:1px solid #7186a34d;border-radius:14px;background:#d9dee5}.work-print-preview .print-doc{width:min(1120px,100%);margin:0 auto;padding:24px;background:#fff;color:#000;font:700 10px/1.28 Arial,Helvetica,sans-serif;box-shadow:0 12px 36px #0004}.work-print-preview .print-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #000}.work-print-preview .print-head h2{margin:0 0 3px;color:#000;font-size:19px;text-transform:uppercase}.work-print-preview .print-logo-text{text-align:right;font-weight:900;letter-spacing:1px}.work-print-preview .print-logo-text span{font-size:9px}.work-print-preview .print-context{display:flex;flex-wrap:wrap;gap:8px 28px;padding:9px 11px;border:1px solid #9aa5b3;background:#f4f6f8}.work-print-preview .print-section{margin-top:17px}.work-print-preview .print-section h3{margin:0 0 6px;color:#000;font-size:13px;text-transform:uppercase}.work-print-preview table{width:100%;min-width:850px;border-collapse:collapse;table-layout:fixed;color:#000;font-size:9px}.work-print-preview th,.work-print-preview td{border-bottom:1px solid #aab2bf;padding:5px;color:#000;background:#fff;font-weight:700;text-align:left;vertical-align:top;white-space:normal;overflow-wrap:anywhere}.work-print-preview th{background:#e8edf4;font-weight:900}.work-print-preview .strong{font-weight:900}.work-print-preview .number{text-align:right;white-space:nowrap}.work-print-preview .center{text-align:center}.work-print-preview .print-empty{text-align:center;padding:24px;color:#555}.work-print-preview .totals-print-table th,.work-print-preview .totals-print-table td{font-size:10px;font-weight:900;white-space:nowrap}.work-print-preview .print-note{margin-top:18px;padding-top:8px;border-top:1px solid #777;color:#444}.work-print-frame,.salary-print-frame{position:fixed;left:-10000px;top:0;width:1px;height:1px;border:0;visibility:hidden}.plans-print-table th:nth-child(1){width:22%}.plans-print-table th:nth-child(2){width:8%}.plans-print-table th:nth-child(3){width:19%}.plans-print-table th:nth-child(4){width:11%}.plans-print-table th:nth-child(5){width:6%}.plans-print-table th:nth-child(6){width:17%}.plans-print-table th:nth-child(7){width:10%}
@media(max-width:760px){.work-print-preview{padding:10px}.work-print-preview .print-doc{padding:14px}.work-print-preview .print-head{gap:12px;flex-direction:column}.work-print-preview-card .card-header{align-items:flex-start}}
.work-print-frame,.salary-print-frame{visibility:visible;pointer-events:none}
.kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr))}#view-ivs .section-heading>label{display:grid;gap:6px;min-width:130px;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}
@media(max-width:760px){.kpi-grid{grid-template-columns:1fr}}
