:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-card: #1e293b;--bg-card-hover: #334155;--bg-input: #0f172a;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--border: #334155;--accent: #3b82f6;--accent-hover: #2563eb;--success: #22c55e;--warning: #f59e0b;--danger: #ef4444;--info: #06b6d4;--radius: 8px;--shadow: 0 1px 3px rgba(0, 0, 0, .3)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border:none;border-radius:var(--radius);padding:8px 16px;font-size:14px;font-weight:500;transition:background .15s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-success{background:var(--success);color:#fff}.btn-danger{background:var(--danger);color:#fff}.btn-secondary{background:var(--bg-card-hover);color:var(--text-primary)}.btn-secondary:hover{background:var(--border)}.btn-sm{padding:4px 10px;font-size:12px}input,select,textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);padding:8px 12px;font-size:14px;width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;padding:0;margin:0;border:1px solid var(--border);border-radius:4px;background:var(--bg-input);cursor:pointer;position:relative;flex-shrink:0;vertical-align:middle}input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}input[type=checkbox]:checked:after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.badge-online{background:#22c55e26;color:var(--success)}.badge-warning{background:#f59e0b26;color:var(--warning)}.badge-offline{background:#ef444426;color:var(--danger)}.badge-unknown{background:#64748b26;color:var(--text-muted)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:20px}.tab{padding:10px 20px;background:none;color:var(--text-secondary);border-radius:var(--radius) var(--radius) 0 0;font-weight:500}.tab.active{color:var(--accent);border-bottom:2px solid var(--accent)}.tab:hover:not(.active){color:var(--text-primary);background:var(--bg-card-hover)}pre{background:#0a0f1a;border:1px solid var(--border);border-radius:var(--radius);padding:16px;overflow-x:auto;font-size:13px;line-height:1.6;color:#e2e8f0;max-height:600px;overflow-y:auto}.grid-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.stat-box{text-align:center;padding:16px}.stat-value{font-size:28px;font-weight:700}.stat-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;margin-top:4px}.meter{width:100%;height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden;margin-top:4px}.meter-fill{height:100%;border-radius:3px;transition:width .3s}.meter-indeterminate{width:40%;background:var(--accent);animation:meter-slide 1.2s ease-in-out infinite}@keyframes meter-slide{0%{margin-left:-40%}to{margin-left:100%}}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border)}.table th{color:var(--text-secondary);font-size:12px;text-transform:uppercase;font-weight:600}.table tr:hover td{background:var(--bg-card-hover)}.flex{display:flex}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-center{display:flex;align-items:center}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.mt-16{margin-top:16px}.text-sm{font-size:13px}.text-muted{color:var(--text-secondary)}
