html,body,#app{background:#0a1628;width:100%;height:100%;margin:0;padding:0;overflow:hidden}:root{--bg-primary:#0a1628;--bg-secondary:#0d1f3c;--bg-panel:#061e41d9;--border-color:#2c77db59;--border-glow:#2c77db99;--text-primary:#e6f0ff;--text-secondary:#b4d2ffbf;--text-highlight:#00d4ff;--accent-blue:#2c77db;--accent-cyan:#00d4ff;--accent-green:#00e676;--accent-yellow:#ffd740;--accent-red:#ff5252;--accent-orange:#ff9100;--panel-radius:4px}*{box-sizing:border-box;margin:0;padding:0}html,body{color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;font-family:PingFang SC,Microsoft YaHei,sans-serif;font-size:14px}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#2c77db4d;border-radius:2px}.panel{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--panel-radius);padding:12px;position:relative;overflow:hidden}.panel:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-cyan), transparent);height:2px;position:absolute;top:0;left:0;right:0}.panel-title{color:var(--text-highlight);align-items:center;gap:6px;margin-bottom:10px;font-size:14px;font-weight:600;display:flex}.panel-title:before{content:"";background:var(--accent-cyan);border-radius:1px;width:3px;height:14px}.num-highlight{color:var(--accent-cyan);font-family:DIN,Roboto,monospace;font-size:28px;font-weight:700}.num-sm{color:var(--accent-cyan);font-family:DIN,Roboto,monospace;font-size:18px;font-weight:600}.data-table{border-collapse:collapse;width:100%;font-size:12px}.data-table th{color:var(--text-secondary);text-align:left;border-bottom:1px solid var(--border-color);padding:6px 8px;font-weight:400}.data-table td{border-bottom:1px solid #2c77db1a;padding:5px 8px}.data-table tr:hover td{background:#2c77db14}.tag{border-radius:2px;padding:1px 8px;font-size:11px;display:inline-block}.tag-online{color:var(--accent-green);background:#00e67626}.tag-offline{color:var(--accent-red);background:#ff525226}.tag-warning{color:var(--accent-orange);background:#ff910026}
