.ai-chat-container{background:#f1f5ff;width:100%;height:calc(100vh - 125px)}.ai-chat-container,.sidebar{display:-webkit-box;display:-ms-flexbox;display:flex}.sidebar{width:260px;background:#fff;border-right:1px solid #e8e8e8;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:16px;-webkit-box-sizing:border-box;box-sizing:border-box}.sidebar-header{display:-webkit-box;display:-ms-flexbox;display:flex;gap:0;margin-bottom:20px}.btn-primary,.btn-secondary{padding:5px 16px;font-size:14px;cursor:pointer;border:none}.btn-primary{background:#2a67e9;color:#fff;border-radius:6px 0 0 6px}.btn-primary,.btn-secondary{-webkit-box-flex:1;-ms-flex:1;flex:1}.btn-secondary{background:transparent;color:#666;border-radius:0 6px 6px 0;border:1px solid #d9d9d9}.new-chat-btn{width:100%;padding:6px;background:#e2e9f9;border:1px solid #c5d2f7;color:#2458f6;border-radius:8px;font-size:14px;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:6px;margin-bottom:24px}.new-chat-btn:hover{background:#e2e9f9;border:1px solid #c5d2f7}.new-chat-btn:disabled{opacity:.6;cursor:not-allowed}.icon-plus:before{content:"+";font-size:18px;font-weight:700}.chat-history{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow-y:auto}.history-group{margin-bottom:20px}.group-title{font-size:13px;color:#a9a9a9;padding:8px 0;font-weight:500}.history-item{padding:10px 12px;font-size:14px;color:#4a4a4a;border-radius:6px;cursor:pointer;-webkit-transition:all .2s;transition:all .2s;margin-bottom:4px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.history-item.active,.history-item:hover{background:#e2e9f9}.icon-more:before{content:"···";color:#999;font-size:16px}.main-content{background:#fff}.main-content,.welcome-section{-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.welcome-section{text-align:center;padding-top:20px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.title{font-size:28px;color:#404040;font-weight:500;margin-bottom:32px}.mode-switch{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:16px;margin-bottom:20px}.mode-btn{padding:6px 20px;border-radius:20px;font-size:15px;cursor:pointer;border:1px solid #d9d9d9;background:#fff;color:#666;-webkit-transition:all .3s;transition:all .3s}.mode-btn.active{background:#f0f2fc;color:#3472e6;border-color:#b2c0f5}.mode-btn:not(.active):hover{border-color:#e1e2e9;color:#838487}.description{font-size:20px;color:#7e828e;line-height:1.6}.chat-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:14px 20px 10px;border-bottom:1px solid #f0f0f0;-ms-flex-negative:0;flex-shrink:0}.chat-title{font-size:16px;color:#404040;font-weight:600;margin:0 0 8px 0}.chat-meta{font-size:12px;color:#cacaca}.chat-messages{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow-y:auto;padding:20px 15px}.message-row{margin-bottom:32px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;gap:12px}.message-avatar{-ms-flex-negative:0;flex-shrink:0}.message-body{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0}.user-message .user-message-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.message-time{font-size:12px;color:#999;margin-top:8px;padding-left:4px}.user-message .message-time{text-align:right;padding-right:4px;padding-left:0}.message-bubble{max-width:350px;padding:8px 10px;border-radius:8px;font-size:14px;color:#3d4656}.user-message .message-bubble{color:#fff}.message-images{display:-webkit-box;display:-ms-flexbox;display:flex;gap:8px;-ms-flex-wrap:wrap;flex-wrap:wrap}.message-images+.message-text{margin-top:8px}.message-text{word-break:break-word;line-height:1.5}.message-image{max-width:80px;max-height:80px;border-radius:8px;-o-object-fit:cover;object-fit:cover;cursor:pointer;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.message-image:hover{-webkit-transform:scale(1.05);transform:scale(1.05)}.message-image-item{position:relative;display:inline-block}.message-image-item .message-image{display:block}.message-image-actions{position:absolute;bottom:4px;right:4px;opacity:0;-webkit-transition:opacity .3s;transition:opacity .3s}.message-image-item:hover .message-image-actions{opacity:1}.message-image-actions .ant-btn-link{padding:2px 4px;font-size:12px;height:20px;background:hsla(0,0%,100%,.8);border-radius:4px}.message-text-wrapper{background:#1890ff;padding:4px 10px;border-radius:4px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.message-text-wrapper .message-text{word-break:break-word;line-height:1.5}.message-text-wrapper .message-actions{margin-top:3px;padding-left:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.ai-message .ai-message-wrapper{width:100%}.ai-message-wrapper .message-content.streaming{position:relative}.ai-message-wrapper .message-content.streaming:after{content:"|";-webkit-animation:blink 1s infinite;animation:blink 1s infinite;color:#1890ff;margin-left:2px}@-webkit-keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.ai-message .message-content{background:#fff;border:1px solid #f0f0f0;border-radius:8px;padding:12px 16px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.04);box-shadow:0 1px 2px rgba(0,0,0,.04)}.message-content{font-size:15px;line-height:1.8;color:#3d4656}.message-content .code-block{background-color:#282c34;color:#abb2bf;padding:12px 16px;border-radius:6px;margin:8px 0;overflow-x:auto;font-size:13px;line-height:1.6}.message-content .inline-code{background-color:#f5f5f5;border:1px solid #e8e8e8;border-radius:3px;padding:1px 5px;font-size:13px;color:#d14}.message-content strong{font-weight:600}.message-actions{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:12px;margin-top:16px;padding-left:4px}.message-actions .ant-btn-link{padding:0 4px;font-size:12px;height:20px}.typing-indicator{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:12px 16px;background-color:#fff;border:1px solid #f0f0f0;border-radius:8px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.04);box-shadow:0 1px 2px rgba(0,0,0,.04)}.typing-indicator span{width:8px;height:8px;border-radius:50%;background-color:#bbb;margin-right:6px;-webkit-animation:typing 1.4s infinite both;animation:typing 1.4s infinite both}.typing-indicator span:first-child{-webkit-animation-delay:0s;animation-delay:0s}.typing-indicator span:nth-child(2){-webkit-animation-delay:.2s;animation-delay:.2s}.typing-indicator span:nth-child(3){-webkit-animation-delay:.4s;animation-delay:.4s;margin-right:0}@-webkit-keyframes typing{0%,60%,to{-webkit-transform:translateY(0);transform:translateY(0);opacity:.4}30%{-webkit-transform:translateY(-8px);transform:translateY(-8px);opacity:1}}@keyframes typing{0%,60%,to{-webkit-transform:translateY(0);transform:translateY(0);opacity:.4}30%{-webkit-transform:translateY(-8px);transform:translateY(-8px);opacity:1}}.input-area{padding:20px 40px 30px;-ms-flex-negative:0;flex-shrink:0}.input-tip{text-align:center;font-size:12px;color:#999;margin-top:6px}.input-wrapper{max-width:900px;margin:0 auto;background:#fff;border:1px solid #d9d9d9;border-radius:12px;padding:12px 16px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:8px;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.06);box-shadow:0 2px 8px rgba(0,0,0,.06)}.input-wrapper,.pending-images{display:-webkit-box;display:-ms-flexbox;display:flex}.pending-images{gap:0;padding:0;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-bottom:8px}.pending-image-item{position:relative;width:80px;height:80px;border-radius:8px;overflow:visible;border:1px solid #d9d9d9;background:#f5f5f5;margin:12px 8px 4px 8px}.pending-image-preview{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;cursor:pointer;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;border-radius:8px}.pending-image-item:hover .pending-image-preview{-webkit-transform:scale(1.05);transform:scale(1.05)}.pending-image-remove{position:absolute;top:-12px;right:-12px;width:24px;height:24px;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;cursor:pointer;font-size:14px;-webkit-transition:all .3s;transition:all .3s;z-index:10}.pending-image-remove:hover{background:rgba(0,0,0,.8);-webkit-transform:scale(1.1);transform:scale(1.1)}.pending-image-remove:active{-webkit-transform:scale(.9);transform:scale(.9)}.attach-btn{width:32px;height:32px;border-radius:50%;border:1px solid #d9d9d9;background:transparent;color:#666;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:all .3s;transition:all .3s}.attach-btn:hover{border-color:#1890ff;color:#1890ff}.chat-input{width:100%;border:none;outline:none;font-size:14px;line-height:22px;color:#333;background:transparent;resize:none;padding:4px 0;min-height:30px;max-height:96px;overflow-y:hidden;-webkit-transition:height .1s ease;transition:height .1s ease}.chat-input::-webkit-input-placeholder{color:#bfbfbf}.chat-input::-moz-placeholder{color:#bfbfbf}.chat-input:-ms-input-placeholder{color:#bfbfbf}.chat-input::-ms-input-placeholder{color:#bfbfbf}.chat-input::placeholder{color:#bfbfbf}.input-actions{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.actions-right,.input-actions{gap:10px}.actions-right,.input-actions,.model-selector{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.model-selector{padding:6px 12px;background:#f5f5f5;border-radius:6px;font-size:13px;color:#494949;gap:6px;cursor:pointer;white-space:nowrap}.model-selector:hover{background:#e8e8e8}.icon-arrow-down:before{content:"∨";font-size:12px}.send-btn{width:32px;height:32px;border-radius:50%;border:none;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:all .3s;transition:all .3s;background:#1890ff;color:#fff}.send-btn.disabled{background:#d9d9d9;cursor:not-allowed}.send-btn:not(.disabled):hover{background:#40a9ff}.icon-send:before{content:"↑";font-size:18px}