:root{--brand-primary:#43bce3;--brand-primary-dark:#168db8;--brand-primary-light:#8fd9ef;--brand-surface:#eaf8fd;--brand-border:#c9eaf4;--bg:#f4fbfe;--fg:#252b2e;--fg-muted:#66747b;--accent:var(--brand-primary)}html,body,#root{height:100%;overflow:hidden}body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Noto Sans SC,system-ui,-apple-system,sans-serif}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#43bce33d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#43bce366}::selection{color:var(--fg);background:#43bce329}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.papers-panel{background:#fff;border:1px solid #d4edda;border-radius:10px;margin-top:12px;overflow:hidden}.papers-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:10px 14px;transition:background .15s;display:flex}.papers-header:hover{background:#f5f0eb}.papers-icon{font-size:16px}.papers-title{color:var(--fg);font-size:13px;font-weight:600}.papers-list{flex-direction:column;gap:8px;padding:0 14px 12px;display:flex}.paper-item{background:#faf9f6;border:1px solid #e0e0e0;border-radius:8px;padding:10px 12px}.paper-title{color:var(--fg);margin-bottom:4px;font-size:14px;font-weight:600;line-height:1.4}.paper-meta{color:var(--fg-muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;display:flex}.paper-authors{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.paper-divider{color:#d6d3c9}.paper-journal{font-style:italic}.paper-footer{align-items:center;gap:10px;margin-top:6px;display:flex}.paper-citations{color:var(--accent);font-size:11px;font-weight:500}.paper-link{color:#4caf50;font-size:11px;font-weight:500;text-decoration:none}.paper-link:hover{text-decoration:underline}.auth-page{background:#fbfdfe;width:100vw;height:100vh;display:flex}.auth-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000059;justify-content:center;align-items:center;position:fixed;inset:0}.auth-overlay .auth-visual{display:none}.auth-overlay .auth-form-section{background:#fff;border-radius:20px;width:480px;max-width:90vw;padding:40px 36px;animation:.3s authSlideUp;box-shadow:0 24px 64px #0003}@keyframes authSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-visual{background:#57c1e7;flex:0 0 66%;justify-content:center;align-items:center;width:66%;display:flex;position:relative;overflow:hidden}.auth-visual-art{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.auth-form-section{flex-direction:column;justify-content:center;width:34%;min-width:420px;max-width:560px;padding:48px 56px;display:flex;overflow-y:auto}.auth-form-section>*{flex-shrink:0}.auth-back{color:#666;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:20px;padding:4px 0;font-size:14px;transition:color .15s;display:inline-flex}.auth-back:hover{color:var(--brand-primary-dark)}.auth-mode-tabs{background:#f2f4f5;border-radius:10px;gap:0;margin-bottom:24px;padding:4px;display:flex}.auth-form-header{margin-bottom:28px}.auth-form-header h1{color:#333;margin-bottom:6px;font-size:26px;font-weight:700}.auth-form-header p{color:#666;font-size:14px}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-form-row{flex-direction:column;gap:6px;display:flex}.auth-form-row-double{grid-template-columns:1fr 1fr;gap:12px;display:grid}.auth-form-row label{color:#333;font-size:13px;font-weight:600}.auth-input-wrap{align-items:center;display:flex;position:relative}.auth-input-icon{color:#999;pointer-events:none;align-items:center;display:flex;position:absolute;left:14px}.auth-input{color:#333;background:#fbfdfe;border:1.5px solid #e0e0e0;border-radius:12px;outline:none;width:100%;padding:11px 14px 11px 42px;font-family:inherit;font-size:14px;transition:all .15s}.auth-input:hover{border-color:var(--brand-border)}.auth-input:focus{border-color:var(--brand-primary);background:#fff;box-shadow:0 0 0 3px #43bce31f}.auth-toggle-password{color:#999;cursor:pointer;background:0 0;border:none;align-items:center;padding:4px;transition:color .15s;display:flex;position:absolute;right:12px}.auth-toggle-password:hover{color:#666}.auth-submit{color:#fff;cursor:pointer;background:linear-gradient(90deg,#58c3e6 0%,#32b5db 100%);border:none;border-radius:12px;width:100%;margin-top:4px;padding:12px 0;font-family:inherit;font-size:15px;font-weight:700;transition:all .2s}.auth-submit:hover:not(:disabled){background:linear-gradient(90deg,#42b7dd 0%,#209ec9 100%);transform:translateY(-1px);box-shadow:0 4px 16px #168db83d}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:500}.auth-success{color:#16a34a;text-align:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:12px 14px;font-size:14px;font-weight:600}.auth-switch{color:#666;margin-top:16px;font-size:14px}.auth-switch button{color:var(--brand-primary-dark);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:14px;font-weight:700;transition:color .15s}.auth-switch button:hover{color:#0f789f;text-decoration:underline}@media (width<=900px){.auth-page:not(.auth-overlay){flex-direction:column;overflow-y:auto}.auth-visual{flex:0 0 220px;width:100%;min-height:220px;padding:0}.auth-visual-art{-o-object-position:center 43%;object-position:center 43%}.auth-form-section{width:100%;min-width:0;max-width:none;padding:28px 24px}.auth-form-row-double{grid-template-columns:1fr}}@media (height<=760px) and (width>=901px){.auth-form-section{justify-content:flex-start;padding-top:24px;padding-bottom:24px}}.profile-overlay{z-index:250;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000059;justify-content:flex-end;display:flex;position:fixed;inset:0}.profile-modal{background:#fff;flex-direction:column;width:520px;max-width:90vw;height:100%;animation:.25s profileSlideIn;display:flex;box-shadow:-4px 0 24px #0000001f}@keyframes profileSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.profile-header{border-bottom:1px solid #e0e0e0;flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.profile-header-info{align-items:center;gap:14px;display:flex}.profile-avatar-large{color:#999;background:#f1fafd;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.profile-header h2{color:#333;font-size:17px;font-weight:700}.profile-header p{color:#666;margin-top:2px;font-size:13px}.profile-close{cursor:pointer;color:#999;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .15s;display:flex}.profile-close:hover{color:#333;background:#edece6}.profile-tabs{border-bottom:1px solid #e0e0e0;flex-shrink:0;gap:4px;padding:12px 16px;display:flex;overflow-x:auto}.profile-tab{color:#666;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.profile-tab:hover{color:#333;background:#f1fafd}.profile-tab.active{color:#168db8;background:#eaf8fd}.profile-body{flex:1;padding:20px 24px;overflow-y:auto}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px;display:grid}.stat-card{text-align:center;background:#fafaf8;border:1px solid #e0e0e0;border-radius:14px;padding:16px}.stat-value{color:#43bce3;margin-bottom:4px;font-size:22px;font-weight:700}.stat-value.stat-email{word-break:break-all;color:#333;font-size:13px}.stat-label{color:#666;font-size:12px;font-weight:500}.info-list{flex-direction:column;gap:10px;display:flex}.info-item{background:#fafaf8;border:1px solid #e0e0e0;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.info-label{color:#666;font-size:13px;font-weight:500}.info-value{color:#333;font-size:13px;font-weight:600}.pwd-form{flex-direction:column;gap:14px;display:flex}.pwd-field{flex-direction:column;gap:6px;display:flex}.pwd-label{color:#333;font-size:13px;font-weight:600}.pwd-input{color:#333;background:#fafaf8;border:1.5px solid #e0e0e0;border-radius:10px;outline:none;width:100%;padding:10px 14px;font-family:inherit;font-size:14px;transition:all .15s}.pwd-input:focus{background:#fff;border-color:#43bce3;box-shadow:0 0 0 3px #5b8c5a1a}.pwd-toggle-eye{color:#999;cursor:pointer;background:0 0;border:none;align-items:center;padding:4px;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.pwd-msg{border-radius:10px;padding:10px 14px;font-size:13px;font-weight:500}.pwd-msg-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.pwd-msg-success{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0}.pwd-submit-btn{color:#fff;cursor:pointer;background:#43bce3;border:none;border-radius:12px;width:100%;padding:11px 0;font-family:inherit;font-size:14px;font-weight:700;transition:all .2s}.pwd-submit-btn:hover:not(:disabled){background:#168db8}.pwd-submit-btn:disabled{opacity:.6;cursor:not-allowed}.history-empty{text-align:center;color:#999;padding:48px 0}.history-item{background:#fafaf8;border:1px solid #e0e0e0;border-radius:12px;margin-bottom:10px;overflow:hidden}.history-item-header{cursor:pointer;justify-content:space-between;align-items:center;padding:12px 14px;transition:background .15s;display:flex}.history-item-header:hover{background:#f1fafd}.history-query{align-items:center;gap:8px;min-width:0;display:flex}.history-query-text{color:#333;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.history-date{color:#999;flex-shrink:0;font-size:12px}.history-item-body{background:#fff;border-top:1px solid #e0e0e0;padding:12px 14px}.history-answer-block{color:#333;margin-bottom:10px;font-size:13px;line-height:1.6}.history-thinking-block{background:#f1fafd;border-radius:10px;padding:12px}.history-thinking-title{color:#43bce3;margin-bottom:6px;font-size:12px;font-weight:700}.history-thinking-content{color:#666;font-size:12px;line-height:1.5}.history-sources-list{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.history-source-tag{color:#43bce3;background:#5b8c5a14;border-radius:4px;padding:2px 8px;font-size:11px}.feedback-form{flex-direction:column;gap:14px;display:flex}.feedback-field{flex-direction:column;gap:6px;display:flex}.feedback-type-group{flex-wrap:wrap;gap:8px;display:flex}.feedback-type-btn{color:#666;cursor:pointer;background:#fafaf8;border:1.5px solid #e0e0e0;border-radius:10px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s}.feedback-type-btn:hover{color:#333;border-color:#c8e6c9}.feedback-type-btn.active{color:#168db8;background:#eaf8fd;border-color:#43bce3}.feedback-textarea{color:#333;resize:vertical;background:#fafaf8;border:1.5px solid #e0e0e0;border-radius:10px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:14px;transition:all .15s}.feedback-textarea:focus{background:#fff;border-color:#43bce3;box-shadow:0 0 0 3px #5b8c5a1a}.feedback-char-count{text-align:right;color:#999;margin-top:2px;font-size:11px}.profile-footer{border-top:1px solid #e0e0e0;flex-shrink:0;padding:16px 24px 20px}.profile-logout-btn{color:#dc2626;cursor:pointer;background:#f1fafd;border:1px solid #e0e0e0;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:11px 0;font-family:inherit;font-size:14px;font-weight:700;transition:all .15s;display:flex}.profile-logout-btn:hover{background:#fef2f2;border-color:#fecaca}@media (width<=600px){.profile-modal{width:100%;max-width:100%}.stats-grid{grid-template-columns:1fr}}.scene-switcher{text-align:left;background:#eaf8fdd1;border:1px solid #c9eaf4;border-radius:14px;max-width:600px;margin:16px auto;padding:16px 20px}.scene-switcher-header{align-items:center;gap:6px;margin-bottom:12px;display:flex}.scene-switcher-icon{color:#168db8;flex-shrink:0}.scene-switcher-title{color:#245b70;font-size:14px;font-weight:600}.scene-tabs{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.scene-tab{cursor:pointer;color:#374151;background:#fff;border:1px solid #d1fae5;border-radius:16px;align-items:center;gap:4px;padding:6px 12px;font-size:13px;transition:all .2s;display:flex}.scene-tab:hover{background:#f4fbfe;border-color:#8fd9ef}.scene-tab.active{color:#fff;background:#43bce3;border-color:#43bce3;font-weight:600;box-shadow:0 2px 8px #168db833}.scene-tab-icon{flex-shrink:0;width:14px;height:14px}.scene-tab-label{font-size:13px;line-height:1}.scene-suggestions{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.scene-suggestions-label{color:#6b7280;white-space:nowrap;align-items:center;gap:4px;font-size:13px;line-height:32px;display:inline-flex}.scene-suggestions-list{flex-wrap:wrap;gap:6px;display:flex}.scene-suggestion-chip{color:#374151;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:6px 12px;font-size:12.5px;line-height:1.3;transition:all .2s}.scene-suggestion-chip:hover{color:#168db8;background:#f4fbfe;border-color:#8fd9ef}@media (width<=600px){.scene-switcher{margin:12px 8px;padding:12px 14px}.scene-tabs{gap:4px}.scene-tab,.scene-suggestion-chip{padding:5px 10px;font-size:12px}}.kg-panel{background:#fafbfc;border:1px solid #e0e0e0;border-radius:10px;margin:12px 0;overflow:hidden}.kg-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#f1f8e9 0%,#e8f5e9 100%);border-bottom:1px solid #e0e0e0;align-items:center;gap:10px;padding:10px 14px;display:flex}.kg-header:hover{background:linear-gradient(135deg,#e8f5e9 0%,#dcedc8 100%)}.kg-header-left{flex-shrink:0;align-items:center;gap:8px;display:flex}.kg-icon{font-size:16px}.kg-title{color:#2e7d32;font-size:13px;font-weight:600}.kg-stats{color:#78909c;white-space:nowrap;font-size:11px}.kg-type-badges{flex-wrap:wrap;flex:1;justify-content:flex-end;gap:6px;display:flex}.kg-type-badge{white-space:nowrap;background:#fff;border:1px solid;border-radius:10px;padding:2px 7px;font-size:10px}.kg-chevron{color:#90a4ae;flex-shrink:0;font-size:10px;transition:transform .2s}.kg-chevron.expanded{transform:rotate(180deg)}.kg-body{padding:12px}.kg-reasoning{background:#fff;border:1px solid #e8e8e8;border-radius:8px;margin-bottom:12px;padding:10px 12px}.kg-reasoning-label{color:#455a64;margin-bottom:8px;font-size:12px;font-weight:600}.kg-reasoning-steps{flex-wrap:wrap;align-items:flex-start;gap:0;display:flex}.kg-reasoning-step{align-items:center;gap:6px;display:flex}.kg-reasoning-step:not(:last-child):after{content:"→";color:#b0bec5;margin:0 4px;font-size:14px}.kg-step-num{color:#2e7d32;background:#e8f5e9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:inline-flex}.kg-step-text{color:#546e7a;font-size:11px;line-height:1.4}.kg-graph-container{background:#fff;border:1px solid #e8e8e8;border-radius:8px;justify-content:center;padding:8px;display:flex;position:relative;overflow:hidden}.kg-svg{touch-action:none;max-width:100%;height:auto;display:block}.kg-canvas-controls{z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffe6;border-radius:8px;align-items:center;gap:4px;padding:3px 6px;display:flex;position:absolute;top:8px;right:8px;box-shadow:0 1px 3px #00000014}.kg-ctrl-btn{cursor:pointer;color:#546e7a;background:#fff;border:1px solid #e0e0e0;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex}.kg-ctrl-btn:hover{color:#2e7d32;background:#e8f5e9;border-color:#43bce3}.kg-ctrl-btn:active{transform:scale(.95)}.kg-canvas-hint{color:#90a4ae;white-space:nowrap;-webkit-user-select:none;user-select:none;padding:0 4px;font-size:10px}.kg-node circle{transition:opacity .2s,stroke-width .15s}.kg-node.hovered circle{filter:drop-shadow(0 2px 6px #0003)}.kg-node.selected circle{filter:drop-shadow(0 2px 8px #0000004d)}.kg-node.dimmed{opacity:.35}.kg-edge line{transition:stroke .2s,stroke-width .15s}.kg-edge.highlighted line{stroke:#43bce3}.kg-legend{flex-wrap:wrap;justify-content:center;gap:12px;padding:8px 0 4px;display:flex}.kg-legend-item{color:#546e7a;align-items:center;gap:4px;font-size:11px;display:flex}.kg-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.kg-detail{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-top:10px;padding:12px}.kg-detail-header{align-items:center;gap:8px;margin-bottom:8px;font-size:14px;font-weight:600;display:flex}.kg-detail-type{color:#90a4ae;background:#f5f5f5;border-radius:8px;padding:2px 8px;font-size:10px}.kg-detail-attrs{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.kg-attr-tag{background:#f5f5f5;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;display:inline-flex}.kg-attr-key{color:#90a4ae}.kg-attr-val{color:#37474f;font-weight:500}.kg-detail-relations{border-top:1px solid #f0f0f0;padding-top:8px}.kg-relation-item{align-items:center;gap:6px;padding:3px 0;font-size:12px;display:flex}.kg-relation-dir{color:#b0bec5;text-align:center;width:14px;font-size:14px}.kg-relation-type{color:#2e7d32;background:#e8f5e9;border-radius:6px;padding:1px 6px;font-size:10px}.kg-relation-target{color:#37474f;font-weight:500}@media (width<=600px){.kg-type-badges{display:none}.kg-graph-container{padding:4px}}:root{--primary:#43bce3;--primary-dark:#168db8;--primary-light:#8fd9ef;--bg:#f1fafd;--card:#fff;--border:#d9e9ef;--text:#252b2e;--text-secondary:#66747b;--text-muted:#91a0a7;--hover-bg:#eaf8fd;--active-bg:#ddf4fb;--active-text:#168db8;--user-bubble:#fff;--ai-bubble:#eaf8fd}*{box-sizing:border-box;margin:0;padding:0}html,body,#root,.app-wrapper{height:100%;overflow:hidden}body{color:var(--text);-webkit-font-smoothing:antialiased;background:#fbfdfe;font-family:Noto Sans SC,system-ui,-apple-system,sans-serif}.app-container{height:100vh;display:flex}.sidebar{border-right:1px solid var(--border);background:linear-gradient(#f7fcfe 0%,#eaf8fd 100%);flex-direction:column;width:288px;min-width:288px;transition:transform .3s,min-width .3s,width .3s;display:flex;overflow:hidden}.sidebar.collapsed{border-right:none;width:0;min-width:0}.floating-logo{z-index:99;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;transition:all .2s;display:flex;position:fixed;top:16px;left:16px;overflow:hidden;box-shadow:0 2px 10px #168db81f}.floating-logo:hover{transform:scale(1.05);box-shadow:0 4px 14px #168db833}.floating-logo .brand-logo-image{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.sidebar-inner{flex-direction:column;width:288px;min-width:288px;height:100%;display:flex}.sidebar-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:26px 16px 16px;display:flex;position:relative}.sidebar-header-info{justify-content:center;align-items:center;width:100%;display:flex}.sidebar-logo{width:72px;height:94px;color:var(--primary);background:#53bfe4;border:1px solid #ffffffb3;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.sidebar-logo .brand-logo-image{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.sidebar-title{color:var(--text);font-size:18px;font-weight:700}.btn-close-sidebar{cursor:pointer;width:36px;height:36px;color:var(--text-secondary);background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;font-size:18px;transition:all .15s;display:flex;position:absolute;top:24px;right:10px}.btn-close-sidebar:hover{background:var(--hover-bg);color:var(--text)}.btn-new-chat{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;width:calc(100% - 32px);height:48px;margin:0 16px 16px;font-size:15px;font-weight:600;transition:all .2s;display:flex}.btn-new-chat:hover{background:var(--primary-dark)}.sidebar-section-label{color:var(--text-secondary);flex-shrink:0;padding:4px 20px 10px;font-size:13px;font-weight:600}.sidebar-list{flex:1;padding:0 16px 16px;overflow-y:auto}.conv-card{cursor:pointer;border-radius:16px;align-items:flex-start;gap:12px;margin-bottom:8px;padding:14px 16px;transition:all .2s;display:flex;position:relative}.conv-card.active{background:var(--primary);color:#fff}.conv-card.active .conv-card-icon svg,.conv-card.active .conv-card-title{color:#fff}.conv-card.active .conv-card-subtitle,.conv-card.active .conv-card-time{color:#ffffffb3}.conv-card.active .conv-card-del:hover{color:#fff}.conv-card-icon{background:#43bce31a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.conv-card-body{flex:1;min-width:0}.conv-card-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.conv-card-subtitle{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:12px;overflow:hidden}.conv-card-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.conv-card-time{color:var(--text-muted);font-size:11px}.conv-card-del{opacity:0;cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:14px;transition:all .15s}.conv-card:hover .conv-card-del{opacity:1}.conv-card-del:hover{color:#dc2626}.sidebar-bottom{border-top:1px solid var(--border);flex-shrink:0;padding:12px 16px 16px}.user-card{cursor:pointer;border:1px solid var(--border);background:var(--card);border-radius:14px;align-items:center;gap:12px;padding:10px 12px;transition:background .15s;display:flex}.user-card:hover{background:var(--hover-bg)}.user-card-avatar{background:var(--bg);width:36px;height:36px;color:var(--text-muted);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.user-card-body{flex:1;min-width:0}.user-card-name{color:var(--text);font-size:14px;font-weight:600}.user-card-status{color:var(--text-secondary);margin-top:1px;font-size:12px}.user-card-arrow{color:var(--text-muted);flex-shrink:0}.main{background:linear-gradient(#fff 0%,#f4fbfe 100%);flex-direction:column;flex:1;min-width:0;display:flex}.header{border-bottom:1px solid var(--border);background:#ffffffe0;flex-shrink:0;align-items:center;gap:12px;padding:12px 20px;display:flex}.btn-menu{cursor:pointer;width:36px;height:36px;color:var(--text-secondary);background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;transition:all .15s;display:flex}.btn-menu:hover{background:var(--hover-bg);color:var(--text)}.header-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:15px;font-weight:600;overflow:hidden}.header-subtitle{color:var(--text-muted);margin-left:8px;font-size:11px}.messages{flex:1;padding:0;overflow-y:auto}.messages-inner{flex-direction:column;gap:24px;max-width:860px;margin:0 auto;padding:24px;display:flex}.welcome{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:64vh;display:flex}.welcome-icon{background:#53bfe4;border:1px solid #fffc;border-radius:8px;justify-content:center;align-items:center;width:104px;height:136px;margin-bottom:22px;display:flex;overflow:hidden;box-shadow:0 10px 30px #168db82e}.welcome-icon .brand-logo-image{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.welcome h2{color:var(--text);letter-spacing:0;margin-bottom:8px;font-size:26px;font-weight:650}.welcome p{color:var(--text-secondary);max-width:400px;font-size:14px;line-height:1.6}.msg{opacity:0;animation:.3s forwards fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.msg.user{justify-content:flex-end;animation-name:userSlideIn;display:flex}@keyframes userSlideIn{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.msg.ai{animation-name:aiSlideIn}@keyframes aiSlideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.msg-user-wrap{align-items:flex-start;gap:6px;max-width:80%;display:flex}.user-copy-btn{opacity:0;cursor:pointer;color:var(--text-muted);background:linear-gradient(135deg,#43bce308,#8fd9ef0f);border:1.5px solid #43bce326;border-radius:10px;flex-shrink:0;align-items:center;height:34px;margin-top:8px;padding:6px 10px;transition:all .2s;display:flex;box-shadow:0 1px 3px #0000000a}.msg-user-wrap:hover .user-copy-btn{opacity:1}.user-copy-btn:hover{color:#168db8;background:linear-gradient(135deg,#43bce31a,#8fd9ef26);border-color:#8fd9ef;transform:translateY(-1px);box-shadow:0 3px 8px #43bce31f}.user-copy-btn:hover svg{transform:scale(1.15)}.user-copy-btn.copied{color:#059669;background:linear-gradient(135deg,#05966914,#22c55e1f);border-color:#22c55e;box-shadow:0 2px 8px #05966926}.msg.user .msg-bubble{background:var(--user-bubble);color:var(--text);border:1px solid #e0e0e0;border-radius:16px 4px 16px 16px;max-width:80%;padding:12px 18px;font-size:14px;line-height:1.6;box-shadow:0 1px 2px #0000000a}.msg.ai .msg-content{color:var(--text);background:var(--ai-bubble);border:1px solid #d4edda;border-radius:4px 16px 16px;padding:12px 16px;font-size:14px;line-height:1.55}.msg.ai .msg-time{color:var(--text-muted);margin-top:4px;font-size:11px}.markdown-body{line-height:1.55}.markdown-body h1{margin:12px 0 6px;font-size:1.25em;font-weight:600}.markdown-body h2{margin:10px 0 4px;font-size:1.15em;font-weight:600}.markdown-body h3{margin:8px 0 4px;font-size:1.05em;font-weight:600}.markdown-body h4{margin:6px 0 4px;font-size:1em;font-weight:600}.markdown-body code{background:#0000000f;border-radius:4px;padding:1px 5px;font-size:.9em}.markdown-body pre{color:#d4d4d4;background:#1e1e1e;border-radius:10px;margin:8px 0;padding:12px;overflow-x:auto}.markdown-body pre code{color:inherit;background:0 0;padding:0}.markdown-body strong{font-weight:600}.markdown-body blockquote{border-left:3px solid var(--primary);color:var(--text-secondary);margin:8px 0;padding-left:12px}.markdown-body table{border-collapse:collapse;width:100%;margin:10px 0;font-size:13px}.markdown-body thead th{background:var(--primary-dark);color:#fff;text-align:left;letter-spacing:.02em;padding:8px 12px;font-size:12px;font-weight:600}.markdown-body thead th:first-child{border-radius:10px 0 0}.markdown-body thead th:last-child{border-radius:0 10px 0 0}.markdown-body tbody td{border-bottom:1px solid var(--border);padding:7px 12px}.markdown-body tbody tr:last-child td{border-bottom:none}.thinking-section{margin-bottom:12px}.thinking-toggle{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:6px 8px;font-size:13px;transition:all .15s;display:flex}.thinking-toggle:hover{background:var(--hover-bg)}.thinking-toggle svg{color:var(--primary)}.thinking-body{background:var(--bg);color:var(--text-secondary);border-radius:12px;margin-top:4px;padding:12px 14px;font-size:13px;line-height:1.6}.thinking-sources{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.thinking-source-tag{color:var(--primary);background:#43bce314;border-radius:4px;padding:2px 8px;font-size:11px}.thinking-dot{background:var(--primary);border-radius:50%;width:6px;height:6px;margin-left:4px;animation:1.5s ease-in-out infinite pulse}.stage-process{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.stage-item{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:14px 16px;transition:border-color .3s,background .3s;animation:.35s cubic-bezier(.16,1,.3,1) both stageFadeIn}.stage-item.active{border-color:var(--primary-light);background:#8fd9ef0a}.stage-item.done{background:#fafbfc;border-color:#e2e8f0}.intent-stage.active{animation:.4s cubic-bezier(.16,1,.3,1) both intentAppear}.intent-stage.done{animation:none}@keyframes intentAppear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes stageFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.stage-header{align-items:center;gap:10px;display:flex}.stage-icon-wrap{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;transition:background .3s,color .3s;display:flex}.stage-item.active .stage-icon-wrap,.stage-item.done .stage-icon-wrap{background:var(--primary);color:#fff}.stage-item .stage-icon-wrap svg{width:15px;height:15px}.stage-label{color:var(--text);flex:1;font-size:13px;font-weight:600}.stage-badge-loading{color:var(--primary);background:#8fd9ef1f;border-radius:6px;align-items:center;gap:4px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.stage-badge-loading:before{content:"";background:var(--primary);border-radius:50%;width:6px;height:6px;animation:1.5s ease-in-out infinite pulse}.stage-badge-done{color:var(--primary-dark);background:#2e7d3214;border-radius:6px;padding:2px 8px;font-size:10px;font-weight:600}.intent-card{margin-top:12px}.intent-row{align-items:flex-start;gap:10px;padding:6px 0;animation:.3s cubic-bezier(.16,1,.3,1) both intentRowIn;display:flex}.intent-row+.intent-row{border-top:1px solid #0000000a;margin-top:4px;padding-top:8px}.intent-row:nth-child(2){animation-delay:80ms}.intent-row:nth-child(3){animation-delay:.16s}@keyframes intentRowIn{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.intent-section-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;min-width:52px;padding-top:3px;font-size:11px;font-weight:600}.intent-warning-label{color:#d97706}.intent-type-badge{color:var(--primary-dark);letter-spacing:.01em;background:#43bce314;border-radius:10px;padding:4px 14px;font-size:13px;font-weight:700}.intent-irrelevant-badge{color:#dc2626;background:#dc26260f;border-radius:6px;padding:3px 10px;font-size:11px;font-weight:500}.intent-relevance-badge{color:#059669;background:#0596690f;border-radius:6px;padding:3px 10px;font-size:11px;font-weight:500}.intent-status-text{color:var(--primary);background:#43bce30a;border-radius:6px;padding:4px 12px;font-size:12px;font-weight:500}.intent-tags{flex-wrap:wrap;flex:1;gap:6px;display:flex}.intent-tag{border-radius:8px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:500;animation:.25s cubic-bezier(.34,1.56,.64,1) both tagPopIn;display:inline-flex}.intent-tag:first-child{animation-delay:.1s}.intent-tag:nth-child(2){animation-delay:.15s}.intent-tag:nth-child(3){animation-delay:.2s}.intent-tag:nth-child(4){animation-delay:.25s}.intent-tag:nth-child(5){animation-delay:.3s}.intent-tag:nth-child(6){animation-delay:.35s}@keyframes tagPopIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.intent-tag.entity-tag{color:#43bce3;background:#43bce314;border:1px solid #43bce31f}.intent-tag-key{color:var(--text-muted);font-weight:400}.intent-tag-value{font-weight:600}.intent-tag.missing-tag{color:#92400e;background:#fef3c7;border:1px solid #92400e26}.intent-queries{flex-wrap:wrap;flex:1;gap:4px;display:flex}.intent-query-pill{color:var(--text-secondary);background:var(--bg);border-radius:5px;padding:3px 10px;font-size:11px;font-style:italic}.cursor-blink:after{content:"▊";color:var(--primary);margin-left:2px;font-size:.9em;animation:1s step-end infinite blink}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.step-box{border:1px solid var(--border);background:var(--card);border-radius:14px;flex-direction:column;margin-bottom:10px;padding:14px 18px;transition:all .35s cubic-bezier(.16,1,.3,1);animation:.3s cubic-bezier(.16,1,.3,1) both stepFadeIn;display:flex}.step-box:nth-child(2){animation-delay:80ms}.step-box:nth-child(3){animation-delay:.16s}.step-box.step-active{border-color:var(--primary-light);background:#8fd9ef05;box-shadow:0 0 0 3px #8fd9ef1f}.step-box.step-done{background:#fafbfc;border-color:#e2e8f0}.step-header{justify-content:space-between;align-items:center;display:flex}.step-label{color:var(--text);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.step-box.step-active .step-label{color:var(--primary)}.step-intent-result{border-top:1px solid #0000000a;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px;display:flex}.step-intent-type{color:var(--primary-dark);background:#43bce314;border-radius:8px;padding:3px 10px;font-size:12px;font-weight:700}.step-entity-tag{color:#43bce3;background:#43bce30f;border:1px solid #43bce31a;border-radius:8px;padding:3px 10px;font-size:11px;font-weight:500}.step-academic-badge{border-radius:8px;padding:3px 10px;font-size:11px;font-weight:600}.step-academic-badge.papers{color:#2563eb;background:#3b82f61a;border:1px solid #3b82f633}.step-academic-badge.expert{color:#9333ea;background:#a855f71a;border:1px solid #a855f733}.step-retrieval-logs{border-top:1px solid #0000000a;flex-direction:column;gap:4px;margin-top:10px;padding-top:10px;display:flex}.step-retrieval-item{color:var(--text-secondary);background:#00000005;border-radius:6px;padding:4px 8px;font-size:12px;animation:.25s cubic-bezier(.16,1,.3,1) both stepFadeIn}.step-retrieval-item:before{content:"✓ ";color:var(--primary);font-weight:600}.step-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;transition:all .3s;display:flex}.step-box.step-active .step-icon{background:#8fd9ef26}.step-box.step-done .step-icon{background:var(--primary);color:#fff}.step-spinner{border:2.5px solid #43bce333;border-top-color:var(--primary);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.streaming-answer{border:1px solid var(--border);background:var(--card);border-radius:14px;margin-top:12px;overflow:hidden}.streaming-answer-header{background:var(--bg);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:10px 16px;display:flex}.streaming-answer-icon{width:24px;height:24px;color:var(--primary);background:#8fd9ef26;border-radius:50%;justify-content:center;align-items:center;display:flex}.streaming-answer-label{color:var(--primary);flex:1;font-size:13px;font-weight:600}.streaming-dot{background:var(--primary);border-radius:50%;width:6px;height:6px;animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes stepFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.4s cubic-bezier(.16,1,.3,1) both fadeIn}.step-content-wrap{border:1px solid var(--border);background:var(--card);border-radius:14px;margin-top:10px;padding:16px}.loading-card{border:1px dashed var(--border);background:var(--bg);border-radius:14px;justify-content:center;align-items:center;gap:12px;margin:12px 0;padding:24px;display:flex}.loading-card-spinner{border:2.5px solid #43bce333;border-top-color:var(--primary);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.loading-card-text{color:var(--text-secondary);font-size:14px;font-weight:500}.streaming-status{color:var(--text-muted);align-items:center;gap:8px;padding:8px 0;font-size:13px;display:flex}.streaming-status-icon{background:var(--primary-light);border-radius:50%;width:14px;height:14px;animation:1.5s ease-in-out infinite pulse}.spinner{justify-content:center;align-items:center;width:20px;height:20px;margin-top:4px;display:inline-flex}.spinner-circle{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.input-area{flex-shrink:0;padding:16px 24px 20px}.input-inner{max-width:860px;margin:0 auto}.input-container{background:var(--card);border:1px solid #b9e2ef;border-radius:24px;transition:border-color .3s,box-shadow .3s;overflow:hidden;box-shadow:0 6px 22px #257b9a1a}.input-row{align-items:flex-end;padding:8px 8px 8px 16px;display:flex}.input-field{resize:none;color:var(--text);background:0 0;border:none;outline:none;flex:1;max-height:160px;padding:8px 0;font-family:inherit;font-size:14px;line-height:1.5;overflow-y:auto}.input-field::placeholder{color:var(--text-muted)}.btn-send{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:14px;flex-shrink:0;align-items:center;gap:6px;padding:10px 24px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-send:disabled{background:var(--border);cursor:not-allowed}.btn-stop{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:14px;flex-shrink:0;align-items:center;gap:6px;padding:10px 24px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-stop:hover{background:#b91c1c}.input-footer{text-align:center;color:var(--text-muted);padding:6px 16px 10px;font-size:11px;line-height:1.6}.sources-panel{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.sources-header{align-items:center;gap:8px;width:100%;margin-bottom:4px;display:flex}.sources-title{color:var(--text);font-size:13px;font-weight:600}.sources-type-summary{flex-wrap:wrap;gap:6px;display:flex}.source-type-badge{color:var(--primary);background:#43bce30f;border-radius:6px;align-items:center;gap:3px;padding:2px 8px;font-size:11px;display:inline-flex}.source-type-badge.web{color:#3b82f6;background:#3b82f614}.source-type-badge.pesticide{color:#d97706;background:#f59e0b14}.sources-list{flex-wrap:wrap;gap:8px;padding:0;display:flex}.source-item{cursor:pointer;background:#f5f5f5;border:none;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;transition:all .15s;display:inline-flex}.source-item:hover{background:#eaf8fd}.source-item:before{content:"📄";font-size:11px}.source-item-header{align-items:center;gap:6px;font-size:12px;display:flex}.source-index{display:none}.source-name{color:var(--text-secondary);font-size:12px;font-weight:500}.source-type-tag,.source-confidence-dot,.source-chevron,.source-preview{display:none}.safety-warning-card{color:#991b1b;background:#fef2f2;border-left:3px solid #dc2626;border-radius:0 10px 10px 0;align-items:flex-start;gap:8px;margin:12px 0 4px;padding:12px 14px;font-size:13px;line-height:1.6;display:flex}.safety-warning-card svg{color:#dc2626;flex-shrink:0;margin-top:2px}.safety-warning-card .markdown-body{color:#991b1b;flex:1}.safety-warning-card .markdown-body p{margin:0}.answer-actions{align-items:center;gap:10px;margin:10px 0 4px;display:flex}.answer-action-btn{color:var(--text-muted);cursor:pointer;letter-spacing:.01em;background:linear-gradient(135deg,#43bce308,#8fd9ef0f);border:1.5px solid #43bce326;border-radius:12px;align-items:center;gap:6px;height:40px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 2px 6px #0000000f}.answer-action-btn svg{width:18px;height:18px;color:inherit;flex-shrink:0;transition:transform .2s}.answer-action-btn:hover{color:#168db8;background:linear-gradient(135deg,#43bce31a,#8fd9ef26);border-color:#8fd9ef;transform:translateY(-1px);box-shadow:0 4px 12px #43bce326}.answer-action-btn:hover svg{transform:scale(1.15)}.answer-action-btn:active{transform:translateY(0)scale(.97)}.answer-action-btn.copied{color:#059669;background:linear-gradient(135deg,#05966914,#22c55e1f);border-color:#22c55e;box-shadow:0 2px 8px #05966926}.rating-modal-overlay{z-index:9999;background:#0006;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.rating-modal{color:#333;background:#fff;border-radius:20px;width:420px;max-width:90vw;padding:28px 32px 24px;animation:.25s cubic-bezier(.16,1,.3,1) modalPopIn;box-shadow:0 20px 60px #00000026}@keyframes modalPopIn{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.rating-modal-title{color:#333;margin:0 0 20px;font-size:18px;font-weight:700}.rating-modal-stars{align-items:center;gap:4px;margin-bottom:16px;display:flex}.rating-modal-star{cursor:pointer;color:#d1d5db;background:0 0;border:none;padding:0;font-size:32px;line-height:1;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.rating-modal-star.filled{color:#f59e0b;text-shadow:0 2px 8px #f59e0b4d;transform:scale(1.1)}.rating-modal-star:hover{color:#fbbf24;transform:scale(1.2)}.rating-modal-label{color:#666;margin-left:8px;font-size:15px;font-weight:600}.rating-modal-feedback{resize:none;color:#333;background:#f1fafd;border:1px solid #e0e0e0;border-radius:12px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:13px;line-height:1.5;transition:border-color .15s}.rating-modal-feedback:focus{border-color:#43bce3}.rating-modal-feedback::placeholder{color:#999}.rating-modal-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.rating-modal-btn{cursor:pointer;border:none;border-radius:12px;padding:8px 22px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.rating-modal-btn-cancel{color:#666;background:#f1fafd;border:1px solid #e0e0e0}.rating-modal-btn-cancel:hover{background:#edece6}.rating-modal-btn-submit{color:#fff;background:#43bce3}.rating-modal-btn-submit:hover{background:#168db8}.rating-modal-btn-submit:disabled{cursor:not-allowed;background:#e0e0e0}.rating-modal-success{text-align:center;color:#43bce3;padding:16px 0;font-size:15px;font-weight:600}.web-refs{border:1px solid var(--border);background:var(--bg);border-radius:14px;margin:12px 0 4px;overflow:hidden}.web-refs-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:10px 14px;transition:background .15s;display:flex}.web-refs-header:hover{background:#00000005}.web-refs-icon{font-size:14px}.web-refs-title{color:var(--text);flex:1;font-size:13px;font-weight:600}.web-refs-list{padding:0 12px 8px}.web-ref-item{color:inherit;border-radius:8px;align-items:flex-start;gap:10px;padding:8px;text-decoration:none;transition:background .15s;display:flex}.web-ref-item:hover{background:#00000008}.web-ref-index{color:#3b82f6;background:#3b82f61a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-top:1px;font-size:11px;font-weight:700;display:flex}.web-ref-body{flex:1;min-width:0}.web-ref-title{color:#3b82f6;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.web-ref-snippet{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.web-refs-more{border:none;border-top:1px solid var(--border);width:100%;color:var(--text-secondary);cursor:pointer;background:0 0;padding:8px;font-size:12px;transition:color .15s}.web-refs-more:hover{color:var(--primary)}.sidebar-btn-manual{background:var(--card);border:1px solid var(--border);cursor:pointer;width:100%;color:var(--text);border-radius:12px;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.sidebar-btn-manual:hover{background:var(--hover-bg)}.manual-overlay{z-index:300;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000004d;justify-content:flex-end;display:flex;position:fixed;inset:0}.manual-panel{background:var(--card);flex-direction:column;width:520px;max-width:90vw;height:100%;animation:.25s manualSlideIn;display:flex;box-shadow:-4px 0 24px #0000001f}@keyframes manualSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.manual-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.manual-header h3{color:var(--text);font-size:18px;font-weight:700}.manual-close{cursor:pointer;width:36px;height:36px;color:var(--text-secondary);background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;transition:all .15s;display:flex}.manual-close:hover{background:var(--hover-bg);color:var(--text)}.manual-body{flex:1;padding:24px;overflow-y:auto}.manual-section{margin-bottom:24px}.manual-section-title{color:var(--primary-dark);border-bottom:2px solid var(--primary-light);margin-bottom:12px;padding-bottom:8px;font-size:16px;font-weight:700}.manual-text{color:var(--text);font-size:14px;line-height:1.8}.manual-text ol,.manual-text ul{margin:8px 0;padding-left:20px}.manual-text li{margin-bottom:4px}.manual-text p{margin-bottom:8px}.manual-text code{background:var(--bg);color:var(--primary);border-radius:4px;padding:2px 6px;font-size:13px}.credibility-panel{border:1px solid var(--border);background:#fff;border-radius:12px;margin:12px 0 8px;overflow:hidden}.credibility-header{cursor:pointer;border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#f0fdf4 0%,#fefce8 100%);align-items:center;gap:10px;padding:10px 14px;display:flex}.credibility-header:hover{background:linear-gradient(135deg,#dcfce7 0%,#fef9c3 100%)}.credibility-header-left{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.credibility-icon{font-size:16px}.credibility-title{color:var(--text);font-size:13px;font-weight:600}.credibility-stats{color:var(--text-secondary);background:#ffffffb3;border-radius:10px;padding:2px 8px;font-size:11px}.credibility-badges{flex-wrap:wrap;gap:4px;display:flex}.cred-badge{white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500}.cred-high{color:#166534;background:#dcfce7}.cred-mid{color:#854d0e;background:#fef9c3}.cred-low{color:#9a3412;background:#ffedd5}.cred-unverified{color:#4b5563;background:#f3f4f6}.credibility-list{max-height:320px;padding:8px 12px;overflow-y:auto}.credibility-item{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;display:flex}.credibility-item:last-child{border-bottom:none}.credibility-item-left{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.credibility-source-type{flex-shrink:0;font-size:14px}.credibility-source-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.credibility-item-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.credibility-score{color:var(--primary-dark);font-variant-numeric:tabular-nums;text-align:right;min-width:32px;font-size:12px;font-weight:600}.credibility-badge{white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500}.credibility-preview{width:100%;color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;padding:4px 28px 0;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}@media (width<=900px){.sidebar{z-index:100;position:fixed;top:0;bottom:0;left:0;box-shadow:4px 0 24px #0000001a}.sidebar.collapsed{transform:translate(-100%)}.messages-inner{gap:16px;padding:16px}.intent-row{flex-direction:column;gap:4px}.intent-section-label{min-width:auto}.sources-panel{margin-left:-4px;margin-right:-4px}}:root{--primary:#6763e8;--primary-dark:#514ccb;--primary-light:#aba9fa;--accent-teal:#339fa6;--accent-sage:#75a882;--bg:#f6f8fa;--card:#fff;--border:#e2e7ec;--text:#242a33;--text-secondary:#68717d;--text-muted:#98a1ac;--hover-bg:#f1f2fb;--active-bg:#ececff;--active-text:#514ccb;--user-bubble:#f1f0ff;--ai-bubble:transparent}body{background:#f7f9fa;font-family:HarmonyOS Sans SC,PingFang SC,Noto Sans SC,system-ui,-apple-system,sans-serif}.app-container{background:#f7f9fa}.sidebar{background:#fafbfc;border-right-color:#e4e8ec;width:240px;min-width:240px}.sidebar-inner{width:240px;min-width:240px}.sidebar-header{padding:24px 18px 18px}.sidebar-header-info{justify-content:flex-start;gap:12px}.sidebar-logo{background:#e9f7f2;border:0;border-radius:13px;width:42px;height:42px;box-shadow:0 5px 16px #2c614c1a}.sidebar-logo .brand-logo-image{-o-object-fit:cover;object-fit:cover;-o-object-position:center 37%;object-position:center 37%;width:100%;height:100%}.sidebar-brand-copy{min-width:0}.sidebar-title{letter-spacing:.04em;font-size:20px;line-height:1.1}.sidebar-subtitle{color:#78828c;margin-top:5px;font-size:11px}.btn-close-sidebar{width:30px;height:30px;top:25px;right:8px}.btn-new-chat{background:#6763e8;border-radius:12px;width:calc(100% - 32px);height:46px;margin:3px 16px 20px;box-shadow:0 8px 20px #6763e833}.btn-new-chat:hover{background:#5752d8;transform:translateY(-1px)}.sidebar-section-label{color:#727b86;padding:4px 18px 9px}.sidebar-list{padding:0 10px 14px}.conv-card{border-radius:12px;gap:10px;margin-bottom:4px;padding:11px 10px}.conv-card:hover{background:#f1f2f6}.conv-card.active{color:var(--text);background:#f0efff;border:1px solid #c9c7ff;box-shadow:0 4px 14px #5c57d612}.conv-card.active .conv-card-icon{background:#fff}.conv-card.active .conv-card-icon svg{color:#6763e8}.conv-card.active .conv-card-title{color:#36335e}.conv-card.active .conv-card-subtitle,.conv-card.active .conv-card-time{color:#797690}.conv-card.active .conv-card-del{color:#9692b3}.conv-card-icon{background:#f0f2f5;border-radius:9px;width:32px;height:32px}.conv-card-icon svg{color:#6e7680}.conv-card-title{font-size:13px}.conv-card-subtitle{font-size:11px}.sidebar-bottom{background:#fafbfc;padding:10px 12px 14px}.sidebar-btn-manual,.user-card{box-shadow:none;border-color:#e3e7ec;border-radius:12px}.user-card-avatar{color:#6d7781;background:#eef2f4;border-radius:50%}.main{background:#f8fafb}.floating-logo{border-color:#dddfee;box-shadow:0 6px 18px #252a431a}.knowledge-journey{background-color:#f4f7f3;background-image:url(/assets/grassland-restoration-header.jpg);background-position:50%;background-size:cover;border-bottom:1px solid #6e807529;flex-shrink:0;grid-template-columns:minmax(150px,1fr) minmax(620px,2.4fr);align-items:center;gap:24px;min-height:158px;padding:20px 34px;display:grid;position:relative;overflow:hidden}.knowledge-journey:after{content:"";background:#ffffffc2;height:1px;position:absolute;inset:auto 0 0}.journey-menu{z-index:2;color:#46515b;cursor:pointer;background:#ffffffd1;border:1px solid #ffffffc7;border-radius:11px;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:16px;left:16px}.journey-context{z-index:1;min-width:0;position:relative}.journey-context span{color:#2e463c;letter-spacing:.06em;font-size:15px;font-weight:700;display:block}.journey-context small{color:#66756d;white-space:nowrap;text-overflow:ellipsis;max-width:240px;margin-top:7px;font-size:12px;display:block;overflow:hidden}.journey-steps{z-index:1;grid-template-columns:repeat(4,1fr);align-items:center;display:grid;position:relative}.journey-step{color:#65726d;align-items:center;gap:10px;min-width:0;display:flex;position:relative}.journey-step-icon{z-index:2;color:#528a87;background:#ffffffd6;border:1px solid #3d999e85;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid;position:relative;box-shadow:0 5px 14px #2b4f4614}.journey-step.is-done .journey-step-icon{color:#fff;background:#3f9fa5;border-color:#3f9fa5}.journey-step.is-active .journey-step-icon{color:#fff;background:#6763e8;border-color:#6763e8;box-shadow:0 0 0 6px #6763e81f}.journey-step-copy{min-width:0}.journey-step-copy strong{color:#25332e;white-space:nowrap;font-size:13px;display:block}.journey-step-copy span{color:#78827d;margin-top:3px;font-size:10px;display:block}.journey-step.is-active .journey-step-copy strong{color:#514ccb}.journey-connector{z-index:0;background:#459a9d80;height:1px;position:absolute;top:19px;left:40px;right:8px}.journey-step.is-active .journey-connector{background:#6763e894}.workspace-grid{background:#fff;flex:1;grid-template-columns:minmax(0,1fr) 310px;gap:0;min-height:0;display:grid}.messages{background:#fff;min-width:0}.messages-inner{gap:22px;max-width:940px;padding:28px 38px 42px}.welcome{min-height:50vh}.welcome-icon{background:#eef0ff;border-radius:20px;width:70px;height:70px;margin-bottom:18px;box-shadow:0 10px 30px #504daf1f}.welcome-icon .brand-logo-image{-o-object-fit:cover;object-fit:cover;-o-object-position:center 37%;object-position:center 37%}.welcome h2{color:#29322e;font-size:24px}.welcome p{color:#78817d}.msg-user-wrap{max-width:86%}.msg.user .msg-bubble{box-shadow:none;color:#34334a;background:#f1f0ff;border:1px solid #e2e0ff;border-radius:15px 15px 4px}.msg.ai .msg-content{background:0 0;border:0;border-radius:0;padding:0;font-size:14px;line-height:1.7}.msg.ai .msg-content>.step-box{display:none}.step-content-wrap,.streaming-answer{background:0 0;border:0;border-radius:0;margin:0;padding:0;overflow:visible}.streaming-answer-header{color:#5752d8;background:0 0;border:0;padding:0 0 13px}.streaming-answer-icon{color:#615cdd;background:#eeedff}.streaming-answer-label{color:#5752d8}.streaming-answer-body{min-height:40px;padding:0}.markdown-body{color:#303740;line-height:1.72}.markdown-body p{margin:5px 0 10px}.markdown-body h1{margin:20px 0 10px;font-size:1.32em}.markdown-body h2{margin:18px 0 9px;font-size:1.2em}.markdown-body h3{margin:16px 0 7px;font-size:1.08em}.markdown-body ul,.markdown-body ol{margin:7px 0 12px 22px}.markdown-body li{margin:4px 0}.markdown-body table{border:1px solid #e2e7ec;border-radius:10px;overflow:hidden}.markdown-body thead th{color:#3b4350;background:#f2f3f8}.markdown-body tbody tr:nth-child(2n){background:#f9fafb}.markdown-body tbody tr:hover{background:#f2f4fa}.answer-actions{margin-top:16px}.answer-action-btn,.user-copy-btn{box-shadow:none;background:#fff;border:1px solid #e0e5ea}.answer-action-btn:hover,.user-copy-btn:hover{color:#5752d8;box-shadow:none;background:#f2f1ff;border-color:#c7c4ff}.messages .web-refs,.messages .papers-panel{display:none}.evidence-rail{background:#fafbfc;border-left:1px solid #e6eaee;min-width:0;overflow:hidden}.evidence-mobile-toggle{display:none}.evidence-panel{flex-direction:column;height:100%;display:flex}.evidence-header{justify-content:space-between;align-items:flex-start;padding:22px 20px 14px;display:flex}.evidence-eyebrow{color:#7773dc;letter-spacing:.16em;font-size:9px;font-weight:800;display:block}.evidence-header h2{color:#2e3540;margin-top:4px;font-size:17px}.evidence-close{color:#7a838e;background:0 0;border:0;border-radius:9px;place-items:center;width:32px;height:32px;display:none}.evidence-summary{color:#4b7569;background:#eef7f4;border-radius:10px;align-items:center;gap:7px;margin:0 16px 12px;padding:9px 10px;font-size:11px;display:flex}.evidence-list{flex:1;padding:0 14px 20px;overflow-y:auto}.evidence-card{color:inherit;background:#fff;border:1px solid #e1e6ea;border-radius:12px;margin-bottom:9px;padding:13px 12px;text-decoration:none;transition:border-color .18s,transform .18s,box-shadow .18s;display:block}.evidence-card:hover{border-color:#c9c7f5;transform:translateY(-1px);box-shadow:0 7px 18px #2d334b0f}.evidence-card-top{align-items:center;gap:6px;margin-bottom:8px;display:flex}.evidence-index{color:#615cdd;font-size:11px;font-weight:700}.evidence-kind{color:#6b747d;align-items:center;gap:4px;font-size:10px;display:inline-flex}.evidence-cred{color:#6f7780;background:#f1f3f5;border-radius:6px;margin-left:auto;padding:2px 6px;font-size:9px}.evidence-cred-高{color:#397055;background:#eaf6ef}.evidence-cred-中{color:#8d6a24;background:#fff7df}.evidence-card>strong{color:#343b45;font-size:12px;line-height:1.45;display:block}.evidence-card p{color:#7a838d;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:7px 0 0;font-size:11px;line-height:1.5;display:-webkit-box;overflow:hidden}.evidence-score{color:#8e96a0;margin-top:8px;font-size:9px;display:inline-block}.evidence-empty{text-align:center;color:#9aa3ac;flex-direction:column;justify-content:center;align-items:center;min-height:220px;padding:24px 18px;display:flex}.evidence-empty svg{color:#8d8ae1;margin-bottom:12px}.evidence-empty strong{color:#606a73;font-size:12px}.evidence-empty span{margin-top:7px;font-size:10px;line-height:1.6}.input-area{background:#fff;border-top:1px solid #edf0f2;padding:12px 334px 14px 24px}.input-inner{max-width:940px}.input-container{border-color:#d9dde4;border-radius:15px;box-shadow:0 6px 20px #282e3e0f}.input-container:focus-within{border-color:#8d89ee;box-shadow:0 0 0 3px #6763e81a,0 7px 22px #282e3e12}.input-row{align-items:center;min-height:54px}.btn-send{background:#6763e8;border-radius:11px;justify-content:center;min-width:116px}.btn-send:hover:not(:disabled){background:#5752d8}.btn-send:disabled{color:#a5abb1;background:#eceff2}.input-footer{color:#abb2ba;padding-bottom:0;font-size:9px}@media (width<=1180px){.knowledge-journey{grid-template-columns:120px minmax(560px,1fr);padding-left:24px;padding-right:24px}.journey-step{gap:7px}.journey-step-copy strong{font-size:12px}.workspace-grid{grid-template-columns:minmax(0,1fr) 280px}.input-area{padding-right:304px}}@media (width<=900px){.sidebar,.sidebar-inner{width:252px;min-width:252px}.floating-logo{display:none}.knowledge-journey{background-position:50%;min-height:118px;padding:48px 12px 12px;display:block}.journey-context{display:none}.journey-steps{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.journey-step{text-align:center;flex-direction:column;gap:5px;display:flex}.journey-step-icon{width:30px;height:30px}.journey-step-icon svg{width:15px;height:15px}.journey-step-copy strong{font-size:10px}.journey-step-copy span{display:none}.journey-connector{top:15px;left:calc(50% + 15px);right:calc(15px - 50%)}.workspace-grid{flex-direction:column;min-height:0;display:flex}.messages{flex:1}.messages-inner{padding:20px 16px 30px}.evidence-rail{border-top:1px solid #e6eaee;border-left:0;flex-shrink:0;order:2;overflow:visible}.evidence-mobile-toggle{color:#4b545e;background:#fafbfc;border:0;align-items:center;gap:8px;width:100%;height:44px;padding:0 16px;font-weight:600;display:flex}.evidence-mobile-toggle>span:first-child{align-items:center;gap:7px;display:inline-flex}.evidence-mobile-toggle .evidence-count{color:#5d58da;background:#ecebff;border-radius:8px;min-width:22px;margin-left:auto;padding:2px 6px;font-size:10px}.evidence-mobile-toggle>svg{transition:transform .2s}.evidence-rail.is-open .evidence-mobile-toggle>svg{transform:rotate(180deg)}.evidence-panel{z-index:210;background:#fafbfc;border-radius:18px 18px 0 0;height:min(72vh,620px);display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -14px 44px #1f243029}.evidence-rail.is-open .evidence-panel{display:flex}.evidence-close{cursor:pointer;display:grid}.evidence-header{padding-top:18px}.input-area{padding:10px 12px 12px}.input-footer{display:none}.btn-send{border-radius:11px;width:44px;min-width:44px;height:42px;padding:0}.btn-send span{display:none}.welcome{min-height:42vh}.welcome h2{font-size:20px}}@media (width<=520px){.knowledge-journey{min-height:108px;padding-top:43px}.journey-menu{width:34px;height:34px;top:10px;left:10px}.journey-step-copy strong{font-size:9px}.msg-user-wrap{max-width:94%}.msg.user .msg-bubble{padding:10px 13px}.markdown-body{font-size:13px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
