:root{--text:#566072;--text-h:#0f1b2d;--bg:#fff;--bg-subtle:#f5f7fa;--surface:#fff;--border:#e2e6ec;--code-bg:#eef1f5;--accent:#1f7ae0;--accent-hover:#185fb3;--accent-text:#fff;--accent-bg:#1f7ae014;--accent-border:#1f7ae059;--social-bg:#eef1f5b3;--success:#1a8754;--success-bg:#1a87541a;--danger:#c0392b;--danger-bg:#fdecea;--danger-border:#c0392b40;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--shadow-sm:#0000000f 0 1px 3px 0, #0000000a 0 1px 2px -1px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-pill:999px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg-subtle);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:15px}}@media (prefers-color-scheme:dark){:root{--text:#93a8c2;--text-h:#eef4fb;--bg:#0a1830;--bg-subtle:#050d1c;--surface:#0f2038;--border:#1c3350;--code-bg:#0d1c33;--accent:#4de0f5;--accent-hover:#7aeaff;--accent-text:#06202f;--accent-bg:#4de0f51f;--accent-border:#4de0f566;--social-bg:#1c335080;--success:#4ade80;--success-bg:#4ade801f;--danger:#f87171;--danger-bg:#f871711f;--danger-border:#f871714d;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px;--shadow-sm:#0000004d 0 1px 3px 0, #0003 0 1px 2px -1px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;background:var(--bg);flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}*,:before,:after{box-sizing:border-box}button{font:inherit;letter-spacing:inherit;cursor:pointer;color:inherit;background:0 0;border:none}button:disabled{cursor:not-allowed}textarea,input{font:inherit;letter-spacing:inherit;color:inherit}.btn{border-radius:var(--radius-pill);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:9px 18px;font-size:.9em;font-weight:600;transition:background-color .15s,border-color .15s,transform .1s,opacity .15s;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.5}.btn-primary{background:var(--accent);color:var(--accent-text)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--surface);color:var(--text-h);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){border-color:var(--accent-border);color:var(--accent)}.btn-ghost{color:var(--text);background:0 0;border:1px solid #0000}.btn-ghost:hover:not(:disabled){background:var(--social-bg);color:var(--text-h)}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.splash{flex-direction:column;justify-content:center;align-items:center;gap:16px;height:100svh;padding:24px;display:flex}.splash-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.splash-error{color:var(--danger);font-weight:500}.splash-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-direction:column;align-items:center;gap:14px;width:100%;max-width:360px;padding:48px 40px;display:flex}.splash-card h1{margin:0}.splash-subtitle{text-transform:uppercase;letter-spacing:.8px;color:var(--accent);margin:-4px 0 4px;font-size:11px;font-weight:700}.splash-tagline{color:var(--text);margin-bottom:6px;font-size:.95em}.splash-login{width:100%;padding:11px 18px}.brand-mark{border-radius:var(--radius-md);object-fit:cover;width:48px;height:48px;box-shadow:var(--shadow-sm);flex-shrink:0}.app{background:var(--bg);flex-direction:column;height:100svh;display:flex}.app-header{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand .brand-mark{border-radius:var(--radius-sm);width:34px;height:34px}.brand-text{flex-direction:column;align-items:flex-start;gap:0;display:flex}.brand-tagline{text-transform:uppercase;letter-spacing:.6px;color:var(--text);opacity:.75;margin-top:-2px;font-size:10px;font-weight:600}.app-header h1{letter-spacing:-.3px;margin:0;font-size:19px}.user-bar{align-items:center;gap:12px;display:flex}.user-email{color:var(--text);font-size:.85em}.avatar{width:30px;height:30px;color:var(--accent-text);background:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}main{flex:1;justify-content:center;display:flex;overflow:hidden}.main-column{flex-direction:column;width:100%;max-width:820px;display:flex;overflow:hidden}.microsoft-connection{border-bottom:1px solid var(--border);background:var(--bg-subtle);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 20px;display:flex}.microsoft-connection-label{text-transform:uppercase;letter-spacing:.6px;color:var(--text);margin-right:2px;font-size:.78em;font-weight:700}.microsoft-connection .btn{padding:6px 14px;font-size:.82em}.connection-message{color:var(--text);margin:0;font-size:.85em}.connection-snippet{width:100%;color:var(--text);text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);margin:0;padding:8px 10px;font-size:.85em}.chat-view{flex-direction:column;flex:1;gap:12px;width:100%;padding:20px 20px 16px;display:flex;overflow:hidden}.empty-state{color:var(--text);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;display:flex}.empty-state-mark{border-radius:var(--radius-lg);object-fit:cover;width:56px;height:56px;box-shadow:var(--shadow-sm);opacity:.9}.message-list{flex-direction:column;flex:1;gap:18px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.message-row{align-items:flex-start;gap:10px;max-width:85%;display:flex}.message-row-user{flex-direction:row-reverse;align-self:flex-end}.message-row-assistant{align-self:flex-start}.message-avatar{border-radius:50%;flex-shrink:0;width:28px;height:28px;margin-top:2px}img.message-avatar{object-fit:cover}div.message-avatar{justify-content:center;align-items:center;font-size:10px;font-weight:700;display:flex}.message-row-user .message-avatar{color:var(--text-h);background:var(--social-bg);border:1px solid var(--border)}.message{border-radius:var(--radius-md);text-align:left;padding:10px 14px}.message-content{white-space:pre-wrap;word-break:break-word;line-height:1.5}.message-user{background:var(--accent);color:var(--accent-text);border-bottom-right-radius:4px}.message-assistant{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-bottom-left-radius:4px}.thinking{gap:4px;padding:4px 0;display:inline-flex}.thinking-dot{opacity:.35;background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.1s ease-in-out infinite thinking-pulse}.thinking-dot:nth-child(2){animation-delay:.15s}.thinking-dot:nth-child(3){animation-delay:.3s}@keyframes thinking-pulse{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:.9;transform:translateY(-2px)}}.citation-panel{flex-direction:column;gap:6px;margin:10px 0 0;padding:0;font-size:.82em;list-style:none;display:flex}.citation{border-radius:var(--radius-sm);background:var(--bg-subtle);border:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 10px;display:flex}.citation-system{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.4px;background:var(--social-bg);color:var(--text);border:1px solid var(--border);flex-shrink:0;padding:2px 9px;font-size:.78em;font-weight:700}.citation-system-sharepoint{color:#037841;background:#0378411f;border-color:#0378414d}.citation-system-onedrive{color:#0078d4;background:#0078d41f;border-color:#0078d44d}.citation-system-servicenow{color:#0a5a2e;background:#0a5a2e1f;border-color:#0a5a2e4d}.citation-system-salesforce{color:#d85a33;background:#e6663d1f;border-color:#e6663d59}.citation-system-internal{background:var(--social-bg);color:var(--text)}.citation-title{color:var(--text-h);font-weight:600}.citation-source{color:var(--text);opacity:.8;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.usage-footer{color:var(--text);opacity:.6;cursor:default;margin:8px 0 0;font-size:.76em}.message-input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:flex-end;gap:8px;padding:8px 8px 8px 16px;display:flex}.message-input:focus-within{border-color:var(--accent-border)}.message-input textarea{resize:none;background:0 0;border:none;flex:1;max-height:160px;padding:8px 0;line-height:1.4}.message-input textarea:focus{outline:none}.send-button{border-radius:50%;flex-shrink:0;width:36px;height:36px;padding:0}.architecture-view{flex:1;padding:24px 32px 48px;overflow-y:auto}.architecture-content{text-align:left;max-width:760px;margin:0 auto;line-height:1.6}.architecture-content h1{letter-spacing:-.4px;margin:0 0 16px;font-size:28px}.architecture-content h2{border-top:1px solid var(--border);margin:32px 0 10px;padding-top:12px;font-size:20px}.architecture-content h3{color:var(--text-h);margin:20px 0 8px;font-size:16px}.architecture-content p{color:var(--text);margin:0 0 12px}.architecture-content ul,.architecture-content ol{color:var(--text);margin:0 0 12px;padding-left:22px}.architecture-content li{margin-bottom:4px}.architecture-content a{color:var(--accent)}.architecture-content strong{color:var(--text-h)}.architecture-content code{padding:2px 5px;font-size:.85em}.architecture-content pre{background:var(--code-bg);border-radius:var(--radius-sm);margin:0 0 16px;padding:12px 14px;overflow-x:auto}.architecture-content pre code{background:0 0;padding:0}.architecture-content table{border-collapse:collapse;width:100%;margin:0 0 16px;font-size:.92em}.architecture-content th,.architecture-content td{text-align:left;border:1px solid var(--border);vertical-align:top;padding:7px 10px}.architecture-content th{background:var(--bg-subtle);color:var(--text-h)}.architecture-diagram{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);max-width:100%;height:auto;margin:12px 0 20px;display:block}.error-banner{border-radius:var(--radius-sm);background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border);text-align:left;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:.9em;display:flex}.error-banner button{color:inherit;flex-shrink:0;font-weight:600;text-decoration:underline}
