@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg-primary: #0d0f10;--bg-secondary: #141618;--bg-card: rgba(22, 24, 26, .8);--bg-card-hover: rgba(28, 31, 33, .9);--border-color: rgba(255, 255, 255, .07);--border-hover: rgba(255, 159, 67, .3);--border-glow: rgba(245, 124, 0, .35);--text-primary: #e4e6ea;--text-secondary: #7c8490;--text-muted: #4a5060;--accent-orange: #ff9f43;--accent-orange-dim: rgba(255, 159, 67, .15);--accent-orange-glow: rgba(255, 159, 67, .08);--accent-red: #ff4757;--accent-red-dim: rgba(255, 71, 87, .12);--accent-green: #2ed573;--accent-green-dim: rgba(46, 213, 115, .12);--accent-blue: #54a0ff;--accent-blue-dim: rgba(84, 160, 255, .12);--accent-purple: #a29bfe;--glass-shadow: 0 8px 32px rgba(0, 0, 0, .6), 0 2px 8px rgba(0, 0, 0, .4);--card-shadow: 0 4px 24px rgba(0, 0, 0, .5), 0 1px 4px rgba(0, 0, 0, .3);--glow-shadow: 0 0 20px rgba(255, 159, 67, .15), 0 4px 24px rgba(0, 0, 0, .5);--transition-smooth: all .25s cubic-bezier(.4, 0, .2, 1);--transition-spring: all .35s cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);background-image:radial-gradient(ellipse at 20% 10%,rgba(255,159,67,.03) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(84,160,255,.02) 0%,transparent 50%);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden;min-height:100vh;font-size:14px;line-height:1.5}h1,h2,h3,h4{font-family:Outfit,sans-serif;font-weight:700;letter-spacing:-.025em}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#ff9f434d}.gradient-border{position:relative;background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:var(--card-shadow);transition:var(--transition-smooth)}.gradient-border:hover{border-color:var(--border-hover);box-shadow:var(--glow-shadow);transform:translateY(-1px)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:9999px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.badge-low{background:var(--accent-green-dim);color:var(--accent-green);border:1px solid rgba(46,213,115,.25)}.badge-medium{background:var(--accent-orange-dim);color:var(--accent-orange);border:1px solid rgba(255,159,67,.25)}.badge-high{background:var(--accent-red-dim);color:var(--accent-red);border:1px solid rgba(255,71,87,.25)}.badge-success{background:var(--accent-green-dim);color:var(--accent-green);border:1px solid rgba(46,213,115,.25)}.badge-blocked{background:var(--accent-red-dim);color:var(--accent-red);border:1px solid rgba(255,71,87,.25)}.badge-failed{background:#ff475714;color:#ff6b81;border:1px solid rgba(255,71,87,.2)}.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-green);position:relative;flex-shrink:0}.pulse-dot:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;background:var(--accent-green);opacity:.4;animation:pulse-ring 2s ease-out infinite}@keyframes pulse-ring{0%{transform:scale(1);opacity:.4}70%{transform:scale(2.2);opacity:0}to{transform:scale(2.2);opacity:0}}.risk-bar-track{height:4px;background:#ffffff0f;border-radius:99px;overflow:hidden}.risk-bar-fill{height:100%;border-radius:99px;transition:width 1s cubic-bezier(.4,0,.2,1);animation:bar-shimmer 2s ease infinite;background-size:200% 100%}.risk-bar-low{background:linear-gradient(90deg,var(--accent-green) 0%,#7bed9f 100%)}.risk-bar-medium{background:linear-gradient(90deg,var(--accent-orange) 0%,#ffd32a 100%)}.risk-bar-high{background:linear-gradient(90deg,var(--accent-red) 0%,#ff6b81 100%)}@keyframes bar-shimmer{0%{opacity:.8}50%{opacity:1}to{opacity:.8}}.glow-text{text-shadow:0 0 20px rgba(255,159,67,.5),0 0 40px rgba(255,159,67,.2)}.log-table{width:100%;border-collapse:collapse;font-size:.82rem}.log-table th{text-align:left;padding:10px 14px;color:var(--text-muted);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border-color);position:sticky;top:0;background:var(--bg-secondary);z-index:1}.log-table td{padding:9px 14px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:.78rem;white-space:nowrap}.log-table tr:hover td{background:#ffffff06}.log-table .ts-cell{color:var(--text-muted);font-size:.72rem}.terminal-output{font-family:JetBrains Mono,Courier New,monospace;font-size:.8rem;line-height:1.7;color:#c8d0e0;white-space:pre-wrap;word-break:break-word}.terminal-output .line-success{color:var(--accent-green)}.terminal-output .line-error{color:var(--accent-red)}.terminal-output .line-warn{color:var(--accent-orange)}.terminal-output .line-dim{color:var(--text-muted)}.btn-primary{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;border:none;background:linear-gradient(135deg,var(--accent-orange),#e67e22);color:#fff;box-shadow:0 2px 12px #ff9f434d;transition:var(--transition-smooth)}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 20px #ff9f4373}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:8px;font-size:.82rem;font-weight:500;cursor:pointer;background:#ffffff0a;border:1px solid var(--border-color);color:var(--text-secondary);transition:var(--transition-smooth)}.btn-ghost:hover{background:#ffffff12;border-color:var(--border-hover);color:var(--text-primary)}.subtab-btn{position:relative;background:none;border:none;cursor:pointer;padding:8px 4px;color:var(--text-secondary);font-size:.82rem;font-weight:500;transition:color .2s;white-space:nowrap}.subtab-btn:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;border-radius:99px;background:var(--accent-orange);transform:scaleX(0);transition:transform .25s cubic-bezier(.4,0,.2,1)}.subtab-btn.active{color:var(--accent-orange)}.subtab-btn.active:after{transform:scaleX(1)}.subtab-btn:hover:not(.active){color:var(--text-primary)}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .3s ease forwards}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14,#ffffff0a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.connector-line-success{stroke:var(--accent-green);stroke-dasharray:8 6;animation:dash-forward .8s linear infinite}.connector-line-blocked{stroke:var(--accent-red);stroke-dasharray:8 6;animation:dash-forward 1.6s linear infinite}.connector-line-failed{stroke:var(--accent-red);stroke-dasharray:8 6;animation:dash-forward 1.2s linear infinite}@keyframes dash-forward{to{stroke-dashoffset:-28}}.radar-pulse{position:relative}.radar-pulse:after{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px;border-radius:50%;border:2px solid var(--accent-red);opacity:0;animation:radar-glowing 2s cubic-bezier(.16,1,.3,1) infinite}@keyframes radar-glowing{0%{transform:scale(.8);opacity:.5}to{transform:scale(1.8);opacity:0}}.node-cascade{animation:cascade-in .4s cubic-bezier(.34,1.56,.64,1) forwards;opacity:0;transform:scale(.85) translateY(10px)}@keyframes cascade-in{to{opacity:1;transform:scale(1) translateY(0)}}.modal-backdrop{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#08090acc;animation:backdrop-fade .25s ease-out}@keyframes backdrop-fade{0%{opacity:0}to{opacity:1}}
