:root{--login-bg:#f8fafc;--login-card-bg:#ffffff08;--login-card-border:1px solid #ffffff14;--login-card-shadow:0 32px 80px #00000080, inset 0 1px 0 #ffffff0f;--login-logo-text:#1e293b;--login-logo-em:linear-gradient(135deg, #818cf8, #c084fc);--login-title:#1e293b;--login-title-light:#f1f5f9;--login-subtitle:#64748b;--field-label:#475569;--field-label-focus:#818cf8;--field-input-bg:#ffffff0a;--field-input-border:1px solid #ffffff14;--field-input-color:#1e293b;--field-input-color-light:#e2e8f0;--field-input-focus-border:#818cf880;--field-input-focus-bg:#818cf80f;--field-input-focus-shadow:0 0 0 3px #818cf81a;--error-banner-bg:#f8717114;--error-banner-border:1px solid #f8717133;--error-banner-color:#f87171;--login-btn-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--login-btn-color:white;--login-btn-shadow:0 4px 20px #6366f14d;--login-btn-hover-shadow:0 8px 28px #6366f166;--login-footer:#334155;--login-footer-code-bg:#ffffff0d;--login-footer-code:#818cf8;--orb-1-bg:radial-gradient(circle, #6366f1, transparent);--orb-2-bg:radial-gradient(circle, #8b5cf6, transparent);--grid-overlay:linear-gradient(#6366f10a 1px, transparent 1px), linear-gradient(90deg, #6366f10a 1px, transparent 1px)}.dark{--login-bg:#08080f;--login-card-bg:#ffffff08;--login-card-border:1px solid #ffffff14;--login-card-shadow:0 32px 80px #00000080, inset 0 1px 0 #ffffff0f;--login-logo-text:#e2e8f0;--login-logo-em:linear-gradient(135deg, #818cf8, #c084fc);--login-title:#f1f5f9;--login-title-light:#f1f5f9;--login-subtitle:#64748b;--field-label:#475569;--field-label-focus:#818cf8;--field-input-bg:#ffffff0a;--field-input-border:1px solid #ffffff14;--field-input-color:#e2e8f0;--field-input-color-light:#e2e8f0;--field-input-focus-border:#818cf880;--field-input-focus-bg:#818cf80f;--field-input-focus-shadow:0 0 0 3px #818cf81a;--error-banner-bg:#f8717114;--error-banner-border:1px solid #f8717133;--error-banner-color:#f87171;--login-btn-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--login-btn-color:white;--login-btn-shadow:0 4px 20px #6366f14d;--login-btn-hover-shadow:0 8px 28px #6366f166;--login-footer:#334155;--login-footer-code-bg:#ffffff0d;--login-footer-code:#818cf8;--orb-1-bg:radial-gradient(circle, #6366f1, transparent);--orb-2-bg:radial-gradient(circle, #8b5cf6, transparent);--grid-overlay:linear-gradient(#6366f10a 1px, transparent 1px), linear-gradient(90deg, #6366f10a 1px, transparent 1px)}.light{--login-bg:#f8fafc;--login-card-bg:#ffffff08;--login-card-border:1px solid #ffffff14;--login-card-shadow:0 32px 80px #00000080, inset 0 1px 0 #ffffff0f;--login-logo-text:#f46b10;--login-logo-em:linear-gradient(135deg, #818cf8, #c084fc);--login-title:#f2ba04;--login-title-light:#f1f5f9;--login-subtitle:#64748b;--field-label:#475569;--field-label-focus:#818cf8;--field-input-bg:#ffffff0a;--field-input-border:1px solid #ffffff14;--field-input-color:#1e293b;--field-input-color-light:#e2e8f0;--field-input-focus-border:#818cf880;--field-input-focus-bg:#818cf80f;--field-input-focus-shadow:0 0 0 3px #818cf81a;--error-banner-bg:#f8717114;--error-banner-border:1px solid #f8717133;--error-banner-color:#f87171;--login-btn-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--login-btn-color:white;--login-btn-shadow:0 4px 20px #6366f14d;--login-btn-hover-shadow:0 8px 28px #6366f166;--login-footer:#334155;--login-footer-code-bg:#ffffff0d;--login-footer-code:#818cf8;--orb-1-bg:radial-gradient(circle, #6366f1, transparent);--orb-2-bg:radial-gradient(circle, #8b5cf6, transparent);--grid-overlay:linear-gradient(#6366f10a 1px, transparent 1px), linear-gradient(90deg, #6366f10a 1px, transparent 1px)}.login-root{background:var(--login-bg);justify-content:center;align-items:center;min-height:100vh;font-family:DM Sans,Segoe UI,sans-serif;display:flex;position:relative;overflow:hidden}@keyframes pulse1{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes pulse2{0%,to{transform:scale(1.1)}50%{transform:scale(.9)}}.login-card{background:var(--login-card-bg);border:var(--login-card-border);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);width:100%;max-width:420px;box-shadow:var(--login-card-shadow);border-radius:24px;padding:48px 40px;animation:.6s cubic-bezier(.16,1,.3,1) both cardIn;position:relative}@keyframes cardIn{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.login-logo-text{color:var(--login-logo-text);letter-spacing:-.5px;font-size:22px;font-weight:700}.field-group input{background:var(--field-input-bg);border:var(--field-input-border);width:100%;color:var(--field-input-color-light);box-sizing:border-box;border-radius:12px;outline:none;padding:14px 16px;font-family:inherit;font-size:15px;transition:all .2s}.field-group input:focus{border-color:var(--field-input-focus-border);background:var(--field-input-focus-bg);box-shadow:var(--field-input-focus-shadow)}.error-banner{background:var(--error-banner-bg);border:var(--error-banner-border);color:var(--error-banner-color);border-radius:10px;align-items:center;gap:8px;padding:12px 14px;font-size:13px;display:flex}.login-btn{background:var(--login-btn-bg);color:var(--login-btn-color);cursor:pointer;box-shadow:var(--login-btn-shadow);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:15px;font-family:inherit;font-size:15px;font-weight:600;transition:all .2s;display:flex}.login-btn:hover:not(:disabled){box-shadow:var(--login-btn-hover-shadow);transform:translateY(-1px)}@keyframes spin{to{transform:rotate(360deg)}}.login-footer code{background:var(--login-footer-code-bg);color:var(--login-footer-code);border-radius:4px;padding:2px 6px;font-size:11px}.login-bg{pointer-events:none;position:absolute;inset:0}.orb{filter:blur(80px);opacity:.18;border-radius:50%;position:absolute}.orb-1{background:radial-gradient(circle,#6366f1,#0000);width:500px;height:500px;animation:8s ease-in-out infinite pulse1;top:-100px;left:-100px}.orb-2{background:radial-gradient(circle,#8b5cf6,#0000);width:400px;height:400px;animation:10s ease-in-out infinite pulse2;bottom:-80px;right:-60px}.grid-overlay{background-image:linear-gradient(#6366f10a 1px,#0000 1px),linear-gradient(90deg,#6366f10a 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0}.login-card{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#ffffff08;border:1px solid #ffffff14;border-radius:24px;width:100%;max-width:420px;padding:48px 40px;animation:.6s cubic-bezier(.16,1,.3,1) both cardIn;position:relative;box-shadow:0 32px 80px #00000080,inset 0 1px #ffffff0f}.login-logo{align-items:center;gap:12px;margin-bottom:32px;display:flex}.login-logo-text{letter-spacing:-.5px;font-size:22px;font-weight:700}.login-logo-text em{background:linear-gradient(135deg,#818cf8,#c084fc);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-style:normal}.login-title{color:#0481fe;letter-spacing:-.5px;margin:0 0 8px;font-size:28px;font-weight:700}.login-subtitle{color:#64748b;margin:0 0 32px;font-size:14px}.login-form{flex-direction:column;gap:20px;display:flex}.field-group{position:relative}.field-group label{color:#475569;text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px;font-size:12px;font-weight:600;transition:color .2s;display:block}.field-group.focused label{color:#818cf8}.field-group input{color:#e2e8f0;box-sizing:border-box;background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;outline:none;width:100%;padding:14px 16px;font-family:inherit;font-size:15px;transition:all .2s}.field-group input:focus{background:#818cf80f;border-color:#818cf880;box-shadow:0 0 0 3px #818cf81a}.error-banner{color:#f87171;background:#f8717114;border:1px solid #f8717133;border-radius:10px;align-items:center;gap:8px;padding:12px 14px;font-size:13px;display:flex}.login-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:15px;font-family:inherit;font-size:15px;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 20px #6366f14d}.login-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 28px #6366f166}.login-btn:active{transform:translateY(0)}.login-btn.loading{opacity:.7;cursor:not-allowed}.btn-arrow{transition:transform .2s}.login-btn:hover .btn-arrow{transform:translate(4px)}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.login-footer{text-align:center;color:#334155;margin:24px 0 0;font-size:12px}.login-footer code{color:#818cf8;background:#ffffff0d;border-radius:4px;padding:2px 6px;font-size:11px}.docs-page{max-width:800px;margin:0 auto;padding:32px}.docs-header{margin-bottom:28px}.docs-header h1{color:#f1f5f9;letter-spacing:-.5px;margin:0 0 4px;font-size:28px;font-weight:700}.docs-header p{color:#475569;margin:0;font-size:14px}.drop-zone{text-align:center;cursor:pointer;color:#475569;background:#6366f108;border:2px dashed #6366f14d;border-radius:16px;margin-bottom:20px;padding:48px 24px;transition:all .2s}.drop-zone:hover,.drop-zone.drag-over{color:#818cf8;background:#6366f112;border-color:#6366f199}.drop-icon{justify-content:center;margin-bottom:12px;font-size:32px;display:flex}.drop-text{color:#94a3b8;margin-bottom:6px;font-size:15px;font-weight:600}.drop-subtext{color:#334155;font-size:12px}.upload-spinner{border:3px solid #818cf833;border-top-color:#818cf8;border-radius:50%;width:36px;height:36px;margin:0 auto;animation:.7s linear infinite spin}.docs-error{color:#f87171;background:#f8717114;border:1px solid #f8717133;border-radius:10px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:13px;display:flex}.docs-error button{color:#f87171;cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:14px}.progress-item{color:#94a3b8;background:#ffffff05;border-radius:10px;align-items:center;gap:12px;margin-bottom:8px;padding:10px 16px;font-size:13px;display:flex}.progress-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.progress-bar{background:#ffffff0f;border-radius:2px;width:120px;height:4px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:2px;height:100%;transition:width .2s}.progress-pct{text-align:right;width:36px;font-size:11px}.docs-list{flex-direction:column;gap:8px;margin-top:8px;display:flex}.docs-empty{text-align:center;color:#334155;padding:48px;font-size:14px}.docs-empty span{margin-bottom:12px;font-size:32px;display:block}.doc-item{background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;align-items:center;gap:14px;padding:14px 16px;transition:all .15s;animation:.3s both slideIn;display:flex}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.doc-item:hover{background:#ffffff0d;border-color:#ffffff1a}.doc-icon{font-size:24px}.doc-info{flex:1;min-width:0}.doc-name{color:#e2e8f0;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.doc-meta{color:#475569;align-items:center;gap:8px;margin-top:2px;font-size:12px;display:flex}.doc-status{text-transform:capitalize;align-items:center;gap:4px;font-weight:500;display:flex}.pulse-dot{background:#fbbf24;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.doc-delete{color:#334155;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px;transition:all .15s;display:flex}.doc-delete:hover{color:#f87171;background:#f871711a}:root{--chat-bg:#f8fafc;--chat-sidebar-bg:#00000005;--chat-sidebar-border:1px solid #0000000f;--chat-sidebar-mobile-bg:#e5e7ef;--chat-header-bg:#00000003;--chat-header-border:1px solid #0000000f;--chat-sidebar-header:#475569;--chat-sidebar-hint:#334155;--chat-sidebar-empty:#334155;--doc-filter-item:#64748b;--doc-filter-item-hover-bg:#0000000a;--doc-filter-item-hover:#94a3b8;--doc-filter-item-selected-bg:#6366f11a;--doc-filter-item-selected-border:#6366f140;--doc-filter-item-selected:#6366f1;--doc-filter-item-accent:#6366f1;--chat-header-title:#1e293b;--chat-header-title-light:#f1f5f9;--conn-online:#34d399;--conn-connecting:#fbbf24;--conn-offline:#f87171;--conn-error-bg:#f8717114;--conn-error-border:1px solid #f8717126;--conn-error:#f87171;--messages-area-scrollbar:#00000014;--chat-welcome:#475569;--chat-welcome-title:#6366f1;--chat-welcome-title-light:#94a3b8;--chat-welcome-p:#334155;--example-pill-bg:#6366f114;--example-pill-border:#6366f133;--example-pill:#6366f1;--example-pill-hover-bg:#6366f126;--message-avatar-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--message-avatar:white;--message-avatar-user-bg:#00000014;--message-bubble-bg:#0000000a;--message-bubble-border:1px solid #00000012;--message-bubble-user-bg:#6366f11f;--message-bubble-user-border:#6366f133;--message-content:#1e293b;--message-content-light:#e2e8f0;--message-time:#334155;--sources-section-border:1px solid #0000000f;--sources-label:#334155;--source-chip-bg:#6366f114;--source-chip-border:#6366f126;--source-name:#6366f1;--source-score:#475569;--thinking-dot:#6366f1;--chat-input-area-border:1px solid #0000000f;--chat-input-box-bg:#0000000a;--chat-input-box-border:1px solid #00000017;--chat-input-box-focus:#6366f166;--chat-input-box-shadow:0 0 0 3px #6366f114;--chat-textarea:#1e293b;--chat-textarea-light:#e2e8f0;--chat-textarea-placeholder:#334155;--send-btn-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--send-btn:white;--send-btn-shadow:0 4px 12px #6366f14d;--send-btn-disabled:.3;--selected-docs-bar:#475569}.dark{--chat-bg:#08080f;--chat-sidebar-bg:#ffffff05;--chat-sidebar-border:1px solid #ffffff0f;--chat-sidebar-mobile-bg:#0d0d1a;--chat-header-bg:#ffffff03;--chat-header-border:1px solid #ffffff0f;--chat-sidebar-header:#94a3b8;--chat-sidebar-hint:#334155;--chat-sidebar-empty:#334155;--doc-filter-item:#64748b;--doc-filter-item-hover-bg:#ffffff0a;--doc-filter-item-hover:#94a3b8;--doc-filter-item-selected-bg:#6366f11a;--doc-filter-item-selected-border:#6366f140;--doc-filter-item-selected:#818cf8;--doc-filter-item-accent:#6366f1;--chat-header-title:#f1f5f9;--chat-header-title-light:#f1f5f9;--conn-online:#34d399;--conn-connecting:#fbbf24;--conn-offline:#f87171;--conn-error-bg:#f8717114;--conn-error-border:1px solid #f8717126;--conn-error:#f87171;--messages-area-scrollbar:#ffffff14;--chat-welcome:#475569;--chat-welcome-title:#94a3b8;--chat-welcome-title-light:#94a3b8;--chat-welcome-p:#334155;--example-pill-bg:#6366f114;--example-pill-border:#6366f133;--example-pill:#818cf8;--example-pill-hover-bg:#6366f126;--message-avatar-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--message-avatar:white;--message-avatar-user-bg:#ffffff14;--message-bubble-bg:#ffffff0a;--message-bubble-border:1px solid #ffffff12;--message-bubble-user-bg:#6366f11f;--message-bubble-user-border:#6366f133;--message-content:#e2e8f0;--message-content-light:#e2e8f0;--message-time:#334155;--sources-section-border:1px solid #ffffff0f;--sources-label:#334155;--source-chip-bg:#6366f114;--source-chip-border:#6366f126;--source-name:#818cf8;--source-score:#475569;--thinking-dot:#6366f1;--chat-input-area-border:1px solid #ffffff0f;--chat-input-box-bg:#ffffff0a;--chat-input-box-border:1px solid #ffffff17;--chat-input-box-focus:#6366f166;--chat-input-box-shadow:0 0 0 3px #6366f114;--chat-textarea:#e2e8f0;--chat-textarea-light:#e2e8f0;--chat-textarea-placeholder:#334155;--send-btn-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--send-btn:white;--send-btn-shadow:0 4px 12px #6366f14d;--send-btn-disabled:.3;--selected-docs-bar:#475569}.light{--chat-bg:#f8fafc;--chat-sidebar-bg:#00000005;--chat-sidebar-border:1px solid #0000000f;--chat-sidebar-mobile-bg:#e5e7ef;--chat-header-bg:#00000003;--chat-header-border:1px solid #0000000f;--chat-sidebar-header:#475569;--chat-sidebar-hint:#334155;--chat-sidebar-empty:#334155;--doc-filter-item:#64748b;--doc-filter-item-hover-bg:#0000000a;--doc-filter-item-hover:#94a3b8;--doc-filter-item-selected-bg:#6366f11a;--doc-filter-item-selected-border:#6366f140;--doc-filter-item-selected:#6366f1;--doc-filter-item-accent:#6366f1;--chat-header-title:#1e293b;--chat-header-title-light:#f1f5f9;--conn-online:#34d399;--conn-connecting:#fbbf24;--conn-offline:#f87171;--conn-error-bg:#f8717114;--conn-error-border:1px solid #f8717126;--conn-error:#f87171;--messages-area-scrollbar:#00000014;--chat-welcome:#475569;--chat-welcome-title:#6366f1;--chat-welcome-title-light:#94a3b8;--chat-welcome-p:#334155;--example-pill-bg:#6366f114;--example-pill-border:#6366f133;--example-pill:#6366f1;--example-pill-hover-bg:#6366f126;--message-avatar-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--message-avatar:white;--message-avatar-user-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--message-bubble-bg:#0000000a;--message-bubble-border:1px solid #00000012;--message-bubble-user-bg:#6366f11f;--message-bubble-user-border:#6366f133;--message-content:#1e293b;--message-content-light:#e2e8f0;--message-time:#334155;--sources-section-border:1px solid #0000000f;--sources-label:#334155;--source-chip-bg:#6366f114;--source-chip-border:#6366f126;--source-name:#6366f1;--source-score:#475569;--thinking-dot:#6366f1;--chat-input-area-border:1px solid #0000000f;--chat-input-box-bg:#0000000a;--chat-input-box-border:1px solid #00000017;--chat-input-box-focus:#6366f166;--chat-input-box-shadow:0 0 0 3px #6366f114;--chat-textarea:#1e293b;--chat-textarea-light:#0b0c0c;--chat-textarea-placeholder:#334155;--send-btn-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--send-btn:white;--send-btn-shadow:0 4px 12px #6366f14d;--send-btn-disabled:.3;--selected-docs-bar:#475569}.chat-root{background:var(--chat-bg);height:100vh;font-family:DM Sans,Segoe UI,sans-serif;display:flex;overflow:hidden}.chat-sidebar{background:var(--chat-sidebar-bg);border-right:var(--chat-sidebar-border);flex-direction:column;flex-shrink:0;width:280px;padding:24px 16px;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex}@media (width<=768px){.chat-sidebar{z-index:100;background:var(--chat-sidebar-mobile-bg);width:80vw;position:fixed;inset:0;transform:translate(-100%)}.chat-sidebar.open{transform:translate(0)}}.sidebar-header{color:var(--chat-sidebar-header);text-transform:uppercase;letter-spacing:.8px;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;font-weight:700;display:flex}.sidebar-close{color:var(--doc-filter-item);cursor:pointer;background:0 0;border:none;font-size:14px;display:none}@media (width<=768px){.sidebar-close{display:block}}.sidebar-hint{color:var(--chat-sidebar-hint);margin:0 0 16px;font-size:12px;line-height:1.5}.sidebar-empty{color:var(--chat-sidebar-empty);text-align:center;padding:24px 0;font-size:13px}.doc-filter-list{flex-direction:column;gap:6px;display:flex;overflow-y:auto}.doc-filter-item{cursor:pointer;color:var(--doc-filter-item);border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;transition:all .15s;display:flex}.doc-filter-item:hover{background:var(--doc-filter-item-hover-bg);color:var(--doc-filter-item-hover)}.doc-filter-item.selected{background:var(--doc-filter-item-selected-bg);border-color:var(--doc-filter-item-selected-border);color:var(--doc-filter-item-selected)}.doc-filter-item input{accent-color:var(--doc-filter-item-accent)}.doc-filter-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-main{flex-direction:column;flex:1;min-width:0;display:flex}.chat-header{border-bottom:var(--chat-header-border);background:var(--chat-header-bg);flex-shrink:0;align-items:center;gap:16px;padding:16px 24px;display:flex}.sidebar-toggle{border:1px solid var(--chat-header-border);color:var(--doc-filter-item);cursor:pointer;background:0 0;border-radius:8px;padding:8px;transition:all .15s;display:flex;position:relative}.sidebar-toggle:hover{color:var(--doc-filter-item-selected);border-color:var(--doc-filter-item-selected-border)}.filter-badge{background:var(--doc-filter-item-accent);color:var(--send-btn);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.chat-header-title{color:var(--chat-header-title);flex-direction:column;gap:2px;font-size:16px;font-weight:700;display:flex}.conn-indicator{align-items:center;gap:6px;font-size:11px;font-weight:500;display:flex}.conn-indicator.online{color:var(--conn-online)}.conn-indicator.connecting{color:var(--conn-connecting)}.conn-indicator.offline{color:var(--conn-offline)}.conn-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.conn-indicator.online .conn-dot{animation:2s infinite pulse}.conn-indicator.connecting .conn-dot{animation:.8s infinite pulse}.conn-error-banner{background:var(--conn-error-bg);border-bottom:var(--conn-error-border);color:var(--conn-error);align-items:center;gap:8px;padding:10px 24px;font-size:13px;display:flex}.conn-error-banner button{color:var(--conn-error);cursor:pointer;background:0 0;border:none;margin-left:auto}.messages-area{flex-direction:column;flex:1;gap:20px;padding:24px;display:flex;overflow-y:auto}.messages-area::-webkit-scrollbar{width:4px}.messages-area::-webkit-scrollbar-thumb{background:var(--messages-area-scrollbar);border-radius:2px}.chat-welcome{text-align:center;color:var(--chat-welcome);flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;animation:.4s fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.welcome-icon{margin-bottom:20px;font-size:48px}.chat-welcome h2{color:var(--chat-welcome-title);margin:0 0 10px;font-size:22px;font-weight:700}.chat-welcome p{max-width:360px;color:var(--chat-welcome-p);margin:0 0 24px;font-size:14px;line-height:1.6}.example-pills{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.example-pill{background:var(--example-pill-bg);border:1px solid var(--example-pill-border);color:var(--example-pill);cursor:pointer;border-radius:20px;padding:8px 16px;font-family:inherit;font-size:13px;transition:all .15s}.example-pill:hover{background:var(--example-pill-hover-bg)}.message-row{align-items:flex-start;gap:12px;animation:.25s both msgIn;display:flex}@keyframes msgIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.message-row.user{flex-direction:row-reverse}.message-avatar{background:var(--message-avatar-bg);width:32px;height:32px;color:var(--message-avatar);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.message-row.user .message-avatar{background:var(--message-avatar-user-bg);font-size:13px}.message-bubble{background:var(--message-bubble-bg);border:var(--message-bubble-border);border-radius:16px;max-width:70%;padding:14px 16px}.message-row.user .message-bubble{background:var(--message-bubble-user-bg);border-color:var(--message-bubble-user-border)}.message-content{color:var(--message-content);white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.65}.message-time{color:var(--message-time);margin-top:8px;font-size:11px}.sources-section{border-top:var(--sources-section-border);margin-top:12px;padding-top:10px}.sources-label{color:var(--sources-label);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px;font-size:10px;font-weight:700}.source-chip{background:var(--source-chip-bg);border:1px solid var(--source-chip-border);border-radius:6px;align-items:center;gap:6px;margin:2px 4px 2px 0;padding:4px 8px;display:inline-flex}.source-name{color:var(--source-name);font-size:11px}.source-score{color:var(--source-score);font-size:10px}.thinking-bubble{padding:14px 20px}.thinking-dots{align-items:center;gap:5px;display:flex}.thinking-dots span{background:var(--thinking-dot);border-radius:50%;width:7px;height:7px;animation:1.2s infinite bounce}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.chat-input-area{border-top:var(--chat-input-area-border);flex-shrink:0;padding:16px 24px 20px}.chat-input-box{background:var(--chat-input-box-bg);border:var(--chat-input-box-border);border-radius:16px;align-items:flex-end;gap:10px;padding:12px 14px;transition:border-color .2s;display:flex}.chat-input-box:focus-within{border-color:var(--chat-input-box-focus);box-shadow:var(--chat-input-box-shadow)}.chat-textarea{color:var(--chat-textarea-light);resize:none;background:0 0;border:none;outline:none;flex:1;max-height:160px;font-family:inherit;font-size:14px;line-height:1.5;overflow-y:auto}.chat-textarea::placeholder{color:var(--chat-textarea-placeholder)}.send-btn{background:var(--send-btn-bg);width:36px;height:36px;color:var(--send-btn);cursor:pointer;box-shadow:var(--send-btn-shadow);border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.send-btn:hover:not(.disabled){transform:scale(1.05)}.send-btn.disabled{opacity:var(--send-btn-disabled);cursor:not-allowed;box-shadow:none}.selected-docs-bar{color:var(--selected-docs-bar);text-overflow:ellipsis;white-space:nowrap;margin-top:8px;font-size:11px;overflow:hidden}:root{--bg:#f8fafc;--text:#1e293b;--nav-bg:#00000005;--nav-bg-solid:#fff;--nav-border:1px solid #0000000f;--nav-active:#6366f11f;--nav-hover:#0000000a;--nav-color:#475569;--nav-color-active:#6366f1;--nav-color-hover:#94a3b8;--nav-bottom-border:1px solid #0000000d;--user-avatar-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--user-avatar-color:white;--user-name:#334155;--logout-btn:#eceef1;--logout-btn-hover:#f87171}.dark{--bg:#08080f;--text:#94a3b8;--nav-bg:#ffffff05;--nav-bg-solid:#0b1126;--nav-border:1px solid #ffffff0f;--nav-active:#6366f11f;--nav-hover:#ffffff0a;--nav-color:#475569;--nav-color-active:#818cf8;--nav-color-hover:#94a3b8;--nav-bottom-border:1px solid #ffffff0d;--user-avatar-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--user-avatar-color:white;--user-name:#94a3b8;--logout-btn:#fdfdfe;--logout-btn-hover:#f87171}.light{--bg:#f8fafc;--text:#1e293b;--nav-bg:#00000005;--nav-bg-solid:#fff;--nav-border:1px solid #0000000f;--nav-active:#6366f11f;--nav-hover:#0000000a;--nav-color:#475569;--nav-color-active:#6366f1;--nav-color-hover:#94a3b8;--nav-bottom-border:1px solid #0000000d;--user-avatar-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--user-avatar-color:white;--user-name:#334155;--logout-btn:#f5f7fa;--logout-btn-hover:#f87171}.layout-root{background:var(--bg);height:100vh;color:var(--text);font-family:DM Sans,Segoe UI,sans-serif;display:flex}.layout-main{flex-direction:column;flex:1;min-width:0;display:flex}.mobile-nav-bar{background:var(--bg);border-bottom:1px solid #94a3b81f;align-items:center;padding:12px 16px;display:none}.mobile-nav-toggle,.mobile-nav-close{color:var(--text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:6px;font-size:18px;display:inline-flex}.mobile-nav-close{margin-left:auto;display:none}.nav-rail{background:var(--nav-bg);border-right:var(--nav-border);flex-direction:column;flex-shrink:0;width:220px;padding:20px 12px;display:flex}@media (width<=900px){.layout-root{overflow:hidden}.nav-rail{inset:env(safe-area-inset-top,0px) auto env(safe-area-inset-bottom,0px) 0;z-index:50;background:var(--nav-bg-solid,#fff);border-right:var(--nav-border);width:260px;max-width:80vw;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));box-sizing:border-box;min-height:calc(100vh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));transition:transform .25s;position:fixed;transform:translate(-100%);box-shadow:4px 0 24px #0f172a2e}.nav-rail.open{transform:translate(0)}.nav-item span,.user-info{display:block}.mobile-nav-bar{display:flex}.layout-main{min-height:100vh}.mobile-nav-close{display:inline-flex}.layout-content{min-height:calc(100vh - 52px)}.nav-bottom{bottom:38px!important}.layout-backdrop{z-index:40;background:#0f172a59;position:fixed;inset:0}}.nav-brand{align-items:center;padding:0 8px 24px;display:flex}.nav-links{flex-direction:column;flex:1;gap:4px;padding-bottom:16px;display:flex}.nav-item{color:var(--nav-color);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s;display:flex}.nav-item:hover{background:var(--nav-hover);color:var(--nav-color-hover)}.nav-item.active{background:var(--nav-active);color:var(--nav-color-active)}.nav-bottom{border-top:var(--nav-bottom-border);background:var(--nav-bg-solid,#fff);z-index:10;margin-top:auto;padding-top:16px;position:relative;bottom:auto}.nav-user{align-items:center;gap:10px;padding:8px;display:flex}.user-avatar{background:var(--user-avatar-bg);width:32px;height:32px;color:var(--user-avatar-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.user-name{color:var(--user-name);font-size:13px;font-weight:600}.user-email,.user{color:var(--user-name);font-size:13px;font-weight:400}.logout-btn{background:var(--user-avatar-bg);color:var(--logout-btn);cursor:pointer;border:none;padding:2px;font-family:inherit;font-size:11px;transition:color .15s}.logout-btn:hover{color:var(--logout-btn-hover)}.layout-content{flex:1;min-width:0;overflow:auto}
