@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--bg-primary:#09090b;--bg-secondary:#121215;--bg-card:#18181b;--bg-card-hover:#202024;--border-color:#ffffff14;--border-glow:#3b82f666;--text-main:#f8fafc;--text-muted:#94a3b8;--primary:#3b82f6;--primary-glow:#3b82f640;--success:#22c55e;--warning:#f59e0b;--danger:#ef4444;--cyan:#06b6d4;--purple:#8b5cf6;--sev-critical-bg:#ef444426;--sev-critical-text:#f87171;--sev-critical-border:#ef444466;--sev-high-bg:#f59e0b26;--sev-high-text:#fbbf24;--sev-high-border:#f59e0b66;--sev-med-bg:#eab30826;--sev-med-text:#facc15;--sev-med-border:#eab30866;--sev-low-bg:#22c55e26;--sev-low-text:#4ade80;--sev-low-border:#22c55e66}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-main);background-image:radial-gradient(circle at 10% 10%,#3b82f614 0%,#0000 40%),radial-gradient(circle at 90% 90%,#8b5cf60f 0%,#0000 40%);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}a{color:inherit;text-decoration:none}.glass-card{-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);background:#18181bd9;border-radius:16px;padding:24px;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 20px #0003}.glass-card:hover{border-color:#ffffff26;box-shadow:0 12px 30px #0006}.btn-primary{color:#fff;cursor:pointer;box-shadow:0 4px 15px var(--primary-glow);background:linear-gradient(135deg,#3b82f6,#2563eb);border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#60a5fa,#3b82f6);transform:translateY(-1px);box-shadow:0 6px 20px #3b82f666}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:var(--text-main);border:1px solid var(--border-color);cursor:pointer;background:#ffffff0d;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-weight:500;transition:all .2s;display:inline-flex}.btn-secondary:hover{background:#ffffff1a;border-color:#ffffff2e}.input-field{border:1px solid var(--border-color);color:var(--text-main);background:#09090bcc;border-radius:12px;width:100%;padding:12px 16px;font-family:Inter,sans-serif;font-size:.95rem;transition:all .2s}.input-field:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #3b82f633}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-critical{background:var(--sev-critical-bg);color:var(--sev-critical-text);border:1px solid var(--sev-critical-border)}.badge-high{background:var(--sev-high-bg);color:var(--sev-high-text);border:1px solid var(--sev-high-border)}.badge-medium{background:var(--sev-med-bg);color:var(--sev-med-text);border:1px solid var(--sev-med-border)}.badge-low{background:var(--sev-low-bg);color:var(--sev-low-text);border:1px solid var(--sev-low-border)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-shimmer{background:linear-gradient(90deg,#ffffff08 25%,#ffffff14 50%,#ffffff08 75%) 0 0/200% 100%;animation:2s linear infinite shimmer}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin;display:inline-block}.spinner{border:2px solid #ffffff40;border-top-color:#3b82f6;border-radius:50%;width:18px;height:18px;animation:.8s ease-in-out infinite spin;display:inline-block}@keyframes blink{50%{opacity:0}}.typing-cursor{vertical-align:middle;background:#3b82f6;width:8px;height:16px;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}
