:root{--bg: #0a0e15;--panel: #111827;--panel-soft: #0f1622;--border: #1c2637;--text: #e7eefb;--muted: #8fa2bf;--primary: #5b8cff;--green: #2dd4a7;--amber: #f5b84b;--red: #ff6b6b;--radius: 14px;--sidebar: 236px}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:radial-gradient(1100px 600px at 85% -10%,rgba(91,140,255,.14),transparent 60%),radial-gradient(900px 500px at 0% 110%,rgba(45,212,167,.08),transparent 55%),var(--bg);color:var(--text);font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#263348;border-radius:8px}::-webkit-scrollbar-track{background:transparent}.shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar);flex:0 0 var(--sidebar);border-right:1px solid var(--border);background:linear-gradient(180deg,#111827eb,#0a0e15f5);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:22px 16px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:22px}.brand{display:flex;align-items:center;gap:12px;padding:4px 8px}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#5b8cff,#2dd4a7);display:grid;place-items:center;color:#04101f;font-weight:900;font-size:18px;box-shadow:0 8px 24px #5b8cff59}.brand-title{font-weight:700;font-size:15px;letter-spacing:.2px}.brand-sub{font-size:11px;color:var(--muted);margin-top:2px}.nav{display:flex;flex-direction:column;gap:4px}.nav-label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#5c6b83;padding:10px 12px 6px}.nav-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;color:#a8b7cf;font-size:13.5px;transition:background .15s,color .15s}.nav-item:hover{background:#ffffff0a;color:#e7eefb}.nav-item.active{background:linear-gradient(90deg,#5b8cff2e,#5b8cff0a);color:#dfe9ff;box-shadow:inset 2px 0 0 var(--primary)}.nav-item .icon{width:18px;height:18px;display:grid;place-items:center;opacity:.9}.sidebar-foot{margin-top:auto;font-size:11px;color:#5c6b83;padding:8px 12px;line-height:1.6}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:66px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#0a0e15b8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20}.page-title{font-size:17px;font-weight:650;letter-spacing:.2px}.page-sub{font-size:12px;color:var(--muted);margin-top:3px}.top-actions{display:flex;align-items:center;gap:14px}.pill{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 12px;border:1px solid var(--border);border-radius:999px;font-size:12px;color:#b9c7dc;background:#111827b3}.dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #2dd4a71f}.dot.off{background:#64748b;box-shadow:none}.content{padding:26px 28px 48px;max-width:1500px;width:100%;margin:0 auto}.card{background:linear-gradient(180deg,#111827eb,#0f1622eb);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.card-title{font-size:14.5px;font-weight:650;display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:26px 0 14px}.section-head h2{font-size:16px;margin:0;letter-spacing:.2px}.section-head span{color:var(--muted);font-size:12px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat{position:relative;overflow:hidden;padding:18px;border-radius:var(--radius);border:1px solid var(--border);background:linear-gradient(160deg,#111827f2,#0b111bf2)}.stat:before{content:"";position:absolute;inset:-40% -20% auto auto;width:140px;height:140px;background:radial-gradient(circle,rgba(91,140,255,.18),transparent 70%)}.stat-label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.stat-value{font-size:26px;font-weight:700;letter-spacing:-.02em;margin-top:10px}.stat-foot{color:#64748b;font-size:11.5px;margin-top:6px}.trend-up{color:var(--green)}.trend-warn{color:var(--amber)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.muted{color:var(--muted)}.small{font-size:12px}.empty{padding:38px 20px;text-align:center;color:var(--muted);font-size:13px}.login-wrap{min-height:100vh;display:grid;grid-template-columns:1.15fr 1fr}.login-visual{position:relative;overflow:hidden;padding:56px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--border);background:radial-gradient(700px 420px at 15% 10%,rgba(91,140,255,.22),transparent 60%),radial-gradient(600px 500px at 90% 90%,rgba(45,212,167,.12),transparent 60%),#0b1019}.login-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(circle at 40% 40%,#000 20%,transparent 75%);mask-image:radial-gradient(circle at 40% 40%,#000 20%,transparent 75%);pointer-events:none}.login-copy{position:relative;z-index:2;max-width:460px}.login-copy h1{font-size:34px;line-height:1.2;margin:26px 0 14px;letter-spacing:-.02em}.login-copy p{color:var(--muted);line-height:1.8;font-size:14px}.login-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.login-badges span{padding:7px 11px;border-radius:999px;border:1px solid var(--border);color:#a8b7cf;font-size:11.5px;background:#11182799}.login-side{display:flex;align-items:center;justify-content:center;padding:40px}.login-card{width:100%;max-width:390px}.login-card h2{font-size:22px;margin:0 0 8px}.login-card p{color:var(--muted);font-size:13px;margin:0 0 26px}.field{margin-bottom:16px}.field label{display:block;font-size:12px;color:#a8b7cf;margin-bottom:7px}.login-foot{margin-top:22px;color:#5c6b83;font-size:11.5px;text-align:center}.mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mode-card{border:1px solid var(--border);border-radius:12px;padding:16px;cursor:pointer;background:#0f162299;transition:border-color .15s,background .15s,transform .15s;position:relative}.mode-card:hover{border-color:#31415c;transform:translateY(-1px)}.mode-card.active{border-color:#5b8cffb3;background:linear-gradient(160deg,#5b8cff24,#0f1622b3);box-shadow:0 0 0 1px #5b8cff40,0 12px 30px #00000040}.mode-card h3{margin:0 0 6px;font-size:14px}.mode-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.mode-tag{display:inline-block;font-size:10px;padding:2px 7px;border-radius:999px;background:#2dd4a71f;color:var(--green);margin-bottom:10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.node-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.node-chip{border:1px solid var(--border);background:#0a0e1599;border-radius:10px;padding:10px 12px;display:flex;gap:10px;align-items:center;cursor:pointer;transition:border-color .15s}.node-chip.checked{border-color:#5b8cff8c;background:#5b8cff14}.node-chip .name{font-weight:600;font-size:12.5px}.node-chip .meta{color:var(--muted);font-size:11px;margin-top:2px}.result-card{border:1px solid rgba(45,212,167,.35);background:linear-gradient(160deg,#2dd4a71a,#111827d9)}.result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}.result-grid .k{color:var(--muted);font-size:11px;margin-bottom:5px}.result-grid .v{font-size:18px;font-weight:700}.n-data-table .n-data-table-th{font-size:11.5px!important;text-transform:uppercase;letter-spacing:.06em}.n-data-table .n-data-table-td{font-size:13px!important}@media(max-width:1080px){.grid-4,.result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.login-wrap{grid-template-columns:1fr}.login-visual{display:none}}@media(max-width:860px){.sidebar{position:fixed;z-index:50;transform:translate(-100%);transition:transform .2s}.sidebar.open{transform:translate(0)}.content{padding:18px}.mode-grid,.form-row{grid-template-columns:1fr}.topbar{padding:0 16px}}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:#70829d;font-weight:600;padding:12px 16px;border-bottom:1px solid var(--border);background:#0d1420;white-space:nowrap}.table td{padding:13px 16px;border-bottom:1px solid rgba(28,38,55,.7);vertical-align:middle}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover td{background:#ffffff05}.actions-cell{display:flex;gap:4px;align-items:center;white-space:nowrap}.tag{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:999px;font-size:11px;font-weight:600;border:1px solid transparent;white-space:nowrap}.tag.green{color:#4ade9d;background:#2dd4a71a;border-color:#2dd4a740}.tag.amber{color:#f5c451;background:#f5b84b1a;border-color:#f5b84b40}.tag.blue{color:#7aa2ff;background:#5b8cff1a;border-color:#5b8cff40}.tag.gray{color:#93a4bd;background:#94a3b814;border-color:#94a3b833}.n-button--primary-type,.n-button--primary-type .n-button__content{color:#fff!important}
