:root{--bg:#0b1020;--sidebar:#0e1527;--surface:#131c30;--surface2:#182238;--stroke:#28334b;--text:#edf3ff;--muted:#8f9cb5;--accent:#77e6b6;--blue:#92a7ff;--yellow:#ffce7c;--red:#f19aa1}*{box-sizing:border-box}body{margin:0;font:14px/1.52 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}h1,h2,p{margin-top:0}h1{font-size:clamp(27px,3vw,39px);letter-spacing:-1.2px;line-height:1.14;margin:10px 0}h1 span{color:var(--accent)}h2{font-size:16px;letter-spacing:-.3px;margin:0 0 4px}.muted,.section-head p{color:var(--muted)}.eyebrow{color:var(--accent);font-size:11px;letter-spacing:2.4px;font-weight:800}.brand-mark{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(140deg,#9fffd5,#3b9187);color:#092b2e;font-size:26px;font-weight:900;box-shadow:0 7px 24px #41d9ad23}.brand-mark.small{width:39px;height:39px;border-radius:12px;font-size:21px}.layout{display:flex;min-height:100vh}.sidebar{width:248px;background:var(--sidebar);border-right:1px solid var(--stroke);position:sticky;top:0;height:100vh;flex-shrink:0;display:flex;flex-direction:column;padding:24px 16px}.logo{display:flex;gap:12px;align-items:center;padding:6px 10px 38px;line-height:1.1;letter-spacing:1px}.logo small{display:block;font-size:10px;letter-spacing:2.2px;color:var(--muted);margin-top:6px}.nav{display:flex;flex-direction:column;gap:6px}.nav-item{background:transparent;color:#a4afc6;border:1px solid transparent;border-radius:12px;text-align:left;padding:13px 14px;font-weight:600;transition:.18s}.nav-item:hover,.nav-item.selected{color:#f3fff9;background:#213d43;border-color:#2a6057}.nav-ico{display:inline-block;width:30px;font-size:18px;color:var(--accent)}.side-footer{margin-top:auto;padding:18px 10px 0;border-top:1px solid var(--stroke)}.side-footer small{display:block;margin:8px 0 15px;color:var(--muted)}.online{color:#cfeedd;font-weight:600}.online i,.status i{display:inline-block;width:8px;height:8px;background:#60e2a0;border-radius:50%;margin-right:8px;box-shadow:0 0 0 4px #60e2a01b}.logout{border:0;background:none;padding:5px 0;color:#c8d4ea}.logout:hover{color:white}.main-wrap{min-width:0;flex:1}.topbar{height:76px;padding:0 clamp(20px,3vw,46px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--stroke);background:#0c1424b5}.top-brand{color:#a4afc6;font-size:12px;letter-spacing:2px}.top-brand b{color:var(--text)}.top-actions{display:flex;align-items:center;gap:12px}.status{color:#aec7bd;font-size:12px}select,.secondary{color:#dbe7fc;background:#1a263c;border:1px solid #35435a;border-radius:10px;padding:9px 14px}.secondary:hover{background:#23344b}.content{padding:36px clamp(18px,3vw,46px) 22px;max-width:1600px;margin:auto}.panel{display:none}.panel.active{display:block}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:29px}.heading p{margin:9px 0 0}.head-side{font-size:12px;color:var(--muted);text-align:right}.head-side strong{display:block;color:#d3e2fb;font-weight:600}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric,.section-card{background:linear-gradient(150deg,#172137,#101a2c);border:1px solid var(--stroke);border-radius:17px;box-shadow:0 6px 25px #03091418}.metric{padding:22px;min-width:0}.metric.accent{background:linear-gradient(140deg,#16483f,#14302d);border-color:#2b6c5f}.metric-top{display:flex;align-items:center;justify-content:space-between;color:#adbcd3;font-size:12px;font-weight:700;gap:8px}.metric-top span{color:var(--accent);font-size:18px}.metric strong{display:block;font-size:clamp(30px,3vw,42px);font-weight:750;letter-spacing:-1.5px;margin:14px 0 2px}.metric-foot{font-size:11px;color:#90a3b6}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:18px;margin-bottom:20px}.section-card{padding:22px;margin-bottom:20px;min-width:0}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:18px}.section-head p{font-size:12px;margin:0}.legend{font-size:11px;color:var(--muted)}.legend i{display:inline-block;width:8px;height:8px;background:var(--accent);border-radius:3px;margin-right:4px}.chart{height:245px;display:flex;align-items:flex-end;gap:5px;border-bottom:1px solid #38425b;padding:8px 2px 19px;margin-top:14px;background:repeating-linear-gradient(to top,transparent,transparent 24%,#4a536b33 24.2%,transparent 24.7%);position:relative}.chart-empty{margin:auto;text-align:center;color:var(--muted)}.bar-wrap{height:100%;display:flex;justify-content:flex-end;flex-direction:column;flex:1;min-width:4px;position:relative}.bar{border-radius:5px 5px 0 0;width:100%;background:linear-gradient(0deg,#327c77,#7ce8b6);min-height:3px;transition:.3s}.bar:hover{filter:brightness(1.3)}.bar-label{position:absolute;bottom:-20px;color:#8c9cb6;font-size:10px}.radar-item{display:flex;gap:13px;border-bottom:1px solid #2b374e;padding:11px 0}.radar-item:last-child{border-bottom:0}.radar-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#28443f;color:var(--accent);font-size:11px;font-weight:700;flex-shrink:0}.radar-item b{font-size:12px}.radar-item p{font-size:11px;color:var(--muted);margin:4px 0 0}.spark{font-size:22px;color:var(--accent)}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:640px}th{text-align:left;font-size:10px;color:#95a4bd;text-transform:uppercase;letter-spacing:1.1px;padding:11px 10px 14px;font-weight:750}td{padding:15px 10px;border-top:1px solid #2b354a;font-size:12px;color:#d2def0;vertical-align:middle}td strong,td small{display:block}td small{font-size:10px;margin-top:5px}.mono{font-family:ui-monospace,monospace;color:#aeffdd}.path{word-break:break-word}.subtle{color:#8594aa}.empty{text-align:center;color:#8c9bb0;padding:35px 10px}.score{font-size:10px;font-weight:800;border-radius:8px;padding:6px 9px;white-space:nowrap}.score.high{color:#88f1c4;background:#1d4b3e}.score.medium{color:var(--yellow);background:#4a3824}.score.low{color:#acb8cc;background:#31394c}.text-button{border:0;color:var(--accent);background:transparent;font-size:12px;font-weight:700}.notice{padding:15px 18px;border:1px solid #5e5535;background:#2c2a24;border-radius:12px;color:#decda6;font-size:12px;margin-bottom:21px}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.step-label{font-size:10px;color:var(--accent);font-weight:800;letter-spacing:1.5px;margin-bottom:12px}.setup-grid .section-card{margin:0}.setup-grid p{margin:11px 0;font-size:12px}.setup-grid pre{white-space:pre-wrap;word-break:break-all;background:#090f1f;color:#b6f8ce;border:1px solid #35445d;padding:15px;border-radius:9px;font-size:12px;margin:17px 0}.helper{margin-top:18px!important;color:#8fa3b8}.config-list{display:grid;gap:15px;margin-top:20px}.config-list>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #2b354a;padding-bottom:10px}.config-list span{color:var(--muted)}.config-list b{text-align:right;word-break:break-word;max-width:60%}.danger{background:#5c2633;color:#ffb6be;border:1px solid #8c3b4a;padding:10px 14px;border-radius:9px;font-weight:700}.danger:hover{background:#73313d}footer{color:#6c7a95;font-size:11px;margin:30px 0 10px;text-align:center}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 70% 0,#204d4d3d,transparent 43%),#0b1020;padding:22px}.login-card{width:min(100%,435px);background:linear-gradient(145deg,#172339,#10182b);border:1px solid #30405a;border-radius:23px;padding:39px;box-shadow:0 30px 110px #03070c91}.login-card .brand-mark{margin-bottom:28px}.login-card h1{font-size:31px;margin:10px 0 15px}.login-card p{font-size:13px;line-height:1.6}.login-form{margin-top:29px}.login-form label{display:block;font-size:12px;font-weight:700;margin-bottom:9px}.login-form input{width:100%;padding:14px 15px;border:1px solid #41506b;border-radius:10px;background:#0b1425;color:#eef5ff}.primary{color:#082a26;background:linear-gradient(105deg,#8bf1c0,#6cdfaa);border:0;border-radius:11px;padding:14px 16px;font-weight:800;display:flex;justify-content:space-between}.full{width:100%;margin-top:15px}.login-footer{border-top:1px solid #2b364e;padding-top:19px;margin-top:32px;text-align:center;color:#77869e;font-size:11px}.error{color:var(--red);font-size:12px!important;margin-top:15px}
@media(max-width:1200px){.sidebar{width:205px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.chart{height:195px}}
@media(max-width:750px){.layout{display:block}.sidebar{position:fixed;z-index:10;top:auto;bottom:0;height:64px;width:100%;border-top:1px solid var(--stroke);border-right:0;padding:5px 5px 3px;background:#101a2bf5}.logo,.side-footer{display:none}.nav{flex-direction:row;justify-content:space-around;gap:0}.nav-item{font-size:10px;text-align:center;padding:5px 5px;display:flex;flex-direction:column;align-items:center;min-width:65px;gap:1px}.nav-ico{width:auto;font-size:17px}.topbar{padding:0 14px;height:61px}.status{display:none}.top-brand{letter-spacing:1px;font-size:11px}.top-actions{gap:7px}select,.secondary{font-size:11px;padding:8px 10px}.content{padding:24px 14px 85px}.heading{align-items:flex-start}.heading .head-side{display:none}.heading p{font-size:12px}.metrics{gap:10px}.metric{padding:17px}.metric strong{font-size:31px}.metric-top{font-size:11px}.dashboard-grid{gap:0}.section-card{padding:17px;border-radius:13px}.setup-grid{grid-template-columns:1fr}.login-card{padding:28px}.notice{font-size:11px}}
/* Pannello impostazioni v1.1 */
.setup-card{width:min(100%,510px)}.field-label{margin-top:18px!important}.settings-form{display:grid;gap:14px;margin-top:20px}.settings-form label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#dbe7fc}.settings-form input,.settings-form textarea,.settings-form select{width:100%;background:#0b1425;color:#eef5ff;border:1px solid #41506b;border-radius:10px;padding:12px 14px;font:inherit}.settings-form textarea{min-height:94px;resize:vertical}.settings-form input[type=checkbox]{width:auto}.settings-form .checkline{display:flex;align-items:center;gap:9px}.settings-form .primary{justify-content:center}.save-status{font-size:13px;min-height:20px;color:var(--accent)}.settings-form .hint{font-size:12px;color:var(--muted)}.settings-form .settings-group{border-top:1px solid var(--stroke);padding-top:16px;margin-top:6px}.settings-form .settings-group h2{margin-bottom:12px}.readonly-link{overflow-wrap:anywhere;color:var(--accent)}
@media(max-width:750px){.nav-item{min-width:0;flex:1;font-size:9px;padding:6px 2px}.nav-ico{font-size:16px}.setup-card{padding:24px}}
