@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@300;400;500;600&display=swap";
:root{--bg-primary:#0c0c0c;--bg-secondary:#111113;--bg-card:#16161a;--bg-card-hover:#1c1c21;--bg-header:#111113;--bg-input:#1a1a1f;--border-primary:#27272a;--border-subtle:#1e1e22;--border-hover:#3f3f46;--text-primary:#fafafa;--text-secondary:#a1a1aa;--text-tertiary:#71717a;--text-muted:#52525b;--accent-green:#22c55e;--accent-green-dim:#22c55e26;--accent-red:#ef4444;--accent-red-dim:#ef444426;--accent-amber:#f59e0b;--accent-amber-dim:#f59e0b26;--accent-blue:#3b82f6;--accent-blue-dim:#3b82f626;--accent-purple:#a855f7;--accent-purple-dim:#a855f726;--accent-cyan:#06b6d4;--accent-cyan-dim:#06b6d426;--accent-orange:#f97316;--accent-orange-dim:#f9731626;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono","SF Mono","Fira Code","Cascadia Code",monospace;--grid-gap:6px;--card-padding:14px;--card-radius:10px;--header-height:48px;--shadow-card:0 1px 3px #0000004d,0 1px 2px #0003;--shadow-card-hover:0 4px 12px #0006;--shadow-glow-green:0 0 12px #22c55e4d;--shadow-glow-red:0 0 12px #ef44444d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-primary);height:100%;color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:13px;line-height:1.5;overflow:hidden}a{color:var(--accent-blue);text-decoration:none;transition:color .15s}a:hover{color:var(--text-primary)}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 0 var(--dot-color,var(--accent-green));transform:scale(1)}50%{box-shadow:0 0 8px 2px var(--dot-color,var(--accent-green));transform:scale(1.1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.animate-in{animation:.3s forwards fadeIn}.mono{font-family:var(--font-mono)}.text-green{color:var(--accent-green)}.text-red{color:var(--accent-red)}.text-amber{color:var(--accent-amber)}.text-blue{color:var(--accent-blue)}.text-purple{color:var(--accent-purple)}.text-cyan{color:var(--accent-cyan)}.text-orange{color:var(--accent-orange)}.text-muted{color:var(--text-tertiary)}.badge{letter-spacing:.5px;text-transform:uppercase;font-size:10px;font-weight:600;font-family:var(--font-mono);white-space:nowrap;border-radius:4px;align-items:center;padding:1px 7px;display:inline-flex}.badge-green{background:var(--accent-green-dim);color:var(--accent-green)}.badge-red{background:var(--accent-red-dim);color:var(--accent-red)}.badge-amber{background:var(--accent-amber-dim);color:var(--accent-amber)}.badge-blue{background:var(--accent-blue-dim);color:var(--accent-blue)}.badge-purple{background:var(--accent-purple-dim);color:var(--accent-purple)}.badge-cyan{background:var(--accent-cyan-dim);color:var(--accent-cyan)}.badge-orange{background:var(--accent-orange-dim);color:var(--accent-orange)}.status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.status-dot.operational{background:var(--accent-green);--dot-color:var(--accent-green);animation:2s ease-in-out infinite pulse-dot}.status-dot.degraded{background:var(--accent-amber);--dot-color:var(--accent-amber);animation:1.5s ease-in-out infinite pulse-dot}.status-dot.down{background:var(--accent-red);--dot-color:var(--accent-red);animation:1s ease-in-out infinite pulse-dot}.status-dot.unknown{background:var(--text-muted)}.skeleton-line{background:linear-gradient(90deg,var(--border-subtle)25%,var(--border-primary)50%,var(--border-subtle)75%);background-size:200% 100%;border-radius:4px;height:12px;animation:1.5s ease-in-out infinite shimmer}.dashboard-layout{flex-direction:column;height:100vh;display:flex;overflow:hidden}.widget-grid{gap:var(--grid-gap);padding:var(--grid-gap);flex:1;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;display:grid;overflow:hidden}.widget-grid>*{min-width:0;min-height:0}@media (max-width:1400px){.widget-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:1000px){.widget-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.widget-grid{grid-template-columns:1fr}}
