:root{--bg-base: #080c14;--bg-surface: #0d1424;--bg-card: #111827;--bg-elevated: #1a2235;--border-subtle: rgba(99, 130, 255, .1);--border-default: #1f2d45;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #4b5a7a;--color-primary: #6366f1;--color-primary-light: rgba(99, 102, 241, .15);--color-secondary: #8b5cf6;--color-cyan: #22d3ee;--color-success: #10b981;--color-success-light: rgba(16, 185, 129, .12);--color-warning: #f59e0b;--color-warning-light: rgba(245, 158, 11, .12);--color-danger: #f43f5e;--color-danger-light: rgba(244, 63, 94, .12);--glow-primary: 0 0 20px rgba(99, 102, 241, .35);--glow-success: 0 0 12px rgba(16, 185, 129, .35);--glow-danger: 0 0 12px rgba(244, 63, 94, .35)}*{box-sizing:border-box}body{margin:0;background:var(--bg-base);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#2a3a55;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3a4e6a}@keyframes pulse-ring{0%{transform:scale(1);opacity:1}70%{transform:scale(2.2);opacity:0}to{transform:scale(2.2);opacity:0}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}@keyframes float-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-dot{position:relative;display:inline-block;width:8px;height:8px;border-radius:50%}.status-dot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;animation:pulse-ring 1.8s ease-out infinite}.status-dot.online{background:var(--color-success)}.status-dot.online:after{background:var(--color-success)}.status-dot.offline{background:var(--color-danger)}.status-dot.offline:after{background:var(--color-danger);animation:none}.status-dot.unknown{background:var(--text-muted)}.status-dot.unknown:after{animation:none}.glass-card{background:#111827d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-default);border-radius:14px}.gradient-text{background:linear-gradient(135deg,#6366f1,#8b5cf6,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.proto-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.5px;white-space:nowrap}.proto-badge.reality{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.2)}.proto-badge.hy2{background:#8b5cf626;color:#a78bfa;border:1px solid rgba(139,92,246,.2)}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-3px);box-shadow:0 12px 40px #0006}.sd-sider{background:linear-gradient(180deg,#0a0f1e,#0d1528)!important;border-right:1px solid rgba(99,102,241,.12)!important}.sd-sider .ant-menu{background:transparent!important}.sd-sider .ant-menu-item{margin:2px 8px!important;border-radius:8px!important;color:var(--text-secondary)!important;transition:all .2s ease!important}.sd-sider .ant-menu-item:hover{background:#6366f11f!important;color:var(--text-primary)!important}.sd-sider .ant-menu-item-selected{background:linear-gradient(135deg,#6366f140,#8b5cf626)!important;color:#a5b4fc!important;box-shadow:inset 2px 0 #6366f1!important}.ant-card{border-color:var(--border-default)!important}.ant-table-thead>tr>th{background:#6366f10f!important;color:var(--text-secondary)!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.5px!important;border-bottom:1px solid var(--border-default)!important}.ant-table-tbody>tr:hover>td{background:#6366f10f!important}.page-enter{animation:float-up .3s ease}.traffic-ring-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center}.traffic-ring-wrap svg{transform:rotate(-90deg)}.shimmer{background:linear-gradient(90deg,#1a2235 25%,#222f47,#1a2235 75%);background-size:200% auto;animation:shimmer 1.5s linear infinite;border-radius:8px}.user-content{padding:28px 40px;max-width:100%;margin:0 auto;width:100%}@media(max-width:576px){.user-content{padding:16px 12px}.ant-card-body{padding:16px!important}.sub-qr-col{margin-top:16px;text-align:center}}
