@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;600;700;800&family=Inter:wght@400;500;600&display=swap";:root{--primary:#6366f1;--primary-glow:#6366f166;--bg-dark:#070b14;--bg-card:#0f172ab3;--text-main:#f8fafc;--text-muted:#64748b;--border:#ffffff14;--anomaly:#f43f5e;--normal:#10b981;--warning:#fbbf24;--font-title:"Outfit", sans-serif;--font-body:"Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-dark);color:var(--text-main);width:100vw;height:100vh;overflow:hidden}.bg-blobs{z-index:-1;background:radial-gradient(circle,#0f172a 0%,#070b14 100%);width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.blob{filter:blur(80px);background:linear-gradient(135deg,#6366f126 0%,#c084fc26 100%);border-radius:50%;width:400px;height:400px;animation:20s ease-in-out infinite alternate float;position:absolute}.blob-1{background-color:#6366f11a;top:-100px;right:-100px}.blob-2{background-color:#a78bfa1a;animation-delay:-5s;bottom:-150px;left:-100px}.blob-3{background-color:#4f46e50d;width:300px;height:300px;animation-delay:-10s;top:40%;left:30%}@keyframes float{0%{transform:translate(0)scale(1)}50%{transform:translate(100px,50px)scale(1.1)}to{transform:translate(-50px,100px)scale(.9)}}.glass{background:var(--bg-card);-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid var(--border);border-radius:20px}.gradient-text{font-family:var(--font-title);background:linear-gradient(135deg,#fff 0%,#94a3b8 100%);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;font-weight:800}.markdown-content h1,.markdown-content h2,.markdown-content h3{color:var(--text-main);margin:12px 0 8px;font-size:1.1rem}.markdown-content th{color:#fff;text-align:left;border-bottom:1px solid var(--border);background:#6366f133;padding:8px 12px}:root{--primary:#6366f1;--primary-dim:#6366f124;--primary-glow:#6366f159;--bg:#070b14;--bg-card:#0f172ad9;--bg-surface:#ffffff08;--text:#f1f5f9;--muted:#64748b;--border:#ffffff12;--border-strong:#ffffff21;--critical:#ef4444;--warning:#f59e0b;--normal:#10b981;--nodata:#fff;--font-h:"Outfit", sans-serif;--font-b:"Inter", sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-b);background:var(--bg);color:var(--text);width:100vw;height:100vh;overflow:hidden}h1,h2,h3{font-family:var(--font-h)}.bg-blobs{z-index:0;pointer-events:none;background:radial-gradient(circle,#0f172a 0%,#070b14 100%);position:fixed;inset:0;overflow:hidden}.blob{filter:blur(90px);opacity:.18;border-radius:50%;animation:22s ease-in-out infinite alternate drift;position:absolute}.blob-1{background:#6366f1;width:480px;height:480px;animation-delay:0s;top:-120px;right:-80px}.blob-2{background:#8b5cf6;width:380px;height:380px;animation-delay:-7s;bottom:-140px;left:-60px}.blob-3{background:#4f46e5;width:300px;height:300px;animation-delay:-14s;top:40%;left:30%}@keyframes drift{0%{transform:translate(0)scale(1)}50%{transform:translate(60px,40px)scale(1.12)}to{transform:translate(-40px,80px)scale(.9)}}.app-shell{z-index:1;border:1px solid var(--border-strong);border-radius:24px;max-width:1400px;height:90vh;margin:5vh auto auto;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000080}.foreman-sidebar{border-right:1px solid var(--border-strong);-webkit-backdrop-filter:blur(24px);background:#070b14bf;flex-direction:column;width:260px;min-width:260px;display:flex;overflow-y:auto}.foreman-sidebar::-webkit-scrollbar{width:3px}.foreman-sidebar::-webkit-scrollbar-thumb{background:#ffffff0f;border-radius:4px}.sb-brand{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:22px 20px 18px;display:flex}.sb-logo{width:40px;height:40px;box-shadow:0 4px 16px var(--primary-glow);background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 100%);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sb-title{font-family:var(--font-h);color:#fff;font-size:15px;font-weight:700}.sb-online{color:var(--normal);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:5px;margin-top:3px;font-size:10px;font-weight:600;display:flex}.dot-pulse{background:var(--normal);border-radius:50%;width:6px;height:6px;animation:2s infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.75)}}.sb-section{padding:18px 20px 6px}.sb-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:9px;font-weight:600}.sb-divider{background:var(--border);height:1px;margin:6px 20px}.net-item{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:6px;padding:8px 10px;display:flex}.net-left{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.pill{letter-spacing:.06em;text-transform:uppercase;border-radius:20px;align-items:center;gap:4px;padding:3px 8px;font-size:9px;font-weight:700;display:inline-flex}.pill-green{color:var(--normal);background:#10b98124;border:1px solid #10b98140}.pill-yellow{color:var(--warning);background:#f59e0b24;border:1px solid #f59e0b40}.pill-red{color:var(--critical);background:#ef444424;border:1px solid #ef444440}.pill-white{color:var(--nodata);background:#ffffff1a;border:1px solid #fff3}.pill-active{color:#a5b4fc;letter-spacing:.07em;text-transform:uppercase;text-align:center;white-space:normal;background:#4f46e559;border:1px solid #6366f173;border-radius:20px;flex-shrink:0;max-width:72px;padding:4px 10px;font-size:9px;font-weight:700;line-height:1.4}.node-card{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:14px;flex-direction:column;gap:6px;margin-bottom:8px;padding:14px 16px;transition:border-color .2s;display:flex}.node-card:hover{border-color:#6366f166}.nc-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.nc-name{color:#fff;letter-spacing:.01em;align-items:center;gap:10px;font-size:13px;font-weight:700;display:flex}.nc-name svg{color:#94a3b8;flex-shrink:0}.nc-sub{color:var(--muted);padding-left:24px;font-size:10px;line-height:1.5}.text-nodata{color:#fff;font-weight:600}.text-warning{color:var(--warning)}.text-critical{color:var(--critical)}.text-nodata{color:var(--nodata)}.alert-item{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:10px;margin-bottom:6px;padding:9px 10px;display:flex}.alert-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.alert-icon.anomaly{color:var(--anomaly);background:#f43f5e26}.alert-icon.normal{color:var(--normal);background:#10b98126}.alert-meta{flex-direction:column;flex:1;gap:1px;display:flex}.alert-name{color:var(--text);font-size:11px;font-weight:600}.alert-time{color:var(--muted);font-size:10px}.foreman-chat{z-index:1;background:0 0;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.chat-topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#070b1499;align-items:center;gap:12px;padding:16px 28px;display:flex}.topbar-avatar{color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 0 0 1px #6366f173}.topbar-meta{flex:1}.topbar-title{font-family:var(--font-h);color:#fff;font-size:14px;font-weight:700}.topbar-sub{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:600}.topbar-status{color:var(--muted);background:var(--bg-surface);border:1px solid var(--border);border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:11px;display:flex}.chat-messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:16px;padding:24px 28px;display:flex;overflow-y:auto}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:4px}.guide-card{background:#6366f10f;border:1px solid #6366f12e;border-radius:16px;align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.guide-icon{width:38px;height:38px;color:var(--primary);background:#6366f11f;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.guide-title{font-family:var(--font-h);color:#fff;margin-bottom:4px;font-size:13px;font-weight:700}.guide-desc{color:var(--muted);font-size:11px;line-height:1.6}.guide-list{flex-direction:column;gap:4px;margin-top:8px;list-style:none;display:flex}.guide-list li{color:var(--muted);align-items:flex-start;gap:6px;font-size:11px;display:flex}.guide-list li:before{content:"›";color:var(--primary);flex-shrink:0;font-weight:700}.guide-list strong{color:#ffffffbf;font-weight:600}.msg-row{align-items:flex-start;gap:10px;display:flex}.msg-row.user{flex-direction:row-reverse}.bubble-avatar{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.bubble-avatar.ai{color:#818cf8;background:#6366f12e;border:1px solid #6366f14d}.bubble-avatar.user{border:1px solid var(--border);color:var(--muted);background:#ffffff0f}.bubble{max-width:74%;color:var(--text);border-radius:14px;padding:12px 16px;font-size:13px;line-height:1.65}.bubble.ai{border:1px solid var(--border-strong);background:#ffffff0a;border-bottom-left-radius:4px}.bubble.user{color:#fff;box-shadow:0 4px 18px var(--primary-glow);background:linear-gradient(135deg,#4f46e5 0%,#6366f1 100%);border-bottom-right-radius:4px}.result-cards{flex-direction:column;gap:8px;margin-top:10px;display:flex}.result-card{border-radius:10px;padding:10px 12px}.result-card.status-critical{border:1px solid #ef444433;border-left:3px solid var(--critical);background:#ef44440f}.result-card.status-warning{border:1px solid #f59e0b33;border-left:3px solid var(--warning);background:#f59e0b0f}.result-card.status-normal{border:1px solid #10b98133;border-left:3px solid var(--normal);background:#10b9810f}.result-card.status-nodata{border:1px solid #ffffff26;border-left:3px solid var(--nodata);background:#ffffff0d}.rc-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.rc-name{color:#fff;font-size:12px;font-weight:700}.rc-pill{letter-spacing:.05em;text-transform:uppercase;border-radius:20px;align-items:center;gap:4px;padding:3px 8px;font-size:9px;font-weight:700;display:inline-flex}.rc-metrics{color:var(--muted);gap:12px;font-size:11px;display:flex}.rc-metrics strong{color:#ffffffb3}.insight-block{border-left:2px solid var(--primary);color:var(--muted);background:#6366f112;border-radius:0 8px 8px 0;margin-top:10px;padding:10px 12px;font-size:12px;line-height:1.6}.insight-label{letter-spacing:.1em;text-transform:uppercase;color:#818cf8;margin-bottom:4px;font-size:9px;font-weight:700;display:inline-block}.typing-row{align-items:center;gap:10px;display:flex}.typing-dots{border:1px solid var(--border);background:#ffffff0a;border-radius:12px 12px 12px 3px;gap:4px;padding:10px 14px;display:flex}.typing-dots span{background:#6366f18c;border-radius:50%;width:6px;height:6px;animation:1.3s infinite bounce-dot}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes bounce-dot{0%,60%,to{transform:translateY(0)}30%{background:var(--primary);transform:translateY(-5px)}}.chat-statusbar{border-top:1px solid var(--border);color:var(--muted);background:#070b1480;align-items:center;gap:8px;padding:7px 28px;font-size:10px;display:flex}.statusbar-dot{background:var(--normal);border-radius:50%;flex-shrink:0;width:5px;height:5px}.chat-input-area{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--border);background:#070b14a6;padding:16px 28px 22px}.input-form{border:1px solid var(--border-strong);background:#ffffff0a;border-radius:16px;align-items:center;gap:10px;padding:6px 6px 6px 18px;transition:border-color .2s,box-shadow .2s;display:flex}.input-form:focus-within{border-color:#6366f180;box-shadow:0 0 0 3px #6366f11a}.input-field{color:var(--text);font-size:13px;font-family:var(--font-b);background:0 0;border:none;outline:none;flex:1}.input-field::placeholder{color:var(--muted)}.send-btn{cursor:pointer;color:#fff;width:36px;height:36px;box-shadow:0 2px 12px var(--primary-glow);background:linear-gradient(135deg,#4f46e5,#6366f1);border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .15s,box-shadow .15s;display:flex}.send-btn:hover{box-shadow:0 4px 18px var(--primary-glow);transform:scale(1.08)}.send-btn:active{transform:scale(.95)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.orchestration-log{background:#6366f10d;border:1px solid #6366f126;border-radius:12px;margin:12px 0;padding:10px 14px}.orch-title{text-transform:uppercase;letter-spacing:.1em;color:var(--primary);align-items:center;gap:6px;margin-bottom:8px;font-size:10px;font-weight:700;display:flex}.orch-list{flex-direction:column;gap:6px;list-style:none;display:flex}.orch-item{color:var(--muted);align-items:center;gap:8px;font-size:11px;line-height:1.4;display:flex}.orch-dot{background:var(--primary);opacity:.6;border-radius:50%;flex-shrink:0;width:4px;height:4px}.markdown-content p{margin-bottom:8px;line-height:1.6}.markdown-content p:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3{font-family:var(--font-h);color:#fff;margin:12px 0 6px;font-size:1rem}.markdown-content strong{color:#ffffffe6}.markdown-content table{border-collapse:collapse;background:#ffffff05;border-radius:8px;width:100%;margin:10px 0;font-size:12px;overflow:hidden}.markdown-content th{color:#fff;text-align:left;border-bottom:1px solid var(--border);background:#6366f12e;padding:8px 12px;font-weight:600}.markdown-content td{border-bottom:1px solid var(--border);color:#94a3b8;padding:8px 12px}.markdown-content tr:last-child td{border-bottom:none}.markdown-content ul,.markdown-content ol{margin-bottom:8px;padding-left:1.4rem}.markdown-content li{margin-bottom:4px}.markdown-content code{color:#a5b4fc;background:#6366f126;border-radius:4px;padding:1px 5px;font-family:Fira Code,monospace;font-size:11px}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff26}
