*{box-sizing:border-box}body{margin:0;color:#17283f;background:#f3f6fc;font-family:Inter,"Microsoft YaHei",system-ui,sans-serif;font-size:15px;line-height:1.65}a{color:#1366dd;text-decoration:none}button,input,select,textarea{font:inherit}button,a.button{border:0;border-radius:11px;padding:11px 18px;background:#1468e8;color:white;cursor:pointer;font-weight:600;display:inline-block;text-align:center}button:hover,a.button:hover{background:#0f54be}button:disabled{opacity:.55;cursor:wait}button.secondary,a.secondary{background:#e9f0fc;color:#285585}button.danger{background:#fff0ed;color:#ae352a}input,select,textarea{border:1px solid #cbd7e7;border-radius:10px;padding:10px 12px;background:white;color:#17283f;width:100%}textarea{resize:vertical;font-family:ui-monospace,"Microsoft YaHei",monospace;min-height:245px}input:focus,textarea:focus,select:focus{outline:2px solid #b7d5ff;border-color:#2979ed}header{height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1160px)/2));background:#fff;border-bottom:1px solid #e3eaf4;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:750;color:#17283f}.brand img{width:43px;height:43px;border-radius:11px}.container{max-width:1160px;margin:auto;padding:32px 24px 65px}.hero{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:54px;padding:52px 0 60px}.eyebrow{color:#1868cc;font-size:13px;font-weight:700;letter-spacing:2px}.hero h1{font-size:46px;line-height:1.25;letter-spacing:-1px;margin:18px 0}.hero p{color:#62748c;font-size:18px;max-width:520px}.hero-icon{width:270px;max-width:90%;border-radius:58px;box-shadow:0 30px 70px #1d5fd02a;justify-self:center}.muted{color:#667b95;font-size:13px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card,.panel{background:#fff;border:1px solid #e1e8f2;border-radius:18px;padding:24px;box-shadow:0 6px 22px #19325704}.card h3{margin:10px 0;font-size:19px}.step{color:#2375ec;font-weight:700;font-size:25px}.panel h2{font-size:22px;margin:0 0 16px}.panel h3{font-size:17px;margin:12px 0}.section{margin:26px 0}.login{max-width:430px;margin:55px auto}.login label{display:block;margin:18px 0 6px}.login button{width:100%;margin-top:24px}.titlebar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.titlebar h1{font-size:28px;margin:0}.dashboard{display:grid;grid-template-columns:2fr 1fr;gap:20px}.wide{grid-column:1/-1}.field{margin:15px 0}.field label{display:block;font-weight:600;margin-bottom:6px}.metrics{display:flex;gap:24px;margin:14px 0 22px;flex-wrap:wrap}.metric strong{font-size:27px;display:block}.metric span{font-size:13px;color:#63758c}.status{padding:12px 16px;border-radius:10px;background:#e8f2ff;color:#18569d;margin-bottom:18px;white-space:pre-wrap}.status.error{background:#fff0ed;color:#a33127}.hidden,[hidden]{display:none!important}.tablewrap{overflow:auto;margin-top:14px}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid #edf0f7;white-space:nowrap}th{color:#667b95;background:#f7f9fd}.code{font-size:31px;letter-spacing:5px;font-family:monospace;font-weight:700;color:#1355b4;word-break:break-all}.device{padding:18px 0;border-top:1px solid #e7edf5}.device .fields{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;margin:10px 0}.badge{background:#e4f6ec;color:#24704d;border-radius:7px;padding:3px 8px;font-size:12px}.badge.pending{background:#fff3d7;color:#8a6219}.badge.off{background:#eef0f4;color:#6a7382}footer{padding-top:30px;color:#6b7e97;font-size:13px;border-top:1px solid #dce5f0;margin-top:36px}ol{padding-left:22px}.checksum{word-break:break-all;font-size:12px}input[type=file]{padding:8px}hr{border:0;border-top:1px solid #e8edf4;margin:22px 0}@media(max-width:800px){header{padding:0 18px;height:70px}.brand{font-size:15px}.container{padding:24px 18px}.hero{grid-template-columns:1fr;gap:28px;padding:25px 0 36px}.hero h1{font-size:34px}.hero-icon{width:180px;grid-row:1}.cards,.dashboard{grid-template-columns:1fr}.device .fields{grid-template-columns:1fr}.hero p{font-size:16px}.titlebar{align-items:flex-start}.titlebar h1{font-size:24px}.panel{padding:20px}.wide{grid-column:auto}}
