:root{--bg:#090c10;--panel:#11161d;--panel2:#171d25;--line:#252d37;--muted:#87909d;--text:#f1f4f7;--accent:#f36b21;--green:#3bd19a;--red:#ff5d6c;--yellow:#f3b642}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 Inter,Segoe UI,Arial,sans-serif}button,input,select,textarea{font:inherit}.hidden{display:none!important}.mark{width:38px;height:38px;border:1px solid #f36b2166;background:linear-gradient(145deg,#f36b2130,#111);color:var(--accent);display:grid;place-items:center;font-weight:900;clip-path:polygon(15% 0,85% 0,100% 15%,100% 85%,85% 100%,15% 100%,0 85%,0 15%)}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr;place-items:center;background:radial-gradient(circle at 18% 50%,#17202b 0,transparent 34%),linear-gradient(115deg,#090c10 55%,#10151c 55%)}.login-brand{transform:translateY(-20px)}.login-brand .mark{width:72px;height:72px;font-size:21px}.login-brand h1{font-size:52px;letter-spacing:-2px;margin:22px 0 0}.login-brand h1 span,.logo span{color:var(--accent)}.login-brand p{color:var(--muted);font-size:17px}.login-card{width:min(390px,90%);background:#11161de8;border:1px solid var(--line);padding:40px;border-radius:10px;box-shadow:0 30px 80px #0008}.login-card small,.eyebrow,.modal-head small{letter-spacing:2px;color:var(--accent);font-weight:700}.login-card h2{font-size:30px;margin:8px 0 0}.login-card p{color:var(--muted);margin-top:4px}.login-card label,.form-grid label{display:grid;gap:7px;color:#bbc1c9;margin:18px 0}.login-card input,.form-grid input,.form-grid select,.form-grid textarea,.toolbar input,.toolbar select{background:#0b0f14;border:1px solid #303843;color:var(--text);padding:12px;border-radius:5px;outline:none}.login-card input:focus,.form-grid input:focus{border-color:var(--accent)}button{border:0;color:inherit;cursor:pointer}.primary{background:var(--accent);padding:13px 18px;border-radius:5px;font-weight:800;color:white}.primary:hover{filter:brightness(1.1)}.login-card .primary{width:100%;display:flex;justify-content:space-between;margin-top:26px}.secure{font-size:11px;text-align:center;color:#596371;margin-top:25px}.app{display:grid;grid-template-columns:238px 1fr;min-height:100vh}aside{background:#0d1116;border-right:1px solid var(--line);position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.logo{display:flex;align-items:center;gap:12px;padding:25px 22px;border-bottom:1px solid var(--line);letter-spacing:1px}.logo .mark{width:32px;height:32px;font-size:10px}nav{padding:22px 12px;display:grid;gap:5px}nav button,.side-foot button{background:transparent;text-align:left;color:#9099a5;padding:11px 13px;border-radius:5px}nav button:hover,nav button.active{background:#f36b2117;color:white}nav button.active{box-shadow:inset 3px 0 var(--accent)}nav i{display:inline-block;width:28px;font-style:normal}.side-foot{margin-top:auto;padding:18px;border-top:1px solid var(--line)}.storage{font-size:10px;color:#66707d;margin-bottom:14px}.storage b{float:right;color:var(--green)}.storage div{height:3px;background:#242c35;margin-top:9px}.storage em{display:block;width:74%;height:100%;background:var(--accent)}main{min-width:0}header{height:73px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 27px;gap:13px;position:sticky;top:0;background:#090c10ee;backdrop-filter:blur(12px);z-index:5}.global-search{width:min(580px,65vw);display:flex;gap:12px;align-items:center;background:#11161d;border:1px solid var(--line);padding:9px 13px;border-radius:6px}.global-search input{flex:1;background:transparent;border:0;outline:0;color:white}.global-search kbd{color:#626c78;font-size:10px}header .icon-btn{margin-left:auto}.icon-btn,.avatar,#menu{background:#151b22;border:1px solid var(--line);width:36px;height:36px;border-radius:5px}.avatar{background:#f36b2125;color:var(--accent);font-weight:800}#menu{display:none}#content{padding:29px;max-width:1600px;margin:auto}.page-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.page-title h1{font-size:28px;margin:4px 0}.page-title p{margin:0;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.stat,.card{background:linear-gradient(145deg,#141a21,#10151b);border:1px solid var(--line);border-radius:7px}.stat{padding:19px;position:relative;overflow:hidden}.stat:after{content:'';position:absolute;width:70px;height:70px;border:1px solid #ffffff08;transform:rotate(45deg);right:-35px;top:-25px}.stat span{font-size:11px;color:#88929e;letter-spacing:.7px}.stat b{display:block;font-size:30px;margin-top:9px}.stat small{color:var(--green)}.grid2{display:grid;grid-template-columns:2fr 1fr;gap:18px}.card{padding:20px}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card h3{margin:0;font-size:15px}.card-head a{color:var(--accent);cursor:pointer}.activity{list-style:none;padding:0;margin:0}.activity li{border-left:1px solid #333b45;padding:0 0 18px 17px;color:#a7b0bb;position:relative}.activity li:before{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:var(--accent);left:-4px;top:5px}.activity small{display:block;color:#59636f;margin-top:3px}.toolbar{display:flex;gap:9px;margin-bottom:15px;flex-wrap:wrap}.toolbar input{flex:1;min-width:210px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:7px}table{width:100%;border-collapse:collapse;background:#11161d}th{font-size:10px;letter-spacing:1px;color:#737d89;text-align:left;background:#0d1217}th,td{padding:13px 15px;border-bottom:1px solid var(--line);white-space:nowrap}tr:hover td{background:#151b22}.vehicle{font-weight:700}.vehicle small{font-weight:400;display:block;color:var(--muted)}.tag,.status{font-size:10px;padding:4px 7px;border-radius:3px;background:#28303a;color:#c1c7cf}.status.funzionante,.status.testato{background:#3bd19a19;color:var(--green)}.status.problemi{background:#ff5d6c19;color:var(--red)}.status.non-testato{color:var(--yellow);background:#f3b64218}.clickable{cursor:pointer}dialog{width:min(840px,94vw);max-height:90vh;background:#11161d;color:var(--text);border:1px solid #323b46;border-radius:8px;padding:0;box-shadow:0 30px 90px #000b}dialog::backdrop{background:#030507cc;backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between;padding:21px 25px;border-bottom:1px solid var(--line)}.modal-head h2{margin:4px 0 0}.modal-head button{background:transparent;font-size:26px;color:#7c8691}.modal-body{padding:22px 25px;overflow:auto;max-height:72vh}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 14px}.form-grid label{margin:8px 0;font-size:12px}.form-grid .wide{grid-column:1/-1}.form-grid textarea{min-height:80px;resize:vertical}.checks{display:flex;flex-wrap:wrap;gap:8px}.checks label{display:flex;background:#0b0f14;border:1px solid #29313b;padding:8px 11px;border-radius:4px;margin:0}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.secondary{background:#242b34;padding:12px 17px;border-radius:5px}.file-card{border:1px solid var(--line);padding:13px;border-radius:5px;display:flex;align-items:center;gap:13px;margin:8px 0}.file-card .kind{font-size:10px;font-weight:900;color:var(--accent);border:1px solid #f36b2155;padding:6px}.file-card div{flex:1}.file-card small{display:block;color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:45px}.drop{border:1px dashed #495463;text-align:center;padding:24px;border-radius:6px;margin-top:16px;color:#9ba5b1}.drop:hover{border-color:var(--accent)}#toast{position:fixed;right:20px;top:20px;z-index:50}.toast{background:#182029;border:1px solid #34404c;padding:12px 17px;border-radius:5px;box-shadow:0 10px 40px #0008;margin-bottom:8px}.toast.error{border-color:var(--red);color:#ff9ca5}@media(max-width:900px){.app{grid-template-columns:1fr}aside{position:fixed;z-index:20;width:238px;transform:translateX(-100%);transition:.2s}aside.open{transform:none}#menu{display:block}.stats{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr}.login-brand{display:none}.form-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){#content{padding:18px}.stats{grid-template-columns:1fr 1fr}.stat{padding:14px}.stat b{font-size:24px}.form-grid{grid-template-columns:1fr}.page-title{align-items:start;gap:15px}.global-search{width:auto;flex:1}.global-search kbd{display:none}}
