@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#101d32;--navy2:#1c3352;--blue:#3867f2;--ink:#17243a;--muted:#74839a;--line:#e5eaf2;--bg:#f5f7fb;--green:#11845b;--greenbg:#e4f7ee;--red:#c64148;--redbg:#fff0f0;--amber:#986512;--amberbg:#fff4d9;--shadow:0 7px 24px #182b4b08}
*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:'DM Sans',sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer;transition:.16s ease}.layout{min-height:100vh;display:flex}.sidebar{width:252px;background:linear-gradient(180deg,#111f34,#142640);color:#fff;padding:24px 15px 15px;display:flex;flex-direction:column;flex-shrink:0;box-shadow:5px 0 25px #14243a08}.brand{display:flex;align-items:center;gap:11px;padding:2px 10px 30px}.brand-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#5b85ff,#3159db);display:grid;place-items:center;font-weight:800;font-family:Manrope;box-shadow:0 7px 18px #3867f24a}.brand b{display:block;font-size:14px;letter-spacing:-.2px}.brand small{display:block;color:#9aacc5;font-size:9px;letter-spacing:1.6px;margin-top:5px}.workspace-label{font-size:9px;color:#70849e;letter-spacing:1.8px;font-weight:800;padding:0 13px 10px}.sidebar nav{display:grid;gap:5px}.nav{border:0;background:transparent;color:#aab8cc;text-align:left;padding:12px 13px;border-radius:11px;display:flex;align-items:center;gap:12px;font-size:12px;font-weight:600}.nav span{font-size:17px;width:21px;text-align:center}.nav em{font-style:normal;font-size:10px;margin-left:auto;background:#ffffff14;border-radius:6px;padding:3px 6px}.nav.active{background:linear-gradient(100deg,#2b4261,#263c59);color:white;box-shadow:inset 3px 0 #7fa1ff}.nav:hover:not(.active){background:#ffffff0b;color:white}.side-spacer{flex:1;min-height:30px}.local-status{border-top:1px solid #ffffff18;padding:16px 9px;display:flex;gap:10px;font-size:10px;align-items:flex-start}.live-dot{width:8px;height:8px;background:#46d4a0;border-radius:50%;margin-top:3px;box-shadow:0 0 0 4px #46d4a01b}.local-status b{display:block;font-weight:700}.local-status small{display:block;color:#9aacc5;margin-top:4px;font-size:9px}.settings-nav{margin-bottom:15px}.side-footer{border-top:1px solid #ffffff18;padding:13px 9px 0;font-size:10px;color:#b2c1d4}.side-footer span{display:block;font-size:9px;color:#7f93ad;margin-top:4px}.main{flex:1;min-width:0;padding:27px clamp(18px,2.8vw,42px) 28px;max-width:1900px;margin:auto}.topbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.eyebrow{font-size:9px;letter-spacing:1.7px;color:#8492a7;font-weight:800}.topbar h1{font-family:Manrope,sans-serif;font-size:27px;margin:5px 0 0;letter-spacing:-1px}.top-actions{display:flex;align-items:center;gap:12px}.date-pill{font-size:10px;color:#72819a;background:#fff;border:1px solid var(--line);padding:9px 12px;border-radius:9px}.btn{border-radius:9px;padding:10px 14px;font-size:11px;font-weight:800;white-space:nowrap}.primary{background:var(--blue);border:1px solid var(--blue);color:#fff;box-shadow:0 5px 12px #3867f224}.primary:hover{background:#2855d5;transform:translateY(-1px)}.secondary{background:white;border:1px solid #dfe6f0;color:#43536a}.secondary:hover{border-color:#9db3ed;background:#f8faff}.danger{background:#c64148;border:1px solid #c64148;color:#fff}.danger.subtle{background:#fff;border-color:#f2c9cb;color:#bd3e45}.danger.subtle:hover{background:#fff4f4}.hero{background:radial-gradient(circle at 89% 20%,#4269a3 0,#29486e 23%,transparent 45%),linear-gradient(110deg,#172b45,#203d60);border-radius:17px;color:#fff;padding:25px 29px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative;min-height:133px;box-shadow:0 12px 30px #1a34551b}.hero h2{font-family:Manrope,sans-serif;font-size:25px;margin:8px 0 5px;letter-spacing:-.8px}.hero p{color:#d0dced;font-size:11px;margin:0;line-height:1.6}.hero-kicker{color:#b6ceff}.hero-art{width:190px;align-self:stretch;position:relative;display:grid;place-items:center}.art-ring{position:absolute;width:170px;height:170px;border:1px solid #ffffff20;border-radius:50%;box-shadow:0 0 0 23px #ffffff08,0 0 0 46px #ffffff05;top:-62px;right:5px}.art-icon{font-size:45px;color:#a9c6ff;z-index:1}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:17px 0}.metric,.panel{background:#fff;border:1px solid #e7ecf3;border-radius:14px;box-shadow:var(--shadow)}.metric{padding:17px 19px;position:relative;overflow:hidden}.metric-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:10px;color:#738198;font-weight:700}.metric-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;font-size:14px;font-weight:800}.blue-icon{background:#edf2ff;color:#3867e8}.amber-icon{background:#fff4dd;color:#a87816}.purple-icon{background:#f1edff;color:#7859d7}.green-icon{background:#e4f7ee;color:#11845b}.red-icon{background:#fff0f0;color:#c64148}.metric strong{display:block;font-family:Manrope,sans-serif;font-size:29px;letter-spacing:-1.2px;margin:9px 0 2px}.metric .positive-number{color:var(--green)}.metric small{font-size:9px;color:#9aa5b4}.dashboard-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:15px;margin-bottom:15px}.panel{padding:20px}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.panel-heading h3{font:800 13px Manrope,sans-serif;margin:0;letter-spacing:-.2px}.panel-heading p{font-size:10px;color:#909caf;margin:5px 0 0}.link-btn{border:0;background:transparent;color:var(--blue);font-size:10px;font-weight:800;padding:4px}.link-btn:hover{text-decoration:underline}.activity-list{display:grid}.activity{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #f0f3f7}.activity:first-child{border-top:0}.avatar{width:33px;height:33px;border-radius:11px;background:#edf2ff;color:#315fd2;display:grid;place-items:center;font-size:10px;font-weight:800;flex-shrink:0}.activity-main{flex:1;min-width:0}.activity-main b{display:block;font-size:11px}.activity-main small{display:block;font-size:9px;color:#8995a6;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity time{font-size:9px;color:#718097;white-space:nowrap}.pipeline{display:grid;gap:13px}.pipe-row{display:grid;grid-template-columns:110px 1fr 20px;gap:9px;align-items:center;font-size:10px}.pipe-label{color:#68788e}.pipe-track{height:7px;border-radius:9px;background:#edf1f7;overflow:hidden}.pipe-fill{height:100%;border-radius:9px;background:linear-gradient(90deg,#6b8cff,#3867f2)}.pipe-num{text-align:right;font-weight:800;color:#53647a}.source-panel{margin-bottom:14px}.source-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.source-card{background:#f8faff;border:1px solid #edf1f7;border-radius:11px;padding:14px}.source-card-head{display:flex;justify-content:space-between;font-size:11px;font-weight:800}.source-card strong{font-family:Manrope;font-size:23px;display:block;margin:9px 0 3px}.source-card small{font-size:9px;color:#8794a7}.source-card .pipe-track{margin-top:10px}.info-banner{display:flex;gap:11px;background:#edf4ff;border:1px solid #dce8ff;border-radius:11px;padding:13px 15px;color:#38506e}.info-banner>span{font-size:17px}.info-banner b{font-size:10px}.info-banner p{font-size:9px;line-height:1.6;margin:4px 0 0;color:#637791}.hidden{display:none!important}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.search{display:flex;align-items:center;gap:8px;background:white;border:1px solid #e0e6ef;border-radius:9px;padding:0 11px;min-width:220px;flex:1;max-width:380px}.search:focus-within{border-color:#8ba6f6;box-shadow:0 0 0 3px #3867f212}.search span{font-size:22px;color:#8290a2}.search input{border:0;outline:0;width:100%;padding:11px 0;font-size:11px}.toolbar select{background:#fff;border:1px solid #dfe6ef;border-radius:9px;padding:10px;color:#53647a;font-size:10px}.table-panel{padding:0;overflow:hidden}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:900px}th{text-align:left;font-size:8px;letter-spacing:1px;color:#8996a8;background:#fafbfd;padding:14px 15px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:13px 15px;border-bottom:1px solid #f0f3f7;font-size:10px;color:#566579}tbody tr:hover{background:#fbfcff}tbody tr:last-child td{border-bottom:0}.client-cell{display:flex;gap:9px;align-items:center}.client-cell b{display:block;font-size:11px;color:#25354a}.client-cell small{display:block;color:#96a0ae;font-size:9px;margin-top:4px}.badge{display:inline-block;border-radius:6px;padding:5px 7px;font-size:9px;font-weight:800;white-space:nowrap}.badge.blue{background:#eaf0ff;color:#315fc9}.badge.green{background:var(--greenbg);color:var(--green)}.badge.red{background:var(--redbg);color:var(--red)}.badge.amber{background:var(--amberbg);color:var(--amber)}.badge.gray{background:#edf0f4;color:#657386}.row-action{border:1px solid #e2e8f0;background:white;color:#566579;border-radius:7px;padding:6px 8px;font-size:9px;font-weight:700}.row-action:hover{border-color:#9eb5f6;color:var(--blue)}.empty{text-align:center;padding:43px 20px}.empty-icon{width:43px;height:43px;border-radius:14px;background:#edf2ff;color:var(--blue);font-size:24px;display:grid;place-items:center;margin:0 auto 12px}.empty h3{font:800 14px Manrope;margin:0 0 6px}.empty p{font-size:11px;color:#8793a3;margin:0 0 15px}.table-foot{font-size:9px;color:#94a0ae;margin:11px 2px}.agenda-list{display:grid}.agenda-item{display:flex;gap:13px;padding:14px 0;border-top:1px solid #eff2f6;align-items:center}.agenda-item:first-child{border-top:0}.agenda-date{min-width:58px;border-radius:10px;background:#eef3ff;color:#315fc9;text-align:center;padding:8px 4px}.agenda-date b{display:block;font:800 17px Manrope}.agenda-date small{font-size:8px;text-transform:uppercase}.agenda-detail{flex:1}.agenda-detail b{font-size:11px}.agenda-detail p{font-size:10px;color:#78869a;margin:5px 0}.padded{padding:19px 20px 0}.sales-metrics .metric strong{font-size:24px}.report-sources{display:grid;gap:14px}.source-report{padding:14px 0;border-bottom:1px solid #f0f3f7}.source-report:last-child{border-bottom:0}.source-report-head{display:flex;justify-content:space-between;font-size:11px;font-weight:800;margin-bottom:9px}.source-report p{font-size:10px;color:#7e8b9f;margin:6px 0 0}.settings-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:15px}.settings-block{display:flex;gap:12px;padding:15px 0;border-top:1px solid #f0f3f7}.settings-symbol{width:34px;height:34px;border-radius:10px;background:#edf2ff;color:#3867e8;display:grid;place-items:center;flex-shrink:0}.settings-block b{font-size:11px}.settings-block p,.settings-help,.danger-zone p{font-size:10px;line-height:1.6;color:#8190a4;margin:5px 0 10px}.setting-label,.full-label{display:grid;gap:7px;font-size:10px;font-weight:800;color:#536277;margin-bottom:13px}.setting-label input,.full-label input,.full-label select,.full-label textarea{width:100%;border:1px solid #dce4ed;border-radius:8px;padding:10px 11px;font-size:11px;outline:none;background:white}.settings-help{margin-top:9px}.panel hr{border:0;border-top:1px solid #edf0f5;margin:20px 0}.danger-zone b{font-size:11px;color:#bd3e45}.app-footer{font-size:9px;color:#8e9bad;padding:20px 2px 0}.app-footer span{float:right}.modal-backdrop{position:fixed;inset:0;background:#0b1728b8;backdrop-filter:blur(4px);display:grid;place-items:center;padding:16px;z-index:10}.modal{width:min(660px,100%);max-height:94vh;overflow:auto;background:#fff;border-radius:17px;padding:23px;box-shadow:0 25px 80px #0003}.modal-wide{width:min(850px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:18px}.modal-head h2{font:800 22px Manrope;margin:5px 0 0;letter-spacing:-.5px}.modal-subtitle{font-size:10px;color:#8794a7;margin:5px 0 0}.close-btn{border:0;background:#f1f4f8;border-radius:9px;width:32px;height:32px;font-size:22px;color:#64748b}.tabs{display:flex;gap:4px;border-bottom:1px solid #e8edf4;margin-bottom:18px;overflow:auto}.tab{border:0;background:transparent;padding:11px 12px;font-size:10px;color:#75839a;font-weight:800;white-space:nowrap;border-bottom:2px solid transparent}.tab.active{color:var(--blue);border-bottom-color:var(--blue)}.tab span{display:inline-grid;place-items:center;background:#edf1f7;border-radius:5px;min-width:18px;padding:2px;margin-left:3px;font-size:9px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label{display:grid;gap:6px;font-size:10px;font-weight:800;color:#536277}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #dce4ed;border-radius:8px;padding:10px 11px;outline:none;font-size:11px;color:#25354a;background:#fff}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.full-label input:focus,.full-label select:focus,.full-label textarea:focus{border-color:#7c9bf0;box-shadow:0 0 0 3px #3567e814}.form-grid .full{grid-column:1/-1}.form-actions-inline{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.modal-foot{display:flex;justify-content:space-between;align-items:center;gap:9px;margin-top:21px;padding-top:15px;border-top:1px solid var(--line)}.foot-right{display:flex;gap:8px}.commission-preview{display:flex;justify-content:space-between;align-items:center;background:#edf8f2;border:1px solid #d6f0e2;border-radius:10px;padding:14px;margin-top:16px;font-size:10px;color:#49705e}.commission-preview strong{font:800 18px Manrope;color:#11845b}.history-intro{font-size:10px;color:#8190a4;margin-bottom:12px}.history-list{display:grid;gap:0;max-height:310px;overflow:auto}.history-item{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid #f0f3f7}.history-dot{width:8px;height:8px;border-radius:50%;background:#6487ec;margin-top:4px;flex-shrink:0}.history-item b{font-size:10px}.history-item small{font-size:9px;color:#91a0b1;margin-left:7px}.history-item p{font-size:10px;color:#65758a;margin:5px 0 0;white-space:pre-wrap}.history-add{margin-top:15px;display:grid;gap:8px}.history-add label{display:grid;gap:6px;font-size:10px;font-weight:800}.history-add textarea{border:1px solid #dce4ed;border-radius:8px;padding:10px;font-size:11px}.reason-warning{background:#fff3e0;border:1px solid #f4d7a2;color:#805a13;padding:11px;border-radius:9px;font-size:10px;line-height:1.5;margin-top:10px}.toast{position:fixed;bottom:20px;right:20px;background:#172b45;color:white;border-radius:10px;padding:12px 16px;font-size:11px;box-shadow:0 8px 30px #0002;z-index:20}
@media(max-width:1100px){.sidebar{width:220px}.metric-grid{gap:9px}.metric{padding:14px}.dashboard-grid{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.date-pill{display:none}}
@media(max-width:760px){.layout{display:block}.sidebar{width:100%;padding:11px 11px 8px}.brand{padding:0 4px 12px}.workspace-label,.side-spacer,.local-status,.side-footer{display:none}.sidebar nav{display:flex;overflow:auto;gap:4px}.nav{padding:9px 10px;white-space:nowrap;font-size:10px;gap:6px}.nav span{font-size:14px;width:auto}.nav em{display:none}.settings-nav{margin:5px 0 0}.main{padding:19px 12px 25px}.topbar{margin-bottom:16px}.topbar h1{font-size:22px}.top-actions{gap:0}.hero{padding:20px 17px;min-height:unset}.hero h2{font-size:21px}.hero p{max-width:260px}.hero-art{display:none}.metric-grid{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.metric{padding:13px}.metric strong{font-size:25px}.metric-top{font-size:9px}.metric-icon{width:26px;height:26px}.metric small{font-size:8px;line-height:1.4}.panel{padding:15px}.panel-heading{gap:6px}.panel-heading h3{font-size:12px}.panel-heading p{font-size:9px}.source-grid{gap:8px}.source-card{padding:10px}.toolbar{gap:7px}.search{max-width:none;flex-basis:100%}.toolbar select{flex:1;min-width:120px}.toolbar .btn{flex:1}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.modal{padding:17px}.modal-wide{width:100%}.modal-foot{align-items:stretch;flex-direction:column}.foot-right{justify-content:flex-end}.report-bar-row{grid-template-columns:100px 1fr 20px}.app-footer span{float:none;display:block;margin-top:5px}.info-banner{padding:11px}.info-banner p{font-size:9px}.date-pill{display:none}}
/* Schermata di accesso cloud */
.auth-screen{position:fixed;inset:0;z-index:9999;background:#f3f6fb;display:flex;align-items:center;justify-content:center;padding:22px}.auth-screen.hidden{display:none}.auth-card{width:min(100%,430px);background:#fff;border:1px solid #e2e8f0;border-radius:22px;padding:34px;box-shadow:0 22px 70px rgba(16,29,50,.13);display:flex;flex-direction:column;gap:14px}.auth-mark{width:54px;height:54px;display:flex;align-items:center;justify-content:center}.auth-card h1{margin:0;font-size:28px;color:#101d32}.auth-copy{margin:0 0 6px;color:#65738a}.auth-card label{display:flex;flex-direction:column;gap:7px;font-weight:600;color:#334155}.auth-card input{width:100%;padding:12px 13px;border:1px solid #d8e0ec;border-radius:10px;font:inherit}.auth-submit{width:100%;justify-content:center;margin-top:5px}.auth-link{border:0;background:transparent;color:#315fd2;cursor:pointer;padding:8px}.auth-message{font-size:13px;line-height:1.45;color:#64748b;margin:0}.auth-message.error{color:#b42318}.auth-message.ok{color:#137547}.cloud-toolbar{position:fixed;z-index:1000;right:14px;bottom:14px;background:#101d32;color:white;border-radius:12px;padding:9px 12px;display:flex;align-items:center;gap:12px;font-size:12px;box-shadow:0 6px 24px #101d3233}.cloud-toolbar.hidden{display:none}.cloud-toolbar button{border:1px solid #64748b;color:white;background:transparent;border-radius:7px;padding:5px 8px;cursor:pointer}

/* Importazione liste */
.imp-drop{border:2px dashed #cfd9ea;border-radius:14px;padding:26px 16px;text-align:center;background:#f8faff;margin-bottom:16px;transition:.15s}.imp-drop.over{border-color:var(--blue);background:#eef3ff}.imp-drop b{display:block;font:800 14px Manrope,sans-serif;margin-bottom:6px}.imp-drop p{font-size:10px;color:#7d8aa0;margin:0 0 14px}
.imp-row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.imp-status{font-size:11px;color:#536277;margin:0;flex:1}
.imp-options{display:grid;gap:8px;margin:16px 0 12px;font-size:11px;color:#43536a}.imp-options label{display:flex;gap:8px;align-items:center;cursor:pointer}.imp-options input{width:16px;height:16px}
.imp-hint{font-size:10px;color:#637791;background:#edf4ff;border:1px solid #dce8ff;border-radius:9px;padding:10px 12px;margin:0 0 10px;line-height:1.5}
.imp-preview{border:1px solid var(--line);border-radius:10px;max-height:340px}.imp-preview table{min-width:0}.imp-preview th{vertical-align:top;background:#f5f7fb;padding:8px}.imp-preview th small{display:block;margin-top:6px;font-size:9px;letter-spacing:0;color:#8190a4;font-weight:600;white-space:normal}.imp-preview td{padding:8px;font-size:10px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.imp-map{border:1px solid #dce4ed;border-radius:7px;padding:6px;font-size:10px;font-weight:700;color:#8190a4;background:#fff;min-width:130px}.imp-map.set{border-color:#8ba6f6;color:#2855d5;background:#eef3ff}
.imp-summary{font-size:11px;color:#43536a;margin:12px 0 0}.imp-summary b{font-size:14px;color:var(--green)}
/* Team */
.team-panel{margin-top:15px}.team-panel h3 .badge{margin-left:6px;vertical-align:middle}.team-list{display:grid}.team-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid #f0f3f7}.team-who{flex:1;min-width:0}.team-who b{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis}.team-who small{display:block;font-size:9px;color:#8794a7;margin-top:4px}.team-row select{border:1px solid #dce4ed;border-radius:8px;padding:8px;font-size:10px;background:#fff}
.muted{font-size:10px;color:#8794a7}
@media(max-width:760px){.team-row{flex-wrap:wrap}.team-who{flex-basis:100%}.imp-map{min-width:110px}}

/* ===== v2: pipeline Diso ===== */
:root{--yellow:#9a7a00;--yellowbg:#fff8d6;--purple:#6a4fd0;--purplebg:#f1edff;--orange:#c25e0c;--orangebg:#ffeedd}
body:not(.is-admin) .admin-only{display:none!important}
.badge.yellow{background:var(--yellowbg);color:var(--yellow)}.badge.purple{background:var(--purplebg);color:var(--purple)}.badge.orange{background:var(--orangebg);color:var(--orange)}
.pipe-fill.blue{background:linear-gradient(90deg,#6b8cff,#3867f2)}.pipe-fill.yellow{background:linear-gradient(90deg,#f5d55a,#e0b416)}.pipe-fill.purple{background:linear-gradient(90deg,#a28bf0,#6a4fd0)}.pipe-fill.gray{background:linear-gradient(90deg,#b8c2d0,#8796aa)}.pipe-fill.orange{background:linear-gradient(90deg,#ffae5c,#e8771a)}.pipe-fill.green{background:linear-gradient(90deg,#4cc994,#11845b)}.pipe-fill.red{background:linear-gradient(90deg,#f08a8f,#c64148)}
.pipe-row{grid-template-columns:120px 1fr 44px}.pipe-num small{display:block;font-size:8px;color:#8996a8;font-weight:600}
.blue-av{background:#edf2ff;color:#315fd2}.yellow-av{background:var(--yellowbg);color:var(--yellow)}.purple-av{background:var(--purplebg);color:var(--purple)}.gray-av{background:#edf0f4;color:#657386}.orange-av{background:var(--orangebg);color:var(--orange)}.green-av{background:var(--greenbg);color:var(--green)}.red-av{background:var(--redbg);color:var(--red)}
.clickable{cursor:pointer}.activity.clickable:hover{background:#f8faff}.late{color:var(--red)!important;font-weight:700}
.nav em.nav-alert{background:#e8771a;color:#fff}
/* Selettore Marketing / Diso Srl */
.source-switch{display:flex;background:#fff;border:1px solid var(--line);border-radius:11px;padding:3px;gap:3px}.source-switch button{border:0;background:transparent;border-radius:8px;padding:8px 13px;font-size:11px;font-weight:800;color:#6b7a90;display:flex;align-items:center;gap:7px}.source-switch button em{font-style:normal;font-size:9px;background:#edf1f7;border-radius:6px;padding:2px 6px}.source-switch button.active{background:var(--blue);color:#fff;box-shadow:0 4px 10px #3867f230}.source-switch button.active em{background:#ffffff30}
body[data-source="diso"] .source-switch button.active{background:var(--purple);box-shadow:0 4px 10px #6a4fd030}
body[data-source="diso"] .hero{background:radial-gradient(circle at 89% 20%,#6a5aa8 0,#3f356e 23%,transparent 45%),linear-gradient(110deg,#251c45,#372a66)}
/* Scheda: riquadro della pipeline */
.modal-head-right{display:flex;align-items:center;gap:10px}
.pipeline-box{background:#f8faff;border:1px solid #e3eaf6;border-radius:12px;padding:14px;margin-bottom:16px}.pipeline-box p{font-size:11px;color:#43536a;margin:6px 0 0;line-height:1.5}
.pipeline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.pipeline-actions:empty{display:none}
.yellow-btn{background:var(--yellowbg);border:1px solid #f0d97a;color:#7a6000}.yellow-btn:hover{background:#fff1b0}.purple-btn{background:var(--purple);border:1px solid var(--purple);color:#fff}.purple-btn:hover{background:#5a40bd}.gray-btn{background:#fff;border:1px solid #d5dce6;color:#536277}.gray-btn:hover{background:#f3f5f8}
.override-label{display:grid;gap:6px;font-size:10px;font-weight:800;color:#8794a7;margin-top:12px;max-width:280px}.override-label select{border:1px solid #dce4ed;border-radius:8px;padding:8px;font-size:11px;background:#fff}
/* Scelte a schede colorate */
.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.choice-grid.two{grid-template-columns:1fr 1fr}
.choice{position:relative;border:2px solid #e3e9f2;border-radius:12px;padding:14px 12px;cursor:pointer;display:grid;gap:4px;background:#fff;transition:.15s}.choice input{position:absolute;opacity:0;pointer-events:none}.choice b{font:800 13px Manrope,sans-serif}.choice small{font-size:10px;color:#8794a7}
.choice:hover{border-color:#c8d3e4}
.green-choice:has(input:checked){border-color:var(--green);background:var(--greenbg)}.green-choice b{color:var(--green)}
.orange-choice:has(input:checked){border-color:#e8771a;background:var(--orangebg)}.orange-choice b{color:var(--orange)}
.red-choice:has(input:checked){border-color:var(--red);background:var(--redbg)}.red-choice b{color:var(--red)}
.gray-choice:has(input:checked){border-color:#8796aa;background:#f1f4f8}
.blue-choice:has(input:checked){border-color:var(--blue);background:#eef3ff}.blue-choice b{color:var(--blue)}
.purple-choice:has(input:checked){border-color:var(--purple);background:var(--purplebg)}.purple-choice b{color:var(--purple)}
.choice:has(input:focus-visible){outline:3px solid #3867f240}
.check-line{display:flex;gap:8px;align-items:center;font-size:11px;color:#43536a;margin:12px 0 0;cursor:pointer}.check-line input{width:16px;height:16px}
.wa-box{background:#effaf3;border:1px solid #cdeedb;border-radius:10px;padding:12px;display:grid;gap:6px}.wa-box b{font-size:11px;color:#11845b}.wa-box small{font-size:10px;color:#5f7d6c}.wa-box textarea{border:1px solid #cdeedb;border-radius:8px;padding:9px;font-size:11px;width:100%}
#ni-done .reason-warning,#ni-eval{margin-bottom:6px}
/* Follow-up */
.sub-title{font:800 12px Manrope,sans-serif;margin:4px 0 4px;color:#25354a}.sub-help{font-size:10px;color:#8190a4;margin:0 0 12px;line-height:1.5}
.followup-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
.fu-step{display:grid;grid-template-columns:24px 1fr;gap:6px 10px;align-items:center;border:1px solid #e3e9f2;border-radius:11px;padding:12px;background:#fff}.fu-step b{font-size:11px}.fu-step input,.fu-step .btn{grid-column:2;width:100%;border:1px solid #dce4ed;border-radius:8px;padding:8px 9px;font-size:11px}
.fu-check{width:22px;height:22px;border-radius:50%;border:2px solid #d5dce6;display:grid;place-items:center;font-size:12px;color:transparent;font-weight:800}
.fu-step.done{border-color:#bfe8d3;background:#f3fbf7}.fu-step.done .fu-check{background:var(--green);border-color:var(--green);color:#fff}
.btn.small{padding:7px 10px;font-size:10px}
.followup-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.fu-card{background:#fff8ee;border:1px solid #f5e2c4;border-radius:11px;padding:13px;display:grid;gap:5px;align-content:start}.fu-card.ok{background:#f3fbf7;border-color:#cdeedb}.fu-card span{font-size:10px;font-weight:800;color:#6b5b3e}.fu-card.ok span{color:#2f6b4f}.fu-card strong{font:800 22px Manrope}.fu-card small{font-size:9px;color:#8794a7}.fu-card .row-action{text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Agenda */
.agenda-group{font:800 11px Manrope,sans-serif;color:#536277;margin:16px 0 4px;letter-spacing:.2px}.agenda-group:first-child{margin-top:0}.agenda-group.late{color:var(--red)}.agenda-btns{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.more{margin-top:8px}
@media(max-width:760px){.top-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.source-switch{order:-1;width:100%}.source-switch button{flex:1;justify-content:center}.topbar{flex-wrap:wrap}.choice-grid{grid-template-columns:1fr}.choice-grid.two{grid-template-columns:1fr 1fr}.followup-form{grid-template-columns:1fr}.followup-grid{grid-template-columns:1fr 1fr}.pipe-row{grid-template-columns:96px 1fr 40px}.agenda-item{flex-wrap:wrap}.modal-head-right{flex-direction:column-reverse;align-items:flex-end}}
/* La barra utente resta sotto le finestre aperte; i messaggi compaiono in basso al centro */
.cloud-toolbar{z-index:9}.toast{right:auto;left:50%;transform:translateX(-50%);bottom:24px;max-width:min(560px,calc(100vw - 32px));text-align:center;z-index:30}

/* Password e backup */
.auth-links{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.auth-links .auth-link{padding:6px 2px}
.auth-message.error{color:#c64148}.auth-message.ok{color:#11845b}
.backup-banner{display:flex;align-items:center;gap:13px;background:#fff6e5;border:1px solid #f4d7a2;border-radius:13px;padding:13px 16px;margin-bottom:15px}.backup-banner b{font-size:12px;color:#805a13}.backup-banner p{font-size:10px;color:#8a6a2c;margin:4px 0 0}.backup-banner>div{flex:1}.backup-icon{width:30px;height:30px;border-radius:50%;background:#e8a317;color:#fff;display:grid;place-items:center;font-weight:800;flex-shrink:0}
.last-backup{font-weight:700;color:#536277!important}
.account-box b{font-size:11px}.account-box p{font-size:10px;color:#8190a4;margin:5px 0 10px}.pass-row{display:grid;gap:8px}.pass-row input{border:1px solid #dce4ed;border-radius:8px;padding:10px 11px;font-size:11px}
@media(max-width:760px){.backup-banner{flex-wrap:wrap}.backup-banner .btn{width:100%}}

/* ===== Gestionale fase 1: ruoli, Ufficio, commesse, campanella ===== */
.office-only,.posatore-only{display:none!important}
body.office-on .nav.office-only{display:flex!important}
body.role-posatore .nav.posatore-only{display:flex!important}
body.role-posatore .posatore-hide,body.role-posatore #quick-add,body.role-posatore #source-switch{display:none!important}
/* Campanella */
.bell-wrap{position:relative}
.bell{position:relative;width:40px;height:40px;border-radius:11px;border:1px solid var(--line);background:#fff;color:#536277;display:grid;place-items:center}.bell:hover{color:var(--blue);border-color:#b9c9f5}
.bell em{position:absolute;top:-6px;right:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:#e5484d;color:#fff;font:800 10px/19px 'DM Sans',sans-serif;font-style:normal;text-align:center;box-shadow:0 0 0 2px #fff}
.bell-panel{position:absolute;right:0;top:48px;width:min(380px,calc(100vw - 24px));max-height:70vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px #0b172833;z-index:15;padding:6px}
.bell-head{display:flex;justify-content:space-between;align-items:center;padding:10px 10px 6px}.bell-head b{font:800 13px Manrope,sans-serif}
.bell-sec{font-size:9px;letter-spacing:1.4px;font-weight:800;color:#8794a7;text-transform:uppercase;padding:10px 10px 4px}
.bell-item{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:10px;padding:9px 10px}.bell-item:hover{background:#f4f7fc}.bell-item b{display:block;font-size:11px;color:#25354a;font-weight:600}.bell-item small{display:block;font-size:10px;color:#8190a4;margin-top:3px}
.bell-item.unread b{font-weight:800}.bell-item.unread{background:#f2f6ff}.bell-item.late-item b{color:var(--red)}.bell-empty{padding:4px 10px 10px}
/* Pagina Ufficio */
.office-tabs{margin:4px 0 14px}
.mini-track{height:6px;border-radius:6px;background:#edf1f7;overflow:hidden;width:120px;margin-bottom:5px}.mini-track div{height:100%;background:linear-gradient(90deg,#4cc994,#11845b)}
.row-btns{white-space:nowrap}.row-btns .row-action{margin-right:4px}
/* Scheda commessa */
.job-money{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:-4px 0 16px}.job-money div{background:#f8faff;border:1px solid #e9eef6;border-radius:10px;padding:10px 12px}.job-money span{display:block;font-size:9px;color:#8794a7;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.job-money b{font:800 15px Manrope,sans-serif;color:#25354a}.job-money b.pos{color:var(--green)}.job-money b.neg{color:#c25e0c}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}
.step{display:grid;grid-template-columns:24px 1fr;gap:2px 8px;align-items:center;text-align:left;border:1px solid #e3e9f2;background:#fff;border-radius:10px;padding:9px 10px;font-size:10px;font-weight:700;color:#6b7a90}.step small{grid-column:2;font-size:9px;font-weight:600;color:#8794a7}
.step-dot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#edf1f7;font-size:10px;font-weight:800;grid-row:span 2}
.step.done{border-color:#cdeedb;background:#f3fbf7;color:#2f6b4f}.step.done .step-dot{background:var(--green);color:#fff}
.step.current{border-color:var(--blue);background:#eef3ff;color:#2855d5;box-shadow:0 0 0 3px #3867f218}.step.current .step-dot{background:var(--blue);color:#fff}
.step:hover{border-color:#9db3ed}
.ms-grid{grid-column:1/-1}.ms-row{display:flex;gap:6px}.ms-row input{flex:1}
.sub-form{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}
table.inner{min-width:0}table.inner td,table.inner th{padding:9px 10px}
.upload-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:#f8faff;border:1px dashed #cfd9ea;border-radius:11px;padding:12px}.upload-row select{border:1px solid #dce4ed;border-radius:8px;padding:9px;font-size:11px;background:#fff}.upload-row input[type=file]{flex:1;font-size:11px;min-width:200px}
.file-list{display:grid;margin-top:8px}.file-row{display:flex;align-items:center;gap:10px;padding:10px 4px;border-bottom:1px solid #f0f3f7}.file-row>div{flex:1;min-width:0}.file-row b{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-row small{font-size:9px;color:#8794a7}
.file-ic{width:32px;height:32px;border-radius:9px;background:#edf2ff;color:#3867e8;display:grid;place-items:center;flex-shrink:0}
.danger-text{color:var(--red)!important}
.job-box{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#eef3ff;border:1px solid #d6e1fb;border-radius:12px;padding:14px 16px;margin-bottom:16px}.job-box b{font:800 14px Manrope,sans-serif;display:block;margin-top:4px}.job-box p{font-size:10px;color:#5a6b85;margin:5px 0 0}
#job-modal .modal-foot small{font-size:9px}
@media(max-width:760px){.job-money{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.job-box{flex-direction:column;align-items:stretch}.bell-panel{position:fixed;left:12px;right:12px;top:70px;width:auto}}
.main{margin:0 auto}
.bell-panel{z-index:9}
/* ---------- Gestionale fase 2: pagamenti, pose, posatori, preventivi, app ---------- */
a.nav{text-decoration:none}
.small-select{width:auto;min-width:180px;padding:8px 10px;font-size:11px}
.pay-head{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:12px}
.pay-head label{flex:1;min-width:220px}
.pay-in{width:120px;padding:6px 8px;font-size:11px}
.pay-in[type=date]{width:140px}
.inst-list{display:grid;gap:8px;margin-bottom:16px}
.inst-row{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:10px 12px;background:#fff}
.inst-row.done{background:#f7fcf9}
.inst-date{min-width:84px;display:grid}
.inst-date b{font:800 12px Manrope,sans-serif}
.inst-date small,.inst-main small{color:var(--muted);font-size:10px}
.inst-main{flex:1;display:grid;gap:2px;min-width:0}
.inst-main small.pos{color:var(--green)}
#inst-team{display:flex;flex-wrap:wrap;gap:4px 18px;margin:4px 0 10px}
#inst-team .check-line{display:flex!important;flex-direction:row;align-items:center;gap:8px;margin:6px 0 0;font-size:12px;font-weight:700}
.job-quotes{margin-top:18px}
.job-quotes:empty{display:none}
.quotes-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:6px}
.quote-row .file-ic{background:var(--greenbg);color:var(--green);font-weight:800}
.quote-row div{flex:1;min-width:0;display:grid}
.quote-row small{color:var(--muted);font-size:10px}
.file-row>div{flex:1;min-width:0}
#tab-btn-quotes{display:none}
body.quotes-on #tab-btn-quotes:not(.hidden){display:inline-flex}
.bell-foot{border-top:1px solid var(--line);padding:10px;text-align:center}
.bell-foot .btn{width:100%;white-space:normal}
.install-btn{margin:10px 14px 0;border:1px dashed #ffffff40;background:transparent;color:#d9e3f5;border-radius:9px;padding:9px 10px;font-size:11px;font-weight:800;text-align:left}
.install-btn:hover{background:#ffffff12}
.push-banner{display:flex;gap:12px;align-items:center;background:var(--amberbg);border:1px solid #f2dca8;border-radius:14px;padding:12px 14px;margin-bottom:16px}
.push-banner div{flex:1}
.push-banner p{margin:2px 0 0;font-size:11px;color:#6e5418}
.my-installs{display:grid;gap:14px}
.pz-card{background:#fff;border:1px solid #e7ecf3;border-left:5px solid var(--orange);border-radius:14px;box-shadow:var(--shadow);padding:16px}
.pz-card.done{border-left-color:var(--green)}
.pz-card.late{border-left-color:var(--red)}
.pz-when{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;color:#43536a}
.pz-when b{font:800 14px Manrope,sans-serif;color:var(--ink)}
.pz-card h3{font:800 17px Manrope,sans-serif;margin:8px 0 10px}
.pz-card h3 small{font-size:11px;color:var(--muted);font-weight:700}
.pz-line{display:flex;gap:8px;align-items:center;font-size:13px;color:#2a3a52;margin:6px 0;text-decoration:none}
.pz-line em{margin-left:auto;font-style:normal;font-size:11px;font-weight:800;color:var(--blue)}
.pz-line.pos{color:var(--green)}
.pz-notes{background:#f6f8fc;border-radius:10px;padding:10px 12px;font-size:12px;white-space:pre-wrap;margin:10px 0}
.pz-files{display:grid;gap:6px;margin:10px 0}
.pz-files:empty{display:none}
.pz-file{display:flex;gap:10px;align-items:center;text-align:left;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px;font-size:12px;font-weight:700;color:var(--ink)}
.pz-file small{margin-left:auto;color:var(--muted);font-weight:600}
.pz-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.pz-actions .btn{flex:1;min-width:140px;padding:13px 14px;font-size:12px;text-align:center;cursor:pointer}
.pz-photo.busy{opacity:.55;pointer-events:none}
.pz-photo.busy::after{content:" …"}
#posatore-view .tabs .tab{flex:1}
/* Segreteria: lead in sola lettura */
body.read-only #quick-add,body.read-only #add-lead-btn,body.read-only #empty-add,body.read-only #import-csv-btn,body.read-only #pipeline-actions,body.read-only #lead-form .modal-foot button[type=submit],body.read-only #add-history-note,body.read-only #history-note,body.read-only .sell-only,body.read-only #create-job-btn{display:none!important}
body.read-only #pipeline-box::after{content:"Sola lettura: il tuo ruolo non modifica i lead.";display:block;font-size:10px;color:var(--muted);margin-top:6px}
@media(max-width:760px){
  .pz-card{padding:14px}
  .pz-actions .btn{min-width:100%}
  .inst-row{flex-wrap:wrap}
  .pay-in,.pay-in[type=date]{width:100%}
}
/* ---------- Fase 3: materiale, archivio fatture, fattura elettronica, recensioni, produzione, archivio lead ---------- */
.modal.modal-wide{width:min(900px,100%)}
.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.chip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:11px;color:#43536a}
.chip .badge{margin:0}.chip.warn{background:var(--amberbg);border-color:#f2dca8;color:#6e5418}
.einv-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.einv-bar .sub-help{margin:0;flex:1;min-width:220px}
.mat-list{display:grid;gap:8px;margin-bottom:6px}
.mat-row{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:10px 12px;flex-wrap:wrap;background:#fff}
.mat-main{flex:1;min-width:200px;display:grid;gap:2px}.mat-main small{color:var(--muted);font-size:10px}
.mat-steps{display:flex;gap:4px;flex-wrap:wrap}
.mat-step{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:700;color:#657386;cursor:pointer}
.mat-step.on.gray{background:#edf0f4;color:#465468;border-color:#d5dbe4}.mat-step.on.blue{background:#eaf0ff;color:#315fc9;border-color:#c6d4fb}
.mat-step.on.orange{background:var(--orangebg);color:var(--orange);border-color:#f6cfa8}.mat-step.on.green{background:var(--greenbg);color:var(--green);border-color:#b9e5cf}
.inv-arch-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:flex-start}
.inv-arch-btns{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
tr.month-row td{background:#f6f8fc;font:800 11px Manrope,sans-serif;color:#536277;padding:8px 14px}
.sdi-sel{min-width:0;width:150px;font-size:10px;padding:6px}
.einv-warn{background:var(--amberbg);border:1px solid #f2dca8;color:#6e5418;border-radius:10px;padding:10px 12px;font-size:12px;margin-bottom:12px}
.seg-row{display:flex;gap:18px;margin:-4px 0 6px}
.einv-lines{display:grid;gap:8px;margin:8px 0}
.einv-line{display:grid;grid-template-columns:minmax(180px,1fr) 70px 110px 110px auto;gap:6px;align-items:center}
.einv-line select[data-l="natura"]{grid-column:1/-2}.einv-line .hidden{display:none}
.einv-line input,.einv-line select{padding:8px;font-size:12px}
.einv-tot{background:#f6f8fc;border-radius:10px;padding:12px 14px;margin:12px 0;font-size:12px}.einv-tot span{float:right;font-size:13px}
.einv-ok{display:flex;gap:12px;align-items:center;background:var(--greenbg);border-radius:12px;padding:12px 14px;margin-bottom:12px}.einv-ok p{margin:2px 0 0;font-size:12px}
.einv-steps{font-size:12px;line-height:1.6;padding-left:18px;color:#3d4a60}
.logo-prev{display:flex;gap:10px;align-items:center;margin:4px 0 10px}.logo-prev img{max-height:60px;max-width:220px;border:1px solid var(--line);border-radius:8px;padding:4px;background:#fff}
.qr-wrap{display:grid;justify-items:center;gap:10px;text-align:center}
.qr-box{background:#fff;padding:10px;border:1px solid var(--line);border-radius:14px}.qr-box svg{display:block;width:min(260px,70vw);height:auto}
.qr-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.qr-phone{max-width:280px}
.reviews-box{margin-bottom:16px}
.qr-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:6px 0 10px}
.qr-stats div{background:#f6f8fc;border-radius:12px;padding:10px 12px;display:grid;gap:2px}.qr-stats strong{font:800 20px Manrope,sans-serif}.qr-stats span{font-size:10px;color:var(--muted)}
.stars{color:#e7b34a;letter-spacing:1px;font-size:13px;margin-right:6px}.stars span{color:#d8dde6}
.rev-dist{display:grid;gap:5px;margin-bottom:12px}.rev-dist>div{display:grid;grid-template-columns:28px 1fr 24px;gap:8px;align-items:center;font-size:11px}
.rev-list{display:grid;gap:8px;max-height:420px;overflow:auto}
.rev-item{border:1px solid var(--line);border-radius:11px;padding:10px 12px}.rev-item b{font-size:12px}.rev-item small{display:block;color:var(--muted);font-size:10px}.rev-item p{margin:6px 0 0;font-size:12px}
.prod-list{display:grid;gap:8px}
.prod-row{display:flex;gap:14px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:12px 14px;flex-wrap:wrap}
.prod-main{flex:1;min-width:220px;display:grid;gap:3px}.prod-main small{color:var(--muted);font-size:11px}.prod-quote{font-size:12px;min-width:170px}
.small-search{max-width:280px}
tr.arch-detail td{background:#fafbfd}.arch-h{border-left:3px solid var(--line);padding:4px 10px;margin:6px 0;font-size:12px}.arch-h small{color:var(--muted)}
@media(max-width:760px){
  .qr-stats{grid-template-columns:repeat(2,1fr)}
  .einv-line{grid-template-columns:1fr 1fr}.einv-line input[data-l="desc"]{grid-column:1/-1}
  .mat-row{align-items:flex-start}
}
.qr-phone,.einv-line input,.einv-line select,.toolbar select,#o-extra select{border:1px solid #dce4ed;border-radius:8px;padding:9px 10px;font-size:12px;outline:none;background:#fff;color:#25354a}
.qr-phone{width:100%;max-width:280px;text-align:center}
.einv-line input:focus,.einv-line select:focus,.qr-phone:focus{border-color:#7c9bf0;box-shadow:0 0 0 3px #3567e814}
/* Google Calendar */
.gcal-box{margin-top:8px}.gcal-box .btn{width:100%;white-space:normal}
.gcal-on{display:grid;gap:3px;text-align:left;background:var(--greenbg);border-radius:10px;padding:9px 11px;font-size:11px}.gcal-on b{color:var(--green)}.gcal-on small{color:#43536a;font-size:10px}.gcal-on .neg{color:var(--red)}
.gcal-on .check-line{margin:4px 0 0}.gcal-on .link-btn{justify-self:start;padding:2px 0}
.owner-hint{display:block;font-size:10px;color:#536277;margin-top:6px;font-weight:600;line-height:1.4}
#f-assignee-id,#ap-owner{width:100%;border:1px solid #dce4ed;border-radius:8px;padding:10px 11px;font-size:11px;background:#fff;color:#25354a}
/* ---------- Agenda condivisa (calendario) ---------- */
.ag-help{background:#edf4ff;border:1px solid #dce8ff;border-radius:14px;margin-bottom:14px;color:#38506e}.ag-help summary{cursor:pointer;list-style:none;padding:13px 16px;font:800 12px Manrope,sans-serif;display:flex;align-items:center;gap:9px}.ag-help summary::-webkit-details-marker{display:none}.ag-help summary span{font-size:16px;color:var(--blue)}.ag-help summary em{margin-left:auto;font-style:normal;font-size:10px;color:var(--blue)}.ag-help[open] summary em{display:none}
.ag-help-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 16px 16px}.ag-help-body>div{background:#fff;border:1px solid #e1eaff;border-radius:11px;padding:11px 13px}.ag-help-body b{font-size:11px;color:#17243a}.ag-help-body p{font-size:10.5px;line-height:1.6;margin:5px 0 0;color:#566b86}.ag-help-body code{background:#eef3ff;border:1px solid #d6e2ff;border-radius:5px;padding:1px 5px;font-size:10.5px;color:#2449b8;font-weight:700}
.ag-help-key{border-left:4px solid #8a97ab!important}.ag-help-key.work{border-left-color:var(--green)!important}
.ag-chip{display:inline-block;border-radius:5px;padding:1px 6px;font-size:10px;font-weight:800}.ag-chip.busy{background:repeating-linear-gradient(135deg,#eef1f5 0 5px,#e3e8ef 5px 10px);color:#536277}.ag-chip.work{background:var(--greenbg);color:var(--green)}
.ag-panel{padding:16px}.ag-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.ag-nav{display:flex;align-items:center;gap:6px}.ag-nav h3{font:800 15px Manrope,sans-serif;margin:0 0 0 6px;text-transform:capitalize;letter-spacing:-.3px}
.ag-arrow{width:32px;height:32px;border-radius:9px;border:1px solid #dfe6f0;background:#fff;font-size:18px;color:#43536a;line-height:1}.ag-arrow:hover{border-color:#9db3ed}.ag-right{display:flex;gap:8px;align-items:center}
.ag-views{display:flex;background:#f1f4f9;border-radius:10px;padding:3px;gap:2px}.ag-views button{border:0;background:transparent;border-radius:8px;padding:7px 11px;font-size:10.5px;font-weight:800;color:#6b7a90}.ag-views button.active{background:#fff;color:var(--blue);box-shadow:0 2px 6px #182b4b14}
.ag-filters{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-bottom:12px}.ag-fgroup{display:flex;flex-wrap:wrap;gap:5px}.ag-f{border:1px solid #dfe6f0;background:#fff;border-radius:20px;padding:5px 10px;font-size:10px;font-weight:700;color:#8a97ab;display:inline-flex;align-items:center;gap:6px}.ag-f.on{color:#25354a;border-color:#b9c9f5;background:#f5f8ff}.ag-f i{width:9px;height:9px;border-radius:50%;background:var(--c);opacity:.35}.ag-f.on i{opacity:1}.ag-f small{font-size:9px;color:#9aa5b4;font-weight:600}.ag-refresh{margin-left:auto}
.ag-status{font-size:10.5px;background:#f5f7fb;border-radius:9px;padding:9px 12px;margin-bottom:10px;color:#536277}.ag-status.warn{background:var(--amberbg);color:var(--amber)}
.ag-grid{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.ag-gh,.ag-gad,.ag-gb{display:grid;grid-template-columns:52px repeat(var(--n),minmax(0,1fr))}.ag-gh{border-bottom:1px solid var(--line);background:#fafbfd}.ag-corner{border-right:1px solid var(--line);display:flex;align-items:center;justify-content:center}.ag-corner small{font-size:8px;color:#9aa5b4;text-align:center;line-height:1.2}
.ag-dh{text-align:center;padding:7px 2px;border-right:1px solid #eef1f6;cursor:pointer}.ag-dh:last-child{border-right:0}.ag-dh small{display:block;font-size:9px;color:#8a97ab;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.ag-dh b{font:800 17px Manrope,sans-serif;color:#25354a}.ag-dh.today b{background:var(--blue);color:#fff;border-radius:50%;display:inline-grid;place-items:center;width:30px;height:30px}.ag-dh:hover small{color:var(--blue)}
.ag-gad{border-bottom:1px solid var(--line);min-height:30px}.ag-adcell{border-right:1px solid #eef1f6;padding:3px;display:grid;gap:2px;align-content:start;cursor:copy}.ag-adcell:last-child{border-right:0}
.ag-gb{max-height:calc(100vh - 290px);min-height:380px;overflow-y:auto;position:relative}.ag-hours{border-right:1px solid var(--line)}.ag-hr{position:relative}.ag-hr span{position:absolute;top:-6px;right:6px;font-size:9px;color:#9aa5b4}.ag-hr:first-child span{top:2px}
.ag-col{position:relative;border-right:1px solid #eef1f6}.ag-col:last-child{border-right:0}.ag-col.today{background:#fbfcff}.ag-slot{border-top:1px solid #f0f3f7;cursor:copy}.ag-slot:hover{background:#f3f7ff}
.ag-ev{position:absolute;border-radius:7px;padding:3px 6px;font-size:10px;overflow:hidden;cursor:pointer;background:color-mix(in srgb,var(--c) 14%,#fff);border-left:3px solid var(--c);color:#17243a;box-shadow:0 1px 2px #0b17280f;z-index:1}.ag-ev:hover{z-index:3;box-shadow:0 4px 14px #0b172826}.ag-ev b{display:block;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px}.ag-ev small{display:block;color:#566579;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.ag-ev.busy,.ag-chipev.busy{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--c) 10%,#fff) 0 6px,color-mix(in srgb,var(--c) 18%,#fff) 6px 12px);color:#43536a}.ag-ev.work,.ag-chipev.work{background:color-mix(in srgb,var(--c) 20%,#fff)}.ag-ev.work b::before,.ag-chipev.work::before{content:"💼 ";font-size:9px}.ag-ev.busy b::before,.ag-chipev.busy::before{content:"🔒 ";font-size:8px}
.ag-now{position:absolute;left:0;right:0;height:2px;background:var(--red);z-index:2;pointer-events:none}.ag-now::before{content:"";position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--red)}
.ag-chipev{border-radius:5px;padding:2px 5px;font-size:9.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;background:color-mix(in srgb,var(--c) 14%,#fff);border-left:3px solid var(--c);color:#17243a}.ag-chipev em{font-style:normal;color:#566579;font-weight:800}.ag-chipev small{color:#7a889c;font-weight:600}
.ag-month{border:1px solid var(--line);border-radius:12px;overflow:hidden}.ag-mh{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:#fafbfd;border-bottom:1px solid var(--line)}.ag-mh div{text-align:center;font-size:9px;font-weight:800;color:#8a97ab;text-transform:uppercase;padding:7px 0}
.ag-mg{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.ag-mc{min-height:104px;border-right:1px solid #eef1f6;border-bottom:1px solid #eef1f6;padding:4px;display:grid;gap:2px;align-content:start;cursor:copy;min-width:0}.ag-mc:nth-child(7n){border-right:0}.ag-mc.out{background:#fafbfd}.ag-mc.out .ag-md{color:#b5bfcc}.ag-md{font:800 11px Manrope,sans-serif;color:#43536a;cursor:pointer;justify-self:start;padding:1px 5px;border-radius:6px}.ag-md:hover{background:#eef3ff;color:var(--blue)}.ag-mc.today .ag-md{background:var(--blue);color:#fff}.ag-more{border:0;background:transparent;color:var(--blue);font-size:9.5px;font-weight:800;text-align:left;padding:1px 4px}
.ag-evrow{display:flex;gap:12px;padding:9px 0;border-top:1px solid #f0f3f7;font-size:11px}.ag-evrow span{width:60px;color:#8a97ab;font-weight:700}.ag-evrow b{display:flex;align-items:center;gap:7px}.ag-dot{width:9px;height:9px;border-radius:50%;background:var(--c);display:inline-block}.ag-evnote{font-size:10.5px;color:#637791;background:#f5f8ff;border-radius:9px;padding:10px 12px;line-height:1.6;margin:12px 0 0}
.modal.ag-evm{width:min(460px,100%)}
.ag-allday-l .check-line{margin:9px 0 0}
@media(max-width:1000px){.ag-help-body{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.ag-help-body{grid-template-columns:1fr}.ag-toolbar{flex-direction:column;align-items:stretch}.ag-right{justify-content:space-between}.ag-views button{padding:7px 8px}.ag-gh,.ag-gad,.ag-gb{grid-template-columns:40px repeat(var(--n),minmax(0,1fr))}.ag-mc{min-height:70px;padding:2px}.ag-chipev{font-size:8.5px;padding:1px 3px}.ag-chipev small,.ag-chipev em{display:none}.ag-ev{padding:2px 3px}.ag-refresh{margin-left:0}}
/* ---------- Uso senza internet ---------- */
.offline-banner{display:flex;gap:12px;align-items:flex-start;background:#fff4d9;border:1px solid #f2dca8;color:#6d4c0c;border-radius:14px;padding:12px 15px;margin:-6px 0 16px}.offline-banner>span{font-size:20px;line-height:1}.offline-banner b{display:block;font:800 12px Manrope,sans-serif}.offline-banner small{display:block;font-size:10.5px;line-height:1.55;margin-top:3px;color:#7d5f22}
body.crm-offline #pipeline-box::after{content:"Sei offline: sola consultazione.";}
body.crm-offline .live-dot{background:#e0a21b;box-shadow:0 0 0 4px #e0a21b22}
.offline-wrap{text-align:left;border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.offline-title{display:block;font-size:11px;margin-bottom:2px}.offline-wrap .check-line{margin:6px 0 0;font-size:10.5px;align-items:flex-start}.offline-wrap .settings-help{font-size:9.5px;margin:7px 0 6px;line-height:1.5}.offline-wrap .form-actions-inline{margin-top:6px;gap:6px}.offline-wrap .btn{width:auto!important}
.off-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-top:8px}.off-stats div{background:#f5f8ff;border-radius:8px;padding:6px 2px;text-align:center}.off-stats b{display:block;font:800 12px Manrope,sans-serif}.off-stats small{display:block;font-size:8px;color:#8794a7;line-height:1.2}
.quote-btn{background:var(--greenbg);border:1px solid #bfe8d3;color:var(--green)}.quote-btn:hover{background:#d3f1e2}
.quote-row-btn{border-color:#bfe8d3!important;color:var(--green)!important;background:var(--greenbg)!important;white-space:nowrap}.row-btns{display:flex;gap:6px;justify-content:flex-end}
