:root{color-scheme:light;--ink:#182a34;--muted:#657981;--line:#dbe6e8;--green:#087f71}*{box-sizing:border-box}body{margin:0;background:#f3f6f7;color:var(--ink);font:14px/1.65 system-ui,"Microsoft YaHei",sans-serif}aside{position:fixed;inset:0 auto 0 0;width:218px;background:#122c32;color:#dcebec;padding:32px 20px;display:flex;flex-direction:column}.brand{font-size:24px;font-weight:800;letter-spacing:2px}.brand span{display:block;font-size:12px;letter-spacing:1px;color:#97b7b8;margin:4px 0 40px}nav{display:grid;gap:8px}nav button{background:transparent;text-align:left;color:#c2d5d7;padding:13px;border:0}nav button.active{background:#26535b;color:#fff}aside a{margin-top:auto;color:#c2d5d7}aside p{font-size:11px;color:#82a4a9;margin-top:25px}main{margin-left:218px;padding:32px;max-width:1800px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}h1{font-size:29px;line-height:1.3;margin:8px 0}header small{letter-spacing:2px;color:var(--green);font-weight:700}header p{margin:0;color:var(--muted)}h2{font-size:17px;margin:0 0 18px}h2 small{font-size:12px;color:var(--muted);font-weight:400;margin-left:12px}button{border:1px solid transparent;border-radius:7px;padding:10px 16px;background:var(--green);color:white;cursor:pointer;font:inherit;font-weight:600}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}button.secondary{background:white;border-color:var(--line);color:var(--ink)}input,select,textarea{width:100%;background:white;color:var(--ink);border:1px solid #cad7db;border-radius:6px;padding:9px;font:inherit;min-width:0}label{display:grid;gap:6px;color:#4d626b;font-size:12px;margin-bottom:12px}label.inline{display:flex;align-items:center}input[type=checkbox]{width:auto}form button{align-self:end}.panel{padding:22px;background:white;border:1px solid var(--line);border-radius:11px;margin-bottom:20px;box-shadow:0 3px 10px #17364104}.filter{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px 16px}.filter label{margin:0}.credentials{padding:12px 20px}summary{cursor:pointer}.row{display:flex;align-items:end;gap:16px;margin-top:14px}.row label{flex:1;margin:0}.metrics{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:16px;margin-bottom:20px}.metric{background:white;border:1px solid var(--line);border-radius:10px;padding:20px}.metric strong{display:block;font-size:32px;line-height:1.5;color:#125b53;font-weight:700}.metric span{font-size:12px;color:var(--muted)}.metric p{margin:0;font-size:12px;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1.4fr;gap:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.tab{display:none}.tab.active{display:block}#notice{padding:0;margin-bottom:18px}#notice:not(:empty){padding:12px 16px;border-radius:7px;background:#e1f1eb;color:#1c5b4e}#notice.error{background:#fde9e7;color:#9b352b}.hint{font-size:12px;color:var(--muted)}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{padding:12px 10px;text-align:left;border-bottom:1px solid #edf1f2}th{background:#f7f9fa;font-size:12px;color:#657880;font-weight:600}td{font-size:13px}td button{font-size:12px;padding:5px 10px}pre{background:#f3f7f8;padding:18px;border-radius:7px;white-space:pre-wrap;word-break:break-word}code{background:#eaf0f2;padding:2px 5px;border-radius:4px}a{color:var(--green)}.tag{padding:3px 7px;border-radius:4px;background:#edf4f3;color:#2a6860;font-size:12px}.empty{padding:30px;color:var(--muted);text-align:center}.pager{display:flex;align-items:center;gap:12px;margin-top:16px}.bar-row{display:grid;grid-template-columns:110px 1fr 60px;gap:14px;align-items:center;margin:12px 0;font-size:12px}.bar-row i{display:block;background:#32a494;border-radius:4px;min-width:2px;height:20px}.bar-track{background:#edf5f3;border-radius:4px}h2 button{float:right}#deviceCredential{font-family:monospace}@media(max-width:1050px){aside{width:170px;padding:24px 14px}main{margin-left:170px;padding:22px}.split{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.filter{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){aside{position:static;width:auto;padding:18px}nav{display:flex;flex-wrap:wrap;gap:4px}.brand span,aside p{display:none}.brand{margin-bottom:10px}aside a{margin-top:12px}main{margin:0;padding:16px}.row,header{align-items:stretch;flex-direction:column}.filter,.form-grid{grid-template-columns:1fr}.metric strong{font-size:25px}.panel{padding:16px}.metrics{gap:10px}}
