.chat-panel{display:flex;flex-direction:column;height:100%;background:var(--bg);color:var(--fg);font-size:14px}.chat-actions{display:flex;gap:4px;padding:6px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.chat-action-btn{background:none;border:1px solid var(--border);border-radius:4px;padding:4px 8px;font-size:14px;cursor:pointer;opacity:.6;transition:opacity .15s}.chat-action-btn:hover{opacity:1;background:var(--card)}.chat-context{font-size:11px;background:var(--card);border:1px solid var(--card-border);padding:2px 8px;border-radius:10px;font-weight:400;color:var(--fg-muted);align-self:center;margin-left:4px}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:8px;color:var(--fg-muted)}.chat-msg{max-width:90%}.chat-msg-user{align-self:flex-end}.chat-msg-assistant{align-self:flex-start}.chat-msg-content{padding:8px 12px;border-radius:8px;line-height:1.5}.chat-msg-user .chat-msg-content{background:var(--msg-user);color:#fff}.chat-msg-assistant .chat-msg-content{background:var(--msg-assistant-bg);border:1px solid var(--msg-assistant-border)}.chat-msg-content h1,.chat-msg-content h2,.chat-msg-content h3{margin:8px 0 4px;font-size:1em;font-weight:600}.chat-msg-content .md-li{padding-left:8px}.chat-msg-content .md-code{background:var(--code-bg);padding:1px 4px;border-radius:3px;font-size:.85em;font-family:JetBrains Mono,monospace}.chat-msg-content .md-code-block{background:var(--code-bg);padding:8px;border-radius:4px;font-size:.85em;font-family:JetBrains Mono,monospace;overflow-x:auto;margin:4px 0;white-space:pre-wrap}.chat-msg-content strong{font-weight:600}.chat-tools{display:flex;flex-wrap:wrap;gap:6px;padding:0 4px}.chat-tool-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:3px 8px;border-radius:12px;background:var(--card);border:1px solid var(--card-border);color:var(--fg-muted)}.tool-done{color:#22c55e}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.expert-selector{padding:0 16px 8px;flex-shrink:0}.expert-selector select{width:100%;padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--input-bg);color:var(--fg);font-size:12px;cursor:pointer}.expert-selector select:focus{outline:none;border-color:#2563eb}.anon-toggle{padding:0 16px 8px;flex-shrink:0}.anon-toggle label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;color:var(--fg-muted)}.anon-toggle input[type=checkbox]{accent-color:#2563eb}.anon-label{-webkit-user-select:none;user-select:none}.chat-input-area{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--border);flex-shrink:0}.chat-input-area textarea{flex:1;resize:none;border:1px solid var(--input-border);border-radius:8px;padding:8px 12px;background:var(--input-bg);color:var(--fg);font-size:14px;font-family:inherit;line-height:1.4}.chat-input-area textarea:focus{outline:none;border-color:#2563eb}.chat-input-area button{padding:8px 12px;border:none;border-radius:8px;background:#2563eb;color:#fff;cursor:pointer;display:flex;align-items:center}.chat-input-area button:disabled{opacity:.4;cursor:not-allowed}.chat-input-area button:hover:not(:disabled){background:#1d4ed8}.chat-footer{padding:4px 16px 8px;text-align:center;font-size:10px;color:var(--fg-muted)}.code-block-wrapper{position:relative;margin:4px 0}.code-copy-btn{position:absolute;top:6px;right:6px;background:var(--card);border:none;color:var(--fg-muted);padding:4px;border-radius:4px;cursor:pointer;opacity:0;transition:opacity .15s;display:flex;align-items:center}.code-block-wrapper:hover .code-copy-btn{opacity:1}.code-copy-btn:hover{background:var(--card-border);color:var(--fg)}.mermaid-container{background:var(--card);border:1px solid var(--card-border);border-radius:6px;padding:12px;margin:8px 0;overflow-x:auto}.mermaid-container svg{max-width:100%;height:auto}.mermaid-error{background:#3b1111;border:1px solid #662222;border-radius:6px;padding:8px 12px;margin:8px 0;font-size:12px;color:#f88}.mermaid-error span{font-weight:600}.md-table{border-collapse:collapse;margin:8px 0;font-size:13px;width:100%}.md-table th,.md-table td{border:1px solid var(--border);padding:4px 8px}.md-table th{background:var(--card);font-weight:600}.md-table tr:nth-child(2n){background:#8080800d}.chat-msg-time{display:block;font-size:10px;color:var(--fg-muted);margin-top:4px}.chat-msg-content p{margin:4px 0}.chat-msg-content ul,.chat-msg-content ol{padding-left:16px;margin:4px 0}.chat-msg-content li{margin:2px 0}.chat-msg-content blockquote{border-left:3px solid var(--border);padding-left:10px;color:var(--fg-muted);margin:8px 0}.chat-msg-content h1,.chat-msg-content h2,.chat-msg-content h3{margin:12px 0 4px}.chat-msg-content a{color:#60a5fa;text-decoration:underline}.chat-msg-content hr{border:none;border-top:1px solid var(--border);margin:8px 0}.chat-msg-content pre{background:var(--code-bg);padding:10px;border-radius:6px;overflow-x:auto;margin:4px 0;font-size:13px}.chat-msg-content code{font-family:JetBrains Mono,Fira Code,monospace}.chat-msg-content img{max-width:100%;border-radius:6px;margin:8px 0}.chat-history-panel{border-bottom:1px solid var(--border);max-height:40vh;overflow-y:auto;background:var(--bg-secondary)}.chat-history-empty{padding:16px;text-align:center;color:var(--fg-muted);font-size:13px}.chat-history-item{display:flex;align-items:center;padding:8px 16px;border-bottom:1px solid var(--border);cursor:pointer}.chat-history-item:hover{background:var(--card)}.chat-history-item.active{background:var(--card);border-left:3px solid #2563eb}.chat-history-info{flex:1;min-width:0}.chat-history-name{display:block;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--fg)}.chat-history-meta{display:block;font-size:11px;color:var(--fg-muted);margin-top:2px}.chat-history-delete{background:none;border:none;color:var(--fg-muted);font-size:18px;cursor:pointer;padding:0 4px;flex-shrink:0}.chat-history-delete:hover{color:#f44}:root{--bg: #f8f9fb;--bg-secondary: #f0f2f5;--fg: #1a1a2e;--fg-muted: #6b7280;--border: #e5e7eb;--card: #ffffff;--card-border: #e5e7eb;--input-bg: #ffffff;--input-border: #d1d5db;--msg-user: #2563eb;--msg-assistant-bg: #f3f4f6;--msg-assistant-border: #e5e7eb;--code-bg: #f6f8fa;--topbar-bg: #1A2F3F;--topbar-accent: #FCD55B}.dark{--bg: #111827;--bg-secondary: #1a1a2e;--fg: #f0f2f5;--fg-muted: #9ca3af;--border: #374151;--card: #1f2937;--card-border: #374151;--input-bg: #1f2937;--input-border: #4b5563;--msg-user: #2563eb;--msg-assistant-bg: #1f2937;--msg-assistant-border: #374151;--code-bg: #111827}body{background:var(--bg);color:var(--fg)}.app{display:flex;flex-direction:column;height:100vh}.app.embed-mode .app-content{height:100vh}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--fg-muted);font-family:Roboto,sans-serif;font-size:14px}.top-bar{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 20px;background:var(--topbar-bg);border-bottom:2px solid var(--topbar-accent);flex-shrink:0;z-index:100}.top-bar-brand{display:flex;align-items:baseline;gap:8px}.em-brand{font-family:Roboto,sans-serif;font-size:18px;color:#fff;letter-spacing:.05em}.em-brand strong{font-weight:900;font-style:italic}.em-brand em{font-weight:300;font-style:italic}.em-appname{font-family:Roboto,sans-serif;font-size:14px;font-weight:300;color:var(--topbar-accent);letter-spacing:.15em}.top-bar-controls{display:flex;align-items:center;gap:12px}.top-bar-btn{background:none;border:none;font-size:16px;cursor:pointer;padding:4px 8px;border-radius:4px;opacity:.7;transition:opacity .15s}.top-bar-btn:hover{opacity:1}.tenant-pill-wrapper{position:relative}.tenant-pill{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:#fcd55b;font-size:.78rem;cursor:pointer;padding:3px 4px;white-space:nowrap;transition:opacity .15s}.tenant-pill:hover{opacity:.8}.tenant-pill-caret{font-size:.6rem;opacity:.6}.tenant-dropdown{position:absolute;right:0;top:calc(100% + 6px);min-width:180px;background:#1a2f3f;border:1px solid rgba(252,213,91,.25);border-radius:8px;padding:6px 0;box-shadow:0 8px 32px #00000080;z-index:1300}.tenant-option{display:block;width:100%;padding:7px 14px;border:none;background:transparent;color:#ffffffb3;font-size:.82rem;cursor:pointer;text-align:left;transition:color .15s,background .15s}.tenant-option:hover{color:#fff;background:#ffffff14}.tenant-option.active{color:#fcd55b;font-weight:700;cursor:default}.user-menu-wrapper{position:relative}.user-menu-trigger{background:none;border:none;color:#ffffffb3;font-size:13px;font-family:Roboto,sans-serif;cursor:pointer;padding:4px 8px;border-radius:4px;transition:color .15s}.user-menu-trigger:hover{color:#fff}.caret{font-size:10px;opacity:.5;margin-left:4px}.menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999}.user-menu-dropdown{position:absolute;right:0;top:calc(100% + 8px);z-index:10000;min-width:220px;max-width:280px;padding:16px;background:var(--card);border:1px solid var(--card-border);border-radius:8px;box-shadow:0 8px 24px #0000004d;text-align:left}.user-menu-name{font-weight:600;font-size:14px;color:var(--fg)}.user-menu-email{font-size:12px;color:var(--fg-muted);margin-top:2px}.user-menu-role{font-size:12px;color:var(--fg-muted);margin-top:4px;text-transform:capitalize}.user-menu-divider{height:1px;background:var(--border);margin:12px 0}.user-menu-section-label{font-size:10px;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}.user-menu-tenant{font-size:13px;color:var(--fg-muted);padding:4px 0;background:none;border:none;font-family:inherit;cursor:pointer;text-align:left;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;display:flex;align-items:center;gap:6px}.user-menu-tenant:hover{color:var(--topbar-accent)}.user-menu-tenant.active{color:var(--fg);font-weight:700}.tenant-check{color:var(--topbar-accent);font-size:12px}.user-menu-logout{background:none;border:none;color:#ef4444;font-size:13px;font-weight:500;cursor:pointer;padding:0;font-family:inherit}.user-menu-logout:hover{text-decoration:underline}.app-content{flex:1;overflow:hidden}
