:root{--nio-ink: #10181e;--nio-ink-2: #0a1014;--nio-pearl: #999b9a;--nio-green: #4dff9a;--nio-blue: #4da8ff;--nio-orange: #ffb84d;--nio-purple: #c084fc;--nio-cyan: #4dfff2;--nio-yellow: #ffe14d;--nio-red: #ff6b6b;--nio-critical: #ff3b3b;--nio-warning: #ffb84d;--nio-ok: #4dff9a;--nio-offline: #55606a;--card: rgba(16, 24, 30, .82);--card-border: rgba(153, 155, 154, .18);--sidebar-w: 220px;--topbar-h: 64px;--viewbar-h: 52px;--gap: 12px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:radial-gradient(circle at 50% 20%,#16222b 0%,var(--nio-ink) 45%,var(--nio-ink-2) 100%);color:#e8ecef;font-family:Segoe UI,system-ui,-apple-system,sans-serif;overscroll-behavior:none;touch-action:none}.nio-app{position:relative;width:100vw;height:100vh;overflow:hidden}.nio-glass{background:var(--card);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;box-shadow:0 8px 32px #00000073}.nio-scroll::-webkit-scrollbar{width:6px}.nio-scroll::-webkit-scrollbar-thumb{background:var(--card-border);border-radius:4px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.ok{background:var(--nio-ok)}.status-dot.warning{background:var(--nio-warning)}.status-dot.critical{background:var(--nio-critical);box-shadow:0 0 8px var(--nio-critical)}.status-dot.offline{background:var(--nio-offline)}@keyframes nio-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(1.25)}}.nio-pulse{animation:nio-pulse 1.4s ease-in-out infinite}@keyframes nio-bg-pulse{0%,to{opacity:.15;transform:scale(1)}50%{opacity:.55;transform:scale(1.3)}}.nio-bg-node{position:absolute;background:radial-gradient(circle at 35% 35%,#fff,#ffffff26 70%);border-radius:50%;animation:nio-bg-pulse ease-in-out infinite}.nio-sidebar{position:absolute;top:var(--gap);left:var(--gap);bottom:var(--gap);width:var(--sidebar-w);z-index:35;padding:16px 10px;display:flex;flex-direction:column}.nio-sidebar-list{display:flex;flex-direction:column;gap:4px;flex:1;overflow-y:auto}.nio-sidebar-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:transparent;border:none;border-radius:8px;color:var(--nio-pearl);font-size:13px;text-align:left;cursor:pointer;position:relative}.nio-sidebar-item:disabled{cursor:not-allowed;opacity:.45}.nio-sidebar-item.active{background:#4dff9a1f;color:var(--nio-green);font-weight:600}.nio-sidebar-icon{width:18px;text-align:center}.nio-sidebar-status{margin-top:10px;padding:12px}.nio-badge{margin-left:auto;background:var(--nio-critical);color:#fff;font-size:10px;font-weight:700;border-radius:10px;padding:1px 6px}.nio-topbar{position:absolute;top:var(--gap);left:calc(var(--sidebar-w) + var(--gap) * 2);right:var(--gap);height:var(--topbar-h);display:flex;align-items:center;gap:12px;padding:0 16px;z-index:30}.nio-brand{display:flex;align-items:center;gap:8px}.nio-brand-mark{font-size:22px;color:var(--nio-green)}.nio-icon-btn{position:relative;background:#ffffff0f;border:1px solid var(--card-border);color:#e8ecef;width:34px;height:34px;border-radius:8px;cursor:pointer;font-size:14px}.nio-badge-corner{position:absolute;top:-4px;right:-4px;margin-left:0}.nio-avatar{width:30px;height:30px;border-radius:50%;background:var(--nio-green);color:#0a1014;font-weight:700;display:flex;align-items:center;justify-content:center}.nio-search-results{position:absolute;top:100%;left:0;right:0;margin-top:6px;padding:6px;z-index:40}.nio-search-result{display:flex;align-items:center;gap:8px;width:100%;background:transparent;border:none;color:#e8ecef;padding:8px 10px;border-radius:6px;font-size:13px;cursor:pointer;text-align:left}.nio-search-result:hover{background:#ffffff0f}.nio-viewbar{position:absolute;left:calc(var(--sidebar-w) + var(--gap) * 2);right:var(--gap);bottom:var(--gap);height:var(--viewbar-h);display:flex;align-items:center;gap:8px;padding:0 14px;z-index:30;flex-wrap:wrap}.nio-fullscreen-exit{position:absolute;top:var(--gap);right:var(--gap);z-index:50}.nio-bottom-panel{padding:14px 16px;display:flex;flex-direction:column;overflow:hidden}.nio-bottom-panel-header{display:flex;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.5px;color:var(--nio-pearl);margin-bottom:10px}.nio-link{color:var(--nio-blue);cursor:pointer;font-weight:600}.nio-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;overflow-y:auto}.nio-stat-card{background:#ffffff08;border:1px solid var(--card-border);border-radius:8px;padding:8px 10px}.nio-full-view{position:absolute;top:calc(var(--topbar-h) + var(--gap) * 2);left:calc(var(--sidebar-w) + var(--gap) * 2);right:var(--gap);bottom:var(--gap);z-index:26;display:flex;flex-direction:column;gap:16px;overflow:hidden}.nio-insights-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.nio-insights-list{overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding-right:4px}.nio-insight-card{padding:16px 18px}.nio-finding{border-left:3px solid var(--nio-blue);padding:6px 0 6px 12px;margin-bottom:8px}@media (max-width: 900px){.nio-full-view{left:var(--gap)}}.nio-detail-panel{position:absolute;top:calc(var(--topbar-h) + var(--gap) * 2);right:var(--gap);width:340px;max-height:calc(100vh - var(--topbar-h) - var(--viewbar-h) - var(--gap) * 4);overflow-y:auto;padding:20px;z-index:32}.nio-filter-panel{position:absolute;top:calc(var(--topbar-h) + var(--gap) * 2);left:calc(var(--sidebar-w) + var(--gap) * 2);width:280px;max-height:calc(100vh - var(--topbar-h) - var(--viewbar-h) - var(--gap) * 4);overflow-y:auto;padding:18px;z-index:32}@media (max-width: 900px){.nio-sidebar{display:none}.nio-topbar,.nio-viewbar,.nio-full-view,.nio-filter-panel{left:var(--gap)}}@media (max-width: 820px){.nio-detail-panel{top:auto;bottom:0;left:0;right:0;width:auto;max-height:55vh;border-radius:18px 18px 0 0}.nio-filter-panel{top:auto;bottom:0;left:0;right:0;width:auto;max-height:60vh;border-radius:18px 18px 0 0}}.nio-btn{background:#ffffff0f;border:1px solid var(--card-border);color:#e8ecef;padding:8px 12px;border-radius:8px;font-size:13px;cursor:pointer;white-space:nowrap;touch-action:manipulation}.nio-btn.active{background:var(--nio-green);color:#0a1014;border-color:var(--nio-green);font-weight:600}.nio-btn:active{transform:scale(.97)}.nio-btn:disabled{opacity:.4;cursor:not-allowed}
