.sidebar{width:280px;min-width:280px;max-width:280px;background-color:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);flex-shrink:0;overflow:hidden}.sidebar.closed{min-width:0;max-width:0;width:0;border-right:none;opacity:0}.sidebar-header{padding:16px;border-bottom:1px solid var(--border-color)}.projects-section{display:flex;gap:8px;align-items:center}.projects-dropdown-wrapper{position:relative;flex:1}.projects-dropdown-btn{width:100%;padding:12px;background-color:var(--bg-tertiary);color:var(--text-primary);border:none;border-radius:8px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px;transition:background-color .2s}.projects-dropdown-btn span{flex:1}.projects-dropdown-btn .icon{margin-left:auto}.projects-dropdown-btn:hover{background-color:var(--bg-hover)}.projects-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:100;max-height:300px;overflow-y:auto}.projects-dropdown-item{padding:12px 16px;cursor:pointer;font-size:14px;color:var(--text-primary);transition:background-color .2s;border-bottom:1px solid var(--border-color)}.projects-dropdown-item:last-child{border-bottom:none}.projects-dropdown-item:hover{background-color:var(--bg-tertiary)}.projects-dropdown-item.no-projects{color:var(--text-secondary);cursor:default}.projects-dropdown-item.no-projects:hover{background-color:transparent}.create-project-btn{padding:12px;background-color:var(--bg-tertiary);color:var(--text-primary);border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s;flex-shrink:0}.create-project-btn:hover{background-color:var(--bg-hover)}.back-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:8px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background-color .2s;margin-right:8px}.back-btn:hover{background-color:var(--bg-tertiary)}.project-header-title{flex:1;font-size:16px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-header:has(.back-btn){display:flex;align-items:center}.new-chat-btn{width:100%;padding:12px;background-color:var(--bg-tertiary);color:var(--text-primary);border:none;border-radius:8px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px;transition:background-color .2s}.new-chat-btn:hover{background-color:var(--bg-hover)}.new-chat-btn .icon{flex-shrink:0}.new-project-btn{width:100%;padding:12px;background-color:var(--bg-tertiary);color:var(--text-primary);border:none;border-radius:8px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px;transition:background-color .2s}.new-project-btn:hover{background-color:var(--bg-hover)}.new-project-btn .icon{flex-shrink:0}.project-item{padding:12px;margin-bottom:4px;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:12px;transition:background-color .2s;position:relative}.project-item:hover{background-color:var(--bg-tertiary)}.project-icon{flex-shrink:0;color:var(--text-secondary)}.project-content{flex:1;overflow:hidden;min-width:0}.project-name{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px;color:var(--text-primary)}.project-date{font-size:12px;color:var(--text-secondary)}.project-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.project-item:hover .project-actions{opacity:1}.project-delete-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;transition:all .2s;display:flex;align-items:center;justify-content:center;border-radius:4px;flex-shrink:0}.project-delete-btn:hover{background-color:var(--bg-hover);color:#ef4444}.conversations-list{flex:1;overflow-y:auto;padding:8px}.conversation-item{padding:12px;margin-bottom:4px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:background-color .2s}.conversation-item:hover,.conversation-item.active{background-color:var(--bg-tertiary)}.conversation-content{flex:1;overflow:hidden;min-width:0}.conversation-title{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.conversation-date{font-size:12px;color:var(--text-secondary)}.conversation-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.conversation-item:hover .conversation-actions{opacity:1}.edit-btn,.delete-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;transition:all .2s;display:flex;align-items:center;justify-content:center;border-radius:4px;flex-shrink:0}.edit-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.delete-btn:hover{background-color:var(--bg-hover);color:#ef4444}.conversation-edit-wrapper{display:flex;flex-direction:column;gap:8px;width:100%}.conversation-edit-input{width:100%;background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;padding:6px 8px;color:var(--text-primary);font-size:14px;outline:none;font-family:inherit}.conversation-edit-input:focus{border-color:var(--button-bg)}.conversation-edit-actions{display:flex;gap:4px;justify-content:flex-end}.conversation-edit-actions .save-btn,.conversation-edit-actions .cancel-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center}.conversation-edit-actions .save-btn:hover{background-color:var(--bg-hover);color:var(--button-bg)}.conversation-edit-actions .cancel-btn:hover{background-color:var(--bg-hover);color:var(--text-secondary)}.sidebar-footer{padding:16px;border-top:1px solid var(--border-color);display:flex;gap:8px}.theme-toggle-btn{padding:12px;background-color:transparent;color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s;min-width:44px}.settings-btn{flex:1;padding:12px;background-color:transparent;color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px;transition:background-color .2s}.settings-btn:hover{background-color:var(--bg-tertiary)}.settings-btn .icon{flex-shrink:0}.conversations-list::-webkit-scrollbar{width:6px}.conversations-list::-webkit-scrollbar-track{background:transparent}.conversations-list::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:3px}.conversations-list::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}@media(max-width:768px){.sidebar{position:fixed;left:0;top:0;bottom:0;height:100vh;box-shadow:2px 0 8px #00000026;z-index:1000}.sidebar.closed{box-shadow:none;transform:translate(-100%)}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-keyword,.hljs-formula{color:#c678dd}.hljs-section,.hljs-name,.hljs-selector-tag,.hljs-deletion,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string{color:#98c379}.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-type,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-number{color:#d19a66}.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-title.class_,.hljs-class .hljs-title{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}[data-theme=light] .hljs{color:#383a42;background:#fafafa}[data-theme=light] .hljs-comment,[data-theme=light] .hljs-quote{color:#a0a1a7;font-style:italic}[data-theme=light] .hljs-doctag,[data-theme=light] .hljs-keyword,[data-theme=light] .hljs-formula{color:#a626a4}[data-theme=light] .hljs-section,[data-theme=light] .hljs-name,[data-theme=light] .hljs-selector-tag,[data-theme=light] .hljs-deletion,[data-theme=light] .hljs-subst{color:#e45649}[data-theme=light] .hljs-literal{color:#0184bb}[data-theme=light] .hljs-string,[data-theme=light] .hljs-regexp,[data-theme=light] .hljs-addition,[data-theme=light] .hljs-attribute,[data-theme=light] .hljs-meta .hljs-string{color:#50a14f}[data-theme=light] .hljs-attr,[data-theme=light] .hljs-variable,[data-theme=light] .hljs-template-variable,[data-theme=light] .hljs-type,[data-theme=light] .hljs-selector-class,[data-theme=light] .hljs-selector-attr,[data-theme=light] .hljs-selector-pseudo,[data-theme=light] .hljs-number{color:#986801}[data-theme=light] .hljs-symbol,[data-theme=light] .hljs-bullet,[data-theme=light] .hljs-link,[data-theme=light] .hljs-meta,[data-theme=light] .hljs-selector-id,[data-theme=light] .hljs-title{color:#4078f2}[data-theme=light] .hljs-built_in,[data-theme=light] .hljs-title.class_,[data-theme=light] .hljs-class .hljs-title{color:#c18401}[data-theme=light] .hljs-emphasis{font-style:italic}[data-theme=light] .hljs-strong{font-weight:700}[data-theme=light] .hljs-link{text-decoration:underline}.message-wrapper{width:100%;padding:20px;transition:background-color .2s}.message-wrapper.assistant{background-color:var(--bg-secondary)}.message-wrapper.user{background-color:var(--bg-primary)}.message-wrapper.error{background-color:var(--error-bg)}.message-container{max-width:100%;margin:0 auto;display:flex;gap:12px;align-items:flex-start;padding:0 40px;position:relative}.message-wrapper.assistant .message-container{flex-direction:row;justify-content:flex-start}.message-wrapper.user .message-container{flex-direction:row-reverse;justify-content:flex-start}.message-avatar{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--text-primary);border-radius:4px;background-color:transparent}.message-body{flex:1;min-width:0;max-width:75%}.message-wrapper.user .message-body{flex:0 0 auto;max-width:75%}.message-wrapper.assistant .message-body{flex:1}.message-content-wrapper{position:relative;display:block;max-width:100%}.message-wrapper.user .message-content-wrapper{display:inline-block}.message-wrapper.assistant .message-content-wrapper{width:100%}.message-wrapper.assistant .message-body{display:flex;justify-content:flex-start}.message-content{font-size:15px;line-height:1.6;color:var(--text-primary);word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;max-width:100%}.message-wrapper.user .message-content{background-color:var(--button-bg);color:#fff;padding:10px 14px;border-radius:16px;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;max-width:100%;font-weight:400}.message-wrapper.assistant .message-content{padding:0;white-space:normal;overflow-x:auto}.message-wrapper.assistant .message-content>*{max-width:100%;overflow-x:auto}.message-wrapper.assistant .message-content p{margin-bottom:10px}.message-wrapper.assistant .message-content p:last-child{margin-bottom:0}.message-wrapper.assistant .message-content pre{background-color:#282c34;border:1px solid var(--border-color);border-radius:8px;padding:14px;overflow-x:auto;margin:10px 0;position:relative}[data-theme=light] .message-wrapper.assistant .message-content pre{background-color:#fafafa;border:1px solid #d4d4d4}[data-theme=light] .message-wrapper.assistant .message-content pre code.hljs{background-color:#fafafa;color:#2c2c2c}.message-wrapper.assistant .message-content code{background-color:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-size:13px;font-family:Courier New,Consolas,Monaco,monospace;color:var(--text-primary)}[data-theme=light] .message-wrapper.assistant .message-content code{background-color:#e8e8e8;color:#2c2c2c}.message-wrapper.assistant .message-content pre code{background-color:transparent;padding:0;display:block;overflow-x:auto}[data-theme=light] .message-wrapper.assistant .message-content pre code{background-color:transparent}.message-wrapper.assistant .message-content ul,.message-wrapper.assistant .message-content ol{margin:10px 0;padding-left:20px}.message-wrapper.assistant .message-content li{margin-bottom:4px}.message-wrapper.assistant .message-content blockquote{border-left:3px solid var(--border-color);padding-left:12px;margin:10px 0;color:var(--text-secondary)}.message-wrapper.assistant .message-content h1,.message-wrapper.assistant .message-content h2,.message-wrapper.assistant .message-content h3,.message-wrapper.assistant .message-content h4,.message-wrapper.assistant .message-content h5,.message-wrapper.assistant .message-content h6{margin-top:14px;margin-bottom:8px;font-weight:600}.message-wrapper.assistant .message-content h1:first-child,.message-wrapper.assistant .message-content h2:first-child,.message-wrapper.assistant .message-content h3:first-child,.message-wrapper.assistant .message-content h4:first-child,.message-wrapper.assistant .message-content h5:first-child,.message-wrapper.assistant .message-content h6:first-child{margin-top:0}.message-wrapper.assistant .message-content a{color:var(--button-bg);text-decoration:none}.message-wrapper.assistant .message-content a:hover{text-decoration:underline}.message-wrapper.error .message-content{color:#ef4444;background-color:transparent;padding:10px 14px;border:1px solid #ef4444;border-radius:8px}.message-wrapper.assistant .message-content table{border-collapse:collapse;width:100%;margin:10px 0;display:block;overflow-x:auto;background-color:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}[data-theme=light] .message-wrapper.assistant .message-content table{background-color:#fff}.message-wrapper.assistant .message-content table thead{background-color:var(--bg-tertiary)}[data-theme=light] .message-wrapper.assistant .message-content table thead{background-color:#f5f5f5}.message-wrapper.assistant .message-content table th,.message-wrapper.assistant .message-content table td{padding:10px 14px;text-align:left;border:1px solid var(--border-color);min-width:100px}.message-wrapper.assistant .message-content table th{font-weight:600;color:var(--text-primary);background-color:var(--bg-tertiary)}[data-theme=light] .message-wrapper.assistant .message-content table th{background-color:#f5f5f5}.message-wrapper.assistant .message-content table tr:nth-child(2n){background-color:var(--bg-secondary)}[data-theme=light] .message-wrapper.assistant .message-content table tr:nth-child(2n){background-color:#fafafa}.message-wrapper.assistant .message-content table tr:hover{background-color:var(--bg-hover)}.message-wrapper.assistant .message-content table code{background-color:transparent;padding:0;font-size:12px}.message-actions{display:flex;gap:8px;align-items:center}.copy-btn,.download-btn{position:sticky;background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);padding:6px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .2s;z-index:10;box-shadow:0 2px 4px #0000001a;flex-shrink:0;width:32px;height:32px;top:90%;align-self:flex-start}.message-wrapper.assistant .copy-btn,.message-wrapper.assistant .download-btn,.message-wrapper.user .copy-btn,.message-wrapper.user .download-btn{background-color:#fff3;border-color:#ffffff4d;color:#fff;box-shadow:0 2px 4px #0003}[data-theme=light] .message-wrapper.assistant .copy-btn,[data-theme=light] .message-wrapper.assistant .download-btn,[data-theme=light] .message-wrapper.user .copy-btn,[data-theme=light] .message-wrapper.user .download-btn{background-color:#000000b3;border-color:#000c;color:#fff;box-shadow:0 2px 4px #0000004d}.message-wrapper:hover .copy-btn,.message-wrapper:hover .download-btn{opacity:1}.copy-btn:hover,.download-btn:hover{background-color:#ffffff4d;border-color:#ffffff80;color:#fff;box-shadow:0 2px 6px #00000040}[data-theme=light] .message-wrapper.assistant .copy-btn:hover,[data-theme=light] .message-wrapper.assistant .download-btn:hover{background-color:#000000d9;border-color:#000000e6;color:#fff;box-shadow:0 2px 6px #0006}.copy-btn:active,.download-btn:active{transform:scale(.95)}.message-wrapper.user .copy-btn:hover,.message-wrapper.user .download-btn:hover{background-color:#ffffff4d;border-color:#ffffff80;box-shadow:0 2px 6px #00000040}[data-theme=light] .message-wrapper.user .copy-btn:hover,[data-theme=light] .message-wrapper.user .download-btn:hover{background-color:#000000d9;border-color:#000000e6;box-shadow:0 2px 6px #0006}.code-actions-container{position:absolute;top:8px;right:8px;display:flex;gap:4px;z-index:5}.code-copy-btn,.code-download-btn,.table-copy-btn{background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:6px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .2s}[data-theme=light] .code-copy-btn,[data-theme=light] .code-download-btn,[data-theme=light] .table-copy-btn{background-color:#0000000d;border-color:#0000001a;color:#2c2c2c}.message-wrapper.assistant .message-content pre:hover .code-actions-container,.message-wrapper.assistant .message-content pre:hover .code-copy-btn,.message-wrapper.assistant .message-content pre:hover .code-download-btn,.code-copy-btn:hover,.code-download-btn:hover{opacity:1}.table-wrapper:hover .table-copy-btn,.table-copy-btn:hover{opacity:1;top:20px}.message-wrapper.assistant .message-content div:has(table):hover .table-copy-btn{opacity:1}.code-copy-btn:hover,.code-download-btn:hover,.table-copy-btn:hover{background-color:#fff3;border-color:#ffffff4d}[data-theme=light] .code-copy-btn:hover,[data-theme=light] .code-download-btn:hover,[data-theme=light] .table-copy-btn:hover{background-color:#0000001a;border-color:#0003}.code-copy-btn:active,.code-download-btn:active,.table-copy-btn:active{transform:scale(.95)}.message-attached-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.message-file-chip{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;font-size:12px;max-width:300px;cursor:pointer;transition:all .2s}.message-file-chip:hover{background-color:var(--bg-tertiary);border-color:var(--button-bg)}.message-file-chip .file-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.message-file-chip .file-name{font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-file-chip .file-meta{color:var(--text-tertiary);font-size:10px}.context-strategy-selector{position:relative;display:inline-block;width:100%;font-family:Poppins,sans-serif}.strategy-trigger-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-size:13px;font-family:Poppins,sans-serif;transition:all .2s ease;color:var(--text-color);min-width:100%;justify-content:space-between}.strategy-trigger-btn:hover{background:var(--hover-bg);border-color:var(--primary-color)}.strategy-trigger-btn:disabled{opacity:.5;cursor:not-allowed}.strategy-icon{font-size:16px;display:flex;align-items:center}.strategy-name{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.strategy-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--sidebar-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 20px #0003;z-index:1000;overflow:hidden;animation:slideDownFade .2s ease;font-family:Poppins,sans-serif}.strategy-dropdown-header{padding:12px 16px;font-size:13px;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-color);background:var(--header-bg)}.strategy-list{max-height:400px;overflow-y:auto}.strategy-item{padding:12px 16px;cursor:pointer;transition:background .2s ease;border-bottom:1px solid var(--border-color)}.strategy-item:last-child{border-bottom:none}.strategy-item:hover{background:var(--hover-bg)}.strategy-item.active{background:var(--primary-color-alpha);border-left:3px solid var(--primary-color)}.strategy-item-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.strategy-item-icon{font-size:18px}.strategy-item-name{font-weight:500;font-size:14px;color:var(--text-color)}.strategy-item-description{font-size:12px;color:var(--text-secondary);line-height:1.4;padding-left:26px}.window-size-selector{position:relative;display:inline-block;width:100%}.window-size-display{display:flex;align-items:stretch;background:var(--input-bg);border:1px solid var(--border-color);border-radius:10px;overflow:hidden;transition:all .2s ease}.window-size-display:hover{border-color:var(--primary-color)}.window-size-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:10px 14px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex:0 0 auto}.window-size-btn:hover:not(:disabled){background:var(--primary-color);color:#fff}.window-size-btn:disabled{opacity:.3;cursor:not-allowed}.window-size-btn.decrement{border-right:1px solid var(--border-color)}.window-size-btn.increment{border-left:1px solid var(--border-color)}.window-size-value{background:transparent;border:none;color:var(--text-color);cursor:pointer;padding:10px 16px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:600;transition:all .2s ease;flex:1;min-width:80px}.window-size-value:hover{background:var(--hover-bg)}.window-icon{font-size:16px;line-height:1}.window-number{font-weight:700;font-size:15px;color:var(--primary-color)}.window-size-dropdown{position:absolute;top:calc(100% + 8px);left:0;background:var(--sidebar-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 20px #0003;z-index:1000;min-width:280px;overflow:hidden;animation:slideDownFade .2s ease}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:14px 18px;font-size:13px;font-weight:700;color:var(--text-color);border-bottom:1px solid var(--border-color);background:var(--header-bg);letter-spacing:.3px}.preset-sizes{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:16px}.preset-btn{padding:10px;background:var(--input-bg);border:2px solid var(--border-color);border-radius:8px;color:var(--text-color);cursor:pointer;font-size:14px;font-weight:600;transition:all .2s ease}.preset-btn:hover:not(:disabled){background:var(--hover-bg);border-color:var(--primary-color);transform:translateY(-1px)}.preset-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 2px 8px #10a37f4d}.preset-btn:disabled{opacity:.3;cursor:not-allowed}.custom-size{display:flex;align-items:center;gap:10px;padding:16px;border-top:1px solid var(--border-color);background:var(--message-bg)}.custom-size label{font-size:13px;color:var(--text-color);font-weight:600;min-width:fit-content}.custom-input{flex:1;padding:8px 12px;background:var(--input-bg);border:2px solid var(--border-color);border-radius:8px;color:var(--text-color);font-size:14px;font-weight:600;outline:none;text-align:center;transition:all .2s ease}.custom-input:focus{border-color:var(--primary-color);background:var(--hover-bg)}.apply-custom-btn{padding:8px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s ease}.apply-custom-btn:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 2px 8px #10a37f4d}.window-info{padding:10px 16px;font-size:12px;color:var(--text-secondary);text-align:center;background:var(--info-bg);border-top:1px solid var(--border-color);font-weight:500}.context-settings-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease}.context-settings-modal{background:var(--sidebar-bg);border-radius:16px;width:90%;max-width:500px;height:80vh;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000004d;animation:slideUp .3s ease;overflow-y:auto}.context-settings-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color)}.header-title{display:flex;align-items:center;gap:12px;color:var(--text-color)}.header-title h3{margin:0;font-size:18px;font-weight:600}.context-settings-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;transition:color .2s ease}.context-settings-close:hover{color:var(--text-color)}.context-settings-body{padding:24px;display:flex;flex-direction:column;gap:24px}.settings-section{display:flex;flex-direction:column;gap:12px}.section-label{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.settings-hint{padding:12px 16px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;font-size:13px;color:var(--text-secondary);font-style:italic}.action-btn{padding:12px 16px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-color);transition:all .2s ease;text-align:left}.action-btn:hover{background:var(--hover-bg);border-color:var(--primary-color);transform:translateY(-1px)}.context-info-section{background:var(--message-bg);padding:16px;border-radius:12px;border:1px solid var(--border-color)}.context-status-card{display:flex;flex-direction:column;gap:12px}.status-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--input-bg);border-radius:8px}.status-label{font-size:13px;color:var(--text-secondary)}.status-value{font-size:14px;font-weight:600;color:var(--text-color)}.status-value.token-green{color:#4ade80}.status-value.token-yellow{color:#fbbf24}.status-value.token-red{color:#f87171}.summarization-mode-options{display:flex;flex-direction:column;gap:12px}.mode-option{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--input-bg);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease}.mode-option:hover{background:var(--hover-bg);border-color:var(--primary-color)}.mode-option input[type=radio]{margin-top:2px;cursor:pointer;accent-color:var(--primary-color);width:18px;height:18px}.mode-info{display:flex;flex-direction:column;gap:4px;flex:1}.mode-name{font-size:14px;font-weight:600;color:var(--text-color)}.mode-description{font-size:12px;color:var(--text-secondary);line-height:1.4}.mode-option:has(input:checked){border-color:var(--primary-color);background:var(--primary-color-alpha)}.summarize-action-btn{margin-top:8px}@media(max-width:768px){.context-settings-modal{width:95%;max-height:90vh}.context-settings-header{padding:16px 20px}.header-title h3{font-size:16px}.context-settings-body{padding:20px;gap:20px}}.message-selector-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.message-selector-modal{background:var(--sidebar-bg);border-radius:16px;width:90%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.message-selector-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color)}.message-selector-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-color)}.message-selector-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;transition:color .2s ease}.message-selector-close:hover{color:var(--text-color)}.message-selector-info{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:var(--message-bg);border-bottom:1px solid var(--border-color)}.token-info{display:flex;align-items:center;gap:8px}.token-count-large{font-size:16px;font-weight:600}.token-percentage{font-size:14px;color:var(--text-secondary)}.token-green{color:#4ade80}.token-yellow{color:#fbbf24}.token-red{color:#f87171}.select-recent-btn{padding:8px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s ease}.select-recent-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.message-selector-list{flex:1;overflow-y:auto;padding:16px 24px}.message-pair{margin-bottom:24px;padding:16px;background:var(--message-bg);border-radius:12px;border:1px solid var(--border-color)}.message-pair-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-color);font-size:12px;font-weight:600;color:var(--text-secondary)}.pair-tokens{color:var(--primary-color)}.message-selector-item{display:flex;align-items:center;gap:12px;padding:12px;margin-bottom:8px;background:var(--input-bg);border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s ease}.message-selector-item:last-of-type{margin-bottom:0}.message-selector-item:hover:not(.disabled){background:var(--hover-bg);border-color:var(--primary-color)}.message-selector-item.selected{background:var(--primary-color-alpha);border-color:var(--primary-color)}.message-selector-item.disabled{opacity:.6;cursor:not-allowed;background:var(--disabled-bg)}.message-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-color)}.message-info{flex:1;min-width:0}.message-role{font-size:11px;font-weight:600;text-transform:uppercase;margin-bottom:4px;letter-spacing:.5px}.user-role{color:var(--primary-color)}.ai-role{color:var(--success-color)}.message-preview{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-tokens{font-size:12px;font-weight:500;color:var(--text-secondary);white-space:nowrap}.current-message-note{font-size:11px;color:var(--text-secondary);text-align:center;padding:8px;margin-top:4px;background:var(--info-bg);border-radius:6px;font-style:italic}.message-selector-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-color)}.cancel-btn,.apply-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.cancel-btn{background:var(--input-bg);color:var(--text-color)}.cancel-btn:hover{background:var(--hover-bg)}.apply-btn{background:var(--primary-color);color:#fff}.apply-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.apply-btn:disabled{opacity:.5;cursor:not-allowed}.project-settings-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.project-settings-modal{background-color:var(--bg-secondary);border-radius:12px;width:90%;max-width:600px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;max-height:90vh}.project-settings-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.project-settings-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.project-settings-header .close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s}.project-settings-header .close-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.project-settings-content{padding:20px;flex:1;overflow-y:auto}.project-settings-content .form-group{margin-bottom:20px}.project-settings-content .form-group:last-child{margin-bottom:0}.project-settings-content label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--text-primary)}.system-instruction-textarea{width:100%;padding:10px 12px;background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;font-family:inherit;outline:none;resize:vertical;box-sizing:border-box}.system-instruction-textarea:focus{border-color:var(--button-bg)}.form-help{margin-top:6px;font-size:12px;color:var(--text-secondary)}.upload-files-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s}.upload-files-btn:hover{background-color:var(--bg-hover)}.project-files-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.project-file-item{display:flex;align-items:center;gap:8px;padding:10px 12px;background-color:var(--bg-tertiary);border-radius:6px;border:1px solid var(--border-color)}.project-file-item .file-name{flex:1;font-size:14px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-file-item .file-size{font-size:12px;color:var(--text-secondary)}.project-file-item .remove-file-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s}.project-file-item .remove-file-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.project-settings-footer{padding:16px 20px;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end}.project-settings-footer .cancel-btn,.project-settings-footer .save-btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.project-settings-footer .cancel-btn{background-color:var(--bg-tertiary);color:var(--text-primary)}.project-settings-footer .cancel-btn:hover{background-color:var(--bg-hover)}.project-settings-footer .save-btn{background-color:var(--button-bg);color:#fff}.project-settings-footer .save-btn:hover{opacity:.9}.chat-area{flex:1;display:flex;flex-direction:column;background-color:var(--bg-primary);transition:all .3s cubic-bezier(.4,0,.2,1);min-width:0}.chat-header{padding:14px 20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:16px}.toggle-sidebar-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:8px;border-radius:4px;transition:background-color .2s;display:flex;align-items:center;justify-content:center}.toggle-sidebar-btn:hover{background-color:var(--bg-tertiary)}.chat-header h2{font-size:18px;font-weight:500}.title-wrapper{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.title-wrapper h2{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.title-edit-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center;opacity:0}.title-wrapper:hover .title-edit-btn{opacity:1}.title-edit-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.title-edit-wrapper{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.title-edit-input{flex:1;background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;padding:6px 10px;color:var(--text-primary);font-size:16px;outline:none;font-family:inherit}.title-edit-input:focus{border-color:var(--button-bg)}.title-save-btn,.title-cancel-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:6px;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center}.title-save-btn:hover{background-color:var(--bg-tertiary);color:var(--button-bg)}.title-cancel-btn:hover{background-color:var(--bg-tertiary);color:var(--text-secondary)}.theme-toggle-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:8px;border-radius:4px;transition:background-color .2s;display:flex;align-items:center;justify-content:center}.theme-toggle-btn:hover{background-color:var(--bg-tertiary)}.chat-header-actions{display:flex;align-items:center;gap:8px}.project-settings-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:8px;border-radius:4px;transition:background-color .2s;display:flex;align-items:center;justify-content:center}.project-settings-btn:hover{background-color:var(--bg-tertiary)}.messages-container{flex:1;overflow-y:auto;display:flex;flex-direction:column}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;text-align:center;color:var(--text-tertiary);padding:20px}.empty-state h1{font-size:28px;margin-bottom:12px;font-weight:500}.empty-state p{font-size:15px}.empty-state.instructions{max-width:600px;margin:0 auto}.instructions-content{text-align:left;margin-top:20px}.instructions-content p{font-size:16px;margin-bottom:16px;color:var(--text-primary)}.instructions-content ol{text-align:left;padding-left:24px;margin:0}.instructions-content li{font-size:15px;margin-bottom:12px;color:var(--text-secondary);line-height:1.6}.input-container{padding:16px 20px 20px;border-top:1px solid var(--border-color)}.attached-files-container{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:0 40px}.attached-file-chip{display:flex;align-items:center;gap:8px;padding:6px 10px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;font-size:12px;max-width:300px}.attached-file-chip .file-icon{flex-shrink:0;color:var(--text-secondary);cursor:pointer;transition:color .2s}.attached-file-chip .file-icon:hover{color:var(--text-primary)}.file-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0;cursor:pointer}.file-info:hover .file-name{color:var(--button-bg)}.file-name{font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .2s}.file-meta{color:var(--text-tertiary);font-size:10px}.remove-file-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:color .2s;flex-shrink:0}.remove-file-btn:hover{color:#ff6b6b}.file-preview-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000}.file-preview-modal{background-color:var(--bg-primary);border-radius:10px;width:90%;max-width:800px;max-height:85vh;border:1px solid var(--border-color);box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;overflow:hidden}.file-preview-header{padding:14px 18px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.file-preview-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:500;color:var(--text-primary)}.file-preview-actions{display:flex;align-items:center;gap:8px}.file-copy-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.file-copy-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.file-preview-close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.file-preview-close-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.file-preview-content{flex:1;overflow-y:auto;padding:20px}.file-preview-content pre{margin:0;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:16px;color:var(--text-primary);font-size:13px;line-height:1.6;white-space:pre-wrap;word-wrap:break-word;font-family:Courier New,Courier,monospace}.file-preview-content::-webkit-scrollbar{width:8px}.file-preview-content::-webkit-scrollbar-track{background:transparent}.file-preview-content::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}.file-preview-content::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}.input-wrapper{max-width:100%;margin:0 auto;padding:0 40px;display:flex;align-items:center;gap:10px}.attach-file-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s;flex-shrink:0}.attach-file-btn:hover:not(:disabled){color:var(--text-primary)}.attach-file-btn:disabled{opacity:.5;cursor:not-allowed}.token-counter{display:flex;align-items:center;gap:6px;padding:8px 40px 0;font-size:11px;color:var(--text-tertiary)}.token-warning{font-size:14px;animation:pulse-warning 2s ease-in-out infinite}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.5}}.token-count{font-weight:400;color:var(--text-secondary);cursor:help}.token-limit{color:var(--text-tertiary)}.input-wrapper-inner{display:flex;align-items:center;gap:10px;background-color:var(--bg-input);border-radius:24px;padding:6px 6px 6px 8px;border:1px solid var(--border-color);min-height:48px;flex:1}.inline-model-selector{position:relative;flex-shrink:0}.model-trigger-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;color:var(--text-primary);font-size:12px;cursor:pointer;transition:all .2s;white-space:nowrap;max-width:150px}.model-trigger-btn:hover:not(:disabled){background-color:var(--bg-tertiary);border-color:var(--button-bg)}.model-trigger-btn:disabled{opacity:.5;cursor:not-allowed}.model-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.model-dropdown-menu{position:absolute;bottom:calc(100% + 8px);left:0;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:280px;max-width:400px;z-index:1000;overflow:hidden}.model-search-wrapper{padding:8px;border-bottom:1px solid var(--border-color)}.model-search-input{width:100%;padding:6px 10px;background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:13px;outline:none;transition:border-color .2s}.model-search-input:focus{border-color:var(--button-bg)}.model-list{max-height:300px;overflow-y:auto}.model-list::-webkit-scrollbar{width:6px}.model-list::-webkit-scrollbar-track{background:transparent}.model-list::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:3px}.model-list::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}.model-item{padding:10px 12px;cursor:pointer;font-size:13px;color:var(--text-primary);transition:background-color .15s;border-bottom:1px solid var(--border-color)}.model-item:last-child{border-bottom:none}.model-item:hover{background-color:var(--bg-tertiary)}.model-item.active{background-color:var(--button-bg);color:#fff}.model-item.active:hover{background-color:var(--button-hover)}.model-item.no-results{color:var(--text-tertiary);cursor:default;text-align:center}.model-item.no-results:hover{background-color:transparent}.input-wrapper-inner textarea{flex:1;background:none;border:none;color:var(--text-primary);font-size:15px;resize:none;outline:none;max-height:200px;overflow-y:auto;font-family:inherit;line-height:1.5;padding:6px 0;min-height:24px}.input-wrapper-inner textarea:disabled{cursor:not-allowed;opacity:.6}.input-wrapper-inner textarea::placeholder{color:var(--text-tertiary)}.input-wrapper-inner textarea::-webkit-scrollbar{width:6px}.input-wrapper-inner textarea::-webkit-scrollbar-track{background:transparent}.input-wrapper-inner textarea::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:3px}.input-wrapper-inner textarea::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}.send-btn{background-color:var(--button-bg);color:#fff;border:none;border-radius:20px;width:38px;height:38px;min-width:38px;min-height:38px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s;flex-shrink:0}.send-btn:hover:not(:disabled){background-color:var(--button-hover)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.typing-indicator{display:flex;gap:4px;padding:12px 0;align-items:center}.typing-indicator span{width:8px;height:8px;background-color:var(--text-tertiary);border-radius:50%;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.messages-container::-webkit-scrollbar{width:8px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}.messages-container::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}.message-navigator{position:fixed;right:20px;top:50%;transform:translateY(-50%);background-color:var(--bg-secondary-transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:0;border-radius:8px;border:1px solid var(--border-color);box-shadow:0 2px 6px #00000014;z-index:100;max-height:300px;display:flex;flex-direction:column;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.message-navigator.visible{opacity:1;visibility:visible}.nav-arrow{display:flex;align-items:center;justify-content:center;padding:4px;color:var(--text-secondary);background-color:transparent;flex-shrink:0}.nav-arrow-top{border-bottom:1px solid var(--border-color);border-radius:8px 8px 0 0}.nav-arrow-bottom{border-top:1px solid var(--border-color);border-radius:0 0 8px 8px}.nav-dots{display:flex;flex-direction:column;gap:4px;overflow-y:auto;padding:8px 6px;flex:1}.nav-dots::-webkit-scrollbar{width:0;display:none}.nav-dots{scrollbar-width:none;-ms-overflow-style:none}.dot-group{display:flex;align-items:center;gap:2px;cursor:pointer;padding:2px 4px;border-radius:3px;transition:background-color .2s}.dot-group:hover{background-color:var(--bg-hover)}.dot-group .dot{width:4px;height:4px;border-radius:50%;flex-shrink:0;transition:transform .2s}.dot-group:hover .dot{transform:scale(1.5)}.dot-group.user .dot{background-color:var(--button-bg)}.dot-group.assistant .dot{background-color:var(--text-primary)}.highlight-message{animation:highlight-pulse .6s ease-in-out}@keyframes highlight-pulse{0%,to{background-color:transparent}50%{background-color:var(--bg-hover)}}.scroll-down-btn{position:fixed;bottom:115px;right:20px;background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000026;transition:all .2s;z-index:50}.scroll-down-btn:hover{background-color:var(--bg-tertiary);transform:scale(1.1);box-shadow:0 3px 12px #0003}.scroll-down-btn:active{transform:scale(.95)}[data-theme=light] .scroll-down-btn{background-color:#fff;border-color:#d4d4d4;box-shadow:0 2px 8px #0000001a}[data-theme=light] .scroll-down-btn:hover{background-color:#f5f5f5;box-shadow:0 3px 12px #00000026}.context-warning-banner{position:absolute;bottom:100%;left:0;right:0;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:12px 20px;display:flex;align-items:center;gap:12px;font-size:13px;border-top:1px solid rgba(255,255,255,.2);animation:slideDown .3s ease;z-index:10}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.context-warning-banner span{flex:1}.dismiss-warning-btn{background:#fff3;border:none;color:#fff;border-radius:6px;padding:4px;cursor:pointer;display:flex;align-items:center;transition:background .2s ease}.dismiss-warning-btn:hover{background:#ffffff4d}.selectors-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.context-settings-btn{padding:6px 12px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;color:var(--text-color);display:flex;align-items:center;justify-content:center}.context-settings-btn:hover{background:var(--hover-bg);border-color:var(--primary-color);transform:translateY(-1px)}.context-settings-btn:disabled{opacity:.5;cursor:not-allowed}.summarize-quick-btn{padding:6px 12px;background:linear-gradient(135deg,#f59e0b,#d97706);border:1px solid #d97706;border-radius:8px;cursor:pointer;transition:all .2s ease;color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px}.summarize-quick-btn:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px);box-shadow:0 2px 8px #d977064d}.summarize-quick-btn:disabled{opacity:.5;cursor:not-allowed}.token-separator{color:var(--text-secondary);margin:0 8px}.token-info{color:var(--text-secondary);font-size:12px}@media(max-width:768px){.input-wrapper,.attached-files-container{padding:0 20px}.token-counter{padding:8px 20px 0;flex-direction:column;align-items:flex-start;gap:4px}.token-separator{display:none}.model-trigger-btn,.strategy-trigger-btn{max-width:100px;font-size:11px;padding:5px 8px}.model-name,.strategy-name{max-width:70px}.model-dropdown-menu,.strategy-dropdown-menu{min-width:240px}.attached-file-chip{max-width:100%}.selectors-group{gap:4px}.context-settings-btn,.summarize-quick-btn{padding:5px 10px}.context-warning-banner{font-size:12px;padding:10px 15px}}.settings-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.settings-modal{background-color:var(--bg-primary);border-radius:10px;width:90%;max-width:480px;max-height:85vh;border:1px solid var(--border-color);box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;overflow:auto}.settings-modal::-webkit-scrollbar{width:8px}.settings-modal::-webkit-scrollbar-track{background:transparent}.settings-modal::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}.settings-modal::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}.settings-header{padding:14px 18px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.settings-header h2{font-size:18px;font-weight:500}.close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.close-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.settings-content{padding:16px 18px;overflow-y:auto;flex:1}.settings-content::-webkit-scrollbar{width:8px}.settings-content::-webkit-scrollbar-track{background:transparent}.settings-content::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}.settings-content::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}.setup-message{padding:12px;background-color:var(--bg-tertiary);border-left:3px solid var(--button-bg);border-radius:6px;margin-bottom:20px;color:var(--text-primary);font-size:14px;line-height:1.5}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:6px;font-size:13px;color:var(--text-secondary);font-weight:500}.form-group input[type=text],.form-group input[type=password],.form-group input[type=url],.form-group select{width:100%;padding:9px 11px;background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:13px;outline:none;transition:border-color .2s}.form-group input[type=text]:focus,.form-group input[type=password]:focus,.form-group input[type=url]:focus,.form-group select:focus{border-color:var(--button-bg)}.system-message-textarea{width:100%;padding:10px 12px;background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:13px;font-family:inherit;resize:vertical;min-height:80px;outline:none;transition:border-color .2s;line-height:1.5}.system-message-textarea:focus{border-color:var(--button-bg)}.system-message-textarea::placeholder{color:var(--text-secondary);opacity:.7}.form-help{margin-top:4px;font-size:11px;color:var(--text-tertiary)}.form-error{margin-top:4px;font-size:11px;color:#ff6b6b}.form-group select:disabled{opacity:.5;cursor:not-allowed}.model-info{margin-top:8px;padding:10px;background-color:var(--bg-tertiary);border-radius:6px;display:flex;flex-direction:column;gap:6px}.model-info-item{display:flex;justify-content:space-between;align-items:center;font-size:12px}.info-label{color:var(--text-secondary);font-weight:500}.info-value{color:var(--text-primary);font-weight:500}.form-group input[type=range]{width:100%;height:5px;background:var(--bg-tertiary);border-radius:3px;outline:none;appearance:none;-webkit-appearance:none}.form-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--button-bg);border-radius:50%;cursor:pointer;transition:background .2s}.form-group input[type=range]::-webkit-slider-thumb:hover{background:var(--button-hover)}.form-group input[type=range]::-moz-range-thumb{width:16px;height:16px;background:var(--button-bg);border-radius:50%;cursor:pointer;border:none;transition:background .2s}.form-group input[type=range]::-moz-range-thumb:hover{background:var(--button-hover)}.range-labels{display:flex;justify-content:space-between;margin-top:3px;font-size:11px;color:var(--text-tertiary)}.settings-footer{padding:12px 18px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:10px;flex-shrink:0}.cancel-btn,.save-btn{padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;transition:background-color .2s;border:none}.cancel-btn{background-color:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.cancel-btn:hover{background-color:var(--bg-tertiary)}.save-btn{background-color:var(--button-bg);color:#fff}.save-btn:hover{background-color:var(--button-hover)}.settings-model-selector{position:relative}.settings-model-trigger-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:9px 11px;background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:13px;cursor:pointer;transition:all .2s;text-align:left}.settings-model-trigger-btn:hover:not(:disabled){border-color:var(--button-bg)}.settings-model-trigger-btn:disabled{opacity:.5;cursor:not-allowed}.settings-model-trigger-btn .model-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-model-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;overflow:hidden}.settings-model-dropdown-menu .model-search-wrapper{padding:8px;border-bottom:1px solid var(--border-color)}.settings-model-dropdown-menu .model-search-input{width:100%;padding:6px 10px;background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:13px;outline:none;transition:border-color .2s}.settings-model-dropdown-menu .model-search-input:focus{border-color:var(--button-bg)}.settings-model-dropdown-menu .model-list{max-height:250px;overflow-y:auto}.settings-model-dropdown-menu .model-list::-webkit-scrollbar{width:6px}.settings-model-dropdown-menu .model-list::-webkit-scrollbar-track{background:transparent}.settings-model-dropdown-menu .model-list::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:3px}.settings-model-dropdown-menu .model-list::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}.settings-model-dropdown-menu .model-item{padding:10px 12px;cursor:pointer;font-size:13px;color:var(--text-primary);transition:background-color .15s;border-bottom:1px solid var(--border-color)}.settings-model-dropdown-menu .model-item:last-child{border-bottom:none}.settings-model-dropdown-menu .model-item:hover{background-color:var(--bg-tertiary)}.settings-model-dropdown-menu .model-item.active{background-color:var(--button-bg);color:#fff}.settings-model-dropdown-menu .model-item.active:hover{background-color:var(--button-hover)}.settings-model-dropdown-menu .model-item.no-results{color:var(--text-tertiary);cursor:default;text-align:center}.settings-model-dropdown-menu .model-item.no-results:hover{background-color:transparent}.create-project-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.create-project-modal{background-color:var(--bg-secondary);border-radius:12px;width:90%;max-width:500px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;max-height:90vh}.create-project-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.create-project-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.create-project-header .close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s}.create-project-header .close-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.create-project-content{padding:20px;flex:1;overflow-y:auto}.create-project-content .form-group{margin-bottom:0}.create-project-content label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--text-primary)}.create-project-content input{width:100%;padding:10px 12px;background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;font-family:inherit;outline:none;box-sizing:border-box}.create-project-content input:focus{border-color:var(--button-bg)}.create-project-footer{padding:16px 20px;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end}.create-project-footer .cancel-btn,.create-project-footer .create-btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.create-project-footer .cancel-btn{background-color:var(--bg-tertiary);color:var(--text-primary)}.create-project-footer .cancel-btn:hover{background-color:var(--bg-hover)}.create-project-footer .create-btn{background-color:var(--button-bg);color:#fff}.create-project-footer .create-btn:hover{opacity:.9}.navigation-demo-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;box-sizing:border-box}.navigation-demo-modal{background-color:var(--bg-secondary);border-radius:12px;width:90%;max-width:500px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;margin:0}.navigation-demo-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.navigation-demo-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.navigation-demo-header .close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s}.navigation-demo-header .close-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.navigation-demo-content{padding:20px}.navigation-demo-content p{margin:0;font-size:14px;color:var(--text-primary);line-height:1.6}.navigation-demo-footer{padding:16px 20px;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end}.navigation-demo-footer .skip-btn,.navigation-demo-footer .next-btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s;display:flex;align-items:center;gap:6px}.navigation-demo-footer .skip-btn{background-color:var(--bg-tertiary);color:var(--text-primary)}.navigation-demo-footer .skip-btn:hover{background-color:var(--bg-hover)}.navigation-demo-footer .next-btn{background-color:var(--button-bg);color:#fff}.navigation-demo-footer .next-btn:hover{opacity:.9}.navigation-demo-tooltip{position:fixed;background-color:var(--bg-secondary);border-radius:12px;width:300px;box-shadow:0 8px 32px #0000004d;z-index:2001;border:2px solid var(--button-bg)}.navigation-demo-tooltip-header{padding:16px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.navigation-demo-tooltip-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.navigation-demo-tooltip-header .close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s}.navigation-demo-tooltip-header .close-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.navigation-demo-tooltip-content{padding:16px}.navigation-demo-tooltip-content p{margin:0;font-size:13px;color:var(--text-primary);line-height:1.6}.navigation-demo-tooltip-footer{padding:12px 16px;border-top:1px solid var(--border-color);display:flex;gap:8px;justify-content:flex-end}.navigation-demo-tooltip-footer .skip-btn,.navigation-demo-tooltip-footer .next-btn{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;border:none;transition:all .2s;display:flex;align-items:center;gap:4px}.navigation-demo-tooltip-footer .skip-btn{background-color:var(--bg-tertiary);color:var(--text-primary)}.navigation-demo-tooltip-footer .skip-btn:hover{background-color:var(--bg-hover)}.navigation-demo-tooltip-footer .next-btn{background-color:var(--button-bg);color:#fff}.navigation-demo-tooltip-footer .next-btn:hover{opacity:.9}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #212121;--bg-secondary: #2f2f2f;--bg-secondary-transparent: rgba(47, 47, 47, .35);--bg-tertiary: #3a3a3a;--bg-hover: #4a4a4a;--bg-input: #2a2a2a;--text-primary: #ececec;--text-secondary: #b4b4b4;--text-tertiary: #8e8e8e;--border-color: #3a3a3a;--message-user-bg: #2a2a2a;--message-assistant-bg: #1e1e1e;--message-border: #2a2a2a;--error-bg: #2a1a1a;--error-border: #4a2a2a;--error-text: #ff6666;--button-bg: #10a37f;--button-hover: #0e8c6f;--primary-color: #10a37f;--primary-hover: #0e8c6f;--primary-color-alpha: rgba(16, 163, 127, .15);--success-color: #4ade80;--sidebar-bg: #2f2f2f;--header-bg: #252525;--input-bg: #2a2a2a;--hover-bg: #3a3a3a;--message-bg: #252525;--disabled-bg: #1a1a1a;--info-bg: rgba(59, 130, 246, .15);--text-color: #ececec}[data-theme=light]{--bg-primary: #fafafa;--bg-secondary: #f0f0f0;--bg-secondary-transparent: rgba(240, 240, 240, .35);--bg-tertiary: #e5e5e5;--bg-hover: #d5d5d5;--bg-input: #f5f5f5;--text-primary: #2c2c2c;--text-secondary: #5a5a5a;--text-tertiary: #888888;--border-color: #d4d4d4;--message-user-bg: #dcf8c6;--message-assistant-bg: #f0f0f0;--message-border: #d4d4d4;--error-bg: #ffe8e8;--error-border: #ffb3b3;--error-text: #d32f2f;--button-bg: #10a37f;--button-hover: #0d8a6a;--primary-color: #10a37f;--primary-hover: #0d8a6a;--primary-color-alpha: rgba(16, 163, 127, .15);--success-color: #22c55e;--sidebar-bg: #ffffff;--header-bg: #f5f5f5;--input-bg: #ffffff;--hover-bg: #e5e5e5;--message-bg: #fafafa;--disabled-bg: #f5f5f5;--info-bg: rgba(59, 130, 246, .15);--text-color: #2c2c2c}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary)}.app{display:flex;height:100vh;background-color:var(--bg-primary);color:var(--text-primary);overflow:hidden;position:relative}.setup-screen{flex:1;display:flex;align-items:center;justify-content:center;background-color:var(--bg-primary)}.setup-content{text-align:center;padding:40px;max-width:500px}.setup-content h1{font-size:32px;font-weight:600;margin-bottom:16px;color:var(--text-primary)}.setup-content p{font-size:16px;color:var(--text-secondary);line-height:1.5}
