:root,:root[data-theme=light]{color-scheme:light;--primary-color: #ea0029;--hover-color: #c70024;--text-on-primary: #ffffff;--border-radius-standard: 12px;--sidebar-width: 276px;--chat-column-width: 880px;--bg-canvas: #f3f6fa;--bg-surface: #ffffff;--bg-elevated: #ffffff;--bg-subtle: #f7f9fc;--bg-muted: #edf2f7;--sidebar-bg: #f8fafc;--header-bg: rgba(255, 255, 255, .88);--composer-bg: rgba(255, 255, 255, .96);--bubble-assistant: #ffffff;--bubble-user: #eceef1;--text-primary: #182230;--text-secondary: #455468;--text-muted: #748094;--border: #dce3ec;--border-strong: #c8d2df;--accent: #ea0029;--accent-hover: #c70024;--accent-soft: #ffe4e9;--accent-text: #c70024;--text-on-accent: #ffffff;--danger: #dc2626;--danger-soft: #fee2e2;--success: #07855a;--focus-ring: #ea0029;--overlay: rgba(15, 23, 42, .56);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--shadow-md: 0 8px 24px rgba(15, 23, 42, .08);--shadow-lg: 0 20px 45px rgba(15, 23, 42, .14);--auth-page-background: radial-gradient(circle at 10% 14%, rgba(234, 0, 41, .12) 0%, transparent 34%), radial-gradient(circle at 90% 86%, rgba(199, 0, 36, .08) 0%, transparent 30%), linear-gradient(145deg, #f7f9fc 0%, #edf2f7 48%, #f8fafc 100%);--auth-panel-bg: rgba(255, 255, 255, .9);--auth-panel-border: rgba(255, 255, 255, .72);--auth-field-bg: #f3f6fa;--auth-field-focus: #ffffff;--auth-field-border: #c8d2df;--auth-disabled-bg: #e7ecf2;--auth-disabled-text: #7b8798;--icon-filter: brightness(0) saturate(100%) invert(27%) sepia(17%) saturate(673%) hue-rotate(177deg) brightness(91%) contrast(88%)}:root[data-theme=dark]{color-scheme:dark;--primary-color: #ea0029;--hover-color: #c70024;--text-on-primary: #ffffff;--bg-canvas: #0a0a0b;--bg-surface: #18181b;--bg-elevated: #18181b;--bg-subtle: #202024;--bg-muted: #242428;--sidebar-bg: #111113;--header-bg: #111113;--composer-bg: #242428;--bubble-assistant: #151517;--bubble-user: #27272a;--text-primary: #f4f4f5;--text-secondary: #a1a1aa;--text-muted: #71717a;--border: #303036;--border-strong: #3f3f46;--accent: #ea0029;--accent-hover: #c70024;--accent-soft: #3a0a12;--accent-text: #ff4d67;--text-on-accent: #ffffff;--danger: #ff8a94;--danger-soft: #35191e;--success: #61d6a4;--focus-ring: #ff4d67;--overlay: rgba(0, 0, 0, .76);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 12px 30px rgba(0, 0, 0, .42);--shadow-lg: 0 24px 55px rgba(0, 0, 0, .58);--auth-page-background: radial-gradient(circle at 10% 14%, rgba(234, 0, 41, .14) 0%, transparent 34%), radial-gradient(circle at 90% 86%, rgba(255, 77, 103, .08) 0%, transparent 30%), linear-gradient(145deg, #0a0a0b 0%, #111113 48%, #0a0a0b 100%);--auth-panel-bg: #18181b;--auth-panel-border: #303036;--auth-field-bg: #242428;--auth-field-focus: #27272a;--auth-field-border: #303036;--auth-disabled-bg: #18181b;--auth-disabled-text: #71717a;--icon-filter: brightness(0) saturate(100%) invert(87%)}*{box-sizing:border-box;margin:0;padding:0}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--text-primary);background-color:var(--bg-canvas);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{margin:0;padding:0;width:100%;min-height:100%;-webkit-overflow-scrolling:touch}body{margin:0;min-width:0;min-height:100vh;min-height:100dvh;color:var(--text-primary);background:var(--bg-canvas);transition:color .2s ease,background-color .2s ease}.route-loading-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;gap:.75rem;color:var(--text-secondary);background:var(--bg-canvas);font-size:.925rem}.route-loading-spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--text-primary);border-radius:50%;animation:icon-spin .9s linear infinite}.message-input-error{width:min(100%,var(--chat-column-width));margin:.5rem auto 0;padding:.65rem .8rem;border:1px solid color-mix(in srgb,#ef4444 55%,var(--border));border-radius:.65rem;background:color-mix(in srgb,#ef4444 12%,var(--bg-elevated));color:var(--text-primary);font-size:.875rem;line-height:1.4}#root{width:100%;min-width:0;min-height:100vh;min-height:100dvh}.chat-container{display:flex;height:100vh;height:100dvh;width:100%;overflow:hidden;color:var(--text-primary);background:var(--bg-canvas);position:relative}.desktop-sidebar{display:flex;width:var(--sidebar-width);min-width:var(--sidebar-width);height:100vh;height:100dvh;background-color:var(--sidebar-bg);border-right:1px solid var(--border);overflow-y:auto;overflow-x:hidden;flex-shrink:0;box-sizing:border-box;position:relative}.desktop-sidebar.hidden{width:0;min-width:0;overflow:hidden;border-right:none}.mobile-sidebar{position:fixed;top:0;left:-100%;width:75%;max-width:300px;height:100vh;height:100dvh;background-color:var(--sidebar-bg);border-right:1px solid var(--border);transition:left .3s ease-in-out;z-index:1000;overflow-y:auto;overflow-x:hidden;box-shadow:var(--shadow-lg)}.mobile-sidebar.open{left:0}@media (min-width: 769px){.mobile-sidebar{display:none}}@media (max-width: 768px){.desktop-sidebar{display:none}}.chat-main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;height:100vh;height:100dvh;background-color:var(--bg-canvas);min-width:0;position:relative;container-name:chat-main;container-type:inline-size}.chat-body-row{display:flex;flex:1;min-height:0;overflow:hidden}.chat-primary-area{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.chat-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.75rem;padding:0 1.375rem;background:var(--header-bg);border-bottom:1px solid var(--border);min-height:64px;flex-shrink:0;box-shadow:none;position:relative;z-index:30}.chat-header-left{display:flex;align-items:center;gap:.65rem;flex:0 1 auto;min-width:0;max-width:100%;justify-self:start}.chat-header-center{display:flex;align-items:center;gap:.75rem;justify-content:center;justify-self:center}.chat-header-right{display:flex;align-items:center;gap:.5rem;min-width:0;max-width:100%;justify-self:end}.header-mode-switch{display:inline-flex;align-items:center;gap:2px;min-height:40px;padding:3px;color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-sm)}.header-mode-switch button{min-height:32px;padding:0 .75rem;color:var(--text-secondary);background:transparent;border:0;border-radius:9px;cursor:pointer;font:inherit;font-size:.75rem;font-weight:650;transition:color .16s ease,background-color .16s ease,box-shadow .16s ease}.header-mode-switch button:hover,.header-mode-switch button.is-active{color:var(--text-primary);background:var(--bg-muted)}.header-mode-switch button.is-active{box-shadow:var(--shadow-sm)}.header-mode-switch button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--focus-ring)}.sidebar-toggle-button{display:flex!important}.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}.header-control{min-height:40px;border:1px solid var(--border);border-radius:11px;color:var(--text-secondary);background:var(--bg-elevated);box-shadow:var(--shadow-sm);font:inherit;transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.header-control:hover:not(:disabled){color:var(--text-primary);background:var(--bg-subtle);border-color:var(--border-strong)}.header-control:focus-visible,.icon-button:focus-visible,.sidebar-new-chat-button:focus-visible,.sidebar-primary-action:focus-visible,.sidebar-chat-item:focus-visible,.premium-send-button:focus-visible,.message-action-btn:focus-visible,.sidebar-options-button:focus-visible,.file-badge-remove:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.app-icon{display:block;width:18px;height:18px;flex:0 0 auto;stroke-width:1.9}.app-icon--sm{width:16px;height:16px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;padding:0;color:var(--text-secondary);background:transparent;border:1px solid transparent;border-radius:10px;cursor:pointer;transition:color .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .12s ease,opacity .16s ease}.icon-button:hover:not(:disabled){color:var(--text-primary);background:var(--bg-subtle);border-color:var(--border)}.icon-button:active:not(:disabled){transform:translateY(1px)}.icon-button:disabled{color:var(--text-muted);opacity:.5;cursor:not-allowed}.icon-button--surface{color:var(--text-secondary);background:var(--bg-elevated);border-color:var(--border);box-shadow:var(--shadow-sm)}.icon-button--primary{color:var(--text-on-primary);background:var(--primary-color);border-color:var(--primary-color)}.icon-button--primary:hover:not(:disabled){color:var(--text-on-primary);background:var(--hover-color);border-color:var(--hover-color)}@keyframes icon-spin{to{transform:rotate(360deg)}}.icon-spin{animation:icon-spin .9s linear infinite}.header-icon-button{width:42px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:0 0 auto}.model-select-label{display:flex;min-width:0}.model-select{min-width:120px;max-width:180px;padding:.55rem 2rem .55rem .8rem;cursor:pointer;font-size:.875rem;font-weight:600}.header-action-button{padding:.55rem .85rem;color:var(--accent-text);cursor:pointer;font-size:.8125rem;font-weight:700;white-space:nowrap}.header-desktop-action{display:none}.header-control:disabled{opacity:.58;cursor:wait}.theme-toggle-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.55rem .72rem;color:var(--text-secondary);cursor:pointer;font-size:.8rem;font-weight:700;white-space:nowrap}.theme-toggle-button .theme-toggle-label{display:none}.chat-header .theme-toggle-button{width:40px;min-width:40px;padding:0}.theme-toggle-button svg{width:17px;height:17px}.global-theme-toggle{position:fixed;top:1rem;right:1rem;z-index:10000;min-height:42px;padding:.55rem .8rem;color:var(--text-secondary);background:var(--header-bg);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.global-theme-toggle:hover{color:var(--text-primary);background:var(--bg-elevated);border-color:var(--border-strong)}.global-theme-toggle:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring),var(--shadow-md)}.user-menu{position:relative;min-width:0}.user-menu-trigger{display:flex;align-items:center;gap:.55rem;min-width:40px;width:40px;max-width:40px;padding:0;justify-content:center;cursor:pointer}.user-menu-icon{width:17px;height:17px;flex:0 0 auto;color:var(--text-muted)}.user-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);font-size:.825rem;font-weight:600}.chat-header .user-email,.chat-header .user-menu-chevron{display:none}.user-menu-chevron{width:15px;height:15px;margin-left:auto;flex:0 0 auto;color:var(--text-muted);transition:transform .18s ease}.user-menu-chevron.is-open{transform:rotate(180deg)}.user-menu-dropdown{position:absolute;top:calc(100% + .5rem);right:0;display:flex;flex-direction:column;width:min(18rem,calc(100vw - 2rem));min-width:0;max-width:calc(100vw - 2rem);max-height:calc(100vh - 6rem);max-height:calc(100dvh - 6rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain;overflow-wrap:anywhere;padding:.4rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);z-index:50}.user-menu-item{width:100%;padding:.65rem .75rem;border:0;border-radius:9px;background:transparent;color:var(--text-secondary);text-align:left;font:inherit;font-size:.85rem;font-weight:600;flex-shrink:0;min-width:0;white-space:normal;overflow-wrap:anywhere;cursor:pointer;transition:background-color .16s ease,color .16s ease}.user-menu-item:hover:not(:disabled),.user-menu-item:focus-visible{outline:none;color:var(--text-primary);background:var(--bg-subtle)}.user-menu-item-accent{color:var(--accent-text)}.user-menu-item-danger{color:var(--danger)}.user-menu-divider{height:1px;margin:.35rem 0;background:var(--border)}.mobile-menu-button{display:none;background:none;border:none;padding:.5rem;cursor:pointer;color:var(--text-secondary);font-size:1.5rem}@media (max-width: 768px){.mobile-menu-button{display:block}}.message-list-shell{position:relative;display:flex;flex:1;min-width:0;min-height:0}.message-list-container{flex:1;overflow-y:auto;overflow-x:hidden;background:var(--bg-canvas);padding:clamp(1rem,2.5vw,2rem) clamp(1rem,2.5vw,2rem) .5rem;min-height:0;display:flex;justify-content:flex-start;position:relative;overscroll-behavior-y:contain;scrollbar-gutter:stable}.message-list{width:100%;max-width:none;padding:.5rem 0 2rem;margin:0}.message-list-header{position:absolute;top:.75rem;right:1rem;z-index:2}.clear-button{border:1px solid var(--border);border-radius:9px;padding:.45rem .7rem;color:var(--text-muted);background:var(--bg-elevated);cursor:pointer;box-shadow:var(--shadow-sm)}.message-bubble{display:flex;width:100%;min-width:0;margin-bottom:1rem}.message-bubble.bot{justify-content:flex-start;align-items:flex-start}.message-bubble.user{justify-content:flex-end;align-items:flex-end;margin-left:auto}.message-content{width:fit-content;min-width:0;max-width:min(76%,78ch);padding:.9rem 1rem;border-radius:16px;word-wrap:break-word;overflow-wrap:break-word;line-height:1.62;font-size:.9625rem;box-shadow:var(--shadow-sm);transition:border-color .16s ease,background-color .16s ease}.message-bubble.bot .message-content{background:var(--bubble-assistant);color:var(--text-primary);border:1px solid var(--border);border-radius:16px 16px 16px 6px;box-shadow:var(--shadow-sm)}.message-bubble.user .message-content{background:var(--bubble-user);color:var(--text-primary);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));max-width:min(66%,62ch);border-radius:16px 16px 6px;box-shadow:var(--shadow-sm)}.message-bubble .message-content:hover{border-color:var(--border-strong)}.message-bubble.user .message-content:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.message-list>.message{display:flex;width:100%;min-width:0;margin-bottom:1rem}.message-list>.message.bot{justify-content:flex-start;align-items:flex-start}.message-list>.message.user{justify-content:flex-end;align-items:flex-end}.message-list>.message>.message-content,.message-list>.message>p{min-width:0;max-width:min(76%,78ch)}.message-list>.message.bot>.message-content{color:var(--text-primary);background:var(--bubble-assistant);border:1px solid var(--border);border-radius:16px 16px 16px 6px}.message-list>.message.user>.message-content{color:var(--text-primary);background:var(--bubble-user);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));max-width:min(66%,62ch);border-radius:16px 16px 6px}.typing-status-indicator{display:inline-flex;align-items:center;gap:.55rem;min-height:42px;padding:.65rem .85rem;color:var(--text-secondary);background:var(--bubble-assistant);border:1px solid var(--border);border-radius:14px 14px 14px 6px;box-shadow:var(--shadow-sm);font-size:.85rem;font-weight:500}.typing-status-indicator.is-compact{min-height:28px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}.typing-status-indicator .app-icon{color:var(--text-primary)}.cssYazan,.cssYazan small{color:var(--text-muted)}.milvus-sources-section{margin-top:.75rem;padding:.8rem;color:var(--text-secondary);background:var(--bg-subtle);border:1px solid var(--border);border-radius:12px}.milvus-download-btn{width:36px;height:36px;min-width:36px;color:var(--text-secondary);background:transparent;border-color:var(--border)}.message-text{margin:0;line-height:1.62;color:var(--text-primary)}.message-text h1,.message-text h2,.message-text h3,.message-text h4{margin:1.15rem 0 .55rem;color:var(--text-primary);font-weight:700;line-height:1.3;letter-spacing:-.012em}.message-text h1:first-child,.message-text h2:first-child,.message-text h3:first-child,.message-text h4:first-child{margin-top:0}.message-text blockquote{margin:.8rem 0;padding:.1rem 0 .1rem .9rem;color:var(--text-secondary);border-left:3px solid var(--border-strong)}.message-text a,.milvus-sources a{color:var(--accent-text);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent-text) 55%,transparent);text-underline-offset:.18em}.message-text pre,.message-text code{border-color:var(--border)}.message-text .code-block-container,.message-text .safe-message-table-wrap{min-width:0;max-width:100%}.message-text pre{max-width:100%;overflow-x:auto}.message-text :not(pre)>code{overflow-wrap:anywhere}.message-text p{margin:.5rem 0}.message-text p:first-child{margin-top:0}.message-text p:last-child{margin-bottom:0}.message-text ol,.message-text ul{margin:.65rem 0;padding-inline-start:1.45rem;list-style-position:outside}.message-text ol{list-style-type:decimal}.message-text ul{list-style-type:disc}.message-text li{margin-bottom:.45rem;padding-inline-start:.2rem;line-height:1.58}.message-text li:last-child{margin-bottom:0}.message-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border);font-size:.75rem;flex-wrap:wrap;gap:.5rem}.message-bubble.bot .message-footer,.message-bubble.user .message-footer{color:var(--text-muted)}.message-footer-info{display:flex;align-items:center;gap:.5rem;min-width:0;flex-wrap:wrap}.message-footer-actions{display:flex;align-items:center;gap:.5rem;min-width:0;flex-wrap:wrap;transition:opacity .16s ease}@media (hover: hover) and (pointer: fine){.message-footer-actions{opacity:.5}.message-bubble:hover .message-footer-actions,.message-bubble:focus-within .message-footer-actions,.message:hover .message-footer-actions,.message:focus-within .message-footer-actions{opacity:1}}.message-input-container{background:linear-gradient(to top,var(--bg-canvas) 72%,transparent);border-top:none;padding:1rem 1.25rem .7rem;flex-shrink:0;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.premium-input-wrapper{display:flex;flex-direction:column;padding:9px;background:var(--composer-bg);position:relative;width:min(100%,var(--chat-column-width));max-width:var(--chat-column-width);border-radius:18px;border:1px solid var(--border);box-shadow:0 12px 36px color-mix(in srgb,#000 16%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:border-color .2s ease,box-shadow .2s ease}.premium-input-wrapper:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 34%,transparent),var(--shadow-md)}.message-input-container.is-read-only .premium-input-wrapper{background:var(--bg-subtle);border-color:var(--border);box-shadow:none}.message-input-container.is-read-only .premium-input-wrapper:focus-within{border-color:var(--border);box-shadow:none}.premium-textarea-container{position:relative;display:flex;align-items:center;width:100%}.premium-textarea{flex-grow:1;min-height:42px;max-height:160px;padding:10px 3.5rem 10px 3rem;border:none;border-radius:12px;font-size:.95rem;resize:none;overflow-y:auto;height:42px;outline:none;font-family:inherit;transition:border-color .2s;color:var(--text-primary);background:transparent}.premium-textarea::placeholder{color:var(--text-secondary)}.premium-textarea:disabled{color:var(--text-muted);background:transparent;opacity:.72;cursor:not-allowed}.premium-send-button{border-radius:12px;width:42px;height:42px;min-width:42px;position:absolute;right:10px;box-shadow:var(--shadow-sm)}.premium-send-button:hover:not(:disabled){transform:translateY(-1px)}.premium-send-button .app-icon{width:18px;height:18px;stroke-width:2.15}.premium-send-button:disabled{color:var(--text-muted);background:var(--bg-muted);box-shadow:none;cursor:not-allowed}.message-action-btn{width:36px;height:36px;min-width:36px;color:var(--text-secondary);border-radius:9px}.message-action-btn:hover:not(:disabled){color:var(--text-primary);background:var(--bg-subtle)}.premium-actions-bar{display:flex;flex-flow:wrap;align-items:center;gap:.5rem;position:absolute;bottom:50%;left:10px;transform:translateY(50%)}.premium-action-icon{display:flex;align-items:center}.premium-attachment-button{color:var(--text-secondary);width:38px;height:38px;min-width:38px;border-radius:10px}.composer-hint{width:min(100%,var(--chat-column-width));margin:8px auto 0;color:var(--text-muted);font-size:.75rem;line-height:1.4;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-inline:4px;text-align:right}.composer-mode-label{flex:0 0 auto;color:var(--text-secondary);font-weight:500}.composer-readonly-note{width:min(100%,var(--chat-column-width));margin:.55rem auto 0;padding-inline:4px;color:var(--text-secondary);font-size:.75rem;line-height:1.4;text-align:left}.selected-files{width:100%;margin:0 0 .4rem;padding:0}.selected-files-container{display:flex;flex-wrap:wrap;gap:.5rem;background:var(--bg-subtle);border:1px solid var(--border);border-radius:.75rem;padding:.5rem}.file-badge{display:flex;align-items:center;gap:.5rem;background:var(--bg-elevated);min-width:0;max-width:min(100%,340px);padding:.35rem .4rem .35rem .65rem;border-radius:.5rem;font-size:.8125rem;color:var(--text-secondary);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.file-badge-name,.file-reference-link,.section-heading-with-icon{display:inline-flex;align-items:center;gap:.4rem}.file-badge-name{min-width:0}.file-badge-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-reference-link{color:var(--accent-text);cursor:pointer;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent-text) 55%,transparent);text-underline-offset:.18em}.file-badge-remove{width:28px;height:28px;min-width:28px;color:var(--danger);border-radius:7px}.file-badge-remove:hover:not(:disabled){color:var(--danger);background:var(--danger-soft);border-color:transparent}.links-section{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}.links-section strong{display:block;font-size:.75rem;font-weight:600;color:var(--text-muted);margin-bottom:.5rem}.links-section a{color:var(--accent-text);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent-text) 55%,transparent);text-underline-offset:.18em;font-size:.8125rem}.links-section a:hover{text-decoration:underline;color:var(--hover-color)}.file-list{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}.file-list em{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:.5rem;font-style:normal}.file-list ul{list-style:none;padding:0;margin:0}.file-list li{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-secondary);margin-bottom:.25rem}.file-list a{color:var(--accent-text);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent-text) 55%,transparent);text-underline-offset:.18em}.file-list a:hover{text-decoration:underline;color:var(--hover-color)}.action-button{background:transparent;border:none;padding:.5rem;border-radius:.5rem;cursor:pointer;color:var(--text-muted);transition:all .2s ease;display:flex;align-items:center;justify-content:center;opacity:.7}.action-button:hover{background:var(--accent-soft);opacity:1;color:var(--accent-text)}.action-button img{width:18px;height:18px;filter:var(--icon-filter);transition:filter .2s ease}.action-button:hover img{filter:var(--icon-filter)}.message-bubble.user .action-button{background:transparent;opacity:.7}.message-bubble.user .action-button:hover{background:var(--accent-soft);opacity:1;color:var(--accent-text)}.message-bubble.user .action-button img{filter:var(--icon-filter);transition:filter .2s ease}.message-bubble.user .action-button:hover img{filter:var(--icon-filter)}.streaming-content{opacity:1;min-height:52px}.streaming-content .message-text:after{content:"";display:inline-block;width:.45rem;height:1em;margin-left:.2rem;vertical-align:-.12em;background:var(--accent);border-radius:2px;animation:stream-caret 1s steps(1,end) infinite}@keyframes stream-caret{0%,48%{opacity:1}49%,to{opacity:0}}.jump-to-latest-button{position:absolute;left:50%;bottom:.85rem;z-index:8;display:inline-flex;align-items:center;gap:.45rem;width:max-content;max-width:calc(100% - 2rem);min-height:38px;padding:.45rem .75rem;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:999px;box-shadow:var(--shadow-md);transform:translate(-50%);cursor:pointer;font:inherit;font-size:.78rem;font-weight:650;white-space:nowrap}.jump-to-latest-button:hover,.jump-to-latest-button:focus-visible{color:var(--accent-text);border-color:color-mix(in srgb,var(--accent) 50%,var(--border));outline:none}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.sidebar-scroll-container::-webkit-scrollbar{width:5px}.sidebar-scroll-container{scrollbar-width:thin;scrollbar-color:transparent transparent}.sidebar-scroll-container:hover,.sidebar-scroll-container:focus-within{scrollbar-color:var(--border-strong) transparent}.sidebar-scroll-container::-webkit-scrollbar-thumb{background:transparent;border-radius:999px}.sidebar-scroll-container:hover::-webkit-scrollbar-thumb,.sidebar-scroll-container:focus-within::-webkit-scrollbar-thumb{background:var(--border-strong)}.sidebar-shell{gap:0;color:var(--text-primary);background:var(--sidebar-bg)}.sidebar-header,.sidebar-history-search,.sidebar-history-list{background:var(--sidebar-bg)}.sidebar-history-list{gap:6px}.sidebar-header{border-bottom:0}.sidebar-brand{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:32px}.sidebar-brand-logo{display:block;width:auto;max-width:88px;max-height:30px;object-fit:contain}:root[data-theme=dark] .sidebar-brand-logo--dark-monochrome{filter:brightness(0) saturate(100%) invert(1)}.sidebar-close-button{margin-left:auto;flex:0 0 auto}.sidebar-brand-name{min-width:0;overflow:hidden;color:var(--text-primary);font-size:.9375rem;font-weight:700;letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap}.sidebar-new-chat-loading{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;border:1px solid var(--border);border-radius:12px;background:var(--bg-elevated)}.sidebar-content{gap:0}.sidebar-new-chat-button,.sidebar-primary-action{color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.sidebar-new-chat-button:hover,.sidebar-primary-action:hover{color:var(--text-primary);background:var(--bg-subtle);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.sidebar-new-chat-button{justify-content:center;width:100%;min-height:44px;padding:0 12px;gap:.625rem;border-radius:12px;font-size:.875rem;font-weight:650}.sidebar-new-chat-button .app-icon{width:17px;height:17px;stroke-width:2}.sidebar-primary-action{position:relative;overflow:hidden;gap:.625rem}.sidebar-primary-action .app-icon{width:17px;height:17px;color:var(--text-muted)}.sidebar-primary-action:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent);opacity:0;transition:opacity .18s ease}.sidebar-primary-action:hover:before{opacity:1}.sidebar-secondary-action{color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);transition:color .16s ease,background-color .16s ease,border-color .16s ease}.sidebar-secondary-action:hover{color:var(--text-primary);background:var(--bg-subtle);border-color:var(--border-strong)}.sidebar-drawer-item{color:var(--text-secondary);background:transparent;transition:color .16s ease,background-color .16s ease}.sidebar-drawer-item:hover{color:var(--text-primary);background:var(--bg-subtle)}.sidebar-drawer-item.is-selected{color:var(--text-primary);background:var(--accent-soft)}.sidebar-drawer-item.is-selected button{color:var(--text-primary)}.sidebar-search-input{width:100%;max-width:none;min-height:40px;color:var(--text-primary);background:var(--bg-muted);border:1px solid var(--border);outline:none;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.sidebar-history-search{position:relative;display:flex;align-items:center;width:100%;padding:.5rem 0}.sidebar-history-search-icon{position:absolute;left:12px;z-index:1;width:16px;height:16px;color:var(--text-muted);pointer-events:none}.sidebar-section-label{padding:5px 8px;color:var(--text-muted);font-size:.75rem;font-weight:500}.sidebar-search-input::placeholder{color:var(--text-secondary)}.sidebar-search-input:focus{background:var(--bg-elevated);border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.sidebar-chat-item{color:var(--text-secondary);background:transparent;border-left:3px solid transparent;border-radius:9px;transition:color .16s ease,background-color .16s ease,border-color .16s ease}.sidebar-chat-item:hover{color:var(--text-primary);background:var(--bg-subtle)}.sidebar-chat-item.is-selected{color:var(--text-primary);background:var(--bg-subtle);border-left-color:var(--accent)}.sidebar-user-footer{display:flex;align-items:center;gap:10px;width:calc(100% - 36px);margin:0 18px 18px;padding:14px 0 0;color:var(--text-primary);background:transparent;border:0;border-top:1px solid var(--border);border-radius:0;cursor:pointer;text-align:left}.sidebar-user-footer:hover .sidebar-user-details strong{color:var(--accent-text)}.sidebar-user-footer:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus-ring)}.sidebar-user-avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;color:var(--text-primary);background:var(--bg-muted);border:1px solid var(--border);border-radius:50%;font-size:.72rem;font-weight:700}.sidebar-user-details{min-width:0}.sidebar-user-details strong,.sidebar-user-details small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-details strong{color:var(--text-primary);font-size:.8125rem;font-weight:600;transition:color .16s ease}.sidebar-user-details small{margin-top:2px;color:var(--text-muted);font-size:.6875rem}.sidebar-options-button,.sidebar-item-action{width:32px;height:32px;min-width:32px}.sidebar-options-button{opacity:0;transition:opacity .16s ease,color .16s ease,background-color .16s ease,border-color .16s ease}.sidebar-chat-item:hover .sidebar-options-button,.sidebar-chat-item:focus-within .sidebar-options-button,.sidebar-options-button:focus-visible{opacity:1}.sidebar-item-icon{color:var(--text-muted)}.sidebar-context-menu,.sidebar-modal-card{color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.sidebar-context-menu-item{color:var(--text-secondary)}.sidebar-context-menu-item:hover{color:var(--text-primary);background:var(--bg-subtle)}.message-list-container::-webkit-scrollbar,.desktop-sidebar::-webkit-scrollbar,.mobile-sidebar::-webkit-scrollbar{width:6px}.message-list-container::-webkit-scrollbar-track,.desktop-sidebar::-webkit-scrollbar-track,.mobile-sidebar::-webkit-scrollbar-track{background:transparent}.message-list-container::-webkit-scrollbar-thumb,.desktop-sidebar::-webkit-scrollbar-thumb,.mobile-sidebar::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.message-list-container::-webkit-scrollbar-thumb:hover,.desktop-sidebar::-webkit-scrollbar-thumb:hover,.mobile-sidebar::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}img[src=""],img:not([src]){display:none}img[alt*=placeholder],img[src*=placeholder]{display:none}img[src=""],img[src=undefined],img[src=null]{display:none!important}@media (max-width: 1024px){.message-content,.message-list>.message>.message-content,.message-list>.message>p{max-width:84%}}@media (max-width: 768px){.message-content,.message-list>.message>.message-content,.message-list>.message>p{max-width:88%;font-size:.875rem;padding:.75rem 1rem}.message-list-container{padding:.75rem}.message-list{padding:.5rem 0}.premium-input-wrapper{width:100%;border-radius:16px}.premium-textarea{min-height:42px;height:42px;font-size:16px;padding:10px 3.5rem 10px 3rem}.premium-send-button{width:42px;height:42px;min-width:42px;right:10px}.premium-actions-bar{bottom:50%;left:10px;gap:.4rem}.selected-files{width:100%}.message-input-container{padding:1rem max(.75rem,env(safe-area-inset-right,0px)) max(.6rem,env(safe-area-inset-bottom,0px)) max(.75rem,env(safe-area-inset-left,0px))}.composer-hint{padding-inline:.5rem;font-size:.6875rem}}@media (max-width: 480px){.message-content,.message-list>.message>.message-content,.message-list>.message>p{max-width:92%;font-size:.8125rem;padding:.625rem .875rem}.message-list-container{padding:.5rem}.message-input-container{padding:.5rem max(.5rem,env(safe-area-inset-right,0px)) max(.5rem,env(safe-area-inset-bottom,0px)) max(.5rem,env(safe-area-inset-left,0px))}.composer-hint{justify-content:center;text-align:center}.composer-mode-label{display:none}.mobile-sidebar{width:min(88vw,320px)}}.mobile-sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999}.mobile-sidebar-overlay.active{display:block}@media (min-width: 769px){.mobile-sidebar-overlay{display:none!important}}@container chat-main (max-width: 1440px){.header-desktop-action{display:none}.user-menu-trigger{max-width:230px}}@container chat-main (max-width: 900px){.chat-header{padding:.55rem .65rem;min-height:58px;gap:.45rem}.chat-header-left,.chat-header-right{gap:.4rem}.model-select{min-width:105px;width:120px;max-width:120px;padding:.45rem 1.65rem .45rem .6rem;font-size:.8rem}.header-control{min-height:38px;border-radius:10px}.header-icon-button{width:40px}.theme-toggle-label,.user-email,.user-menu-chevron{display:none}.theme-toggle-button,.user-menu-trigger{min-width:40px;width:40px;padding:0;justify-content:center}.user-menu-dropdown{min-width:0}}@media (pointer: coarse){.icon-button,.message-action-btn,.milvus-download-btn,.sidebar-options-button,.sidebar-item-action,.file-badge-remove{width:44px;height:44px;min-width:44px}.header-icon-button,.theme-toggle-button,.user-menu-trigger{width:44px;min-width:44px;min-height:44px}.premium-send-button{width:44px;height:44px;min-width:44px}.sidebar-options-button{opacity:1}}@container chat-main (max-width: 520px){.chat-header{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"left right" "center center";row-gap:.55rem}.chat-header-left{grid-area:left}.chat-header-center{display:flex;grid-area:center}.chat-header-right{grid-area:right}}@media (max-width: 520px){.chat-header{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"left right" "center center";padding:max(.55rem,env(safe-area-inset-top,0px)) max(.65rem,env(safe-area-inset-right,0px)) .55rem max(.65rem,env(safe-area-inset-left,0px));gap:.45rem}.chat-header-left{grid-area:left}.chat-header-center{grid-area:center}.chat-header-right{grid-area:right}.header-desktop-action{display:none}.model-select-label{flex:1;min-width:0}.chat-header .model-select{width:100%;min-width:0;max-width:180px;font-size:16px}.chat-header .header-control{flex-shrink:0}.chat-header .user-menu-dropdown{position:fixed;inset:auto max(.75rem,env(safe-area-inset-right,0px)) auto max(.75rem,env(safe-area-inset-left,0px));top:calc(4rem + env(safe-area-inset-top,0px));width:auto;max-width:none;min-width:0}.chat-header .user-menu-item{min-height:44px}.mobile-sidebar{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app-dialog-backdrop{padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));overflow-y:auto;overscroll-behavior:contain}.app-dialog-panel{box-sizing:border-box;min-width:0;max-width:100%;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow-y:auto;overflow-wrap:anywhere;overscroll-behavior:contain}.app-dialog-panel :where(input,textarea,select){max-width:100%;min-width:0}.app-dialog-panel :where(button){max-width:100%;white-space:normal;overflow-wrap:anywhere}.app-dialog-panel pre{max-width:100%;overflow-x:auto}.query-dialog-panel{display:flex;flex-direction:column;color:var(--text-primary)}.query-dialog-close{flex-shrink:0;min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:8px;background:var(--bg-muted);color:var(--text-primary);font-size:1.5rem;cursor:pointer}@media (max-width: 600px){.app-dialog-panel :where(input,textarea,select){font-size:16px!important}.app-dialog-panel :where(h2,h3){overflow-wrap:anywhere}.app-dialog-actions{display:flex;flex-wrap:wrap;gap:8px}.app-dialog-actions>button{flex:1 1 120px}}
