:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-dark:#090d16;--bg-panel:#121a2bbf;--bg-card:#1a263f99;--bg-card-hover:#243456b3;--text-main:#f8fafc;--text-muted:#94a3b8;--text-subtle:#64748b;--accent:#3b82f6;--accent-hover:#2563eb;--accent-glow:#3b82f666;--accent-success:#10b981;--accent-warning:#f59e0b;--accent-danger:#ef4444;--border:#ffffff1a;--border-light:#ffffff2e;--radius-sm:6px;--radius-md:10px;--radius-lg:16px}*{box-sizing:border-box}body{background-color:var(--bg-dark);color:var(--text-main);background-image:radial-gradient(circle at 50% 0%, #1e3a8a40 0%, var(--bg-dark) 75%);flex-direction:column;height:100vh;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:flex;overflow:hidden}#root{width:100%;height:100%;display:flex}.app-container{width:100%;height:100%;display:flex;overflow:hidden}.sidebar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-right:1px solid var(--border);background:#0a101e8c;flex-direction:column;gap:1rem;width:280px;padding:1.25rem;display:flex;overflow-y:auto}.brand{letter-spacing:.5px;color:var(--text-main);align-items:center;gap:.6rem;font-size:1.25rem;font-weight:800;display:flex}.brand-dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 12px var(--accent);border-radius:50%}.tenant-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:.5rem;padding:.875rem;display:flex}.tenant-box label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-size:.75rem;font-weight:600}.tenant-select{width:100%;color:var(--text-main);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;background:#0f172ae6;outline:none;padding:.6rem;font-size:.875rem}.sidebar-btn{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text-main);cursor:pointer;background:#ffffff0d;align-items:center;gap:.5rem;padding:.75rem;font-size:.875rem;font-weight:600;transition:all .2s;display:flex}.sidebar-btn:hover{border-color:var(--accent);background:#ffffff1a}.sidebar-btn.primary{background:var(--accent);border-color:var(--accent);box-shadow:0 4px 14px var(--accent-glow)}.sidebar-btn.primary:hover{background:var(--accent-hover)}.chat-area{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.top-bar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a101e80;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.top-bar-badge{color:#34d399;background:#10b98126;border:1px solid #10b9814d;border-radius:9999px;align-items:center;gap:.5rem;padding:.35rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.messages{flex-direction:column;flex:1;gap:1.25rem;padding:2rem;display:flex;overflow-y:auto}.message{border-radius:var(--radius-lg);max-width:80%;padding:1rem 1.25rem;font-size:.9375rem;line-height:1.6;animation:.3s ease-out forwards slideIn}.message.user{background:var(--accent);color:#fff;box-shadow:0 4px 20px var(--accent-glow);border-bottom-right-radius:4px;align-self:flex-end}.message.ai{background:var(--bg-panel);border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom-left-radius:4px;align-self:flex-start}.input-area{background:linear-gradient(to top, var(--bg-dark) 70%, transparent);padding:1.25rem 2rem}.input-container{border:1px solid var(--border-light);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#162138e6;border-radius:28px;padding:.4rem .6rem;transition:all .2s;display:flex;box-shadow:0 8px 32px #0006}.input-container:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}input{color:#fff;background:0 0;border:none;outline:none;flex:1;padding:.75rem 1.25rem;font-size:.9375rem}input::placeholder{color:var(--text-muted)}button.send-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;transition:all .2s;display:flex}button.send-btn:hover{background:var(--accent-hover);box-shadow:0 0 16px var(--accent-glow);transform:scale(1.05)}.context-panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-left:1px solid var(--border);background:#0a101e8c;flex-direction:column;width:380px;padding:1.25rem;display:flex;overflow-y:auto}.panel-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.panel-title{text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);font-size:.8125rem;font-weight:700}.rvo-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:.6rem;margin-bottom:1rem;padding:1rem;transition:border-color .2s;display:flex}.rvo-card:hover{border-color:var(--border-light);background:var(--bg-card-hover)}.rvo-card-header{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.rvo-card h4{color:var(--text-main);margin:0;font-size:.9375rem;font-weight:600;line-height:1.3}.rvo-badges{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.badge{border-radius:var(--radius-sm);letter-spacing:.3px;align-items:center;padding:.2rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.badge-status{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f64d}.badge-cwe{color:#c084fc;background:#a855f726;border:1px solid #a855f74d}.badge-cvss-critical{color:#f87171;background:#ef444433;border:1px solid #ef444466}.badge-cvss-high{color:#fbbf24;background:#f59e0b33;border:1px solid #f59e0b66}.badge-cvss-med{color:#93c5fd;background:#3b82f633;border:1px solid #3b82f666}.badge-vex{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.card-actions{grid-template-columns:1fr 1fr;gap:.4rem;margin-top:.4rem;display:grid}.action-btn{border:1px solid var(--border);color:var(--text-main);border-radius:var(--radius-sm);cursor:pointer;background:#ffffff0d;justify-content:center;align-items:center;gap:.3rem;padding:.45rem .6rem;font-size:.75rem;font-weight:600;transition:all .15s;display:flex}.action-btn:hover{border-color:var(--border-light);background:#ffffff1f}.action-btn.approve{color:#fff;background:#059669;border-color:#10b981;grid-column:span 2}.action-btn.approve:hover{background:#10b981}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#000000bf;justify-content:center;align-items:center;padding:1.5rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-dialog{border:1px solid var(--border-light);border-radius:var(--radius-lg);background:#0d1527;flex-direction:column;width:100%;max-width:720px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 24px 48px #0009}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-header h3{margin:0;font-size:1.125rem;font-weight:700}.close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.5rem;line-height:1}.close-btn:hover{color:var(--text-main)}.modal-body{flex-direction:column;gap:1rem;padding:1.5rem;display:flex;overflow-y:auto}.modal-tabs{border-bottom:1px solid var(--border);gap:.5rem;padding-bottom:.75rem;display:flex}.modal-tab{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;padding:.5rem 1rem;font-size:.8125rem;font-weight:600}.modal-tab.active{background:var(--bg-card);color:var(--text-main);border-color:var(--border-light)}.code-view{border:1px solid var(--border);border-radius:var(--radius-sm);color:#38bdf8;white-space:pre;background:#060911;max-height:380px;padding:1rem;font-family:JetBrains Mono,monospace;font-size:.8125rem;overflow-x:auto}.audit-step{border-left:2px solid var(--accent);flex-direction:column;gap:.3rem;margin-bottom:1.25rem;padding-left:1rem;display:flex}.audit-hash{color:var(--text-subtle);word-break:break-all;font-family:monospace;font-size:.75rem}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.canvas-container{z-index:-1;pointer-events:none;background:radial-gradient(circle,#0a0f1d 0%,#030408 100%);width:100vw;height:100vh;position:fixed;top:0;left:0}
