body{margin:0;padding:0;font-family:"Arial",sans-serif;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);min-height:100vh}.header{padding:20px;background-color:#ffffffe6;box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:100}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.site-title{flex:1;min-width:200px}.site-title h1{margin:0;color:#2c3e50;font-size:1.8rem}.nav-menu{display:flex;gap:15px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.nav-btn{padding:8px 16px;background-color:#42b983;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.nav-btn:hover{background-color:#359c6d}.logout-btn{background-color:#e74c3c!important}.logout-btn:hover{background-color:#c0392b!important}.user-info{color:#2c3e50;font-weight:500;margin:0 10px}.main-content{min-height:calc(100vh - 150px)}.footer{text-align:center;padding:15px 20px;background-color:#ffffffe6;color:#666;font-size:.9rem}@media (max-width: 768px){.header{padding:10px 12px}.header-content{flex-wrap:wrap;gap:8px}.site-title{min-width:unset;flex-shrink:0}.site-title h1{font-size:1.2rem;white-space:nowrap}.nav-menu{flex:1 1 100%;order:2;gap:6px;flex-wrap:wrap;justify-content:flex-start}.nav-btn{padding:6px 10px;font-size:.85rem;white-space:nowrap;flex-shrink:0}.user-info{display:none}}.home-container[data-v-435fcd60]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:500px;padding:20px}h1[data-v-435fcd60]{color:#333;margin-bottom:30px}.user-info[data-v-435fcd60]{background:white;padding:20px 40px;border-radius:8px;box-shadow:0 2px 12px #0000001a;margin-bottom:20px}.user-info p[data-v-435fcd60]{margin:10px 0;color:#555;font-size:16px}.logout-btn[data-v-435fcd60]{padding:12px 24px;background-color:#e74c3c;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.logout-btn[data-v-435fcd60]:hover{background-color:#c0392b}.actions[data-v-435fcd60]{display:flex;gap:15px;align-items:center}.change-pwd-btn[data-v-435fcd60]{padding:12px 24px;background-color:#42b983;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;text-decoration:none;transition:background-color .3s}.change-pwd-btn[data-v-435fcd60]:hover{background-color:#359c6d}.login-container[data-v-25c36c46]{display:flex;justify-content:center;align-items:center;min-height:500px;padding:20px}.login-form[data-v-25c36c46]{background:white;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:400px}.login-form h2[data-v-25c36c46]{text-align:center;margin-bottom:25px;color:#333}.form-group[data-v-25c36c46]{margin-bottom:20px}.form-group label[data-v-25c36c46]{display:block;margin-bottom:5px;color:#555;font-weight:500}.form-group input[data-v-25c36c46]{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;box-sizing:border-box}.form-group input[data-v-25c36c46]:focus{outline:none;border-color:#42b983;box-shadow:0 0 5px #42b9834d}.error-msg[data-v-25c36c46]{color:#e74c3c;font-size:14px;margin-bottom:15px;text-align:center}.remember-row[data-v-25c36c46]{margin-bottom:15px;display:flex;justify-content:flex-start}.remember-label[data-v-25c36c46]{display:flex;align-items:center;gap:6px;font-size:14px;color:#555;cursor:pointer;user-select:none}.remember-label input[type=checkbox][data-v-25c36c46]{width:15px;height:15px;cursor:pointer}.submit-btn[data-v-25c36c46]{width:100%;padding:12px;background-color:#42b983;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.submit-btn[data-v-25c36c46]:hover{background-color:#359c6d}.submit-btn[data-v-25c36c46]:disabled{background-color:#ccc;cursor:not-allowed}.switch-form[data-v-25c36c46]{text-align:center;margin-top:20px}.switch-form a[data-v-25c36c46]{color:#42b983;text-decoration:none}.switch-form a[data-v-25c36c46]:hover{text-decoration:underline}.download-section[data-v-25c36c46]{margin-top:25px;padding-top:20px;border-top:1px solid #eee}.download-title[data-v-25c36c46]{text-align:center;color:#333;font-weight:500;margin-bottom:12px}.download-link[data-v-25c36c46]{text-align:center;font-size:14px;color:#666;margin-bottom:8px}.download-link a[data-v-25c36c46]{color:#42b983;text-decoration:none}.download-link a[data-v-25c36c46]:hover{text-decoration:underline}.register-container[data-v-5fda69b6]{display:flex;justify-content:center;align-items:center;min-height:500px;padding:20px}.register-form[data-v-5fda69b6]{background:white;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:400px}.register-form h2[data-v-5fda69b6]{text-align:center;margin-bottom:25px;color:#333}.form-group[data-v-5fda69b6]{margin-bottom:20px}.form-group label[data-v-5fda69b6]{display:block;margin-bottom:5px;color:#555;font-weight:500}.form-group input[data-v-5fda69b6]{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;box-sizing:border-box}.form-group input[data-v-5fda69b6]:focus{outline:none;border-color:#42b983;box-shadow:0 0 5px #42b9834d}.code-input[data-v-5fda69b6]{display:flex;gap:10px}.code-input input[data-v-5fda69b6]{flex:1}.send-code-btn[data-v-5fda69b6]{padding:12px 16px;background-color:#42b983;color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer;white-space:nowrap;transition:background-color .3s}.send-code-btn[data-v-5fda69b6]:hover:not(:disabled){background-color:#359c6d}.send-code-btn[data-v-5fda69b6]:disabled{background-color:#ccc;cursor:not-allowed}.error-msg[data-v-5fda69b6]{color:#e74c3c;font-size:14px;margin-bottom:15px;text-align:center}.submit-btn[data-v-5fda69b6]{width:100%;padding:12px;background-color:#42b983;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.submit-btn[data-v-5fda69b6]:hover{background-color:#359c6d}.submit-btn[data-v-5fda69b6]:disabled{background-color:#ccc;cursor:not-allowed}.switch-form[data-v-5fda69b6]{text-align:center;margin-top:20px}.switch-form a[data-v-5fda69b6]{color:#42b983;text-decoration:none}.switch-form a[data-v-5fda69b6]:hover{text-decoration:underline}.forgot-container[data-v-66c53e32]{display:flex;justify-content:center;align-items:center;min-height:500px;padding:20px}.forgot-form[data-v-66c53e32]{background:white;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:400px}.forgot-form h2[data-v-66c53e32]{text-align:center;margin-bottom:25px;color:#333}.form-group[data-v-66c53e32]{margin-bottom:20px}.form-group label[data-v-66c53e32]{display:block;margin-bottom:5px;color:#555;font-weight:500}.form-group input[data-v-66c53e32]{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;box-sizing:border-box}.form-group input[data-v-66c53e32]:focus{outline:none;border-color:#42b983;box-shadow:0 0 5px #42b9834d}.code-input[data-v-66c53e32]{display:flex;gap:10px}.code-input input[data-v-66c53e32]{flex:1}.send-code-btn[data-v-66c53e32]{padding:12px 16px;background-color:#42b983;color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer;white-space:nowrap;transition:background-color .3s}.send-code-btn[data-v-66c53e32]:hover:not(:disabled){background-color:#359c6d}.send-code-btn[data-v-66c53e32]:disabled{background-color:#ccc;cursor:not-allowed}.error-msg[data-v-66c53e32]{color:#e74c3c;font-size:14px;margin-bottom:15px;text-align:center}.success-msg[data-v-66c53e32]{color:#27ae60;font-size:14px;margin-bottom:15px;text-align:center}.submit-btn[data-v-66c53e32]{width:100%;padding:12px;background-color:#42b983;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.submit-btn[data-v-66c53e32]:hover{background-color:#359c6d}.submit-btn[data-v-66c53e32]:disabled{background-color:#ccc;cursor:not-allowed}.switch-form[data-v-66c53e32]{text-align:center;margin-top:20px}.switch-form a[data-v-66c53e32]{color:#42b983;text-decoration:none}.switch-form a[data-v-66c53e32]:hover{text-decoration:underline}.change-container[data-v-364a900f]{display:flex;justify-content:center;align-items:center;min-height:500px;padding:20px}.change-form[data-v-364a900f]{background:white;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:400px}.change-form h2[data-v-364a900f]{text-align:center;margin-bottom:25px;color:#333}.form-group[data-v-364a900f]{margin-bottom:20px}.form-group label[data-v-364a900f]{display:block;margin-bottom:5px;color:#555;font-weight:500}.form-group input[data-v-364a900f]{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;box-sizing:border-box}.form-group input[data-v-364a900f]:focus{outline:none;border-color:#42b983;box-shadow:0 0 5px #42b9834d}.error-msg[data-v-364a900f]{color:#e74c3c;font-size:14px;margin-bottom:15px;text-align:center}.success-msg[data-v-364a900f]{color:#27ae60;font-size:14px;margin-bottom:15px;text-align:center}.submit-btn[data-v-364a900f]{width:100%;padding:12px;background-color:#42b983;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.submit-btn[data-v-364a900f]:hover{background-color:#359c6d}.submit-btn[data-v-364a900f]:disabled{background-color:#ccc;cursor:not-allowed}.switch-form[data-v-364a900f]{text-align:center;margin-top:20px}.switch-form a[data-v-364a900f]{color:#42b983;text-decoration:none}.switch-form a[data-v-364a900f]:hover{text-decoration:underline}.public-char-container[data-v-7896fcd8]{display:flex;justify-content:center;padding:20px}.public-char-form[data-v-7896fcd8]{background:white;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:800px}.public-char-form h2[data-v-7896fcd8]{text-align:center;margin-bottom:25px;color:#333}.guest-tip[data-v-7896fcd8]{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:16px;border-radius:8px;margin-bottom:20px;text-align:center}.guest-tip p[data-v-7896fcd8]{margin:4px 0}.guest-tip a[data-v-7896fcd8]{color:#ffd93d;text-decoration:underline}.search-section[data-v-7896fcd8]{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #eee}.search-section h3[data-v-7896fcd8]{margin-bottom:12px;color:#555;font-size:16px}.dev-tools[data-v-7896fcd8]{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px;padding:12px;background:#f6f3ff;border:1px dashed #8E44AD;border-radius:8px}.dev-btn[data-v-7896fcd8]{padding:8px 16px;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px}.dev-btn.create[data-v-7896fcd8]{background:#8E44AD}.dev-btn.import[data-v-7896fcd8]{background:#42b983}.dev-btn[data-v-7896fcd8]:hover{opacity:.9}.dev-tip[data-v-7896fcd8]{font-size:12px;color:#8e44ad;flex:1 1 100%}.form-group[data-v-7896fcd8]{margin-bottom:12px}.form-group label[data-v-7896fcd8]{display:block;margin-bottom:6px;color:#555;font-size:14px}.search-input[data-v-7896fcd8]{display:flex;gap:8px}.search-input input[data-v-7896fcd8],.form-group input[data-v-7896fcd8],.form-group textarea[data-v-7896fcd8],.select-input[data-v-7896fcd8]{flex:1;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box;width:100%}.form-group textarea[data-v-7896fcd8]{resize:vertical}.search-input input[data-v-7896fcd8]:focus,.form-group input[data-v-7896fcd8]:focus,.form-group textarea[data-v-7896fcd8]:focus,.select-input[data-v-7896fcd8]:focus{outline:none;border-color:#42b983}.msg[data-v-7896fcd8]{margin-top:8px;padding:8px 12px;border-radius:4px;font-size:14px}.msg.success[data-v-7896fcd8]{background-color:#d4edda;color:#155724}.msg.error[data-v-7896fcd8]{background-color:#f8d7da;color:#721c24}.character-list[data-v-7896fcd8]{margin-top:16px}.list-header[data-v-7896fcd8]{margin-bottom:12px;color:#666;font-size:14px}.loading[data-v-7896fcd8],.empty[data-v-7896fcd8]{text-align:center;padding:20px;color:#999}.character-item[data-v-7896fcd8]{position:relative;display:flex;align-items:center;padding:12px;border:1px solid #eee;border-radius:8px;margin-bottom:8px;transition:background-color .2s}.character-item[data-v-7896fcd8]:hover{background-color:#f9f9f9}.char-del[data-v-7896fcd8]{position:absolute;top:4px;right:8px;width:22px;height:22px;line-height:20px;border:none;border-radius:50%;background:#f1f1f1;color:#999;font-size:16px;cursor:pointer;text-align:center;padding:0}.char-del[data-v-7896fcd8]:hover{background:#e74c3c;color:#fff}.char-avatar[data-v-7896fcd8]{width:50px;height:50px;margin-right:12px;flex-shrink:0}.char-avatar img[data-v-7896fcd8]{width:100%;height:100%;border-radius:8px;object-fit:cover}.avatar-placeholder[data-v-7896fcd8]{width:100%;height:100%;border-radius:8px;background-color:#42b983;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:bold}.avatar-placeholder.small[data-v-7896fcd8]{font-size:16px}.char-info[data-v-7896fcd8]{flex:1;min-width:0}.char-name[data-v-7896fcd8]{font-size:16px;font-weight:600;color:#333;margin-bottom:4px}.char-remark[data-v-7896fcd8]{cursor:help}.char-bio[data-v-7896fcd8]{font-size:13px;color:#666;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-meta[data-v-7896fcd8]{display:flex;gap:12px;font-size:12px;color:#999}.enhance-tag[data-v-7896fcd8]{color:#8e44ad}.char-actions[data-v-7896fcd8]{margin-left:12px;flex-shrink:0;display:flex;gap:6px}.act-btn[data-v-7896fcd8]{padding:5px 12px;border:none;border-radius:4px;cursor:pointer;font-size:13px;color:#fff}.act-btn.import[data-v-7896fcd8]{background:#42b983}.act-btn.edit[data-v-7896fcd8]{background:#8E44AD}.act-btn.danger[data-v-7896fcd8]{background:#e74c3c}.act-btn[data-v-7896fcd8]:hover{opacity:.9}.modal-mask[data-v-7896fcd8]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:200}.modal[data-v-7896fcd8]{background:#fff;border-radius:10px;padding:25px;width:560px;max-width:94vw;max-height:90vh;overflow-y:auto}.wide-modal[data-v-7896fcd8]{width:640px}.modal h3[data-v-7896fcd8]{margin:0 0 16px;color:#333}.field-hint[data-v-7896fcd8]{font-size:12px;color:#8e44ad;margin-top:4px}.emoji-editor[data-v-7896fcd8]{display:flex;flex-direction:column;gap:8px}.emoji-item[data-v-7896fcd8]{display:flex;align-items:center;gap:12px;padding:8px;border:1px solid #eee;border-radius:8px;background:#fafafa}.emoji-thumb[data-v-7896fcd8]{width:48px;height:48px;border-radius:6px;object-fit:cover;flex-shrink:0}.emoji-thumb.placeholder[data-v-7896fcd8]{display:inline-flex;align-items:center;justify-content:center;background:#eee;color:#aaa;font-size:13px}.emoji-info[data-v-7896fcd8]{flex:1;min-width:0}.emoji-name[data-v-7896fcd8]{font-size:14px;font-weight:600;color:#333;margin-bottom:2px}.emoji-desc[data-v-7896fcd8]{font-size:12px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emoji-del[data-v-7896fcd8]{width:24px;height:24px;line-height:22px;border:none;border-radius:50%;background:#f1f1f1;color:#999;font-size:15px;cursor:pointer;text-align:center;padding:0;flex-shrink:0}.emoji-del[data-v-7896fcd8]:hover{background:#e74c3c;color:#fff}.emoji-empty[data-v-7896fcd8]{font-size:13px;color:#bbb;padding:6px 0}.emoji-add-modal[data-v-7896fcd8]{width:440px}.avatar-upload[data-v-7896fcd8]{display:flex;align-items:center;gap:12px}.avatar-big[data-v-7896fcd8]{width:64px;height:64px;border-radius:8px;object-fit:cover}.avatar-big.placeholder[data-v-7896fcd8]{display:inline-flex;align-items:center;justify-content:center;background:#eee;color:#aaa}.file-btn[data-v-7896fcd8]{padding:8px 14px;background:#42b983;color:#fff;border-radius:4px;cursor:pointer;font-size:13px}.upload-msg[data-v-7896fcd8]{font-size:12px;color:#42b983}.modal-actions[data-v-7896fcd8]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.btn-cancel[data-v-7896fcd8]{padding:8px 18px;background:#eee;color:#666;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-save[data-v-7896fcd8]{padding:8px 18px;background:#42b983;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-save[data-v-7896fcd8]:disabled{opacity:.6;cursor:not-allowed}.re-desc[data-v-7896fcd8]{color:#888;font-size:13px;margin:0 0 15px;line-height:1.5}.private-list[data-v-7896fcd8]{display:flex;flex-direction:column;gap:8px;max-height:50vh;overflow-y:auto}.private-item[data-v-7896fcd8]{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid #eee;border-radius:8px;cursor:pointer;transition:background-color .2s}.private-item[data-v-7896fcd8]:hover{background-color:#f9f9f9}.private-avatar[data-v-7896fcd8]{width:44px;height:44px;flex-shrink:0}.private-avatar img[data-v-7896fcd8]{width:100%;height:100%;border-radius:8px;object-fit:cover}.private-info[data-v-7896fcd8]{flex:1;min-width:0}.private-name[data-v-7896fcd8]{font-size:15px;font-weight:600;color:#333;margin-bottom:3px}.private-prompt[data-v-7896fcd8]{font-size:12px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pick-arrow[data-v-7896fcd8]{color:#42b983;font-size:18px;flex-shrink:0}.chat-container[data-v-b2cee6c6]{display:flex;height:calc(100vh - 130px);max-width:1400px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden}.sidebar[data-v-b2cee6c6]{width:280px;min-width:280px;background:#f8f9fa;border-right:1px solid #e9ecef;display:flex;flex-direction:column;overflow:hidden}.character-section[data-v-b2cee6c6]{padding:16px;border-bottom:1px solid #e9ecef}.section-title[data-v-b2cee6c6]{font-size:13px;color:#666;margin-bottom:10px;font-weight:500}.character-card[data-v-b2cee6c6]{display:flex;align-items:center;gap:10px;padding:10px;background:#fff;border-radius:8px;cursor:pointer;transition:background .15s}.character-card[data-v-b2cee6c6]:hover{background:#f0f4f8}.character-avatar img[data-v-b2cee6c6]{width:40px;height:40px;border-radius:50%;object-fit:cover}.avatar-placeholder[data-v-b2cee6c6]{width:40px;height:40px;border-radius:50%;background:#42b983;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:bold}.character-name[data-v-b2cee6c6]{font-size:15px;font-weight:600;color:#333}.no-character[data-v-b2cee6c6]{color:#999;font-size:13px;padding:10px;text-align:center}.topic-section[data-v-b2cee6c6]{flex:1;display:flex;flex-direction:column;overflow:hidden}.section-header[data-v-b2cee6c6]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;gap:8px}.btn-new-topic[data-v-b2cee6c6]{width:28px;height:28px;border-radius:50%;border:none;background:#42b983;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.btn-new-topic[data-v-b2cee6c6]:hover{background:#359c6d}.btn-import[data-v-b2cee6c6]{padding:4px 12px;border-radius:14px;border:none;background:#2196F3;color:#fff;font-size:12px;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-import[data-v-b2cee6c6]:hover{background:#1976D2}.progress-info[data-v-b2cee6c6]{margin-bottom:16px}.progress-text[data-v-b2cee6c6]{font-size:14px;color:#666;margin-bottom:8px}.progress-bar-wrapper[data-v-b2cee6c6]{width:100%;height:20px;background:#e0e0e0;border-radius:10px;overflow:hidden}.progress-bar[data-v-b2cee6c6]{height:100%;background:linear-gradient(90deg,#42b983,#359c6d);border-radius:10px;transition:width .3s ease}.progress-percent[data-v-b2cee6c6]{font-size:24px;font-weight:bold;color:#42b983;text-align:center;margin-top:8px}.progress-stats[data-v-b2cee6c6]{display:flex;justify-content:space-around;font-size:13px;color:#666}.topic-list[data-v-b2cee6c6]{flex:1;overflow-y:auto;padding:0 8px 8px}.topic-item[data-v-b2cee6c6]{padding:10px 12px;margin-bottom:4px;border-radius:8px;cursor:pointer;position:relative;transition:background .2s}.topic-item[data-v-b2cee6c6]:hover{background:#e9ecef}.topic-item.active[data-v-b2cee6c6]{background:#d4edda}.topic-name[data-v-b2cee6c6]{font-size:14px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:20px}.topic-time[data-v-b2cee6c6]{font-size:12px;color:#999;margin-top:2px}.btn-delete-topic[data-v-b2cee6c6]{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:22px;height:22px;border:none;background:transparent;color:#999;font-size:16px;cursor:pointer;border-radius:4px;display:none;align-items:center;justify-content:center}.topic-item:hover .btn-delete-topic[data-v-b2cee6c6]{display:flex}.btn-delete-topic[data-v-b2cee6c6]:hover{background:#ff5252;color:#fff}.no-topics[data-v-b2cee6c6]{text-align:center;color:#999;padding:20px;font-size:14px}.chat-main[data-v-b2cee6c6]{flex:1;display:flex;flex-direction:column;overflow:hidden}.chat-header[data-v-b2cee6c6]{padding:14px 20px;border-bottom:1px solid #e9ecef;background:#fff;display:flex;align-items:center;gap:10px}.chat-title[data-v-b2cee6c6]{font-size:16px;font-weight:600;color:#333;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-pet-toggle[data-v-b2cee6c6]{flex-shrink:0;padding:6px 14px;border:1px solid #5b8def;border-radius:6px;background:#fff;color:#5b8def;font-size:13px;cursor:pointer;transition:all .2s}.btn-pet-toggle[data-v-b2cee6c6]:hover{background:#5b8def;color:#fff}.message-list[data-v-b2cee6c6]{flex:1;overflow-y:auto;padding:20px;background:#f5f5f5}.no-messages[data-v-b2cee6c6]{text-align:center;color:#999;padding:80px 20px}.no-messages p[data-v-b2cee6c6]{margin:8px 0}.no-messages .hint[data-v-b2cee6c6]{font-size:13px;color:#bbb}.loading-more[data-v-b2cee6c6]{text-align:center;padding:10px;font-size:13px;color:#999}.no-more[data-v-b2cee6c6]{text-align:center;padding:10px;font-size:12px;color:#ccc}.time-label[data-v-b2cee6c6]{text-align:center;font-size:12px;color:#999;margin:16px 0 8px}.message-wrapper[data-v-b2cee6c6]{display:flex;margin-bottom:12px}.message-wrapper.user[data-v-b2cee6c6]{justify-content:flex-end}.message-wrapper.assistant[data-v-b2cee6c6]{justify-content:flex-start}.message-bubble[data-v-b2cee6c6]{max-width:70%;padding:10px 14px;border-radius:16px;word-wrap:break-word;line-height:1.5}.message-wrapper.user .message-bubble[data-v-b2cee6c6]{background:#2196F3;color:#fff;border-bottom-right-radius:4px}.message-wrapper.assistant .message-bubble[data-v-b2cee6c6]{background:#fff;color:#333;border-bottom-left-radius:4px;box-shadow:0 1px 3px #00000014}.message-content[data-v-b2cee6c6]{font-size:15px}.msg-text[data-v-b2cee6c6]{white-space:pre-wrap;word-break:break-word;line-height:1.6}.stream-cursor[data-v-b2cee6c6]{display:inline-block;margin-left:1px;color:#8a8f98;animation:stream-blink-b2cee6c6 1s step-end infinite}@keyframes stream-blink-b2cee6c6{0%,to{opacity:1}50%{opacity:0}}.message-bubble.loading[data-v-b2cee6c6]{padding:12px 18px}.dot[data-v-b2cee6c6]{display:inline-block;width:8px;height:8px;border-radius:50%;background:#999;margin:0 3px;animation:dot-pulse-b2cee6c6 1.4s infinite ease-in-out both}.dot[data-v-b2cee6c6]:nth-child(1){animation-delay:0s}.dot[data-v-b2cee6c6]:nth-child(2){animation-delay:.2s}.dot[data-v-b2cee6c6]:nth-child(3){animation-delay:.4s}@keyframes dot-pulse-b2cee6c6{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.input-area[data-v-b2cee6c6]{display:flex;flex-direction:column;padding:12px 16px;border-top:1px solid #e9ecef;background:#fff;gap:10px}.input-row[data-v-b2cee6c6]{display:flex;gap:10px;align-items:flex-end}.input-area textarea[data-v-b2cee6c6]{flex:1;padding:10px 14px;border:1px solid #ddd;border-radius:20px;font-size:15px;resize:none;outline:none;font-family:inherit;max-height:120px;line-height:1.4}.input-area textarea[data-v-b2cee6c6]:focus{border-color:#42b983}.btn-send[data-v-b2cee6c6]{padding:10px 24px;background:#42b983;color:#fff;border:none;border-radius:20px;font-size:15px;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-send[data-v-b2cee6c6]:hover:not(:disabled){background:#359c6d}.btn-send[data-v-b2cee6c6]:disabled{background:#ccc;cursor:not-allowed}.msg-image-wrap[data-v-b2cee6c6]{display:flex;justify-content:center;margin:2px 0 6px}.msg-image[data-v-b2cee6c6]{display:block;max-width:160px;max-height:160px;width:auto;height:auto;border-radius:12px;cursor:zoom-in;object-fit:contain;background:rgba(0,0,0,.04)}.btn-emoji[data-v-b2cee6c6]{width:40px;height:40px;flex-shrink:0;border:1px solid #ddd;border-radius:20px;background:#fff;font-size:18px;cursor:pointer;transition:all .2s;line-height:1;padding:0}.btn-emoji[data-v-b2cee6c6]:hover,.btn-emoji.active[data-v-b2cee6c6]{border-color:#42b983;background:#e8f8f1}.emoji-panel[data-v-b2cee6c6]{border:1px solid #e9ecef;border-radius:12px;background:#fafafa;padding:10px 12px;max-height:220px;overflow-y:auto}.emoji-panel-header[data-v-b2cee6c6]{display:flex;align-items:center;gap:8px;margin-bottom:8px}.emoji-tab[data-v-b2cee6c6]{padding:4px 12px;border:1px solid #ddd;border-radius:14px;background:#fff;font-size:13px;color:#666;cursor:pointer;transition:all .2s}.emoji-tab.active[data-v-b2cee6c6]{border-color:#42b983;color:#42b983;background:#e8f8f1}.emoji-panel-count[data-v-b2cee6c6]{margin-left:auto;font-size:12px;color:#999}.emoji-grid[data-v-b2cee6c6]{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px}.emoji-cell[data-v-b2cee6c6]{width:64px;height:64px;border-radius:10px;background:#fff;border:1px solid #eee;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;transition:transform .15s,border-color .15s}.emoji-cell[data-v-b2cee6c6]:hover{transform:scale(1.08);border-color:#42b983}.emoji-cell img[data-v-b2cee6c6]{width:100%;height:100%;object-fit:cover}.emoji-empty[data-v-b2cee6c6]{padding:24px 0;text-align:center;color:#999;font-size:13px}.preview-mask[data-v-b2cee6c6]{position:fixed;inset:0;background:rgba(0,0,0,.65);display:flex;align-items:center;justify-content:center;z-index:1200;cursor:zoom-out}.preview-img[data-v-b2cee6c6]{max-width:80vw;max-height:80vh;border-radius:12px;box-shadow:0 8px 32px #0006}.modal-overlay[data-v-b2cee6c6]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-b2cee6c6]{background:#fff;border-radius:12px;padding:24px;width:360px;max-height:70vh;overflow-y:auto}.modal-box h3[data-v-b2cee6c6]{margin:0 0 16px;font-size:18px;color:#333}.character-list[data-v-b2cee6c6]{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.character-option[data-v-b2cee6c6]{display:flex;align-items:center;gap:12px;padding:12px;border-radius:8px;cursor:pointer;transition:background .2s;border:1px solid #eee}.character-option[data-v-b2cee6c6]:hover{background:#e8f5e9;border-color:#42b983}.character-option-avatar img[data-v-b2cee6c6]{width:36px;height:36px;border-radius:50%;object-fit:cover}.character-option-name[data-v-b2cee6c6]{font-size:15px;color:#333;font-weight:500}.no-characters[data-v-b2cee6c6]{text-align:center;color:#999;padding:20px}.btn-cancel[data-v-b2cee6c6]{width:100%;padding:10px;background:#f5f5f5;border:1px solid #ddd;border-radius:8px;font-size:14px;cursor:pointer;color:#666}.btn-cancel[data-v-b2cee6c6]:hover{background:#eee}.modal-desc[data-v-b2cee6c6]{color:#888;font-size:13px;margin:-8px 0 16px}.character-option-info[data-v-b2cee6c6]{flex:1}.character-option-count[data-v-b2cee6c6]{font-size:12px;color:#999;margin-top:2px}.import-result[data-v-b2cee6c6]{margin-bottom:16px}.result-item[data-v-b2cee6c6]{padding:10px 0;font-size:15px;border-bottom:1px solid #f0f0f0}.result-item[data-v-b2cee6c6]:last-child{border-bottom:none;font-weight:600}.result-item.new[data-v-b2cee6c6]{color:#42b983}.result-item.updated[data-v-b2cee6c6]{color:#ff9800}.result-item.existed[data-v-b2cee6c6]{color:#999}.result-item.total[data-v-b2cee6c6]{color:#333}.sidebar-overlay[data-v-b2cee6c6]{display:none}.btn-sidebar-toggle[data-v-b2cee6c6]{display:none}@media (max-width: 768px){.chat-container[data-v-b2cee6c6]{height:calc(100vh - 70px);border-radius:0;position:relative;overflow:hidden}.sidebar[data-v-b2cee6c6]{position:fixed;left:-280px;top:56px;bottom:0;width:280px;z-index:200;transition:left .3s ease;border-right:1px solid #e9ecef;background:#f8f9fa}.sidebar.open[data-v-b2cee6c6]{left:0}.sidebar-overlay[data-v-b2cee6c6]{display:block;position:fixed;top:56px;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);z-index:199}.chat-main[data-v-b2cee6c6]{width:100%}.btn-sidebar-toggle[data-v-b2cee6c6]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:none;font-size:20px;cursor:pointer;margin-right:8px;flex-shrink:0}.chat-header[data-v-b2cee6c6]{display:flex;align-items:center}.chat-title[data-v-b2cee6c6]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-bubble[data-v-b2cee6c6]{max-width:85%}.input-area textarea[data-v-b2cee6c6]{font-size:16px}.modal-box[data-v-b2cee6c6]{width:90%;max-width:unset;margin:0 16px}}.topic-menu[data-v-b2cee6c6]{position:fixed;z-index:999;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 16px #00000026;padding:4px 0;min-width:120px}.topic-menu-item[data-v-b2cee6c6]{padding:9px 16px;font-size:13px;color:#333;cursor:pointer;user-select:none}.topic-menu-item[data-v-b2cee6c6]:hover{background:#f5f5f5}.topic-menu-item.danger[data-v-b2cee6c6]{color:#e74c3c}.message-wrapper[data-v-b2cee6c6]{cursor:default}.message-wrapper.multi-selecting .message-bubble[data-v-b2cee6c6]{cursor:pointer}.message-wrapper.selected[data-v-b2cee6c6]{background:rgba(66,185,131,.12);border-radius:8px}.msg-checkbox[data-v-b2cee6c6]{width:20px;height:20px;min-width:20px;border:1.5px solid #bbb;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;color:#fff;background:#fff;align-self:center}.msg-checkbox.checked[data-v-b2cee6c6]{background:#42b983;border-color:#42b983}.multi-select-bar[data-v-b2cee6c6]{display:flex;align-items:center;gap:10px;padding:8px 16px;background:#fff;border-top:1px solid #eee}.multi-select-count[data-v-b2cee6c6]{font-size:13px;color:#666;flex:1}.btn-multi[data-v-b2cee6c6]{padding:6px 14px;border:1px solid #ddd;border-radius:6px;background:#fff;color:#333;font-size:13px;cursor:pointer}.btn-multi[data-v-b2cee6c6]:hover{background:#f5f5f5}.btn-multi.danger[data-v-b2cee6c6]{color:#e74c3c;border-color:#f0c8c4}.btn-multi.danger[data-v-b2cee6c6]:hover{background:#fdf0ef}.settings-container[data-v-382f71da]{max-width:600px;margin:30px auto;padding:30px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014}h2[data-v-382f71da]{margin:0 0 24px;color:#333;font-size:22px}.settings-section[data-v-382f71da]{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #f0f0f0}.settings-section[data-v-382f71da]:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.settings-section h3[data-v-382f71da]{margin:0 0 8px;color:#444;font-size:17px}.section-desc[data-v-382f71da]{color:#888;font-size:13px;margin:0 0 20px;line-height:1.5}.form-group[data-v-382f71da]{margin-bottom:20px}.form-group label[data-v-382f71da]{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#555}.input-row[data-v-382f71da]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.input-row input[data-v-382f71da],.select-input[data-v-382f71da]{flex:1;padding:10px 14px;border:1px solid #ddd;border-radius:8px;font-size:14px;outline:none;transition:border-color .2s;background:#fff}.input-row input[data-v-382f71da]:focus,.select-input[data-v-382f71da]:focus{border-color:#42b983}.time-select[data-v-382f71da]{flex:0 0 auto;width:80px}.time-colon[data-v-382f71da]{color:#888;font-size:16px;padding:0 4px}.btn-toggle[data-v-382f71da]{padding:10px 14px;background:#f0f0f0;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:13px;color:#666;white-space:nowrap}.btn-toggle[data-v-382f71da]:hover{background:#e0e0e0}.field-hint[data-v-382f71da]{font-size:12px;color:#aaa;margin-top:4px}.switch-row[data-v-382f71da]{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;font-weight:500;color:#555;margin:0}.switch-row input[type=checkbox][data-v-382f71da]{width:16px;height:16px;accent-color:#42b983;cursor:pointer}.form-actions[data-v-382f71da]{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}.btn-save[data-v-382f71da]{padding:10px 28px;background:#42b983;color:#fff;border:none;border-radius:8px;font-size:15px;cursor:pointer;transition:background .2s}.btn-save[data-v-382f71da]:hover{background:#359c6d}.btn-save[data-v-382f71da]:disabled{opacity:.6;cursor:not-allowed}.btn-view[data-v-382f71da]{padding:10px 20px;background:#eef7ff;color:#1a7fbe;border:1px solid #c9e6fa;border-radius:8px;font-size:14px;cursor:pointer}.btn-view[data-v-382f71da]:hover{background:#dceefb}.btn-clear[data-v-382f71da]{padding:10px 20px;background:#f5f5f5;color:#666;border:1px solid #ddd;border-radius:8px;font-size:14px;cursor:pointer}.btn-clear[data-v-382f71da]:hover{background:#eee}.btn-cancel[data-v-382f71da]{padding:10px 28px;background:#f5f5f5;color:#666;border:1px solid #ddd;border-radius:8px;font-size:14px;cursor:pointer;margin-top:16px}.save-msg[data-v-382f71da]{margin-top:12px;font-size:14px;font-weight:500;color:#42b983}.save-msg.error[data-v-382f71da]{color:#e74c3c}@media (max-width: 600px){.settings-container[data-v-382f71da]{margin:12px auto;padding:16px}.input-row input[data-v-382f71da],.select-input[data-v-382f71da]{min-width:0}.input-row .btn-view[data-v-382f71da]{padding:8px 12px;font-size:13px}}.re-container[data-v-22cfd3da]{display:flex;justify-content:center;padding:20px}.re-card[data-v-22cfd3da]{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:1100px;padding:25px}.re-header h2[data-v-22cfd3da]{margin:0 0 12px;color:#333}.re-actions[data-v-22cfd3da]{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.search-input[data-v-22cfd3da]{flex:1;min-width:160px;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.re-desc[data-v-22cfd3da]{color:#888;font-size:13px;margin:0 0 15px;line-height:1.5}.btn-search[data-v-22cfd3da],.btn-add[data-v-22cfd3da]{padding:8px 16px;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px}.btn-search[data-v-22cfd3da]{background:#42b983}.btn-add[data-v-22cfd3da]{background:#8E44AD}.btn-cancel[data-v-22cfd3da]{background:#eee;color:#666;padding:8px 18px;border:none;border-radius:4px;cursor:pointer}.btn-save[data-v-22cfd3da]{background:#42b983;color:#fff;padding:8px 18px;border:none;border-radius:4px;cursor:pointer}.btn-save[data-v-22cfd3da]:disabled{opacity:.6;cursor:not-allowed}.no-permission[data-v-22cfd3da]{padding:30px;text-align:center;color:#c0392b;font-size:15px}.loading[data-v-22cfd3da],.empty[data-v-22cfd3da]{text-align:center;padding:30px;color:#999}.re-row[data-v-22cfd3da]{display:flex;align-items:center;padding:8px 6px;border-bottom:1px solid #f0f0f0;gap:8px}.re-head[data-v-22cfd3da]{background:#f7f7f7;font-weight:600;color:#555}.col-avatar[data-v-22cfd3da]{width:54px;flex-shrink:0}.col-names[data-v-22cfd3da]{width:160px}.col-code[data-v-22cfd3da]{width:90px}.col-prompt[data-v-22cfd3da]{flex:1;min-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-remark[data-v-22cfd3da]{width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-time[data-v-22cfd3da]{width:130px;font-size:12px;color:#888}.col-ops[data-v-22cfd3da]{width:100px;text-align:right}.avatar[data-v-22cfd3da]{width:44px;height:44px;border-radius:6px;object-fit:cover}.avatar-placeholder[data-v-22cfd3da]{display:inline-flex;width:44px;height:44px;border-radius:6px;background:#8E44AD;color:#fff;align-items:center;justify-content:center;font-weight:bold}.op-btn[data-v-22cfd3da]{padding:4px 10px;border:none;border-radius:4px;cursor:pointer;background:#42b983;color:#fff;font-size:12px;margin-right:4px}.op-btn.danger[data-v-22cfd3da]{background:#e74c3c}.modal-mask[data-v-22cfd3da]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:200}.modal[data-v-22cfd3da]{background:#fff;border-radius:10px;padding:25px;width:520px;max-width:94vw;max-height:90vh;overflow-y:auto}.modal h3[data-v-22cfd3da]{margin:0 0 16px;color:#333}.form-group[data-v-22cfd3da]{margin-bottom:14px}.form-group label[data-v-22cfd3da]{display:block;margin-bottom:6px;font-size:13px;color:#555}.form-group input[data-v-22cfd3da],.form-group textarea[data-v-22cfd3da]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.avatar-upload[data-v-22cfd3da]{display:flex;align-items:center;gap:12px}.avatar-big[data-v-22cfd3da]{width:64px;height:64px;border-radius:8px;object-fit:cover}.avatar-big.placeholder[data-v-22cfd3da]{display:inline-flex;align-items:center;justify-content:center;background:#eee;color:#aaa}.file-btn[data-v-22cfd3da]{padding:8px 14px;background:#42b983;color:#fff;border-radius:4px;cursor:pointer;font-size:13px}.upload-msg[data-v-22cfd3da]{font-size:12px;color:#42b983}.modal-actions[data-v-22cfd3da]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.ms-container[data-v-116d745e]{display:flex;justify-content:center;padding:20px}.ms-card[data-v-116d745e]{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:1100px;padding:25px}.ms-header h2[data-v-116d745e]{margin:0 0 12px;color:#333}.ms-actions[data-v-116d745e]{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.ms-desc[data-v-116d745e]{color:#888;font-size:13px;margin:0 0 15px;line-height:1.5}.btn-search[data-v-116d745e],.btn-add[data-v-116d745e]{padding:8px 16px;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px}.btn-search[data-v-116d745e]{background:#42b983}.btn-add[data-v-116d745e]{background:#16a085}.btn-cancel[data-v-116d745e]{background:#eee;color:#666;padding:8px 18px;border:none;border-radius:4px;cursor:pointer}.btn-save[data-v-116d745e]{background:#42b983;color:#fff;padding:8px 18px;border:none;border-radius:4px;cursor:pointer}.btn-save[data-v-116d745e]:disabled{opacity:.6;cursor:not-allowed}.no-permission[data-v-116d745e]{padding:30px;text-align:center;color:#c0392b;font-size:15px}.loading[data-v-116d745e],.empty[data-v-116d745e]{text-align:center;padding:30px;color:#999}.ms-row[data-v-116d745e]{display:flex;align-items:center;padding:8px 6px;border-bottom:1px solid #f0f0f0;gap:8px}.ms-head[data-v-116d745e]{background:#f7f7f7;font-weight:600;color:#555}.col-name[data-v-116d745e]{width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-website[data-v-116d745e]{width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.col-website a[data-v-116d745e]{color:#16a085;text-decoration:none}.col-url[data-v-116d745e]{flex:1;min-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#666}.col-format[data-v-116d745e]{width:150px}.col-status[data-v-116d745e]{width:50px;text-align:center}.col-sort[data-v-116d745e]{width:46px;text-align:center}.col-ops[data-v-116d745e]{width:150px;text-align:right}.format-tag[data-v-116d745e]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;color:#fff;background:#16a085}.fmt-openai-compatible[data-v-116d745e]{background:#16a085}.fmt-openai-responses[data-v-116d745e]{background:#2980b9}.fmt-google-gemini[data-v-116d745e]{background:#8e44ad}.fmt-anthropic[data-v-116d745e]{background:#d35400}.status-on[data-v-116d745e]{color:#27ae60;font-weight:600}.status-off[data-v-116d745e]{color:#95a5a6}.op-btn[data-v-116d745e]{padding:4px 10px;border:none;border-radius:4px;cursor:pointer;background:#42b983;color:#fff;font-size:12px;margin-right:4px}.op-btn.danger[data-v-116d745e]{background:#e74c3c}.op-btn.warn[data-v-116d745e]{background:#e67e22}.op-btn.ok[data-v-116d745e]{background:#27ae60}.select-input[data-v-116d745e]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.modal-mask[data-v-116d745e]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:200}.modal[data-v-116d745e]{background:#fff;border-radius:10px;padding:25px;width:520px;max-width:94vw;max-height:90vh;overflow-y:auto}.modal h3[data-v-116d745e]{margin:0 0 16px;color:#333}.form-group[data-v-116d745e]{margin-bottom:14px}.form-group label[data-v-116d745e]{display:block;margin-bottom:6px;font-size:13px;color:#555}.form-group input[data-v-116d745e],.form-group textarea[data-v-116d745e]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.modal-actions[data-v-116d745e]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.rs-container[data-v-6a2410b0]{display:flex;justify-content:center;padding:20px}.rs-card[data-v-6a2410b0]{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:1250px;padding:25px}.rs-header h2[data-v-6a2410b0]{margin:0 0 12px;color:#333}.rs-actions[data-v-6a2410b0]{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.rs-desc[data-v-6a2410b0]{color:#888;font-size:13px;margin:0 0 15px;line-height:1.6}.btn-search[data-v-6a2410b0],.btn-add[data-v-6a2410b0]{padding:8px 16px;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px}.btn-search[data-v-6a2410b0]{background:#42b983}.btn-add[data-v-6a2410b0]{background:#2980b9}.btn-cancel[data-v-6a2410b0]{background:#eee;color:#666;padding:8px 18px;border:none;border-radius:4px;cursor:pointer}.btn-save[data-v-6a2410b0]{background:#42b983;color:#fff;padding:8px 18px;border:none;border-radius:4px;cursor:pointer}.btn-save[data-v-6a2410b0]:disabled{opacity:.6;cursor:not-allowed}.no-permission[data-v-6a2410b0]{padding:30px;text-align:center;color:#c0392b;font-size:15px}.loading[data-v-6a2410b0],.empty[data-v-6a2410b0]{text-align:center;padding:30px;color:#999}.rs-row[data-v-6a2410b0]{display:flex;align-items:center;padding:8px 6px;border-bottom:1px solid #f0f0f0;gap:8px}.rs-head[data-v-6a2410b0]{background:#f7f7f7;font-weight:600;color:#555}.col-name[data-v-6a2410b0]{width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-format[data-v-6a2410b0]{width:130px}.col-url[data-v-6a2410b0]{width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#666}.col-models[data-v-6a2410b0]{width:70px;text-align:center}.col-key[data-v-6a2410b0]{width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-appurl[data-v-6a2410b0]{flex:1;min-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.col-status[data-v-6a2410b0]{width:44px;text-align:center}.col-ops[data-v-6a2410b0]{width:160px;text-align:right}.mono[data-v-6a2410b0]{font-family:Consolas,Menlo,monospace;font-size:12px}.mini-btn[data-v-6a2410b0]{padding:2px 8px;border:1px solid #ddd;border-radius:4px;cursor:pointer;background:#fff;color:#555;font-size:12px;margin-left:6px}.mini-btn[data-v-6a2410b0]:hover{background:#f5f5f5}.mini-btn[data-v-6a2410b0]:disabled{opacity:.5;cursor:not-allowed}.format-tag[data-v-6a2410b0]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;color:#fff;background:#16a085}.fmt-openai-compatible[data-v-6a2410b0]{background:#16a085}.fmt-openai-responses[data-v-6a2410b0]{background:#2980b9}.fmt-google-gemini[data-v-6a2410b0]{background:#8e44ad}.fmt-anthropic[data-v-6a2410b0]{background:#d35400}.status-on[data-v-6a2410b0]{color:#27ae60;font-weight:600}.status-off[data-v-6a2410b0]{color:#95a5a6}.op-btn[data-v-6a2410b0]{padding:4px 10px;border:none;border-radius:4px;cursor:pointer;background:#42b983;color:#fff;font-size:12px;margin-right:4px}.op-btn.danger[data-v-6a2410b0]{background:#e74c3c}.op-btn.warn[data-v-6a2410b0]{background:#e67e22}.op-btn.ok[data-v-6a2410b0]{background:#27ae60}.rs-tip[data-v-6a2410b0]{margin-top:15px;padding:10px 14px;background:#f8f9fa;border-left:3px solid #42b983;color:#666;font-size:13px;line-height:1.6}.select-input[data-v-6a2410b0]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.inline[data-v-6a2410b0]{display:flex;gap:6px;align-items:center}.inline .grow[data-v-6a2410b0]{flex:1}.model-checks[data-v-6a2410b0]{margin-top:8px;max-height:180px;overflow-y:auto;border:1px solid #eee;border-radius:6px;padding:8px;display:flex;flex-wrap:wrap;gap:4px 12px}.model-check[data-v-6a2410b0]{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#555;cursor:pointer}.model-check input[data-v-6a2410b0]{width:auto}.field-hint[data-v-6a2410b0]{margin:6px 0 0;font-size:12px;color:#999;line-height:1.5}.modal-mask[data-v-6a2410b0]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:200}.modal[data-v-6a2410b0]{background:#fff;border-radius:10px;padding:25px;width:560px;max-width:94vw;max-height:90vh;overflow-y:auto}.modal h3[data-v-6a2410b0]{margin:0 0 16px;color:#333}.form-group[data-v-6a2410b0]{margin-bottom:14px}.form-group label[data-v-6a2410b0]{display:block;margin-bottom:6px;font-size:13px;color:#555}.form-group input[type=text][data-v-6a2410b0],.form-group input[type=password][data-v-6a2410b0],.form-group textarea[data-v-6a2410b0]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.modal-actions[data-v-6a2410b0]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.cm-container[data-v-0d70e714]{display:flex;justify-content:center;padding:20px}.cm-card[data-v-0d70e714]{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:860px;padding:25px}.cm-header h2[data-v-0d70e714]{margin:0 0 10px;color:#333}.cm-actions[data-v-0d70e714]{margin-bottom:10px}.cm-desc[data-v-0d70e714]{color:#888;font-size:13px;margin:0 0 18px;line-height:1.5}.btn-add[data-v-0d70e714]{padding:8px 18px;background:#42b983;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-add[data-v-0d70e714]:hover{background:#359c6d}.loading[data-v-0d70e714],.empty[data-v-0d70e714]{text-align:center;padding:30px;color:#999}.empty p[data-v-0d70e714]{margin:0 0 14px}.cm-list[data-v-0d70e714]{display:flex;flex-direction:column;gap:10px}.cm-item[data-v-0d70e714]{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid #eee;border-radius:8px}.cm-item[data-v-0d70e714]:hover{background:#fafafa}.cm-avatar[data-v-0d70e714]{width:52px;height:52px;flex-shrink:0}.cm-avatar img[data-v-0d70e714]{width:100%;height:100%;border-radius:8px;object-fit:cover}.avatar-placeholder[data-v-0d70e714]{width:100%;height:100%;border-radius:8px;background:#42b983;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:bold}.cm-info[data-v-0d70e714]{flex:1;min-width:0}.cm-name[data-v-0d70e714]{font-size:16px;font-weight:600;color:#333;margin-bottom:4px}.cm-prompt[data-v-0d70e714]{font-size:13px;color:#666;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-meta[data-v-0d70e714]{display:flex;gap:12px;font-size:12px;color:#999}.cm-ops[data-v-0d70e714]{display:flex;gap:6px;flex-shrink:0}.op-btn[data-v-0d70e714]{padding:5px 12px;border:none;border-radius:4px;cursor:pointer;background:#42b983;color:#fff;font-size:13px}.op-btn.danger[data-v-0d70e714]{background:#e74c3c}.op-btn[data-v-0d70e714]:hover{opacity:.9}.ce-container[data-v-71a64926]{display:flex;justify-content:center;padding:20px}.ce-card[data-v-71a64926]{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:640px;padding:25px}.ce-header[data-v-71a64926]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.ce-header h2[data-v-71a64926]{margin:0;color:#333}.btn-back[data-v-71a64926]{padding:6px 14px;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:13px;color:#666}.form-group[data-v-71a64926]{margin-bottom:18px}.form-group label[data-v-71a64926]{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#555}.form-group input[type=text][data-v-71a64926],.form-group textarea[data-v-71a64926],.select-input[data-v-71a64926]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box;background:#fff}.form-group input[data-v-71a64926]:focus,.form-group textarea[data-v-71a64926]:focus,.select-input[data-v-71a64926]:focus{border-color:#42b983;outline:none}.field-hint[data-v-71a64926]{font-size:12px;color:#aaa;margin-top:4px}.avatar-upload[data-v-71a64926]{display:flex;align-items:center;gap:12px}.avatar-big[data-v-71a64926]{width:64px;height:64px;border-radius:8px;object-fit:cover}.avatar-big.placeholder[data-v-71a64926]{display:inline-flex;align-items:center;justify-content:center;background:#eee;color:#aaa}.file-btn[data-v-71a64926]{padding:8px 14px;background:#42b983;color:#fff;border-radius:4px;cursor:pointer;font-size:13px}.upload-msg[data-v-71a64926]{font-size:12px;color:#42b983}.switches[data-v-71a64926]{display:flex;flex-direction:column;gap:10px}.switch-row[data-v-71a64926]{display:flex;align-items:center;gap:8px;font-size:14px;color:#444;cursor:pointer;font-weight:normal}.public-source-bar[data-v-71a64926]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding:10px 14px;background:#fff8e6;border:1px solid #f0d9a8;border-radius:6px;font-size:13px;color:#8a6d1f}.btn-update[data-v-71a64926]{padding:6px 14px;background:#f39c12;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;flex-shrink:0}.btn-update[data-v-71a64926]:hover{background:#e67e22}.btn-update[data-v-71a64926]:disabled{opacity:.6;cursor:not-allowed}.form-actions[data-v-71a64926]{display:flex;gap:10px;margin-top:24px}.btn-save[data-v-71a64926]{padding:10px 28px;background:#42b983;color:#fff;border:none;border-radius:6px;font-size:15px;cursor:pointer}.btn-save[data-v-71a64926]:hover{background:#359c6d}.btn-save[data-v-71a64926]:disabled{opacity:.6;cursor:not-allowed}.btn-cancel[data-v-71a64926]{padding:10px 20px;background:#f5f5f5;color:#666;border:1px solid #ddd;border-radius:6px;font-size:14px;cursor:pointer}.save-msg[data-v-71a64926]{margin-top:12px;font-size:14px;color:#42b983}.save-msg.error[data-v-71a64926]{color:#e74c3c}.emoji-toggle[data-v-71a64926]{display:flex;align-items:center;gap:6px;cursor:pointer;user-select:none;font-size:14px;font-weight:600;color:#333;padding:2px 0}.emoji-toggle[data-v-71a64926]:hover{color:#42b983}.emoji-toggle-arrow[data-v-71a64926]{font-size:12px;color:#888}.emoji-toggle-count[data-v-71a64926]{margin-left:auto;font-size:12px;font-weight:400;color:#888}.emoji-panel[data-v-71a64926]{padding-top:6px}.emoji-editor[data-v-71a64926]{display:flex;flex-direction:column;gap:8px}.emoji-item[data-v-71a64926]{display:flex;align-items:center;gap:12px;padding:8px;border:1px solid #eee;border-radius:8px;background:#fafafa;cursor:pointer;transition:border-color .15s}.emoji-item[data-v-71a64926]:hover{border-color:#42b983}.emoji-thumb[data-v-71a64926]{width:48px;height:48px;border-radius:6px;object-fit:cover;flex-shrink:0}.emoji-info[data-v-71a64926]{flex:1;min-width:0}.emoji-name[data-v-71a64926]{font-size:14px;font-weight:600;color:#333;margin-bottom:2px}.emoji-desc[data-v-71a64926]{font-size:12px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emoji-del[data-v-71a64926]{width:24px;height:24px;line-height:22px;border:none;border-radius:50%;background:#f1f1f1;color:#999;font-size:15px;cursor:pointer;text-align:center;padding:0;flex-shrink:0}.emoji-del[data-v-71a64926]:hover{background:#e74c3c;color:#fff}.emoji-empty[data-v-71a64926]{font-size:13px;color:#bbb;padding:6px 0}.emoji-actions[data-v-71a64926]{display:flex;align-items:center;gap:12px}.emoji-usage[data-v-71a64926]{font-size:12px;color:#888}.upload-msg.error[data-v-71a64926]{color:#e74c3c}.modal-mask[data-v-71a64926]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:200}.modal[data-v-71a64926]{background:#fff;border-radius:10px;padding:25px;width:560px;max-width:94vw;max-height:90vh;overflow-y:auto}.modal h3[data-v-71a64926]{margin:0 0 16px;color:#333}.emoji-add-modal[data-v-71a64926]{width:440px}.modal-actions[data-v-71a64926]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.modal .btn-save[data-v-71a64926]:disabled,.modal .file-btn[data-v-71a64926]:disabled{opacity:.6;cursor:not-allowed}.convert-mask[data-v-71a64926]{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;z-index:300}.convert-box[data-v-71a64926]{background:#fff;border-radius:12px;padding:28px 36px;display:flex;flex-direction:column;align-items:center;gap:14px;box-shadow:0 8px 30px #00000040}.convert-spinner[data-v-71a64926]{width:36px;height:36px;border:4px solid #e0e0e0;border-top-color:#42b983;border-radius:50%;animation:convert-spin-71a64926 .9s linear infinite}@keyframes convert-spin-71a64926{to{transform:rotate(360deg)}}.convert-text[data-v-71a64926]{font-size:14px;color:#333}.kb-editor[data-v-71a64926]{display:flex;flex-direction:column;gap:8px}.kb-item[data-v-71a64926]{padding:10px 12px;border:1px solid #eee;border-radius:8px;background:#fafafa;transition:border-color .15s}.kb-item[data-v-71a64926]:hover{border-color:#42b983}.kb-name-row[data-v-71a64926]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.kb-name[data-v-71a64926]{font-size:14px;font-weight:600;color:#333}.kb-size[data-v-71a64926]{font-size:12px;color:#888}.kb-file[data-v-71a64926]{font-size:12px;color:#aaa;margin-top:6px;word-break:break-all}.kb-topk-row[data-v-71a64926]{display:flex;align-items:center;gap:10px}.kb-topk-label[data-v-71a64926]{font-size:12px;color:#666;margin:0;font-weight:normal}.kb-setting-row[data-v-71a64926]{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #e3f2ec;border-radius:8px;background:#f4faf7;margin-bottom:8px;flex-wrap:wrap}.kb-setting-label[data-v-71a64926]{font-size:13px;font-weight:600;color:#333}.kb-setting-input[data-v-71a64926]{width:64px;padding:4px 6px;border:1px solid #ddd;border-radius:4px;font-size:13px;box-sizing:border-box}.kb-setting-input[data-v-71a64926]:focus{border-color:#42b983;outline:none}.kb-setting-hint[data-v-71a64926]{font-size:12px;color:#999}.kb-topk-input[data-v-71a64926]{width:64px;padding:4px 6px;border:1px solid #ddd;border-radius:4px;font-size:13px;box-sizing:border-box}.kb-topk-input-wide[data-v-71a64926]{width:100px;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.kb-topk-input[data-v-71a64926]:focus,.kb-topk-input-wide[data-v-71a64926]:focus{border-color:#42b983;outline:none}.kb-switch-row[data-v-71a64926]{display:flex;align-items:center;gap:5px;font-size:13px;color:#444;cursor:pointer;margin:0;font-weight:normal}.kb-progress-row[data-v-71a64926]{display:flex;align-items:center;gap:8px;margin:4px 0 6px}.kb-progress-bar[data-v-71a64926]{flex:1;height:8px;background:#eee;border-radius:4px;overflow:hidden}.kb-progress-inner[data-v-71a64926]{height:100%;background:#42b983;border-radius:4px;transition:width .4s}.kb-progress-text[data-v-71a64926]{font-size:12px;color:#42b983;white-space:nowrap}.kb-error[data-v-71a64926]{font-size:12px;color:#e74c3c;margin:4px 0 6px}.kb-add-modal[data-v-71a64926]{width:460px}.kb-file-name[data-v-71a64926]{font-size:13px;color:#555;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mem-container[data-v-6f789fb4]{display:flex;justify-content:center;padding:20px}.mem-card[data-v-6f789fb4]{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:880px;padding:25px}.mem-header h2[data-v-6f789fb4]{margin:0 0 14px;color:#333}.mem-actions[data-v-6f789fb4]{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.select-input[data-v-6f789fb4],.search-input[data-v-6f789fb4]{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff}.search-input[data-v-6f789fb4]{flex:1;min-width:140px}.btn-sync[data-v-6f789fb4]{padding:8px 14px;background:#eef7ff;color:#1a7fbe;border:1px solid #c9e6fa;border-radius:6px;cursor:pointer;font-size:13px}.btn-add[data-v-6f789fb4]{padding:8px 14px;background:#42b983;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px}.btn-add[data-v-6f789fb4]:disabled,.btn-sync[data-v-6f789fb4]:disabled{opacity:.5;cursor:not-allowed}.mem-warn[data-v-6f789fb4]{background:#fff7e6;border:1px solid #ffd591;color:#d46b08;padding:8px 12px;border-radius:6px;font-size:13px;margin:0 0 10px}.mem-desc[data-v-6f789fb4]{color:#888;font-size:13px;margin:0 0 16px}.loading[data-v-6f789fb4],.empty[data-v-6f789fb4]{text-align:center;padding:30px;color:#999}.mem-group[data-v-6f789fb4]{margin-bottom:14px}.group-header[data-v-6f789fb4]{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:10px 14px;background:#f8f9fa;border-radius:6px;font-size:14px;font-weight:600;color:#444}.group-arrow[data-v-6f789fb4]{color:#999}.group-body[data-v-6f789fb4]{padding:8px 0 0 8px}.group-empty[data-v-6f789fb4]{padding:12px;color:#bbb;font-size:13px}.mem-item[data-v-6f789fb4]{padding:12px 14px;border:1px solid #eee;border-radius:8px;margin-bottom:8px}.mem-item[data-v-6f789fb4]:hover{background:#fafafa}.mem-content[data-v-6f789fb4]{margin-bottom:8px}.tag[data-v-6f789fb4]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;margin-right:6px}.tag.sticky[data-v-6f789fb4]{background:#fff1f0;color:#cf1322}.tag.imp[data-v-6f789fb4]{background:#fff7e6;color:#d46b08}.tag.emotion[data-v-6f789fb4]{background:#f9f0ff;color:#722ed1}.tag.vec[data-v-6f789fb4]{background:#e6fffb;color:#08979c}.mem-text[data-v-6f789fb4]{font-size:14px;color:#333;line-height:1.6;word-break:break-all}.mem-text mark[data-v-6f789fb4]{background:#ffe58f;padding:0 2px;border-radius:2px}.mem-meta[data-v-6f789fb4]{display:flex;align-items:center;gap:12px;font-size:12px;color:#999;flex-wrap:wrap}.meta-cat[data-v-6f789fb4]{background:#f5f5f5;padding:2px 8px;border-radius:4px}.meta-ops[data-v-6f789fb4]{margin-left:auto;display:flex;gap:6px}.op-btn[data-v-6f789fb4]{padding:3px 10px;border:none;border-radius:4px;cursor:pointer;background:#42b983;color:#fff;font-size:12px}.op-btn.danger[data-v-6f789fb4]{background:#e74c3c}.op-btn[data-v-6f789fb4]:hover{opacity:.9}.modal-mask[data-v-6f789fb4]{position:fixed;inset:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-6f789fb4]{background:#fff;border-radius:10px;padding:24px;width:92%;max-width:460px;box-shadow:0 8px 30px #0003}.modal h3[data-v-6f789fb4]{margin:0 0 16px;color:#333}.form-group[data-v-6f789fb4]{margin-bottom:14px}.form-group label[data-v-6f789fb4]{display:block;margin-bottom:6px;font-size:13px;color:#555}.form-group textarea[data-v-6f789fb4],.form-group .select-input[data-v-6f789fb4]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.field-hint[data-v-6f789fb4]{font-size:12px;color:#aaa;margin-top:4px;text-align:right}.modal-actions[data-v-6f789fb4]{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.btn-save[data-v-6f789fb4]{padding:8px 22px;background:#42b983;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-save[data-v-6f789fb4]:disabled{opacity:.6}.btn-cancel[data-v-6f789fb4]{padding:8px 16px;background:#f5f5f5;color:#666;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px}.save-msg[data-v-6f789fb4]{margin-top:10px;font-size:13px;color:#42b983}.save-msg.error[data-v-6f789fb4]{color:#e74c3c}
