@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap");:root{--bg-primary:#090d16;--bg-secondary:#0f172a;--bg-card:rgba(17,24,39,.75);--bg-card-hover:rgba(30,41,59,.85);--bg-input:#1e293b;--border-subtle:hsla(0,0%,100%,.08);--border-glow:rgba(59,130,246,.35);--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--accent-blue:#3b82f6;--accent-cyan:#06b6d4;--accent-indigo:#6366f1;--status-success:#10b981;--status-success-bg:rgba(16,185,129,.12);--status-success-border:rgba(16,185,129,.3);--status-failed:#ef4444;--status-failed-bg:rgba(239,68,68,.14);--status-failed-border:rgba(239,68,68,.35);--status-running:#0ea5e9;--status-running-bg:rgba(14,165,233,.15);--status-running-border:rgba(14,165,233,.35);--status-no-analysis:#94a3b8;--status-no-analysis-bg:rgba(148,163,184,.12);--status-no-analysis-border:rgba(148,163,184,.25);--font-sans:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono",monospace;--shadow-card:0 8px 32px 0 rgba(0,0,0,.37);--shadow-glow-red:0 0 25px rgba(239,68,68,.2);--shadow-glow-green:0 0 25px rgba(16,185,129,.2);--shadow-glow-blue:0 0 25px rgba(59,130,246,.2)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5;background-image:radial-gradient(at 10% 10%,rgba(59,130,246,.08) 0,transparent 50%),radial-gradient(at 90% 90%,rgba(139,92,246,.07) 0,transparent 50%),radial-gradient(at 50% 50%,rgba(16,185,129,.04) 0,transparent 60%);background-attachment:fixed;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#334155;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#475569}code,pre{font-family:var(--font-mono)}.glass-panel{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:var(--shadow-card)}.pulsing-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--status-running);animation:pulseAnimation 1.8s infinite}@keyframes pulseAnimation{0%{transform:scale(.95);box-shadow:0 0 0 0 rgba(14,165,233,.7)}70%{transform:scale(1.1);box-shadow:0 0 0 7px rgba(14,165,233,0)}to{transform:scale(.95);box-shadow:0 0 0 0 rgba(14,165,233,0)}}