:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#183b3b;background:#f2f5f1;font-size:14px}*{box-sizing:border-box}body{margin:0}aside{position:fixed;width:235px;background:#102e2b;height:100vh;padding:36px 22px;color:#d4e5dd}.brand{font-size:22px;letter-spacing:2px;font-weight:800;display:flex;align-items:center;gap:10px}.brand small{font-size:11px;letter-spacing:1px;font-weight:400}.logo{background:#ccef80;color:#153a2a;padding:6px 10px;border-radius:10px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#779189;margin-top:42px}aside a{display:block;text-decoration:none;color:#a9c4b8;padding:16px 12px;border-radius:9px;margin:7px 0}.active{background:#23463d;color:#e8f6df}footer{position:absolute;bottom:32px;line-height:2;font-size:10px;letter-spacing:1px}main{margin-left:235px;padding:0 45px 36px;max-width:1600px}header{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dae3da;color:#73867d}.intro{display:flex;justify-content:space-between;align-items:center;margin:16px 0 32px}h1{font-size:48px;line-height:1.08;letter-spacing:-2px;font-weight:600;margin:12px 0 18px}.intro p{color:#698177}.live{font-size:10px;letter-spacing:1px;color:#277855;background:#e4f2dc;border:1px solid #cfe1c3;border-radius:30px;padding:11px 15px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stats>div{padding:24px;background:#fff;border:1px solid #dce5dc;border-radius:13px}.stats span{font-size:9px;letter-spacing:1px;color:#7b9184}.stats strong{display:block;font-size:38px;font-weight:500;margin-top:12px}.panel{background:#fff;border:1px solid #dce5dc;border-radius:14px;margin-top:24px;padding:25px}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.heading h2{font-size:18px;font-weight:600;margin:0}.heading span,.hint{color:#84958b;font-size:11px;line-height:1.7}.devices{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.device{border:1px solid #dce6da;padding:22px;border-radius:10px}.device h3{font-size:16px}.pill{font-size:10px;background:#e4f2dc;padding:5px 10px;border-radius:20px}.offline{background:#f3eee9;color:#876d58}dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:12px}dt{color:#85978a}dd{margin:0;text-align:right}form#upload{display:grid;grid-template-columns:1fr 1.5fr 1.5fr auto;align-items:end;gap:15px}label{font-size:11px;color:#698172}input,select,button{font:inherit;border:1px solid #d7e1d5;border-radius:7px;padding:11px;background:#fff;color:#224335}input,select{display:block;margin-top:9px;width:100%}button{cursor:pointer}.primary{background:#204d3c;color:#fff;border-color:#204d3c}button:disabled{opacity:.5;cursor:wait}.row{padding:15px 0;display:flex;gap:15px;align-items:center;justify-content:space-between;border-top:1px solid #eef1eb}.row small{color:#85978a}.row select{width:auto;margin:0;max-width:250px}.row>div{flex:1}#error{color:#a84036}dialog{border:1px solid #d7e1d5;border-radius:16px;padding:30px;width:min(440px,90vw)}dialog::backdrop{background:#102e2bca}dialog button{width:100%;margin-top:15px}#loginError{color:#a84036}@media(max-width:950px){aside{width:180px;padding:28px 14px}main{margin-left:180px;padding:0 20px}.stats{grid-template-columns:repeat(2,1fr)}form#upload{grid-template-columns:1fr 1fr}.live{display:none}}@media(max-width:600px){aside{position:static;width:100%;height:auto;padding:18px}aside a,aside .eyebrow,footer{display:none}main{margin:0;padding:0 16px}h1{font-size:36px}.heading span{display:none}.row{flex-wrap:wrap}form#upload{grid-template-columns:1fr}}
