:root{--color-bg:#fafaf9;--color-surface:#fff;--color-surface-2:#f5f5f4;--color-line:#e9e7e4;--color-line-strong:#d6d3d1;--azienda-bg:#e2f0f9;--azienda-ink:#0f38bc;--color-ink:#0a0a0a;--color-ink-soft:#57534e;--color-ink-subtle:#736d67;--color-accent:#1f6f4a;--color-accent-soft:#e8f1ec;--color-accent-bright:#3eaa75;--color-accent-hover:#195a3c;--color-ok:#1f6f4a;--color-ok-soft:#e8f1ec;--color-warn:#92400e;--color-warn-soft:#fbeedd;--color-danger:#b91c1c;--color-danger-soft:#fbe7e7;--color-info:#1e3a8a;--color-info-soft:#e7ecf8;--font-sans:var(--font-inter), system-ui, sans-serif;--font-display:var(--font-inter-tight), system-ui, sans-serif;--font-mono:var(--font-jetbrains-mono), ui-monospace, monospace;--bg:var(--color-bg);--surface:var(--color-surface);--surface-2:var(--color-surface-2);--border:var(--color-line);--border-strong:var(--color-line-strong);--text:var(--color-ink);--text-muted:var(--color-ink-soft);--text-subtle:var(--color-ink-subtle);--accent:var(--color-accent);--accent-hover:var(--color-accent-hover);--accent-soft:var(--color-accent-soft);--accent-bright:var(--color-accent-bright);--ok:var(--color-ok);--ok-bg:var(--color-ok-soft);--danger-bg:var(--color-danger-soft);--warning:var(--color-warn);--warning-soft:var(--color-warn-soft);--danger:var(--color-danger);--danger-soft:var(--color-danger-soft);--info:var(--color-info);--info-soft:var(--color-info-soft);--purple:#6b21a8;--purple-soft:#efe7f8;--color-priorita-ink-arrow:#354052;--color-priorita-ricontatto-app:#e7f8f6;--color-priorita-ricontatto-app-accent:#45cdbd;--color-priorita-da-contattare-consigliata:#fbe4fb;--color-priorita-da-contattare-consigliata-accent:#a30cb0;--color-priorita-ricontatto-fascia:#ffdfd2;--color-priorita-ricontatto-fascia-accent:#b84d4d;--color-priorita-da-contattare-segnata:#f5e2bf;--color-priorita-da-contattare-segnata-accent:#e69c13;--color-priorita-altro:#bfcef5;--color-priorita-altro-accent:#3d67d3;--color-committente:#fdc400;--color-committente-soft:#fff6d1;--color-committente-ink:#1a1a1a;--color-committente-on:#fff;--rail-bg:#17402d;--rail-bg-end:#133525;--rail-line:#ffffff1c;--rail-text:#b2cfc0;--rail-text-strong:#edf6f1;--rail-active:#4cc28738;--rail-mark:#4cc287;--shadow-1:0 1px 2px #0a0a0a08, 0 4px 14px -8px #0a0a0a14;--shadow-2:0 2px 4px #0a0a0a0a, 0 12px 28px -12px #0a0a0a24;--shadow-pop:0 8px 32px -8px #0a0a0a29;--ease:cubic-bezier(.4, 0, .2, 1);--dur-fast:.12s;--dur:.2s;--r-small:6px;--chip:4px;--r-card:12px;--r-ctl:8px;--r-modal:14px;--r-pill:999px;--nav-width:252px;--header-height:63px;--control-h-md:38px;--control-h-sm:32px;--control-h-xs:24px}
@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}html{scrollbar-gutter:stable}html,body{min-height:100%;font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}:is(html:has([data-veste]),body:has([data-veste])){height:100%;overflow:hidden}*{box-sizing:border-box}.co-avatar{box-sizing:border-box;font-family:var(--font-sans);letter-spacing:-.3px;border-radius:6px;flex:none;justify-content:center;align-items:center;font-weight:700;line-height:24px;display:inline-flex}.co-avatar.s24{width:24px;height:24px;font-size:10px;line-height:14px}.co-avatar.s30{width:30px;height:30px;font-size:15px;line-height:24px}.co-avatar.s32{width:32px;height:32px;font-size:14px;line-height:18px}.co-avatar.s40{width:40px;height:40px;font-size:15px;line-height:24px}.av-prospect{color:#0f38bc;background:#e2f0f9;border:1px solid #0f38bc}.av-upsell{color:#5514b5;background:#f4e6fe;border:1px solid #5514b5}.av-renew{color:#7b0686;background:#fbe4fb;border:1px solid #7b0686}.av-lost{background:var(--color-danger-soft);color:var(--color-danger);border:1px solid var(--color-danger)}.av-0{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent)}.av-1{background:var(--info-soft);color:var(--info);border:1px solid var(--info)}.av-2{background:var(--warning-soft);color:var(--warning);border:1px solid var(--warning)}.av-3{background:var(--purple-soft);color:var(--purple);border:1px solid var(--purple)}.av-4{color:#0e7490;background:#e6f0f1;border:1px solid #0e7490}.av-5{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--color-line-strong)}a{color:inherit;text-decoration:none}code,.mono{font-family:var(--font-mono);font-size:.92em}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.modal-form{gap:12px;display:grid}.modal-form label{color:var(--text-muted);gap:5px;font-size:12px;font-weight:600;display:grid}.modal-form label.checkbox-row{color:var(--text);flex-direction:row;align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}.modal-form label.checkbox-row input[type=checkbox]{flex-shrink:0;width:16px;height:16px;margin:0}.input{border:1px solid var(--border-strong);border-radius:var(--r-ctl);height:38px;font:inherit;color:var(--text);width:100%;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);background:#fff;padding:0 12px}.input:focus{border-color:var(--accent-bright);outline:none;box-shadow:0 0 0 3px #1f6f4a29}select.input{appearance:none;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6l4 4 4-4' stroke='%23555e6b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px;padding-right:36px}select.input:disabled{cursor:not-allowed;opacity:.55;background-color:var(--surface-2,#f4f5f7)}.btn-primary,.btn-danger,.btn-secondary,.btn-ghost{border-radius:var(--r-ctl);cursor:pointer;height:38px;font:inherit;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),opacity var(--dur-fast) var(--ease);justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:560;display:inline-flex}.btn-primary{background:var(--accent);color:#fff;border:0}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{background:var(--danger);color:#fff;border:0}.btn-danger:hover{background:#991b1b}.btn-secondary{border:1px solid var(--border-strong);color:var(--text);background:#fff}.btn-secondary:hover{background:var(--surface-2)}.btn-ghost{color:var(--text-muted);background:0 0;border:0;height:32px;padding:0 10px}.btn-ghost:hover{color:var(--text);background:#0a0a0a0d}.btn-primary:disabled,.btn-danger:disabled,.btn-secondary:disabled,.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.btn-sm{height:32px;padding:0 10px;font-size:13px}.check-label{color:var(--text);align-items:center;gap:8px;font-size:13px;font-weight:500;display:inline-flex}.row-actions{flex-wrap:wrap;gap:6px;display:flex}.section-title{font-size:14px;font-weight:650;font-family:var(--font-display);margin:4px 0 0}.form-hint{color:var(--text-muted);margin:0;font-size:13px;line-height:1.45}.checkbox-row{align-items:center;gap:8px;font-size:14px;display:flex}.kv-list{gap:12px;margin:0 0 12px;display:grid}.kv-list div{gap:2px;display:grid}.kv-list dt{color:var(--text-muted);font-size:12px}.kv-list dd{margin:0;font-size:16px;font-weight:600}.muted{color:var(--text-muted)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);max-width:880px;box-shadow:var(--shadow-1);padding:20px 24px}.panel h1{font-family:var(--font-display);margin:0 0 8px;font-size:22px}.alert{border-radius:var(--r-ctl);margin:0;padding:10px 12px;font-size:14px}.alert-ok{background:var(--ok-bg);color:var(--ok)}.alert-error{background:var(--danger-bg);color:var(--danger)}.alert-warn{background:var(--color-warn-soft);color:var(--color-warn)}.stats-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.stat-card{border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--surface-2);padding:12px 14px}.stat-card strong{letter-spacing:-.02em;font-size:20px;font-family:var(--font-display);display:block}.stat-card span{color:var(--text-muted);font-size:12px}
