@charset "UTF-8";:root{--zl-bg: #f4f6fa;--zl-surface: #ffffff;--zl-surface-alt: #f8f9fb;--zl-surface-tint: #f5f8ff;--zl-surface-tint-2: #f8faff;--zl-navy: #0f1d35;--zl-navy-light: #1b2c4b;--zl-navy-soft: #1e3a5f;--zl-ink: #0f1d35;--zl-ink-2: #5a6b7f;--zl-ink-3: #8e99a8;--zl-ink-on-dark: #ffffff;--zl-ink-on-dark-2: rgba(255, 255, 255, .66);--zl-ink-on-dark-3: rgba(255, 255, 255, .4);--zl-border: #e8ecf1;--zl-border-strong: #c7d2e0;--zl-border-soft: #f0f2f5;--zl-border-sel: #bfd4f5;--zl-blue: #3b82f6;--zl-blue-dark: #1d4ed8;--zl-blue-ink: #1e40af;--zl-blue-bg: #dbeafe;--zl-blue-soft: #eef4fe;--zl-blue-light: #60a5fa;--zl-green: #22c55e;--zl-green-bg: #dcfce7;--zl-green-ink: #166534;--zl-green-border: #bbf7d0;--zl-green-soft: #f0fdf4;--zl-amber: #f59e0b;--zl-amber-bg: #fef3c7;--zl-amber-soft: #fffbeb;--zl-amber-ink: #92400e;--zl-amber-border: #fde68a;--zl-red: #dc2626;--zl-red-2: #ef4444;--zl-red-bg: #fee2e2;--zl-red-soft: #fef2f2;--zl-red-ink: #991b1b;--zl-red-border: #fecaca;--zl-cyan-bg: #cffafe;--zl-cyan-ink: #155e75;--zl-neutral-bg: #f0f2f5;--zl-neutral-ink: #5a6b7f;--zl-scroll-track: #edf1f7;--zl-scroll-thumb: #93a4bc;--zl-scroll-thumb-hover: #6b7f9c;--zl-font: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--zl-mono: "DM Mono", ui-monospace, "SF Mono", Menlo, monospace;--zl-r-badge: 4px;--zl-r-btn: 7px;--zl-r-field: 8px;--zl-r-card: 10px;--zl-r-dialog: 14px;--zl-topbar: 52px;--zl-tabbar: 56px;--zl-row: 42px;--zl-touch: 40px;--zl-nav-open: 196px;--zl-nav-closed: 64px;--zl-shadow-fab: 0 8px 20px rgba(15, 29, 53, .28);--zl-shadow-drawer: -14px 0 40px rgba(15, 29, 53, .18);--zl-shadow-dialog: 0 22px 60px rgba(15, 29, 53, .32);--zl-shadow-pop: 0 10px 26px rgba(15, 29, 53, .14)}@keyframes zl-spin{to{transform:rotate(360deg)}}@keyframes zl-fade-in{0%{opacity:0}to{opacity:1}}@keyframes zl-drawer-in{0%{transform:translate(30px);opacity:.3}to{transform:translate(0);opacity:1}}@keyframes zl-pop-in{0%{transform:translateY(-6px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes zl-pulse-dot{0%,to{opacity:.25}50%{opacity:1}}@keyframes zl-attesa-scorri{0%{left:-40%}to{left:100%}}@keyframes zl-scan{0%{top:8%}50%{top:88%}to{top:8%}}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--zl-font);background:var(--zl-bg);color:var(--zl-ink);font-size:13px;line-height:1.4;-webkit-font-smoothing:antialiased}a{color:var(--zl-blue);text-decoration:none}a:hover{color:var(--zl-blue-dark)}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer}img{display:block;max-width:100%}*{scrollbar-width:thin;scrollbar-color:var(--zl-scroll-thumb) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d3dae4;border-radius:8px;border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#afbac9;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:active{background:var(--zl-ink-3)}::-webkit-scrollbar-corner{background:transparent}.zl-mono{font-family:var(--zl-mono);font-synthesis-weight:none}.zl-label{font-size:9px;font-weight:600;color:var(--zl-ink-2);text-transform:uppercase;letter-spacing:.5px}.zl-muted{color:var(--zl-ink-3)}.zl-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zl-campo{display:flex;flex-direction:column;min-width:0}.zl-campo>.zl-label{margin-bottom:5px}.zl-input,.zl-textarea{width:100%;padding:9px 11px;border:1.5px solid var(--zl-border);border-radius:var(--zl-r-field);font-size:12px;color:var(--zl-ink);background:var(--zl-surface);outline:none;transition:border-color .12s}.zl-input::placeholder,.zl-textarea::placeholder{color:var(--zl-ink-3)}.zl-input:focus,.zl-textarea:focus{border-color:var(--zl-blue)}.zl-input:disabled,.zl-input[readonly],.zl-textarea:disabled,.zl-textarea[readonly]{background:var(--zl-surface-alt);color:var(--zl-ink-2)}.zl-input.mono,.zl-textarea.mono{font-family:var(--zl-mono)}.zl-input.errore,.zl-textarea.errore{border-color:var(--zl-red)}.zl-textarea{min-height:76px;resize:vertical;line-height:1.45}.zl-fl{position:relative;display:block;min-width:0}.zl-fl>.zl-input{height:50px;padding:20px 12px 6px;font-size:13px}.zl-fl>.zl-input::placeholder{color:transparent;transition:color .15s}.zl-fl>.zl-input:focus::placeholder{color:var(--zl-ink-3)}.zl-fl>.zl-fl-et{position:absolute;left:13px;top:25px;transform:translateY(-50%);max-width:calc(100% - 26px);font-size:13px;color:var(--zl-ink-3);pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:top .15s ease,font-size .15s ease,color .15s ease,transform .15s ease}.zl-fl>.zl-input:focus~.zl-fl-et,.zl-fl>.zl-input:not(:placeholder-shown)~.zl-fl-et,.zl-fl>.zl-input:-webkit-autofill~.zl-fl-et{top:7px;transform:none;font-size:10px;font-weight:600;letter-spacing:.3px}.zl-fl>.zl-input:focus~.zl-fl-et{color:var(--zl-blue)}.zl-fl>.zl-input.errato~.zl-fl-et,.zl-fl>.zl-input.errore~.zl-fl-et{color:var(--zl-red)}.zl-fl:focus-within>.zl-fl-et{top:7px;transform:none;font-size:10px;font-weight:600;letter-spacing:.3px;color:var(--zl-blue)}.zl-fl:has(.zl-input:not(:placeholder-shown))>.zl-fl-et{top:7px;transform:none;font-size:10px;font-weight:600;letter-spacing:.3px}.zl-fl:has(.zl-input:focus) .zl-input::placeholder,.zl-fl:focus-within .zl-input::placeholder{color:var(--zl-ink-3)}.zl-aiuto{font-size:10px;color:var(--zl-ink-3);margin-top:4px}.zl-errore-testo{font-size:10px;color:var(--zl-red);margin-top:4px}.zl-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;height:36px;border-radius:var(--zl-r-btn);border:1px solid var(--zl-border);background:var(--zl-surface);color:var(--zl-ink-2);font-size:12px;font-weight:600;white-space:nowrap;transition:background .12s,border-color .12s,color .12s}.zl-btn:hover{border-color:var(--zl-border-strong);color:var(--zl-ink)}.zl-btn:disabled{opacity:.5;cursor:not-allowed}.zl-btn.primario{background:var(--zl-blue);border-color:var(--zl-blue);color:#fff}.zl-btn.primario:hover{background:var(--zl-blue-dark);border-color:var(--zl-blue-dark)}.zl-btn.navy{background:var(--zl-navy);border-color:var(--zl-navy);color:#fff}.zl-btn.navy:hover{background:var(--zl-navy-soft)}.zl-btn.pericolo{background:var(--zl-red);border-color:var(--zl-red);color:#fff}.zl-btn.pericolo:hover{background:#b91c1c}.zl-btn.pericolo-soft{background:var(--zl-red-soft);border-color:var(--zl-red-border);color:var(--zl-red)}.zl-btn.pericolo-soft:hover{background:var(--zl-red-bg)}.zl-btn.ghost{border-color:transparent;background:transparent}.zl-btn.ghost:hover{background:var(--zl-bg)}.zl-btn.piccolo{height:30px;padding:0 10px;font-size:11px}.zl-btn.icona{width:var(--zl-touch);height:var(--zl-touch);padding:0}.zl-btn.pieno{width:100%}.zl-btn.grande{height:44px;font-size:13px}.zl-card{background:var(--zl-surface);border:1px solid var(--zl-border);border-radius:var(--zl-r-card)}.zl-card-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--zl-border-soft)}.zl-card-h .titolo{font-size:13px;font-weight:700;color:var(--zl-ink)}.zl-card-h .sotto{font-size:10px;color:var(--zl-ink-3);margin-top:1px}.zl-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:var(--zl-r-badge);font-size:9px;font-weight:600;white-space:nowrap;line-height:1.5}.zl-badge.ok,.zl-badge.verde{background:var(--zl-green-bg);color:var(--zl-green-ink)}.zl-badge.warn,.zl-badge.ambra{background:var(--zl-amber-bg);color:var(--zl-amber-ink)}.zl-badge.err,.zl-badge.rosso{background:var(--zl-red-bg);color:var(--zl-red-ink)}.zl-badge.info,.zl-badge.blu{background:var(--zl-blue-bg);color:var(--zl-blue-ink)}.zl-badge.neutro,.zl-badge.grigio{background:var(--zl-neutral-bg);color:var(--zl-neutral-ink)}.zl-badge.ciano{background:var(--zl-cyan-bg);color:var(--zl-cyan-ink)}.zl-badge.grande{font-size:10px;padding:3px 9px}.zl-modulo{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:var(--zl-bg)}.zl-modulo-corpo{flex:1;min-height:0;overflow-y:auto;padding:16px 18px 22px;display:flex;flex-direction:column;gap:14px}.zl-modulo-corpo>*{flex-shrink:0}.zl-drawer-corpo>*{flex-shrink:0}tbody tr.tono-warn .zl-badge,tbody tr.tono-err .zl-badge,tbody tr.tono-ok .zl-badge{background:#fff;box-shadow:inset 0 0 0 1px currentColor}.zl-drawer-corpo>.zl-btn{height:40px}.zl-griglia-kpi{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.zl-toggle{width:36px;height:20px;border-radius:10px;position:relative;cursor:pointer;flex-shrink:0;background:#d3dae4;transition:background .15s;border:0;padding:0}.zl-toggle:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:left .15s ease}.zl-toggle.on{background:var(--zl-blue)}.zl-toggle.on:after{left:18px}.zl-nota{padding:10px 12px;border-radius:8px;font-size:11px;line-height:1.45;border:1px solid var(--zl-border);background:var(--zl-surface-alt);color:var(--zl-ink-2)}.zl-nota.ok{background:var(--zl-green-soft);border-color:var(--zl-green-border);color:var(--zl-green-ink)}.zl-nota.warn{background:var(--zl-amber-soft);border-color:var(--zl-amber-border);color:var(--zl-amber-ink)}.zl-nota.err{background:var(--zl-red-soft);border-color:var(--zl-red-border);color:var(--zl-red-ink)}.zl-nota.info{background:var(--zl-surface-tint-2);border-color:var(--zl-border-sel);color:var(--zl-blue-ink)}.zl-check{width:15px;height:15px;border-radius:4px;border:1.5px solid #dce3ed;background:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .1s,border-color .1s}.zl-check svg{opacity:0}.zl-check.on,.zl-check.parziale{background:var(--zl-blue);border-color:var(--zl-blue)}.zl-check.on svg,.zl-check.parziale svg{opacity:1}.zl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.zl-tip{position:fixed;z-index:10000;max-width:280px;padding:7px 10px;border-radius:7px;background:var(--zl-navy);color:#fff;font-family:var(--zl-font, inherit);font-size:11px;font-weight:500;line-height:1.35;box-shadow:var(--zl-shadow-pop);pointer-events:none;opacity:0;transform:translateY(-3px);transition:opacity .12s ease,transform .12s ease;visibility:hidden}.zl-tip.visibile{opacity:1;transform:translateY(0);visibility:visible}.zl-tip:before{content:"";position:absolute;top:-4px;left:var(--freccia, 50%);width:8px;height:8px;margin-left:-4px;background:var(--zl-navy);transform:rotate(45deg)}.zl-tip.sopra:before{top:auto;bottom:-4px}.grecaptcha-badge{visibility:hidden!important}#CookiebotWidget{display:none!important}app-root{display:block;height:100%}html,body{height:100%;overscroll-behavior:none}body{background:var(--zl-navy)}.ps-overlay{position:fixed;inset:0;background:#0f1d358c;display:flex;align-items:flex-end;justify-content:center;z-index:60;animation:zl-fade-in .15s ease}.ps-overlay.centro{align-items:center;padding:16px}.ps-dialog{width:100%;max-width:480px;max-height:calc(100vh - 24px);background:#fff;border-radius:18px 18px 0 0;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--zl-shadow-dialog);animation:zl-drawer-in .2s ease;padding-bottom:env(safe-area-inset-bottom)}.ps-overlay.centro .ps-dialog{border-radius:16px;animation:zl-pop-in .18s ease}.ps-dialog-h{padding:14px 18px;border-bottom:1px solid var(--zl-border);display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.ps-dialog-h .t{font-size:15px;font-weight:700;color:var(--zl-ink)}.ps-dialog-h .s{font-size:11px;color:var(--zl-ink-3);margin-top:2px}.ps-dialog-c{flex:1;min-height:0;overflow-y:auto;padding:16px 18px;display:flex;flex-direction:column;gap:12px}.ps-dialog-f{padding:12px 18px;border-top:1px solid var(--zl-border);background:var(--zl-surface-alt);display:flex;gap:8px}.ps-dialog-f .zl-btn{flex:1;height:44px}.ps-x{width:32px;height:32px;border-radius:8px;border:0;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.ps-x:hover{background:var(--zl-bg)}.ps-s{font-size:11px;color:var(--zl-ink-3);line-height:1.45}.ps-err{font-size:11px;color:var(--zl-red-ink);min-height:14px}.ps-card{background:#fff;border:1px solid var(--zl-border);border-radius:14px;padding:14px 16px}.ps-titolo{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--zl-ink-3);margin:4px 0}.ps-opzione{width:100%;text-align:left;border:1.5px solid var(--zl-border);border-radius:12px;padding:12px 14px;background:#fff;cursor:pointer;display:flex;align-items:center;gap:12px;min-height:56px}.ps-opzione.on{border-color:var(--zl-blue);background:var(--zl-surface-tint-2)}.ps-opzione:disabled{opacity:.5;cursor:not-allowed}.ps-opzione .radio{width:18px;height:18px;border-radius:50%;border:2px solid var(--zl-border-strong);flex-shrink:0;display:flex;align-items:center;justify-content:center}.ps-opzione.on .radio{border-color:var(--zl-blue)}.ps-opzione.on .radio:after{content:"";width:9px;height:9px;border-radius:50%;background:var(--zl-blue)}.ps-opzione .c{flex:1;min-width:0}.ps-opzione .n{font-size:13px;font-weight:600;color:var(--zl-ink)}.ps-opzione .m{font-size:11px;color:var(--zl-ink-3);margin-top:2px}.ps-opzione .p{font-size:13px;font-weight:700;font-family:var(--zl-mono);white-space:nowrap}.ps-pill-riga{display:flex;gap:6px;flex-wrap:wrap}.ps-pill{padding:8px 14px;border-radius:20px;border:1.5px solid var(--zl-border);background:#fff;font-size:12px;font-weight:600;color:var(--zl-ink-2);cursor:pointer;min-height:36px}.ps-pill.on{border-color:var(--zl-blue);background:var(--zl-blue);color:#fff}.ps-riga-toggle{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;cursor:pointer}.ps-riga-toggle .n{font-size:13px;font-weight:600}.ps-kv{display:flex;justify-content:space-between;gap:10px;font-size:12px;padding:8px 0;border-bottom:1px solid var(--zl-border-soft)}.ps-kv span:first-child{color:var(--zl-ink-3)}.ps-kv b{font-weight:600;text-align:right}.ps-kv:last-child{border-bottom:0}.ps-link{border:0;background:transparent;color:var(--zl-blue);font-size:12px;font-weight:600;cursor:pointer;padding:6px 0;text-align:left}.ps-tratteggiato{width:100%;border:1.5px dashed var(--zl-border-strong);border-radius:12px;padding:12px;background:transparent;color:var(--zl-blue);font-size:12px;font-weight:600;cursor:pointer;min-height:48px}.ps-contatore{display:inline-flex;align-items:center;gap:10px}.ps-contatore button{width:40px;height:40px;border-radius:10px;border:1px solid var(--zl-border);background:#fff;font-size:18px;cursor:pointer}.ps-contatore button:disabled{opacity:.4}.ps-contatore .n{min-width:28px;text-align:center;font-size:18px;font-weight:700;font-family:var(--zl-mono)}.ps-sotto{display:flex;align-items:center;gap:10px;margin-bottom:8px}.ps-sotto .back{width:36px;height:36px;border-radius:9px;border:1px solid var(--zl-border);background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.ps-sotto .t{font-size:16px;font-weight:700}
