:root{--color-user-bubble: #2563eb;--color-muted: #6b7280}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--color-user-bubble);outline-offset:2px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;background:#fff;color:#111827}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{to{transform:rotate(360deg)}}.chat-pane__inner{width:100%;max-width:min(768px,calc(100% - 80px));margin:0 auto;padding:32px 20px;display:flex;flex-direction:column;justify-content:flex-end;min-height:100%;box-sizing:border-box}.chat-pane__slack-link{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;padding:6px;border:1.5px solid #e5e7eb;border-radius:6px;color:#374151;text-decoration:none;transition:border-color .15s,background .15s;flex-shrink:0}.chat-pane__slack-link:hover{border-color:#4a154b;background:#fdf4ff}.sidebar__item{display:flex;flex-direction:column;gap:3px;padding:10px 14px;text-decoration:none;color:#cdd6f4;border-radius:6px;margin:1px 6px;transition:background .15s}.sidebar__item:hover{background:#ffffff0f}.sidebar__item--active{background:#ffffff1f}.sidebar__item-title{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:5px}.sidebar__item-source{flex-shrink:0;opacity:.5;font-size:10px}.sidebar__item-time{font-size:11px;color:#9399b2}.message{margin-top:20px}.message:first-child{margin-top:0}.message--grouped{margin-top:6px}.message__avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.message__avatar--user{background:var(--color-user-bubble);color:#fff;font-size:11px}.message__avatar--bot{background:#f0f0f0;border:1px solid #e0e0e0;font-size:16px}.message__header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.message__sender{font-size:13px;font-weight:600;color:#111827}.message__time{font-size:11px;color:#9ca3af;margin-top:4px;display:block}.message--assistant .message__assistant-body{padding-left:36px}.message--assistant .message__prose{background:#f3f4f6;border-radius:4px 18px 18px;padding:10px 14px;display:inline-block;max-width:100%}.message__date-divider{display:flex;align-items:center;gap:10px;margin:20px 0 4px;color:#9ca3af;font-size:11px;font-weight:500;letter-spacing:.4px;text-transform:uppercase}.message__date-divider:before,.message__date-divider:after{content:"";flex:1;height:1px;background:#e5e7eb}.message--user{display:flex;flex-direction:column;align-items:flex-end}.message__user-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.message--user .message__user-body{width:100%;display:flex;flex-direction:column;align-items:flex-end;padding-left:0}.message__prose{font-size:15px;line-height:1.65;color:#111827;word-break:break-word}.message__prose--user{background:#2563eb;color:#fff;border-radius:18px 18px 4px;padding:10px 14px;display:inline-block;max-width:75%;white-space:pre-wrap}.message__prose--user p{color:#fff}.message__prose p{margin:0 0 8px}.message__prose p:last-child{margin-bottom:0}.message__prose ul,.message__prose ol{padding-left:20px;margin:6px 0}.message__prose li{margin:3px 0}.message__prose :not(pre)>code{background:#0000001a;padding:2px 6px;border-radius:4px;font-size:.875em;font-family:SF Mono,Menlo,Consolas,monospace;border:1px solid rgba(0,0,0,.08)}.message__prose pre,.message__prose>div[class*=prism]{margin:10px 0;border-radius:8px;overflow-x:auto;max-width:100%}.message__prose strong{font-weight:600;color:inherit}.message__prose h1,.message__prose h2,.message__prose h3{font-weight:600;margin:16px 0 4px}.message__bubble--streaming{min-height:24px}.message__typing{color:var(--color-muted);font-style:italic;animation:skeleton-pulse 1.4s ease-in-out infinite}.login-page{display:flex;height:100vh;overflow:hidden}.login-page__left{flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e1e2e,#2d2b55);color:#e0e0f0;padding:40px}.login-page__branding{max-width:420px}.login-page__logo{display:flex;align-items:center;gap:10px;margin-bottom:32px}.login-page__logo-icon{font-size:36px}.login-page__logo-text{font-size:24px;font-weight:800;color:#fff;letter-spacing:.5px}.login-page__headline{font-size:32px;font-weight:700;line-height:1.3;color:#fff;margin-bottom:28px}.login-page__features{list-style:none;display:flex;flex-direction:column;gap:16px;padding:0}.login-page__features li{font-size:15px;line-height:1.5;color:#c4c4dc;padding-left:28px;position:relative}.login-page__features li:before{content:"";position:absolute;left:0;top:6px;width:18px;height:18px;border-radius:50%;background:#6366f14d;border:2px solid rgba(129,140,248,.5)}.login-page__right{width:480px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;padding:40px;position:relative}.login-page__footer{position:absolute;bottom:24px;font-size:12px;color:#9ca3af}@media (max-width: 900px){.login-page{flex-direction:column}.login-page__left{flex:0;padding:32px 24px}.login-page__headline{font-size:24px;margin-bottom:16px}.login-page__features{display:none}.login-page__right{flex:1;width:100%}}.slack-login-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 24px;background:#fff;border:2px solid #e5e7eb;border-radius:10px;font-size:15px;font-weight:600;color:#111827;cursor:pointer;transition:border-color .15s,box-shadow .15s}.slack-login-btn:hover:not(:disabled){border-color:#4a154b;box-shadow:0 2px 8px #4a154b26}.slack-login-btn:disabled{opacity:.7;cursor:not-allowed}.slack-login-btn__spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:#4a154b;border-radius:50%;animation:spin .6s linear infinite}@media (max-width: 768px){.chat-pane__inner{padding:16px 12px}.message--assistant .message__assistant-body{padding-left:0}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{margin:0;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
