:root{--bg: #0d1117;--panel: #161b22;--panel-2: #1c2128;--border: #30363d;--text: #e6edf3;--text-dim: #8d96a0;--accent: #58a6ff;--success: #3fb950;--warn: #d29922;--danger: #f85149;--mono: ui-monospace, "JetBrains Mono", SFMono-Regular, Consolas, monospace}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,system-ui,sans-serif;font-size:14px;line-height:1.55}.app{display:flex;height:100vh}.sidebar{width:220px;background:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column}.sidebar-header{padding:16px 18px;border-bottom:1px solid var(--border)}.sidebar-header h1{margin:0;font-size:14px;font-weight:600;letter-spacing:.5px;color:var(--text)}.sidebar-header .tag{display:block;margin-top:4px;font-size:11px;color:var(--text-dim)}.nav{flex:1;display:flex;flex-direction:column;padding:12px 0}.nav button{background:transparent;border:0;padding:10px 18px;text-align:left;color:var(--text-dim);cursor:pointer;font-size:13px;border-left:2px solid transparent}.nav button:hover{background:var(--panel-2);color:var(--text)}.nav button.active{color:var(--text);border-left-color:var(--accent);background:var(--panel-2)}.main{flex:1;overflow:auto;padding:24px 28px}.page-title{margin:0 0 20px;font-size:18px;font-weight:600}.card{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:16px 18px;margin-bottom:14px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.kpi{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:14px 16px}.kpi-label{font-size:11px;color:var(--text-dim);letter-spacing:.5px;text-transform:uppercase}.kpi-value{font-size:22px;font-weight:600;margin-top:6px;font-family:var(--mono)}.kpi-sub{font-size:11px;color:var(--text-dim);margin-top:4px}.row{display:flex;align-items:center;gap:12px}.muted{color:var(--text-dim)}.success{color:var(--success)}.warn{color:var(--warn)}.danger{color:var(--danger)}.mono{font-family:var(--mono);font-size:12px}.btn{background:var(--panel-2);border:1px solid var(--border);color:var(--text);padding:6px 10px;font-size:12px;border-radius:4px;cursor:pointer;font-family:inherit}.btn:hover{background:var(--border)}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-weight:500;color:var(--text-dim);font-size:11px;text-transform:uppercase;letter-spacing:.5px;padding:8px 12px;border-bottom:1px solid var(--border)}.table td{padding:10px 12px;border-bottom:1px solid var(--border)}.table tr:hover td{background:var(--panel-2)}.empty{padding:32px;text-align:center;color:var(--text-dim);font-size:13px}.tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:16px}.tabs button{background:transparent;border:0;color:var(--text-dim);padding:8px 14px;font-size:12px;border-bottom:2px solid transparent;cursor:pointer;font-family:inherit}.tabs button.active{color:var(--text);border-bottom-color:var(--accent)}.error{background:#f8514914;border:1px solid var(--danger);color:var(--danger);padding:10px 14px;border-radius:4px;font-size:12px;margin-bottom:12px}.pre{background:var(--panel-2);border:1px solid var(--border);padding:12px;border-radius:4px;font-family:var(--mono);font-size:11px;overflow:auto;max-height:400px;white-space:pre-wrap;word-break:break-all}
