:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/145% var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80}}*{box-sizing:border-box}body{margin:0}h1,h2{color:var(--text-h);font-weight:500}.auth-page{background:var(--bg);place-items:center;min-height:100svh;padding:32px 20px;display:grid}.auth-card{background:var(--code-bg);border:1px solid var(--border);text-align:center;border-radius:16px;width:min(100%,400px);padding:40px;animation:.28s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-card h2{letter-spacing:-.03em;color:var(--text-h);margin:16px 0 8px;font-size:22px}.auth-icon{background:linear-gradient(135deg, var(--accent), #2563eb);color:#fff;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;font-weight:900;line-height:1;display:inline-flex}.auth-check{background:color-mix(in srgb, var(--accent) 15%, transparent);width:48px;height:48px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-size:22px;line-height:1;display:inline-flex}.auth-message{color:var(--text);margin:0 0 24px;font-size:14px}.auth-button{background:var(--accent);color:#fff;width:100%;font-size:15px;font-family:var(--sans);cursor:pointer;border:none;border-radius:10px;padding:12px 20px;font-weight:600;transition:opacity .2s}.auth-button:disabled{opacity:.5;cursor:not-allowed}.auth-button:not(:disabled):hover{opacity:.9}.chat-app{flex-direction:column;max-width:1100px;height:100svh;margin:0 auto;display:flex}.chat-header{border-bottom:1px solid var(--border);padding:20px 24px 16px}.chat-header-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.chat-header h1{margin:0;font-size:24px}.chat-header .subtitle{color:var(--text);margin:4px 0 0;font-size:14px}.user-info{flex-shrink:0;align-items:center;gap:12px;display:flex}.tenant-name{color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:12px;padding:3px 10px;font-size:12px;font-weight:600}.user-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:13px;overflow:hidden}.logout-button{border:1px solid var(--border);color:var(--text);font-size:13px;font-family:var(--sans);cursor:pointer;background:0 0;border-radius:6px;padding:6px 14px;transition:background .2s,color .2s}.logout-button:hover{background:var(--code-bg);color:var(--text-h)}.messages{flex-direction:column;flex:1;gap:16px;padding:24px;display:flex;overflow-y:auto}.empty-state{color:var(--text);margin:auto;font-size:15px}.message{white-space:pre-wrap;word-wrap:break-word;border-radius:12px;max-width:85%;padding:12px 16px;line-height:1.5}.message.user{background:var(--accent);color:#fff;align-self:flex-end}.message.assistant{background:var(--code-bg);color:var(--text-h);align-self:flex-start}.message-label{text-transform:uppercase;letter-spacing:.5px;opacity:.7;margin-bottom:4px;font-size:11px;font-weight:600}.message-content{font-size:15px}.message.assistant .message-content{white-space:normal}.markdown-content p{margin:0 0 .75em}.markdown-content p:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{margin:1em 0 .5em;line-height:1.3}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child{margin-top:0}.markdown-content ul,.markdown-content ol{margin:.5em 0;padding-left:1.5em}.markdown-content li{margin:.25em 0}.markdown-content code{font-family:var(--mono);background:#00000014;border-radius:4px;padding:.15em .4em;font-size:.9em}.markdown-content pre{background:#0000000f;border-radius:8px;margin:.75em 0;padding:12px 14px;overflow-x:auto}.markdown-content pre code{background:0 0;padding:0;font-size:13px}.markdown-content table{border-collapse:collapse;width:100%;margin:.75em 0;font-size:14px}.markdown-content th,.markdown-content td{border:1px solid var(--border);text-align:left;padding:6px 10px}.markdown-content th{background:#0000000a;font-weight:600}.markdown-content blockquote{border-left:3px solid var(--accent);color:var(--text);margin:.75em 0;padding:.5em 1em}.markdown-content hr{border:none;border-top:1px solid var(--border);margin:1em 0}.markdown-content strong{font-weight:600}.traces{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:10px;padding-top:10px;display:flex}.traces-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text);margin-bottom:2px;font-size:10px;font-weight:600}.trace{border:1px solid var(--border);background:var(--bg);border-radius:6px;padding:8px 10px;font-size:13px}.trace-rationale{color:var(--text);font-style:italic}.trace-tool-call .tool-name{font-family:var(--mono);color:var(--accent);font-weight:600}.trace pre{font-family:var(--mono);white-space:pre-wrap;word-break:break-word;color:var(--text-h);margin:4px 0 0;font-size:12px}.trace-tool-result{color:#16a34a}.cursor{background:var(--accent);vertical-align:text-bottom;width:2px;height:1em;margin-left:2px;animation:.8s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.input-area{border-top:1px solid var(--border);gap:8px;padding:16px 24px;display:flex}.input-area input{border:1px solid var(--border);background:var(--bg);color:var(--text-h);font-size:15px;font-family:var(--sans);border-radius:8px;outline:none;flex:1;padding:10px 14px;transition:border-color .2s}.input-area input:focus{border-color:var(--accent)}.input-area input:disabled{opacity:.6}.input-area button{background:var(--accent);color:#fff;font-size:15px;font-family:var(--sans);cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-weight:500;transition:opacity .2s}.input-area button:disabled{opacity:.5;cursor:not-allowed}.input-area button:not(:disabled):hover{opacity:.9}
