*{box-sizing:border-box}body{margin:0;background:#f3f5fa;color:#1d2941;font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid transparent;border-radius:8px;padding:8px 13px;font-size:12px;font-weight:650;transition:.15s}button:disabled{opacity:.5;cursor:wait}button:hover{filter:brightness(.96)}button:focus-visible,a:focus-visible{outline:3px solid #aaa4fb;outline-offset:3px}input,textarea{width:100%;background:#fff;border:1px solid #d9dfeb;border-radius:8px;padding:10px 12px;color:#1d2941;outline:none}input:focus,textarea:focus{border-color:#7569e8;box-shadow:0 0 0 3px #6654e818}label{display:block;font-size:12px;font-weight:650;margin:16px 0 7px}.primary{background:#5145d9;color:white}.ghost{background:white;border-color:#dce1ed;color:#58657c}.danger{background:#fff1f2;color:#bd3249;border-color:#f8d5dc}.eyebrow{color:#6f63df;font-weight:750;letter-spacing:.16em;font-size:10px;margin:0 0 6px}h1,h2,p{margin-top:0}h1{font-size:26px;letter-spacing:-.03em;line-height:1.3;margin-bottom:7px}h2{font-size:15px;margin-bottom:3px}.muted{color:#8792a6;font-size:12px;margin-bottom:0}.footnote{font-size:11px;color:#8d97aa;line-height:1.9;margin:20px 0 0}.brand-icon{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#6251e9;color:white;font-size:22px;font-weight:850;flex-shrink:0}.error{font-size:12px;color:#c83f58;min-height:20px}.login-view{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 0,#1c2750,#080e1d 65%);padding:24px}.login-card{width:390px;max-width:100%;background:#10192b;color:#f1f5fc;padding:32px;border:1px solid #334155;border-radius:20px}.login-card .brand-icon{margin-bottom:25px}.login-card h1{font-size:25px}.login-card label{color:#c5cedc}.login-card input{background:#1e2a3d;border-color:#3b4b63;color:white}.login-card .primary{width:100%}.dashboard{display:flex;min-height:100vh}.sidebar{width:210px;flex-shrink:0;background:#10182b;color:#9aa8c1;padding:30px 19px;position:fixed;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;color:white;font-size:17px;font-weight:850;margin-bottom:50px;letter-spacing:.06em}.brand small{display:block;color:#8392b0;font-size:10px;font-weight:500;letter-spacing:.1em}.sidebar a,.nav-active{padding:12px;border-radius:9px;color:#9baac5;text-decoration:none;font-size:12px}.nav-active{color:#ddd8ff;background:#6652e62b;margin-bottom:10px}.sidebar-bottom{margin-top:auto;font-size:10px;line-height:1.8;color:#94a5be}.sidebar-bottom p{font-size:10px;color:#5f718f;margin:7px 0 0}.live-dot{display:inline-block;width:6px;height:6px;background:#42d3a5;border-radius:50%;margin-right:5px}.main{margin-left:210px;padding:35px 35px 30px;width:calc(100% - 210px);max-width:1900px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.header-actions{display:flex;gap:8px;align-items:center}.header-actions span{font-size:12px;color:#8490a4;margin-right:8px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.metrics article{background:white;border:1px solid #e1e5ef;border-radius:12px;padding:18px 22px}.metrics span{font-size:11px;color:#8893a8}.metrics strong{display:block;font-size:30px;line-height:1.4;font-weight:750;color:#24314d}.workspace{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr);gap:20px;align-items:start}.panel{border:1px solid #e0e5ef;border-radius:13px;background:white;overflow:hidden}.panel-heading{padding:21px;display:flex;align-items:center;justify-content:space-between;gap:12px}.search{width:calc(100% - 42px);margin:0 21px 18px;background:#f8f9fc;font-size:12px}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:10px;color:#8993a7;font-weight:650;background:#f8f9fc;padding:11px 17px}td{font-size:12px;padding:14px 17px;border-top:1px solid #eef0f6;color:#5c6880}td:first-child{color:#283653;font-weight:650}.table-scroll{overflow-x:auto}tr.selected td{background:#f4f2ff}.tag{display:inline-flex;font-size:10px;border-radius:6px;padding:2px 7px;background:#e8f7f0;color:#2c8b68}.tag.off{color:#ab6776;background:#fff0f3}.tag.expired{color:#ad8243;background:#fff6e6}.empty{padding:45px 20px;text-align:center;color:#929db0;font-size:12px}.detail-body{padding:0 21px 22px}.detail-body form{margin-bottom:24px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-body input,.detail-body textarea{font-size:12px}.detail-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.device{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #edf0f6;padding:14px 0;gap:12px}.device strong{display:block;font-size:12px;color:#33415d}.device small{display:block;font-size:10px;color:#8d97a9}.device code{font-size:10px;color:#9ca5b6}.audit-panel{margin-top:22px}.audit-panel tbody td{font-size:11px;padding-top:10px;padding-bottom:10px}.notice{padding:11px 16px;background:#e9f7f0;color:#28795e;border:1px solid #ccebdd;border-radius:9px;margin-bottom:18px;font-size:12px}.notice.failure{background:#fff0f3;color:#b23d59;border-color:#f6d8e0}dialog{width:440px;max-width:calc(100% - 32px);border:1px solid #dce2ef;border-radius:17px;padding:25px;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#10182b75;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between}.dialog-heading h2{font-size:19px}#dialog-submit{width:100%;margin-top:7px}.checkbox{display:flex;align-items:center;gap:8px}.checkbox input{width:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(max-width:1150px){.main{padding:25px 22px}.workspace{grid-template-columns:1fr}.sidebar{width:180px}.main{margin-left:180px;width:calc(100% - 180px)}header{align-items:flex-start}.header-actions{flex-wrap:wrap;justify-content:flex-end}}@media(max-width:700px){.sidebar{display:none}.main{margin-left:0;width:100%;padding:22px 15px}header{display:block}.header-actions{margin-top:15px;justify-content:flex-start}.metrics{gap:9px}.metrics article{padding:14px}.metrics strong{font-size:25px}.panel-heading{padding:17px}h1{font-size:23px}}
