From 7ce8028d73d944bb9736c0833330f85d0dce81f2 Mon Sep 17 00:00:00 2001 From: wanghanlin <1533525126@qq.com> Date: Wed, 12 Aug 2026 16:11:07 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84=E5=AE=A2=E6=9C=8D=E8=A7=92?= =?UTF-8?q?=E8=89=B2=E7=AE=A1=E7=90=86=E9=A1=B5=E9=9D=A2=E6=8E=92=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- client/assets/launcher-logo.png | Bin 88940 -> 182510 bytes client/dist/chatbot-sdk.js | 6 +- client/dist/chatbot-sdk.min.js | 2 +- client/src/styles.ts | 6 +- frontend/src/views/RoleManager.vue | 572 ++++++++++++++++-- .../CustomerServiceRoleController.java | 5 +- .../service/CustomerServiceRoleService.java | 30 +- src/main/resources/static/sdk/chatbot-sdk.js | 6 +- .../resources/static/sdk/chatbot-sdk.min.js | 2 +- .../resources/static/sdk/launcher-logo.png | Bin 88940 -> 182510 bytes 10 files changed, 548 insertions(+), 81 deletions(-) diff --git a/client/assets/launcher-logo.png b/client/assets/launcher-logo.png index 8c57c42a3e5428964c181ce0b74a52e67a27ae87..0cc53c12074906b5c804948ba55e88dc406f3c6b 100644 GIT binary patch literal 182510 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 literal 88940 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 diff --git a/client/dist/chatbot-sdk.js b/client/dist/chatbot-sdk.js index 4421fbd..5f267c0 100644 --- a/client/dist/chatbot-sdk.js +++ b/client/dist/chatbot-sdk.js @@ -1095,9 +1095,9 @@ var ChatbotSDK = (function () { filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.15)); } .csk-launcher img { - width: 36px; - height: 36px; - object-fit: contain; + width: 100%; + height: 100%; + object-fit: cover; position: relative; z-index: 1; -webkit-user-drag: none; diff --git a/client/dist/chatbot-sdk.min.js b/client/dist/chatbot-sdk.min.js index 72eedec..6116bd1 100644 --- a/client/dist/chatbot-sdk.min.js +++ b/client/dist/chatbot-sdk.min.js @@ -1 +1 @@ -var ChatbotSDK=function(){"use strict";let e=null;function n(n){e=n||null}const t={info(e,n){},warn(e,n){},error(n,t){if(e)try{const r=t instanceof Error&&t.type||"error";e({message:n,code:String(r),detail:t})}catch(e){}},time(e){},timeEnd:(e,n)=>0,lifecycleInit(e,n){},lifecycleDestroy(e){},lifecycleSend(e,n){},lifecycleReply(e,n){},lifecycleError(e,n,t){},lifecycleClear(e){},lifecycleStreamDone(e,n){},lifecycleCategoryChange(e){}};const r={"zh-CN":{title:"AI 智能助手",minimize:"最小化",close:"关闭",status_online:"在线",role_selector_label:"服务角色",welcome_title:"你好,我是 AI 智能助手",welcome_desc:"有什么可以帮你的吗?在下方输入框开始提问吧~",placeholder:"输入您的问题...",send:"发送",stop:"停止生成",new_message:"新消息",copy:"复制",copied:"已复制",retry:"重新生成",retrying:"重新生成中...",loading:"正在思考...",stream_interrupted:"回复被中断",stream_unstable:"网络不稳定,内容可能不完整",category_placeholder:"选择知识库分类",category_all:"全部分类",category_load_error:"加载分类失败",source_title:"参考来源",source_count:"{n} 条参考来源",source_loading:"加载来源中...",clear:"新对话",history_title:"历史会话",history_empty:"暂无历史会话",history_load_error:"加载会话列表失败",history_delete_confirm:"确定删除该会话?",history_export:"导出",history_delete:"删除",history_search:"搜索会话...",history_group_today:"今天",history_group_yesterday:"昨天",history_group_week:"本周",history_group_earlier:"更早",feedback_up:"有帮助",feedback_down:"没帮助",feedback_reason_title:"请选择不满意的原因:",feedback_reason_inaccurate:"信息错误",feedback_reason_irrelevant:"不相关",feedback_reason_incomplete:"不完整",feedback_reason_other:"其他",feedback_reason_comment_placeholder:"补充说明(可选)",feedback_reason_submit:"提交",teaser_text:"有什么可以帮你的吗?",new_msg_announce:"收到新消息",resize:"拖拽缩放窗口",error_network:"网络连接失败,请检查网络",error_offline:"⚠️ 网络连接异常,请检查网络后重试",error_timeout:"请求超时,请稍后重试",error_server:"服务器异常,请稍后重试",error_cors:"跨域请求被拦截,请联系管理员将当前域名加入 API 白名单",error_auth:"鉴权失败,请联系管理员",error_forbidden:"无访问权限,请联系管理员配置",error_not_found:"请求的资源不存在",error_rate_limit:"请求过于频繁,请稍后重试",error_unavailable:"服务暂不可用,请稍后重试",error_unknown:"请求发生未知错误",error_send:"发送失败,请稍后重试",error_stream_unsupported:"浏览器不支持流式读取"},en:{title:"AI Assistant",minimize:"Minimize",close:"Close",status_online:"Online",role_selector_label:"Service",welcome_title:"Hi, I am your AI assistant",welcome_desc:"How can I help you? Type your question below to get started.",placeholder:"Type your question...",send:"Send",stop:"Stop generating",new_message:"New message",copy:"Copy",copied:"Copied",retry:"Regenerate",retrying:"Regenerating...",loading:"Thinking...",stream_interrupted:"Response interrupted",stream_unstable:"Network unstable, content may be incomplete",category_placeholder:"Select category",category_all:"All categories",category_load_error:"Failed to load categories",source_title:"Sources",source_count:"{n} source(s)",source_loading:"Loading sources...",clear:"New chat",history_title:"History",history_empty:"No conversations yet",history_load_error:"Failed to load conversations",history_delete_confirm:"Delete this conversation?",history_export:"Export",history_delete:"Delete",history_search:"Search conversations...",history_group_today:"Today",history_group_yesterday:"Yesterday",history_group_week:"This Week",history_group_earlier:"Earlier",feedback_up:"Helpful",feedback_down:"Not helpful",feedback_reason_title:"Please tell us why:",feedback_reason_inaccurate:"Inaccurate",feedback_reason_irrelevant:"Irrelevant",feedback_reason_incomplete:"Incomplete",feedback_reason_other:"Other",feedback_reason_comment_placeholder:"Additional comments (optional)",feedback_reason_submit:"Submit",teaser_text:"How can I help you?",new_msg_announce:"New message received",resize:"Resize window",error_network:"Network connection failed",error_offline:"⚠️ Connection lost. Please check your network and try again.",error_timeout:"Request timed out, please try again",error_server:"Server error, please try again later",error_cors:"CORS request blocked. Please contact admin to whitelist your domain",error_auth:"Authentication failed, please contact admin",error_forbidden:"Access denied, please contact admin",error_not_found:"Resource not found",error_rate_limit:"Too many requests, please try again later",error_unavailable:"Service temporarily unavailable",error_unknown:"Unknown request error",error_send:"Failed to send, please try again",error_stream_unsupported:"Browser does not support streaming"}};let s="zh-CN";function o(e,n){let t=(r[s]||r["zh-CN"])[e]||r["zh-CN"][e]||e;if(n)for(const[e,r]of Object.entries(n))t=t.replace(`{${e}}`,String(r));return t}let a=null,i=null;function c(e){i=e}function l(){var e;return null!==(e=null!=i?i:null==a?void 0:a.integrateId)&&void 0!==e?e:""}function d(e){a&&(a.chatId=e)}function p(){return(null==a?void 0:a.chatId)||""}function u(e){if(!a)throw new Error("API 配置未初始化");return`${a.requestDomain.replace(/\/+$/,"")}${e.startsWith("/")?e:`/${e}`}`}function m(e,n,t){null!=t&&("string"==typeof t&&""===t.trim()||e.set(n,String(t)))}async function k(e,n={},r=3e4,s){const i=new AbortController,c=setTimeout(()=>i.abort(),r);s&&(s.aborted?i.abort():s.addEventListener("abort",()=>i.abort(),{once:!0}));try{const r={};n.headers&&(n.headers instanceof Headers?n.headers.forEach((e,n)=>{r[n]=e}):Array.isArray(n.headers)?n.headers.forEach(([e,n])=>{r[e]=n}):Object.assign(r,n.headers)),(null==a?void 0:a.token)&&(e.includes("/ai/")||e.endsWith("/feedback"))&&(r.Authorization=`Bearer ${a.token}`);const s=await fetch(e,Object.assign(Object.assign({},n),{headers:r,signal:i.signal,mode:"cors",credentials:"include"}));return 401===s.status&&(e.includes("/ai/")||e.endsWith("/feedback"))&&t.error("SDK 认证失败:Token 缺失或已过期,请重新调用 /open-api/auth/token 换取 Token"),s}catch(e){if(null==s?void 0:s.aborted)throw new g("aborted","aborted");if(e instanceof DOMException&&"AbortError"===e.name)throw new g(o("error_timeout"),"timeout");if(e instanceof TypeError&&e.message.includes("Failed to fetch"))throw new g(o("error_cors"),"cors");throw new g(o("error_network"),"network")}finally{clearTimeout(c)}}class g extends Error{constructor(e,n){super(e),this.name="CskError",this.type=n}}function h(e){switch(e){case 401:return o("error_auth");case 403:return o("error_forbidden");case 404:return o("error_not_found");case 429:return o("error_rate_limit");case 500:return o("error_server");case 502:case 503:return o("error_unavailable");default:return`${o("error_unknown")}(${e})`}}async function b(e){const n=function(e){const n=new URLSearchParams;return n.set("message",e),n.set("chatId",a.chatId),m(n,"roleId",l()),m(n,"accountId",a.userId),u(`/ai/assistant_app/chat/sync?${n.toString()}`)}(e);t.lifecycleSend(l(),e.length);try{const e=await k(n);if(!e.ok){const n=h(e.status);throw t.lifecycleError(l(),String(e.status),n),new g(n,`http_${e.status}`)}const r=await e.text();return t.lifecycleReply(l(),r.length),r}catch(e){if(e instanceof g)throw e;throw t.lifecycleError(l(),"unknown",String(e)),new g(o("error_unknown"),"unknown")}}async function f(e,n,r,s,i,c,d){var p;const b=c?function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy",a.rewriteStrategy||"REWRITE"),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/chat/rag/sse?${t.toString()}`)}(e,i):function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/chat/sse?${t.toString()}`)}(e,i);let f="";t.lifecycleSend(l(),e.length);try{const e=await k(b,{},6e4,d);if(!e.ok){const n=h(e.status);return t.lifecycleError(l(),String(e.status),n),void s(new g(n,`http_${e.status}`))}const a=null===(p=e.body)||void 0===p?void 0:p.getReader();if(!a)return void s(new g(o("error_stream_unsupported"),"stream_unsupported"));const i=new TextDecoder("utf-8",{stream:!0});let c="",u=[],m="";try{for(;;){const{done:e,value:t}=await a.read();if(e)break;c+=i.decode(t,{stream:!0});const r=c.split("\n");c=r.pop()||"";for(const e of r){const t=e.trim();if(!t){if(u.length>0){if("status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e)}u=[]}m="";continue}if(t.startsWith(":"))continue;if("[DONE]"===t){if(u.length>0&&"status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e),u=[]}m="";break}if(t.startsWith("event:")){m=t.substring(6).trim();continue}if(t.startsWith("id:")||t.startsWith("retry:"))continue;let r;t.startsWith("data:")?(r=t.substring(5),r.startsWith(" ")&&(r=r.substring(1))):r=t,u.push(r)}}if(c.trim()){const e=c.trim();if(!e.startsWith(":"))if(e.startsWith("data:")){let n=e.substring(5);n.startsWith(" ")&&(n=n.substring(1)),u.push(n)}else"[DONE]"===e||e.startsWith("event:")||e.startsWith("id:")||e.startsWith("retry:")||u.push(e)}if(u.length>0&&"status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e),u=[]}}catch(e){if(null==d?void 0:d.aborted)t.info(`流式被用户中断,保留已生成内容 length=${f.length}`);else{if(!(f.length>0))throw e;n("\n\n"+o("stream_unstable"))}}finally{a.releaseLock()}t.lifecycleStreamDone(l(),f.length),r()}catch(e){if((null==d?void 0:d.aborted)||e instanceof g&&"aborted"===e.type)return void r();e instanceof g?s(e):(t.lifecycleError(l(),"unknown",String(e)),s(new g(o("error_network"),"network")))}}async function y(e,n){const r=function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy",a.rewriteStrategy||"REWRITE"),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/rag/sources?${t.toString()}`)}(e,n);try{const e=await k(r);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return n.success&&Array.isArray(n.data)?(t.info(`获取引用来源 count=${n.data.length}`),n.data):[]}catch(e){return t.error("获取引用来源失败",e),[]}}async function v(e,n,r,s){if(!a)return!1;const o=u("/feedback");try{const i={messageId:String(e),conversationId:a.chatId,feedbackType:n};r&&(i.reasonCategory=r),s&&(i.reasonComment=s);const c=await k(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)});if(!c.ok)return t.error(`反馈提交失败 status=${c.status}`),!1;return(await c.json()).success||!1}catch(e){return t.error("反馈提交异常",e),!1}}async function x(e=1,n=20,r,s){const o=new URLSearchParams;o.set("page",String(e)),o.set("size",String(n)),r&&o.set("accountId",r),s&&o.set("roleId",s);const a=u(`/ai/sdk/conversation/list?${o.toString()}`);try{const e=await k(a);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return{list:n.success&&Array.isArray(n.data)?n.data:[],total:n.total||0,pages:n.pages||0}}catch(e){return t.error("加载会话列表失败",e),{list:[],total:0,pages:0}}}async function w(e){const n=new URLSearchParams;(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l());const r=u(`/ai/sdk/conversation/${e}/messages?${n.toString()}`);try{const e=await k(r);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return{messages:n.success&&Array.isArray(n.data)?n.data:[],total:n.total||0}}catch(e){return t.error("加载会话消息失败",e),{messages:[],total:0}}}async function _(e){const n=new URLSearchParams;(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l());const r=u(`/ai/sdk/conversation/${e}?${n.toString()}`);try{const n=await k(r,{method:"DELETE"});if(!n.ok)throw new g(h(n.status),`http_${n.status}`);const s=await n.json();return t.info(`删除会话 id=${e} success=${s.success}`),s.success||!1}catch(e){return t.error("删除会话失败",e),!1}}function E(e){const n=new URLSearchParams;return(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l()),u(`/ai/sdk/conversation/${e}/export?${n.toString()}`)}async function C(e=!1){if(!a)return"";const n=l();if(!e){const e=function(e,n){try{return localStorage.getItem(L(e,n))||""}catch(e){return""}}(n,a.userId);if(e)return a.chatId=e,e}try{const e=await x(1,5,a.userId,n);if(e.list.length>0){const r=e.list[0],s=r.conversationId||r.chatId||"";if(s)return a.chatId=s,I(n,a.userId,s),t.info(`从后端恢复会话 chatId=${s} messageCount=${r.messageCount}`),s}}catch(e){}const r=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();return a.chatId=r,I(n,a.userId,r),r}function L(e,n){return`csk_chatId_${e}${n?"_"+n:""}`}function I(e,n,t){try{t?localStorage.setItem(L(e,n),t):localStorage.removeItem(L(e,n))}catch(e){}}let S=null;function A(e){const n=$(e.primaryColor,-15),t=$(e.primaryColor,18),r=function(e){const n=e.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);return n?`${parseInt(n[1],16)}, ${parseInt(n[2],16)}, ${parseInt(n[3],16)}`:"79, 70, 229"}(e.primaryColor);return`\n --csk-primary: ${e.primaryColor};\n --csk-primary-hover: ${n};\n --csk-primary-light: ${t};\n --csk-primary-rgb: ${r};\n --csk-bg-user: linear-gradient(135deg, ${e.primaryColor}, ${n});\n --csk-bg-ai: #ffffff;\n --csk-text-user: #ffffff;\n --csk-text-ai: #1F2937;\n --csk-window-width: ${e.width}px;\n --csk-window-height: ${e.height}px;\n --csk-radius: 16px;\n --csk-shadow-window: 0 12px 48px rgba(15, 23, 42, 0.18), 0 2px 8px rgba(15, 23, 42, 0.06);\n --csk-shadow-bubble: 0 1px 2px rgba(15, 23, 42, 0.06);\n --csk-border: #ECEEF2;\n --csk-bg-app: #F6F7F9;\n `}function $(e,n){const t=e.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);if(!t)return e;const r=e=>Math.max(0,Math.min(255,e)),s=r(parseInt(t[1],16)+n),o=r(parseInt(t[2],16)+n),a=r(parseInt(t[3],16)+n);return`#${s.toString(16).padStart(2,"0")}${o.toString(16).padStart(2,"0")}${a.toString(16).padStart(2,"0")}`}function N(e){document.querySelector("style[data-csk-sdk]")||(S=document.createElement("style"),S.setAttribute("data-csk-sdk",""),S.textContent=function(e){return`\n/* ChatbotSDK 样式 - csk- 命名空间 */\n.csk-root {\n ${A(e)}\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;\n font-size: 14px;\n line-height: 1.55;\n color: #1F2937;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n box-sizing: border-box;\n}\n.csk-root *, .csk-root *::before, .csk-root *::after { box-sizing: border-box; }\n\n/* ========== 悬浮按钮 ========== */\n.csk-launcher {\n position: fixed;\n bottom: 24px;\n z-index: 9998;\n width: 60px;\n height: 60px;\n border-radius: 50%;\n /* 白色背景,简洁克制 */\n background: #ffffff;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #fff;\n user-select: none;\n overflow: hidden;\n /* 浅灰边框 */\n border: 2px solid #E5E7EB;\n /* 简洁柔和阴影 */\n box-shadow:\n 0 2px 8px rgba(0, 0, 0, 0.08),\n 0 4px 16px rgba(0, 0, 0, 0.06);\n transition:\n transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1),\n box-shadow 0.25s ease,\n border-color 0.25s ease;\n animation:\n csk-launcher-in 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;\n}\n.csk-launcher--right { right: 24px; }\n.csk-launcher--left { left: 24px; }\n\n.csk-launcher:hover {\n transform: translateY(-3px) scale(1.08);\n border-color: #D1D5DB;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.10),\n 0 8px 24px rgba(0, 0, 0, 0.08);\n}\n.csk-launcher:active { transform: scale(0.93); }\n.csk-launcher svg {\n width: 30px;\n height: 30px;\n position: relative;\n z-index: 1;\n filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.15));\n}\n.csk-launcher img {\n width: 36px;\n height: 36px;\n object-fit: contain;\n position: relative;\n z-index: 1;\n -webkit-user-drag: none;\n user-select: none;\n}\n\n@keyframes csk-launcher-in {\n 0% { opacity: 0; transform: scale(0.5) translateY(16px); }\n 60% { transform: scale(1.06) translateY(-2px); }\n 100% { opacity: 1; transform: scale(1) translateY(0); }\n}\n\n/* ========== 聊天弹窗 ========== */\n.csk-window {\n position: fixed;\n bottom: 24px;\n z-index: 9999;\n width: var(--csk-window-width);\n height: var(--csk-window-height);\n max-height: calc(100vh - 48px);\n background: #fff;\n border-radius: var(--csk-radius);\n box-shadow: var(--csk-shadow-window);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transform-origin: bottom right;\n transition: opacity 0.24s ease, transform 0.24s cubic-bezier(0.34, 1.2, 0.64, 1), visibility 0.24s;\n opacity: 1;\n transform: translateY(0) scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.csk-window--right { right: 24px; transform-origin: bottom right; }\n.csk-window--left { left: 24px; transform-origin: bottom left; }\n.csk-window--hidden {\n opacity: 0;\n transform: translateY(12px) scale(0.96);\n visibility: hidden;\n pointer-events: none;\n}\n\n/* ========== 水印层 ========== */\n.csk-watermark {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n user-select: none;\n z-index: 0;\n background-repeat: repeat;\n opacity: 0.8;\n}\n\n/* ========== 头部 ========== */\n.csk-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n min-height: 60px;\n background: var(--csk-bg-user);\n color: #fff;\n cursor: move;\n user-select: none;\n position: relative;\n flex-shrink: 0;\n}\n.csk-header::after {\n content: '';\n position: absolute;\n left: 0; right: 0; bottom: 0;\n height: 24px;\n background: linear-gradient(to bottom, rgba(0,0,0,0.04), transparent);\n pointer-events: none;\n}\n.csk-header__left {\n display: flex;\n align-items: center;\n gap: 12px;\n min-width: 0;\n}\n.csk-header__avatar {\n width: 38px;\n height: 38px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.22);\n backdrop-filter: blur(4px);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.25);\n}\n.csk-header__avatar svg { width: 22px; height: 22px; }\n.csk-header__info {\n display: flex;\n flex-direction: column;\n min-width: 0;\n}\n.csk-header__title {\n font-size: 15px;\n font-weight: 600;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n letter-spacing: 0.2px;\n}\n.csk-header__status {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n font-size: 11.5px;\n opacity: 0.9;\n margin-top: 2px;\n}\n.csk-status-dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n background: #6EE7B7;\n box-shadow: 0 0 0 0 rgba(110, 231, 183, 0.7);\n animation: csk-status-pulse 2s infinite;\n}\n@keyframes csk-status-pulse {\n 0% { box-shadow: 0 0 0 0 rgba(110, 231, 183, 0.7); }\n 70% { box-shadow: 0 0 0 6px rgba(110, 231, 183, 0); }\n 100% { box-shadow: 0 0 0 0 rgba(110, 231, 183, 0); }\n}\n.csk-header__actions {\n display: flex;\n align-items: center;\n gap: 2px;\n flex-shrink: 0;\n}\n.csk-header__btn,\n.csk-history-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 8px;\n transition: background 0.15s, transform 0.15s;\n}\n.csk-header__btn:hover,\n.csk-history-btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n.csk-header__btn:active,\n.csk-history-btn:active { transform: scale(0.92); }\n\n/* ========== 角色选择器 ========== */\n.csk-role-select-wrap {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n margin: 0 4px;\n}\n.csk-role-select {\n appearance: none;\n -webkit-appearance: none;\n padding: 4px 24px 4px 10px;\n border: 1px solid rgba(255, 255, 255, 0.35);\n border-radius: 8px;\n background: rgba(255, 255, 255, 0.15) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='white' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 6px center;\n color: #fff;\n font-size: 12px;\n font-family: inherit;\n cursor: pointer;\n outline: none;\n transition: background 0.15s, border-color 0.15s;\n max-width: 120px;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-role-select:hover {\n background-color: rgba(255, 255, 255, 0.25);\n border-color: rgba(255, 255, 255, 0.55);\n}\n.csk-role-select:focus {\n border-color: rgba(255, 255, 255, 0.7);\n box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.2);\n}\n.csk-role-select option {\n color: #1F2937;\n background: #fff;\n}\n\n/* ========== 消息区 ========== */\n.csk-messages {\n flex: 1;\n overflow-y: auto;\n padding: 20px 16px 12px;\n background: var(--csk-bg-app);\n scroll-behavior: smooth;\n}\n.csk-messages::-webkit-scrollbar { width: 6px; }\n.csk-messages::-webkit-scrollbar-track { background: transparent; }\n.csk-messages::-webkit-scrollbar-thumb {\n background: #D8DCE3;\n border-radius: 3px;\n}\n.csk-messages::-webkit-scrollbar-thumb:hover { background: #C2C7D0; }\n\n/* 离线提示横幅 */\n.csk-offline-banner {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n padding: 8px 12px;\n margin: 0 0 8px 0;\n border-radius: 8px;\n font-size: 12px;\n line-height: 1.5;\n background: #FEF2F2;\n color: #991B1B;\n border: 1px solid #FECACA;\n}\n.csk-dark .csk-offline-banner {\n background: #450A0A;\n color: #FCA5A5;\n border-color: #7F1D1D;\n}\n\n/* 欢迎空状态 */\n.csk-welcome {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n padding: 48px 24px 32px;\n color: #6B7280;\n animation: csk-fade-in 0.3s ease;\n}\n.csk-welcome__avatar {\n width: 56px;\n height: 56px;\n border-radius: 50%;\n background: var(--csk-bg-user);\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 14px;\n box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.3);\n}\n.csk-welcome__avatar svg { width: 30px; height: 30px; }\n.csk-welcome__title {\n font-size: 15px;\n font-weight: 600;\n color: #1F2937;\n margin-bottom: 4px;\n}\n.csk-welcome__desc {\n font-size: 13px;\n color: #9CA3AF;\n line-height: 1.6;\n}\n\n/* 消息气泡 */\n.csk-msg {\n display: flex;\n margin-bottom: 12px;\n max-width: 100%;\n word-break: break-word;\n animation: csk-msg-in 0.28s cubic-bezier(0.22, 1, 0.36, 1);\n}\n.csk-msg--user {\n flex-direction: row-reverse;\n align-items: flex-end;\n}\n.csk-msg--ai {\n flex-direction: row;\n align-items: flex-start;\n}\n.csk-msg__avatar {\n width: 30px;\n height: 30px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin: 0 8px;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-msg__avatar svg { width: 18px; height: 18px; }\n.csk-msg__avatar--ai {\n background: #fff;\n color: var(--csk-primary);\n border: 1px solid var(--csk-border);\n}\n.csk-msg__avatar--user {\n background: var(--csk-bg-user);\n color: #fff;\n}\n.csk-msg__content {\n display: flex;\n flex-direction: column;\n min-width: 0;\n max-width: calc(100% - 46px);\n}\n.csk-msg--user .csk-msg__content { align-items: flex-end; }\n.csk-msg--ai .csk-msg__content { align-items: flex-start; }\n.csk-msg__bubble {\n padding: 10px 14px;\n border-radius: 16px;\n font-size: 14px;\n line-height: 1.6;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-msg--user .csk-msg__bubble {\n background: var(--csk-bg-user);\n color: var(--csk-text-user);\n border-radius: 16px 16px 4px 16px;\n}\n.csk-msg--ai .csk-msg__bubble {\n background: var(--csk-bg-ai);\n color: var(--csk-text-ai);\n border-radius: 16px 16px 16px 4px;\n border: 1px solid var(--csk-border);\n}\n.csk-msg__time {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 3px;\n padding: 0 4px;\n}\n\n/* 元信息行:时间戳居左,操作按钮居右,共用一行 */\n.csk-msg__meta {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 3px;\n width: 100%;\n}\n.csk-msg__meta .csk-msg__time { margin-top: 0; }\n\n@keyframes csk-msg-in {\n from { opacity: 0; transform: translateY(8px); }\n to { opacity: 1; transform: translateY(0); }\n}\n@keyframes csk-fade-in {\n from { opacity: 0; }\n to { opacity: 1; }\n}\n\n/* ========== Loading 动画 ========== */\n.csk-loading {\n display: flex;\n align-items: center;\n margin-bottom: 12px;\n animation: csk-msg-in 0.28s ease;\n}\n.csk-loading__avatar {\n width: 30px;\n height: 30px;\n border-radius: 50%;\n background: #fff;\n color: var(--csk-primary);\n border: 1px solid var(--csk-border);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin: 0 8px;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-loading__avatar svg { width: 18px; height: 18px; }\n.csk-loading__bubble {\n background: #fff;\n border: 1px solid var(--csk-border);\n border-radius: 16px 16px 16px 4px;\n padding: 12px 16px;\n display: flex;\n align-items: center;\n gap: 5px;\n}\n.csk-loading__dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n background: #B4B9C2;\n animation: csk-bounce 1.4s ease-in-out infinite both;\n}\n.csk-loading__dot:nth-child(1) { animation-delay: 0s; }\n.csk-loading__dot:nth-child(2) { animation-delay: 0.16s; }\n.csk-loading__dot:nth-child(3) { animation-delay: 0.32s; }\n\n@keyframes csk-bounce {\n 0%, 80%, 100% { transform: scale(0.6); opacity: 0.6; }\n 40% { transform: scale(1); opacity: 1; }\n}\n\n/* ========== 输入区 ========== */\n.csk-input-area {\n padding: 10px 12px 14px;\n background: #fff;\n border-top: 1px solid var(--csk-border);\n flex-shrink: 0;\n}\n.csk-input-wrap {\n display: flex;\n align-items: flex-end;\n gap: 8px;\n background: var(--csk-bg-app);\n border: 1px solid var(--csk-border);\n border-radius: 14px;\n padding: 6px 6px 6px 14px;\n transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;\n}\n.csk-input-wrap--focus {\n border-color: var(--csk-primary);\n background: #fff;\n box-shadow: 0 0 0 3px rgba(var(--csk-primary-rgb), 0.12);\n}\n.csk-input {\n flex: 1;\n border: none;\n background: transparent;\n padding: 8px 0;\n font-size: 14px;\n outline: none;\n font-family: inherit;\n resize: none;\n min-height: 22px;\n max-height: 120px;\n line-height: 1.5;\n color: #1F2937;\n}\n.csk-input::placeholder { color: #9CA3AF; }\n.csk-root .csk-input:focus-visible { outline: none; }\n.csk-send-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 36px;\n height: 36px;\n min-width: 36px;\n border: none;\n border-radius: 10px;\n background: var(--csk-bg-user);\n color: #fff;\n cursor: pointer;\n transition: transform 0.18s, box-shadow 0.18s, opacity 0.18s;\n box-shadow: 0 3px 10px rgba(var(--csk-primary-rgb), 0.3);\n}\n.csk-send-btn:hover:not(:disabled) {\n transform: translateY(-1px);\n box-shadow: 0 5px 14px rgba(var(--csk-primary-rgb), 0.4);\n}\n.csk-send-btn:active:not(:disabled) { transform: scale(0.92); }\n.csk-send-btn:disabled {\n background: #D1D5DB;\n box-shadow: none;\n cursor: not-allowed;\n opacity: 0.7;\n}\n.csk-send-btn svg { width: 18px; height: 18px; }\n\n/* ========== 保密声明脚注 ========== */\n.csk-disclaimer {\n margin-top: 8px;\n padding: 6px 8px 4px;\n font-size: 10px;\n color: #9CA3AF;\n line-height: 1.5;\n user-select: none;\n}\n.csk-disclaimer__title {\n font-weight: 600;\n margin-bottom: 2px;\n color: #9CA3AF;\n}\n.csk-dark .csk-disclaimer { color: #6B7280; }\n.csk-dark .csk-disclaimer__title { color: #6B7280; }\n\n/* ========== 新对话按钮 ========== */\n.csk-clear-btn {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 5px 12px;\n border: 1px solid var(--csk-border);\n border-radius: 999px;\n background: #fff;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n margin: 0 auto 8px;\n transition: all 0.15s;\n font-family: inherit;\n}\n.csk-clear-btn:hover {\n background: #FEF2F2;\n border-color: #FCA5A5;\n color: #DC2626;\n}\n\n/* ========== P1: 知识库分类下拉 ========== */\n.csk-category-bar {\n display: flex;\n align-items: center;\n padding: 8px 12px;\n border-top: 1px solid var(--csk-border);\n background: #FBFBFC;\n gap: 8px;\n flex-shrink: 0;\n}\n.csk-category-bar__label {\n font-size: 13px;\n white-space: nowrap;\n}\n.csk-category-select {\n flex: 1;\n padding: 6px 28px 6px 10px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n font-size: 12.5px;\n color: #374151;\n background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 9px center;\n appearance: none;\n -webkit-appearance: none;\n outline: none;\n cursor: pointer;\n font-family: inherit;\n transition: border-color 0.2s, box-shadow 0.2s;\n max-width: 220px;\n}\n.csk-category-select:focus {\n border-color: var(--csk-primary);\n box-shadow: 0 0 0 3px rgba(var(--csk-primary-rgb), 0.12);\n}\n\n/* ========== P1: RAG 引用来源卡片 ========== */\n.csk-sources {\n margin-top: 6px;\n border: 1px solid var(--csk-border);\n border-radius: 12px;\n overflow: hidden;\n font-size: 12px;\n max-width: 100%;\n background: #FAFBFC;\n}\n.csk-sources__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 6px 10px;\n background: #F3F4F7;\n cursor: pointer;\n user-select: none;\n transition: background 0.15s;\n}\n.csk-sources__header:hover { background: #ECEEF2; }\n.csk-sources__title {\n display: flex;\n align-items: center;\n gap: 5px;\n font-weight: 500;\n color: #374151;\n}\n.csk-sources__arrow {\n transition: transform 0.2s;\n color: #9CA3AF;\n font-size: 10px;\n}\n.csk-sources--collapsed .csk-sources__arrow { transform: rotate(-90deg); }\n.csk-sources__body {\n border-top: 1px solid var(--csk-border);\n padding: 0;\n}\n.csk-sources--collapsed .csk-sources__body { display: none; }\n.csk-source-item {\n padding: 6px 10px;\n border-bottom: 1px solid #F0F1F4;\n transition: background 0.15s;\n}\n.csk-source-item:last-child { border-bottom: none; }\n.csk-source-item:hover { background: #fff; }\n.csk-source-item__name {\n font-weight: 500;\n color: #1F2937;\n margin-bottom: 2px;\n}\n.csk-source-item__snippet {\n color: #6B7280;\n line-height: 1.5;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n.csk-source-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n\n/* ========== P1: Markdown 渲染样式 ========== */\n.csk-msg--ai .csk-msg__bubble .csk-md-p { margin: 0 0 8px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-p:last-child { margin-bottom: 0; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h1,\n.csk-msg--ai .csk-msg__bubble .csk-md-h2,\n.csk-msg--ai .csk-msg__bubble .csk-md-h3,\n.csk-msg--ai .csk-msg__bubble .csk-md-h4,\n.csk-msg--ai .csk-msg__bubble .csk-md-h5,\n.csk-msg--ai .csk-msg__bubble .csk-md-h6 {\n margin: 14px 0 6px;\n font-weight: 600;\n line-height: 1.3;\n color: #111827;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1 { font-size: 20px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h2 { font-size: 17px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h3 { font-size: 15px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h4 { font-size: 14px; }\n\n.csk-md-code-block {\n position: relative;\n background: #1E293B;\n color: #E2E8F0;\n padding: 12px 14px;\n border-radius: 10px;\n overflow-x: auto;\n margin: 8px 0;\n font-size: 13px;\n line-height: 1.55;\n font-family: 'SF Mono', 'Consolas', 'Menlo', 'Monaco', monospace;\n}\n.csk-md-code-block code {\n background: none;\n padding: 0;\n border-radius: 0;\n font-size: inherit;\n color: inherit;\n}\n.csk-md-inline-code {\n background: rgba(var(--csk-primary-rgb), 0.1);\n color: var(--csk-primary);\n padding: 1px 6px;\n border-radius: 5px;\n font-size: 13px;\n font-family: 'SF Mono', 'Consolas', 'Menlo', 'Monaco', monospace;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol {\n padding-left: 22px;\n margin: 6px 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul li,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol li { margin-bottom: 4px; }\n.csk-md-blockquote {\n border-left: 3px solid var(--csk-primary);\n padding: 2px 12px;\n margin: 8px 0;\n color: #6B7280;\n background: rgba(var(--csk-primary-rgb), 0.05);\n border-radius: 0 6px 6px 0;\n}\n.csk-md-link {\n color: var(--csk-primary);\n text-decoration: none;\n border-bottom: 1px solid rgba(var(--csk-primary-rgb), 0.3);\n transition: border-color 0.15s;\n}\n.csk-md-link:hover { border-bottom-color: var(--csk-primary); }\n.csk-md-hr {\n border: none;\n border-top: 1px solid var(--csk-border);\n margin: 12px 0;\n}\n.csk-md-table-wrap {\n max-width: 100%;\n overflow-x: auto;\n margin: 10px 0;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n}\n.csk-md-table {\n width: 100%;\n min-width: 360px;\n border-collapse: collapse;\n font-size: 12.5px;\n line-height: 1.5;\n}\n.csk-md-table th,\n.csk-md-table td {\n padding: 7px 9px;\n border-right: 1px solid var(--csk-border);\n border-bottom: 1px solid var(--csk-border);\n text-align: left;\n vertical-align: top;\n}\n.csk-md-table th:last-child,\n.csk-md-table td:last-child { border-right: none; }\n.csk-md-table tbody tr:last-child td { border-bottom: none; }\n.csk-md-table th {\n background: rgba(var(--csk-primary-rgb), 0.07);\n color: #374151;\n font-weight: 600;\n}\n.csk-md-table tbody tr:nth-child(even) {\n background: rgba(148, 163, 184, 0.06);\n}\n.csk-md-table .csk-md-align-left { text-align: left; }\n.csk-md-table .csk-md-align-center { text-align: center; }\n.csk-md-table .csk-md-align-right { text-align: right; }\n\n/* ========== P2: 会话管理面板 ========== */\n.csk-history-panel {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: #fff;\n z-index: 10;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n animation: csk-slide-in 0.24s ease;\n}\n.csk-history-panel--hidden { display: none; }\n@keyframes csk-slide-in {\n from { transform: translateX(100%); opacity: 0.4; }\n to { transform: translateX(0); opacity: 1; }\n}\n.csk-history-panel__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 14px 16px;\n border-bottom: 1px solid var(--csk-border);\n background: var(--csk-bg-app);\n flex-shrink: 0;\n}\n.csk-history-panel__title {\n font-size: 14px;\n font-weight: 600;\n color: #1F2937;\n}\n.csk-history-panel__back {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 5px 12px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n background: #fff;\n color: #374151;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s;\n font-family: inherit;\n}\n.csk-history-panel__back:hover { background: #F3F4F6; }\n.csk-history-panel__list {\n flex: 1;\n overflow-y: auto;\n padding: 10px;\n}\n.csk-history-panel__list::-webkit-scrollbar { width: 5px; }\n.csk-history-panel__list::-webkit-scrollbar-thumb { background: #E5E7EB; border-radius: 2px; }\n.csk-history-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 11px 12px;\n border-radius: 10px;\n cursor: pointer;\n transition: background 0.15s;\n margin-bottom: 5px;\n border: 1px solid transparent;\n}\n.csk-history-item:hover { background: #F3F4F6; }\n.csk-history-item--active {\n background: rgba(var(--csk-primary-rgb), 0.08);\n border-color: rgba(var(--csk-primary-rgb), 0.2);\n}\n.csk-history-item--active:hover { background: rgba(var(--csk-primary-rgb), 0.12); }\n.csk-history-item__info { flex: 1; min-width: 0; }\n.csk-history-item__id {\n font-size: 13px;\n font-weight: 500;\n color: #1F2937;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-history-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 3px;\n}\n.csk-history-item__actions {\n display: flex;\n gap: 4px;\n margin-left: 8px;\n opacity: 0;\n transition: opacity 0.15s;\n}\n.csk-history-item:hover .csk-history-item__actions { opacity: 1; }\n.csk-history-action {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: none;\n border-radius: 7px;\n cursor: pointer;\n font-size: 12px;\n transition: all 0.15s;\n}\n.csk-history-action--export { background: #EFF6FF; color: #2563EB; }\n.csk-history-action--export:hover { background: #DBEAFE; }\n.csk-history-action--delete { background: #FEF2F2; color: #DC2626; }\n.csk-history-action--delete:hover { background: #FEE2E2; }\n.csk-history-panel__empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 48px 20px;\n color: #9CA3AF;\n font-size: 13px;\n text-align: center;\n}\n.csk-history-panel__empty-icon {\n font-size: 34px;\n margin-bottom: 10px;\n opacity: 0.5;\n}\n.csk-history-panel__loading {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n color: #9CA3AF;\n font-size: 13px;\n}\n\n/* ========== 快捷问题芯片 ========== */\n.csk-quick-replies {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n justify-content: center;\n margin-top: 18px;\n max-width: 320px;\n}\n.csk-quick-reply {\n border: 1px solid var(--csk-border);\n background: #fff;\n color: #374151;\n font-size: 12.5px;\n padding: 7px 13px;\n border-radius: 999px;\n cursor: pointer;\n font-family: inherit;\n line-height: 1.3;\n transition: all 0.18s ease;\n max-width: 100%;\n}\n.csk-quick-reply:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.06);\n transform: translateY(-1px);\n}\n.csk-quick-reply:active { transform: scale(0.96); }\n\n/* ========== 推荐问题(suggest-message-list) ========== */\n.csk-suggestions {\n margin-top: 6px;\n padding: 4px 0 0 0;\n}\n.csk-suggestions__list {\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n}\n.csk-suggestion-item {\n border: 1px solid var(--csk-border);\n background: #fff;\n color: #374151;\n font-size: 12px;\n padding: 4px 10px;\n border-radius: 999px;\n cursor: pointer;\n font-family: inherit;\n line-height: 1.3;\n transition: all 0.18s ease;\n max-width: 100%;\n text-align: left;\n}\n.csk-suggestion-item:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.06);\n transform: translateY(-1px);\n}\n.csk-suggestion-item:active { transform: scale(0.96); }\n\n/* ========== AI 消息操作条 ========== */\n.csk-msg__actions {\n display: flex;\n gap: 2px;\n padding: 0 2px;\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n.csk-msg--ai:hover .csk-msg__actions { opacity: 1; }\n.csk-msg--streaming .csk-msg__actions { display: none; }\n.csk-action-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: transparent;\n color: #9CA3AF;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.csk-action-btn:hover {\n background: #F3F4F6;\n color: #374151;\n}\n.csk-action-btn--done { color: #10B981; }\n.csk-action-btn:active { transform: scale(0.9); }\n\n/* ========== 流式打字光标 ========== */\n.csk-caret {\n display: inline-block;\n width: 7px;\n height: 15px;\n margin-left: 2px;\n vertical-align: text-bottom;\n background: var(--csk-primary);\n border-radius: 1px;\n animation: csk-caret-blink 1s step-end infinite;\n}\n@keyframes csk-caret-blink {\n 0%, 50% { opacity: 1; }\n 51%, 100% { opacity: 0; }\n}\n\n/* ========== 代码块复制按钮 ========== */\n.csk-md-code-copy {\n position: absolute;\n top: 8px;\n right: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: rgba(255, 255, 255, 0.12);\n color: #CBD5E1;\n border-radius: 6px;\n cursor: pointer;\n opacity: 0;\n transition: all 0.15s ease;\n}\n.csk-md-code-block:hover .csk-md-code-copy { opacity: 1; }\n.csk-md-code-copy:hover { background: rgba(255, 255, 255, 0.22); color: #fff; }\n.csk-md-code-copy:active { transform: scale(0.9); }\n\n/* ========== 新消息提示按钮 ========== */\n.csk-newmsg {\n position: absolute;\n bottom: 82px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 5;\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 7px 14px;\n border: none;\n background: var(--csk-primary);\n color: #fff;\n font-size: 12px;\n font-family: inherit;\n border-radius: 999px;\n cursor: pointer;\n box-shadow: 0 4px 14px rgba(var(--csk-primary-rgb), 0.38);\n transition: transform 0.2s ease, box-shadow 0.2s ease;\n animation: csk-msg-in 0.25s ease;\n white-space: nowrap;\n}\n.csk-newmsg:hover { transform: translateX(-50%) translateY(-1px); box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.48); }\n.csk-newmsg:active { transform: translateX(-50%) scale(0.95); }\n.csk-newmsg--hidden { display: none; }\n\n/* ========== 发送按钮停止态 ========== */\n.csk-send-btn--stop {\n background: #EF4444 !important;\n box-shadow: 0 3px 10px rgba(239, 68, 68, 0.35) !important;\n}\n.csk-send-btn--stop:hover:not(:disabled) {\n box-shadow: 0 5px 14px rgba(239, 68, 68, 0.45) !important;\n}\n\n/* ========== 窗口缩放拖拽手柄 ========== */\n.csk-resize-handle {\n position: absolute;\n right: 4px;\n bottom: 4px;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: flex-end;\n justify-content: flex-end;\n cursor: nwse-resize;\n z-index: 5;\n user-select: none;\n -webkit-user-select: none;\n /* 圆形半透明背景,与整体圆润风格一致 */\n border-radius: 50%;\n background: transparent;\n transition: background 0.2s ease;\n}\n.csk-resize-handle:hover {\n background: rgba(var(--csk-primary-rgb), 0.08);\n}\n\n/* 三斜线抓手 — 纯 CSS 绘制,用两条间距微调的线,视觉上是三条 */\n.csk-resize-grip {\n display: block;\n width: 10px;\n height: 10px;\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n #C8CCD2 38%, #C8CCD2 42%,\n transparent 42%, transparent 54%,\n #C8CCD2 54%, #C8CCD2 58%,\n transparent 58%, transparent 70%,\n #C8CCD2 70%, #C8CCD2 74%,\n transparent 74%\n );\n transition: background 0.2s ease;\n border-radius: 2px;\n}\n/* hover 时线条变为主色 */\n.csk-resize-handle:hover .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n var(--csk-primary) 38%, var(--csk-primary) 42%,\n transparent 42%, transparent 54%,\n var(--csk-primary) 54%, var(--csk-primary) 58%,\n transparent 58%, transparent 70%,\n var(--csk-primary) 70%, var(--csk-primary) 74%,\n transparent 74%\n );\n}\n\n/* 暗色模式 */\n.csk-dark .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n #5B6070 38%, #5B6070 42%,\n transparent 42%, transparent 54%,\n #5B6070 54%, #5B6070 58%,\n transparent 58%, transparent 70%,\n #5B6070 70%, #5B6070 74%,\n transparent 74%\n );\n}\n.csk-dark .csk-resize-handle:hover .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n var(--csk-primary-light) 38%, var(--csk-primary-light) 42%,\n transparent 42%, transparent 54%,\n var(--csk-primary-light) 54%, var(--csk-primary-light) 58%,\n transparent 58%, transparent 70%,\n var(--csk-primary-light) 70%, var(--csk-primary-light) 74%,\n transparent 74%\n );\n}\n\n/* 缩放拖拽中:禁用过渡动画 + 全局光标 */\n.csk-window--resizing {\n transition: none !important;\n user-select: none;\n}\n.csk-window--resizing * { cursor: nwse-resize !important; }\n\n/* ========== 暗色模式 ========== */\n.csk-root.csk-dark {\n --csk-bg-ai: #1E1E2E;\n --csk-text-ai: #E2E8F0;\n --csk-border: #3B3B52;\n --csk-bg-app: #141421;\n color: #E2E8F0;\n}\n.csk-dark .csk-window {\n background: #1A1A2E;\n box-shadow: 0 12px 48px rgba(0, 0, 0, 0.4), 0 2px 8px rgba(0, 0, 0, 0.2);\n}\n.csk-dark .csk-watermark {\n opacity: 1;\n}\n.csk-dark .csk-header::after { background: linear-gradient(to bottom, rgba(0,0,0,0.12), transparent); }\n.csk-dark .csk-msg__avatar--ai {\n background: var(--csk-bg-ai);\n color: var(--csk-primary);\n border-color: var(--csk-border);\n}\n.csk-dark .csk-input-area { background: #1A1A2E; border-top-color: var(--csk-border); }\n.csk-dark .csk-input-wrap { background: var(--csk-bg-app); border-color: var(--csk-border); }\n.csk-dark .csk-input-wrap--focus { background: #1A1A2E; border-color: var(--csk-primary); }\n.csk-dark .csk-input { color: #E2E8F0; }\n.csk-dark .csk-loading__avatar { background: var(--csk-bg-ai); border-color: var(--csk-border); }\n.csk-dark .csk-loading__bubble { background: var(--csk-bg-ai); border-color: var(--csk-border); }\n.csk-dark .csk-loading__dot { background: #6B7280; }\n.csk-dark .csk-category-bar { background: #1A1A2E; border-top-color: var(--csk-border); }\n.csk-dark .csk-category-select { background-color: var(--csk-bg-app); border-color: var(--csk-border); color: #E2E8F0; }\n.csk-dark .csk-sources { background: #1E1E2E; border-color: var(--csk-border); }\n.csk-dark .csk-sources__header { background: #25253A; }\n.csk-dark .csk-sources__header:hover { background: #2D2D48; }\n.csk-dark .csk-source-item:hover { background: var(--csk-bg-ai); }\n.csk-dark .csk-source-item__name { color: #E2E8F0; }\n.csk-dark .csk-source-item__meta { color: #6B7280; }\n.csk-dark .csk-history-panel { background: #1A1A2E; }\n.csk-dark .csk-history-panel__header { background: var(--csk-bg-app); border-bottom-color: var(--csk-border); }\n.csk-dark .csk-history-panel__back { background: var(--csk-bg-app); border-color: var(--csk-border); color: #E2E8F0; }\n.csk-dark .csk-history-panel__back:hover { background: #2D2D48; }\n.csk-dark .csk-history-item:hover { background: #25253A; }\n.csk-dark .csk-history-item__id { color: #E2E8F0; }\n.csk-dark .csk-history-item__meta { color: #6B7280; }\n.csk-dark .csk-history-item--active { background: rgba(var(--csk-primary-rgb), 0.15); }\n.csk-dark .csk-history-item--active:hover { background: rgba(var(--csk-primary-rgb), 0.22); }\n.csk-dark .csk-action-btn:hover { background: #2D2D48; color: #E2E8F0; }\n.csk-dark .csk-clear-btn { background: var(--csk-bg-app); border-color: var(--csk-border); color: #9CA3AF; }\n.csk-dark .csk-clear-btn:hover { background: #3B1A1A; border-color: #7F1D1D; color: #FCA5A5; }\n.csk-dark .csk-md-code-block { background: #0F0F1A; }\n.csk-dark .csk-md-blockquote { background: rgba(var(--csk-primary-rgb), 0.08); }\n.csk-dark .csk-md-link { color: var(--csk-primary-light); }\n.csk-dark .csk-md-table th { background: rgba(var(--csk-primary-rgb), 0.14); color: #E2E8F0; }\n.csk-dark .csk-md-table tbody tr:nth-child(even) { background: rgba(148, 163, 184, 0.05); }\n.csk-dark .csk-msg--ai .csk-msg__bubble { background: var(--csk-bg-ai); color: var(--csk-text-ai); border-color: var(--csk-border); }\n.csk-dark .csk-welcome__title { color: #E2E8F0; }\n.csk-dark .csk-welcome__desc { color: #6B7280; }\n.csk-dark .csk-quick-reply { background: var(--csk-bg-app); border-color: var(--csk-border); color: #CBD5E1; }\n.csk-dark .csk-quick-reply:hover { background: rgba(var(--csk-primary-rgb), 0.12); border-color: var(--csk-primary); color: var(--csk-primary-light); }\n.csk-dark .csk-suggestion-item { background: var(--csk-bg-app); border-color: var(--csk-border); color: #CBD5E1; }\n.csk-dark .csk-suggestion-item:hover { background: rgba(var(--csk-primary-rgb), 0.12); border-color: var(--csk-primary); color: var(--csk-primary-light); }\n.csk-dark .csk-teaser { background: #2D2D48; color: #E2E8F0; box-shadow: 0 4px 20px rgba(0,0,0,0.35); }\n.csk-dark .csk-teaser::after { border-top-color: #2D2D48; }\n.csk-dark .csk-teaser__close { color: #6B7280; }\n.csk-dark .csk-teaser__close:hover { color: #9CA3AF; }\n.csk-dark .csk-feedback-btn { background: rgba(var(--csk-primary-rgb), 0.1); color: #9CA3AF; }\n.csk-dark .csk-feedback-btn:hover { background: rgba(var(--csk-primary-rgb), 0.2); color: var(--csk-primary-light); }\n.csk-dark .csk-feedback-btn--active { background: rgba(var(--csk-primary-rgb), 0.28); color: var(--csk-primary-light); }\n.csk-dark .csk-history-panel__search-wrap { background: var(--csk-bg-app); border-color: var(--csk-border); }\n.csk-dark .csk-history-panel__search-wrap:focus-within { border-color: var(--csk-primary); }\n.csk-dark .csk-history-panel__search { color: #E2E8F0; }\n.csk-dark .csk-launcher__badge { box-shadow: 0 0 0 2px #1A1A2E; }\n.csk-dark .csk-welcome__avatar { box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.25); }\n.csk-dark .csk-header__avatar { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.15); background: rgba(255, 255, 255, 0.1); }\n.csk-dark .csk-role-select option {\n background: #1A1A2E;\n color: #E2E8F0;\n}\n\n/* Launcher 拖拽态:微放大 + 阴影加深 */\n.csk-launcher--dragging {\n cursor: grabbing !important;\n transform: scale(1.1) !important;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.14),\n 0 12px 32px rgba(0, 0, 0, 0.18),\n 0 14px 40px rgba(236, 72, 153, 0.36),\n 0 0 56px rgba(236, 72, 153, 0.18) !important;\n}\n/* 拖拽中隐藏未读徽章 */\n.csk-launcher--dragging .csk-launcher__badge { display: none !important; }\n/* 吸附过渡动画(释放时的缓动) */\n.csk-launcher--snap {\n transition: left 0.3s ease-out, right 0.3s ease-out, bottom 0.3s ease-out !important;\n}\n\n/* ========== Launcher 未读徽章 ========== */\n.csk-launcher__badge {\n position: absolute;\n top: -2px;\n right: -2px;\n width: 16px;\n height: 16px;\n border-radius: 50%;\n background: #EF4444;\n border: 2px solid #fff;\n box-shadow: 0 0 0 2px #fff;\n animation: csk-badge-in 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);\n pointer-events: none;\n}\n.csk-launcher__badge--hidden { display: none; }\n@keyframes csk-badge-in {\n from { transform: scale(0); }\n to { transform: scale(1); }\n}\n\n/* ========== Launcher 提示气泡 ========== */\n.csk-teaser {\n position: fixed;\n bottom: 90px;\n z-index: 9997;\n max-width: 240px;\n padding: 10px 14px;\n background: #fff;\n color: #1F2937;\n font-size: 13px;\n line-height: 1.5;\n border-radius: 12px;\n box-shadow: 0 4px 20px rgba(15, 23, 42, 0.15);\n animation: csk-teaser-in 0.35s cubic-bezier(0.22, 1, 0.36, 1);\n cursor: pointer;\n user-select: none;\n}\n.csk-teaser--right { right: 24px; }\n.csk-teaser--left { left: 24px; }\n.csk-teaser::after {\n content: '';\n position: absolute;\n bottom: -6px;\n right: 28px;\n width: 12px;\n height: 12px;\n background: inherit;\n border-radius: 2px;\n transform: rotate(45deg);\n box-shadow: 2px 2px 4px rgba(15, 23, 42, 0.08);\n}\n.csk-teaser--left::after { right: auto; left: 28px; }\n.csk-teaser__close {\n position: absolute;\n top: 4px;\n right: 6px;\n background: none;\n border: none;\n font-size: 16px;\n color: #9CA3AF;\n cursor: pointer;\n padding: 2px 4px;\n line-height: 1;\n border-radius: 4px;\n}\n.csk-teaser__close:hover { color: #374151; }\n.csk-teaser--hidden { display: none; }\n@keyframes csk-teaser-in {\n from { opacity: 0; transform: translateY(8px) scale(0.95); }\n to { opacity: 1; transform: translateY(0) scale(1); }\n}\n\n/* ========== 消息反馈按钮(👍 / 👎) ========== */\n.csk-feedback-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: rgba(var(--csk-primary-rgb), 0.08);\n color: #9CA3AF;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n padding: 0;\n}\n.csk-feedback-btn:hover { background: rgba(var(--csk-primary-rgb), 0.18); color: var(--csk-primary); }\n.csk-feedback-btn--active {\n background: rgba(var(--csk-primary-rgb), 0.28);\n color: var(--csk-primary);\n}\n.csk-feedback-btn--active.down { background: #FEF2F2; color: #EF4444; }\n.csk-feedback-btn:active { transform: scale(0.9); }\n.csk-msg--streaming .csk-feedback-btn { display: none; }\n\n/* ========== 点踩原因选择面板 ========== */\n.csk-feedback-reason {\n position: relative;\n margin-top: 6px;\n padding: 10px 12px;\n background: var(--csk-bg);\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n animation: cskFadeIn 0.15s ease;\n}\n.csk-feedback-reason__title {\n font-size: 12px;\n color: var(--csk-text-muted);\n margin-bottom: 8px;\n}\n.csk-feedback-reason__options {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-bottom: 8px;\n}\n.csk-feedback-reason__btn {\n padding: 4px 10px;\n font-size: 12px;\n border: 1px solid var(--csk-border);\n border-radius: 14px;\n background: var(--csk-bg);\n color: var(--csk-text);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.csk-feedback-reason__btn:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.08);\n}\n.csk-feedback-reason__comment-row {\n display: flex;\n gap: 6px;\n}\n.csk-feedback-reason__comment {\n flex: 1;\n padding: 4px 8px;\n font-size: 12px;\n border: 1px solid var(--csk-border);\n border-radius: 6px;\n background: var(--csk-bg);\n color: var(--csk-text);\n outline: none;\n}\n.csk-feedback-reason__comment:focus { border-color: var(--csk-primary); }\n.csk-feedback-reason__submit {\n padding: 4px 10px;\n font-size: 12px;\n border: none;\n border-radius: 6px;\n background: var(--csk-primary);\n color: #fff;\n cursor: pointer;\n white-space: nowrap;\n}\n.csk-feedback-reason__close {\n position: absolute;\n top: 8px;\n right: 8px;\n width: 18px;\n height: 18px;\n border: none;\n background: none;\n color: var(--csk-text-muted);\n cursor: pointer;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n}\n.csk-feedback-reason__close:hover { color: var(--csk-text); background: var(--csk-hover); }\n.csk-dark .csk-feedback-reason { background: var(--csk-bg); border-color: var(--csk-border); }\n.csk-dark .csk-feedback-reason__btn {\n background: rgba(255,255,255,0.06);\n border-color: var(--csk-border);\n color: var(--csk-text);\n}\n.csk-dark .csk-feedback-reason__btn:hover {\n border-color: var(--csk-primary-light);\n color: var(--csk-primary-light);\n background: rgba(var(--csk-primary-rgb), 0.15);\n}\n.csk-dark .csk-feedback-reason__comment {\n background: rgba(255,255,255,0.06);\n border-color: var(--csk-border);\n color: var(--csk-text);\n}\n\n/* ========== 历史会话搜索框 ========== */\n.csk-history-panel__search-wrap {\n padding: 8px 10px;\n border-bottom: 1px solid var(--csk-border);\n flex-shrink: 0;\n}\n.csk-history-panel__search-wrap:focus-within {\n border-bottom-color: var(--csk-primary);\n}\n.csk-history-panel__search {\n width: 100%;\n padding: 7px 10px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n font-size: 12.5px;\n font-family: inherit;\n color: #1F2937;\n background: var(--csk-bg-app);\n outline: none;\n transition: border-color 0.2s;\n}\n.csk-history-panel__search:focus { border-color: var(--csk-primary); }\n.csk-history-panel__search::placeholder { color: #9CA3AF; }\n\n/* ========== a11y 焦点指示 ========== */\n.csk-root :focus-visible {\n outline: 2px solid var(--csk-primary);\n outline-offset: 2px;\n}\n.csk-root button:focus-visible {\n outline: 2px solid var(--csk-primary);\n outline-offset: 2px;\n border-radius: inherit;\n}\n/* 弹窗打开时隐藏 launcher 上的焦点环 */\n.csk-launcher:focus-visible {\n outline: none;\n border-color: rgba(255, 255, 255, 0.75);\n box-shadow:\n 0 1px 2px rgba(0, 0, 0, 0.06),\n 0 4px 16px rgba(0, 0, 0, 0.10),\n 0 6px 24px rgba(var(--csk-primary-rgb), 0.28),\n 0 0 48px rgba(var(--csk-primary-rgb), 0.12),\n 0 0 0 4px rgba(var(--csk-primary-rgb), 0.3);\n}\n\n/* ========== a11y aria-live 播报区(视觉隐藏) ========== */\n.csk-sr-only {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0,0,0,0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n\n/* ========== 会话分组标题 ========== */\n.csk-history-group {\n margin-bottom: 4px;\n}\n.csk-history-group__label {\n font-size: 11px;\n font-weight: 600;\n color: #9CA3AF;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n padding: 8px 12px 4px;\n user-select: none;\n}\n.csk-dark .csk-history-group__label { color: #6B7280; }\n\n/* ========== 移动端适配 ========== */\n@media (max-width: 480px) {\n .csk-window {\n width: 100vw !important;\n height: 100vh !important;\n max-height: 100vh;\n bottom: 0 !important;\n right: 0 !important;\n left: 0 !important;\n border-radius: 0;\n }\n .csk-resize-handle { display: none !important; }\n .csk-window--hidden { transform: translateY(100%); }\n /* 移动端默认位置,仅在未被 JS 拖拽覆盖时生效 */\n .csk-launcher:not([style*="bottom"]) { bottom: 20px; }\n .csk-launcher--right:not([style*="bottom"]) { right: 20px; }\n .csk-launcher--left:not([style*="bottom"]) { left: 20px; }\n}\n`}(e),document.head.appendChild(S))}function M(){return"undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const n=16*Math.random()|0;return("x"===e?n:3&n|8).toString(16)})}function F(e){const n={"&":"&","<":"<",">":">",'"':""","'":"'"};return e.replace(/[&<>"']/g,e=>n[e]||e)}function z(e){const n=new Date(e);return`${String(n.getHours()).padStart(2,"0")}:${String(n.getMinutes()).padStart(2,"0")}`}function D(){return Date.now()}const T='';function B(e,n){const t=document.createElement("div");t.id="csk-launcher",t.className="csk-launcher csk-launcher--"+("left-bottom"===e.position?"left":"right"),t.setAttribute("title",e.title),t.setAttribute("aria-label",e.title),t.setAttribute("role","button"),t.setAttribute("tabindex","0"),t.innerHTML=e.launcherIcon;const r=document.createElement("div");r.className="csk-launcher__badge csk-launcher__badge--hidden",t.appendChild(r);const s=function(e,n){let t=null;return function(...r){null!==t&&clearTimeout(t),t=setTimeout(()=>{e.apply(this,r),t=null},n)}}(n,300);return t.addEventListener("click",s),t.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),s())}),t}function q(e){const n=document.createElement("div");if(n.id="csk-window",n.className=`csk-root csk-window csk-window--${"left-bottom"===e.position?"left":"right"} csk-window--hidden${"dark"===e.theme?" csk-dark":""}`,n.setAttribute("role","dialog"),n.setAttribute("aria-label",e.title),n.setAttribute("aria-modal","false"),e.watermark){const t=document.createElement("div");t.className="csk-watermark";const r=function(e){const n=document.createElement("canvas"),t=n.getContext("2d");if(!t)return"";const r=new Date,s=`${r.getFullYear()}-${String(r.getMonth()+1).padStart(2,"0")}-${String(r.getDate()).padStart(2,"0")} ${String(r.getHours()).padStart(2,"0")}:${String(r.getMinutes()).padStart(2,"0")}`,o=e.watermark?`${e.watermark} ${s}`:s;n.width=280,n.height=160;const a="dark"===e.theme;return t.fillStyle=a?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.06)",t.font='13px -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif',t.textAlign="center",t.textBaseline="middle",t.save(),t.translate(140,80),t.rotate(-22*Math.PI/180),t.fillText(o,0,0),t.restore(),n.toDataURL("image/png")}(e);r&&(t.style.backgroundImage=`url(${r})`),n.appendChild(t)}const t=document.createElement("div");t.className="csk-header";const r=document.createElement("div");r.className="csk-header__left";const s=document.createElement("div");s.className="csk-header__avatar",s.innerHTML=T;const a=document.createElement("div");a.className="csk-header__info";const i=document.createElement("span");i.className="csk-header__title",i.textContent=e.title;const c=document.createElement("span");c.className="csk-header__status",c.innerHTML=`${o("status_online")}`,a.appendChild(i),a.appendChild(c),r.appendChild(s),r.appendChild(a);let l=null;const d=e.roles;if(d&&d.length>1){l=document.createElement("select"),l.className="csk-role-select",l.setAttribute("aria-label",o("role_selector_label"));for(const n of d){const t=document.createElement("option");t.value=String(n.id),t.textContent=n.name||String(n.id),String(n.id)===String(e.integrateId)&&(t.selected=!0),l.appendChild(t)}l.addEventListener("change",()=>{const e=l.value;n.dispatchEvent(new CustomEvent("csk:roleChange",{detail:{roleId:e}}))});const s=document.createElement("div");s.className="csk-role-select-wrap",s.appendChild(l),t.appendChild(r),t.appendChild(s)}else t.appendChild(r);const p=document.createElement("div");p.className="csk-header__actions";const u=document.createElement("button");u.className="csk-history-btn",u.setAttribute("title",o("history_title")),u.innerHTML='';const m=document.createElement("button");m.className="csk-header__btn csk-header__btn--minimize",m.setAttribute("title",o("minimize")),m.innerHTML='',m.addEventListener("click",()=>{n.classList.add("csk-window--hidden")});const k=document.createElement("button");k.className="csk-header__btn csk-header__btn--close",k.setAttribute("title",o("close")),k.innerHTML='',k.addEventListener("click",()=>{n.classList.add("csk-window--hidden")}),p.appendChild(u),p.appendChild(m),p.appendChild(k),t.appendChild(p);const g=document.createElement("div");g.id="csk-messages",g.className="csk-messages";const h=document.createElement("div");if(h.className="csk-welcome",h.innerHTML=`\n
${T}
\n
${o("welcome_title")}
\n
${o("welcome_desc")}
\n `,e.quickReplies.length>0){const t=document.createElement("div");t.className="csk-quick-replies";for(const r of e.quickReplies){const e=document.createElement("button");e.type="button",e.className="csk-quick-reply",e.textContent=r,e.addEventListener("click",()=>{n.dispatchEvent(new CustomEvent("csk:quickReply",{detail:{text:r}}))}),t.appendChild(e)}h.appendChild(t)}g.appendChild(h);const b=document.createElement("button");b.type="button",b.className="csk-newmsg csk-newmsg--hidden",b.innerHTML=`\n \n ${o("new_message")}\n `,n.appendChild(b);const f=document.createElement("div");f.className="csk-history-panel csk-history-panel--hidden",f.innerHTML=`\n
\n ${o("history_title")}\n \n
\n
\n \n
\n
\n `,g.appendChild(f);const y=f.querySelector("#csk-history-back");y&&y.addEventListener("click",()=>{f.classList.add("csk-history-panel--hidden")}),u.addEventListener("click",e=>{e.stopPropagation();const t=f.classList.contains("csk-history-panel--hidden");f.classList.toggle("csk-history-panel--hidden"),t&&n.dispatchEvent(new CustomEvent("csk:loadHistory"))});let v=null;if(e.showCategorySwitch){const e=document.createElement("div");e.className="csk-category-bar";const r=document.createElement("span");r.className="csk-category-bar__label",r.textContent="📚",v=document.createElement("select"),v.id="csk-category-select",v.className="csk-category-select",v.innerHTML=``,v.addEventListener("change",()=>{const e=v.value;n.dispatchEvent(new CustomEvent("csk:categoryChange",{detail:{categoryId:e?Number(e):void 0}}))}),e.appendChild(r),e.appendChild(v),n.appendChild(t),n.appendChild(g),n.appendChild(e)}else n.appendChild(t),n.appendChild(g);const x=document.createElement("div");x.className="csk-input-area";const w=document.createElement("div");w.className="csk-input-wrap";const _=document.createElement("textarea");_.id="csk-input",_.className="csk-input",_.setAttribute("placeholder",o("placeholder")),_.setAttribute("rows","1"),_.setAttribute("autofocus","");const E=document.createElement("button");E.id="csk-send-btn",E.className="csk-send-btn",E.setAttribute("title",o("send")),E.setAttribute("disabled","true"),E.innerHTML='',w.appendChild(_),w.appendChild(E),x.appendChild(w);const C=document.createElement("div");C.className="csk-disclaimer",void 0!==e.disclaimer?(C.innerHTML=e.disclaimer,e.disclaimer||(C.style.display="none")):C.style.display="none",x.appendChild(C),n.appendChild(x);let L=null;e.showClear&&(L=document.createElement("button"),L.className="csk-clear-btn",L.textContent=o("clear"),L.style.display="none",n.insertBefore(L,x));let I=null;const S=document.createElement("div");S.className="csk-sr-only",S.setAttribute("aria-live","polite"),S.setAttribute("aria-atomic","true"),n.appendChild(S);const A=f.querySelector("#csk-history-search"),$=document.createElement("div");$.className=`csk-teaser csk-teaser--${"left-bottom"===e.position?"left":"right"} csk-teaser--hidden`,$.setAttribute("role","status"),$.innerHTML=`\n \n ${e.teaserText||o("teaser_text")}\n `;const N=document.createElement("div");return N.className="csk-resize-handle",N.setAttribute("aria-label",o("resize")),N.innerHTML='',n.appendChild(N),{window:n,messagesContainer:g,inputEl:_,sendBtn:E,clearBtn:L,categorySelect:v,historyPanel:f,welcomeEl:h,newMsgBtn:b,teaserEl:$,resizeHandle:N,searchInput:A,ariaLiveEl:S,roleSelect:l,disclaimer:C,showLoading:function(){if(I)return I.style.display="flex",I;const e=document.createElement("div");return e.className="csk-loading",e.innerHTML=`\n
${T}
\n
\n
\n
\n
\n
\n `,g.appendChild(e),I=e,e},hideLoading:function(){I&&I.parentNode&&(I.parentNode.removeChild(I),I=null)}}}function H(){return window.innerHeight-76}function j(e,n,t){const r=document.createElement("div");r.className="csk-msg csk-msg--user";const s=document.createElement("div");s.className="csk-msg__avatar csk-msg__avatar--user",s.innerHTML='';const o=document.createElement("div");o.className="csk-msg__content";const a=document.createElement("div");a.className="csk-msg__bubble",a.textContent=n;const i=document.createElement("div");return i.className="csk-msg__time",i.textContent=z(t),o.appendChild(a),o.appendChild(i),r.appendChild(s),r.appendChild(o),e.appendChild(r),r}function R(e,n,t,r,s){const o=document.createElement("div");o.className="csk-msg csk-msg--ai",s&&(o.dataset.cskMsgId=s);const a=document.createElement("div");a.className="csk-msg__avatar csk-msg__avatar--ai",a.innerHTML=T;const i=document.createElement("div");i.className="csk-msg__content";const c=document.createElement("div");c.className="csk-msg__bubble",r?c.innerHTML=r(n):c.textContent=n;const l=document.createElement("div");l.className="csk-msg__time",l.textContent=z(t),i.appendChild(c);const d=document.createElement("div");return d.className="csk-msg__meta",d.appendChild(l),d.appendChild(W(c,o)),i.appendChild(d),o.appendChild(a),o.appendChild(i),e.appendChild(o),X(c),o}const P='',U='';function W(e,n){const t=document.createElement("div");t.className="csk-msg__actions";const r=document.createElement("button");r.type="button",r.className="csk-action-btn",r.setAttribute("title",o("copy")),r.setAttribute("aria-label",o("copy")),r.innerHTML=P,r.addEventListener("click",async n=>{n.stopPropagation();const t=e.textContent||"";await O(t,r)});const s=document.createElement("button");s.type="button",s.className="csk-action-btn",s.setAttribute("title",o("retry")),s.setAttribute("aria-label",o("retry")),s.innerHTML=U,s.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:retry",{detail:{msgId:n.dataset.cskMsgId||""}}))});const a=document.createElement("button");a.type="button",a.className="csk-feedback-btn",a.setAttribute("title",o("feedback_up")),a.setAttribute("aria-label",o("feedback_up")),a.innerHTML='',a.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:feedback",{detail:{msgId:n.dataset.cskMsgId||"",value:"up"}}))});const i=document.createElement("button");return i.type="button",i.className="csk-feedback-btn",i.setAttribute("title",o("feedback_down")),i.setAttribute("aria-label",o("feedback_down")),i.innerHTML='',i.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:feedback",{detail:{msgId:n.dataset.cskMsgId||"",value:"down"}}))}),t.appendChild(r),t.appendChild(s),t.appendChild(a),t.appendChild(i),t}function Y(e,n){const t=e.querySelectorAll(".csk-feedback-btn");t.length<2||(t.forEach(e=>e.classList.remove("csk-feedback-btn--active","down")),"up"===n&&t[0]&&t[0].classList.add("csk-feedback-btn--active"),"down"===n&&t[1]&&t[1].classList.add("csk-feedback-btn--active","down"))}async function O(e,n){const t=n.innerHTML;try{if(navigator.clipboard&&window.isSecureContext)await navigator.clipboard.writeText(e);else{const n=document.createElement("textarea");n.value=e,n.style.position="fixed",n.style.opacity="0",document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n)}n.innerHTML='',n.classList.add("csk-action-btn--done"),setTimeout(()=>{n.innerHTML=t,n.classList.remove("csk-action-btn--done")},1500)}catch(e){}}function X(e){e.querySelectorAll(".csk-md-code-block").forEach(e=>{if(e.querySelector(".csk-md-code-copy"))return;const n=e.querySelector("code"),t=document.createElement("button");t.type="button",t.className="csk-md-code-copy",t.setAttribute("title",o("copy")),t.setAttribute("aria-label",o("copy")),t.innerHTML=P,t.addEventListener("click",async e=>{e.stopPropagation(),await O((null==n?void 0:n.textContent)||"",t)}),e.appendChild(t)})}function K(e,n){e.classList.remove("csk-msg--streaming");const t=n.querySelector(".csk-caret");t&&t.remove(),X(n)}function J(e,n){const t=e.querySelector(".csk-sources");if(t&&t.remove(),!n||0===n.length)return;const r=document.createElement("div");r.className="csk-sources csk-sources--collapsed";const s=document.createElement("div");s.className="csk-sources__header";const a=document.createElement("span");a.className="csk-sources__title",a.textContent=`📚 ${o("source_count",{n:n.length})}`;const i=document.createElement("span");i.className="csk-sources__arrow",i.textContent="▼",s.appendChild(a),s.appendChild(i),s.addEventListener("click",()=>{r.classList.toggle("csk-sources--collapsed")});const c=document.createElement("div");c.className="csk-sources__body";for(const e of n){const n=document.createElement("div");n.className="csk-source-item";const t=document.createElement("div");if(t.className="csk-source-item__name",t.textContent=e.title||e.sourceName||"未知文档",e.snippet){const t=document.createElement("div");t.className="csk-source-item__snippet",t.textContent=e.snippet,n.appendChild(t)}const r=document.createElement("div");r.className="csk-source-item__meta";const s=[];e.sourceName&&s.push(e.sourceName),void 0!==e.chunkIndex&&s.push(`分块 #${e.chunkIndex}`),void 0!==e.score&&s.push(`相关度 ${(100*e.score).toFixed(0)}%`),r.textContent=s.join(" · "),n.appendChild(t),n.appendChild(r),c.appendChild(n)}r.appendChild(s),r.appendChild(c);const l=e.querySelector(".csk-msg__meta");l&&l.parentNode?l.parentNode.insertBefore(r,l.nextSibling):e.appendChild(r)}function V(e,n,t,r,s,a,i){if(e.innerHTML="",0===n.length){const n=document.createElement("div");return n.className="csk-history-panel__empty",n.innerHTML=`\n
💬
\n
${o("history_empty")}
\n `,void e.appendChild(n)}const c=function(e){const n=new Date,t=new Date(n.getFullYear(),n.getMonth(),n.getDate()).getTime(),r=t-864e5,s=t-864e5*(n.getDay()||7)+864e5,a={today:[],yesterday:[],week:[],earlier:[]};for(const n of e){const e=n.lastMessageTime||n.createdAt,o=e?new Date(e).getTime():0;o>=t?a.today.push(n):o>=r?a.yesterday.push(n):o>=s?a.week.push(n):a.earlier.push(n)}const i=[];return a.today.length&&i.push({label:o("history_group_today"),items:a.today}),a.yesterday.length&&i.push({label:o("history_group_yesterday"),items:a.yesterday}),a.week.length&&i.push({label:o("history_group_week"),items:a.week}),a.earlier.length&&i.push({label:o("history_group_earlier"),items:a.earlier}),i}(n);for(const n of c){if(c.length>1){const t=document.createElement("div");t.className="csk-history-group";const r=document.createElement("div");r.className="csk-history-group__label",r.textContent=n.label,t.appendChild(r),e.appendChild(t)}for(const i of n.items){const n=document.createElement("div");n.className="csk-history-item";const c=i.chatId||i.id;a&&c===a&&n.classList.add("csk-history-item--active");const l=document.createElement("div");l.className="csk-history-item__info";const d=document.createElement("div");d.className="csk-history-item__id",i.lastMessagePreview?d.textContent=i.lastMessagePreview.length>60?i.lastMessagePreview.substring(0,60)+"...":i.lastMessagePreview:d.textContent=c;const p=document.createElement("div");p.className="csk-history-item__meta";const u=[];i.roleName&&u.push(i.roleName),void 0!==i.messageCount&&u.push(`${i.messageCount} 条消息`),i.lastMessageTime?u.push(i.lastMessageTime):i.createdAt&&u.push(i.createdAt),p.textContent=u.join(" · "),l.appendChild(d),l.appendChild(p);const m=document.createElement("div");m.className="csk-history-item__actions";const k=document.createElement("button");k.className="csk-history-action csk-history-action--export",k.setAttribute("title",o("history_export")),k.innerHTML='',k.addEventListener("click",e=>{e.stopPropagation(),r(i.id)});const g=document.createElement("button");g.className="csk-history-action csk-history-action--delete",g.setAttribute("title",o("history_delete")),g.innerHTML='',g.addEventListener("click",e=>{e.stopPropagation(),s(i.id)}),m.appendChild(k),m.appendChild(g),n.appendChild(l),n.appendChild(m),n.addEventListener("click",()=>{t(c)}),e.appendChild(n)}}}function G(e){e.scrollTop=e.scrollHeight}const Q=[{key:"inaccurate",labelKey:"feedback_reason_inaccurate"},{key:"irrelevant",labelKey:"feedback_reason_irrelevant"},{key:"incomplete",labelKey:"feedback_reason_incomplete"},{key:"other",labelKey:"feedback_reason_other"}];function Z(e){return`csk_history_${e}`}function ee(e,n){try{let r=n;r.length>200&&(r=r.slice(50),t.warn(`消息数量达到上限,已裁剪最早 50 条,当前 ${r.length} 条`));const s={messages:r,updatedAt:Date.now()};localStorage.setItem(Z(e),JSON.stringify(s))}catch(e){e instanceof Error&&"QuotaExceededError"===e.name?t.error("localStorage 空间不足,会话历史保存失败。建议清空历史记录。"):t.error("保存会话历史失败",e)}}function ne(e){try{localStorage.removeItem(Z(e))}catch(e){}}const te="\0CODEBLOCK_",re="\0INLINECODE_";function se(e){if(!e||"string"!=typeof e)return"";const n=[];let t=e;t=t.replace(/```(\w*)\n([\s\S]*?)```/g,(e,t,r)=>{const s=n.length,o=F(r.trimEnd()),a=t?` class="language-${F(t)}"`:"";return n.push(`
${o}
`),`${te}${s}\0`});const r=[];t=t.replace(/`([^`\n]+)`/g,(e,n)=>{const t=r.length;return r.push(`${F(n)}`),`${re}${t}\0`}),t=F(t),t=oe(t,te,n),t=oe(t,re,r);const s=t.split("\n"),o=[];let a=!1,i="",c=!1,l=[];for(let e=0;e')){h(),b(),f(),o.push(n);continue}const t=n.match(/^ {0,3}(#{1,6})(?:\s+|(?=[\u3400-\u9FFF\d]))(.+)/);if(t){h(),b(),f();const e=t[1].length;o.push(`${t[2]}`);continue}if(e+10&&t.length===r.length){h(),b(),f();const n=r.map(k);for(o.push('
'),o.push(""),t.forEach((e,t)=>{o.push(`${d(e)}`)}),o.push(""),e+=2;e"),t.forEach((e,t)=>{o.push(`${d(r[t]||"")}`)}),o.push(""),e++}o.push("
"),e--;continue}}const r=n.match(/^ {0,3}>\s?(.*)/);if(r){h(),b(),c||(c=!0,o.push('
"),c=!1)}}function oe(e,n,t){return e.replace(new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")+"(\\d+)\0","g"),(e,n)=>t[parseInt(n)]||"")}let ae,ie=null,ce=[],le=null,de=null,pe=null,ue=null,me=null,ke=null,ge=null,he=null,be=null,fe=null,ye=null,ve=null,xe=null,we=null,_e=!1,Ee=null,Ce=!0,Le=[],Ie="",Se=!1;function Ae(e,n){ie=e,le=n.messagesContainer,de=n.inputEl,pe=n.inputEl.parentElement,ue=n.sendBtn,me=n.clearBtn,ke=n.categorySelect,ge=n.roleSelect,he=n.historyPanel,be=n.welcomeEl,fe=n.newMsgBtn,ye=n.searchInput,ve=n.ariaLiveEl,xe=n.showLoading,we=n.hideLoading,ae=e.categoryId,Se=e.enableRag,function(){if(!de||!ue)return;ue.addEventListener("click",()=>{_e&&Ee?Ee.abort():He()}),de.addEventListener("keydown",e=>{"Enter"!==e.key||e.shiftKey||e.isComposing||(e.preventDefault(),He())}),de.addEventListener("input",()=>{qe(),function(){if(!de)return;de.style.height="auto",de.style.height=`${Math.min(de.scrollHeight,120)}px`}()}),de.addEventListener("focus",()=>{pe&&pe.classList.add("csk-input-wrap--focus")}),de.addEventListener("blur",()=>{pe&&pe.classList.remove("csk-input-wrap--focus")}),me&&me.addEventListener("click",()=>function(){if(!ie)return;if(ce=[],le){le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove())}me&&(me.style.display="none");Be(),ne(ie.integrateId);const e=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();d(e),I(ie.integrateId,ie.userId,e),t.lifecycleClear(ie.integrateId)}())}(),function(){if(!le)return;le.addEventListener("scroll",()=>{if(!le)return;const{scrollTop:e,scrollHeight:n,clientHeight:t}=le;Ce=n-e-t<80,Ce&&Me()}),fe&&fe.addEventListener("click",()=>{le&&G(le),Ce=!0,Me()})}(),function(){if(!ye)return;ye.addEventListener("input",()=>{Ie=ye.value.trim().toLowerCase(),De()})}(),e.showCategorySwitch&&ke&&async function(){if(!ke)return;try{const e=await async function(){const e=u("/category/tree");try{const n=await k(e);if(!n.ok)throw new g(h(n.status),`http_${n.status}`);const r=await n.json();return r.success&&Array.isArray(r.data)?(t.info(`加载分类树成功 count=${r.data.length}`),r.data):[]}catch(e){return e instanceof g?t.error(`加载分类树失败: ${e.message}`):t.error("加载分类树失败",e),[]}}();if(0===e.length)return;ke.innerHTML=``;const n=(e,t=0)=>{for(const r of e){const e=document.createElement("option");e.value=String(r.id),e.textContent=`${" ".repeat(t)}${r.name}`,void 0!==ae&&String(r.id)===String(ae)&&(e.selected=!0),ke.appendChild(e),r.children&&r.children.length>0&&n(r.children,t+1)}};n(e),t.info(`知识库分类加载成功 count=${e.length}`)}catch(e){t.error(o("category_load_error"),e)}}()}async function $e(){if(ie&&le&&(await C(),await Ne(),0===ce.length)){const e=function(e){try{const n=localStorage.getItem(Z(e));if(!n)return[];const r=JSON.parse(n);return r&&Array.isArray(r.messages)?(t.info(`加载历史消息 integrateId=${e} count=${r.messages.length}`),r.messages):[]}catch(e){return[]}}(ie.integrateId);e.length>0&&(ce=e,Pe(),t.info(`从本地缓存恢复 ${e.length} 条消息`))}}async function Ne(){if(!ie||!le)return;const e=p();if(e)try{const n=await w(e);n.messages.length>0&&(ce=n.messages.map((e,n)=>({id:M(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),Pe(),t.info(`从后端加载 ${ce.length} 条历史消息`),ee(l(),ce))}catch(e){}}function Me(){fe&&fe.classList.add("csk-newmsg--hidden")}function Fe(){le&&(Ce?G(le):fe&&fe.classList.remove("csk-newmsg--hidden"))}function ze(e){ue&&("stop"===e?(ue.classList.add("csk-send-btn--stop"),ue.removeAttribute("disabled"),ue.setAttribute("title",o("stop")),ue.setAttribute("aria-label",o("stop")),ue.innerHTML=''):(ue.classList.remove("csk-send-btn--stop"),ue.setAttribute("title",o("send")),ue.setAttribute("aria-label",o("send")),ue.innerHTML='',qe()))}function De(){const e=null==he?void 0:he.querySelector("#csk-history-list");if(!e||!ie)return;V(e,Ie?Le.filter(e=>(e.lastMessagePreview||e.chatId||e.id||"").toLowerCase().includes(Ie)):Le,e=>{Ue(e)},e=>{window.open(E(e),"_blank")},async e=>{if(!confirm(o("history_delete_confirm")))return;await _(e)&&(e===p()&&(ce=[],le&&le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),me&&(me.style.display="none"),Be()),Le=Le.filter(n=>(n.chatId||n.id)!==e),De())},p())}function Te(e,n){if(!le)return;const t=ce.find(n=>n.id===e&&"ai"===n.role);if(t){if("up"===n){const n="up"===t.feedback?void 0:"up";t.feedback=n,t.feedbackReason=void 0,t.feedbackComment=void 0;const r=le.querySelector(`[data-csk-msg-id="${e}"]`);return r&&Y(r,n),ie&&ee(ie.integrateId,ce),void(n&&v(String(e),"THUMBS_UP").then(e=>{}))}if("down"===n){const n=le.querySelector(`[data-csk-msg-id="${e}"]`);if(!n)return;if("down"===t.feedback)return t.feedback=void 0,t.feedbackReason=void 0,t.feedbackComment=void 0,n&&Y(n,void 0),void(ie&&ee(ie.integrateId,ce));!function(e,n,t){const r=e.querySelector(".csk-feedback-reason");r&&r.remove();const s=document.createElement("div");s.className="csk-feedback-reason";const a=document.createElement("div");a.className="csk-feedback-reason__title",a.textContent=o("feedback_reason_title"),s.appendChild(a);const i=document.createElement("div");i.className="csk-feedback-reason__options",Q.forEach(e=>{const n=document.createElement("button");n.type="button",n.className="csk-feedback-reason__btn",n.textContent=o(e.labelKey),n.addEventListener("click",n=>{n.stopPropagation(),t(e.key),s.remove()}),i.appendChild(n)}),s.appendChild(i);const c=document.createElement("div");c.className="csk-feedback-reason__comment-row";const l=document.createElement("input");l.type="text",l.className="csk-feedback-reason__comment",l.placeholder=o("feedback_reason_comment_placeholder"),l.maxLength=200,c.appendChild(l);const d=document.createElement("button");d.type="button",d.className="csk-feedback-reason__submit",d.textContent=o("feedback_reason_submit"),d.addEventListener("click",e=>{e.stopPropagation();const n=l.value.trim()||void 0;t("other",n),s.remove()}),c.appendChild(d),s.appendChild(c);const p=document.createElement("button");p.type="button",p.className="csk-feedback-reason__close",p.setAttribute("aria-label",o("close")),p.innerHTML='',p.addEventListener("click",e=>{e.stopPropagation(),s.remove()}),s.appendChild(p),e.appendChild(s)}(n,0,(r,s)=>{t.feedback="down",t.feedbackReason=r,t.feedbackComment=s,n&&Y(n,"down"),ie&&ee(ie.integrateId,ce),v(String(e),"THUMBS_DOWN",r,s).then(e=>{})})}}}function Be(){if(!be)return;const e=ce.length>0||le&&le.querySelector(".csk-msg");be.style.display=e?"none":""}function qe(){if(!ue||!de)return;de.value.trim().length>0&&!_e?ue.removeAttribute("disabled"):ue.setAttribute("disabled","true")}async function He(){if(!de||!ie||_e)return;const e=de.value.trim();if(""===e)return;de.value="",qe(),de.style.height="auto";const n=D(),t={id:M(),role:"user",content:e,timestamp:n};le&&j(le,e,n),ce.push(t),Be(),me&&ce.length>0&&(me.style.display="inline-flex"),le&&Fe(),await je(e)}async function je(e){if(!ie||!le)return;_e=!0,ze("stop"),ie.chatId||await C();const n=D(),r=Se;xe&&xe(),le&&Fe();const s=M();let i="";try{ie.streaming?i=await async function(e,n,t,r){Ee=new AbortController;const s=Ee.signal;return new Promise((a,i)=>{let c=null,l=null,d="",p=!1;f(e,e=>{if(d+=e,!p&&le){we&&we();const{wrapper:e,bubble:t}=function(e,n,t){const r=document.createElement("div");r.className="csk-msg csk-msg--ai csk-msg--streaming",t&&(r.dataset.cskMsgId=t);const s=document.createElement("div");s.className="csk-msg__avatar csk-msg__avatar--ai",s.innerHTML=T;const o=document.createElement("div");o.className="csk-msg__content";const a=document.createElement("div");a.className="csk-msg__bubble",a.innerHTML="";const i=document.createElement("div");i.className="csk-msg__time",i.textContent=z(n),o.appendChild(a);const c=document.createElement("div");return c.className="csk-msg__meta",c.appendChild(i),c.appendChild(W(a,r)),o.appendChild(c),r.appendChild(s),r.appendChild(o),e.appendChild(r),{wrapper:r,bubble:a}}(le,n,r);l=e,c=t,p=!0}c&&(c.innerHTML=se(d),function(e){if(e.querySelector(".csk-caret"))return;const n=document.createElement("span");n.className="csk-caret",n.setAttribute("aria-hidden","true"),e.appendChild(n)}(c)),le&&Fe()},()=>{if(l&&c){if(!p&&""===d)return void b(e).then(a).catch(i);d&&(c.innerHTML=se(d)),K(l,c)}a(d)},e=>{"network"!==e.type&&"cors"!==e.type||le&&function(e){if(document.getElementById("csk-offline-banner"))return;const n=document.createElement("div");n.id="csk-offline-banner",n.className="csk-offline-banner",n.textContent=o("error_offline"),e.insertBefore(n,e.firstChild)}(le),d.length>0?(c&&(c.innerHTML=se(d+"\n\n"+o("stream_interrupted")),l&&K(l,c)),a(d)):i(e)},ae,t,s)})}(e,n,r,s):(i=await b(e),we&&we(),le&&R(le,i,n,se,s));const t={id:s,role:"ai",content:i,timestamp:n};ce.push(t),ee(ie.integrateId,ce),le&&Fe(),function(e){if(!ve)return;const n=e.length>120?e.substring(0,120)+"...":e;ve.textContent=o("new_msg_announce")+":"+n}(i),le&&le.dispatchEvent(new CustomEvent("csk:newMessage",{bubbles:!0,detail:{msg:t}})),r&&async function(e,n){try{const t=await y(e,ae);if(t.length>0){const e=t.map(e=>{var n,t;return{documentId:e.documentId||"",title:e.title||"",sourceName:e.sourceName||"",chunkIndex:null!==(n=e.chunkIndex)&&void 0!==n?n:0,score:null!==(t=e.score)&&void 0!==t?t:0,snippet:e.snippet||""}});if(n.sources=e,le){const n=le.querySelector(".csk-msg--ai:last-of-type");n&&J(n,e)}ie&&ee(ie.integrateId,ce)}}catch(e){}}(e,t),ie.suggestions&&async function(e){const n=p();if(!n||!le)return;try{const t=await async function(e){if(!a||!e)return[];try{const n=new URLSearchParams;n.set("chatId",e);const t=u(`/ai/suggestions?${n.toString()}`),r=await k(t);if(!r.ok)return[];const s=await r.json();return s.success&&s.data&&Array.isArray(s.data.suggestions)?s.data.suggestions.filter(e=>"string"==typeof e&&e.trim().length>0):[]}catch(e){return[]}}(n);if(t.length>0&&le){const n=le.querySelector(`[data-csk-msg-id="${e}"]`);n&&function(e,n,t){if(function(e){const n=e.querySelector(".csk-suggestions");n&&n.remove()}(e),!n||0===n.length)return;const r=document.createElement("div");r.className="csk-suggestions";const s=document.createElement("div");s.className="csk-suggestions__list";for(const e of n){const n=document.createElement("button");n.type="button",n.className="csk-suggestion-item",n.textContent=e,n.addEventListener("click",n=>{n.stopPropagation(),t(e)}),s.appendChild(n)}r.appendChild(s);const o=e.querySelector(".csk-msg__content");o?o.appendChild(r):e.appendChild(r)}(n,t,Re)}}catch(e){}}(s),function(){const e=document.getElementById("csk-offline-banner");e&&e.remove()}()}catch(e){we&&we();const n=e instanceof g?e.message:o("error_send");if(le){const e=document.createElement("div");e.className="csk-msg csk-msg--ai";const t=document.createElement("div");t.className="csk-msg__bubble",t.style.color="#DC2626",t.textContent=`⚠ ${n}`,e.appendChild(t),le.appendChild(e)}t.error(`发送失败 integrateId=${ie.integrateId}`,e)}finally{_e=!1,Ee=null,ze("send"),qe()}}function Re(e){return!de||_e?Promise.resolve():(de.value=e,qe(),He())}function Pe(){if(!le)return;const e=le.querySelector(".csk-history-panel");le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());for(const e of ce)if("user"===e.role)j(le,e.content,e.timestamp);else{const n=R(le,e.content,e.timestamp,se,e.id);e.sources&&e.sources.length>0&&J(n,e.sources),e.feedback&&Y(n,e.feedback)}Ce=!0,G(le),me&&ce.length>0&&(me.style.display="inline-flex"),Be(),e&&!le.contains(e)&&le.appendChild(e)}async function Ue(e){if(!ie||!le)return;const n=Le.find(n=>(n.chatId||n.id)===e);if(n&&void 0!==n.roleId){const e=String(n.roleId),t=l();e&&e!==t&&(c(e),ge&&(ge.value=e))}d(e),I(l(),ie.userId,e),he&&he.classList.add("csk-history-panel--hidden"),ce=[];le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());try{const n=await w(e);n.messages.length>0&&(ce=n.messages.map(e=>({id:M(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),Pe(),t.info(`加载会话 ${e} 的 ${ce.length} 条消息`),ee(ie.integrateId,ce))}catch(e){}me&&ce.length>0&&(me.style.display="inline-flex"),Be()}let We=null,Ye=!1,Oe=null,Xe=null,Ke=null,Je=null,Ve=null,Ge=null,Qe=null,Ze=null,en=null,nn=null,tn=null,rn=null,sn=null,on=null,an=null,cn=null,ln=null,dn=null,pn=null;function un(){if(!an||!Oe)return;const e=Oe.getBoundingClientRect(),n=on?"left"===on.side:"left-bottom"===(null==We?void 0:We.position);n?(an.style.left=`${e.left}px`,an.style.right="auto"):(an.style.right=window.innerWidth-e.right+"px",an.style.left="auto"),an.style.bottom=window.innerHeight-e.top+8+"px",an.classList.toggle("csk-teaser--left",!!n),an.classList.toggle("csk-teaser--right",!n)}function mn(){if(!an)return;an.classList.add("csk-teaser--hidden"),an.removeEventListener("click",kn);const e=an.querySelector(".csk-teaser__close");e&&e.removeEventListener("click",gn)}function kn(e){e.target.closest(".csk-teaser__close")||(mn(),yn())}function gn(e){e.stopPropagation(),mn()}function hn(){an&&!an.classList.contains("csk-teaser--hidden")&&un()}const bn='button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])';function fn(e){"Escape"===e.key&&Xe&&!Xe.classList.contains("csk-window--hidden")&&vn(),function(e){if(!Xe||Xe.classList.contains("csk-window--hidden"))return;if("Tab"!==e.key)return;const n=Array.from(Xe.querySelectorAll(bn));if(0===n.length)return;const t=n[0],r=n[n.length-1];e.shiftKey?document.activeElement===t&&(e.preventDefault(),r.focus()):document.activeElement===r&&(e.preventDefault(),t.focus())}(e)}function yn(){Xe&&(Xe.classList.remove("csk-window--hidden"),mn(),ln&&ln.classList.add("csk-launcher__badge--hidden"),setTimeout(()=>{Je&&Je.focus()},80))}function vn(){Xe&&Xe.classList.add("csk-window--hidden")}function xn(){Xe&&(Xe.classList.contains("csk-window--hidden")?yn():vn())}function wn(e){return`csk_size_${e}`}function _n(e){return`csk_position_${e}`}function En(e){return`csk_launcher_pos_${e}`}function Cn(e){Xe&&(Xe.classList.remove("csk-window--right","csk-window--left"),Xe.classList.add(`csk-window--${e}`),an&&(an.classList.remove("csk-teaser--right","csk-teaser--left"),an.classList.add(`csk-teaser--${e}`)))}const Ln={init:function(e){if(Ye)return;const i=function(e){var n,r,s,o,a,i,c,l,d,p,u,m,k;if(!e.integrateId||"string"!=typeof e.integrateId&&"number"!=typeof e.integrateId||"string"==typeof e.integrateId&&""===e.integrateId.trim())return t.error('integrateId 是必传参数(对应后端 roleId 客服角色 ID),请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;if(!e.requestDomain||"string"!=typeof e.requestDomain||""===e.requestDomain.trim())return t.error('requestDomain 是必传参数,请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;try{new URL(e.requestDomain)}catch(n){return t.error(`requestDomain 不是合法的 URL 格式:${e.requestDomain}。请提供完整的域名,如 https://api.example.com`),null}const g=String(e.integrateId).trim(),h=e.requestDomain.replace(/\/+$/,""),b=e.launcherIcon||``,f=e.primaryColor||"#4F46E5",y={integrateId:g,requestDomain:e.requestDomain.replace(/\/+$/,""),userId:e.userId,categoryId:e.categoryId,showCategorySwitch:null!==(n=e.showCategorySwitch)&&void 0!==n&&n,title:e.title||"AI 智能助手",width:null!==(r=e.width)&&void 0!==r?r:500,height:Math.max(400,null!==(s=e.height)&&void 0!==s?s:520),position:"left-bottom"===e.position?"left-bottom":"right-bottom",primaryColor:f,launcherIcon:b,showClear:null===(o=e.showClear)||void 0===o||o,showAdminPanel:null!==(a=e.showAdminPanel)&&void 0!==a&&a,quickReplies:Array.isArray(e.quickReplies)?e.quickReplies.map(e=>String(e).trim()).filter(Boolean):[],suggestions:null===(i=e.suggestions)||void 0===i||i,theme:"dark"===e.theme?"dark":"light",showTeaser:null===(c=e.showTeaser)||void 0===c||c,teaserText:"string"==typeof e.teaserText&&e.teaserText.trim()||"",resizable:null===(l=e.resizable)||void 0===l||l,watermark:"string"==typeof e.watermark&&e.watermark.trim()||void 0,streaming:null===(d=e.streaming)||void 0===d||d,enableRag:null===(p=e.enableRag)||void 0===p||p,rewriteStrategy:e.rewriteStrategy||"REWRITE",locale:e.locale||"zh-CN",debug:null===(u=e.debug)||void 0===u||u,sound:null!==(m=e.sound)&&void 0!==m&&m,notification:null!==(k=e.notification)&&void 0!==k&&k,onError:"function"==typeof e.onError?e.onError:void 0,onReady:"function"==typeof e.onReady?e.onReady:void 0,onMessage:"function"==typeof e.onMessage?e.onMessage:void 0,token:e.token,roles:e.roles,disclaimer:e.disclaimer,chatId:""};return t.info(`配置解析完成 integrateId(=roleId)=${y.integrateId} userId(=accountId)=${y.userId||"(未设置)"} requestDomain=${y.requestDomain}`),y}(e);if(!i)return;We=i,function(e){if(r[e])s=e;else{const n=e.split("-")[0],t=Object.keys(r).find(e=>e.startsWith(n));t&&(s=t)}}(We.locale),We.debug,n(We.onError),function(e){a=e}(We),N(We),Oe=B(We,xn),document.body.appendChild(Oe),ln=Oe.querySelector(".csk-launcher__badge"),function(e,n){try{const t=localStorage.getItem(En(e));if(!t)return;const r=JSON.parse(t);if("left"!==r.side&&"right"!==r.side||"number"!=typeof r.bottom)return;const s=window.innerHeight-76,o=Math.max(16,Math.min(r.bottom,s));n.classList.remove("csk-launcher--right","csk-launcher--left"),n.classList.add(`csk-launcher--${r.side}`),n.style.bottom=`${o}px`,on={side:r.side,bottom:o}}catch(e){}}(We.integrateId,Oe),rn=function(e,n,t){let r=!1,s=0,o=0,a=!1,i=0,c=0,l=0,d=!1;function p(){const n=parseFloat(getComputedStyle(e).bottom);return isNaN(n)?24:n}function u(n,t){if(d)return;r=!0,a=!1,s=n,o=t,i=p();const u=e.style,m=getComputedStyle(e);c=u.right?parseFloat(u.right):parseFloat(m.right),l=u.left?parseFloat(u.left):parseFloat(m.left)}function m(n,t,d){if(!r)return;const p=n-s,u=t-o;if(!a){if(Math.abs(p)<5&&Math.abs(u)<5)return;a=!0,e.classList.add("csk-launcher--dragging"),e.classList.remove("csk-launcher--right","csk-launcher--left"),e.style.transition="none",!isNaN(c)&&c>=0&&isNaN(l)?(e.style.right=`${c}px`,e.style.left="auto"):!isNaN(l)&&l>=0&&(e.style.left=`${l}px`,e.style.right="auto")}if(a){d.preventDefault();const n=Math.max(16,Math.min(i-u,H()));e.style.bottom=`${n}px`}}function k(){if(!r)return;if(r=!1,!a)return;const n=parseFloat(e.style.bottom)||p(),s=Math.max(16,Math.min(n,H())),o=e.getBoundingClientRect(),i=o.left+o.width/2<=window.innerWidth/2?"left":"right";e.classList.remove("csk-launcher--dragging"),e.classList.add(`csk-launcher--${i}`,"csk-launcher--snap"),e.style.left="",e.style.right="",e.style.bottom=`${s}px`,d=!0;const c=()=>{e.removeEventListener("transitionend",c),e.classList.remove("csk-launcher--snap"),e.style.transition="",d=!1};e.addEventListener("transitionend",c),setTimeout(()=>{d&&c()},350);const l=n=>{n.stopPropagation(),e.removeEventListener("click",l,!0)};e.addEventListener("click",l,!0);const u=e.querySelector(".csk-launcher__badge");u&&(u.style.display=""),t&&t({side:i,bottom:s})}function g(e){u(e.clientX,e.clientY)}function h(e){m(e.clientX,e.clientY,e)}function b(){k()}function f(e){1===e.touches.length&&u(e.touches[0].clientX,e.touches[0].clientY)}function y(e){1===e.touches.length&&m(e.touches[0].clientX,e.touches[0].clientY,e)}function v(){k()}return e.addEventListener("mousedown",g),document.addEventListener("mousemove",h),document.addEventListener("mouseup",b),e.addEventListener("touchstart",f,{passive:!0}),document.addEventListener("touchmove",y,{passive:!1}),document.addEventListener("touchend",v),()=>{e.removeEventListener("mousedown",g),document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",b),e.removeEventListener("touchstart",f),document.removeEventListener("touchmove",y),document.removeEventListener("touchend",v)}}(Oe,0,e=>{const n=null==on?void 0:on.side;on=e,function(e,n){try{localStorage.setItem(En(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e),n&&n!==e.side&&function(){if(!Xe)return;Xe.style.left="",Xe.style.top="",Xe.style.right="",Xe.style.bottom=""}(),Cn(e.side),an&&!an.classList.contains("csk-teaser--hidden")&&un()}),on&&Cn(on.side);const d=q(We);Xe=d.window,Ke=d.messagesContainer,Je=d.inputEl,Ve=d.sendBtn,Ge=d.clearBtn,Qe=d.categorySelect,Ze=d.historyPanel,en=d.showLoading,nn=d.hideLoading,pn=d.disclaimer,document.body.appendChild(Xe),an=d.teaserEl,document.body.appendChild(an),un();const m=Xe.querySelector(".csk-header");if(m&&(tn=function(e,n,t){let r=!1,s=0,o=0,a=0,i=0;const c=e=>{if(e.target.closest("button"))return;r=!0,s=e.clientX,o=e.clientY;const t=n.getBoundingClientRect();a=s-t.left,i=o-t.top,document.addEventListener("mousemove",l),document.addEventListener("mouseup",d)},l=e=>{if(!r)return;const t=e.clientX-a,s=e.clientY-i,o=window.innerWidth-n.offsetWidth,c=window.innerHeight-n.offsetHeight;n.style.right="auto",n.style.bottom="auto",n.style.left=`${Math.max(0,Math.min(t,o))}px`,n.style.top=`${Math.max(0,Math.min(s,c))}px`},d=()=>{if(r=!1,document.removeEventListener("mousemove",l),document.removeEventListener("mouseup",d),t){const e=n.getBoundingClientRect();t({x:e.left,y:e.top})}};return e.addEventListener("mousedown",c),()=>{e.removeEventListener("mousedown",c),document.removeEventListener("mousemove",l),document.removeEventListener("mouseup",d)}}(m,Xe,e=>{!function(e,n){try{localStorage.setItem(_n(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e)})),function(e,n){try{const t=localStorage.getItem(_n(e));if(!t)return;const r=JSON.parse(t);if("number"!=typeof r.x||"number"!=typeof r.y)return;const s=window.innerWidth-n.offsetWidth,o=window.innerHeight-n.offsetHeight,a=Math.max(0,Math.min(r.x,s)),i=Math.max(0,Math.min(r.y,o));n.style.right="auto",n.style.bottom="auto",n.style.left=`${a}px`,n.style.top=`${i}px`}catch(e){}}(We.integrateId,Xe),We.resizable){const e=d.resizeHandle;sn=function(e,n,t){let r=!1,s=0,o=0,a=0,i=0;const c=(e,t)=>{r=!0,s=e,o=t;const c=n.getBoundingClientRect();a=c.width,i=c.height,n.classList.add("csk-window--resizing"),document.addEventListener("mousemove",p),document.addEventListener("mouseup",u),document.addEventListener("touchmove",g,{passive:!1}),document.addEventListener("touchend",h)},l=(e,t,c)=>{if(!r)return;c&&c.preventDefault();const l=e-s,d=t-o,p=Math.max(300,Math.min(a+l,window.innerWidth-24)),u=Math.max(300,Math.min(i+d,window.innerHeight-24));n.style.width=`${p}px`,n.style.height=`${u}px`,n.style.setProperty("--csk-window-width",`${p}px`),n.style.setProperty("--csk-window-height",`${u}px`),n.style.bottom="",n.style.right=""},d=()=>{if(!r)return;r=!1,n.classList.remove("csk-window--resizing"),document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",u),document.removeEventListener("touchmove",g),document.removeEventListener("touchend",h);const e=n.getBoundingClientRect();t&&t({width:e.width,height:e.height})};function p(e){l(e.clientX,e.clientY,e)}function u(){d()}function m(e){e.preventDefault(),e.stopPropagation(),c(e.clientX,e.clientY)}function k(e){e.preventDefault(),e.stopPropagation(),1===e.touches.length&&c(e.touches[0].clientX,e.touches[0].clientY)}function g(e){1===e.touches.length&&l(e.touches[0].clientX,e.touches[0].clientY,e)}function h(){d()}return e.addEventListener("mousedown",m),e.addEventListener("touchstart",k,{passive:!1}),()=>{e.removeEventListener("mousedown",m),e.removeEventListener("touchstart",k),document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",u),document.removeEventListener("touchmove",g),document.removeEventListener("touchend",h)}}(e,Xe,e=>{!function(e,n){try{localStorage.setItem(wn(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e)}),function(e,n){try{const t=localStorage.getItem(wn(e));if(!t)return;const r=JSON.parse(t);if("number"!=typeof r.width||"number"!=typeof r.height)return;const s=Math.max(300,Math.min(r.width,window.innerWidth-24)),o=Math.max(300,Math.min(r.height,window.innerHeight-24));n.style.width=`${s}px`,n.style.height=`${o}px`,n.style.setProperty("--csk-window-width",`${s}px`),n.style.setProperty("--csk-window-height",`${o}px`)}catch(e){}}(We.integrateId,Xe)}if(Ae(We,{messagesContainer:Ke,inputEl:Je,sendBtn:Ve,clearBtn:Ge,categorySelect:Qe,historyPanel:Ze,welcomeEl:d.welcomeEl,newMsgBtn:d.newMsgBtn,searchInput:d.searchInput,ariaLiveEl:d.ariaLiveEl,roleSelect:d.roleSelect,showLoading:en,hideLoading:nn}),Xe.addEventListener("csk:categoryChange",e=>{var n,t;n=e.detail.categoryId,ae=n,Se=null===(t=null==ie?void 0:ie.enableRag)||void 0===t||t}),Xe.addEventListener("csk:loadHistory",()=>{!async function(){if(!he||!ie)return;const e=he.querySelector("#csk-history-list");if(e){e.innerHTML='
加载中...
';try{const n=await x(1,50,ie.userId,l());Le=n.list.map(e=>({id:e.conversationId||"",chatId:e.conversationId||"",roleId:e.roleId,roleName:e.roleName,messageCount:e.messageCount,lastMessageTime:e.lastMessageTime,lastMessagePreview:e.lastMessagePreview,createdAt:e.firstMessageTime||e.createdAt})),Ie="",ye&&(ye.value=""),V(e,Le,e=>{Ue(e)},e=>{window.open(E(e),"_blank")},async e=>{confirm(o("history_delete_confirm"))&&await _(e)&&(e===p()&&(ce=[],le&&le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),me&&(me.style.display="none"),Be()),Le=Le.filter(n=>(n.chatId||n.id)!==e),De())},p())}catch(n){t.error(o("history_load_error"),n),e.innerHTML=`
${o("history_load_error")}
`}}}()}),Xe.addEventListener("csk:quickReply",e=>{Re(e.detail.text)}),Xe.addEventListener("csk:retry",e=>{!async function(e){if(!ie||!le||_e)return;const n=ce.findIndex(n=>n.id===e&&"ai"===n.role);if(n<0)return;let t="";for(let e=n-1;e>=0;e--)if("user"===ce[e].role){t=ce[e].content;break}if(!t)return;const r=ce.splice(n),s=new Set(r.map(e=>e.id));le.querySelectorAll(".csk-msg").forEach(e=>{const n=e.dataset.cskMsgId;n&&s.has(n)&&e.remove()}),ee(ie.integrateId,ce),Be(),await je(t)}(e.detail.msgId)}),Xe.addEventListener("csk:feedback",e=>{Te(e.detail.msgId,e.detail.value)}),Xe.addEventListener("csk:newMessage",e=>{var n;if(Xe&&Xe.classList.contains("csk-window--hidden")&&(ln&&ln.classList.remove("csk-launcher__badge--hidden"),(null==We?void 0:We.sound)&&function(){try{dn||(dn=new(window.AudioContext||window.webkitAudioContext));const e=dn;if("suspended"===e.state)return void e.resume();const n=e.currentTime;[0,.15].forEach((t,r)=>{const s=e.createOscillator(),o=e.createGain();s.type="sine",s.frequency.value=0===r?880:1100,o.gain.setValueAtTime(.15,n+t),o.gain.exponentialRampToValueAtTime(.001,n+t+.12),s.connect(o),o.connect(e.destination),s.start(n+t),s.stop(n+t+.12)})}catch(e){}}(),(null==We?void 0:We.notification)&&function(){try{if(!("Notification"in window))return;"granted"===Notification.permission?new Notification((null==We?void 0:We.title)||"AI 智能助手",{body:"收到新消息",icon:void 0,silent:!0}):"denied"!==Notification.permission&&Notification.requestPermission()}catch(e){}}()),(null==We?void 0:We.onMessage)&&(null===(n=e.detail)||void 0===n?void 0:n.msg))try{We.onMessage(e.detail.msg)}catch(e){}}),Xe.addEventListener("csk:roleChange",e=>{e.detail.roleId&&async function(e){if(!ie||!le)return;const n=l();if(e===n)return;if(ce.length>0&&ee(n,ce),Ee&&(Ee.abort(),Ee=null),_e=!1,ze("send"),ce=[],le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),ne(n),I(n,ie.userId,void 0),ne(e),I(e,ie.userId,void 0),c(e),ge&&(ge.value=e),await C(!0))try{await Ne()}catch(e){}me&&0===ce.length&&(me.style.display="none"),Be(),Ce=!0,le&&G(le)}(String(e.detail.roleId))}),document.addEventListener("keydown",fn),window.addEventListener("resize",hn),Ye=!0,t.lifecycleInit(We.integrateId,We.requestDomain),We.onReady)try{We.onReady()}catch(e){}We.showTeaser&&(cn=setTimeout(()=>{Xe&&Xe.classList.contains("csk-window--hidden")&&function(){if(!an)return;un(),an.classList.remove("csk-teaser--hidden"),an.addEventListener("click",kn);const e=an.querySelector(".csk-teaser__close");e&&e.addEventListener("click",gn)}()},1500)),$e().catch(e=>{}),void 0===We.disclaimer&&async function(e){if(!a)return"";try{const n=u(`/ai/system-config/${encodeURIComponent(e)}`),t=await k(n);if(!t.ok)return"";const r=await t.json();return r.success&&r.data&&r.data.configValue||""}catch(e){return""}}("disclaimer").then(e=>{e&&pn&&(pn.innerHTML=e,pn.style.display="")}).catch(()=>{})},destroy:function(){Ye&&(cn&&(clearTimeout(cn),cn=null),mn(),an&&an.parentNode&&(an.parentNode.removeChild(an),an=null),Oe&&Oe.parentNode&&(Oe.parentNode.removeChild(Oe),Oe=null),Xe&&Xe.parentNode&&(Xe.parentNode.removeChild(Xe),Xe=null),tn&&(tn(),tn=null),rn&&(rn(),rn=null),sn&&(sn(),sn=null),on=null,S&&S.parentNode&&(S.parentNode.removeChild(S),S=null),document.querySelectorAll("style[data-csk-sdk]").forEach(e=>e.remove()),document.removeEventListener("keydown",fn),window.removeEventListener("resize",hn),n(void 0),null==We||We.integrateId,We=null,Ye=!1,Ke=null,Je=null,Ve=null,Ge=null,Qe=null,Ze=null,en=null,nn=null,ln=null,dn=null,pn=null,a=null,i=null)},open:yn,close:vn,toggle:xn,clearHistory:function(){We&&(Ge?Ge.click():ne(We.integrateId))}};return"undefined"!=typeof window&&(window.ChatbotSDK=Ln),Ln}(); +var ChatbotSDK=function(){"use strict";let e=null;function n(n){e=n||null}const t={info(e,n){},warn(e,n){},error(n,t){if(e)try{const r=t instanceof Error&&t.type||"error";e({message:n,code:String(r),detail:t})}catch(e){}},time(e){},timeEnd:(e,n)=>0,lifecycleInit(e,n){},lifecycleDestroy(e){},lifecycleSend(e,n){},lifecycleReply(e,n){},lifecycleError(e,n,t){},lifecycleClear(e){},lifecycleStreamDone(e,n){},lifecycleCategoryChange(e){}};const r={"zh-CN":{title:"AI 智能助手",minimize:"最小化",close:"关闭",status_online:"在线",role_selector_label:"服务角色",welcome_title:"你好,我是 AI 智能助手",welcome_desc:"有什么可以帮你的吗?在下方输入框开始提问吧~",placeholder:"输入您的问题...",send:"发送",stop:"停止生成",new_message:"新消息",copy:"复制",copied:"已复制",retry:"重新生成",retrying:"重新生成中...",loading:"正在思考...",stream_interrupted:"回复被中断",stream_unstable:"网络不稳定,内容可能不完整",category_placeholder:"选择知识库分类",category_all:"全部分类",category_load_error:"加载分类失败",source_title:"参考来源",source_count:"{n} 条参考来源",source_loading:"加载来源中...",clear:"新对话",history_title:"历史会话",history_empty:"暂无历史会话",history_load_error:"加载会话列表失败",history_delete_confirm:"确定删除该会话?",history_export:"导出",history_delete:"删除",history_search:"搜索会话...",history_group_today:"今天",history_group_yesterday:"昨天",history_group_week:"本周",history_group_earlier:"更早",feedback_up:"有帮助",feedback_down:"没帮助",feedback_reason_title:"请选择不满意的原因:",feedback_reason_inaccurate:"信息错误",feedback_reason_irrelevant:"不相关",feedback_reason_incomplete:"不完整",feedback_reason_other:"其他",feedback_reason_comment_placeholder:"补充说明(可选)",feedback_reason_submit:"提交",teaser_text:"有什么可以帮你的吗?",new_msg_announce:"收到新消息",resize:"拖拽缩放窗口",error_network:"网络连接失败,请检查网络",error_offline:"⚠️ 网络连接异常,请检查网络后重试",error_timeout:"请求超时,请稍后重试",error_server:"服务器异常,请稍后重试",error_cors:"跨域请求被拦截,请联系管理员将当前域名加入 API 白名单",error_auth:"鉴权失败,请联系管理员",error_forbidden:"无访问权限,请联系管理员配置",error_not_found:"请求的资源不存在",error_rate_limit:"请求过于频繁,请稍后重试",error_unavailable:"服务暂不可用,请稍后重试",error_unknown:"请求发生未知错误",error_send:"发送失败,请稍后重试",error_stream_unsupported:"浏览器不支持流式读取"},en:{title:"AI Assistant",minimize:"Minimize",close:"Close",status_online:"Online",role_selector_label:"Service",welcome_title:"Hi, I am your AI assistant",welcome_desc:"How can I help you? Type your question below to get started.",placeholder:"Type your question...",send:"Send",stop:"Stop generating",new_message:"New message",copy:"Copy",copied:"Copied",retry:"Regenerate",retrying:"Regenerating...",loading:"Thinking...",stream_interrupted:"Response interrupted",stream_unstable:"Network unstable, content may be incomplete",category_placeholder:"Select category",category_all:"All categories",category_load_error:"Failed to load categories",source_title:"Sources",source_count:"{n} source(s)",source_loading:"Loading sources...",clear:"New chat",history_title:"History",history_empty:"No conversations yet",history_load_error:"Failed to load conversations",history_delete_confirm:"Delete this conversation?",history_export:"Export",history_delete:"Delete",history_search:"Search conversations...",history_group_today:"Today",history_group_yesterday:"Yesterday",history_group_week:"This Week",history_group_earlier:"Earlier",feedback_up:"Helpful",feedback_down:"Not helpful",feedback_reason_title:"Please tell us why:",feedback_reason_inaccurate:"Inaccurate",feedback_reason_irrelevant:"Irrelevant",feedback_reason_incomplete:"Incomplete",feedback_reason_other:"Other",feedback_reason_comment_placeholder:"Additional comments (optional)",feedback_reason_submit:"Submit",teaser_text:"How can I help you?",new_msg_announce:"New message received",resize:"Resize window",error_network:"Network connection failed",error_offline:"⚠️ Connection lost. Please check your network and try again.",error_timeout:"Request timed out, please try again",error_server:"Server error, please try again later",error_cors:"CORS request blocked. Please contact admin to whitelist your domain",error_auth:"Authentication failed, please contact admin",error_forbidden:"Access denied, please contact admin",error_not_found:"Resource not found",error_rate_limit:"Too many requests, please try again later",error_unavailable:"Service temporarily unavailable",error_unknown:"Unknown request error",error_send:"Failed to send, please try again",error_stream_unsupported:"Browser does not support streaming"}};let s="zh-CN";function o(e,n){let t=(r[s]||r["zh-CN"])[e]||r["zh-CN"][e]||e;if(n)for(const[e,r]of Object.entries(n))t=t.replace(`{${e}}`,String(r));return t}let a=null,i=null;function c(e){i=e}function l(){var e;return null!==(e=null!=i?i:null==a?void 0:a.integrateId)&&void 0!==e?e:""}function d(e){a&&(a.chatId=e)}function p(){return(null==a?void 0:a.chatId)||""}function u(e){if(!a)throw new Error("API 配置未初始化");return`${a.requestDomain.replace(/\/+$/,"")}${e.startsWith("/")?e:`/${e}`}`}function m(e,n,t){null!=t&&("string"==typeof t&&""===t.trim()||e.set(n,String(t)))}async function k(e,n={},r=3e4,s){const i=new AbortController,c=setTimeout(()=>i.abort(),r);s&&(s.aborted?i.abort():s.addEventListener("abort",()=>i.abort(),{once:!0}));try{const r={};n.headers&&(n.headers instanceof Headers?n.headers.forEach((e,n)=>{r[n]=e}):Array.isArray(n.headers)?n.headers.forEach(([e,n])=>{r[e]=n}):Object.assign(r,n.headers)),(null==a?void 0:a.token)&&(e.includes("/ai/")||e.endsWith("/feedback"))&&(r.Authorization=`Bearer ${a.token}`);const s=await fetch(e,Object.assign(Object.assign({},n),{headers:r,signal:i.signal,mode:"cors",credentials:"include"}));return 401===s.status&&(e.includes("/ai/")||e.endsWith("/feedback"))&&t.error("SDK 认证失败:Token 缺失或已过期,请重新调用 /open-api/auth/token 换取 Token"),s}catch(e){if(null==s?void 0:s.aborted)throw new g("aborted","aborted");if(e instanceof DOMException&&"AbortError"===e.name)throw new g(o("error_timeout"),"timeout");if(e instanceof TypeError&&e.message.includes("Failed to fetch"))throw new g(o("error_cors"),"cors");throw new g(o("error_network"),"network")}finally{clearTimeout(c)}}class g extends Error{constructor(e,n){super(e),this.name="CskError",this.type=n}}function h(e){switch(e){case 401:return o("error_auth");case 403:return o("error_forbidden");case 404:return o("error_not_found");case 429:return o("error_rate_limit");case 500:return o("error_server");case 502:case 503:return o("error_unavailable");default:return`${o("error_unknown")}(${e})`}}async function b(e){const n=function(e){const n=new URLSearchParams;return n.set("message",e),n.set("chatId",a.chatId),m(n,"roleId",l()),m(n,"accountId",a.userId),u(`/ai/assistant_app/chat/sync?${n.toString()}`)}(e);t.lifecycleSend(l(),e.length);try{const e=await k(n);if(!e.ok){const n=h(e.status);throw t.lifecycleError(l(),String(e.status),n),new g(n,`http_${e.status}`)}const r=await e.text();return t.lifecycleReply(l(),r.length),r}catch(e){if(e instanceof g)throw e;throw t.lifecycleError(l(),"unknown",String(e)),new g(o("error_unknown"),"unknown")}}async function f(e,n,r,s,i,c,d){var p;const b=c?function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy",a.rewriteStrategy||"REWRITE"),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/chat/rag/sse?${t.toString()}`)}(e,i):function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/chat/sse?${t.toString()}`)}(e,i);let f="";t.lifecycleSend(l(),e.length);try{const e=await k(b,{},6e4,d);if(!e.ok){const n=h(e.status);return t.lifecycleError(l(),String(e.status),n),void s(new g(n,`http_${e.status}`))}const a=null===(p=e.body)||void 0===p?void 0:p.getReader();if(!a)return void s(new g(o("error_stream_unsupported"),"stream_unsupported"));const i=new TextDecoder("utf-8",{stream:!0});let c="",u=[],m="";try{for(;;){const{done:e,value:t}=await a.read();if(e)break;c+=i.decode(t,{stream:!0});const r=c.split("\n");c=r.pop()||"";for(const e of r){const t=e.trim();if(!t){if(u.length>0){if("status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e)}u=[]}m="";continue}if(t.startsWith(":"))continue;if("[DONE]"===t){if(u.length>0&&"status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e),u=[]}m="";break}if(t.startsWith("event:")){m=t.substring(6).trim();continue}if(t.startsWith("id:")||t.startsWith("retry:"))continue;let r;t.startsWith("data:")?(r=t.substring(5),r.startsWith(" ")&&(r=r.substring(1))):r=t,u.push(r)}}if(c.trim()){const e=c.trim();if(!e.startsWith(":"))if(e.startsWith("data:")){let n=e.substring(5);n.startsWith(" ")&&(n=n.substring(1)),u.push(n)}else"[DONE]"===e||e.startsWith("event:")||e.startsWith("id:")||e.startsWith("retry:")||u.push(e)}if(u.length>0&&"status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e),u=[]}}catch(e){if(null==d?void 0:d.aborted)t.info(`流式被用户中断,保留已生成内容 length=${f.length}`);else{if(!(f.length>0))throw e;n("\n\n"+o("stream_unstable"))}}finally{a.releaseLock()}t.lifecycleStreamDone(l(),f.length),r()}catch(e){if((null==d?void 0:d.aborted)||e instanceof g&&"aborted"===e.type)return void r();e instanceof g?s(e):(t.lifecycleError(l(),"unknown",String(e)),s(new g(o("error_network"),"network")))}}async function y(e,n){const r=function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy",a.rewriteStrategy||"REWRITE"),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/rag/sources?${t.toString()}`)}(e,n);try{const e=await k(r);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return n.success&&Array.isArray(n.data)?(t.info(`获取引用来源 count=${n.data.length}`),n.data):[]}catch(e){return t.error("获取引用来源失败",e),[]}}async function v(e,n,r,s){if(!a)return!1;const o=u("/feedback");try{const i={messageId:String(e),conversationId:a.chatId,feedbackType:n};r&&(i.reasonCategory=r),s&&(i.reasonComment=s);const c=await k(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)});if(!c.ok)return t.error(`反馈提交失败 status=${c.status}`),!1;return(await c.json()).success||!1}catch(e){return t.error("反馈提交异常",e),!1}}async function x(e=1,n=20,r,s){const o=new URLSearchParams;o.set("page",String(e)),o.set("size",String(n)),r&&o.set("accountId",r),s&&o.set("roleId",s);const a=u(`/ai/sdk/conversation/list?${o.toString()}`);try{const e=await k(a);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return{list:n.success&&Array.isArray(n.data)?n.data:[],total:n.total||0,pages:n.pages||0}}catch(e){return t.error("加载会话列表失败",e),{list:[],total:0,pages:0}}}async function w(e){const n=new URLSearchParams;(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l());const r=u(`/ai/sdk/conversation/${e}/messages?${n.toString()}`);try{const e=await k(r);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return{messages:n.success&&Array.isArray(n.data)?n.data:[],total:n.total||0}}catch(e){return t.error("加载会话消息失败",e),{messages:[],total:0}}}async function _(e){const n=new URLSearchParams;(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l());const r=u(`/ai/sdk/conversation/${e}?${n.toString()}`);try{const n=await k(r,{method:"DELETE"});if(!n.ok)throw new g(h(n.status),`http_${n.status}`);const s=await n.json();return t.info(`删除会话 id=${e} success=${s.success}`),s.success||!1}catch(e){return t.error("删除会话失败",e),!1}}function E(e){const n=new URLSearchParams;return(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l()),u(`/ai/sdk/conversation/${e}/export?${n.toString()}`)}async function C(e=!1){if(!a)return"";const n=l();if(!e){const e=function(e,n){try{return localStorage.getItem(L(e,n))||""}catch(e){return""}}(n,a.userId);if(e)return a.chatId=e,e}try{const e=await x(1,5,a.userId,n);if(e.list.length>0){const r=e.list[0],s=r.conversationId||r.chatId||"";if(s)return a.chatId=s,I(n,a.userId,s),t.info(`从后端恢复会话 chatId=${s} messageCount=${r.messageCount}`),s}}catch(e){}const r=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();return a.chatId=r,I(n,a.userId,r),r}function L(e,n){return`csk_chatId_${e}${n?"_"+n:""}`}function I(e,n,t){try{t?localStorage.setItem(L(e,n),t):localStorage.removeItem(L(e,n))}catch(e){}}let S=null;function A(e){const n=$(e.primaryColor,-15),t=$(e.primaryColor,18),r=function(e){const n=e.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);return n?`${parseInt(n[1],16)}, ${parseInt(n[2],16)}, ${parseInt(n[3],16)}`:"79, 70, 229"}(e.primaryColor);return`\n --csk-primary: ${e.primaryColor};\n --csk-primary-hover: ${n};\n --csk-primary-light: ${t};\n --csk-primary-rgb: ${r};\n --csk-bg-user: linear-gradient(135deg, ${e.primaryColor}, ${n});\n --csk-bg-ai: #ffffff;\n --csk-text-user: #ffffff;\n --csk-text-ai: #1F2937;\n --csk-window-width: ${e.width}px;\n --csk-window-height: ${e.height}px;\n --csk-radius: 16px;\n --csk-shadow-window: 0 12px 48px rgba(15, 23, 42, 0.18), 0 2px 8px rgba(15, 23, 42, 0.06);\n --csk-shadow-bubble: 0 1px 2px rgba(15, 23, 42, 0.06);\n --csk-border: #ECEEF2;\n --csk-bg-app: #F6F7F9;\n `}function $(e,n){const t=e.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);if(!t)return e;const r=e=>Math.max(0,Math.min(255,e)),s=r(parseInt(t[1],16)+n),o=r(parseInt(t[2],16)+n),a=r(parseInt(t[3],16)+n);return`#${s.toString(16).padStart(2,"0")}${o.toString(16).padStart(2,"0")}${a.toString(16).padStart(2,"0")}`}function N(e){document.querySelector("style[data-csk-sdk]")||(S=document.createElement("style"),S.setAttribute("data-csk-sdk",""),S.textContent=function(e){return`\n/* ChatbotSDK 样式 - csk- 命名空间 */\n.csk-root {\n ${A(e)}\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;\n font-size: 14px;\n line-height: 1.55;\n color: #1F2937;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n box-sizing: border-box;\n}\n.csk-root *, .csk-root *::before, .csk-root *::after { box-sizing: border-box; }\n\n/* ========== 悬浮按钮 ========== */\n.csk-launcher {\n position: fixed;\n bottom: 24px;\n z-index: 9998;\n width: 60px;\n height: 60px;\n border-radius: 50%;\n /* 白色背景,简洁克制 */\n background: #ffffff;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #fff;\n user-select: none;\n overflow: hidden;\n /* 浅灰边框 */\n border: 2px solid #E5E7EB;\n /* 简洁柔和阴影 */\n box-shadow:\n 0 2px 8px rgba(0, 0, 0, 0.08),\n 0 4px 16px rgba(0, 0, 0, 0.06);\n transition:\n transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1),\n box-shadow 0.25s ease,\n border-color 0.25s ease;\n animation:\n csk-launcher-in 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;\n}\n.csk-launcher--right { right: 24px; }\n.csk-launcher--left { left: 24px; }\n\n.csk-launcher:hover {\n transform: translateY(-3px) scale(1.08);\n border-color: #D1D5DB;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.10),\n 0 8px 24px rgba(0, 0, 0, 0.08);\n}\n.csk-launcher:active { transform: scale(0.93); }\n.csk-launcher svg {\n width: 30px;\n height: 30px;\n position: relative;\n z-index: 1;\n filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.15));\n}\n.csk-launcher img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n position: relative;\n z-index: 1;\n -webkit-user-drag: none;\n user-select: none;\n}\n\n@keyframes csk-launcher-in {\n 0% { opacity: 0; transform: scale(0.5) translateY(16px); }\n 60% { transform: scale(1.06) translateY(-2px); }\n 100% { opacity: 1; transform: scale(1) translateY(0); }\n}\n\n/* ========== 聊天弹窗 ========== */\n.csk-window {\n position: fixed;\n bottom: 24px;\n z-index: 9999;\n width: var(--csk-window-width);\n height: var(--csk-window-height);\n max-height: calc(100vh - 48px);\n background: #fff;\n border-radius: var(--csk-radius);\n box-shadow: var(--csk-shadow-window);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transform-origin: bottom right;\n transition: opacity 0.24s ease, transform 0.24s cubic-bezier(0.34, 1.2, 0.64, 1), visibility 0.24s;\n opacity: 1;\n transform: translateY(0) scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.csk-window--right { right: 24px; transform-origin: bottom right; }\n.csk-window--left { left: 24px; transform-origin: bottom left; }\n.csk-window--hidden {\n opacity: 0;\n transform: translateY(12px) scale(0.96);\n visibility: hidden;\n pointer-events: none;\n}\n\n/* ========== 水印层 ========== */\n.csk-watermark {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n user-select: none;\n z-index: 0;\n background-repeat: repeat;\n opacity: 0.8;\n}\n\n/* ========== 头部 ========== */\n.csk-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n min-height: 60px;\n background: var(--csk-bg-user);\n color: #fff;\n cursor: move;\n user-select: none;\n position: relative;\n flex-shrink: 0;\n}\n.csk-header::after {\n content: '';\n position: absolute;\n left: 0; right: 0; bottom: 0;\n height: 24px;\n background: linear-gradient(to bottom, rgba(0,0,0,0.04), transparent);\n pointer-events: none;\n}\n.csk-header__left {\n display: flex;\n align-items: center;\n gap: 12px;\n min-width: 0;\n}\n.csk-header__avatar {\n width: 38px;\n height: 38px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.22);\n backdrop-filter: blur(4px);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.25);\n}\n.csk-header__avatar svg { width: 22px; height: 22px; }\n.csk-header__info {\n display: flex;\n flex-direction: column;\n min-width: 0;\n}\n.csk-header__title {\n font-size: 15px;\n font-weight: 600;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n letter-spacing: 0.2px;\n}\n.csk-header__status {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n font-size: 11.5px;\n opacity: 0.9;\n margin-top: 2px;\n}\n.csk-status-dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n background: #6EE7B7;\n box-shadow: 0 0 0 0 rgba(110, 231, 183, 0.7);\n animation: csk-status-pulse 2s infinite;\n}\n@keyframes csk-status-pulse {\n 0% { box-shadow: 0 0 0 0 rgba(110, 231, 183, 0.7); }\n 70% { box-shadow: 0 0 0 6px rgba(110, 231, 183, 0); }\n 100% { box-shadow: 0 0 0 0 rgba(110, 231, 183, 0); }\n}\n.csk-header__actions {\n display: flex;\n align-items: center;\n gap: 2px;\n flex-shrink: 0;\n}\n.csk-header__btn,\n.csk-history-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 8px;\n transition: background 0.15s, transform 0.15s;\n}\n.csk-header__btn:hover,\n.csk-history-btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n.csk-header__btn:active,\n.csk-history-btn:active { transform: scale(0.92); }\n\n/* ========== 角色选择器 ========== */\n.csk-role-select-wrap {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n margin: 0 4px;\n}\n.csk-role-select {\n appearance: none;\n -webkit-appearance: none;\n padding: 4px 24px 4px 10px;\n border: 1px solid rgba(255, 255, 255, 0.35);\n border-radius: 8px;\n background: rgba(255, 255, 255, 0.15) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='white' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 6px center;\n color: #fff;\n font-size: 12px;\n font-family: inherit;\n cursor: pointer;\n outline: none;\n transition: background 0.15s, border-color 0.15s;\n max-width: 120px;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-role-select:hover {\n background-color: rgba(255, 255, 255, 0.25);\n border-color: rgba(255, 255, 255, 0.55);\n}\n.csk-role-select:focus {\n border-color: rgba(255, 255, 255, 0.7);\n box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.2);\n}\n.csk-role-select option {\n color: #1F2937;\n background: #fff;\n}\n\n/* ========== 消息区 ========== */\n.csk-messages {\n flex: 1;\n overflow-y: auto;\n padding: 20px 16px 12px;\n background: var(--csk-bg-app);\n scroll-behavior: smooth;\n}\n.csk-messages::-webkit-scrollbar { width: 6px; }\n.csk-messages::-webkit-scrollbar-track { background: transparent; }\n.csk-messages::-webkit-scrollbar-thumb {\n background: #D8DCE3;\n border-radius: 3px;\n}\n.csk-messages::-webkit-scrollbar-thumb:hover { background: #C2C7D0; }\n\n/* 离线提示横幅 */\n.csk-offline-banner {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n padding: 8px 12px;\n margin: 0 0 8px 0;\n border-radius: 8px;\n font-size: 12px;\n line-height: 1.5;\n background: #FEF2F2;\n color: #991B1B;\n border: 1px solid #FECACA;\n}\n.csk-dark .csk-offline-banner {\n background: #450A0A;\n color: #FCA5A5;\n border-color: #7F1D1D;\n}\n\n/* 欢迎空状态 */\n.csk-welcome {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n padding: 48px 24px 32px;\n color: #6B7280;\n animation: csk-fade-in 0.3s ease;\n}\n.csk-welcome__avatar {\n width: 56px;\n height: 56px;\n border-radius: 50%;\n background: var(--csk-bg-user);\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 14px;\n box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.3);\n}\n.csk-welcome__avatar svg { width: 30px; height: 30px; }\n.csk-welcome__title {\n font-size: 15px;\n font-weight: 600;\n color: #1F2937;\n margin-bottom: 4px;\n}\n.csk-welcome__desc {\n font-size: 13px;\n color: #9CA3AF;\n line-height: 1.6;\n}\n\n/* 消息气泡 */\n.csk-msg {\n display: flex;\n margin-bottom: 12px;\n max-width: 100%;\n word-break: break-word;\n animation: csk-msg-in 0.28s cubic-bezier(0.22, 1, 0.36, 1);\n}\n.csk-msg--user {\n flex-direction: row-reverse;\n align-items: flex-end;\n}\n.csk-msg--ai {\n flex-direction: row;\n align-items: flex-start;\n}\n.csk-msg__avatar {\n width: 30px;\n height: 30px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin: 0 8px;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-msg__avatar svg { width: 18px; height: 18px; }\n.csk-msg__avatar--ai {\n background: #fff;\n color: var(--csk-primary);\n border: 1px solid var(--csk-border);\n}\n.csk-msg__avatar--user {\n background: var(--csk-bg-user);\n color: #fff;\n}\n.csk-msg__content {\n display: flex;\n flex-direction: column;\n min-width: 0;\n max-width: calc(100% - 46px);\n}\n.csk-msg--user .csk-msg__content { align-items: flex-end; }\n.csk-msg--ai .csk-msg__content { align-items: flex-start; }\n.csk-msg__bubble {\n padding: 10px 14px;\n border-radius: 16px;\n font-size: 14px;\n line-height: 1.6;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-msg--user .csk-msg__bubble {\n background: var(--csk-bg-user);\n color: var(--csk-text-user);\n border-radius: 16px 16px 4px 16px;\n}\n.csk-msg--ai .csk-msg__bubble {\n background: var(--csk-bg-ai);\n color: var(--csk-text-ai);\n border-radius: 16px 16px 16px 4px;\n border: 1px solid var(--csk-border);\n}\n.csk-msg__time {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 3px;\n padding: 0 4px;\n}\n\n/* 元信息行:时间戳居左,操作按钮居右,共用一行 */\n.csk-msg__meta {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 3px;\n width: 100%;\n}\n.csk-msg__meta .csk-msg__time { margin-top: 0; }\n\n@keyframes csk-msg-in {\n from { opacity: 0; transform: translateY(8px); }\n to { opacity: 1; transform: translateY(0); }\n}\n@keyframes csk-fade-in {\n from { opacity: 0; }\n to { opacity: 1; }\n}\n\n/* ========== Loading 动画 ========== */\n.csk-loading {\n display: flex;\n align-items: center;\n margin-bottom: 12px;\n animation: csk-msg-in 0.28s ease;\n}\n.csk-loading__avatar {\n width: 30px;\n height: 30px;\n border-radius: 50%;\n background: #fff;\n color: var(--csk-primary);\n border: 1px solid var(--csk-border);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin: 0 8px;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-loading__avatar svg { width: 18px; height: 18px; }\n.csk-loading__bubble {\n background: #fff;\n border: 1px solid var(--csk-border);\n border-radius: 16px 16px 16px 4px;\n padding: 12px 16px;\n display: flex;\n align-items: center;\n gap: 5px;\n}\n.csk-loading__dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n background: #B4B9C2;\n animation: csk-bounce 1.4s ease-in-out infinite both;\n}\n.csk-loading__dot:nth-child(1) { animation-delay: 0s; }\n.csk-loading__dot:nth-child(2) { animation-delay: 0.16s; }\n.csk-loading__dot:nth-child(3) { animation-delay: 0.32s; }\n\n@keyframes csk-bounce {\n 0%, 80%, 100% { transform: scale(0.6); opacity: 0.6; }\n 40% { transform: scale(1); opacity: 1; }\n}\n\n/* ========== 输入区 ========== */\n.csk-input-area {\n padding: 10px 12px 14px;\n background: #fff;\n border-top: 1px solid var(--csk-border);\n flex-shrink: 0;\n}\n.csk-input-wrap {\n display: flex;\n align-items: flex-end;\n gap: 8px;\n background: var(--csk-bg-app);\n border: 1px solid var(--csk-border);\n border-radius: 14px;\n padding: 6px 6px 6px 14px;\n transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;\n}\n.csk-input-wrap--focus {\n border-color: var(--csk-primary);\n background: #fff;\n box-shadow: 0 0 0 3px rgba(var(--csk-primary-rgb), 0.12);\n}\n.csk-input {\n flex: 1;\n border: none;\n background: transparent;\n padding: 8px 0;\n font-size: 14px;\n outline: none;\n font-family: inherit;\n resize: none;\n min-height: 22px;\n max-height: 120px;\n line-height: 1.5;\n color: #1F2937;\n}\n.csk-input::placeholder { color: #9CA3AF; }\n.csk-root .csk-input:focus-visible { outline: none; }\n.csk-send-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 36px;\n height: 36px;\n min-width: 36px;\n border: none;\n border-radius: 10px;\n background: var(--csk-bg-user);\n color: #fff;\n cursor: pointer;\n transition: transform 0.18s, box-shadow 0.18s, opacity 0.18s;\n box-shadow: 0 3px 10px rgba(var(--csk-primary-rgb), 0.3);\n}\n.csk-send-btn:hover:not(:disabled) {\n transform: translateY(-1px);\n box-shadow: 0 5px 14px rgba(var(--csk-primary-rgb), 0.4);\n}\n.csk-send-btn:active:not(:disabled) { transform: scale(0.92); }\n.csk-send-btn:disabled {\n background: #D1D5DB;\n box-shadow: none;\n cursor: not-allowed;\n opacity: 0.7;\n}\n.csk-send-btn svg { width: 18px; height: 18px; }\n\n/* ========== 保密声明脚注 ========== */\n.csk-disclaimer {\n margin-top: 8px;\n padding: 6px 8px 4px;\n font-size: 10px;\n color: #9CA3AF;\n line-height: 1.5;\n user-select: none;\n}\n.csk-disclaimer__title {\n font-weight: 600;\n margin-bottom: 2px;\n color: #9CA3AF;\n}\n.csk-dark .csk-disclaimer { color: #6B7280; }\n.csk-dark .csk-disclaimer__title { color: #6B7280; }\n\n/* ========== 新对话按钮 ========== */\n.csk-clear-btn {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 5px 12px;\n border: 1px solid var(--csk-border);\n border-radius: 999px;\n background: #fff;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n margin: 0 auto 8px;\n transition: all 0.15s;\n font-family: inherit;\n}\n.csk-clear-btn:hover {\n background: #FEF2F2;\n border-color: #FCA5A5;\n color: #DC2626;\n}\n\n/* ========== P1: 知识库分类下拉 ========== */\n.csk-category-bar {\n display: flex;\n align-items: center;\n padding: 8px 12px;\n border-top: 1px solid var(--csk-border);\n background: #FBFBFC;\n gap: 8px;\n flex-shrink: 0;\n}\n.csk-category-bar__label {\n font-size: 13px;\n white-space: nowrap;\n}\n.csk-category-select {\n flex: 1;\n padding: 6px 28px 6px 10px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n font-size: 12.5px;\n color: #374151;\n background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 9px center;\n appearance: none;\n -webkit-appearance: none;\n outline: none;\n cursor: pointer;\n font-family: inherit;\n transition: border-color 0.2s, box-shadow 0.2s;\n max-width: 220px;\n}\n.csk-category-select:focus {\n border-color: var(--csk-primary);\n box-shadow: 0 0 0 3px rgba(var(--csk-primary-rgb), 0.12);\n}\n\n/* ========== P1: RAG 引用来源卡片 ========== */\n.csk-sources {\n margin-top: 6px;\n border: 1px solid var(--csk-border);\n border-radius: 12px;\n overflow: hidden;\n font-size: 12px;\n max-width: 100%;\n background: #FAFBFC;\n}\n.csk-sources__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 6px 10px;\n background: #F3F4F7;\n cursor: pointer;\n user-select: none;\n transition: background 0.15s;\n}\n.csk-sources__header:hover { background: #ECEEF2; }\n.csk-sources__title {\n display: flex;\n align-items: center;\n gap: 5px;\n font-weight: 500;\n color: #374151;\n}\n.csk-sources__arrow {\n transition: transform 0.2s;\n color: #9CA3AF;\n font-size: 10px;\n}\n.csk-sources--collapsed .csk-sources__arrow { transform: rotate(-90deg); }\n.csk-sources__body {\n border-top: 1px solid var(--csk-border);\n padding: 0;\n}\n.csk-sources--collapsed .csk-sources__body { display: none; }\n.csk-source-item {\n padding: 6px 10px;\n border-bottom: 1px solid #F0F1F4;\n transition: background 0.15s;\n}\n.csk-source-item:last-child { border-bottom: none; }\n.csk-source-item:hover { background: #fff; }\n.csk-source-item__name {\n font-weight: 500;\n color: #1F2937;\n margin-bottom: 2px;\n}\n.csk-source-item__snippet {\n color: #6B7280;\n line-height: 1.5;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n.csk-source-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n\n/* ========== P1: Markdown 渲染样式 ========== */\n.csk-msg--ai .csk-msg__bubble .csk-md-p { margin: 0 0 8px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-p:last-child { margin-bottom: 0; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h1,\n.csk-msg--ai .csk-msg__bubble .csk-md-h2,\n.csk-msg--ai .csk-msg__bubble .csk-md-h3,\n.csk-msg--ai .csk-msg__bubble .csk-md-h4,\n.csk-msg--ai .csk-msg__bubble .csk-md-h5,\n.csk-msg--ai .csk-msg__bubble .csk-md-h6 {\n margin: 14px 0 6px;\n font-weight: 600;\n line-height: 1.3;\n color: #111827;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1 { font-size: 20px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h2 { font-size: 17px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h3 { font-size: 15px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h4 { font-size: 14px; }\n\n.csk-md-code-block {\n position: relative;\n background: #1E293B;\n color: #E2E8F0;\n padding: 12px 14px;\n border-radius: 10px;\n overflow-x: auto;\n margin: 8px 0;\n font-size: 13px;\n line-height: 1.55;\n font-family: 'SF Mono', 'Consolas', 'Menlo', 'Monaco', monospace;\n}\n.csk-md-code-block code {\n background: none;\n padding: 0;\n border-radius: 0;\n font-size: inherit;\n color: inherit;\n}\n.csk-md-inline-code {\n background: rgba(var(--csk-primary-rgb), 0.1);\n color: var(--csk-primary);\n padding: 1px 6px;\n border-radius: 5px;\n font-size: 13px;\n font-family: 'SF Mono', 'Consolas', 'Menlo', 'Monaco', monospace;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol {\n padding-left: 22px;\n margin: 6px 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul li,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol li { margin-bottom: 4px; }\n.csk-md-blockquote {\n border-left: 3px solid var(--csk-primary);\n padding: 2px 12px;\n margin: 8px 0;\n color: #6B7280;\n background: rgba(var(--csk-primary-rgb), 0.05);\n border-radius: 0 6px 6px 0;\n}\n.csk-md-link {\n color: var(--csk-primary);\n text-decoration: none;\n border-bottom: 1px solid rgba(var(--csk-primary-rgb), 0.3);\n transition: border-color 0.15s;\n}\n.csk-md-link:hover { border-bottom-color: var(--csk-primary); }\n.csk-md-hr {\n border: none;\n border-top: 1px solid var(--csk-border);\n margin: 12px 0;\n}\n.csk-md-table-wrap {\n max-width: 100%;\n overflow-x: auto;\n margin: 10px 0;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n}\n.csk-md-table {\n width: 100%;\n min-width: 360px;\n border-collapse: collapse;\n font-size: 12.5px;\n line-height: 1.5;\n}\n.csk-md-table th,\n.csk-md-table td {\n padding: 7px 9px;\n border-right: 1px solid var(--csk-border);\n border-bottom: 1px solid var(--csk-border);\n text-align: left;\n vertical-align: top;\n}\n.csk-md-table th:last-child,\n.csk-md-table td:last-child { border-right: none; }\n.csk-md-table tbody tr:last-child td { border-bottom: none; }\n.csk-md-table th {\n background: rgba(var(--csk-primary-rgb), 0.07);\n color: #374151;\n font-weight: 600;\n}\n.csk-md-table tbody tr:nth-child(even) {\n background: rgba(148, 163, 184, 0.06);\n}\n.csk-md-table .csk-md-align-left { text-align: left; }\n.csk-md-table .csk-md-align-center { text-align: center; }\n.csk-md-table .csk-md-align-right { text-align: right; }\n\n/* ========== P2: 会话管理面板 ========== */\n.csk-history-panel {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: #fff;\n z-index: 10;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n animation: csk-slide-in 0.24s ease;\n}\n.csk-history-panel--hidden { display: none; }\n@keyframes csk-slide-in {\n from { transform: translateX(100%); opacity: 0.4; }\n to { transform: translateX(0); opacity: 1; }\n}\n.csk-history-panel__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 14px 16px;\n border-bottom: 1px solid var(--csk-border);\n background: var(--csk-bg-app);\n flex-shrink: 0;\n}\n.csk-history-panel__title {\n font-size: 14px;\n font-weight: 600;\n color: #1F2937;\n}\n.csk-history-panel__back {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 5px 12px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n background: #fff;\n color: #374151;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s;\n font-family: inherit;\n}\n.csk-history-panel__back:hover { background: #F3F4F6; }\n.csk-history-panel__list {\n flex: 1;\n overflow-y: auto;\n padding: 10px;\n}\n.csk-history-panel__list::-webkit-scrollbar { width: 5px; }\n.csk-history-panel__list::-webkit-scrollbar-thumb { background: #E5E7EB; border-radius: 2px; }\n.csk-history-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 11px 12px;\n border-radius: 10px;\n cursor: pointer;\n transition: background 0.15s;\n margin-bottom: 5px;\n border: 1px solid transparent;\n}\n.csk-history-item:hover { background: #F3F4F6; }\n.csk-history-item--active {\n background: rgba(var(--csk-primary-rgb), 0.08);\n border-color: rgba(var(--csk-primary-rgb), 0.2);\n}\n.csk-history-item--active:hover { background: rgba(var(--csk-primary-rgb), 0.12); }\n.csk-history-item__info { flex: 1; min-width: 0; }\n.csk-history-item__id {\n font-size: 13px;\n font-weight: 500;\n color: #1F2937;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-history-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 3px;\n}\n.csk-history-item__actions {\n display: flex;\n gap: 4px;\n margin-left: 8px;\n opacity: 0;\n transition: opacity 0.15s;\n}\n.csk-history-item:hover .csk-history-item__actions { opacity: 1; }\n.csk-history-action {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: none;\n border-radius: 7px;\n cursor: pointer;\n font-size: 12px;\n transition: all 0.15s;\n}\n.csk-history-action--export { background: #EFF6FF; color: #2563EB; }\n.csk-history-action--export:hover { background: #DBEAFE; }\n.csk-history-action--delete { background: #FEF2F2; color: #DC2626; }\n.csk-history-action--delete:hover { background: #FEE2E2; }\n.csk-history-panel__empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 48px 20px;\n color: #9CA3AF;\n font-size: 13px;\n text-align: center;\n}\n.csk-history-panel__empty-icon {\n font-size: 34px;\n margin-bottom: 10px;\n opacity: 0.5;\n}\n.csk-history-panel__loading {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n color: #9CA3AF;\n font-size: 13px;\n}\n\n/* ========== 快捷问题芯片 ========== */\n.csk-quick-replies {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n justify-content: center;\n margin-top: 18px;\n max-width: 320px;\n}\n.csk-quick-reply {\n border: 1px solid var(--csk-border);\n background: #fff;\n color: #374151;\n font-size: 12.5px;\n padding: 7px 13px;\n border-radius: 999px;\n cursor: pointer;\n font-family: inherit;\n line-height: 1.3;\n transition: all 0.18s ease;\n max-width: 100%;\n}\n.csk-quick-reply:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.06);\n transform: translateY(-1px);\n}\n.csk-quick-reply:active { transform: scale(0.96); }\n\n/* ========== 推荐问题(suggest-message-list) ========== */\n.csk-suggestions {\n margin-top: 6px;\n padding: 4px 0 0 0;\n}\n.csk-suggestions__list {\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n}\n.csk-suggestion-item {\n border: 1px solid var(--csk-border);\n background: #fff;\n color: #374151;\n font-size: 12px;\n padding: 4px 10px;\n border-radius: 999px;\n cursor: pointer;\n font-family: inherit;\n line-height: 1.3;\n transition: all 0.18s ease;\n max-width: 100%;\n text-align: left;\n}\n.csk-suggestion-item:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.06);\n transform: translateY(-1px);\n}\n.csk-suggestion-item:active { transform: scale(0.96); }\n\n/* ========== AI 消息操作条 ========== */\n.csk-msg__actions {\n display: flex;\n gap: 2px;\n padding: 0 2px;\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n.csk-msg--ai:hover .csk-msg__actions { opacity: 1; }\n.csk-msg--streaming .csk-msg__actions { display: none; }\n.csk-action-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: transparent;\n color: #9CA3AF;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.csk-action-btn:hover {\n background: #F3F4F6;\n color: #374151;\n}\n.csk-action-btn--done { color: #10B981; }\n.csk-action-btn:active { transform: scale(0.9); }\n\n/* ========== 流式打字光标 ========== */\n.csk-caret {\n display: inline-block;\n width: 7px;\n height: 15px;\n margin-left: 2px;\n vertical-align: text-bottom;\n background: var(--csk-primary);\n border-radius: 1px;\n animation: csk-caret-blink 1s step-end infinite;\n}\n@keyframes csk-caret-blink {\n 0%, 50% { opacity: 1; }\n 51%, 100% { opacity: 0; }\n}\n\n/* ========== 代码块复制按钮 ========== */\n.csk-md-code-copy {\n position: absolute;\n top: 8px;\n right: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: rgba(255, 255, 255, 0.12);\n color: #CBD5E1;\n border-radius: 6px;\n cursor: pointer;\n opacity: 0;\n transition: all 0.15s ease;\n}\n.csk-md-code-block:hover .csk-md-code-copy { opacity: 1; }\n.csk-md-code-copy:hover { background: rgba(255, 255, 255, 0.22); color: #fff; }\n.csk-md-code-copy:active { transform: scale(0.9); }\n\n/* ========== 新消息提示按钮 ========== */\n.csk-newmsg {\n position: absolute;\n bottom: 82px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 5;\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 7px 14px;\n border: none;\n background: var(--csk-primary);\n color: #fff;\n font-size: 12px;\n font-family: inherit;\n border-radius: 999px;\n cursor: pointer;\n box-shadow: 0 4px 14px rgba(var(--csk-primary-rgb), 0.38);\n transition: transform 0.2s ease, box-shadow 0.2s ease;\n animation: csk-msg-in 0.25s ease;\n white-space: nowrap;\n}\n.csk-newmsg:hover { transform: translateX(-50%) translateY(-1px); box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.48); }\n.csk-newmsg:active { transform: translateX(-50%) scale(0.95); }\n.csk-newmsg--hidden { display: none; }\n\n/* ========== 发送按钮停止态 ========== */\n.csk-send-btn--stop {\n background: #EF4444 !important;\n box-shadow: 0 3px 10px rgba(239, 68, 68, 0.35) !important;\n}\n.csk-send-btn--stop:hover:not(:disabled) {\n box-shadow: 0 5px 14px rgba(239, 68, 68, 0.45) !important;\n}\n\n/* ========== 窗口缩放拖拽手柄 ========== */\n.csk-resize-handle {\n position: absolute;\n right: 4px;\n bottom: 4px;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: flex-end;\n justify-content: flex-end;\n cursor: nwse-resize;\n z-index: 5;\n user-select: none;\n -webkit-user-select: none;\n /* 圆形半透明背景,与整体圆润风格一致 */\n border-radius: 50%;\n background: transparent;\n transition: background 0.2s ease;\n}\n.csk-resize-handle:hover {\n background: rgba(var(--csk-primary-rgb), 0.08);\n}\n\n/* 三斜线抓手 — 纯 CSS 绘制,用两条间距微调的线,视觉上是三条 */\n.csk-resize-grip {\n display: block;\n width: 10px;\n height: 10px;\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n #C8CCD2 38%, #C8CCD2 42%,\n transparent 42%, transparent 54%,\n #C8CCD2 54%, #C8CCD2 58%,\n transparent 58%, transparent 70%,\n #C8CCD2 70%, #C8CCD2 74%,\n transparent 74%\n );\n transition: background 0.2s ease;\n border-radius: 2px;\n}\n/* hover 时线条变为主色 */\n.csk-resize-handle:hover .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n var(--csk-primary) 38%, var(--csk-primary) 42%,\n transparent 42%, transparent 54%,\n var(--csk-primary) 54%, var(--csk-primary) 58%,\n transparent 58%, transparent 70%,\n var(--csk-primary) 70%, var(--csk-primary) 74%,\n transparent 74%\n );\n}\n\n/* 暗色模式 */\n.csk-dark .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n #5B6070 38%, #5B6070 42%,\n transparent 42%, transparent 54%,\n #5B6070 54%, #5B6070 58%,\n transparent 58%, transparent 70%,\n #5B6070 70%, #5B6070 74%,\n transparent 74%\n );\n}\n.csk-dark .csk-resize-handle:hover .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n var(--csk-primary-light) 38%, var(--csk-primary-light) 42%,\n transparent 42%, transparent 54%,\n var(--csk-primary-light) 54%, var(--csk-primary-light) 58%,\n transparent 58%, transparent 70%,\n var(--csk-primary-light) 70%, var(--csk-primary-light) 74%,\n transparent 74%\n );\n}\n\n/* 缩放拖拽中:禁用过渡动画 + 全局光标 */\n.csk-window--resizing {\n transition: none !important;\n user-select: none;\n}\n.csk-window--resizing * { cursor: nwse-resize !important; }\n\n/* ========== 暗色模式 ========== */\n.csk-root.csk-dark {\n --csk-bg-ai: #1E1E2E;\n --csk-text-ai: #E2E8F0;\n --csk-border: #3B3B52;\n --csk-bg-app: #141421;\n color: #E2E8F0;\n}\n.csk-dark .csk-window {\n background: #1A1A2E;\n box-shadow: 0 12px 48px rgba(0, 0, 0, 0.4), 0 2px 8px rgba(0, 0, 0, 0.2);\n}\n.csk-dark .csk-watermark {\n opacity: 1;\n}\n.csk-dark .csk-header::after { background: linear-gradient(to bottom, rgba(0,0,0,0.12), transparent); }\n.csk-dark .csk-msg__avatar--ai {\n background: var(--csk-bg-ai);\n color: var(--csk-primary);\n border-color: var(--csk-border);\n}\n.csk-dark .csk-input-area { background: #1A1A2E; border-top-color: var(--csk-border); }\n.csk-dark .csk-input-wrap { background: var(--csk-bg-app); border-color: var(--csk-border); }\n.csk-dark .csk-input-wrap--focus { background: #1A1A2E; border-color: var(--csk-primary); }\n.csk-dark .csk-input { color: #E2E8F0; }\n.csk-dark .csk-loading__avatar { background: var(--csk-bg-ai); border-color: var(--csk-border); }\n.csk-dark .csk-loading__bubble { background: var(--csk-bg-ai); border-color: var(--csk-border); }\n.csk-dark .csk-loading__dot { background: #6B7280; }\n.csk-dark .csk-category-bar { background: #1A1A2E; border-top-color: var(--csk-border); }\n.csk-dark .csk-category-select { background-color: var(--csk-bg-app); border-color: var(--csk-border); color: #E2E8F0; }\n.csk-dark .csk-sources { background: #1E1E2E; border-color: var(--csk-border); }\n.csk-dark .csk-sources__header { background: #25253A; }\n.csk-dark .csk-sources__header:hover { background: #2D2D48; }\n.csk-dark .csk-source-item:hover { background: var(--csk-bg-ai); }\n.csk-dark .csk-source-item__name { color: #E2E8F0; }\n.csk-dark .csk-source-item__meta { color: #6B7280; }\n.csk-dark .csk-history-panel { background: #1A1A2E; }\n.csk-dark .csk-history-panel__header { background: var(--csk-bg-app); border-bottom-color: var(--csk-border); }\n.csk-dark .csk-history-panel__back { background: var(--csk-bg-app); border-color: var(--csk-border); color: #E2E8F0; }\n.csk-dark .csk-history-panel__back:hover { background: #2D2D48; }\n.csk-dark .csk-history-item:hover { background: #25253A; }\n.csk-dark .csk-history-item__id { color: #E2E8F0; }\n.csk-dark .csk-history-item__meta { color: #6B7280; }\n.csk-dark .csk-history-item--active { background: rgba(var(--csk-primary-rgb), 0.15); }\n.csk-dark .csk-history-item--active:hover { background: rgba(var(--csk-primary-rgb), 0.22); }\n.csk-dark .csk-action-btn:hover { background: #2D2D48; color: #E2E8F0; }\n.csk-dark .csk-clear-btn { background: var(--csk-bg-app); border-color: var(--csk-border); color: #9CA3AF; }\n.csk-dark .csk-clear-btn:hover { background: #3B1A1A; border-color: #7F1D1D; color: #FCA5A5; }\n.csk-dark .csk-md-code-block { background: #0F0F1A; }\n.csk-dark .csk-md-blockquote { background: rgba(var(--csk-primary-rgb), 0.08); }\n.csk-dark .csk-md-link { color: var(--csk-primary-light); }\n.csk-dark .csk-md-table th { background: rgba(var(--csk-primary-rgb), 0.14); color: #E2E8F0; }\n.csk-dark .csk-md-table tbody tr:nth-child(even) { background: rgba(148, 163, 184, 0.05); }\n.csk-dark .csk-msg--ai .csk-msg__bubble { background: var(--csk-bg-ai); color: var(--csk-text-ai); border-color: var(--csk-border); }\n.csk-dark .csk-welcome__title { color: #E2E8F0; }\n.csk-dark .csk-welcome__desc { color: #6B7280; }\n.csk-dark .csk-quick-reply { background: var(--csk-bg-app); border-color: var(--csk-border); color: #CBD5E1; }\n.csk-dark .csk-quick-reply:hover { background: rgba(var(--csk-primary-rgb), 0.12); border-color: var(--csk-primary); color: var(--csk-primary-light); }\n.csk-dark .csk-suggestion-item { background: var(--csk-bg-app); border-color: var(--csk-border); color: #CBD5E1; }\n.csk-dark .csk-suggestion-item:hover { background: rgba(var(--csk-primary-rgb), 0.12); border-color: var(--csk-primary); color: var(--csk-primary-light); }\n.csk-dark .csk-teaser { background: #2D2D48; color: #E2E8F0; box-shadow: 0 4px 20px rgba(0,0,0,0.35); }\n.csk-dark .csk-teaser::after { border-top-color: #2D2D48; }\n.csk-dark .csk-teaser__close { color: #6B7280; }\n.csk-dark .csk-teaser__close:hover { color: #9CA3AF; }\n.csk-dark .csk-feedback-btn { background: rgba(var(--csk-primary-rgb), 0.1); color: #9CA3AF; }\n.csk-dark .csk-feedback-btn:hover { background: rgba(var(--csk-primary-rgb), 0.2); color: var(--csk-primary-light); }\n.csk-dark .csk-feedback-btn--active { background: rgba(var(--csk-primary-rgb), 0.28); color: var(--csk-primary-light); }\n.csk-dark .csk-history-panel__search-wrap { background: var(--csk-bg-app); border-color: var(--csk-border); }\n.csk-dark .csk-history-panel__search-wrap:focus-within { border-color: var(--csk-primary); }\n.csk-dark .csk-history-panel__search { color: #E2E8F0; }\n.csk-dark .csk-launcher__badge { box-shadow: 0 0 0 2px #1A1A2E; }\n.csk-dark .csk-welcome__avatar { box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.25); }\n.csk-dark .csk-header__avatar { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.15); background: rgba(255, 255, 255, 0.1); }\n.csk-dark .csk-role-select option {\n background: #1A1A2E;\n color: #E2E8F0;\n}\n\n/* Launcher 拖拽态:微放大 + 阴影加深 */\n.csk-launcher--dragging {\n cursor: grabbing !important;\n transform: scale(1.1) !important;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.14),\n 0 12px 32px rgba(0, 0, 0, 0.18),\n 0 14px 40px rgba(236, 72, 153, 0.36),\n 0 0 56px rgba(236, 72, 153, 0.18) !important;\n}\n/* 拖拽中隐藏未读徽章 */\n.csk-launcher--dragging .csk-launcher__badge { display: none !important; }\n/* 吸附过渡动画(释放时的缓动) */\n.csk-launcher--snap {\n transition: left 0.3s ease-out, right 0.3s ease-out, bottom 0.3s ease-out !important;\n}\n\n/* ========== Launcher 未读徽章 ========== */\n.csk-launcher__badge {\n position: absolute;\n top: -2px;\n right: -2px;\n width: 16px;\n height: 16px;\n border-radius: 50%;\n background: #EF4444;\n border: 2px solid #fff;\n box-shadow: 0 0 0 2px #fff;\n animation: csk-badge-in 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);\n pointer-events: none;\n}\n.csk-launcher__badge--hidden { display: none; }\n@keyframes csk-badge-in {\n from { transform: scale(0); }\n to { transform: scale(1); }\n}\n\n/* ========== Launcher 提示气泡 ========== */\n.csk-teaser {\n position: fixed;\n bottom: 90px;\n z-index: 9997;\n max-width: 240px;\n padding: 10px 14px;\n background: #fff;\n color: #1F2937;\n font-size: 13px;\n line-height: 1.5;\n border-radius: 12px;\n box-shadow: 0 4px 20px rgba(15, 23, 42, 0.15);\n animation: csk-teaser-in 0.35s cubic-bezier(0.22, 1, 0.36, 1);\n cursor: pointer;\n user-select: none;\n}\n.csk-teaser--right { right: 24px; }\n.csk-teaser--left { left: 24px; }\n.csk-teaser::after {\n content: '';\n position: absolute;\n bottom: -6px;\n right: 28px;\n width: 12px;\n height: 12px;\n background: inherit;\n border-radius: 2px;\n transform: rotate(45deg);\n box-shadow: 2px 2px 4px rgba(15, 23, 42, 0.08);\n}\n.csk-teaser--left::after { right: auto; left: 28px; }\n.csk-teaser__close {\n position: absolute;\n top: 4px;\n right: 6px;\n background: none;\n border: none;\n font-size: 16px;\n color: #9CA3AF;\n cursor: pointer;\n padding: 2px 4px;\n line-height: 1;\n border-radius: 4px;\n}\n.csk-teaser__close:hover { color: #374151; }\n.csk-teaser--hidden { display: none; }\n@keyframes csk-teaser-in {\n from { opacity: 0; transform: translateY(8px) scale(0.95); }\n to { opacity: 1; transform: translateY(0) scale(1); }\n}\n\n/* ========== 消息反馈按钮(👍 / 👎) ========== */\n.csk-feedback-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: rgba(var(--csk-primary-rgb), 0.08);\n color: #9CA3AF;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n padding: 0;\n}\n.csk-feedback-btn:hover { background: rgba(var(--csk-primary-rgb), 0.18); color: var(--csk-primary); }\n.csk-feedback-btn--active {\n background: rgba(var(--csk-primary-rgb), 0.28);\n color: var(--csk-primary);\n}\n.csk-feedback-btn--active.down { background: #FEF2F2; color: #EF4444; }\n.csk-feedback-btn:active { transform: scale(0.9); }\n.csk-msg--streaming .csk-feedback-btn { display: none; }\n\n/* ========== 点踩原因选择面板 ========== */\n.csk-feedback-reason {\n position: relative;\n margin-top: 6px;\n padding: 10px 12px;\n background: var(--csk-bg);\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n animation: cskFadeIn 0.15s ease;\n}\n.csk-feedback-reason__title {\n font-size: 12px;\n color: var(--csk-text-muted);\n margin-bottom: 8px;\n}\n.csk-feedback-reason__options {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-bottom: 8px;\n}\n.csk-feedback-reason__btn {\n padding: 4px 10px;\n font-size: 12px;\n border: 1px solid var(--csk-border);\n border-radius: 14px;\n background: var(--csk-bg);\n color: var(--csk-text);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.csk-feedback-reason__btn:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.08);\n}\n.csk-feedback-reason__comment-row {\n display: flex;\n gap: 6px;\n}\n.csk-feedback-reason__comment {\n flex: 1;\n padding: 4px 8px;\n font-size: 12px;\n border: 1px solid var(--csk-border);\n border-radius: 6px;\n background: var(--csk-bg);\n color: var(--csk-text);\n outline: none;\n}\n.csk-feedback-reason__comment:focus { border-color: var(--csk-primary); }\n.csk-feedback-reason__submit {\n padding: 4px 10px;\n font-size: 12px;\n border: none;\n border-radius: 6px;\n background: var(--csk-primary);\n color: #fff;\n cursor: pointer;\n white-space: nowrap;\n}\n.csk-feedback-reason__close {\n position: absolute;\n top: 8px;\n right: 8px;\n width: 18px;\n height: 18px;\n border: none;\n background: none;\n color: var(--csk-text-muted);\n cursor: pointer;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n}\n.csk-feedback-reason__close:hover { color: var(--csk-text); background: var(--csk-hover); }\n.csk-dark .csk-feedback-reason { background: var(--csk-bg); border-color: var(--csk-border); }\n.csk-dark .csk-feedback-reason__btn {\n background: rgba(255,255,255,0.06);\n border-color: var(--csk-border);\n color: var(--csk-text);\n}\n.csk-dark .csk-feedback-reason__btn:hover {\n border-color: var(--csk-primary-light);\n color: var(--csk-primary-light);\n background: rgba(var(--csk-primary-rgb), 0.15);\n}\n.csk-dark .csk-feedback-reason__comment {\n background: rgba(255,255,255,0.06);\n border-color: var(--csk-border);\n color: var(--csk-text);\n}\n\n/* ========== 历史会话搜索框 ========== */\n.csk-history-panel__search-wrap {\n padding: 8px 10px;\n border-bottom: 1px solid var(--csk-border);\n flex-shrink: 0;\n}\n.csk-history-panel__search-wrap:focus-within {\n border-bottom-color: var(--csk-primary);\n}\n.csk-history-panel__search {\n width: 100%;\n padding: 7px 10px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n font-size: 12.5px;\n font-family: inherit;\n color: #1F2937;\n background: var(--csk-bg-app);\n outline: none;\n transition: border-color 0.2s;\n}\n.csk-history-panel__search:focus { border-color: var(--csk-primary); }\n.csk-history-panel__search::placeholder { color: #9CA3AF; }\n\n/* ========== a11y 焦点指示 ========== */\n.csk-root :focus-visible {\n outline: 2px solid var(--csk-primary);\n outline-offset: 2px;\n}\n.csk-root button:focus-visible {\n outline: 2px solid var(--csk-primary);\n outline-offset: 2px;\n border-radius: inherit;\n}\n/* 弹窗打开时隐藏 launcher 上的焦点环 */\n.csk-launcher:focus-visible {\n outline: none;\n border-color: rgba(255, 255, 255, 0.75);\n box-shadow:\n 0 1px 2px rgba(0, 0, 0, 0.06),\n 0 4px 16px rgba(0, 0, 0, 0.10),\n 0 6px 24px rgba(var(--csk-primary-rgb), 0.28),\n 0 0 48px rgba(var(--csk-primary-rgb), 0.12),\n 0 0 0 4px rgba(var(--csk-primary-rgb), 0.3);\n}\n\n/* ========== a11y aria-live 播报区(视觉隐藏) ========== */\n.csk-sr-only {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0,0,0,0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n\n/* ========== 会话分组标题 ========== */\n.csk-history-group {\n margin-bottom: 4px;\n}\n.csk-history-group__label {\n font-size: 11px;\n font-weight: 600;\n color: #9CA3AF;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n padding: 8px 12px 4px;\n user-select: none;\n}\n.csk-dark .csk-history-group__label { color: #6B7280; }\n\n/* ========== 移动端适配 ========== */\n@media (max-width: 480px) {\n .csk-window {\n width: 100vw !important;\n height: 100vh !important;\n max-height: 100vh;\n bottom: 0 !important;\n right: 0 !important;\n left: 0 !important;\n border-radius: 0;\n }\n .csk-resize-handle { display: none !important; }\n .csk-window--hidden { transform: translateY(100%); }\n /* 移动端默认位置,仅在未被 JS 拖拽覆盖时生效 */\n .csk-launcher:not([style*="bottom"]) { bottom: 20px; }\n .csk-launcher--right:not([style*="bottom"]) { right: 20px; }\n .csk-launcher--left:not([style*="bottom"]) { left: 20px; }\n}\n`}(e),document.head.appendChild(S))}function M(){return"undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const n=16*Math.random()|0;return("x"===e?n:3&n|8).toString(16)})}function F(e){const n={"&":"&","<":"<",">":">",'"':""","'":"'"};return e.replace(/[&<>"']/g,e=>n[e]||e)}function z(e){const n=new Date(e);return`${String(n.getHours()).padStart(2,"0")}:${String(n.getMinutes()).padStart(2,"0")}`}function D(){return Date.now()}const T='';function B(e,n){const t=document.createElement("div");t.id="csk-launcher",t.className="csk-launcher csk-launcher--"+("left-bottom"===e.position?"left":"right"),t.setAttribute("title",e.title),t.setAttribute("aria-label",e.title),t.setAttribute("role","button"),t.setAttribute("tabindex","0"),t.innerHTML=e.launcherIcon;const r=document.createElement("div");r.className="csk-launcher__badge csk-launcher__badge--hidden",t.appendChild(r);const s=function(e,n){let t=null;return function(...r){null!==t&&clearTimeout(t),t=setTimeout(()=>{e.apply(this,r),t=null},n)}}(n,300);return t.addEventListener("click",s),t.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),s())}),t}function q(e){const n=document.createElement("div");if(n.id="csk-window",n.className=`csk-root csk-window csk-window--${"left-bottom"===e.position?"left":"right"} csk-window--hidden${"dark"===e.theme?" csk-dark":""}`,n.setAttribute("role","dialog"),n.setAttribute("aria-label",e.title),n.setAttribute("aria-modal","false"),e.watermark){const t=document.createElement("div");t.className="csk-watermark";const r=function(e){const n=document.createElement("canvas"),t=n.getContext("2d");if(!t)return"";const r=new Date,s=`${r.getFullYear()}-${String(r.getMonth()+1).padStart(2,"0")}-${String(r.getDate()).padStart(2,"0")} ${String(r.getHours()).padStart(2,"0")}:${String(r.getMinutes()).padStart(2,"0")}`,o=e.watermark?`${e.watermark} ${s}`:s;n.width=280,n.height=160;const a="dark"===e.theme;return t.fillStyle=a?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.06)",t.font='13px -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif',t.textAlign="center",t.textBaseline="middle",t.save(),t.translate(140,80),t.rotate(-22*Math.PI/180),t.fillText(o,0,0),t.restore(),n.toDataURL("image/png")}(e);r&&(t.style.backgroundImage=`url(${r})`),n.appendChild(t)}const t=document.createElement("div");t.className="csk-header";const r=document.createElement("div");r.className="csk-header__left";const s=document.createElement("div");s.className="csk-header__avatar",s.innerHTML=T;const a=document.createElement("div");a.className="csk-header__info";const i=document.createElement("span");i.className="csk-header__title",i.textContent=e.title;const c=document.createElement("span");c.className="csk-header__status",c.innerHTML=`${o("status_online")}`,a.appendChild(i),a.appendChild(c),r.appendChild(s),r.appendChild(a);let l=null;const d=e.roles;if(d&&d.length>1){l=document.createElement("select"),l.className="csk-role-select",l.setAttribute("aria-label",o("role_selector_label"));for(const n of d){const t=document.createElement("option");t.value=String(n.id),t.textContent=n.name||String(n.id),String(n.id)===String(e.integrateId)&&(t.selected=!0),l.appendChild(t)}l.addEventListener("change",()=>{const e=l.value;n.dispatchEvent(new CustomEvent("csk:roleChange",{detail:{roleId:e}}))});const s=document.createElement("div");s.className="csk-role-select-wrap",s.appendChild(l),t.appendChild(r),t.appendChild(s)}else t.appendChild(r);const p=document.createElement("div");p.className="csk-header__actions";const u=document.createElement("button");u.className="csk-history-btn",u.setAttribute("title",o("history_title")),u.innerHTML='';const m=document.createElement("button");m.className="csk-header__btn csk-header__btn--minimize",m.setAttribute("title",o("minimize")),m.innerHTML='',m.addEventListener("click",()=>{n.classList.add("csk-window--hidden")});const k=document.createElement("button");k.className="csk-header__btn csk-header__btn--close",k.setAttribute("title",o("close")),k.innerHTML='',k.addEventListener("click",()=>{n.classList.add("csk-window--hidden")}),p.appendChild(u),p.appendChild(m),p.appendChild(k),t.appendChild(p);const g=document.createElement("div");g.id="csk-messages",g.className="csk-messages";const h=document.createElement("div");if(h.className="csk-welcome",h.innerHTML=`\n
${T}
\n
${o("welcome_title")}
\n
${o("welcome_desc")}
\n `,e.quickReplies.length>0){const t=document.createElement("div");t.className="csk-quick-replies";for(const r of e.quickReplies){const e=document.createElement("button");e.type="button",e.className="csk-quick-reply",e.textContent=r,e.addEventListener("click",()=>{n.dispatchEvent(new CustomEvent("csk:quickReply",{detail:{text:r}}))}),t.appendChild(e)}h.appendChild(t)}g.appendChild(h);const b=document.createElement("button");b.type="button",b.className="csk-newmsg csk-newmsg--hidden",b.innerHTML=`\n \n ${o("new_message")}\n `,n.appendChild(b);const f=document.createElement("div");f.className="csk-history-panel csk-history-panel--hidden",f.innerHTML=`\n
\n ${o("history_title")}\n \n
\n
\n \n
\n
\n `,g.appendChild(f);const y=f.querySelector("#csk-history-back");y&&y.addEventListener("click",()=>{f.classList.add("csk-history-panel--hidden")}),u.addEventListener("click",e=>{e.stopPropagation();const t=f.classList.contains("csk-history-panel--hidden");f.classList.toggle("csk-history-panel--hidden"),t&&n.dispatchEvent(new CustomEvent("csk:loadHistory"))});let v=null;if(e.showCategorySwitch){const e=document.createElement("div");e.className="csk-category-bar";const r=document.createElement("span");r.className="csk-category-bar__label",r.textContent="📚",v=document.createElement("select"),v.id="csk-category-select",v.className="csk-category-select",v.innerHTML=``,v.addEventListener("change",()=>{const e=v.value;n.dispatchEvent(new CustomEvent("csk:categoryChange",{detail:{categoryId:e?Number(e):void 0}}))}),e.appendChild(r),e.appendChild(v),n.appendChild(t),n.appendChild(g),n.appendChild(e)}else n.appendChild(t),n.appendChild(g);const x=document.createElement("div");x.className="csk-input-area";const w=document.createElement("div");w.className="csk-input-wrap";const _=document.createElement("textarea");_.id="csk-input",_.className="csk-input",_.setAttribute("placeholder",o("placeholder")),_.setAttribute("rows","1"),_.setAttribute("autofocus","");const E=document.createElement("button");E.id="csk-send-btn",E.className="csk-send-btn",E.setAttribute("title",o("send")),E.setAttribute("disabled","true"),E.innerHTML='',w.appendChild(_),w.appendChild(E),x.appendChild(w);const C=document.createElement("div");C.className="csk-disclaimer",void 0!==e.disclaimer?(C.innerHTML=e.disclaimer,e.disclaimer||(C.style.display="none")):C.style.display="none",x.appendChild(C),n.appendChild(x);let L=null;e.showClear&&(L=document.createElement("button"),L.className="csk-clear-btn",L.textContent=o("clear"),L.style.display="none",n.insertBefore(L,x));let I=null;const S=document.createElement("div");S.className="csk-sr-only",S.setAttribute("aria-live","polite"),S.setAttribute("aria-atomic","true"),n.appendChild(S);const A=f.querySelector("#csk-history-search"),$=document.createElement("div");$.className=`csk-teaser csk-teaser--${"left-bottom"===e.position?"left":"right"} csk-teaser--hidden`,$.setAttribute("role","status"),$.innerHTML=`\n \n ${e.teaserText||o("teaser_text")}\n `;const N=document.createElement("div");return N.className="csk-resize-handle",N.setAttribute("aria-label",o("resize")),N.innerHTML='',n.appendChild(N),{window:n,messagesContainer:g,inputEl:_,sendBtn:E,clearBtn:L,categorySelect:v,historyPanel:f,welcomeEl:h,newMsgBtn:b,teaserEl:$,resizeHandle:N,searchInput:A,ariaLiveEl:S,roleSelect:l,disclaimer:C,showLoading:function(){if(I)return I.style.display="flex",I;const e=document.createElement("div");return e.className="csk-loading",e.innerHTML=`\n
${T}
\n
\n
\n
\n
\n
\n `,g.appendChild(e),I=e,e},hideLoading:function(){I&&I.parentNode&&(I.parentNode.removeChild(I),I=null)}}}function H(){return window.innerHeight-76}function j(e,n,t){const r=document.createElement("div");r.className="csk-msg csk-msg--user";const s=document.createElement("div");s.className="csk-msg__avatar csk-msg__avatar--user",s.innerHTML='';const o=document.createElement("div");o.className="csk-msg__content";const a=document.createElement("div");a.className="csk-msg__bubble",a.textContent=n;const i=document.createElement("div");return i.className="csk-msg__time",i.textContent=z(t),o.appendChild(a),o.appendChild(i),r.appendChild(s),r.appendChild(o),e.appendChild(r),r}function R(e,n,t,r,s){const o=document.createElement("div");o.className="csk-msg csk-msg--ai",s&&(o.dataset.cskMsgId=s);const a=document.createElement("div");a.className="csk-msg__avatar csk-msg__avatar--ai",a.innerHTML=T;const i=document.createElement("div");i.className="csk-msg__content";const c=document.createElement("div");c.className="csk-msg__bubble",r?c.innerHTML=r(n):c.textContent=n;const l=document.createElement("div");l.className="csk-msg__time",l.textContent=z(t),i.appendChild(c);const d=document.createElement("div");return d.className="csk-msg__meta",d.appendChild(l),d.appendChild(W(c,o)),i.appendChild(d),o.appendChild(a),o.appendChild(i),e.appendChild(o),X(c),o}const P='',U='';function W(e,n){const t=document.createElement("div");t.className="csk-msg__actions";const r=document.createElement("button");r.type="button",r.className="csk-action-btn",r.setAttribute("title",o("copy")),r.setAttribute("aria-label",o("copy")),r.innerHTML=P,r.addEventListener("click",async n=>{n.stopPropagation();const t=e.textContent||"";await O(t,r)});const s=document.createElement("button");s.type="button",s.className="csk-action-btn",s.setAttribute("title",o("retry")),s.setAttribute("aria-label",o("retry")),s.innerHTML=U,s.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:retry",{detail:{msgId:n.dataset.cskMsgId||""}}))});const a=document.createElement("button");a.type="button",a.className="csk-feedback-btn",a.setAttribute("title",o("feedback_up")),a.setAttribute("aria-label",o("feedback_up")),a.innerHTML='',a.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:feedback",{detail:{msgId:n.dataset.cskMsgId||"",value:"up"}}))});const i=document.createElement("button");return i.type="button",i.className="csk-feedback-btn",i.setAttribute("title",o("feedback_down")),i.setAttribute("aria-label",o("feedback_down")),i.innerHTML='',i.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:feedback",{detail:{msgId:n.dataset.cskMsgId||"",value:"down"}}))}),t.appendChild(r),t.appendChild(s),t.appendChild(a),t.appendChild(i),t}function Y(e,n){const t=e.querySelectorAll(".csk-feedback-btn");t.length<2||(t.forEach(e=>e.classList.remove("csk-feedback-btn--active","down")),"up"===n&&t[0]&&t[0].classList.add("csk-feedback-btn--active"),"down"===n&&t[1]&&t[1].classList.add("csk-feedback-btn--active","down"))}async function O(e,n){const t=n.innerHTML;try{if(navigator.clipboard&&window.isSecureContext)await navigator.clipboard.writeText(e);else{const n=document.createElement("textarea");n.value=e,n.style.position="fixed",n.style.opacity="0",document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n)}n.innerHTML='',n.classList.add("csk-action-btn--done"),setTimeout(()=>{n.innerHTML=t,n.classList.remove("csk-action-btn--done")},1500)}catch(e){}}function X(e){e.querySelectorAll(".csk-md-code-block").forEach(e=>{if(e.querySelector(".csk-md-code-copy"))return;const n=e.querySelector("code"),t=document.createElement("button");t.type="button",t.className="csk-md-code-copy",t.setAttribute("title",o("copy")),t.setAttribute("aria-label",o("copy")),t.innerHTML=P,t.addEventListener("click",async e=>{e.stopPropagation(),await O((null==n?void 0:n.textContent)||"",t)}),e.appendChild(t)})}function K(e,n){e.classList.remove("csk-msg--streaming");const t=n.querySelector(".csk-caret");t&&t.remove(),X(n)}function J(e,n){const t=e.querySelector(".csk-sources");if(t&&t.remove(),!n||0===n.length)return;const r=document.createElement("div");r.className="csk-sources csk-sources--collapsed";const s=document.createElement("div");s.className="csk-sources__header";const a=document.createElement("span");a.className="csk-sources__title",a.textContent=`📚 ${o("source_count",{n:n.length})}`;const i=document.createElement("span");i.className="csk-sources__arrow",i.textContent="▼",s.appendChild(a),s.appendChild(i),s.addEventListener("click",()=>{r.classList.toggle("csk-sources--collapsed")});const c=document.createElement("div");c.className="csk-sources__body";for(const e of n){const n=document.createElement("div");n.className="csk-source-item";const t=document.createElement("div");if(t.className="csk-source-item__name",t.textContent=e.title||e.sourceName||"未知文档",e.snippet){const t=document.createElement("div");t.className="csk-source-item__snippet",t.textContent=e.snippet,n.appendChild(t)}const r=document.createElement("div");r.className="csk-source-item__meta";const s=[];e.sourceName&&s.push(e.sourceName),void 0!==e.chunkIndex&&s.push(`分块 #${e.chunkIndex}`),void 0!==e.score&&s.push(`相关度 ${(100*e.score).toFixed(0)}%`),r.textContent=s.join(" · "),n.appendChild(t),n.appendChild(r),c.appendChild(n)}r.appendChild(s),r.appendChild(c);const l=e.querySelector(".csk-msg__meta");l&&l.parentNode?l.parentNode.insertBefore(r,l.nextSibling):e.appendChild(r)}function V(e,n,t,r,s,a,i){if(e.innerHTML="",0===n.length){const n=document.createElement("div");return n.className="csk-history-panel__empty",n.innerHTML=`\n
💬
\n
${o("history_empty")}
\n `,void e.appendChild(n)}const c=function(e){const n=new Date,t=new Date(n.getFullYear(),n.getMonth(),n.getDate()).getTime(),r=t-864e5,s=t-864e5*(n.getDay()||7)+864e5,a={today:[],yesterday:[],week:[],earlier:[]};for(const n of e){const e=n.lastMessageTime||n.createdAt,o=e?new Date(e).getTime():0;o>=t?a.today.push(n):o>=r?a.yesterday.push(n):o>=s?a.week.push(n):a.earlier.push(n)}const i=[];return a.today.length&&i.push({label:o("history_group_today"),items:a.today}),a.yesterday.length&&i.push({label:o("history_group_yesterday"),items:a.yesterday}),a.week.length&&i.push({label:o("history_group_week"),items:a.week}),a.earlier.length&&i.push({label:o("history_group_earlier"),items:a.earlier}),i}(n);for(const n of c){if(c.length>1){const t=document.createElement("div");t.className="csk-history-group";const r=document.createElement("div");r.className="csk-history-group__label",r.textContent=n.label,t.appendChild(r),e.appendChild(t)}for(const i of n.items){const n=document.createElement("div");n.className="csk-history-item";const c=i.chatId||i.id;a&&c===a&&n.classList.add("csk-history-item--active");const l=document.createElement("div");l.className="csk-history-item__info";const d=document.createElement("div");d.className="csk-history-item__id",i.lastMessagePreview?d.textContent=i.lastMessagePreview.length>60?i.lastMessagePreview.substring(0,60)+"...":i.lastMessagePreview:d.textContent=c;const p=document.createElement("div");p.className="csk-history-item__meta";const u=[];i.roleName&&u.push(i.roleName),void 0!==i.messageCount&&u.push(`${i.messageCount} 条消息`),i.lastMessageTime?u.push(i.lastMessageTime):i.createdAt&&u.push(i.createdAt),p.textContent=u.join(" · "),l.appendChild(d),l.appendChild(p);const m=document.createElement("div");m.className="csk-history-item__actions";const k=document.createElement("button");k.className="csk-history-action csk-history-action--export",k.setAttribute("title",o("history_export")),k.innerHTML='',k.addEventListener("click",e=>{e.stopPropagation(),r(i.id)});const g=document.createElement("button");g.className="csk-history-action csk-history-action--delete",g.setAttribute("title",o("history_delete")),g.innerHTML='',g.addEventListener("click",e=>{e.stopPropagation(),s(i.id)}),m.appendChild(k),m.appendChild(g),n.appendChild(l),n.appendChild(m),n.addEventListener("click",()=>{t(c)}),e.appendChild(n)}}}function G(e){e.scrollTop=e.scrollHeight}const Q=[{key:"inaccurate",labelKey:"feedback_reason_inaccurate"},{key:"irrelevant",labelKey:"feedback_reason_irrelevant"},{key:"incomplete",labelKey:"feedback_reason_incomplete"},{key:"other",labelKey:"feedback_reason_other"}];function Z(e){return`csk_history_${e}`}function ee(e,n){try{let r=n;r.length>200&&(r=r.slice(50),t.warn(`消息数量达到上限,已裁剪最早 50 条,当前 ${r.length} 条`));const s={messages:r,updatedAt:Date.now()};localStorage.setItem(Z(e),JSON.stringify(s))}catch(e){e instanceof Error&&"QuotaExceededError"===e.name?t.error("localStorage 空间不足,会话历史保存失败。建议清空历史记录。"):t.error("保存会话历史失败",e)}}function ne(e){try{localStorage.removeItem(Z(e))}catch(e){}}const te="\0CODEBLOCK_",re="\0INLINECODE_";function se(e){if(!e||"string"!=typeof e)return"";const n=[];let t=e;t=t.replace(/```(\w*)\n([\s\S]*?)```/g,(e,t,r)=>{const s=n.length,o=F(r.trimEnd()),a=t?` class="language-${F(t)}"`:"";return n.push(`
${o}
`),`${te}${s}\0`});const r=[];t=t.replace(/`([^`\n]+)`/g,(e,n)=>{const t=r.length;return r.push(`${F(n)}`),`${re}${t}\0`}),t=F(t),t=oe(t,te,n),t=oe(t,re,r);const s=t.split("\n"),o=[];let a=!1,i="",c=!1,l=[];for(let e=0;e')){h(),b(),f(),o.push(n);continue}const t=n.match(/^ {0,3}(#{1,6})(?:\s+|(?=[\u3400-\u9FFF\d]))(.+)/);if(t){h(),b(),f();const e=t[1].length;o.push(`${t[2]}`);continue}if(e+10&&t.length===r.length){h(),b(),f();const n=r.map(k);for(o.push('
'),o.push(""),t.forEach((e,t)=>{o.push(`${d(e)}`)}),o.push(""),e+=2;e"),t.forEach((e,t)=>{o.push(`${d(r[t]||"")}`)}),o.push(""),e++}o.push("
"),e--;continue}}const r=n.match(/^ {0,3}>\s?(.*)/);if(r){h(),b(),c||(c=!0,o.push('
')),o.push(`

${d(r[1])}

`);continue}c&&f();const y=n.match(/^ {0,3}[\-\*]\s+(.+)/);if(y){h(),f(),a&&"ul"===i||(b(),a=!0,i="ul",o.push('
    ')),o.push(`
  • ${d(y[1])}
  • `);continue}const v=n.match(/^ {0,3}\d+\.\s+(.+)/);v?(h(),f(),a&&"ol"===i||(b(),a=!0,i="ol",o.push('
      ')),o.push(`
    1. ${d(v[1])}
    2. `)):""!==n.trim()?/^(\*{3,}|-{3,}|_{3,})$/.test(n.trim())?(h(),b(),f(),o.push('
      ')):(b(),f(),l.push(d(n))):(h(),b())}return h(),b(),f(),o.join("\n");function d(e){return e=(e=(e=(e=(e=(e=e.replace(/\*\*(.+?)\*\*/g,"$1")).replace(/__(.+?)__/g,"$1")).replace(/\*(.+?)\*/g,"$1")).replace(/(?$1")).replace(/~~(.+?)~~/g,"$1")).replace(/\[([^\]]+)\]\(([^)]+)\)/g,(e,n,t)=>`${n}`)}function p(e){const n=m(e);return n.length>0&&n.every(e=>/^:?-{3,}:?$/.test(e.trim()))}function u(e){return""!==e.trim()&&e.includes("|")}function m(e){const n=e.trim().replace(/^\|/,"").replace(/\|$/,"");if(!n.includes("|"))return[];const t=[];let r="";for(let e=0;e0&&(o.push(`

      ${l.join("
      ")}

      `),l=[])}function b(){a&&(o.push("ul"===i?"
":""),a=!1,i="")}function f(){c&&(o.push("
"),c=!1)}}function oe(e,n,t){return e.replace(new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")+"(\\d+)\0","g"),(e,n)=>t[parseInt(n)]||"")}let ae,ie=null,ce=[],le=null,de=null,pe=null,ue=null,me=null,ke=null,ge=null,he=null,be=null,fe=null,ye=null,ve=null,xe=null,we=null,_e=!1,Ee=null,Ce=!0,Le=[],Ie="",Se=!1;function Ae(e,n){ie=e,le=n.messagesContainer,de=n.inputEl,pe=n.inputEl.parentElement,ue=n.sendBtn,me=n.clearBtn,ke=n.categorySelect,ge=n.roleSelect,he=n.historyPanel,be=n.welcomeEl,fe=n.newMsgBtn,ye=n.searchInput,ve=n.ariaLiveEl,xe=n.showLoading,we=n.hideLoading,ae=e.categoryId,Se=e.enableRag,function(){if(!de||!ue)return;ue.addEventListener("click",()=>{_e&&Ee?Ee.abort():He()}),de.addEventListener("keydown",e=>{"Enter"!==e.key||e.shiftKey||e.isComposing||(e.preventDefault(),He())}),de.addEventListener("input",()=>{qe(),function(){if(!de)return;de.style.height="auto",de.style.height=`${Math.min(de.scrollHeight,120)}px`}()}),de.addEventListener("focus",()=>{pe&&pe.classList.add("csk-input-wrap--focus")}),de.addEventListener("blur",()=>{pe&&pe.classList.remove("csk-input-wrap--focus")}),me&&me.addEventListener("click",()=>function(){if(!ie)return;if(ce=[],le){le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove())}me&&(me.style.display="none");Be(),ne(ie.integrateId);const e=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();d(e),I(ie.integrateId,ie.userId,e),t.lifecycleClear(ie.integrateId)}())}(),function(){if(!le)return;le.addEventListener("scroll",()=>{if(!le)return;const{scrollTop:e,scrollHeight:n,clientHeight:t}=le;Ce=n-e-t<80,Ce&&Me()}),fe&&fe.addEventListener("click",()=>{le&&G(le),Ce=!0,Me()})}(),function(){if(!ye)return;ye.addEventListener("input",()=>{Ie=ye.value.trim().toLowerCase(),De()})}(),e.showCategorySwitch&&ke&&async function(){if(!ke)return;try{const e=await async function(){const e=u("/category/tree");try{const n=await k(e);if(!n.ok)throw new g(h(n.status),`http_${n.status}`);const r=await n.json();return r.success&&Array.isArray(r.data)?(t.info(`加载分类树成功 count=${r.data.length}`),r.data):[]}catch(e){return e instanceof g?t.error(`加载分类树失败: ${e.message}`):t.error("加载分类树失败",e),[]}}();if(0===e.length)return;ke.innerHTML=``;const n=(e,t=0)=>{for(const r of e){const e=document.createElement("option");e.value=String(r.id),e.textContent=`${" ".repeat(t)}${r.name}`,void 0!==ae&&String(r.id)===String(ae)&&(e.selected=!0),ke.appendChild(e),r.children&&r.children.length>0&&n(r.children,t+1)}};n(e),t.info(`知识库分类加载成功 count=${e.length}`)}catch(e){t.error(o("category_load_error"),e)}}()}async function $e(){if(ie&&le&&(await C(),await Ne(),0===ce.length)){const e=function(e){try{const n=localStorage.getItem(Z(e));if(!n)return[];const r=JSON.parse(n);return r&&Array.isArray(r.messages)?(t.info(`加载历史消息 integrateId=${e} count=${r.messages.length}`),r.messages):[]}catch(e){return[]}}(ie.integrateId);e.length>0&&(ce=e,Pe(),t.info(`从本地缓存恢复 ${e.length} 条消息`))}}async function Ne(){if(!ie||!le)return;const e=p();if(e)try{const n=await w(e);n.messages.length>0&&(ce=n.messages.map((e,n)=>({id:M(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),Pe(),t.info(`从后端加载 ${ce.length} 条历史消息`),ee(l(),ce))}catch(e){}}function Me(){fe&&fe.classList.add("csk-newmsg--hidden")}function Fe(){le&&(Ce?G(le):fe&&fe.classList.remove("csk-newmsg--hidden"))}function ze(e){ue&&("stop"===e?(ue.classList.add("csk-send-btn--stop"),ue.removeAttribute("disabled"),ue.setAttribute("title",o("stop")),ue.setAttribute("aria-label",o("stop")),ue.innerHTML=''):(ue.classList.remove("csk-send-btn--stop"),ue.setAttribute("title",o("send")),ue.setAttribute("aria-label",o("send")),ue.innerHTML='',qe()))}function De(){const e=null==he?void 0:he.querySelector("#csk-history-list");if(!e||!ie)return;V(e,Ie?Le.filter(e=>(e.lastMessagePreview||e.chatId||e.id||"").toLowerCase().includes(Ie)):Le,e=>{Ue(e)},e=>{window.open(E(e),"_blank")},async e=>{if(!confirm(o("history_delete_confirm")))return;await _(e)&&(e===p()&&(ce=[],le&&le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),me&&(me.style.display="none"),Be()),Le=Le.filter(n=>(n.chatId||n.id)!==e),De())},p())}function Te(e,n){if(!le)return;const t=ce.find(n=>n.id===e&&"ai"===n.role);if(t){if("up"===n){const n="up"===t.feedback?void 0:"up";t.feedback=n,t.feedbackReason=void 0,t.feedbackComment=void 0;const r=le.querySelector(`[data-csk-msg-id="${e}"]`);return r&&Y(r,n),ie&&ee(ie.integrateId,ce),void(n&&v(String(e),"THUMBS_UP").then(e=>{}))}if("down"===n){const n=le.querySelector(`[data-csk-msg-id="${e}"]`);if(!n)return;if("down"===t.feedback)return t.feedback=void 0,t.feedbackReason=void 0,t.feedbackComment=void 0,n&&Y(n,void 0),void(ie&&ee(ie.integrateId,ce));!function(e,n,t){const r=e.querySelector(".csk-feedback-reason");r&&r.remove();const s=document.createElement("div");s.className="csk-feedback-reason";const a=document.createElement("div");a.className="csk-feedback-reason__title",a.textContent=o("feedback_reason_title"),s.appendChild(a);const i=document.createElement("div");i.className="csk-feedback-reason__options",Q.forEach(e=>{const n=document.createElement("button");n.type="button",n.className="csk-feedback-reason__btn",n.textContent=o(e.labelKey),n.addEventListener("click",n=>{n.stopPropagation(),t(e.key),s.remove()}),i.appendChild(n)}),s.appendChild(i);const c=document.createElement("div");c.className="csk-feedback-reason__comment-row";const l=document.createElement("input");l.type="text",l.className="csk-feedback-reason__comment",l.placeholder=o("feedback_reason_comment_placeholder"),l.maxLength=200,c.appendChild(l);const d=document.createElement("button");d.type="button",d.className="csk-feedback-reason__submit",d.textContent=o("feedback_reason_submit"),d.addEventListener("click",e=>{e.stopPropagation();const n=l.value.trim()||void 0;t("other",n),s.remove()}),c.appendChild(d),s.appendChild(c);const p=document.createElement("button");p.type="button",p.className="csk-feedback-reason__close",p.setAttribute("aria-label",o("close")),p.innerHTML='',p.addEventListener("click",e=>{e.stopPropagation(),s.remove()}),s.appendChild(p),e.appendChild(s)}(n,0,(r,s)=>{t.feedback="down",t.feedbackReason=r,t.feedbackComment=s,n&&Y(n,"down"),ie&&ee(ie.integrateId,ce),v(String(e),"THUMBS_DOWN",r,s).then(e=>{})})}}}function Be(){if(!be)return;const e=ce.length>0||le&&le.querySelector(".csk-msg");be.style.display=e?"none":""}function qe(){if(!ue||!de)return;de.value.trim().length>0&&!_e?ue.removeAttribute("disabled"):ue.setAttribute("disabled","true")}async function He(){if(!de||!ie||_e)return;const e=de.value.trim();if(""===e)return;de.value="",qe(),de.style.height="auto";const n=D(),t={id:M(),role:"user",content:e,timestamp:n};le&&j(le,e,n),ce.push(t),Be(),me&&ce.length>0&&(me.style.display="inline-flex"),le&&Fe(),await je(e)}async function je(e){if(!ie||!le)return;_e=!0,ze("stop"),ie.chatId||await C();const n=D(),r=Se;xe&&xe(),le&&Fe();const s=M();let i="";try{ie.streaming?i=await async function(e,n,t,r){Ee=new AbortController;const s=Ee.signal;return new Promise((a,i)=>{let c=null,l=null,d="",p=!1;f(e,e=>{if(d+=e,!p&&le){we&&we();const{wrapper:e,bubble:t}=function(e,n,t){const r=document.createElement("div");r.className="csk-msg csk-msg--ai csk-msg--streaming",t&&(r.dataset.cskMsgId=t);const s=document.createElement("div");s.className="csk-msg__avatar csk-msg__avatar--ai",s.innerHTML=T;const o=document.createElement("div");o.className="csk-msg__content";const a=document.createElement("div");a.className="csk-msg__bubble",a.innerHTML="";const i=document.createElement("div");i.className="csk-msg__time",i.textContent=z(n),o.appendChild(a);const c=document.createElement("div");return c.className="csk-msg__meta",c.appendChild(i),c.appendChild(W(a,r)),o.appendChild(c),r.appendChild(s),r.appendChild(o),e.appendChild(r),{wrapper:r,bubble:a}}(le,n,r);l=e,c=t,p=!0}c&&(c.innerHTML=se(d),function(e){if(e.querySelector(".csk-caret"))return;const n=document.createElement("span");n.className="csk-caret",n.setAttribute("aria-hidden","true"),e.appendChild(n)}(c)),le&&Fe()},()=>{if(l&&c){if(!p&&""===d)return void b(e).then(a).catch(i);d&&(c.innerHTML=se(d)),K(l,c)}a(d)},e=>{"network"!==e.type&&"cors"!==e.type||le&&function(e){if(document.getElementById("csk-offline-banner"))return;const n=document.createElement("div");n.id="csk-offline-banner",n.className="csk-offline-banner",n.textContent=o("error_offline"),e.insertBefore(n,e.firstChild)}(le),d.length>0?(c&&(c.innerHTML=se(d+"\n\n"+o("stream_interrupted")),l&&K(l,c)),a(d)):i(e)},ae,t,s)})}(e,n,r,s):(i=await b(e),we&&we(),le&&R(le,i,n,se,s));const t={id:s,role:"ai",content:i,timestamp:n};ce.push(t),ee(ie.integrateId,ce),le&&Fe(),function(e){if(!ve)return;const n=e.length>120?e.substring(0,120)+"...":e;ve.textContent=o("new_msg_announce")+":"+n}(i),le&&le.dispatchEvent(new CustomEvent("csk:newMessage",{bubbles:!0,detail:{msg:t}})),r&&async function(e,n){try{const t=await y(e,ae);if(t.length>0){const e=t.map(e=>{var n,t;return{documentId:e.documentId||"",title:e.title||"",sourceName:e.sourceName||"",chunkIndex:null!==(n=e.chunkIndex)&&void 0!==n?n:0,score:null!==(t=e.score)&&void 0!==t?t:0,snippet:e.snippet||""}});if(n.sources=e,le){const n=le.querySelector(".csk-msg--ai:last-of-type");n&&J(n,e)}ie&&ee(ie.integrateId,ce)}}catch(e){}}(e,t),ie.suggestions&&async function(e){const n=p();if(!n||!le)return;try{const t=await async function(e){if(!a||!e)return[];try{const n=new URLSearchParams;n.set("chatId",e);const t=u(`/ai/suggestions?${n.toString()}`),r=await k(t);if(!r.ok)return[];const s=await r.json();return s.success&&s.data&&Array.isArray(s.data.suggestions)?s.data.suggestions.filter(e=>"string"==typeof e&&e.trim().length>0):[]}catch(e){return[]}}(n);if(t.length>0&&le){const n=le.querySelector(`[data-csk-msg-id="${e}"]`);n&&function(e,n,t){if(function(e){const n=e.querySelector(".csk-suggestions");n&&n.remove()}(e),!n||0===n.length)return;const r=document.createElement("div");r.className="csk-suggestions";const s=document.createElement("div");s.className="csk-suggestions__list";for(const e of n){const n=document.createElement("button");n.type="button",n.className="csk-suggestion-item",n.textContent=e,n.addEventListener("click",n=>{n.stopPropagation(),t(e)}),s.appendChild(n)}r.appendChild(s);const o=e.querySelector(".csk-msg__content");o?o.appendChild(r):e.appendChild(r)}(n,t,Re)}}catch(e){}}(s),function(){const e=document.getElementById("csk-offline-banner");e&&e.remove()}()}catch(e){we&&we();const n=e instanceof g?e.message:o("error_send");if(le){const e=document.createElement("div");e.className="csk-msg csk-msg--ai";const t=document.createElement("div");t.className="csk-msg__bubble",t.style.color="#DC2626",t.textContent=`⚠ ${n}`,e.appendChild(t),le.appendChild(e)}t.error(`发送失败 integrateId=${ie.integrateId}`,e)}finally{_e=!1,Ee=null,ze("send"),qe()}}function Re(e){return!de||_e?Promise.resolve():(de.value=e,qe(),He())}function Pe(){if(!le)return;const e=le.querySelector(".csk-history-panel");le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());for(const e of ce)if("user"===e.role)j(le,e.content,e.timestamp);else{const n=R(le,e.content,e.timestamp,se,e.id);e.sources&&e.sources.length>0&&J(n,e.sources),e.feedback&&Y(n,e.feedback)}Ce=!0,G(le),me&&ce.length>0&&(me.style.display="inline-flex"),Be(),e&&!le.contains(e)&&le.appendChild(e)}async function Ue(e){if(!ie||!le)return;const n=Le.find(n=>(n.chatId||n.id)===e);if(n&&void 0!==n.roleId){const e=String(n.roleId),t=l();e&&e!==t&&(c(e),ge&&(ge.value=e))}d(e),I(l(),ie.userId,e),he&&he.classList.add("csk-history-panel--hidden"),ce=[];le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());try{const n=await w(e);n.messages.length>0&&(ce=n.messages.map(e=>({id:M(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),Pe(),t.info(`加载会话 ${e} 的 ${ce.length} 条消息`),ee(ie.integrateId,ce))}catch(e){}me&&ce.length>0&&(me.style.display="inline-flex"),Be()}let We=null,Ye=!1,Oe=null,Xe=null,Ke=null,Je=null,Ve=null,Ge=null,Qe=null,Ze=null,en=null,nn=null,tn=null,rn=null,sn=null,on=null,an=null,cn=null,ln=null,dn=null,pn=null;function un(){if(!an||!Oe)return;const e=Oe.getBoundingClientRect(),n=on?"left"===on.side:"left-bottom"===(null==We?void 0:We.position);n?(an.style.left=`${e.left}px`,an.style.right="auto"):(an.style.right=window.innerWidth-e.right+"px",an.style.left="auto"),an.style.bottom=window.innerHeight-e.top+8+"px",an.classList.toggle("csk-teaser--left",!!n),an.classList.toggle("csk-teaser--right",!n)}function mn(){if(!an)return;an.classList.add("csk-teaser--hidden"),an.removeEventListener("click",kn);const e=an.querySelector(".csk-teaser__close");e&&e.removeEventListener("click",gn)}function kn(e){e.target.closest(".csk-teaser__close")||(mn(),yn())}function gn(e){e.stopPropagation(),mn()}function hn(){an&&!an.classList.contains("csk-teaser--hidden")&&un()}const bn='button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])';function fn(e){"Escape"===e.key&&Xe&&!Xe.classList.contains("csk-window--hidden")&&vn(),function(e){if(!Xe||Xe.classList.contains("csk-window--hidden"))return;if("Tab"!==e.key)return;const n=Array.from(Xe.querySelectorAll(bn));if(0===n.length)return;const t=n[0],r=n[n.length-1];e.shiftKey?document.activeElement===t&&(e.preventDefault(),r.focus()):document.activeElement===r&&(e.preventDefault(),t.focus())}(e)}function yn(){Xe&&(Xe.classList.remove("csk-window--hidden"),mn(),ln&&ln.classList.add("csk-launcher__badge--hidden"),setTimeout(()=>{Je&&Je.focus()},80))}function vn(){Xe&&Xe.classList.add("csk-window--hidden")}function xn(){Xe&&(Xe.classList.contains("csk-window--hidden")?yn():vn())}function wn(e){return`csk_size_${e}`}function _n(e){return`csk_position_${e}`}function En(e){return`csk_launcher_pos_${e}`}function Cn(e){Xe&&(Xe.classList.remove("csk-window--right","csk-window--left"),Xe.classList.add(`csk-window--${e}`),an&&(an.classList.remove("csk-teaser--right","csk-teaser--left"),an.classList.add(`csk-teaser--${e}`)))}const Ln={init:function(e){if(Ye)return;const i=function(e){var n,r,s,o,a,i,c,l,d,p,u,m,k;if(!e.integrateId||"string"!=typeof e.integrateId&&"number"!=typeof e.integrateId||"string"==typeof e.integrateId&&""===e.integrateId.trim())return t.error('integrateId 是必传参数(对应后端 roleId 客服角色 ID),请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;if(!e.requestDomain||"string"!=typeof e.requestDomain||""===e.requestDomain.trim())return t.error('requestDomain 是必传参数,请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;try{new URL(e.requestDomain)}catch(n){return t.error(`requestDomain 不是合法的 URL 格式:${e.requestDomain}。请提供完整的域名,如 https://api.example.com`),null}const g=String(e.integrateId).trim(),h=e.requestDomain.replace(/\/+$/,""),b=e.launcherIcon||``,f=e.primaryColor||"#4F46E5",y={integrateId:g,requestDomain:e.requestDomain.replace(/\/+$/,""),userId:e.userId,categoryId:e.categoryId,showCategorySwitch:null!==(n=e.showCategorySwitch)&&void 0!==n&&n,title:e.title||"AI 智能助手",width:null!==(r=e.width)&&void 0!==r?r:500,height:Math.max(400,null!==(s=e.height)&&void 0!==s?s:520),position:"left-bottom"===e.position?"left-bottom":"right-bottom",primaryColor:f,launcherIcon:b,showClear:null===(o=e.showClear)||void 0===o||o,showAdminPanel:null!==(a=e.showAdminPanel)&&void 0!==a&&a,quickReplies:Array.isArray(e.quickReplies)?e.quickReplies.map(e=>String(e).trim()).filter(Boolean):[],suggestions:null===(i=e.suggestions)||void 0===i||i,theme:"dark"===e.theme?"dark":"light",showTeaser:null===(c=e.showTeaser)||void 0===c||c,teaserText:"string"==typeof e.teaserText&&e.teaserText.trim()||"",resizable:null===(l=e.resizable)||void 0===l||l,watermark:"string"==typeof e.watermark&&e.watermark.trim()||void 0,streaming:null===(d=e.streaming)||void 0===d||d,enableRag:null===(p=e.enableRag)||void 0===p||p,rewriteStrategy:e.rewriteStrategy||"REWRITE",locale:e.locale||"zh-CN",debug:null===(u=e.debug)||void 0===u||u,sound:null!==(m=e.sound)&&void 0!==m&&m,notification:null!==(k=e.notification)&&void 0!==k&&k,onError:"function"==typeof e.onError?e.onError:void 0,onReady:"function"==typeof e.onReady?e.onReady:void 0,onMessage:"function"==typeof e.onMessage?e.onMessage:void 0,token:e.token,roles:e.roles,disclaimer:e.disclaimer,chatId:""};return t.info(`配置解析完成 integrateId(=roleId)=${y.integrateId} userId(=accountId)=${y.userId||"(未设置)"} requestDomain=${y.requestDomain}`),y}(e);if(!i)return;We=i,function(e){if(r[e])s=e;else{const n=e.split("-")[0],t=Object.keys(r).find(e=>e.startsWith(n));t&&(s=t)}}(We.locale),We.debug,n(We.onError),function(e){a=e}(We),N(We),Oe=B(We,xn),document.body.appendChild(Oe),ln=Oe.querySelector(".csk-launcher__badge"),function(e,n){try{const t=localStorage.getItem(En(e));if(!t)return;const r=JSON.parse(t);if("left"!==r.side&&"right"!==r.side||"number"!=typeof r.bottom)return;const s=window.innerHeight-76,o=Math.max(16,Math.min(r.bottom,s));n.classList.remove("csk-launcher--right","csk-launcher--left"),n.classList.add(`csk-launcher--${r.side}`),n.style.bottom=`${o}px`,on={side:r.side,bottom:o}}catch(e){}}(We.integrateId,Oe),rn=function(e,n,t){let r=!1,s=0,o=0,a=!1,i=0,c=0,l=0,d=!1;function p(){const n=parseFloat(getComputedStyle(e).bottom);return isNaN(n)?24:n}function u(n,t){if(d)return;r=!0,a=!1,s=n,o=t,i=p();const u=e.style,m=getComputedStyle(e);c=u.right?parseFloat(u.right):parseFloat(m.right),l=u.left?parseFloat(u.left):parseFloat(m.left)}function m(n,t,d){if(!r)return;const p=n-s,u=t-o;if(!a){if(Math.abs(p)<5&&Math.abs(u)<5)return;a=!0,e.classList.add("csk-launcher--dragging"),e.classList.remove("csk-launcher--right","csk-launcher--left"),e.style.transition="none",!isNaN(c)&&c>=0&&isNaN(l)?(e.style.right=`${c}px`,e.style.left="auto"):!isNaN(l)&&l>=0&&(e.style.left=`${l}px`,e.style.right="auto")}if(a){d.preventDefault();const n=Math.max(16,Math.min(i-u,H()));e.style.bottom=`${n}px`}}function k(){if(!r)return;if(r=!1,!a)return;const n=parseFloat(e.style.bottom)||p(),s=Math.max(16,Math.min(n,H())),o=e.getBoundingClientRect(),i=o.left+o.width/2<=window.innerWidth/2?"left":"right";e.classList.remove("csk-launcher--dragging"),e.classList.add(`csk-launcher--${i}`,"csk-launcher--snap"),e.style.left="",e.style.right="",e.style.bottom=`${s}px`,d=!0;const c=()=>{e.removeEventListener("transitionend",c),e.classList.remove("csk-launcher--snap"),e.style.transition="",d=!1};e.addEventListener("transitionend",c),setTimeout(()=>{d&&c()},350);const l=n=>{n.stopPropagation(),e.removeEventListener("click",l,!0)};e.addEventListener("click",l,!0);const u=e.querySelector(".csk-launcher__badge");u&&(u.style.display=""),t&&t({side:i,bottom:s})}function g(e){u(e.clientX,e.clientY)}function h(e){m(e.clientX,e.clientY,e)}function b(){k()}function f(e){1===e.touches.length&&u(e.touches[0].clientX,e.touches[0].clientY)}function y(e){1===e.touches.length&&m(e.touches[0].clientX,e.touches[0].clientY,e)}function v(){k()}return e.addEventListener("mousedown",g),document.addEventListener("mousemove",h),document.addEventListener("mouseup",b),e.addEventListener("touchstart",f,{passive:!0}),document.addEventListener("touchmove",y,{passive:!1}),document.addEventListener("touchend",v),()=>{e.removeEventListener("mousedown",g),document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",b),e.removeEventListener("touchstart",f),document.removeEventListener("touchmove",y),document.removeEventListener("touchend",v)}}(Oe,0,e=>{const n=null==on?void 0:on.side;on=e,function(e,n){try{localStorage.setItem(En(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e),n&&n!==e.side&&function(){if(!Xe)return;Xe.style.left="",Xe.style.top="",Xe.style.right="",Xe.style.bottom=""}(),Cn(e.side),an&&!an.classList.contains("csk-teaser--hidden")&&un()}),on&&Cn(on.side);const d=q(We);Xe=d.window,Ke=d.messagesContainer,Je=d.inputEl,Ve=d.sendBtn,Ge=d.clearBtn,Qe=d.categorySelect,Ze=d.historyPanel,en=d.showLoading,nn=d.hideLoading,pn=d.disclaimer,document.body.appendChild(Xe),an=d.teaserEl,document.body.appendChild(an),un();const m=Xe.querySelector(".csk-header");if(m&&(tn=function(e,n,t){let r=!1,s=0,o=0,a=0,i=0;const c=e=>{if(e.target.closest("button"))return;r=!0,s=e.clientX,o=e.clientY;const t=n.getBoundingClientRect();a=s-t.left,i=o-t.top,document.addEventListener("mousemove",l),document.addEventListener("mouseup",d)},l=e=>{if(!r)return;const t=e.clientX-a,s=e.clientY-i,o=window.innerWidth-n.offsetWidth,c=window.innerHeight-n.offsetHeight;n.style.right="auto",n.style.bottom="auto",n.style.left=`${Math.max(0,Math.min(t,o))}px`,n.style.top=`${Math.max(0,Math.min(s,c))}px`},d=()=>{if(r=!1,document.removeEventListener("mousemove",l),document.removeEventListener("mouseup",d),t){const e=n.getBoundingClientRect();t({x:e.left,y:e.top})}};return e.addEventListener("mousedown",c),()=>{e.removeEventListener("mousedown",c),document.removeEventListener("mousemove",l),document.removeEventListener("mouseup",d)}}(m,Xe,e=>{!function(e,n){try{localStorage.setItem(_n(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e)})),function(e,n){try{const t=localStorage.getItem(_n(e));if(!t)return;const r=JSON.parse(t);if("number"!=typeof r.x||"number"!=typeof r.y)return;const s=window.innerWidth-n.offsetWidth,o=window.innerHeight-n.offsetHeight,a=Math.max(0,Math.min(r.x,s)),i=Math.max(0,Math.min(r.y,o));n.style.right="auto",n.style.bottom="auto",n.style.left=`${a}px`,n.style.top=`${i}px`}catch(e){}}(We.integrateId,Xe),We.resizable){const e=d.resizeHandle;sn=function(e,n,t){let r=!1,s=0,o=0,a=0,i=0;const c=(e,t)=>{r=!0,s=e,o=t;const c=n.getBoundingClientRect();a=c.width,i=c.height,n.classList.add("csk-window--resizing"),document.addEventListener("mousemove",p),document.addEventListener("mouseup",u),document.addEventListener("touchmove",g,{passive:!1}),document.addEventListener("touchend",h)},l=(e,t,c)=>{if(!r)return;c&&c.preventDefault();const l=e-s,d=t-o,p=Math.max(300,Math.min(a+l,window.innerWidth-24)),u=Math.max(300,Math.min(i+d,window.innerHeight-24));n.style.width=`${p}px`,n.style.height=`${u}px`,n.style.setProperty("--csk-window-width",`${p}px`),n.style.setProperty("--csk-window-height",`${u}px`),n.style.bottom="",n.style.right=""},d=()=>{if(!r)return;r=!1,n.classList.remove("csk-window--resizing"),document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",u),document.removeEventListener("touchmove",g),document.removeEventListener("touchend",h);const e=n.getBoundingClientRect();t&&t({width:e.width,height:e.height})};function p(e){l(e.clientX,e.clientY,e)}function u(){d()}function m(e){e.preventDefault(),e.stopPropagation(),c(e.clientX,e.clientY)}function k(e){e.preventDefault(),e.stopPropagation(),1===e.touches.length&&c(e.touches[0].clientX,e.touches[0].clientY)}function g(e){1===e.touches.length&&l(e.touches[0].clientX,e.touches[0].clientY,e)}function h(){d()}return e.addEventListener("mousedown",m),e.addEventListener("touchstart",k,{passive:!1}),()=>{e.removeEventListener("mousedown",m),e.removeEventListener("touchstart",k),document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",u),document.removeEventListener("touchmove",g),document.removeEventListener("touchend",h)}}(e,Xe,e=>{!function(e,n){try{localStorage.setItem(wn(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e)}),function(e,n){try{const t=localStorage.getItem(wn(e));if(!t)return;const r=JSON.parse(t);if("number"!=typeof r.width||"number"!=typeof r.height)return;const s=Math.max(300,Math.min(r.width,window.innerWidth-24)),o=Math.max(300,Math.min(r.height,window.innerHeight-24));n.style.width=`${s}px`,n.style.height=`${o}px`,n.style.setProperty("--csk-window-width",`${s}px`),n.style.setProperty("--csk-window-height",`${o}px`)}catch(e){}}(We.integrateId,Xe)}if(Ae(We,{messagesContainer:Ke,inputEl:Je,sendBtn:Ve,clearBtn:Ge,categorySelect:Qe,historyPanel:Ze,welcomeEl:d.welcomeEl,newMsgBtn:d.newMsgBtn,searchInput:d.searchInput,ariaLiveEl:d.ariaLiveEl,roleSelect:d.roleSelect,showLoading:en,hideLoading:nn}),Xe.addEventListener("csk:categoryChange",e=>{var n,t;n=e.detail.categoryId,ae=n,Se=null===(t=null==ie?void 0:ie.enableRag)||void 0===t||t}),Xe.addEventListener("csk:loadHistory",()=>{!async function(){if(!he||!ie)return;const e=he.querySelector("#csk-history-list");if(e){e.innerHTML='
加载中...
';try{const n=await x(1,50,ie.userId,l());Le=n.list.map(e=>({id:e.conversationId||"",chatId:e.conversationId||"",roleId:e.roleId,roleName:e.roleName,messageCount:e.messageCount,lastMessageTime:e.lastMessageTime,lastMessagePreview:e.lastMessagePreview,createdAt:e.firstMessageTime||e.createdAt})),Ie="",ye&&(ye.value=""),V(e,Le,e=>{Ue(e)},e=>{window.open(E(e),"_blank")},async e=>{confirm(o("history_delete_confirm"))&&await _(e)&&(e===p()&&(ce=[],le&&le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),me&&(me.style.display="none"),Be()),Le=Le.filter(n=>(n.chatId||n.id)!==e),De())},p())}catch(n){t.error(o("history_load_error"),n),e.innerHTML=`
${o("history_load_error")}
`}}}()}),Xe.addEventListener("csk:quickReply",e=>{Re(e.detail.text)}),Xe.addEventListener("csk:retry",e=>{!async function(e){if(!ie||!le||_e)return;const n=ce.findIndex(n=>n.id===e&&"ai"===n.role);if(n<0)return;let t="";for(let e=n-1;e>=0;e--)if("user"===ce[e].role){t=ce[e].content;break}if(!t)return;const r=ce.splice(n),s=new Set(r.map(e=>e.id));le.querySelectorAll(".csk-msg").forEach(e=>{const n=e.dataset.cskMsgId;n&&s.has(n)&&e.remove()}),ee(ie.integrateId,ce),Be(),await je(t)}(e.detail.msgId)}),Xe.addEventListener("csk:feedback",e=>{Te(e.detail.msgId,e.detail.value)}),Xe.addEventListener("csk:newMessage",e=>{var n;if(Xe&&Xe.classList.contains("csk-window--hidden")&&(ln&&ln.classList.remove("csk-launcher__badge--hidden"),(null==We?void 0:We.sound)&&function(){try{dn||(dn=new(window.AudioContext||window.webkitAudioContext));const e=dn;if("suspended"===e.state)return void e.resume();const n=e.currentTime;[0,.15].forEach((t,r)=>{const s=e.createOscillator(),o=e.createGain();s.type="sine",s.frequency.value=0===r?880:1100,o.gain.setValueAtTime(.15,n+t),o.gain.exponentialRampToValueAtTime(.001,n+t+.12),s.connect(o),o.connect(e.destination),s.start(n+t),s.stop(n+t+.12)})}catch(e){}}(),(null==We?void 0:We.notification)&&function(){try{if(!("Notification"in window))return;"granted"===Notification.permission?new Notification((null==We?void 0:We.title)||"AI 智能助手",{body:"收到新消息",icon:void 0,silent:!0}):"denied"!==Notification.permission&&Notification.requestPermission()}catch(e){}}()),(null==We?void 0:We.onMessage)&&(null===(n=e.detail)||void 0===n?void 0:n.msg))try{We.onMessage(e.detail.msg)}catch(e){}}),Xe.addEventListener("csk:roleChange",e=>{e.detail.roleId&&async function(e){if(!ie||!le)return;const n=l();if(e===n)return;if(ce.length>0&&ee(n,ce),Ee&&(Ee.abort(),Ee=null),_e=!1,ze("send"),ce=[],le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),ne(n),I(n,ie.userId,void 0),ne(e),I(e,ie.userId,void 0),c(e),ge&&(ge.value=e),await C(!0))try{await Ne()}catch(e){}me&&0===ce.length&&(me.style.display="none"),Be(),Ce=!0,le&&G(le)}(String(e.detail.roleId))}),document.addEventListener("keydown",fn),window.addEventListener("resize",hn),Ye=!0,t.lifecycleInit(We.integrateId,We.requestDomain),We.onReady)try{We.onReady()}catch(e){}We.showTeaser&&(cn=setTimeout(()=>{Xe&&Xe.classList.contains("csk-window--hidden")&&function(){if(!an)return;un(),an.classList.remove("csk-teaser--hidden"),an.addEventListener("click",kn);const e=an.querySelector(".csk-teaser__close");e&&e.addEventListener("click",gn)}()},1500)),$e().catch(e=>{}),void 0===We.disclaimer&&async function(e){if(!a)return"";try{const n=u(`/ai/system-config/${encodeURIComponent(e)}`),t=await k(n);if(!t.ok)return"";const r=await t.json();return r.success&&r.data&&r.data.configValue||""}catch(e){return""}}("disclaimer").then(e=>{e&&pn&&(pn.innerHTML=e,pn.style.display="")}).catch(()=>{})},destroy:function(){Ye&&(cn&&(clearTimeout(cn),cn=null),mn(),an&&an.parentNode&&(an.parentNode.removeChild(an),an=null),Oe&&Oe.parentNode&&(Oe.parentNode.removeChild(Oe),Oe=null),Xe&&Xe.parentNode&&(Xe.parentNode.removeChild(Xe),Xe=null),tn&&(tn(),tn=null),rn&&(rn(),rn=null),sn&&(sn(),sn=null),on=null,S&&S.parentNode&&(S.parentNode.removeChild(S),S=null),document.querySelectorAll("style[data-csk-sdk]").forEach(e=>e.remove()),document.removeEventListener("keydown",fn),window.removeEventListener("resize",hn),n(void 0),null==We||We.integrateId,We=null,Ye=!1,Ke=null,Je=null,Ve=null,Ge=null,Qe=null,Ze=null,en=null,nn=null,ln=null,dn=null,pn=null,a=null,i=null)},open:yn,close:vn,toggle:xn,clearHistory:function(){We&&(Ge?Ge.click():ne(We.integrateId))}};return"undefined"!=typeof window&&(window.ChatbotSDK=Ln),Ln}(); diff --git a/client/src/styles.ts b/client/src/styles.ts index 4540069..a2e861d 100644 --- a/client/src/styles.ts +++ b/client/src/styles.ts @@ -118,9 +118,9 @@ function getStyles(config: ResolvedConfig): string { filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.15)); } .csk-launcher img { - width: 36px; - height: 36px; - object-fit: contain; + width: 100%; + height: 100%; + object-fit: cover; position: relative; z-index: 1; -webkit-user-drag: none; diff --git a/frontend/src/views/RoleManager.vue b/frontend/src/views/RoleManager.vue index 63fb90d..a14685e 100644 --- a/frontend/src/views/RoleManager.vue +++ b/frontend/src/views/RoleManager.vue @@ -2,88 +2,538 @@

为角色设定人设并授权可检索的知识库分类。对话页只能选择这里配置好的角色,检索范围由服务端按角色强制限定。

- -
- - - - 启用 - - - - {{ editingId?'保存修改':'新增角色' }} - 取消编辑 - 刷新 - -
- - - -
-
-
-
- {{ role.name }} - 已停用 -
{{ role.description || '—' }}
-
- - 编辑 - 删除 +
+ +
+ + + +
+
+
+ {{ role.name }} + + {{ role.enabled ? '启用' : '停用' }} + +
+
{{ role.description || '—' }}
+
+
+
+ + + +
+ + + + + + + + +
+ diff --git a/src/main/java/com/wok/supportbot/controller/CustomerServiceRoleController.java b/src/main/java/com/wok/supportbot/controller/CustomerServiceRoleController.java index 5757440..4874799 100644 --- a/src/main/java/com/wok/supportbot/controller/CustomerServiceRoleController.java +++ b/src/main/java/com/wok/supportbot/controller/CustomerServiceRoleController.java @@ -51,10 +51,11 @@ public class CustomerServiceRoleController { @PreAuthorize("hasRole('admin')") public ResponseEntity> createRole(@RequestBody Map body) { try { - customerServiceRoleService.createRole( + Long newId = customerServiceRoleService.createRole( str(body.get("roleKey")), str(body.get("name")), str(body.get("description")), str(body.get("prompt")), boolOrNull(body.get("enabled"))); - return ResponseEntity.ok(Map.of("success", true, "message", "角色创建成功")); + return ResponseEntity.ok(Map.of("success", true, "message", "角色创建成功", + "data", Map.of("id", newId.toString()))); } catch (Exception e) { return ResponseEntity.status(500).body(Map.of("success", false, "message", "创建角色失败:" + e.getMessage())); } diff --git a/src/main/java/com/wok/supportbot/service/CustomerServiceRoleService.java b/src/main/java/com/wok/supportbot/service/CustomerServiceRoleService.java index 34ce612..b0ddc8b 100644 --- a/src/main/java/com/wok/supportbot/service/CustomerServiceRoleService.java +++ b/src/main/java/com/wok/supportbot/service/CustomerServiceRoleService.java @@ -5,9 +5,13 @@ import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.jdbc.support.GeneratedKeyHolder; +import org.springframework.jdbc.support.KeyHolder; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.sql.PreparedStatement; +import java.sql.Statement; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; @@ -97,21 +101,33 @@ public class CustomerServiceRoleService { /** * 新增角色。role_key 缺省时自动生成。 + * @return 新建角色的 ID */ @Transactional(rollbackFor = Exception.class) - public void createRole(String roleKey, String name, String description, String prompt, Boolean enabled) { + public Long createRole(String roleKey, String name, String description, String prompt, Boolean enabled) { if (name == null || name.trim().isEmpty()) { throw new IllegalArgumentException("角色名称不能为空"); } String key = (roleKey == null || roleKey.trim().isEmpty()) ? "role_" + System.currentTimeMillis() : roleKey.trim(); - jdbcTemplate.update(""" - INSERT INTO customer_service_role (role_key, name, description, prompt, enabled) - VALUES (?, ?, ?, ?, ?) - """, - key, name.trim(), description, prompt, - enabled != null ? enabled : true); + KeyHolder keyHolder = new GeneratedKeyHolder(); + jdbcTemplate.update(con -> { + PreparedStatement ps = con.prepareStatement( + "INSERT INTO customer_service_role (role_key, name, description, prompt, enabled) VALUES (?, ?, ?, ?, ?)", + Statement.RETURN_GENERATED_KEYS); + ps.setString(1, key); + ps.setString(2, name.trim()); + ps.setString(3, description); + ps.setString(4, prompt); + ps.setBoolean(5, enabled != null ? enabled : true); + return ps; + }, keyHolder); + Number generatedId = keyHolder.getKey(); + if (generatedId == null) { + throw new RuntimeException("创建角色失败:无法获取自动生成的 ID"); + } + return generatedId.longValue(); } /** diff --git a/src/main/resources/static/sdk/chatbot-sdk.js b/src/main/resources/static/sdk/chatbot-sdk.js index 4421fbd..5f267c0 100644 --- a/src/main/resources/static/sdk/chatbot-sdk.js +++ b/src/main/resources/static/sdk/chatbot-sdk.js @@ -1095,9 +1095,9 @@ var ChatbotSDK = (function () { filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.15)); } .csk-launcher img { - width: 36px; - height: 36px; - object-fit: contain; + width: 100%; + height: 100%; + object-fit: cover; position: relative; z-index: 1; -webkit-user-drag: none; diff --git a/src/main/resources/static/sdk/chatbot-sdk.min.js b/src/main/resources/static/sdk/chatbot-sdk.min.js index 72eedec..6116bd1 100644 --- a/src/main/resources/static/sdk/chatbot-sdk.min.js +++ b/src/main/resources/static/sdk/chatbot-sdk.min.js @@ -1 +1 @@ -var ChatbotSDK=function(){"use strict";let e=null;function n(n){e=n||null}const t={info(e,n){},warn(e,n){},error(n,t){if(e)try{const r=t instanceof Error&&t.type||"error";e({message:n,code:String(r),detail:t})}catch(e){}},time(e){},timeEnd:(e,n)=>0,lifecycleInit(e,n){},lifecycleDestroy(e){},lifecycleSend(e,n){},lifecycleReply(e,n){},lifecycleError(e,n,t){},lifecycleClear(e){},lifecycleStreamDone(e,n){},lifecycleCategoryChange(e){}};const r={"zh-CN":{title:"AI 智能助手",minimize:"最小化",close:"关闭",status_online:"在线",role_selector_label:"服务角色",welcome_title:"你好,我是 AI 智能助手",welcome_desc:"有什么可以帮你的吗?在下方输入框开始提问吧~",placeholder:"输入您的问题...",send:"发送",stop:"停止生成",new_message:"新消息",copy:"复制",copied:"已复制",retry:"重新生成",retrying:"重新生成中...",loading:"正在思考...",stream_interrupted:"回复被中断",stream_unstable:"网络不稳定,内容可能不完整",category_placeholder:"选择知识库分类",category_all:"全部分类",category_load_error:"加载分类失败",source_title:"参考来源",source_count:"{n} 条参考来源",source_loading:"加载来源中...",clear:"新对话",history_title:"历史会话",history_empty:"暂无历史会话",history_load_error:"加载会话列表失败",history_delete_confirm:"确定删除该会话?",history_export:"导出",history_delete:"删除",history_search:"搜索会话...",history_group_today:"今天",history_group_yesterday:"昨天",history_group_week:"本周",history_group_earlier:"更早",feedback_up:"有帮助",feedback_down:"没帮助",feedback_reason_title:"请选择不满意的原因:",feedback_reason_inaccurate:"信息错误",feedback_reason_irrelevant:"不相关",feedback_reason_incomplete:"不完整",feedback_reason_other:"其他",feedback_reason_comment_placeholder:"补充说明(可选)",feedback_reason_submit:"提交",teaser_text:"有什么可以帮你的吗?",new_msg_announce:"收到新消息",resize:"拖拽缩放窗口",error_network:"网络连接失败,请检查网络",error_offline:"⚠️ 网络连接异常,请检查网络后重试",error_timeout:"请求超时,请稍后重试",error_server:"服务器异常,请稍后重试",error_cors:"跨域请求被拦截,请联系管理员将当前域名加入 API 白名单",error_auth:"鉴权失败,请联系管理员",error_forbidden:"无访问权限,请联系管理员配置",error_not_found:"请求的资源不存在",error_rate_limit:"请求过于频繁,请稍后重试",error_unavailable:"服务暂不可用,请稍后重试",error_unknown:"请求发生未知错误",error_send:"发送失败,请稍后重试",error_stream_unsupported:"浏览器不支持流式读取"},en:{title:"AI Assistant",minimize:"Minimize",close:"Close",status_online:"Online",role_selector_label:"Service",welcome_title:"Hi, I am your AI assistant",welcome_desc:"How can I help you? Type your question below to get started.",placeholder:"Type your question...",send:"Send",stop:"Stop generating",new_message:"New message",copy:"Copy",copied:"Copied",retry:"Regenerate",retrying:"Regenerating...",loading:"Thinking...",stream_interrupted:"Response interrupted",stream_unstable:"Network unstable, content may be incomplete",category_placeholder:"Select category",category_all:"All categories",category_load_error:"Failed to load categories",source_title:"Sources",source_count:"{n} source(s)",source_loading:"Loading sources...",clear:"New chat",history_title:"History",history_empty:"No conversations yet",history_load_error:"Failed to load conversations",history_delete_confirm:"Delete this conversation?",history_export:"Export",history_delete:"Delete",history_search:"Search conversations...",history_group_today:"Today",history_group_yesterday:"Yesterday",history_group_week:"This Week",history_group_earlier:"Earlier",feedback_up:"Helpful",feedback_down:"Not helpful",feedback_reason_title:"Please tell us why:",feedback_reason_inaccurate:"Inaccurate",feedback_reason_irrelevant:"Irrelevant",feedback_reason_incomplete:"Incomplete",feedback_reason_other:"Other",feedback_reason_comment_placeholder:"Additional comments (optional)",feedback_reason_submit:"Submit",teaser_text:"How can I help you?",new_msg_announce:"New message received",resize:"Resize window",error_network:"Network connection failed",error_offline:"⚠️ Connection lost. Please check your network and try again.",error_timeout:"Request timed out, please try again",error_server:"Server error, please try again later",error_cors:"CORS request blocked. Please contact admin to whitelist your domain",error_auth:"Authentication failed, please contact admin",error_forbidden:"Access denied, please contact admin",error_not_found:"Resource not found",error_rate_limit:"Too many requests, please try again later",error_unavailable:"Service temporarily unavailable",error_unknown:"Unknown request error",error_send:"Failed to send, please try again",error_stream_unsupported:"Browser does not support streaming"}};let s="zh-CN";function o(e,n){let t=(r[s]||r["zh-CN"])[e]||r["zh-CN"][e]||e;if(n)for(const[e,r]of Object.entries(n))t=t.replace(`{${e}}`,String(r));return t}let a=null,i=null;function c(e){i=e}function l(){var e;return null!==(e=null!=i?i:null==a?void 0:a.integrateId)&&void 0!==e?e:""}function d(e){a&&(a.chatId=e)}function p(){return(null==a?void 0:a.chatId)||""}function u(e){if(!a)throw new Error("API 配置未初始化");return`${a.requestDomain.replace(/\/+$/,"")}${e.startsWith("/")?e:`/${e}`}`}function m(e,n,t){null!=t&&("string"==typeof t&&""===t.trim()||e.set(n,String(t)))}async function k(e,n={},r=3e4,s){const i=new AbortController,c=setTimeout(()=>i.abort(),r);s&&(s.aborted?i.abort():s.addEventListener("abort",()=>i.abort(),{once:!0}));try{const r={};n.headers&&(n.headers instanceof Headers?n.headers.forEach((e,n)=>{r[n]=e}):Array.isArray(n.headers)?n.headers.forEach(([e,n])=>{r[e]=n}):Object.assign(r,n.headers)),(null==a?void 0:a.token)&&(e.includes("/ai/")||e.endsWith("/feedback"))&&(r.Authorization=`Bearer ${a.token}`);const s=await fetch(e,Object.assign(Object.assign({},n),{headers:r,signal:i.signal,mode:"cors",credentials:"include"}));return 401===s.status&&(e.includes("/ai/")||e.endsWith("/feedback"))&&t.error("SDK 认证失败:Token 缺失或已过期,请重新调用 /open-api/auth/token 换取 Token"),s}catch(e){if(null==s?void 0:s.aborted)throw new g("aborted","aborted");if(e instanceof DOMException&&"AbortError"===e.name)throw new g(o("error_timeout"),"timeout");if(e instanceof TypeError&&e.message.includes("Failed to fetch"))throw new g(o("error_cors"),"cors");throw new g(o("error_network"),"network")}finally{clearTimeout(c)}}class g extends Error{constructor(e,n){super(e),this.name="CskError",this.type=n}}function h(e){switch(e){case 401:return o("error_auth");case 403:return o("error_forbidden");case 404:return o("error_not_found");case 429:return o("error_rate_limit");case 500:return o("error_server");case 502:case 503:return o("error_unavailable");default:return`${o("error_unknown")}(${e})`}}async function b(e){const n=function(e){const n=new URLSearchParams;return n.set("message",e),n.set("chatId",a.chatId),m(n,"roleId",l()),m(n,"accountId",a.userId),u(`/ai/assistant_app/chat/sync?${n.toString()}`)}(e);t.lifecycleSend(l(),e.length);try{const e=await k(n);if(!e.ok){const n=h(e.status);throw t.lifecycleError(l(),String(e.status),n),new g(n,`http_${e.status}`)}const r=await e.text();return t.lifecycleReply(l(),r.length),r}catch(e){if(e instanceof g)throw e;throw t.lifecycleError(l(),"unknown",String(e)),new g(o("error_unknown"),"unknown")}}async function f(e,n,r,s,i,c,d){var p;const b=c?function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy",a.rewriteStrategy||"REWRITE"),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/chat/rag/sse?${t.toString()}`)}(e,i):function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/chat/sse?${t.toString()}`)}(e,i);let f="";t.lifecycleSend(l(),e.length);try{const e=await k(b,{},6e4,d);if(!e.ok){const n=h(e.status);return t.lifecycleError(l(),String(e.status),n),void s(new g(n,`http_${e.status}`))}const a=null===(p=e.body)||void 0===p?void 0:p.getReader();if(!a)return void s(new g(o("error_stream_unsupported"),"stream_unsupported"));const i=new TextDecoder("utf-8",{stream:!0});let c="",u=[],m="";try{for(;;){const{done:e,value:t}=await a.read();if(e)break;c+=i.decode(t,{stream:!0});const r=c.split("\n");c=r.pop()||"";for(const e of r){const t=e.trim();if(!t){if(u.length>0){if("status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e)}u=[]}m="";continue}if(t.startsWith(":"))continue;if("[DONE]"===t){if(u.length>0&&"status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e),u=[]}m="";break}if(t.startsWith("event:")){m=t.substring(6).trim();continue}if(t.startsWith("id:")||t.startsWith("retry:"))continue;let r;t.startsWith("data:")?(r=t.substring(5),r.startsWith(" ")&&(r=r.substring(1))):r=t,u.push(r)}}if(c.trim()){const e=c.trim();if(!e.startsWith(":"))if(e.startsWith("data:")){let n=e.substring(5);n.startsWith(" ")&&(n=n.substring(1)),u.push(n)}else"[DONE]"===e||e.startsWith("event:")||e.startsWith("id:")||e.startsWith("retry:")||u.push(e)}if(u.length>0&&"status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e),u=[]}}catch(e){if(null==d?void 0:d.aborted)t.info(`流式被用户中断,保留已生成内容 length=${f.length}`);else{if(!(f.length>0))throw e;n("\n\n"+o("stream_unstable"))}}finally{a.releaseLock()}t.lifecycleStreamDone(l(),f.length),r()}catch(e){if((null==d?void 0:d.aborted)||e instanceof g&&"aborted"===e.type)return void r();e instanceof g?s(e):(t.lifecycleError(l(),"unknown",String(e)),s(new g(o("error_network"),"network")))}}async function y(e,n){const r=function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy",a.rewriteStrategy||"REWRITE"),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/rag/sources?${t.toString()}`)}(e,n);try{const e=await k(r);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return n.success&&Array.isArray(n.data)?(t.info(`获取引用来源 count=${n.data.length}`),n.data):[]}catch(e){return t.error("获取引用来源失败",e),[]}}async function v(e,n,r,s){if(!a)return!1;const o=u("/feedback");try{const i={messageId:String(e),conversationId:a.chatId,feedbackType:n};r&&(i.reasonCategory=r),s&&(i.reasonComment=s);const c=await k(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)});if(!c.ok)return t.error(`反馈提交失败 status=${c.status}`),!1;return(await c.json()).success||!1}catch(e){return t.error("反馈提交异常",e),!1}}async function x(e=1,n=20,r,s){const o=new URLSearchParams;o.set("page",String(e)),o.set("size",String(n)),r&&o.set("accountId",r),s&&o.set("roleId",s);const a=u(`/ai/sdk/conversation/list?${o.toString()}`);try{const e=await k(a);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return{list:n.success&&Array.isArray(n.data)?n.data:[],total:n.total||0,pages:n.pages||0}}catch(e){return t.error("加载会话列表失败",e),{list:[],total:0,pages:0}}}async function w(e){const n=new URLSearchParams;(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l());const r=u(`/ai/sdk/conversation/${e}/messages?${n.toString()}`);try{const e=await k(r);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return{messages:n.success&&Array.isArray(n.data)?n.data:[],total:n.total||0}}catch(e){return t.error("加载会话消息失败",e),{messages:[],total:0}}}async function _(e){const n=new URLSearchParams;(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l());const r=u(`/ai/sdk/conversation/${e}?${n.toString()}`);try{const n=await k(r,{method:"DELETE"});if(!n.ok)throw new g(h(n.status),`http_${n.status}`);const s=await n.json();return t.info(`删除会话 id=${e} success=${s.success}`),s.success||!1}catch(e){return t.error("删除会话失败",e),!1}}function E(e){const n=new URLSearchParams;return(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l()),u(`/ai/sdk/conversation/${e}/export?${n.toString()}`)}async function C(e=!1){if(!a)return"";const n=l();if(!e){const e=function(e,n){try{return localStorage.getItem(L(e,n))||""}catch(e){return""}}(n,a.userId);if(e)return a.chatId=e,e}try{const e=await x(1,5,a.userId,n);if(e.list.length>0){const r=e.list[0],s=r.conversationId||r.chatId||"";if(s)return a.chatId=s,I(n,a.userId,s),t.info(`从后端恢复会话 chatId=${s} messageCount=${r.messageCount}`),s}}catch(e){}const r=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();return a.chatId=r,I(n,a.userId,r),r}function L(e,n){return`csk_chatId_${e}${n?"_"+n:""}`}function I(e,n,t){try{t?localStorage.setItem(L(e,n),t):localStorage.removeItem(L(e,n))}catch(e){}}let S=null;function A(e){const n=$(e.primaryColor,-15),t=$(e.primaryColor,18),r=function(e){const n=e.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);return n?`${parseInt(n[1],16)}, ${parseInt(n[2],16)}, ${parseInt(n[3],16)}`:"79, 70, 229"}(e.primaryColor);return`\n --csk-primary: ${e.primaryColor};\n --csk-primary-hover: ${n};\n --csk-primary-light: ${t};\n --csk-primary-rgb: ${r};\n --csk-bg-user: linear-gradient(135deg, ${e.primaryColor}, ${n});\n --csk-bg-ai: #ffffff;\n --csk-text-user: #ffffff;\n --csk-text-ai: #1F2937;\n --csk-window-width: ${e.width}px;\n --csk-window-height: ${e.height}px;\n --csk-radius: 16px;\n --csk-shadow-window: 0 12px 48px rgba(15, 23, 42, 0.18), 0 2px 8px rgba(15, 23, 42, 0.06);\n --csk-shadow-bubble: 0 1px 2px rgba(15, 23, 42, 0.06);\n --csk-border: #ECEEF2;\n --csk-bg-app: #F6F7F9;\n `}function $(e,n){const t=e.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);if(!t)return e;const r=e=>Math.max(0,Math.min(255,e)),s=r(parseInt(t[1],16)+n),o=r(parseInt(t[2],16)+n),a=r(parseInt(t[3],16)+n);return`#${s.toString(16).padStart(2,"0")}${o.toString(16).padStart(2,"0")}${a.toString(16).padStart(2,"0")}`}function N(e){document.querySelector("style[data-csk-sdk]")||(S=document.createElement("style"),S.setAttribute("data-csk-sdk",""),S.textContent=function(e){return`\n/* ChatbotSDK 样式 - csk- 命名空间 */\n.csk-root {\n ${A(e)}\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;\n font-size: 14px;\n line-height: 1.55;\n color: #1F2937;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n box-sizing: border-box;\n}\n.csk-root *, .csk-root *::before, .csk-root *::after { box-sizing: border-box; }\n\n/* ========== 悬浮按钮 ========== */\n.csk-launcher {\n position: fixed;\n bottom: 24px;\n z-index: 9998;\n width: 60px;\n height: 60px;\n border-radius: 50%;\n /* 白色背景,简洁克制 */\n background: #ffffff;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #fff;\n user-select: none;\n overflow: hidden;\n /* 浅灰边框 */\n border: 2px solid #E5E7EB;\n /* 简洁柔和阴影 */\n box-shadow:\n 0 2px 8px rgba(0, 0, 0, 0.08),\n 0 4px 16px rgba(0, 0, 0, 0.06);\n transition:\n transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1),\n box-shadow 0.25s ease,\n border-color 0.25s ease;\n animation:\n csk-launcher-in 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;\n}\n.csk-launcher--right { right: 24px; }\n.csk-launcher--left { left: 24px; }\n\n.csk-launcher:hover {\n transform: translateY(-3px) scale(1.08);\n border-color: #D1D5DB;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.10),\n 0 8px 24px rgba(0, 0, 0, 0.08);\n}\n.csk-launcher:active { transform: scale(0.93); }\n.csk-launcher svg {\n width: 30px;\n height: 30px;\n position: relative;\n z-index: 1;\n filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.15));\n}\n.csk-launcher img {\n width: 36px;\n height: 36px;\n object-fit: contain;\n position: relative;\n z-index: 1;\n -webkit-user-drag: none;\n user-select: none;\n}\n\n@keyframes csk-launcher-in {\n 0% { opacity: 0; transform: scale(0.5) translateY(16px); }\n 60% { transform: scale(1.06) translateY(-2px); }\n 100% { opacity: 1; transform: scale(1) translateY(0); }\n}\n\n/* ========== 聊天弹窗 ========== */\n.csk-window {\n position: fixed;\n bottom: 24px;\n z-index: 9999;\n width: var(--csk-window-width);\n height: var(--csk-window-height);\n max-height: calc(100vh - 48px);\n background: #fff;\n border-radius: var(--csk-radius);\n box-shadow: var(--csk-shadow-window);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transform-origin: bottom right;\n transition: opacity 0.24s ease, transform 0.24s cubic-bezier(0.34, 1.2, 0.64, 1), visibility 0.24s;\n opacity: 1;\n transform: translateY(0) scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.csk-window--right { right: 24px; transform-origin: bottom right; }\n.csk-window--left { left: 24px; transform-origin: bottom left; }\n.csk-window--hidden {\n opacity: 0;\n transform: translateY(12px) scale(0.96);\n visibility: hidden;\n pointer-events: none;\n}\n\n/* ========== 水印层 ========== */\n.csk-watermark {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n user-select: none;\n z-index: 0;\n background-repeat: repeat;\n opacity: 0.8;\n}\n\n/* ========== 头部 ========== */\n.csk-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n min-height: 60px;\n background: var(--csk-bg-user);\n color: #fff;\n cursor: move;\n user-select: none;\n position: relative;\n flex-shrink: 0;\n}\n.csk-header::after {\n content: '';\n position: absolute;\n left: 0; right: 0; bottom: 0;\n height: 24px;\n background: linear-gradient(to bottom, rgba(0,0,0,0.04), transparent);\n pointer-events: none;\n}\n.csk-header__left {\n display: flex;\n align-items: center;\n gap: 12px;\n min-width: 0;\n}\n.csk-header__avatar {\n width: 38px;\n height: 38px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.22);\n backdrop-filter: blur(4px);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.25);\n}\n.csk-header__avatar svg { width: 22px; height: 22px; }\n.csk-header__info {\n display: flex;\n flex-direction: column;\n min-width: 0;\n}\n.csk-header__title {\n font-size: 15px;\n font-weight: 600;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n letter-spacing: 0.2px;\n}\n.csk-header__status {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n font-size: 11.5px;\n opacity: 0.9;\n margin-top: 2px;\n}\n.csk-status-dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n background: #6EE7B7;\n box-shadow: 0 0 0 0 rgba(110, 231, 183, 0.7);\n animation: csk-status-pulse 2s infinite;\n}\n@keyframes csk-status-pulse {\n 0% { box-shadow: 0 0 0 0 rgba(110, 231, 183, 0.7); }\n 70% { box-shadow: 0 0 0 6px rgba(110, 231, 183, 0); }\n 100% { box-shadow: 0 0 0 0 rgba(110, 231, 183, 0); }\n}\n.csk-header__actions {\n display: flex;\n align-items: center;\n gap: 2px;\n flex-shrink: 0;\n}\n.csk-header__btn,\n.csk-history-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 8px;\n transition: background 0.15s, transform 0.15s;\n}\n.csk-header__btn:hover,\n.csk-history-btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n.csk-header__btn:active,\n.csk-history-btn:active { transform: scale(0.92); }\n\n/* ========== 角色选择器 ========== */\n.csk-role-select-wrap {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n margin: 0 4px;\n}\n.csk-role-select {\n appearance: none;\n -webkit-appearance: none;\n padding: 4px 24px 4px 10px;\n border: 1px solid rgba(255, 255, 255, 0.35);\n border-radius: 8px;\n background: rgba(255, 255, 255, 0.15) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='white' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 6px center;\n color: #fff;\n font-size: 12px;\n font-family: inherit;\n cursor: pointer;\n outline: none;\n transition: background 0.15s, border-color 0.15s;\n max-width: 120px;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-role-select:hover {\n background-color: rgba(255, 255, 255, 0.25);\n border-color: rgba(255, 255, 255, 0.55);\n}\n.csk-role-select:focus {\n border-color: rgba(255, 255, 255, 0.7);\n box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.2);\n}\n.csk-role-select option {\n color: #1F2937;\n background: #fff;\n}\n\n/* ========== 消息区 ========== */\n.csk-messages {\n flex: 1;\n overflow-y: auto;\n padding: 20px 16px 12px;\n background: var(--csk-bg-app);\n scroll-behavior: smooth;\n}\n.csk-messages::-webkit-scrollbar { width: 6px; }\n.csk-messages::-webkit-scrollbar-track { background: transparent; }\n.csk-messages::-webkit-scrollbar-thumb {\n background: #D8DCE3;\n border-radius: 3px;\n}\n.csk-messages::-webkit-scrollbar-thumb:hover { background: #C2C7D0; }\n\n/* 离线提示横幅 */\n.csk-offline-banner {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n padding: 8px 12px;\n margin: 0 0 8px 0;\n border-radius: 8px;\n font-size: 12px;\n line-height: 1.5;\n background: #FEF2F2;\n color: #991B1B;\n border: 1px solid #FECACA;\n}\n.csk-dark .csk-offline-banner {\n background: #450A0A;\n color: #FCA5A5;\n border-color: #7F1D1D;\n}\n\n/* 欢迎空状态 */\n.csk-welcome {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n padding: 48px 24px 32px;\n color: #6B7280;\n animation: csk-fade-in 0.3s ease;\n}\n.csk-welcome__avatar {\n width: 56px;\n height: 56px;\n border-radius: 50%;\n background: var(--csk-bg-user);\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 14px;\n box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.3);\n}\n.csk-welcome__avatar svg { width: 30px; height: 30px; }\n.csk-welcome__title {\n font-size: 15px;\n font-weight: 600;\n color: #1F2937;\n margin-bottom: 4px;\n}\n.csk-welcome__desc {\n font-size: 13px;\n color: #9CA3AF;\n line-height: 1.6;\n}\n\n/* 消息气泡 */\n.csk-msg {\n display: flex;\n margin-bottom: 12px;\n max-width: 100%;\n word-break: break-word;\n animation: csk-msg-in 0.28s cubic-bezier(0.22, 1, 0.36, 1);\n}\n.csk-msg--user {\n flex-direction: row-reverse;\n align-items: flex-end;\n}\n.csk-msg--ai {\n flex-direction: row;\n align-items: flex-start;\n}\n.csk-msg__avatar {\n width: 30px;\n height: 30px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin: 0 8px;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-msg__avatar svg { width: 18px; height: 18px; }\n.csk-msg__avatar--ai {\n background: #fff;\n color: var(--csk-primary);\n border: 1px solid var(--csk-border);\n}\n.csk-msg__avatar--user {\n background: var(--csk-bg-user);\n color: #fff;\n}\n.csk-msg__content {\n display: flex;\n flex-direction: column;\n min-width: 0;\n max-width: calc(100% - 46px);\n}\n.csk-msg--user .csk-msg__content { align-items: flex-end; }\n.csk-msg--ai .csk-msg__content { align-items: flex-start; }\n.csk-msg__bubble {\n padding: 10px 14px;\n border-radius: 16px;\n font-size: 14px;\n line-height: 1.6;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-msg--user .csk-msg__bubble {\n background: var(--csk-bg-user);\n color: var(--csk-text-user);\n border-radius: 16px 16px 4px 16px;\n}\n.csk-msg--ai .csk-msg__bubble {\n background: var(--csk-bg-ai);\n color: var(--csk-text-ai);\n border-radius: 16px 16px 16px 4px;\n border: 1px solid var(--csk-border);\n}\n.csk-msg__time {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 3px;\n padding: 0 4px;\n}\n\n/* 元信息行:时间戳居左,操作按钮居右,共用一行 */\n.csk-msg__meta {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 3px;\n width: 100%;\n}\n.csk-msg__meta .csk-msg__time { margin-top: 0; }\n\n@keyframes csk-msg-in {\n from { opacity: 0; transform: translateY(8px); }\n to { opacity: 1; transform: translateY(0); }\n}\n@keyframes csk-fade-in {\n from { opacity: 0; }\n to { opacity: 1; }\n}\n\n/* ========== Loading 动画 ========== */\n.csk-loading {\n display: flex;\n align-items: center;\n margin-bottom: 12px;\n animation: csk-msg-in 0.28s ease;\n}\n.csk-loading__avatar {\n width: 30px;\n height: 30px;\n border-radius: 50%;\n background: #fff;\n color: var(--csk-primary);\n border: 1px solid var(--csk-border);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin: 0 8px;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-loading__avatar svg { width: 18px; height: 18px; }\n.csk-loading__bubble {\n background: #fff;\n border: 1px solid var(--csk-border);\n border-radius: 16px 16px 16px 4px;\n padding: 12px 16px;\n display: flex;\n align-items: center;\n gap: 5px;\n}\n.csk-loading__dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n background: #B4B9C2;\n animation: csk-bounce 1.4s ease-in-out infinite both;\n}\n.csk-loading__dot:nth-child(1) { animation-delay: 0s; }\n.csk-loading__dot:nth-child(2) { animation-delay: 0.16s; }\n.csk-loading__dot:nth-child(3) { animation-delay: 0.32s; }\n\n@keyframes csk-bounce {\n 0%, 80%, 100% { transform: scale(0.6); opacity: 0.6; }\n 40% { transform: scale(1); opacity: 1; }\n}\n\n/* ========== 输入区 ========== */\n.csk-input-area {\n padding: 10px 12px 14px;\n background: #fff;\n border-top: 1px solid var(--csk-border);\n flex-shrink: 0;\n}\n.csk-input-wrap {\n display: flex;\n align-items: flex-end;\n gap: 8px;\n background: var(--csk-bg-app);\n border: 1px solid var(--csk-border);\n border-radius: 14px;\n padding: 6px 6px 6px 14px;\n transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;\n}\n.csk-input-wrap--focus {\n border-color: var(--csk-primary);\n background: #fff;\n box-shadow: 0 0 0 3px rgba(var(--csk-primary-rgb), 0.12);\n}\n.csk-input {\n flex: 1;\n border: none;\n background: transparent;\n padding: 8px 0;\n font-size: 14px;\n outline: none;\n font-family: inherit;\n resize: none;\n min-height: 22px;\n max-height: 120px;\n line-height: 1.5;\n color: #1F2937;\n}\n.csk-input::placeholder { color: #9CA3AF; }\n.csk-root .csk-input:focus-visible { outline: none; }\n.csk-send-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 36px;\n height: 36px;\n min-width: 36px;\n border: none;\n border-radius: 10px;\n background: var(--csk-bg-user);\n color: #fff;\n cursor: pointer;\n transition: transform 0.18s, box-shadow 0.18s, opacity 0.18s;\n box-shadow: 0 3px 10px rgba(var(--csk-primary-rgb), 0.3);\n}\n.csk-send-btn:hover:not(:disabled) {\n transform: translateY(-1px);\n box-shadow: 0 5px 14px rgba(var(--csk-primary-rgb), 0.4);\n}\n.csk-send-btn:active:not(:disabled) { transform: scale(0.92); }\n.csk-send-btn:disabled {\n background: #D1D5DB;\n box-shadow: none;\n cursor: not-allowed;\n opacity: 0.7;\n}\n.csk-send-btn svg { width: 18px; height: 18px; }\n\n/* ========== 保密声明脚注 ========== */\n.csk-disclaimer {\n margin-top: 8px;\n padding: 6px 8px 4px;\n font-size: 10px;\n color: #9CA3AF;\n line-height: 1.5;\n user-select: none;\n}\n.csk-disclaimer__title {\n font-weight: 600;\n margin-bottom: 2px;\n color: #9CA3AF;\n}\n.csk-dark .csk-disclaimer { color: #6B7280; }\n.csk-dark .csk-disclaimer__title { color: #6B7280; }\n\n/* ========== 新对话按钮 ========== */\n.csk-clear-btn {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 5px 12px;\n border: 1px solid var(--csk-border);\n border-radius: 999px;\n background: #fff;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n margin: 0 auto 8px;\n transition: all 0.15s;\n font-family: inherit;\n}\n.csk-clear-btn:hover {\n background: #FEF2F2;\n border-color: #FCA5A5;\n color: #DC2626;\n}\n\n/* ========== P1: 知识库分类下拉 ========== */\n.csk-category-bar {\n display: flex;\n align-items: center;\n padding: 8px 12px;\n border-top: 1px solid var(--csk-border);\n background: #FBFBFC;\n gap: 8px;\n flex-shrink: 0;\n}\n.csk-category-bar__label {\n font-size: 13px;\n white-space: nowrap;\n}\n.csk-category-select {\n flex: 1;\n padding: 6px 28px 6px 10px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n font-size: 12.5px;\n color: #374151;\n background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 9px center;\n appearance: none;\n -webkit-appearance: none;\n outline: none;\n cursor: pointer;\n font-family: inherit;\n transition: border-color 0.2s, box-shadow 0.2s;\n max-width: 220px;\n}\n.csk-category-select:focus {\n border-color: var(--csk-primary);\n box-shadow: 0 0 0 3px rgba(var(--csk-primary-rgb), 0.12);\n}\n\n/* ========== P1: RAG 引用来源卡片 ========== */\n.csk-sources {\n margin-top: 6px;\n border: 1px solid var(--csk-border);\n border-radius: 12px;\n overflow: hidden;\n font-size: 12px;\n max-width: 100%;\n background: #FAFBFC;\n}\n.csk-sources__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 6px 10px;\n background: #F3F4F7;\n cursor: pointer;\n user-select: none;\n transition: background 0.15s;\n}\n.csk-sources__header:hover { background: #ECEEF2; }\n.csk-sources__title {\n display: flex;\n align-items: center;\n gap: 5px;\n font-weight: 500;\n color: #374151;\n}\n.csk-sources__arrow {\n transition: transform 0.2s;\n color: #9CA3AF;\n font-size: 10px;\n}\n.csk-sources--collapsed .csk-sources__arrow { transform: rotate(-90deg); }\n.csk-sources__body {\n border-top: 1px solid var(--csk-border);\n padding: 0;\n}\n.csk-sources--collapsed .csk-sources__body { display: none; }\n.csk-source-item {\n padding: 6px 10px;\n border-bottom: 1px solid #F0F1F4;\n transition: background 0.15s;\n}\n.csk-source-item:last-child { border-bottom: none; }\n.csk-source-item:hover { background: #fff; }\n.csk-source-item__name {\n font-weight: 500;\n color: #1F2937;\n margin-bottom: 2px;\n}\n.csk-source-item__snippet {\n color: #6B7280;\n line-height: 1.5;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n.csk-source-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n\n/* ========== P1: Markdown 渲染样式 ========== */\n.csk-msg--ai .csk-msg__bubble .csk-md-p { margin: 0 0 8px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-p:last-child { margin-bottom: 0; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h1,\n.csk-msg--ai .csk-msg__bubble .csk-md-h2,\n.csk-msg--ai .csk-msg__bubble .csk-md-h3,\n.csk-msg--ai .csk-msg__bubble .csk-md-h4,\n.csk-msg--ai .csk-msg__bubble .csk-md-h5,\n.csk-msg--ai .csk-msg__bubble .csk-md-h6 {\n margin: 14px 0 6px;\n font-weight: 600;\n line-height: 1.3;\n color: #111827;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1 { font-size: 20px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h2 { font-size: 17px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h3 { font-size: 15px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h4 { font-size: 14px; }\n\n.csk-md-code-block {\n position: relative;\n background: #1E293B;\n color: #E2E8F0;\n padding: 12px 14px;\n border-radius: 10px;\n overflow-x: auto;\n margin: 8px 0;\n font-size: 13px;\n line-height: 1.55;\n font-family: 'SF Mono', 'Consolas', 'Menlo', 'Monaco', monospace;\n}\n.csk-md-code-block code {\n background: none;\n padding: 0;\n border-radius: 0;\n font-size: inherit;\n color: inherit;\n}\n.csk-md-inline-code {\n background: rgba(var(--csk-primary-rgb), 0.1);\n color: var(--csk-primary);\n padding: 1px 6px;\n border-radius: 5px;\n font-size: 13px;\n font-family: 'SF Mono', 'Consolas', 'Menlo', 'Monaco', monospace;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol {\n padding-left: 22px;\n margin: 6px 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul li,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol li { margin-bottom: 4px; }\n.csk-md-blockquote {\n border-left: 3px solid var(--csk-primary);\n padding: 2px 12px;\n margin: 8px 0;\n color: #6B7280;\n background: rgba(var(--csk-primary-rgb), 0.05);\n border-radius: 0 6px 6px 0;\n}\n.csk-md-link {\n color: var(--csk-primary);\n text-decoration: none;\n border-bottom: 1px solid rgba(var(--csk-primary-rgb), 0.3);\n transition: border-color 0.15s;\n}\n.csk-md-link:hover { border-bottom-color: var(--csk-primary); }\n.csk-md-hr {\n border: none;\n border-top: 1px solid var(--csk-border);\n margin: 12px 0;\n}\n.csk-md-table-wrap {\n max-width: 100%;\n overflow-x: auto;\n margin: 10px 0;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n}\n.csk-md-table {\n width: 100%;\n min-width: 360px;\n border-collapse: collapse;\n font-size: 12.5px;\n line-height: 1.5;\n}\n.csk-md-table th,\n.csk-md-table td {\n padding: 7px 9px;\n border-right: 1px solid var(--csk-border);\n border-bottom: 1px solid var(--csk-border);\n text-align: left;\n vertical-align: top;\n}\n.csk-md-table th:last-child,\n.csk-md-table td:last-child { border-right: none; }\n.csk-md-table tbody tr:last-child td { border-bottom: none; }\n.csk-md-table th {\n background: rgba(var(--csk-primary-rgb), 0.07);\n color: #374151;\n font-weight: 600;\n}\n.csk-md-table tbody tr:nth-child(even) {\n background: rgba(148, 163, 184, 0.06);\n}\n.csk-md-table .csk-md-align-left { text-align: left; }\n.csk-md-table .csk-md-align-center { text-align: center; }\n.csk-md-table .csk-md-align-right { text-align: right; }\n\n/* ========== P2: 会话管理面板 ========== */\n.csk-history-panel {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: #fff;\n z-index: 10;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n animation: csk-slide-in 0.24s ease;\n}\n.csk-history-panel--hidden { display: none; }\n@keyframes csk-slide-in {\n from { transform: translateX(100%); opacity: 0.4; }\n to { transform: translateX(0); opacity: 1; }\n}\n.csk-history-panel__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 14px 16px;\n border-bottom: 1px solid var(--csk-border);\n background: var(--csk-bg-app);\n flex-shrink: 0;\n}\n.csk-history-panel__title {\n font-size: 14px;\n font-weight: 600;\n color: #1F2937;\n}\n.csk-history-panel__back {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 5px 12px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n background: #fff;\n color: #374151;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s;\n font-family: inherit;\n}\n.csk-history-panel__back:hover { background: #F3F4F6; }\n.csk-history-panel__list {\n flex: 1;\n overflow-y: auto;\n padding: 10px;\n}\n.csk-history-panel__list::-webkit-scrollbar { width: 5px; }\n.csk-history-panel__list::-webkit-scrollbar-thumb { background: #E5E7EB; border-radius: 2px; }\n.csk-history-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 11px 12px;\n border-radius: 10px;\n cursor: pointer;\n transition: background 0.15s;\n margin-bottom: 5px;\n border: 1px solid transparent;\n}\n.csk-history-item:hover { background: #F3F4F6; }\n.csk-history-item--active {\n background: rgba(var(--csk-primary-rgb), 0.08);\n border-color: rgba(var(--csk-primary-rgb), 0.2);\n}\n.csk-history-item--active:hover { background: rgba(var(--csk-primary-rgb), 0.12); }\n.csk-history-item__info { flex: 1; min-width: 0; }\n.csk-history-item__id {\n font-size: 13px;\n font-weight: 500;\n color: #1F2937;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-history-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 3px;\n}\n.csk-history-item__actions {\n display: flex;\n gap: 4px;\n margin-left: 8px;\n opacity: 0;\n transition: opacity 0.15s;\n}\n.csk-history-item:hover .csk-history-item__actions { opacity: 1; }\n.csk-history-action {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: none;\n border-radius: 7px;\n cursor: pointer;\n font-size: 12px;\n transition: all 0.15s;\n}\n.csk-history-action--export { background: #EFF6FF; color: #2563EB; }\n.csk-history-action--export:hover { background: #DBEAFE; }\n.csk-history-action--delete { background: #FEF2F2; color: #DC2626; }\n.csk-history-action--delete:hover { background: #FEE2E2; }\n.csk-history-panel__empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 48px 20px;\n color: #9CA3AF;\n font-size: 13px;\n text-align: center;\n}\n.csk-history-panel__empty-icon {\n font-size: 34px;\n margin-bottom: 10px;\n opacity: 0.5;\n}\n.csk-history-panel__loading {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n color: #9CA3AF;\n font-size: 13px;\n}\n\n/* ========== 快捷问题芯片 ========== */\n.csk-quick-replies {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n justify-content: center;\n margin-top: 18px;\n max-width: 320px;\n}\n.csk-quick-reply {\n border: 1px solid var(--csk-border);\n background: #fff;\n color: #374151;\n font-size: 12.5px;\n padding: 7px 13px;\n border-radius: 999px;\n cursor: pointer;\n font-family: inherit;\n line-height: 1.3;\n transition: all 0.18s ease;\n max-width: 100%;\n}\n.csk-quick-reply:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.06);\n transform: translateY(-1px);\n}\n.csk-quick-reply:active { transform: scale(0.96); }\n\n/* ========== 推荐问题(suggest-message-list) ========== */\n.csk-suggestions {\n margin-top: 6px;\n padding: 4px 0 0 0;\n}\n.csk-suggestions__list {\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n}\n.csk-suggestion-item {\n border: 1px solid var(--csk-border);\n background: #fff;\n color: #374151;\n font-size: 12px;\n padding: 4px 10px;\n border-radius: 999px;\n cursor: pointer;\n font-family: inherit;\n line-height: 1.3;\n transition: all 0.18s ease;\n max-width: 100%;\n text-align: left;\n}\n.csk-suggestion-item:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.06);\n transform: translateY(-1px);\n}\n.csk-suggestion-item:active { transform: scale(0.96); }\n\n/* ========== AI 消息操作条 ========== */\n.csk-msg__actions {\n display: flex;\n gap: 2px;\n padding: 0 2px;\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n.csk-msg--ai:hover .csk-msg__actions { opacity: 1; }\n.csk-msg--streaming .csk-msg__actions { display: none; }\n.csk-action-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: transparent;\n color: #9CA3AF;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.csk-action-btn:hover {\n background: #F3F4F6;\n color: #374151;\n}\n.csk-action-btn--done { color: #10B981; }\n.csk-action-btn:active { transform: scale(0.9); }\n\n/* ========== 流式打字光标 ========== */\n.csk-caret {\n display: inline-block;\n width: 7px;\n height: 15px;\n margin-left: 2px;\n vertical-align: text-bottom;\n background: var(--csk-primary);\n border-radius: 1px;\n animation: csk-caret-blink 1s step-end infinite;\n}\n@keyframes csk-caret-blink {\n 0%, 50% { opacity: 1; }\n 51%, 100% { opacity: 0; }\n}\n\n/* ========== 代码块复制按钮 ========== */\n.csk-md-code-copy {\n position: absolute;\n top: 8px;\n right: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: rgba(255, 255, 255, 0.12);\n color: #CBD5E1;\n border-radius: 6px;\n cursor: pointer;\n opacity: 0;\n transition: all 0.15s ease;\n}\n.csk-md-code-block:hover .csk-md-code-copy { opacity: 1; }\n.csk-md-code-copy:hover { background: rgba(255, 255, 255, 0.22); color: #fff; }\n.csk-md-code-copy:active { transform: scale(0.9); }\n\n/* ========== 新消息提示按钮 ========== */\n.csk-newmsg {\n position: absolute;\n bottom: 82px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 5;\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 7px 14px;\n border: none;\n background: var(--csk-primary);\n color: #fff;\n font-size: 12px;\n font-family: inherit;\n border-radius: 999px;\n cursor: pointer;\n box-shadow: 0 4px 14px rgba(var(--csk-primary-rgb), 0.38);\n transition: transform 0.2s ease, box-shadow 0.2s ease;\n animation: csk-msg-in 0.25s ease;\n white-space: nowrap;\n}\n.csk-newmsg:hover { transform: translateX(-50%) translateY(-1px); box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.48); }\n.csk-newmsg:active { transform: translateX(-50%) scale(0.95); }\n.csk-newmsg--hidden { display: none; }\n\n/* ========== 发送按钮停止态 ========== */\n.csk-send-btn--stop {\n background: #EF4444 !important;\n box-shadow: 0 3px 10px rgba(239, 68, 68, 0.35) !important;\n}\n.csk-send-btn--stop:hover:not(:disabled) {\n box-shadow: 0 5px 14px rgba(239, 68, 68, 0.45) !important;\n}\n\n/* ========== 窗口缩放拖拽手柄 ========== */\n.csk-resize-handle {\n position: absolute;\n right: 4px;\n bottom: 4px;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: flex-end;\n justify-content: flex-end;\n cursor: nwse-resize;\n z-index: 5;\n user-select: none;\n -webkit-user-select: none;\n /* 圆形半透明背景,与整体圆润风格一致 */\n border-radius: 50%;\n background: transparent;\n transition: background 0.2s ease;\n}\n.csk-resize-handle:hover {\n background: rgba(var(--csk-primary-rgb), 0.08);\n}\n\n/* 三斜线抓手 — 纯 CSS 绘制,用两条间距微调的线,视觉上是三条 */\n.csk-resize-grip {\n display: block;\n width: 10px;\n height: 10px;\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n #C8CCD2 38%, #C8CCD2 42%,\n transparent 42%, transparent 54%,\n #C8CCD2 54%, #C8CCD2 58%,\n transparent 58%, transparent 70%,\n #C8CCD2 70%, #C8CCD2 74%,\n transparent 74%\n );\n transition: background 0.2s ease;\n border-radius: 2px;\n}\n/* hover 时线条变为主色 */\n.csk-resize-handle:hover .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n var(--csk-primary) 38%, var(--csk-primary) 42%,\n transparent 42%, transparent 54%,\n var(--csk-primary) 54%, var(--csk-primary) 58%,\n transparent 58%, transparent 70%,\n var(--csk-primary) 70%, var(--csk-primary) 74%,\n transparent 74%\n );\n}\n\n/* 暗色模式 */\n.csk-dark .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n #5B6070 38%, #5B6070 42%,\n transparent 42%, transparent 54%,\n #5B6070 54%, #5B6070 58%,\n transparent 58%, transparent 70%,\n #5B6070 70%, #5B6070 74%,\n transparent 74%\n );\n}\n.csk-dark .csk-resize-handle:hover .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n var(--csk-primary-light) 38%, var(--csk-primary-light) 42%,\n transparent 42%, transparent 54%,\n var(--csk-primary-light) 54%, var(--csk-primary-light) 58%,\n transparent 58%, transparent 70%,\n var(--csk-primary-light) 70%, var(--csk-primary-light) 74%,\n transparent 74%\n );\n}\n\n/* 缩放拖拽中:禁用过渡动画 + 全局光标 */\n.csk-window--resizing {\n transition: none !important;\n user-select: none;\n}\n.csk-window--resizing * { cursor: nwse-resize !important; }\n\n/* ========== 暗色模式 ========== */\n.csk-root.csk-dark {\n --csk-bg-ai: #1E1E2E;\n --csk-text-ai: #E2E8F0;\n --csk-border: #3B3B52;\n --csk-bg-app: #141421;\n color: #E2E8F0;\n}\n.csk-dark .csk-window {\n background: #1A1A2E;\n box-shadow: 0 12px 48px rgba(0, 0, 0, 0.4), 0 2px 8px rgba(0, 0, 0, 0.2);\n}\n.csk-dark .csk-watermark {\n opacity: 1;\n}\n.csk-dark .csk-header::after { background: linear-gradient(to bottom, rgba(0,0,0,0.12), transparent); }\n.csk-dark .csk-msg__avatar--ai {\n background: var(--csk-bg-ai);\n color: var(--csk-primary);\n border-color: var(--csk-border);\n}\n.csk-dark .csk-input-area { background: #1A1A2E; border-top-color: var(--csk-border); }\n.csk-dark .csk-input-wrap { background: var(--csk-bg-app); border-color: var(--csk-border); }\n.csk-dark .csk-input-wrap--focus { background: #1A1A2E; border-color: var(--csk-primary); }\n.csk-dark .csk-input { color: #E2E8F0; }\n.csk-dark .csk-loading__avatar { background: var(--csk-bg-ai); border-color: var(--csk-border); }\n.csk-dark .csk-loading__bubble { background: var(--csk-bg-ai); border-color: var(--csk-border); }\n.csk-dark .csk-loading__dot { background: #6B7280; }\n.csk-dark .csk-category-bar { background: #1A1A2E; border-top-color: var(--csk-border); }\n.csk-dark .csk-category-select { background-color: var(--csk-bg-app); border-color: var(--csk-border); color: #E2E8F0; }\n.csk-dark .csk-sources { background: #1E1E2E; border-color: var(--csk-border); }\n.csk-dark .csk-sources__header { background: #25253A; }\n.csk-dark .csk-sources__header:hover { background: #2D2D48; }\n.csk-dark .csk-source-item:hover { background: var(--csk-bg-ai); }\n.csk-dark .csk-source-item__name { color: #E2E8F0; }\n.csk-dark .csk-source-item__meta { color: #6B7280; }\n.csk-dark .csk-history-panel { background: #1A1A2E; }\n.csk-dark .csk-history-panel__header { background: var(--csk-bg-app); border-bottom-color: var(--csk-border); }\n.csk-dark .csk-history-panel__back { background: var(--csk-bg-app); border-color: var(--csk-border); color: #E2E8F0; }\n.csk-dark .csk-history-panel__back:hover { background: #2D2D48; }\n.csk-dark .csk-history-item:hover { background: #25253A; }\n.csk-dark .csk-history-item__id { color: #E2E8F0; }\n.csk-dark .csk-history-item__meta { color: #6B7280; }\n.csk-dark .csk-history-item--active { background: rgba(var(--csk-primary-rgb), 0.15); }\n.csk-dark .csk-history-item--active:hover { background: rgba(var(--csk-primary-rgb), 0.22); }\n.csk-dark .csk-action-btn:hover { background: #2D2D48; color: #E2E8F0; }\n.csk-dark .csk-clear-btn { background: var(--csk-bg-app); border-color: var(--csk-border); color: #9CA3AF; }\n.csk-dark .csk-clear-btn:hover { background: #3B1A1A; border-color: #7F1D1D; color: #FCA5A5; }\n.csk-dark .csk-md-code-block { background: #0F0F1A; }\n.csk-dark .csk-md-blockquote { background: rgba(var(--csk-primary-rgb), 0.08); }\n.csk-dark .csk-md-link { color: var(--csk-primary-light); }\n.csk-dark .csk-md-table th { background: rgba(var(--csk-primary-rgb), 0.14); color: #E2E8F0; }\n.csk-dark .csk-md-table tbody tr:nth-child(even) { background: rgba(148, 163, 184, 0.05); }\n.csk-dark .csk-msg--ai .csk-msg__bubble { background: var(--csk-bg-ai); color: var(--csk-text-ai); border-color: var(--csk-border); }\n.csk-dark .csk-welcome__title { color: #E2E8F0; }\n.csk-dark .csk-welcome__desc { color: #6B7280; }\n.csk-dark .csk-quick-reply { background: var(--csk-bg-app); border-color: var(--csk-border); color: #CBD5E1; }\n.csk-dark .csk-quick-reply:hover { background: rgba(var(--csk-primary-rgb), 0.12); border-color: var(--csk-primary); color: var(--csk-primary-light); }\n.csk-dark .csk-suggestion-item { background: var(--csk-bg-app); border-color: var(--csk-border); color: #CBD5E1; }\n.csk-dark .csk-suggestion-item:hover { background: rgba(var(--csk-primary-rgb), 0.12); border-color: var(--csk-primary); color: var(--csk-primary-light); }\n.csk-dark .csk-teaser { background: #2D2D48; color: #E2E8F0; box-shadow: 0 4px 20px rgba(0,0,0,0.35); }\n.csk-dark .csk-teaser::after { border-top-color: #2D2D48; }\n.csk-dark .csk-teaser__close { color: #6B7280; }\n.csk-dark .csk-teaser__close:hover { color: #9CA3AF; }\n.csk-dark .csk-feedback-btn { background: rgba(var(--csk-primary-rgb), 0.1); color: #9CA3AF; }\n.csk-dark .csk-feedback-btn:hover { background: rgba(var(--csk-primary-rgb), 0.2); color: var(--csk-primary-light); }\n.csk-dark .csk-feedback-btn--active { background: rgba(var(--csk-primary-rgb), 0.28); color: var(--csk-primary-light); }\n.csk-dark .csk-history-panel__search-wrap { background: var(--csk-bg-app); border-color: var(--csk-border); }\n.csk-dark .csk-history-panel__search-wrap:focus-within { border-color: var(--csk-primary); }\n.csk-dark .csk-history-panel__search { color: #E2E8F0; }\n.csk-dark .csk-launcher__badge { box-shadow: 0 0 0 2px #1A1A2E; }\n.csk-dark .csk-welcome__avatar { box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.25); }\n.csk-dark .csk-header__avatar { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.15); background: rgba(255, 255, 255, 0.1); }\n.csk-dark .csk-role-select option {\n background: #1A1A2E;\n color: #E2E8F0;\n}\n\n/* Launcher 拖拽态:微放大 + 阴影加深 */\n.csk-launcher--dragging {\n cursor: grabbing !important;\n transform: scale(1.1) !important;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.14),\n 0 12px 32px rgba(0, 0, 0, 0.18),\n 0 14px 40px rgba(236, 72, 153, 0.36),\n 0 0 56px rgba(236, 72, 153, 0.18) !important;\n}\n/* 拖拽中隐藏未读徽章 */\n.csk-launcher--dragging .csk-launcher__badge { display: none !important; }\n/* 吸附过渡动画(释放时的缓动) */\n.csk-launcher--snap {\n transition: left 0.3s ease-out, right 0.3s ease-out, bottom 0.3s ease-out !important;\n}\n\n/* ========== Launcher 未读徽章 ========== */\n.csk-launcher__badge {\n position: absolute;\n top: -2px;\n right: -2px;\n width: 16px;\n height: 16px;\n border-radius: 50%;\n background: #EF4444;\n border: 2px solid #fff;\n box-shadow: 0 0 0 2px #fff;\n animation: csk-badge-in 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);\n pointer-events: none;\n}\n.csk-launcher__badge--hidden { display: none; }\n@keyframes csk-badge-in {\n from { transform: scale(0); }\n to { transform: scale(1); }\n}\n\n/* ========== Launcher 提示气泡 ========== */\n.csk-teaser {\n position: fixed;\n bottom: 90px;\n z-index: 9997;\n max-width: 240px;\n padding: 10px 14px;\n background: #fff;\n color: #1F2937;\n font-size: 13px;\n line-height: 1.5;\n border-radius: 12px;\n box-shadow: 0 4px 20px rgba(15, 23, 42, 0.15);\n animation: csk-teaser-in 0.35s cubic-bezier(0.22, 1, 0.36, 1);\n cursor: pointer;\n user-select: none;\n}\n.csk-teaser--right { right: 24px; }\n.csk-teaser--left { left: 24px; }\n.csk-teaser::after {\n content: '';\n position: absolute;\n bottom: -6px;\n right: 28px;\n width: 12px;\n height: 12px;\n background: inherit;\n border-radius: 2px;\n transform: rotate(45deg);\n box-shadow: 2px 2px 4px rgba(15, 23, 42, 0.08);\n}\n.csk-teaser--left::after { right: auto; left: 28px; }\n.csk-teaser__close {\n position: absolute;\n top: 4px;\n right: 6px;\n background: none;\n border: none;\n font-size: 16px;\n color: #9CA3AF;\n cursor: pointer;\n padding: 2px 4px;\n line-height: 1;\n border-radius: 4px;\n}\n.csk-teaser__close:hover { color: #374151; }\n.csk-teaser--hidden { display: none; }\n@keyframes csk-teaser-in {\n from { opacity: 0; transform: translateY(8px) scale(0.95); }\n to { opacity: 1; transform: translateY(0) scale(1); }\n}\n\n/* ========== 消息反馈按钮(👍 / 👎) ========== */\n.csk-feedback-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: rgba(var(--csk-primary-rgb), 0.08);\n color: #9CA3AF;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n padding: 0;\n}\n.csk-feedback-btn:hover { background: rgba(var(--csk-primary-rgb), 0.18); color: var(--csk-primary); }\n.csk-feedback-btn--active {\n background: rgba(var(--csk-primary-rgb), 0.28);\n color: var(--csk-primary);\n}\n.csk-feedback-btn--active.down { background: #FEF2F2; color: #EF4444; }\n.csk-feedback-btn:active { transform: scale(0.9); }\n.csk-msg--streaming .csk-feedback-btn { display: none; }\n\n/* ========== 点踩原因选择面板 ========== */\n.csk-feedback-reason {\n position: relative;\n margin-top: 6px;\n padding: 10px 12px;\n background: var(--csk-bg);\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n animation: cskFadeIn 0.15s ease;\n}\n.csk-feedback-reason__title {\n font-size: 12px;\n color: var(--csk-text-muted);\n margin-bottom: 8px;\n}\n.csk-feedback-reason__options {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-bottom: 8px;\n}\n.csk-feedback-reason__btn {\n padding: 4px 10px;\n font-size: 12px;\n border: 1px solid var(--csk-border);\n border-radius: 14px;\n background: var(--csk-bg);\n color: var(--csk-text);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.csk-feedback-reason__btn:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.08);\n}\n.csk-feedback-reason__comment-row {\n display: flex;\n gap: 6px;\n}\n.csk-feedback-reason__comment {\n flex: 1;\n padding: 4px 8px;\n font-size: 12px;\n border: 1px solid var(--csk-border);\n border-radius: 6px;\n background: var(--csk-bg);\n color: var(--csk-text);\n outline: none;\n}\n.csk-feedback-reason__comment:focus { border-color: var(--csk-primary); }\n.csk-feedback-reason__submit {\n padding: 4px 10px;\n font-size: 12px;\n border: none;\n border-radius: 6px;\n background: var(--csk-primary);\n color: #fff;\n cursor: pointer;\n white-space: nowrap;\n}\n.csk-feedback-reason__close {\n position: absolute;\n top: 8px;\n right: 8px;\n width: 18px;\n height: 18px;\n border: none;\n background: none;\n color: var(--csk-text-muted);\n cursor: pointer;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n}\n.csk-feedback-reason__close:hover { color: var(--csk-text); background: var(--csk-hover); }\n.csk-dark .csk-feedback-reason { background: var(--csk-bg); border-color: var(--csk-border); }\n.csk-dark .csk-feedback-reason__btn {\n background: rgba(255,255,255,0.06);\n border-color: var(--csk-border);\n color: var(--csk-text);\n}\n.csk-dark .csk-feedback-reason__btn:hover {\n border-color: var(--csk-primary-light);\n color: var(--csk-primary-light);\n background: rgba(var(--csk-primary-rgb), 0.15);\n}\n.csk-dark .csk-feedback-reason__comment {\n background: rgba(255,255,255,0.06);\n border-color: var(--csk-border);\n color: var(--csk-text);\n}\n\n/* ========== 历史会话搜索框 ========== */\n.csk-history-panel__search-wrap {\n padding: 8px 10px;\n border-bottom: 1px solid var(--csk-border);\n flex-shrink: 0;\n}\n.csk-history-panel__search-wrap:focus-within {\n border-bottom-color: var(--csk-primary);\n}\n.csk-history-panel__search {\n width: 100%;\n padding: 7px 10px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n font-size: 12.5px;\n font-family: inherit;\n color: #1F2937;\n background: var(--csk-bg-app);\n outline: none;\n transition: border-color 0.2s;\n}\n.csk-history-panel__search:focus { border-color: var(--csk-primary); }\n.csk-history-panel__search::placeholder { color: #9CA3AF; }\n\n/* ========== a11y 焦点指示 ========== */\n.csk-root :focus-visible {\n outline: 2px solid var(--csk-primary);\n outline-offset: 2px;\n}\n.csk-root button:focus-visible {\n outline: 2px solid var(--csk-primary);\n outline-offset: 2px;\n border-radius: inherit;\n}\n/* 弹窗打开时隐藏 launcher 上的焦点环 */\n.csk-launcher:focus-visible {\n outline: none;\n border-color: rgba(255, 255, 255, 0.75);\n box-shadow:\n 0 1px 2px rgba(0, 0, 0, 0.06),\n 0 4px 16px rgba(0, 0, 0, 0.10),\n 0 6px 24px rgba(var(--csk-primary-rgb), 0.28),\n 0 0 48px rgba(var(--csk-primary-rgb), 0.12),\n 0 0 0 4px rgba(var(--csk-primary-rgb), 0.3);\n}\n\n/* ========== a11y aria-live 播报区(视觉隐藏) ========== */\n.csk-sr-only {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0,0,0,0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n\n/* ========== 会话分组标题 ========== */\n.csk-history-group {\n margin-bottom: 4px;\n}\n.csk-history-group__label {\n font-size: 11px;\n font-weight: 600;\n color: #9CA3AF;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n padding: 8px 12px 4px;\n user-select: none;\n}\n.csk-dark .csk-history-group__label { color: #6B7280; }\n\n/* ========== 移动端适配 ========== */\n@media (max-width: 480px) {\n .csk-window {\n width: 100vw !important;\n height: 100vh !important;\n max-height: 100vh;\n bottom: 0 !important;\n right: 0 !important;\n left: 0 !important;\n border-radius: 0;\n }\n .csk-resize-handle { display: none !important; }\n .csk-window--hidden { transform: translateY(100%); }\n /* 移动端默认位置,仅在未被 JS 拖拽覆盖时生效 */\n .csk-launcher:not([style*="bottom"]) { bottom: 20px; }\n .csk-launcher--right:not([style*="bottom"]) { right: 20px; }\n .csk-launcher--left:not([style*="bottom"]) { left: 20px; }\n}\n`}(e),document.head.appendChild(S))}function M(){return"undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const n=16*Math.random()|0;return("x"===e?n:3&n|8).toString(16)})}function F(e){const n={"&":"&","<":"<",">":">",'"':""","'":"'"};return e.replace(/[&<>"']/g,e=>n[e]||e)}function z(e){const n=new Date(e);return`${String(n.getHours()).padStart(2,"0")}:${String(n.getMinutes()).padStart(2,"0")}`}function D(){return Date.now()}const T='';function B(e,n){const t=document.createElement("div");t.id="csk-launcher",t.className="csk-launcher csk-launcher--"+("left-bottom"===e.position?"left":"right"),t.setAttribute("title",e.title),t.setAttribute("aria-label",e.title),t.setAttribute("role","button"),t.setAttribute("tabindex","0"),t.innerHTML=e.launcherIcon;const r=document.createElement("div");r.className="csk-launcher__badge csk-launcher__badge--hidden",t.appendChild(r);const s=function(e,n){let t=null;return function(...r){null!==t&&clearTimeout(t),t=setTimeout(()=>{e.apply(this,r),t=null},n)}}(n,300);return t.addEventListener("click",s),t.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),s())}),t}function q(e){const n=document.createElement("div");if(n.id="csk-window",n.className=`csk-root csk-window csk-window--${"left-bottom"===e.position?"left":"right"} csk-window--hidden${"dark"===e.theme?" csk-dark":""}`,n.setAttribute("role","dialog"),n.setAttribute("aria-label",e.title),n.setAttribute("aria-modal","false"),e.watermark){const t=document.createElement("div");t.className="csk-watermark";const r=function(e){const n=document.createElement("canvas"),t=n.getContext("2d");if(!t)return"";const r=new Date,s=`${r.getFullYear()}-${String(r.getMonth()+1).padStart(2,"0")}-${String(r.getDate()).padStart(2,"0")} ${String(r.getHours()).padStart(2,"0")}:${String(r.getMinutes()).padStart(2,"0")}`,o=e.watermark?`${e.watermark} ${s}`:s;n.width=280,n.height=160;const a="dark"===e.theme;return t.fillStyle=a?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.06)",t.font='13px -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif',t.textAlign="center",t.textBaseline="middle",t.save(),t.translate(140,80),t.rotate(-22*Math.PI/180),t.fillText(o,0,0),t.restore(),n.toDataURL("image/png")}(e);r&&(t.style.backgroundImage=`url(${r})`),n.appendChild(t)}const t=document.createElement("div");t.className="csk-header";const r=document.createElement("div");r.className="csk-header__left";const s=document.createElement("div");s.className="csk-header__avatar",s.innerHTML=T;const a=document.createElement("div");a.className="csk-header__info";const i=document.createElement("span");i.className="csk-header__title",i.textContent=e.title;const c=document.createElement("span");c.className="csk-header__status",c.innerHTML=`${o("status_online")}`,a.appendChild(i),a.appendChild(c),r.appendChild(s),r.appendChild(a);let l=null;const d=e.roles;if(d&&d.length>1){l=document.createElement("select"),l.className="csk-role-select",l.setAttribute("aria-label",o("role_selector_label"));for(const n of d){const t=document.createElement("option");t.value=String(n.id),t.textContent=n.name||String(n.id),String(n.id)===String(e.integrateId)&&(t.selected=!0),l.appendChild(t)}l.addEventListener("change",()=>{const e=l.value;n.dispatchEvent(new CustomEvent("csk:roleChange",{detail:{roleId:e}}))});const s=document.createElement("div");s.className="csk-role-select-wrap",s.appendChild(l),t.appendChild(r),t.appendChild(s)}else t.appendChild(r);const p=document.createElement("div");p.className="csk-header__actions";const u=document.createElement("button");u.className="csk-history-btn",u.setAttribute("title",o("history_title")),u.innerHTML='';const m=document.createElement("button");m.className="csk-header__btn csk-header__btn--minimize",m.setAttribute("title",o("minimize")),m.innerHTML='',m.addEventListener("click",()=>{n.classList.add("csk-window--hidden")});const k=document.createElement("button");k.className="csk-header__btn csk-header__btn--close",k.setAttribute("title",o("close")),k.innerHTML='',k.addEventListener("click",()=>{n.classList.add("csk-window--hidden")}),p.appendChild(u),p.appendChild(m),p.appendChild(k),t.appendChild(p);const g=document.createElement("div");g.id="csk-messages",g.className="csk-messages";const h=document.createElement("div");if(h.className="csk-welcome",h.innerHTML=`\n
${T}
\n
${o("welcome_title")}
\n
${o("welcome_desc")}
\n `,e.quickReplies.length>0){const t=document.createElement("div");t.className="csk-quick-replies";for(const r of e.quickReplies){const e=document.createElement("button");e.type="button",e.className="csk-quick-reply",e.textContent=r,e.addEventListener("click",()=>{n.dispatchEvent(new CustomEvent("csk:quickReply",{detail:{text:r}}))}),t.appendChild(e)}h.appendChild(t)}g.appendChild(h);const b=document.createElement("button");b.type="button",b.className="csk-newmsg csk-newmsg--hidden",b.innerHTML=`\n \n ${o("new_message")}\n `,n.appendChild(b);const f=document.createElement("div");f.className="csk-history-panel csk-history-panel--hidden",f.innerHTML=`\n
\n ${o("history_title")}\n \n
\n
\n \n
\n
\n `,g.appendChild(f);const y=f.querySelector("#csk-history-back");y&&y.addEventListener("click",()=>{f.classList.add("csk-history-panel--hidden")}),u.addEventListener("click",e=>{e.stopPropagation();const t=f.classList.contains("csk-history-panel--hidden");f.classList.toggle("csk-history-panel--hidden"),t&&n.dispatchEvent(new CustomEvent("csk:loadHistory"))});let v=null;if(e.showCategorySwitch){const e=document.createElement("div");e.className="csk-category-bar";const r=document.createElement("span");r.className="csk-category-bar__label",r.textContent="📚",v=document.createElement("select"),v.id="csk-category-select",v.className="csk-category-select",v.innerHTML=``,v.addEventListener("change",()=>{const e=v.value;n.dispatchEvent(new CustomEvent("csk:categoryChange",{detail:{categoryId:e?Number(e):void 0}}))}),e.appendChild(r),e.appendChild(v),n.appendChild(t),n.appendChild(g),n.appendChild(e)}else n.appendChild(t),n.appendChild(g);const x=document.createElement("div");x.className="csk-input-area";const w=document.createElement("div");w.className="csk-input-wrap";const _=document.createElement("textarea");_.id="csk-input",_.className="csk-input",_.setAttribute("placeholder",o("placeholder")),_.setAttribute("rows","1"),_.setAttribute("autofocus","");const E=document.createElement("button");E.id="csk-send-btn",E.className="csk-send-btn",E.setAttribute("title",o("send")),E.setAttribute("disabled","true"),E.innerHTML='',w.appendChild(_),w.appendChild(E),x.appendChild(w);const C=document.createElement("div");C.className="csk-disclaimer",void 0!==e.disclaimer?(C.innerHTML=e.disclaimer,e.disclaimer||(C.style.display="none")):C.style.display="none",x.appendChild(C),n.appendChild(x);let L=null;e.showClear&&(L=document.createElement("button"),L.className="csk-clear-btn",L.textContent=o("clear"),L.style.display="none",n.insertBefore(L,x));let I=null;const S=document.createElement("div");S.className="csk-sr-only",S.setAttribute("aria-live","polite"),S.setAttribute("aria-atomic","true"),n.appendChild(S);const A=f.querySelector("#csk-history-search"),$=document.createElement("div");$.className=`csk-teaser csk-teaser--${"left-bottom"===e.position?"left":"right"} csk-teaser--hidden`,$.setAttribute("role","status"),$.innerHTML=`\n \n ${e.teaserText||o("teaser_text")}\n `;const N=document.createElement("div");return N.className="csk-resize-handle",N.setAttribute("aria-label",o("resize")),N.innerHTML='',n.appendChild(N),{window:n,messagesContainer:g,inputEl:_,sendBtn:E,clearBtn:L,categorySelect:v,historyPanel:f,welcomeEl:h,newMsgBtn:b,teaserEl:$,resizeHandle:N,searchInput:A,ariaLiveEl:S,roleSelect:l,disclaimer:C,showLoading:function(){if(I)return I.style.display="flex",I;const e=document.createElement("div");return e.className="csk-loading",e.innerHTML=`\n
${T}
\n
\n
\n
\n
\n
\n `,g.appendChild(e),I=e,e},hideLoading:function(){I&&I.parentNode&&(I.parentNode.removeChild(I),I=null)}}}function H(){return window.innerHeight-76}function j(e,n,t){const r=document.createElement("div");r.className="csk-msg csk-msg--user";const s=document.createElement("div");s.className="csk-msg__avatar csk-msg__avatar--user",s.innerHTML='';const o=document.createElement("div");o.className="csk-msg__content";const a=document.createElement("div");a.className="csk-msg__bubble",a.textContent=n;const i=document.createElement("div");return i.className="csk-msg__time",i.textContent=z(t),o.appendChild(a),o.appendChild(i),r.appendChild(s),r.appendChild(o),e.appendChild(r),r}function R(e,n,t,r,s){const o=document.createElement("div");o.className="csk-msg csk-msg--ai",s&&(o.dataset.cskMsgId=s);const a=document.createElement("div");a.className="csk-msg__avatar csk-msg__avatar--ai",a.innerHTML=T;const i=document.createElement("div");i.className="csk-msg__content";const c=document.createElement("div");c.className="csk-msg__bubble",r?c.innerHTML=r(n):c.textContent=n;const l=document.createElement("div");l.className="csk-msg__time",l.textContent=z(t),i.appendChild(c);const d=document.createElement("div");return d.className="csk-msg__meta",d.appendChild(l),d.appendChild(W(c,o)),i.appendChild(d),o.appendChild(a),o.appendChild(i),e.appendChild(o),X(c),o}const P='',U='';function W(e,n){const t=document.createElement("div");t.className="csk-msg__actions";const r=document.createElement("button");r.type="button",r.className="csk-action-btn",r.setAttribute("title",o("copy")),r.setAttribute("aria-label",o("copy")),r.innerHTML=P,r.addEventListener("click",async n=>{n.stopPropagation();const t=e.textContent||"";await O(t,r)});const s=document.createElement("button");s.type="button",s.className="csk-action-btn",s.setAttribute("title",o("retry")),s.setAttribute("aria-label",o("retry")),s.innerHTML=U,s.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:retry",{detail:{msgId:n.dataset.cskMsgId||""}}))});const a=document.createElement("button");a.type="button",a.className="csk-feedback-btn",a.setAttribute("title",o("feedback_up")),a.setAttribute("aria-label",o("feedback_up")),a.innerHTML='',a.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:feedback",{detail:{msgId:n.dataset.cskMsgId||"",value:"up"}}))});const i=document.createElement("button");return i.type="button",i.className="csk-feedback-btn",i.setAttribute("title",o("feedback_down")),i.setAttribute("aria-label",o("feedback_down")),i.innerHTML='',i.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:feedback",{detail:{msgId:n.dataset.cskMsgId||"",value:"down"}}))}),t.appendChild(r),t.appendChild(s),t.appendChild(a),t.appendChild(i),t}function Y(e,n){const t=e.querySelectorAll(".csk-feedback-btn");t.length<2||(t.forEach(e=>e.classList.remove("csk-feedback-btn--active","down")),"up"===n&&t[0]&&t[0].classList.add("csk-feedback-btn--active"),"down"===n&&t[1]&&t[1].classList.add("csk-feedback-btn--active","down"))}async function O(e,n){const t=n.innerHTML;try{if(navigator.clipboard&&window.isSecureContext)await navigator.clipboard.writeText(e);else{const n=document.createElement("textarea");n.value=e,n.style.position="fixed",n.style.opacity="0",document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n)}n.innerHTML='',n.classList.add("csk-action-btn--done"),setTimeout(()=>{n.innerHTML=t,n.classList.remove("csk-action-btn--done")},1500)}catch(e){}}function X(e){e.querySelectorAll(".csk-md-code-block").forEach(e=>{if(e.querySelector(".csk-md-code-copy"))return;const n=e.querySelector("code"),t=document.createElement("button");t.type="button",t.className="csk-md-code-copy",t.setAttribute("title",o("copy")),t.setAttribute("aria-label",o("copy")),t.innerHTML=P,t.addEventListener("click",async e=>{e.stopPropagation(),await O((null==n?void 0:n.textContent)||"",t)}),e.appendChild(t)})}function K(e,n){e.classList.remove("csk-msg--streaming");const t=n.querySelector(".csk-caret");t&&t.remove(),X(n)}function J(e,n){const t=e.querySelector(".csk-sources");if(t&&t.remove(),!n||0===n.length)return;const r=document.createElement("div");r.className="csk-sources csk-sources--collapsed";const s=document.createElement("div");s.className="csk-sources__header";const a=document.createElement("span");a.className="csk-sources__title",a.textContent=`📚 ${o("source_count",{n:n.length})}`;const i=document.createElement("span");i.className="csk-sources__arrow",i.textContent="▼",s.appendChild(a),s.appendChild(i),s.addEventListener("click",()=>{r.classList.toggle("csk-sources--collapsed")});const c=document.createElement("div");c.className="csk-sources__body";for(const e of n){const n=document.createElement("div");n.className="csk-source-item";const t=document.createElement("div");if(t.className="csk-source-item__name",t.textContent=e.title||e.sourceName||"未知文档",e.snippet){const t=document.createElement("div");t.className="csk-source-item__snippet",t.textContent=e.snippet,n.appendChild(t)}const r=document.createElement("div");r.className="csk-source-item__meta";const s=[];e.sourceName&&s.push(e.sourceName),void 0!==e.chunkIndex&&s.push(`分块 #${e.chunkIndex}`),void 0!==e.score&&s.push(`相关度 ${(100*e.score).toFixed(0)}%`),r.textContent=s.join(" · "),n.appendChild(t),n.appendChild(r),c.appendChild(n)}r.appendChild(s),r.appendChild(c);const l=e.querySelector(".csk-msg__meta");l&&l.parentNode?l.parentNode.insertBefore(r,l.nextSibling):e.appendChild(r)}function V(e,n,t,r,s,a,i){if(e.innerHTML="",0===n.length){const n=document.createElement("div");return n.className="csk-history-panel__empty",n.innerHTML=`\n
💬
\n
${o("history_empty")}
\n `,void e.appendChild(n)}const c=function(e){const n=new Date,t=new Date(n.getFullYear(),n.getMonth(),n.getDate()).getTime(),r=t-864e5,s=t-864e5*(n.getDay()||7)+864e5,a={today:[],yesterday:[],week:[],earlier:[]};for(const n of e){const e=n.lastMessageTime||n.createdAt,o=e?new Date(e).getTime():0;o>=t?a.today.push(n):o>=r?a.yesterday.push(n):o>=s?a.week.push(n):a.earlier.push(n)}const i=[];return a.today.length&&i.push({label:o("history_group_today"),items:a.today}),a.yesterday.length&&i.push({label:o("history_group_yesterday"),items:a.yesterday}),a.week.length&&i.push({label:o("history_group_week"),items:a.week}),a.earlier.length&&i.push({label:o("history_group_earlier"),items:a.earlier}),i}(n);for(const n of c){if(c.length>1){const t=document.createElement("div");t.className="csk-history-group";const r=document.createElement("div");r.className="csk-history-group__label",r.textContent=n.label,t.appendChild(r),e.appendChild(t)}for(const i of n.items){const n=document.createElement("div");n.className="csk-history-item";const c=i.chatId||i.id;a&&c===a&&n.classList.add("csk-history-item--active");const l=document.createElement("div");l.className="csk-history-item__info";const d=document.createElement("div");d.className="csk-history-item__id",i.lastMessagePreview?d.textContent=i.lastMessagePreview.length>60?i.lastMessagePreview.substring(0,60)+"...":i.lastMessagePreview:d.textContent=c;const p=document.createElement("div");p.className="csk-history-item__meta";const u=[];i.roleName&&u.push(i.roleName),void 0!==i.messageCount&&u.push(`${i.messageCount} 条消息`),i.lastMessageTime?u.push(i.lastMessageTime):i.createdAt&&u.push(i.createdAt),p.textContent=u.join(" · "),l.appendChild(d),l.appendChild(p);const m=document.createElement("div");m.className="csk-history-item__actions";const k=document.createElement("button");k.className="csk-history-action csk-history-action--export",k.setAttribute("title",o("history_export")),k.innerHTML='',k.addEventListener("click",e=>{e.stopPropagation(),r(i.id)});const g=document.createElement("button");g.className="csk-history-action csk-history-action--delete",g.setAttribute("title",o("history_delete")),g.innerHTML='',g.addEventListener("click",e=>{e.stopPropagation(),s(i.id)}),m.appendChild(k),m.appendChild(g),n.appendChild(l),n.appendChild(m),n.addEventListener("click",()=>{t(c)}),e.appendChild(n)}}}function G(e){e.scrollTop=e.scrollHeight}const Q=[{key:"inaccurate",labelKey:"feedback_reason_inaccurate"},{key:"irrelevant",labelKey:"feedback_reason_irrelevant"},{key:"incomplete",labelKey:"feedback_reason_incomplete"},{key:"other",labelKey:"feedback_reason_other"}];function Z(e){return`csk_history_${e}`}function ee(e,n){try{let r=n;r.length>200&&(r=r.slice(50),t.warn(`消息数量达到上限,已裁剪最早 50 条,当前 ${r.length} 条`));const s={messages:r,updatedAt:Date.now()};localStorage.setItem(Z(e),JSON.stringify(s))}catch(e){e instanceof Error&&"QuotaExceededError"===e.name?t.error("localStorage 空间不足,会话历史保存失败。建议清空历史记录。"):t.error("保存会话历史失败",e)}}function ne(e){try{localStorage.removeItem(Z(e))}catch(e){}}const te="\0CODEBLOCK_",re="\0INLINECODE_";function se(e){if(!e||"string"!=typeof e)return"";const n=[];let t=e;t=t.replace(/```(\w*)\n([\s\S]*?)```/g,(e,t,r)=>{const s=n.length,o=F(r.trimEnd()),a=t?` class="language-${F(t)}"`:"";return n.push(`
${o}
`),`${te}${s}\0`});const r=[];t=t.replace(/`([^`\n]+)`/g,(e,n)=>{const t=r.length;return r.push(`${F(n)}`),`${re}${t}\0`}),t=F(t),t=oe(t,te,n),t=oe(t,re,r);const s=t.split("\n"),o=[];let a=!1,i="",c=!1,l=[];for(let e=0;e')){h(),b(),f(),o.push(n);continue}const t=n.match(/^ {0,3}(#{1,6})(?:\s+|(?=[\u3400-\u9FFF\d]))(.+)/);if(t){h(),b(),f();const e=t[1].length;o.push(`${t[2]}`);continue}if(e+10&&t.length===r.length){h(),b(),f();const n=r.map(k);for(o.push('
'),o.push(""),t.forEach((e,t)=>{o.push(`${d(e)}`)}),o.push(""),e+=2;e"),t.forEach((e,t)=>{o.push(`${d(r[t]||"")}`)}),o.push(""),e++}o.push("
"),e--;continue}}const r=n.match(/^ {0,3}>\s?(.*)/);if(r){h(),b(),c||(c=!0,o.push('
')),o.push(`

${d(r[1])}

`);continue}c&&f();const y=n.match(/^ {0,3}[\-\*]\s+(.+)/);if(y){h(),f(),a&&"ul"===i||(b(),a=!0,i="ul",o.push('
    ')),o.push(`
  • ${d(y[1])}
  • `);continue}const v=n.match(/^ {0,3}\d+\.\s+(.+)/);v?(h(),f(),a&&"ol"===i||(b(),a=!0,i="ol",o.push('
      ')),o.push(`
    1. ${d(v[1])}
    2. `)):""!==n.trim()?/^(\*{3,}|-{3,}|_{3,})$/.test(n.trim())?(h(),b(),f(),o.push('
      ')):(b(),f(),l.push(d(n))):(h(),b())}return h(),b(),f(),o.join("\n");function d(e){return e=(e=(e=(e=(e=(e=e.replace(/\*\*(.+?)\*\*/g,"$1")).replace(/__(.+?)__/g,"$1")).replace(/\*(.+?)\*/g,"$1")).replace(/(?$1")).replace(/~~(.+?)~~/g,"$1")).replace(/\[([^\]]+)\]\(([^)]+)\)/g,(e,n,t)=>`${n}`)}function p(e){const n=m(e);return n.length>0&&n.every(e=>/^:?-{3,}:?$/.test(e.trim()))}function u(e){return""!==e.trim()&&e.includes("|")}function m(e){const n=e.trim().replace(/^\|/,"").replace(/\|$/,"");if(!n.includes("|"))return[];const t=[];let r="";for(let e=0;e0&&(o.push(`

      ${l.join("
      ")}

      `),l=[])}function b(){a&&(o.push("ul"===i?"
":""),a=!1,i="")}function f(){c&&(o.push("
"),c=!1)}}function oe(e,n,t){return e.replace(new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")+"(\\d+)\0","g"),(e,n)=>t[parseInt(n)]||"")}let ae,ie=null,ce=[],le=null,de=null,pe=null,ue=null,me=null,ke=null,ge=null,he=null,be=null,fe=null,ye=null,ve=null,xe=null,we=null,_e=!1,Ee=null,Ce=!0,Le=[],Ie="",Se=!1;function Ae(e,n){ie=e,le=n.messagesContainer,de=n.inputEl,pe=n.inputEl.parentElement,ue=n.sendBtn,me=n.clearBtn,ke=n.categorySelect,ge=n.roleSelect,he=n.historyPanel,be=n.welcomeEl,fe=n.newMsgBtn,ye=n.searchInput,ve=n.ariaLiveEl,xe=n.showLoading,we=n.hideLoading,ae=e.categoryId,Se=e.enableRag,function(){if(!de||!ue)return;ue.addEventListener("click",()=>{_e&&Ee?Ee.abort():He()}),de.addEventListener("keydown",e=>{"Enter"!==e.key||e.shiftKey||e.isComposing||(e.preventDefault(),He())}),de.addEventListener("input",()=>{qe(),function(){if(!de)return;de.style.height="auto",de.style.height=`${Math.min(de.scrollHeight,120)}px`}()}),de.addEventListener("focus",()=>{pe&&pe.classList.add("csk-input-wrap--focus")}),de.addEventListener("blur",()=>{pe&&pe.classList.remove("csk-input-wrap--focus")}),me&&me.addEventListener("click",()=>function(){if(!ie)return;if(ce=[],le){le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove())}me&&(me.style.display="none");Be(),ne(ie.integrateId);const e=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();d(e),I(ie.integrateId,ie.userId,e),t.lifecycleClear(ie.integrateId)}())}(),function(){if(!le)return;le.addEventListener("scroll",()=>{if(!le)return;const{scrollTop:e,scrollHeight:n,clientHeight:t}=le;Ce=n-e-t<80,Ce&&Me()}),fe&&fe.addEventListener("click",()=>{le&&G(le),Ce=!0,Me()})}(),function(){if(!ye)return;ye.addEventListener("input",()=>{Ie=ye.value.trim().toLowerCase(),De()})}(),e.showCategorySwitch&&ke&&async function(){if(!ke)return;try{const e=await async function(){const e=u("/category/tree");try{const n=await k(e);if(!n.ok)throw new g(h(n.status),`http_${n.status}`);const r=await n.json();return r.success&&Array.isArray(r.data)?(t.info(`加载分类树成功 count=${r.data.length}`),r.data):[]}catch(e){return e instanceof g?t.error(`加载分类树失败: ${e.message}`):t.error("加载分类树失败",e),[]}}();if(0===e.length)return;ke.innerHTML=``;const n=(e,t=0)=>{for(const r of e){const e=document.createElement("option");e.value=String(r.id),e.textContent=`${" ".repeat(t)}${r.name}`,void 0!==ae&&String(r.id)===String(ae)&&(e.selected=!0),ke.appendChild(e),r.children&&r.children.length>0&&n(r.children,t+1)}};n(e),t.info(`知识库分类加载成功 count=${e.length}`)}catch(e){t.error(o("category_load_error"),e)}}()}async function $e(){if(ie&&le&&(await C(),await Ne(),0===ce.length)){const e=function(e){try{const n=localStorage.getItem(Z(e));if(!n)return[];const r=JSON.parse(n);return r&&Array.isArray(r.messages)?(t.info(`加载历史消息 integrateId=${e} count=${r.messages.length}`),r.messages):[]}catch(e){return[]}}(ie.integrateId);e.length>0&&(ce=e,Pe(),t.info(`从本地缓存恢复 ${e.length} 条消息`))}}async function Ne(){if(!ie||!le)return;const e=p();if(e)try{const n=await w(e);n.messages.length>0&&(ce=n.messages.map((e,n)=>({id:M(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),Pe(),t.info(`从后端加载 ${ce.length} 条历史消息`),ee(l(),ce))}catch(e){}}function Me(){fe&&fe.classList.add("csk-newmsg--hidden")}function Fe(){le&&(Ce?G(le):fe&&fe.classList.remove("csk-newmsg--hidden"))}function ze(e){ue&&("stop"===e?(ue.classList.add("csk-send-btn--stop"),ue.removeAttribute("disabled"),ue.setAttribute("title",o("stop")),ue.setAttribute("aria-label",o("stop")),ue.innerHTML=''):(ue.classList.remove("csk-send-btn--stop"),ue.setAttribute("title",o("send")),ue.setAttribute("aria-label",o("send")),ue.innerHTML='',qe()))}function De(){const e=null==he?void 0:he.querySelector("#csk-history-list");if(!e||!ie)return;V(e,Ie?Le.filter(e=>(e.lastMessagePreview||e.chatId||e.id||"").toLowerCase().includes(Ie)):Le,e=>{Ue(e)},e=>{window.open(E(e),"_blank")},async e=>{if(!confirm(o("history_delete_confirm")))return;await _(e)&&(e===p()&&(ce=[],le&&le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),me&&(me.style.display="none"),Be()),Le=Le.filter(n=>(n.chatId||n.id)!==e),De())},p())}function Te(e,n){if(!le)return;const t=ce.find(n=>n.id===e&&"ai"===n.role);if(t){if("up"===n){const n="up"===t.feedback?void 0:"up";t.feedback=n,t.feedbackReason=void 0,t.feedbackComment=void 0;const r=le.querySelector(`[data-csk-msg-id="${e}"]`);return r&&Y(r,n),ie&&ee(ie.integrateId,ce),void(n&&v(String(e),"THUMBS_UP").then(e=>{}))}if("down"===n){const n=le.querySelector(`[data-csk-msg-id="${e}"]`);if(!n)return;if("down"===t.feedback)return t.feedback=void 0,t.feedbackReason=void 0,t.feedbackComment=void 0,n&&Y(n,void 0),void(ie&&ee(ie.integrateId,ce));!function(e,n,t){const r=e.querySelector(".csk-feedback-reason");r&&r.remove();const s=document.createElement("div");s.className="csk-feedback-reason";const a=document.createElement("div");a.className="csk-feedback-reason__title",a.textContent=o("feedback_reason_title"),s.appendChild(a);const i=document.createElement("div");i.className="csk-feedback-reason__options",Q.forEach(e=>{const n=document.createElement("button");n.type="button",n.className="csk-feedback-reason__btn",n.textContent=o(e.labelKey),n.addEventListener("click",n=>{n.stopPropagation(),t(e.key),s.remove()}),i.appendChild(n)}),s.appendChild(i);const c=document.createElement("div");c.className="csk-feedback-reason__comment-row";const l=document.createElement("input");l.type="text",l.className="csk-feedback-reason__comment",l.placeholder=o("feedback_reason_comment_placeholder"),l.maxLength=200,c.appendChild(l);const d=document.createElement("button");d.type="button",d.className="csk-feedback-reason__submit",d.textContent=o("feedback_reason_submit"),d.addEventListener("click",e=>{e.stopPropagation();const n=l.value.trim()||void 0;t("other",n),s.remove()}),c.appendChild(d),s.appendChild(c);const p=document.createElement("button");p.type="button",p.className="csk-feedback-reason__close",p.setAttribute("aria-label",o("close")),p.innerHTML='',p.addEventListener("click",e=>{e.stopPropagation(),s.remove()}),s.appendChild(p),e.appendChild(s)}(n,0,(r,s)=>{t.feedback="down",t.feedbackReason=r,t.feedbackComment=s,n&&Y(n,"down"),ie&&ee(ie.integrateId,ce),v(String(e),"THUMBS_DOWN",r,s).then(e=>{})})}}}function Be(){if(!be)return;const e=ce.length>0||le&&le.querySelector(".csk-msg");be.style.display=e?"none":""}function qe(){if(!ue||!de)return;de.value.trim().length>0&&!_e?ue.removeAttribute("disabled"):ue.setAttribute("disabled","true")}async function He(){if(!de||!ie||_e)return;const e=de.value.trim();if(""===e)return;de.value="",qe(),de.style.height="auto";const n=D(),t={id:M(),role:"user",content:e,timestamp:n};le&&j(le,e,n),ce.push(t),Be(),me&&ce.length>0&&(me.style.display="inline-flex"),le&&Fe(),await je(e)}async function je(e){if(!ie||!le)return;_e=!0,ze("stop"),ie.chatId||await C();const n=D(),r=Se;xe&&xe(),le&&Fe();const s=M();let i="";try{ie.streaming?i=await async function(e,n,t,r){Ee=new AbortController;const s=Ee.signal;return new Promise((a,i)=>{let c=null,l=null,d="",p=!1;f(e,e=>{if(d+=e,!p&&le){we&&we();const{wrapper:e,bubble:t}=function(e,n,t){const r=document.createElement("div");r.className="csk-msg csk-msg--ai csk-msg--streaming",t&&(r.dataset.cskMsgId=t);const s=document.createElement("div");s.className="csk-msg__avatar csk-msg__avatar--ai",s.innerHTML=T;const o=document.createElement("div");o.className="csk-msg__content";const a=document.createElement("div");a.className="csk-msg__bubble",a.innerHTML="";const i=document.createElement("div");i.className="csk-msg__time",i.textContent=z(n),o.appendChild(a);const c=document.createElement("div");return c.className="csk-msg__meta",c.appendChild(i),c.appendChild(W(a,r)),o.appendChild(c),r.appendChild(s),r.appendChild(o),e.appendChild(r),{wrapper:r,bubble:a}}(le,n,r);l=e,c=t,p=!0}c&&(c.innerHTML=se(d),function(e){if(e.querySelector(".csk-caret"))return;const n=document.createElement("span");n.className="csk-caret",n.setAttribute("aria-hidden","true"),e.appendChild(n)}(c)),le&&Fe()},()=>{if(l&&c){if(!p&&""===d)return void b(e).then(a).catch(i);d&&(c.innerHTML=se(d)),K(l,c)}a(d)},e=>{"network"!==e.type&&"cors"!==e.type||le&&function(e){if(document.getElementById("csk-offline-banner"))return;const n=document.createElement("div");n.id="csk-offline-banner",n.className="csk-offline-banner",n.textContent=o("error_offline"),e.insertBefore(n,e.firstChild)}(le),d.length>0?(c&&(c.innerHTML=se(d+"\n\n"+o("stream_interrupted")),l&&K(l,c)),a(d)):i(e)},ae,t,s)})}(e,n,r,s):(i=await b(e),we&&we(),le&&R(le,i,n,se,s));const t={id:s,role:"ai",content:i,timestamp:n};ce.push(t),ee(ie.integrateId,ce),le&&Fe(),function(e){if(!ve)return;const n=e.length>120?e.substring(0,120)+"...":e;ve.textContent=o("new_msg_announce")+":"+n}(i),le&&le.dispatchEvent(new CustomEvent("csk:newMessage",{bubbles:!0,detail:{msg:t}})),r&&async function(e,n){try{const t=await y(e,ae);if(t.length>0){const e=t.map(e=>{var n,t;return{documentId:e.documentId||"",title:e.title||"",sourceName:e.sourceName||"",chunkIndex:null!==(n=e.chunkIndex)&&void 0!==n?n:0,score:null!==(t=e.score)&&void 0!==t?t:0,snippet:e.snippet||""}});if(n.sources=e,le){const n=le.querySelector(".csk-msg--ai:last-of-type");n&&J(n,e)}ie&&ee(ie.integrateId,ce)}}catch(e){}}(e,t),ie.suggestions&&async function(e){const n=p();if(!n||!le)return;try{const t=await async function(e){if(!a||!e)return[];try{const n=new URLSearchParams;n.set("chatId",e);const t=u(`/ai/suggestions?${n.toString()}`),r=await k(t);if(!r.ok)return[];const s=await r.json();return s.success&&s.data&&Array.isArray(s.data.suggestions)?s.data.suggestions.filter(e=>"string"==typeof e&&e.trim().length>0):[]}catch(e){return[]}}(n);if(t.length>0&&le){const n=le.querySelector(`[data-csk-msg-id="${e}"]`);n&&function(e,n,t){if(function(e){const n=e.querySelector(".csk-suggestions");n&&n.remove()}(e),!n||0===n.length)return;const r=document.createElement("div");r.className="csk-suggestions";const s=document.createElement("div");s.className="csk-suggestions__list";for(const e of n){const n=document.createElement("button");n.type="button",n.className="csk-suggestion-item",n.textContent=e,n.addEventListener("click",n=>{n.stopPropagation(),t(e)}),s.appendChild(n)}r.appendChild(s);const o=e.querySelector(".csk-msg__content");o?o.appendChild(r):e.appendChild(r)}(n,t,Re)}}catch(e){}}(s),function(){const e=document.getElementById("csk-offline-banner");e&&e.remove()}()}catch(e){we&&we();const n=e instanceof g?e.message:o("error_send");if(le){const e=document.createElement("div");e.className="csk-msg csk-msg--ai";const t=document.createElement("div");t.className="csk-msg__bubble",t.style.color="#DC2626",t.textContent=`⚠ ${n}`,e.appendChild(t),le.appendChild(e)}t.error(`发送失败 integrateId=${ie.integrateId}`,e)}finally{_e=!1,Ee=null,ze("send"),qe()}}function Re(e){return!de||_e?Promise.resolve():(de.value=e,qe(),He())}function Pe(){if(!le)return;const e=le.querySelector(".csk-history-panel");le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());for(const e of ce)if("user"===e.role)j(le,e.content,e.timestamp);else{const n=R(le,e.content,e.timestamp,se,e.id);e.sources&&e.sources.length>0&&J(n,e.sources),e.feedback&&Y(n,e.feedback)}Ce=!0,G(le),me&&ce.length>0&&(me.style.display="inline-flex"),Be(),e&&!le.contains(e)&&le.appendChild(e)}async function Ue(e){if(!ie||!le)return;const n=Le.find(n=>(n.chatId||n.id)===e);if(n&&void 0!==n.roleId){const e=String(n.roleId),t=l();e&&e!==t&&(c(e),ge&&(ge.value=e))}d(e),I(l(),ie.userId,e),he&&he.classList.add("csk-history-panel--hidden"),ce=[];le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());try{const n=await w(e);n.messages.length>0&&(ce=n.messages.map(e=>({id:M(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),Pe(),t.info(`加载会话 ${e} 的 ${ce.length} 条消息`),ee(ie.integrateId,ce))}catch(e){}me&&ce.length>0&&(me.style.display="inline-flex"),Be()}let We=null,Ye=!1,Oe=null,Xe=null,Ke=null,Je=null,Ve=null,Ge=null,Qe=null,Ze=null,en=null,nn=null,tn=null,rn=null,sn=null,on=null,an=null,cn=null,ln=null,dn=null,pn=null;function un(){if(!an||!Oe)return;const e=Oe.getBoundingClientRect(),n=on?"left"===on.side:"left-bottom"===(null==We?void 0:We.position);n?(an.style.left=`${e.left}px`,an.style.right="auto"):(an.style.right=window.innerWidth-e.right+"px",an.style.left="auto"),an.style.bottom=window.innerHeight-e.top+8+"px",an.classList.toggle("csk-teaser--left",!!n),an.classList.toggle("csk-teaser--right",!n)}function mn(){if(!an)return;an.classList.add("csk-teaser--hidden"),an.removeEventListener("click",kn);const e=an.querySelector(".csk-teaser__close");e&&e.removeEventListener("click",gn)}function kn(e){e.target.closest(".csk-teaser__close")||(mn(),yn())}function gn(e){e.stopPropagation(),mn()}function hn(){an&&!an.classList.contains("csk-teaser--hidden")&&un()}const bn='button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])';function fn(e){"Escape"===e.key&&Xe&&!Xe.classList.contains("csk-window--hidden")&&vn(),function(e){if(!Xe||Xe.classList.contains("csk-window--hidden"))return;if("Tab"!==e.key)return;const n=Array.from(Xe.querySelectorAll(bn));if(0===n.length)return;const t=n[0],r=n[n.length-1];e.shiftKey?document.activeElement===t&&(e.preventDefault(),r.focus()):document.activeElement===r&&(e.preventDefault(),t.focus())}(e)}function yn(){Xe&&(Xe.classList.remove("csk-window--hidden"),mn(),ln&&ln.classList.add("csk-launcher__badge--hidden"),setTimeout(()=>{Je&&Je.focus()},80))}function vn(){Xe&&Xe.classList.add("csk-window--hidden")}function xn(){Xe&&(Xe.classList.contains("csk-window--hidden")?yn():vn())}function wn(e){return`csk_size_${e}`}function _n(e){return`csk_position_${e}`}function En(e){return`csk_launcher_pos_${e}`}function Cn(e){Xe&&(Xe.classList.remove("csk-window--right","csk-window--left"),Xe.classList.add(`csk-window--${e}`),an&&(an.classList.remove("csk-teaser--right","csk-teaser--left"),an.classList.add(`csk-teaser--${e}`)))}const Ln={init:function(e){if(Ye)return;const i=function(e){var n,r,s,o,a,i,c,l,d,p,u,m,k;if(!e.integrateId||"string"!=typeof e.integrateId&&"number"!=typeof e.integrateId||"string"==typeof e.integrateId&&""===e.integrateId.trim())return t.error('integrateId 是必传参数(对应后端 roleId 客服角色 ID),请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;if(!e.requestDomain||"string"!=typeof e.requestDomain||""===e.requestDomain.trim())return t.error('requestDomain 是必传参数,请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;try{new URL(e.requestDomain)}catch(n){return t.error(`requestDomain 不是合法的 URL 格式:${e.requestDomain}。请提供完整的域名,如 https://api.example.com`),null}const g=String(e.integrateId).trim(),h=e.requestDomain.replace(/\/+$/,""),b=e.launcherIcon||``,f=e.primaryColor||"#4F46E5",y={integrateId:g,requestDomain:e.requestDomain.replace(/\/+$/,""),userId:e.userId,categoryId:e.categoryId,showCategorySwitch:null!==(n=e.showCategorySwitch)&&void 0!==n&&n,title:e.title||"AI 智能助手",width:null!==(r=e.width)&&void 0!==r?r:500,height:Math.max(400,null!==(s=e.height)&&void 0!==s?s:520),position:"left-bottom"===e.position?"left-bottom":"right-bottom",primaryColor:f,launcherIcon:b,showClear:null===(o=e.showClear)||void 0===o||o,showAdminPanel:null!==(a=e.showAdminPanel)&&void 0!==a&&a,quickReplies:Array.isArray(e.quickReplies)?e.quickReplies.map(e=>String(e).trim()).filter(Boolean):[],suggestions:null===(i=e.suggestions)||void 0===i||i,theme:"dark"===e.theme?"dark":"light",showTeaser:null===(c=e.showTeaser)||void 0===c||c,teaserText:"string"==typeof e.teaserText&&e.teaserText.trim()||"",resizable:null===(l=e.resizable)||void 0===l||l,watermark:"string"==typeof e.watermark&&e.watermark.trim()||void 0,streaming:null===(d=e.streaming)||void 0===d||d,enableRag:null===(p=e.enableRag)||void 0===p||p,rewriteStrategy:e.rewriteStrategy||"REWRITE",locale:e.locale||"zh-CN",debug:null===(u=e.debug)||void 0===u||u,sound:null!==(m=e.sound)&&void 0!==m&&m,notification:null!==(k=e.notification)&&void 0!==k&&k,onError:"function"==typeof e.onError?e.onError:void 0,onReady:"function"==typeof e.onReady?e.onReady:void 0,onMessage:"function"==typeof e.onMessage?e.onMessage:void 0,token:e.token,roles:e.roles,disclaimer:e.disclaimer,chatId:""};return t.info(`配置解析完成 integrateId(=roleId)=${y.integrateId} userId(=accountId)=${y.userId||"(未设置)"} requestDomain=${y.requestDomain}`),y}(e);if(!i)return;We=i,function(e){if(r[e])s=e;else{const n=e.split("-")[0],t=Object.keys(r).find(e=>e.startsWith(n));t&&(s=t)}}(We.locale),We.debug,n(We.onError),function(e){a=e}(We),N(We),Oe=B(We,xn),document.body.appendChild(Oe),ln=Oe.querySelector(".csk-launcher__badge"),function(e,n){try{const t=localStorage.getItem(En(e));if(!t)return;const r=JSON.parse(t);if("left"!==r.side&&"right"!==r.side||"number"!=typeof r.bottom)return;const s=window.innerHeight-76,o=Math.max(16,Math.min(r.bottom,s));n.classList.remove("csk-launcher--right","csk-launcher--left"),n.classList.add(`csk-launcher--${r.side}`),n.style.bottom=`${o}px`,on={side:r.side,bottom:o}}catch(e){}}(We.integrateId,Oe),rn=function(e,n,t){let r=!1,s=0,o=0,a=!1,i=0,c=0,l=0,d=!1;function p(){const n=parseFloat(getComputedStyle(e).bottom);return isNaN(n)?24:n}function u(n,t){if(d)return;r=!0,a=!1,s=n,o=t,i=p();const u=e.style,m=getComputedStyle(e);c=u.right?parseFloat(u.right):parseFloat(m.right),l=u.left?parseFloat(u.left):parseFloat(m.left)}function m(n,t,d){if(!r)return;const p=n-s,u=t-o;if(!a){if(Math.abs(p)<5&&Math.abs(u)<5)return;a=!0,e.classList.add("csk-launcher--dragging"),e.classList.remove("csk-launcher--right","csk-launcher--left"),e.style.transition="none",!isNaN(c)&&c>=0&&isNaN(l)?(e.style.right=`${c}px`,e.style.left="auto"):!isNaN(l)&&l>=0&&(e.style.left=`${l}px`,e.style.right="auto")}if(a){d.preventDefault();const n=Math.max(16,Math.min(i-u,H()));e.style.bottom=`${n}px`}}function k(){if(!r)return;if(r=!1,!a)return;const n=parseFloat(e.style.bottom)||p(),s=Math.max(16,Math.min(n,H())),o=e.getBoundingClientRect(),i=o.left+o.width/2<=window.innerWidth/2?"left":"right";e.classList.remove("csk-launcher--dragging"),e.classList.add(`csk-launcher--${i}`,"csk-launcher--snap"),e.style.left="",e.style.right="",e.style.bottom=`${s}px`,d=!0;const c=()=>{e.removeEventListener("transitionend",c),e.classList.remove("csk-launcher--snap"),e.style.transition="",d=!1};e.addEventListener("transitionend",c),setTimeout(()=>{d&&c()},350);const l=n=>{n.stopPropagation(),e.removeEventListener("click",l,!0)};e.addEventListener("click",l,!0);const u=e.querySelector(".csk-launcher__badge");u&&(u.style.display=""),t&&t({side:i,bottom:s})}function g(e){u(e.clientX,e.clientY)}function h(e){m(e.clientX,e.clientY,e)}function b(){k()}function f(e){1===e.touches.length&&u(e.touches[0].clientX,e.touches[0].clientY)}function y(e){1===e.touches.length&&m(e.touches[0].clientX,e.touches[0].clientY,e)}function v(){k()}return e.addEventListener("mousedown",g),document.addEventListener("mousemove",h),document.addEventListener("mouseup",b),e.addEventListener("touchstart",f,{passive:!0}),document.addEventListener("touchmove",y,{passive:!1}),document.addEventListener("touchend",v),()=>{e.removeEventListener("mousedown",g),document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",b),e.removeEventListener("touchstart",f),document.removeEventListener("touchmove",y),document.removeEventListener("touchend",v)}}(Oe,0,e=>{const n=null==on?void 0:on.side;on=e,function(e,n){try{localStorage.setItem(En(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e),n&&n!==e.side&&function(){if(!Xe)return;Xe.style.left="",Xe.style.top="",Xe.style.right="",Xe.style.bottom=""}(),Cn(e.side),an&&!an.classList.contains("csk-teaser--hidden")&&un()}),on&&Cn(on.side);const d=q(We);Xe=d.window,Ke=d.messagesContainer,Je=d.inputEl,Ve=d.sendBtn,Ge=d.clearBtn,Qe=d.categorySelect,Ze=d.historyPanel,en=d.showLoading,nn=d.hideLoading,pn=d.disclaimer,document.body.appendChild(Xe),an=d.teaserEl,document.body.appendChild(an),un();const m=Xe.querySelector(".csk-header");if(m&&(tn=function(e,n,t){let r=!1,s=0,o=0,a=0,i=0;const c=e=>{if(e.target.closest("button"))return;r=!0,s=e.clientX,o=e.clientY;const t=n.getBoundingClientRect();a=s-t.left,i=o-t.top,document.addEventListener("mousemove",l),document.addEventListener("mouseup",d)},l=e=>{if(!r)return;const t=e.clientX-a,s=e.clientY-i,o=window.innerWidth-n.offsetWidth,c=window.innerHeight-n.offsetHeight;n.style.right="auto",n.style.bottom="auto",n.style.left=`${Math.max(0,Math.min(t,o))}px`,n.style.top=`${Math.max(0,Math.min(s,c))}px`},d=()=>{if(r=!1,document.removeEventListener("mousemove",l),document.removeEventListener("mouseup",d),t){const e=n.getBoundingClientRect();t({x:e.left,y:e.top})}};return e.addEventListener("mousedown",c),()=>{e.removeEventListener("mousedown",c),document.removeEventListener("mousemove",l),document.removeEventListener("mouseup",d)}}(m,Xe,e=>{!function(e,n){try{localStorage.setItem(_n(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e)})),function(e,n){try{const t=localStorage.getItem(_n(e));if(!t)return;const r=JSON.parse(t);if("number"!=typeof r.x||"number"!=typeof r.y)return;const s=window.innerWidth-n.offsetWidth,o=window.innerHeight-n.offsetHeight,a=Math.max(0,Math.min(r.x,s)),i=Math.max(0,Math.min(r.y,o));n.style.right="auto",n.style.bottom="auto",n.style.left=`${a}px`,n.style.top=`${i}px`}catch(e){}}(We.integrateId,Xe),We.resizable){const e=d.resizeHandle;sn=function(e,n,t){let r=!1,s=0,o=0,a=0,i=0;const c=(e,t)=>{r=!0,s=e,o=t;const c=n.getBoundingClientRect();a=c.width,i=c.height,n.classList.add("csk-window--resizing"),document.addEventListener("mousemove",p),document.addEventListener("mouseup",u),document.addEventListener("touchmove",g,{passive:!1}),document.addEventListener("touchend",h)},l=(e,t,c)=>{if(!r)return;c&&c.preventDefault();const l=e-s,d=t-o,p=Math.max(300,Math.min(a+l,window.innerWidth-24)),u=Math.max(300,Math.min(i+d,window.innerHeight-24));n.style.width=`${p}px`,n.style.height=`${u}px`,n.style.setProperty("--csk-window-width",`${p}px`),n.style.setProperty("--csk-window-height",`${u}px`),n.style.bottom="",n.style.right=""},d=()=>{if(!r)return;r=!1,n.classList.remove("csk-window--resizing"),document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",u),document.removeEventListener("touchmove",g),document.removeEventListener("touchend",h);const e=n.getBoundingClientRect();t&&t({width:e.width,height:e.height})};function p(e){l(e.clientX,e.clientY,e)}function u(){d()}function m(e){e.preventDefault(),e.stopPropagation(),c(e.clientX,e.clientY)}function k(e){e.preventDefault(),e.stopPropagation(),1===e.touches.length&&c(e.touches[0].clientX,e.touches[0].clientY)}function g(e){1===e.touches.length&&l(e.touches[0].clientX,e.touches[0].clientY,e)}function h(){d()}return e.addEventListener("mousedown",m),e.addEventListener("touchstart",k,{passive:!1}),()=>{e.removeEventListener("mousedown",m),e.removeEventListener("touchstart",k),document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",u),document.removeEventListener("touchmove",g),document.removeEventListener("touchend",h)}}(e,Xe,e=>{!function(e,n){try{localStorage.setItem(wn(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e)}),function(e,n){try{const t=localStorage.getItem(wn(e));if(!t)return;const r=JSON.parse(t);if("number"!=typeof r.width||"number"!=typeof r.height)return;const s=Math.max(300,Math.min(r.width,window.innerWidth-24)),o=Math.max(300,Math.min(r.height,window.innerHeight-24));n.style.width=`${s}px`,n.style.height=`${o}px`,n.style.setProperty("--csk-window-width",`${s}px`),n.style.setProperty("--csk-window-height",`${o}px`)}catch(e){}}(We.integrateId,Xe)}if(Ae(We,{messagesContainer:Ke,inputEl:Je,sendBtn:Ve,clearBtn:Ge,categorySelect:Qe,historyPanel:Ze,welcomeEl:d.welcomeEl,newMsgBtn:d.newMsgBtn,searchInput:d.searchInput,ariaLiveEl:d.ariaLiveEl,roleSelect:d.roleSelect,showLoading:en,hideLoading:nn}),Xe.addEventListener("csk:categoryChange",e=>{var n,t;n=e.detail.categoryId,ae=n,Se=null===(t=null==ie?void 0:ie.enableRag)||void 0===t||t}),Xe.addEventListener("csk:loadHistory",()=>{!async function(){if(!he||!ie)return;const e=he.querySelector("#csk-history-list");if(e){e.innerHTML='
加载中...
';try{const n=await x(1,50,ie.userId,l());Le=n.list.map(e=>({id:e.conversationId||"",chatId:e.conversationId||"",roleId:e.roleId,roleName:e.roleName,messageCount:e.messageCount,lastMessageTime:e.lastMessageTime,lastMessagePreview:e.lastMessagePreview,createdAt:e.firstMessageTime||e.createdAt})),Ie="",ye&&(ye.value=""),V(e,Le,e=>{Ue(e)},e=>{window.open(E(e),"_blank")},async e=>{confirm(o("history_delete_confirm"))&&await _(e)&&(e===p()&&(ce=[],le&&le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),me&&(me.style.display="none"),Be()),Le=Le.filter(n=>(n.chatId||n.id)!==e),De())},p())}catch(n){t.error(o("history_load_error"),n),e.innerHTML=`
${o("history_load_error")}
`}}}()}),Xe.addEventListener("csk:quickReply",e=>{Re(e.detail.text)}),Xe.addEventListener("csk:retry",e=>{!async function(e){if(!ie||!le||_e)return;const n=ce.findIndex(n=>n.id===e&&"ai"===n.role);if(n<0)return;let t="";for(let e=n-1;e>=0;e--)if("user"===ce[e].role){t=ce[e].content;break}if(!t)return;const r=ce.splice(n),s=new Set(r.map(e=>e.id));le.querySelectorAll(".csk-msg").forEach(e=>{const n=e.dataset.cskMsgId;n&&s.has(n)&&e.remove()}),ee(ie.integrateId,ce),Be(),await je(t)}(e.detail.msgId)}),Xe.addEventListener("csk:feedback",e=>{Te(e.detail.msgId,e.detail.value)}),Xe.addEventListener("csk:newMessage",e=>{var n;if(Xe&&Xe.classList.contains("csk-window--hidden")&&(ln&&ln.classList.remove("csk-launcher__badge--hidden"),(null==We?void 0:We.sound)&&function(){try{dn||(dn=new(window.AudioContext||window.webkitAudioContext));const e=dn;if("suspended"===e.state)return void e.resume();const n=e.currentTime;[0,.15].forEach((t,r)=>{const s=e.createOscillator(),o=e.createGain();s.type="sine",s.frequency.value=0===r?880:1100,o.gain.setValueAtTime(.15,n+t),o.gain.exponentialRampToValueAtTime(.001,n+t+.12),s.connect(o),o.connect(e.destination),s.start(n+t),s.stop(n+t+.12)})}catch(e){}}(),(null==We?void 0:We.notification)&&function(){try{if(!("Notification"in window))return;"granted"===Notification.permission?new Notification((null==We?void 0:We.title)||"AI 智能助手",{body:"收到新消息",icon:void 0,silent:!0}):"denied"!==Notification.permission&&Notification.requestPermission()}catch(e){}}()),(null==We?void 0:We.onMessage)&&(null===(n=e.detail)||void 0===n?void 0:n.msg))try{We.onMessage(e.detail.msg)}catch(e){}}),Xe.addEventListener("csk:roleChange",e=>{e.detail.roleId&&async function(e){if(!ie||!le)return;const n=l();if(e===n)return;if(ce.length>0&&ee(n,ce),Ee&&(Ee.abort(),Ee=null),_e=!1,ze("send"),ce=[],le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),ne(n),I(n,ie.userId,void 0),ne(e),I(e,ie.userId,void 0),c(e),ge&&(ge.value=e),await C(!0))try{await Ne()}catch(e){}me&&0===ce.length&&(me.style.display="none"),Be(),Ce=!0,le&&G(le)}(String(e.detail.roleId))}),document.addEventListener("keydown",fn),window.addEventListener("resize",hn),Ye=!0,t.lifecycleInit(We.integrateId,We.requestDomain),We.onReady)try{We.onReady()}catch(e){}We.showTeaser&&(cn=setTimeout(()=>{Xe&&Xe.classList.contains("csk-window--hidden")&&function(){if(!an)return;un(),an.classList.remove("csk-teaser--hidden"),an.addEventListener("click",kn);const e=an.querySelector(".csk-teaser__close");e&&e.addEventListener("click",gn)}()},1500)),$e().catch(e=>{}),void 0===We.disclaimer&&async function(e){if(!a)return"";try{const n=u(`/ai/system-config/${encodeURIComponent(e)}`),t=await k(n);if(!t.ok)return"";const r=await t.json();return r.success&&r.data&&r.data.configValue||""}catch(e){return""}}("disclaimer").then(e=>{e&&pn&&(pn.innerHTML=e,pn.style.display="")}).catch(()=>{})},destroy:function(){Ye&&(cn&&(clearTimeout(cn),cn=null),mn(),an&&an.parentNode&&(an.parentNode.removeChild(an),an=null),Oe&&Oe.parentNode&&(Oe.parentNode.removeChild(Oe),Oe=null),Xe&&Xe.parentNode&&(Xe.parentNode.removeChild(Xe),Xe=null),tn&&(tn(),tn=null),rn&&(rn(),rn=null),sn&&(sn(),sn=null),on=null,S&&S.parentNode&&(S.parentNode.removeChild(S),S=null),document.querySelectorAll("style[data-csk-sdk]").forEach(e=>e.remove()),document.removeEventListener("keydown",fn),window.removeEventListener("resize",hn),n(void 0),null==We||We.integrateId,We=null,Ye=!1,Ke=null,Je=null,Ve=null,Ge=null,Qe=null,Ze=null,en=null,nn=null,ln=null,dn=null,pn=null,a=null,i=null)},open:yn,close:vn,toggle:xn,clearHistory:function(){We&&(Ge?Ge.click():ne(We.integrateId))}};return"undefined"!=typeof window&&(window.ChatbotSDK=Ln),Ln}(); +var ChatbotSDK=function(){"use strict";let e=null;function n(n){e=n||null}const t={info(e,n){},warn(e,n){},error(n,t){if(e)try{const r=t instanceof Error&&t.type||"error";e({message:n,code:String(r),detail:t})}catch(e){}},time(e){},timeEnd:(e,n)=>0,lifecycleInit(e,n){},lifecycleDestroy(e){},lifecycleSend(e,n){},lifecycleReply(e,n){},lifecycleError(e,n,t){},lifecycleClear(e){},lifecycleStreamDone(e,n){},lifecycleCategoryChange(e){}};const r={"zh-CN":{title:"AI 智能助手",minimize:"最小化",close:"关闭",status_online:"在线",role_selector_label:"服务角色",welcome_title:"你好,我是 AI 智能助手",welcome_desc:"有什么可以帮你的吗?在下方输入框开始提问吧~",placeholder:"输入您的问题...",send:"发送",stop:"停止生成",new_message:"新消息",copy:"复制",copied:"已复制",retry:"重新生成",retrying:"重新生成中...",loading:"正在思考...",stream_interrupted:"回复被中断",stream_unstable:"网络不稳定,内容可能不完整",category_placeholder:"选择知识库分类",category_all:"全部分类",category_load_error:"加载分类失败",source_title:"参考来源",source_count:"{n} 条参考来源",source_loading:"加载来源中...",clear:"新对话",history_title:"历史会话",history_empty:"暂无历史会话",history_load_error:"加载会话列表失败",history_delete_confirm:"确定删除该会话?",history_export:"导出",history_delete:"删除",history_search:"搜索会话...",history_group_today:"今天",history_group_yesterday:"昨天",history_group_week:"本周",history_group_earlier:"更早",feedback_up:"有帮助",feedback_down:"没帮助",feedback_reason_title:"请选择不满意的原因:",feedback_reason_inaccurate:"信息错误",feedback_reason_irrelevant:"不相关",feedback_reason_incomplete:"不完整",feedback_reason_other:"其他",feedback_reason_comment_placeholder:"补充说明(可选)",feedback_reason_submit:"提交",teaser_text:"有什么可以帮你的吗?",new_msg_announce:"收到新消息",resize:"拖拽缩放窗口",error_network:"网络连接失败,请检查网络",error_offline:"⚠️ 网络连接异常,请检查网络后重试",error_timeout:"请求超时,请稍后重试",error_server:"服务器异常,请稍后重试",error_cors:"跨域请求被拦截,请联系管理员将当前域名加入 API 白名单",error_auth:"鉴权失败,请联系管理员",error_forbidden:"无访问权限,请联系管理员配置",error_not_found:"请求的资源不存在",error_rate_limit:"请求过于频繁,请稍后重试",error_unavailable:"服务暂不可用,请稍后重试",error_unknown:"请求发生未知错误",error_send:"发送失败,请稍后重试",error_stream_unsupported:"浏览器不支持流式读取"},en:{title:"AI Assistant",minimize:"Minimize",close:"Close",status_online:"Online",role_selector_label:"Service",welcome_title:"Hi, I am your AI assistant",welcome_desc:"How can I help you? Type your question below to get started.",placeholder:"Type your question...",send:"Send",stop:"Stop generating",new_message:"New message",copy:"Copy",copied:"Copied",retry:"Regenerate",retrying:"Regenerating...",loading:"Thinking...",stream_interrupted:"Response interrupted",stream_unstable:"Network unstable, content may be incomplete",category_placeholder:"Select category",category_all:"All categories",category_load_error:"Failed to load categories",source_title:"Sources",source_count:"{n} source(s)",source_loading:"Loading sources...",clear:"New chat",history_title:"History",history_empty:"No conversations yet",history_load_error:"Failed to load conversations",history_delete_confirm:"Delete this conversation?",history_export:"Export",history_delete:"Delete",history_search:"Search conversations...",history_group_today:"Today",history_group_yesterday:"Yesterday",history_group_week:"This Week",history_group_earlier:"Earlier",feedback_up:"Helpful",feedback_down:"Not helpful",feedback_reason_title:"Please tell us why:",feedback_reason_inaccurate:"Inaccurate",feedback_reason_irrelevant:"Irrelevant",feedback_reason_incomplete:"Incomplete",feedback_reason_other:"Other",feedback_reason_comment_placeholder:"Additional comments (optional)",feedback_reason_submit:"Submit",teaser_text:"How can I help you?",new_msg_announce:"New message received",resize:"Resize window",error_network:"Network connection failed",error_offline:"⚠️ Connection lost. Please check your network and try again.",error_timeout:"Request timed out, please try again",error_server:"Server error, please try again later",error_cors:"CORS request blocked. Please contact admin to whitelist your domain",error_auth:"Authentication failed, please contact admin",error_forbidden:"Access denied, please contact admin",error_not_found:"Resource not found",error_rate_limit:"Too many requests, please try again later",error_unavailable:"Service temporarily unavailable",error_unknown:"Unknown request error",error_send:"Failed to send, please try again",error_stream_unsupported:"Browser does not support streaming"}};let s="zh-CN";function o(e,n){let t=(r[s]||r["zh-CN"])[e]||r["zh-CN"][e]||e;if(n)for(const[e,r]of Object.entries(n))t=t.replace(`{${e}}`,String(r));return t}let a=null,i=null;function c(e){i=e}function l(){var e;return null!==(e=null!=i?i:null==a?void 0:a.integrateId)&&void 0!==e?e:""}function d(e){a&&(a.chatId=e)}function p(){return(null==a?void 0:a.chatId)||""}function u(e){if(!a)throw new Error("API 配置未初始化");return`${a.requestDomain.replace(/\/+$/,"")}${e.startsWith("/")?e:`/${e}`}`}function m(e,n,t){null!=t&&("string"==typeof t&&""===t.trim()||e.set(n,String(t)))}async function k(e,n={},r=3e4,s){const i=new AbortController,c=setTimeout(()=>i.abort(),r);s&&(s.aborted?i.abort():s.addEventListener("abort",()=>i.abort(),{once:!0}));try{const r={};n.headers&&(n.headers instanceof Headers?n.headers.forEach((e,n)=>{r[n]=e}):Array.isArray(n.headers)?n.headers.forEach(([e,n])=>{r[e]=n}):Object.assign(r,n.headers)),(null==a?void 0:a.token)&&(e.includes("/ai/")||e.endsWith("/feedback"))&&(r.Authorization=`Bearer ${a.token}`);const s=await fetch(e,Object.assign(Object.assign({},n),{headers:r,signal:i.signal,mode:"cors",credentials:"include"}));return 401===s.status&&(e.includes("/ai/")||e.endsWith("/feedback"))&&t.error("SDK 认证失败:Token 缺失或已过期,请重新调用 /open-api/auth/token 换取 Token"),s}catch(e){if(null==s?void 0:s.aborted)throw new g("aborted","aborted");if(e instanceof DOMException&&"AbortError"===e.name)throw new g(o("error_timeout"),"timeout");if(e instanceof TypeError&&e.message.includes("Failed to fetch"))throw new g(o("error_cors"),"cors");throw new g(o("error_network"),"network")}finally{clearTimeout(c)}}class g extends Error{constructor(e,n){super(e),this.name="CskError",this.type=n}}function h(e){switch(e){case 401:return o("error_auth");case 403:return o("error_forbidden");case 404:return o("error_not_found");case 429:return o("error_rate_limit");case 500:return o("error_server");case 502:case 503:return o("error_unavailable");default:return`${o("error_unknown")}(${e})`}}async function b(e){const n=function(e){const n=new URLSearchParams;return n.set("message",e),n.set("chatId",a.chatId),m(n,"roleId",l()),m(n,"accountId",a.userId),u(`/ai/assistant_app/chat/sync?${n.toString()}`)}(e);t.lifecycleSend(l(),e.length);try{const e=await k(n);if(!e.ok){const n=h(e.status);throw t.lifecycleError(l(),String(e.status),n),new g(n,`http_${e.status}`)}const r=await e.text();return t.lifecycleReply(l(),r.length),r}catch(e){if(e instanceof g)throw e;throw t.lifecycleError(l(),"unknown",String(e)),new g(o("error_unknown"),"unknown")}}async function f(e,n,r,s,i,c,d){var p;const b=c?function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy",a.rewriteStrategy||"REWRITE"),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/chat/rag/sse?${t.toString()}`)}(e,i):function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/chat/sse?${t.toString()}`)}(e,i);let f="";t.lifecycleSend(l(),e.length);try{const e=await k(b,{},6e4,d);if(!e.ok){const n=h(e.status);return t.lifecycleError(l(),String(e.status),n),void s(new g(n,`http_${e.status}`))}const a=null===(p=e.body)||void 0===p?void 0:p.getReader();if(!a)return void s(new g(o("error_stream_unsupported"),"stream_unsupported"));const i=new TextDecoder("utf-8",{stream:!0});let c="",u=[],m="";try{for(;;){const{done:e,value:t}=await a.read();if(e)break;c+=i.decode(t,{stream:!0});const r=c.split("\n");c=r.pop()||"";for(const e of r){const t=e.trim();if(!t){if(u.length>0){if("status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e)}u=[]}m="";continue}if(t.startsWith(":"))continue;if("[DONE]"===t){if(u.length>0&&"status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e),u=[]}m="";break}if(t.startsWith("event:")){m=t.substring(6).trim();continue}if(t.startsWith("id:")||t.startsWith("retry:"))continue;let r;t.startsWith("data:")?(r=t.substring(5),r.startsWith(" ")&&(r=r.substring(1))):r=t,u.push(r)}}if(c.trim()){const e=c.trim();if(!e.startsWith(":"))if(e.startsWith("data:")){let n=e.substring(5);n.startsWith(" ")&&(n=n.substring(1)),u.push(n)}else"[DONE]"===e||e.startsWith("event:")||e.startsWith("id:")||e.startsWith("retry:")||u.push(e)}if(u.length>0&&"status"!==m&&"tool_call_result"!==m){const e=u.join("\n");f+=e,n(e),u=[]}}catch(e){if(null==d?void 0:d.aborted)t.info(`流式被用户中断,保留已生成内容 length=${f.length}`);else{if(!(f.length>0))throw e;n("\n\n"+o("stream_unstable"))}}finally{a.releaseLock()}t.lifecycleStreamDone(l(),f.length),r()}catch(e){if((null==d?void 0:d.aborted)||e instanceof g&&"aborted"===e.type)return void r();e instanceof g?s(e):(t.lifecycleError(l(),"unknown",String(e)),s(new g(o("error_network"),"network")))}}async function y(e,n){const r=function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy",a.rewriteStrategy||"REWRITE"),m(t,"roleId",l()),m(t,"accountId",a.userId),m(t,"categoryId",null!=n?n:a.categoryId),u(`/ai/assistant_app/rag/sources?${t.toString()}`)}(e,n);try{const e=await k(r);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return n.success&&Array.isArray(n.data)?(t.info(`获取引用来源 count=${n.data.length}`),n.data):[]}catch(e){return t.error("获取引用来源失败",e),[]}}async function v(e,n,r,s){if(!a)return!1;const o=u("/feedback");try{const i={messageId:String(e),conversationId:a.chatId,feedbackType:n};r&&(i.reasonCategory=r),s&&(i.reasonComment=s);const c=await k(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)});if(!c.ok)return t.error(`反馈提交失败 status=${c.status}`),!1;return(await c.json()).success||!1}catch(e){return t.error("反馈提交异常",e),!1}}async function x(e=1,n=20,r,s){const o=new URLSearchParams;o.set("page",String(e)),o.set("size",String(n)),r&&o.set("accountId",r),s&&o.set("roleId",s);const a=u(`/ai/sdk/conversation/list?${o.toString()}`);try{const e=await k(a);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return{list:n.success&&Array.isArray(n.data)?n.data:[],total:n.total||0,pages:n.pages||0}}catch(e){return t.error("加载会话列表失败",e),{list:[],total:0,pages:0}}}async function w(e){const n=new URLSearchParams;(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l());const r=u(`/ai/sdk/conversation/${e}/messages?${n.toString()}`);try{const e=await k(r);if(!e.ok)throw new g(h(e.status),`http_${e.status}`);const n=await e.json();return{messages:n.success&&Array.isArray(n.data)?n.data:[],total:n.total||0}}catch(e){return t.error("加载会话消息失败",e),{messages:[],total:0}}}async function _(e){const n=new URLSearchParams;(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l());const r=u(`/ai/sdk/conversation/${e}?${n.toString()}`);try{const n=await k(r,{method:"DELETE"});if(!n.ok)throw new g(h(n.status),`http_${n.status}`);const s=await n.json();return t.info(`删除会话 id=${e} success=${s.success}`),s.success||!1}catch(e){return t.error("删除会话失败",e),!1}}function E(e){const n=new URLSearchParams;return(null==a?void 0:a.userId)&&n.set("accountId",a.userId),l()&&n.set("roleId",l()),u(`/ai/sdk/conversation/${e}/export?${n.toString()}`)}async function C(e=!1){if(!a)return"";const n=l();if(!e){const e=function(e,n){try{return localStorage.getItem(L(e,n))||""}catch(e){return""}}(n,a.userId);if(e)return a.chatId=e,e}try{const e=await x(1,5,a.userId,n);if(e.list.length>0){const r=e.list[0],s=r.conversationId||r.chatId||"";if(s)return a.chatId=s,I(n,a.userId,s),t.info(`从后端恢复会话 chatId=${s} messageCount=${r.messageCount}`),s}}catch(e){}const r=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();return a.chatId=r,I(n,a.userId,r),r}function L(e,n){return`csk_chatId_${e}${n?"_"+n:""}`}function I(e,n,t){try{t?localStorage.setItem(L(e,n),t):localStorage.removeItem(L(e,n))}catch(e){}}let S=null;function A(e){const n=$(e.primaryColor,-15),t=$(e.primaryColor,18),r=function(e){const n=e.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);return n?`${parseInt(n[1],16)}, ${parseInt(n[2],16)}, ${parseInt(n[3],16)}`:"79, 70, 229"}(e.primaryColor);return`\n --csk-primary: ${e.primaryColor};\n --csk-primary-hover: ${n};\n --csk-primary-light: ${t};\n --csk-primary-rgb: ${r};\n --csk-bg-user: linear-gradient(135deg, ${e.primaryColor}, ${n});\n --csk-bg-ai: #ffffff;\n --csk-text-user: #ffffff;\n --csk-text-ai: #1F2937;\n --csk-window-width: ${e.width}px;\n --csk-window-height: ${e.height}px;\n --csk-radius: 16px;\n --csk-shadow-window: 0 12px 48px rgba(15, 23, 42, 0.18), 0 2px 8px rgba(15, 23, 42, 0.06);\n --csk-shadow-bubble: 0 1px 2px rgba(15, 23, 42, 0.06);\n --csk-border: #ECEEF2;\n --csk-bg-app: #F6F7F9;\n `}function $(e,n){const t=e.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);if(!t)return e;const r=e=>Math.max(0,Math.min(255,e)),s=r(parseInt(t[1],16)+n),o=r(parseInt(t[2],16)+n),a=r(parseInt(t[3],16)+n);return`#${s.toString(16).padStart(2,"0")}${o.toString(16).padStart(2,"0")}${a.toString(16).padStart(2,"0")}`}function N(e){document.querySelector("style[data-csk-sdk]")||(S=document.createElement("style"),S.setAttribute("data-csk-sdk",""),S.textContent=function(e){return`\n/* ChatbotSDK 样式 - csk- 命名空间 */\n.csk-root {\n ${A(e)}\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;\n font-size: 14px;\n line-height: 1.55;\n color: #1F2937;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n box-sizing: border-box;\n}\n.csk-root *, .csk-root *::before, .csk-root *::after { box-sizing: border-box; }\n\n/* ========== 悬浮按钮 ========== */\n.csk-launcher {\n position: fixed;\n bottom: 24px;\n z-index: 9998;\n width: 60px;\n height: 60px;\n border-radius: 50%;\n /* 白色背景,简洁克制 */\n background: #ffffff;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #fff;\n user-select: none;\n overflow: hidden;\n /* 浅灰边框 */\n border: 2px solid #E5E7EB;\n /* 简洁柔和阴影 */\n box-shadow:\n 0 2px 8px rgba(0, 0, 0, 0.08),\n 0 4px 16px rgba(0, 0, 0, 0.06);\n transition:\n transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1),\n box-shadow 0.25s ease,\n border-color 0.25s ease;\n animation:\n csk-launcher-in 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;\n}\n.csk-launcher--right { right: 24px; }\n.csk-launcher--left { left: 24px; }\n\n.csk-launcher:hover {\n transform: translateY(-3px) scale(1.08);\n border-color: #D1D5DB;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.10),\n 0 8px 24px rgba(0, 0, 0, 0.08);\n}\n.csk-launcher:active { transform: scale(0.93); }\n.csk-launcher svg {\n width: 30px;\n height: 30px;\n position: relative;\n z-index: 1;\n filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.15));\n}\n.csk-launcher img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n position: relative;\n z-index: 1;\n -webkit-user-drag: none;\n user-select: none;\n}\n\n@keyframes csk-launcher-in {\n 0% { opacity: 0; transform: scale(0.5) translateY(16px); }\n 60% { transform: scale(1.06) translateY(-2px); }\n 100% { opacity: 1; transform: scale(1) translateY(0); }\n}\n\n/* ========== 聊天弹窗 ========== */\n.csk-window {\n position: fixed;\n bottom: 24px;\n z-index: 9999;\n width: var(--csk-window-width);\n height: var(--csk-window-height);\n max-height: calc(100vh - 48px);\n background: #fff;\n border-radius: var(--csk-radius);\n box-shadow: var(--csk-shadow-window);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transform-origin: bottom right;\n transition: opacity 0.24s ease, transform 0.24s cubic-bezier(0.34, 1.2, 0.64, 1), visibility 0.24s;\n opacity: 1;\n transform: translateY(0) scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.csk-window--right { right: 24px; transform-origin: bottom right; }\n.csk-window--left { left: 24px; transform-origin: bottom left; }\n.csk-window--hidden {\n opacity: 0;\n transform: translateY(12px) scale(0.96);\n visibility: hidden;\n pointer-events: none;\n}\n\n/* ========== 水印层 ========== */\n.csk-watermark {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n user-select: none;\n z-index: 0;\n background-repeat: repeat;\n opacity: 0.8;\n}\n\n/* ========== 头部 ========== */\n.csk-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n min-height: 60px;\n background: var(--csk-bg-user);\n color: #fff;\n cursor: move;\n user-select: none;\n position: relative;\n flex-shrink: 0;\n}\n.csk-header::after {\n content: '';\n position: absolute;\n left: 0; right: 0; bottom: 0;\n height: 24px;\n background: linear-gradient(to bottom, rgba(0,0,0,0.04), transparent);\n pointer-events: none;\n}\n.csk-header__left {\n display: flex;\n align-items: center;\n gap: 12px;\n min-width: 0;\n}\n.csk-header__avatar {\n width: 38px;\n height: 38px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.22);\n backdrop-filter: blur(4px);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.25);\n}\n.csk-header__avatar svg { width: 22px; height: 22px; }\n.csk-header__info {\n display: flex;\n flex-direction: column;\n min-width: 0;\n}\n.csk-header__title {\n font-size: 15px;\n font-weight: 600;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n letter-spacing: 0.2px;\n}\n.csk-header__status {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n font-size: 11.5px;\n opacity: 0.9;\n margin-top: 2px;\n}\n.csk-status-dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n background: #6EE7B7;\n box-shadow: 0 0 0 0 rgba(110, 231, 183, 0.7);\n animation: csk-status-pulse 2s infinite;\n}\n@keyframes csk-status-pulse {\n 0% { box-shadow: 0 0 0 0 rgba(110, 231, 183, 0.7); }\n 70% { box-shadow: 0 0 0 6px rgba(110, 231, 183, 0); }\n 100% { box-shadow: 0 0 0 0 rgba(110, 231, 183, 0); }\n}\n.csk-header__actions {\n display: flex;\n align-items: center;\n gap: 2px;\n flex-shrink: 0;\n}\n.csk-header__btn,\n.csk-history-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 8px;\n transition: background 0.15s, transform 0.15s;\n}\n.csk-header__btn:hover,\n.csk-history-btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n.csk-header__btn:active,\n.csk-history-btn:active { transform: scale(0.92); }\n\n/* ========== 角色选择器 ========== */\n.csk-role-select-wrap {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n margin: 0 4px;\n}\n.csk-role-select {\n appearance: none;\n -webkit-appearance: none;\n padding: 4px 24px 4px 10px;\n border: 1px solid rgba(255, 255, 255, 0.35);\n border-radius: 8px;\n background: rgba(255, 255, 255, 0.15) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='white' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 6px center;\n color: #fff;\n font-size: 12px;\n font-family: inherit;\n cursor: pointer;\n outline: none;\n transition: background 0.15s, border-color 0.15s;\n max-width: 120px;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-role-select:hover {\n background-color: rgba(255, 255, 255, 0.25);\n border-color: rgba(255, 255, 255, 0.55);\n}\n.csk-role-select:focus {\n border-color: rgba(255, 255, 255, 0.7);\n box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.2);\n}\n.csk-role-select option {\n color: #1F2937;\n background: #fff;\n}\n\n/* ========== 消息区 ========== */\n.csk-messages {\n flex: 1;\n overflow-y: auto;\n padding: 20px 16px 12px;\n background: var(--csk-bg-app);\n scroll-behavior: smooth;\n}\n.csk-messages::-webkit-scrollbar { width: 6px; }\n.csk-messages::-webkit-scrollbar-track { background: transparent; }\n.csk-messages::-webkit-scrollbar-thumb {\n background: #D8DCE3;\n border-radius: 3px;\n}\n.csk-messages::-webkit-scrollbar-thumb:hover { background: #C2C7D0; }\n\n/* 离线提示横幅 */\n.csk-offline-banner {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n padding: 8px 12px;\n margin: 0 0 8px 0;\n border-radius: 8px;\n font-size: 12px;\n line-height: 1.5;\n background: #FEF2F2;\n color: #991B1B;\n border: 1px solid #FECACA;\n}\n.csk-dark .csk-offline-banner {\n background: #450A0A;\n color: #FCA5A5;\n border-color: #7F1D1D;\n}\n\n/* 欢迎空状态 */\n.csk-welcome {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n padding: 48px 24px 32px;\n color: #6B7280;\n animation: csk-fade-in 0.3s ease;\n}\n.csk-welcome__avatar {\n width: 56px;\n height: 56px;\n border-radius: 50%;\n background: var(--csk-bg-user);\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 14px;\n box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.3);\n}\n.csk-welcome__avatar svg { width: 30px; height: 30px; }\n.csk-welcome__title {\n font-size: 15px;\n font-weight: 600;\n color: #1F2937;\n margin-bottom: 4px;\n}\n.csk-welcome__desc {\n font-size: 13px;\n color: #9CA3AF;\n line-height: 1.6;\n}\n\n/* 消息气泡 */\n.csk-msg {\n display: flex;\n margin-bottom: 12px;\n max-width: 100%;\n word-break: break-word;\n animation: csk-msg-in 0.28s cubic-bezier(0.22, 1, 0.36, 1);\n}\n.csk-msg--user {\n flex-direction: row-reverse;\n align-items: flex-end;\n}\n.csk-msg--ai {\n flex-direction: row;\n align-items: flex-start;\n}\n.csk-msg__avatar {\n width: 30px;\n height: 30px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin: 0 8px;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-msg__avatar svg { width: 18px; height: 18px; }\n.csk-msg__avatar--ai {\n background: #fff;\n color: var(--csk-primary);\n border: 1px solid var(--csk-border);\n}\n.csk-msg__avatar--user {\n background: var(--csk-bg-user);\n color: #fff;\n}\n.csk-msg__content {\n display: flex;\n flex-direction: column;\n min-width: 0;\n max-width: calc(100% - 46px);\n}\n.csk-msg--user .csk-msg__content { align-items: flex-end; }\n.csk-msg--ai .csk-msg__content { align-items: flex-start; }\n.csk-msg__bubble {\n padding: 10px 14px;\n border-radius: 16px;\n font-size: 14px;\n line-height: 1.6;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-msg--user .csk-msg__bubble {\n background: var(--csk-bg-user);\n color: var(--csk-text-user);\n border-radius: 16px 16px 4px 16px;\n}\n.csk-msg--ai .csk-msg__bubble {\n background: var(--csk-bg-ai);\n color: var(--csk-text-ai);\n border-radius: 16px 16px 16px 4px;\n border: 1px solid var(--csk-border);\n}\n.csk-msg__time {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 3px;\n padding: 0 4px;\n}\n\n/* 元信息行:时间戳居左,操作按钮居右,共用一行 */\n.csk-msg__meta {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 3px;\n width: 100%;\n}\n.csk-msg__meta .csk-msg__time { margin-top: 0; }\n\n@keyframes csk-msg-in {\n from { opacity: 0; transform: translateY(8px); }\n to { opacity: 1; transform: translateY(0); }\n}\n@keyframes csk-fade-in {\n from { opacity: 0; }\n to { opacity: 1; }\n}\n\n/* ========== Loading 动画 ========== */\n.csk-loading {\n display: flex;\n align-items: center;\n margin-bottom: 12px;\n animation: csk-msg-in 0.28s ease;\n}\n.csk-loading__avatar {\n width: 30px;\n height: 30px;\n border-radius: 50%;\n background: #fff;\n color: var(--csk-primary);\n border: 1px solid var(--csk-border);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin: 0 8px;\n box-shadow: var(--csk-shadow-bubble);\n}\n.csk-loading__avatar svg { width: 18px; height: 18px; }\n.csk-loading__bubble {\n background: #fff;\n border: 1px solid var(--csk-border);\n border-radius: 16px 16px 16px 4px;\n padding: 12px 16px;\n display: flex;\n align-items: center;\n gap: 5px;\n}\n.csk-loading__dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n background: #B4B9C2;\n animation: csk-bounce 1.4s ease-in-out infinite both;\n}\n.csk-loading__dot:nth-child(1) { animation-delay: 0s; }\n.csk-loading__dot:nth-child(2) { animation-delay: 0.16s; }\n.csk-loading__dot:nth-child(3) { animation-delay: 0.32s; }\n\n@keyframes csk-bounce {\n 0%, 80%, 100% { transform: scale(0.6); opacity: 0.6; }\n 40% { transform: scale(1); opacity: 1; }\n}\n\n/* ========== 输入区 ========== */\n.csk-input-area {\n padding: 10px 12px 14px;\n background: #fff;\n border-top: 1px solid var(--csk-border);\n flex-shrink: 0;\n}\n.csk-input-wrap {\n display: flex;\n align-items: flex-end;\n gap: 8px;\n background: var(--csk-bg-app);\n border: 1px solid var(--csk-border);\n border-radius: 14px;\n padding: 6px 6px 6px 14px;\n transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;\n}\n.csk-input-wrap--focus {\n border-color: var(--csk-primary);\n background: #fff;\n box-shadow: 0 0 0 3px rgba(var(--csk-primary-rgb), 0.12);\n}\n.csk-input {\n flex: 1;\n border: none;\n background: transparent;\n padding: 8px 0;\n font-size: 14px;\n outline: none;\n font-family: inherit;\n resize: none;\n min-height: 22px;\n max-height: 120px;\n line-height: 1.5;\n color: #1F2937;\n}\n.csk-input::placeholder { color: #9CA3AF; }\n.csk-root .csk-input:focus-visible { outline: none; }\n.csk-send-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 36px;\n height: 36px;\n min-width: 36px;\n border: none;\n border-radius: 10px;\n background: var(--csk-bg-user);\n color: #fff;\n cursor: pointer;\n transition: transform 0.18s, box-shadow 0.18s, opacity 0.18s;\n box-shadow: 0 3px 10px rgba(var(--csk-primary-rgb), 0.3);\n}\n.csk-send-btn:hover:not(:disabled) {\n transform: translateY(-1px);\n box-shadow: 0 5px 14px rgba(var(--csk-primary-rgb), 0.4);\n}\n.csk-send-btn:active:not(:disabled) { transform: scale(0.92); }\n.csk-send-btn:disabled {\n background: #D1D5DB;\n box-shadow: none;\n cursor: not-allowed;\n opacity: 0.7;\n}\n.csk-send-btn svg { width: 18px; height: 18px; }\n\n/* ========== 保密声明脚注 ========== */\n.csk-disclaimer {\n margin-top: 8px;\n padding: 6px 8px 4px;\n font-size: 10px;\n color: #9CA3AF;\n line-height: 1.5;\n user-select: none;\n}\n.csk-disclaimer__title {\n font-weight: 600;\n margin-bottom: 2px;\n color: #9CA3AF;\n}\n.csk-dark .csk-disclaimer { color: #6B7280; }\n.csk-dark .csk-disclaimer__title { color: #6B7280; }\n\n/* ========== 新对话按钮 ========== */\n.csk-clear-btn {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 5px 12px;\n border: 1px solid var(--csk-border);\n border-radius: 999px;\n background: #fff;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n margin: 0 auto 8px;\n transition: all 0.15s;\n font-family: inherit;\n}\n.csk-clear-btn:hover {\n background: #FEF2F2;\n border-color: #FCA5A5;\n color: #DC2626;\n}\n\n/* ========== P1: 知识库分类下拉 ========== */\n.csk-category-bar {\n display: flex;\n align-items: center;\n padding: 8px 12px;\n border-top: 1px solid var(--csk-border);\n background: #FBFBFC;\n gap: 8px;\n flex-shrink: 0;\n}\n.csk-category-bar__label {\n font-size: 13px;\n white-space: nowrap;\n}\n.csk-category-select {\n flex: 1;\n padding: 6px 28px 6px 10px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n font-size: 12.5px;\n color: #374151;\n background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 9px center;\n appearance: none;\n -webkit-appearance: none;\n outline: none;\n cursor: pointer;\n font-family: inherit;\n transition: border-color 0.2s, box-shadow 0.2s;\n max-width: 220px;\n}\n.csk-category-select:focus {\n border-color: var(--csk-primary);\n box-shadow: 0 0 0 3px rgba(var(--csk-primary-rgb), 0.12);\n}\n\n/* ========== P1: RAG 引用来源卡片 ========== */\n.csk-sources {\n margin-top: 6px;\n border: 1px solid var(--csk-border);\n border-radius: 12px;\n overflow: hidden;\n font-size: 12px;\n max-width: 100%;\n background: #FAFBFC;\n}\n.csk-sources__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 6px 10px;\n background: #F3F4F7;\n cursor: pointer;\n user-select: none;\n transition: background 0.15s;\n}\n.csk-sources__header:hover { background: #ECEEF2; }\n.csk-sources__title {\n display: flex;\n align-items: center;\n gap: 5px;\n font-weight: 500;\n color: #374151;\n}\n.csk-sources__arrow {\n transition: transform 0.2s;\n color: #9CA3AF;\n font-size: 10px;\n}\n.csk-sources--collapsed .csk-sources__arrow { transform: rotate(-90deg); }\n.csk-sources__body {\n border-top: 1px solid var(--csk-border);\n padding: 0;\n}\n.csk-sources--collapsed .csk-sources__body { display: none; }\n.csk-source-item {\n padding: 6px 10px;\n border-bottom: 1px solid #F0F1F4;\n transition: background 0.15s;\n}\n.csk-source-item:last-child { border-bottom: none; }\n.csk-source-item:hover { background: #fff; }\n.csk-source-item__name {\n font-weight: 500;\n color: #1F2937;\n margin-bottom: 2px;\n}\n.csk-source-item__snippet {\n color: #6B7280;\n line-height: 1.5;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n.csk-source-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n\n/* ========== P1: Markdown 渲染样式 ========== */\n.csk-msg--ai .csk-msg__bubble .csk-md-p { margin: 0 0 8px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-p:last-child { margin-bottom: 0; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h1,\n.csk-msg--ai .csk-msg__bubble .csk-md-h2,\n.csk-msg--ai .csk-msg__bubble .csk-md-h3,\n.csk-msg--ai .csk-msg__bubble .csk-md-h4,\n.csk-msg--ai .csk-msg__bubble .csk-md-h5,\n.csk-msg--ai .csk-msg__bubble .csk-md-h6 {\n margin: 14px 0 6px;\n font-weight: 600;\n line-height: 1.3;\n color: #111827;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1 { font-size: 20px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h2 { font-size: 17px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h3 { font-size: 15px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h4 { font-size: 14px; }\n\n.csk-md-code-block {\n position: relative;\n background: #1E293B;\n color: #E2E8F0;\n padding: 12px 14px;\n border-radius: 10px;\n overflow-x: auto;\n margin: 8px 0;\n font-size: 13px;\n line-height: 1.55;\n font-family: 'SF Mono', 'Consolas', 'Menlo', 'Monaco', monospace;\n}\n.csk-md-code-block code {\n background: none;\n padding: 0;\n border-radius: 0;\n font-size: inherit;\n color: inherit;\n}\n.csk-md-inline-code {\n background: rgba(var(--csk-primary-rgb), 0.1);\n color: var(--csk-primary);\n padding: 1px 6px;\n border-radius: 5px;\n font-size: 13px;\n font-family: 'SF Mono', 'Consolas', 'Menlo', 'Monaco', monospace;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol {\n padding-left: 22px;\n margin: 6px 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul li,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol li { margin-bottom: 4px; }\n.csk-md-blockquote {\n border-left: 3px solid var(--csk-primary);\n padding: 2px 12px;\n margin: 8px 0;\n color: #6B7280;\n background: rgba(var(--csk-primary-rgb), 0.05);\n border-radius: 0 6px 6px 0;\n}\n.csk-md-link {\n color: var(--csk-primary);\n text-decoration: none;\n border-bottom: 1px solid rgba(var(--csk-primary-rgb), 0.3);\n transition: border-color 0.15s;\n}\n.csk-md-link:hover { border-bottom-color: var(--csk-primary); }\n.csk-md-hr {\n border: none;\n border-top: 1px solid var(--csk-border);\n margin: 12px 0;\n}\n.csk-md-table-wrap {\n max-width: 100%;\n overflow-x: auto;\n margin: 10px 0;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n}\n.csk-md-table {\n width: 100%;\n min-width: 360px;\n border-collapse: collapse;\n font-size: 12.5px;\n line-height: 1.5;\n}\n.csk-md-table th,\n.csk-md-table td {\n padding: 7px 9px;\n border-right: 1px solid var(--csk-border);\n border-bottom: 1px solid var(--csk-border);\n text-align: left;\n vertical-align: top;\n}\n.csk-md-table th:last-child,\n.csk-md-table td:last-child { border-right: none; }\n.csk-md-table tbody tr:last-child td { border-bottom: none; }\n.csk-md-table th {\n background: rgba(var(--csk-primary-rgb), 0.07);\n color: #374151;\n font-weight: 600;\n}\n.csk-md-table tbody tr:nth-child(even) {\n background: rgba(148, 163, 184, 0.06);\n}\n.csk-md-table .csk-md-align-left { text-align: left; }\n.csk-md-table .csk-md-align-center { text-align: center; }\n.csk-md-table .csk-md-align-right { text-align: right; }\n\n/* ========== P2: 会话管理面板 ========== */\n.csk-history-panel {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: #fff;\n z-index: 10;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n animation: csk-slide-in 0.24s ease;\n}\n.csk-history-panel--hidden { display: none; }\n@keyframes csk-slide-in {\n from { transform: translateX(100%); opacity: 0.4; }\n to { transform: translateX(0); opacity: 1; }\n}\n.csk-history-panel__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 14px 16px;\n border-bottom: 1px solid var(--csk-border);\n background: var(--csk-bg-app);\n flex-shrink: 0;\n}\n.csk-history-panel__title {\n font-size: 14px;\n font-weight: 600;\n color: #1F2937;\n}\n.csk-history-panel__back {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 5px 12px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n background: #fff;\n color: #374151;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s;\n font-family: inherit;\n}\n.csk-history-panel__back:hover { background: #F3F4F6; }\n.csk-history-panel__list {\n flex: 1;\n overflow-y: auto;\n padding: 10px;\n}\n.csk-history-panel__list::-webkit-scrollbar { width: 5px; }\n.csk-history-panel__list::-webkit-scrollbar-thumb { background: #E5E7EB; border-radius: 2px; }\n.csk-history-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 11px 12px;\n border-radius: 10px;\n cursor: pointer;\n transition: background 0.15s;\n margin-bottom: 5px;\n border: 1px solid transparent;\n}\n.csk-history-item:hover { background: #F3F4F6; }\n.csk-history-item--active {\n background: rgba(var(--csk-primary-rgb), 0.08);\n border-color: rgba(var(--csk-primary-rgb), 0.2);\n}\n.csk-history-item--active:hover { background: rgba(var(--csk-primary-rgb), 0.12); }\n.csk-history-item__info { flex: 1; min-width: 0; }\n.csk-history-item__id {\n font-size: 13px;\n font-weight: 500;\n color: #1F2937;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-history-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 3px;\n}\n.csk-history-item__actions {\n display: flex;\n gap: 4px;\n margin-left: 8px;\n opacity: 0;\n transition: opacity 0.15s;\n}\n.csk-history-item:hover .csk-history-item__actions { opacity: 1; }\n.csk-history-action {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: none;\n border-radius: 7px;\n cursor: pointer;\n font-size: 12px;\n transition: all 0.15s;\n}\n.csk-history-action--export { background: #EFF6FF; color: #2563EB; }\n.csk-history-action--export:hover { background: #DBEAFE; }\n.csk-history-action--delete { background: #FEF2F2; color: #DC2626; }\n.csk-history-action--delete:hover { background: #FEE2E2; }\n.csk-history-panel__empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 48px 20px;\n color: #9CA3AF;\n font-size: 13px;\n text-align: center;\n}\n.csk-history-panel__empty-icon {\n font-size: 34px;\n margin-bottom: 10px;\n opacity: 0.5;\n}\n.csk-history-panel__loading {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n color: #9CA3AF;\n font-size: 13px;\n}\n\n/* ========== 快捷问题芯片 ========== */\n.csk-quick-replies {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n justify-content: center;\n margin-top: 18px;\n max-width: 320px;\n}\n.csk-quick-reply {\n border: 1px solid var(--csk-border);\n background: #fff;\n color: #374151;\n font-size: 12.5px;\n padding: 7px 13px;\n border-radius: 999px;\n cursor: pointer;\n font-family: inherit;\n line-height: 1.3;\n transition: all 0.18s ease;\n max-width: 100%;\n}\n.csk-quick-reply:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.06);\n transform: translateY(-1px);\n}\n.csk-quick-reply:active { transform: scale(0.96); }\n\n/* ========== 推荐问题(suggest-message-list) ========== */\n.csk-suggestions {\n margin-top: 6px;\n padding: 4px 0 0 0;\n}\n.csk-suggestions__list {\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n}\n.csk-suggestion-item {\n border: 1px solid var(--csk-border);\n background: #fff;\n color: #374151;\n font-size: 12px;\n padding: 4px 10px;\n border-radius: 999px;\n cursor: pointer;\n font-family: inherit;\n line-height: 1.3;\n transition: all 0.18s ease;\n max-width: 100%;\n text-align: left;\n}\n.csk-suggestion-item:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.06);\n transform: translateY(-1px);\n}\n.csk-suggestion-item:active { transform: scale(0.96); }\n\n/* ========== AI 消息操作条 ========== */\n.csk-msg__actions {\n display: flex;\n gap: 2px;\n padding: 0 2px;\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n.csk-msg--ai:hover .csk-msg__actions { opacity: 1; }\n.csk-msg--streaming .csk-msg__actions { display: none; }\n.csk-action-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: transparent;\n color: #9CA3AF;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.csk-action-btn:hover {\n background: #F3F4F6;\n color: #374151;\n}\n.csk-action-btn--done { color: #10B981; }\n.csk-action-btn:active { transform: scale(0.9); }\n\n/* ========== 流式打字光标 ========== */\n.csk-caret {\n display: inline-block;\n width: 7px;\n height: 15px;\n margin-left: 2px;\n vertical-align: text-bottom;\n background: var(--csk-primary);\n border-radius: 1px;\n animation: csk-caret-blink 1s step-end infinite;\n}\n@keyframes csk-caret-blink {\n 0%, 50% { opacity: 1; }\n 51%, 100% { opacity: 0; }\n}\n\n/* ========== 代码块复制按钮 ========== */\n.csk-md-code-copy {\n position: absolute;\n top: 8px;\n right: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: rgba(255, 255, 255, 0.12);\n color: #CBD5E1;\n border-radius: 6px;\n cursor: pointer;\n opacity: 0;\n transition: all 0.15s ease;\n}\n.csk-md-code-block:hover .csk-md-code-copy { opacity: 1; }\n.csk-md-code-copy:hover { background: rgba(255, 255, 255, 0.22); color: #fff; }\n.csk-md-code-copy:active { transform: scale(0.9); }\n\n/* ========== 新消息提示按钮 ========== */\n.csk-newmsg {\n position: absolute;\n bottom: 82px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 5;\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 7px 14px;\n border: none;\n background: var(--csk-primary);\n color: #fff;\n font-size: 12px;\n font-family: inherit;\n border-radius: 999px;\n cursor: pointer;\n box-shadow: 0 4px 14px rgba(var(--csk-primary-rgb), 0.38);\n transition: transform 0.2s ease, box-shadow 0.2s ease;\n animation: csk-msg-in 0.25s ease;\n white-space: nowrap;\n}\n.csk-newmsg:hover { transform: translateX(-50%) translateY(-1px); box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.48); }\n.csk-newmsg:active { transform: translateX(-50%) scale(0.95); }\n.csk-newmsg--hidden { display: none; }\n\n/* ========== 发送按钮停止态 ========== */\n.csk-send-btn--stop {\n background: #EF4444 !important;\n box-shadow: 0 3px 10px rgba(239, 68, 68, 0.35) !important;\n}\n.csk-send-btn--stop:hover:not(:disabled) {\n box-shadow: 0 5px 14px rgba(239, 68, 68, 0.45) !important;\n}\n\n/* ========== 窗口缩放拖拽手柄 ========== */\n.csk-resize-handle {\n position: absolute;\n right: 4px;\n bottom: 4px;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: flex-end;\n justify-content: flex-end;\n cursor: nwse-resize;\n z-index: 5;\n user-select: none;\n -webkit-user-select: none;\n /* 圆形半透明背景,与整体圆润风格一致 */\n border-radius: 50%;\n background: transparent;\n transition: background 0.2s ease;\n}\n.csk-resize-handle:hover {\n background: rgba(var(--csk-primary-rgb), 0.08);\n}\n\n/* 三斜线抓手 — 纯 CSS 绘制,用两条间距微调的线,视觉上是三条 */\n.csk-resize-grip {\n display: block;\n width: 10px;\n height: 10px;\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n #C8CCD2 38%, #C8CCD2 42%,\n transparent 42%, transparent 54%,\n #C8CCD2 54%, #C8CCD2 58%,\n transparent 58%, transparent 70%,\n #C8CCD2 70%, #C8CCD2 74%,\n transparent 74%\n );\n transition: background 0.2s ease;\n border-radius: 2px;\n}\n/* hover 时线条变为主色 */\n.csk-resize-handle:hover .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n var(--csk-primary) 38%, var(--csk-primary) 42%,\n transparent 42%, transparent 54%,\n var(--csk-primary) 54%, var(--csk-primary) 58%,\n transparent 58%, transparent 70%,\n var(--csk-primary) 70%, var(--csk-primary) 74%,\n transparent 74%\n );\n}\n\n/* 暗色模式 */\n.csk-dark .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n #5B6070 38%, #5B6070 42%,\n transparent 42%, transparent 54%,\n #5B6070 54%, #5B6070 58%,\n transparent 58%, transparent 70%,\n #5B6070 70%, #5B6070 74%,\n transparent 74%\n );\n}\n.csk-dark .csk-resize-handle:hover .csk-resize-grip {\n background:\n linear-gradient(135deg,\n transparent 0%, transparent 38%,\n var(--csk-primary-light) 38%, var(--csk-primary-light) 42%,\n transparent 42%, transparent 54%,\n var(--csk-primary-light) 54%, var(--csk-primary-light) 58%,\n transparent 58%, transparent 70%,\n var(--csk-primary-light) 70%, var(--csk-primary-light) 74%,\n transparent 74%\n );\n}\n\n/* 缩放拖拽中:禁用过渡动画 + 全局光标 */\n.csk-window--resizing {\n transition: none !important;\n user-select: none;\n}\n.csk-window--resizing * { cursor: nwse-resize !important; }\n\n/* ========== 暗色模式 ========== */\n.csk-root.csk-dark {\n --csk-bg-ai: #1E1E2E;\n --csk-text-ai: #E2E8F0;\n --csk-border: #3B3B52;\n --csk-bg-app: #141421;\n color: #E2E8F0;\n}\n.csk-dark .csk-window {\n background: #1A1A2E;\n box-shadow: 0 12px 48px rgba(0, 0, 0, 0.4), 0 2px 8px rgba(0, 0, 0, 0.2);\n}\n.csk-dark .csk-watermark {\n opacity: 1;\n}\n.csk-dark .csk-header::after { background: linear-gradient(to bottom, rgba(0,0,0,0.12), transparent); }\n.csk-dark .csk-msg__avatar--ai {\n background: var(--csk-bg-ai);\n color: var(--csk-primary);\n border-color: var(--csk-border);\n}\n.csk-dark .csk-input-area { background: #1A1A2E; border-top-color: var(--csk-border); }\n.csk-dark .csk-input-wrap { background: var(--csk-bg-app); border-color: var(--csk-border); }\n.csk-dark .csk-input-wrap--focus { background: #1A1A2E; border-color: var(--csk-primary); }\n.csk-dark .csk-input { color: #E2E8F0; }\n.csk-dark .csk-loading__avatar { background: var(--csk-bg-ai); border-color: var(--csk-border); }\n.csk-dark .csk-loading__bubble { background: var(--csk-bg-ai); border-color: var(--csk-border); }\n.csk-dark .csk-loading__dot { background: #6B7280; }\n.csk-dark .csk-category-bar { background: #1A1A2E; border-top-color: var(--csk-border); }\n.csk-dark .csk-category-select { background-color: var(--csk-bg-app); border-color: var(--csk-border); color: #E2E8F0; }\n.csk-dark .csk-sources { background: #1E1E2E; border-color: var(--csk-border); }\n.csk-dark .csk-sources__header { background: #25253A; }\n.csk-dark .csk-sources__header:hover { background: #2D2D48; }\n.csk-dark .csk-source-item:hover { background: var(--csk-bg-ai); }\n.csk-dark .csk-source-item__name { color: #E2E8F0; }\n.csk-dark .csk-source-item__meta { color: #6B7280; }\n.csk-dark .csk-history-panel { background: #1A1A2E; }\n.csk-dark .csk-history-panel__header { background: var(--csk-bg-app); border-bottom-color: var(--csk-border); }\n.csk-dark .csk-history-panel__back { background: var(--csk-bg-app); border-color: var(--csk-border); color: #E2E8F0; }\n.csk-dark .csk-history-panel__back:hover { background: #2D2D48; }\n.csk-dark .csk-history-item:hover { background: #25253A; }\n.csk-dark .csk-history-item__id { color: #E2E8F0; }\n.csk-dark .csk-history-item__meta { color: #6B7280; }\n.csk-dark .csk-history-item--active { background: rgba(var(--csk-primary-rgb), 0.15); }\n.csk-dark .csk-history-item--active:hover { background: rgba(var(--csk-primary-rgb), 0.22); }\n.csk-dark .csk-action-btn:hover { background: #2D2D48; color: #E2E8F0; }\n.csk-dark .csk-clear-btn { background: var(--csk-bg-app); border-color: var(--csk-border); color: #9CA3AF; }\n.csk-dark .csk-clear-btn:hover { background: #3B1A1A; border-color: #7F1D1D; color: #FCA5A5; }\n.csk-dark .csk-md-code-block { background: #0F0F1A; }\n.csk-dark .csk-md-blockquote { background: rgba(var(--csk-primary-rgb), 0.08); }\n.csk-dark .csk-md-link { color: var(--csk-primary-light); }\n.csk-dark .csk-md-table th { background: rgba(var(--csk-primary-rgb), 0.14); color: #E2E8F0; }\n.csk-dark .csk-md-table tbody tr:nth-child(even) { background: rgba(148, 163, 184, 0.05); }\n.csk-dark .csk-msg--ai .csk-msg__bubble { background: var(--csk-bg-ai); color: var(--csk-text-ai); border-color: var(--csk-border); }\n.csk-dark .csk-welcome__title { color: #E2E8F0; }\n.csk-dark .csk-welcome__desc { color: #6B7280; }\n.csk-dark .csk-quick-reply { background: var(--csk-bg-app); border-color: var(--csk-border); color: #CBD5E1; }\n.csk-dark .csk-quick-reply:hover { background: rgba(var(--csk-primary-rgb), 0.12); border-color: var(--csk-primary); color: var(--csk-primary-light); }\n.csk-dark .csk-suggestion-item { background: var(--csk-bg-app); border-color: var(--csk-border); color: #CBD5E1; }\n.csk-dark .csk-suggestion-item:hover { background: rgba(var(--csk-primary-rgb), 0.12); border-color: var(--csk-primary); color: var(--csk-primary-light); }\n.csk-dark .csk-teaser { background: #2D2D48; color: #E2E8F0; box-shadow: 0 4px 20px rgba(0,0,0,0.35); }\n.csk-dark .csk-teaser::after { border-top-color: #2D2D48; }\n.csk-dark .csk-teaser__close { color: #6B7280; }\n.csk-dark .csk-teaser__close:hover { color: #9CA3AF; }\n.csk-dark .csk-feedback-btn { background: rgba(var(--csk-primary-rgb), 0.1); color: #9CA3AF; }\n.csk-dark .csk-feedback-btn:hover { background: rgba(var(--csk-primary-rgb), 0.2); color: var(--csk-primary-light); }\n.csk-dark .csk-feedback-btn--active { background: rgba(var(--csk-primary-rgb), 0.28); color: var(--csk-primary-light); }\n.csk-dark .csk-history-panel__search-wrap { background: var(--csk-bg-app); border-color: var(--csk-border); }\n.csk-dark .csk-history-panel__search-wrap:focus-within { border-color: var(--csk-primary); }\n.csk-dark .csk-history-panel__search { color: #E2E8F0; }\n.csk-dark .csk-launcher__badge { box-shadow: 0 0 0 2px #1A1A2E; }\n.csk-dark .csk-welcome__avatar { box-shadow: 0 6px 18px rgba(var(--csk-primary-rgb), 0.25); }\n.csk-dark .csk-header__avatar { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.15); background: rgba(255, 255, 255, 0.1); }\n.csk-dark .csk-role-select option {\n background: #1A1A2E;\n color: #E2E8F0;\n}\n\n/* Launcher 拖拽态:微放大 + 阴影加深 */\n.csk-launcher--dragging {\n cursor: grabbing !important;\n transform: scale(1.1) !important;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.14),\n 0 12px 32px rgba(0, 0, 0, 0.18),\n 0 14px 40px rgba(236, 72, 153, 0.36),\n 0 0 56px rgba(236, 72, 153, 0.18) !important;\n}\n/* 拖拽中隐藏未读徽章 */\n.csk-launcher--dragging .csk-launcher__badge { display: none !important; }\n/* 吸附过渡动画(释放时的缓动) */\n.csk-launcher--snap {\n transition: left 0.3s ease-out, right 0.3s ease-out, bottom 0.3s ease-out !important;\n}\n\n/* ========== Launcher 未读徽章 ========== */\n.csk-launcher__badge {\n position: absolute;\n top: -2px;\n right: -2px;\n width: 16px;\n height: 16px;\n border-radius: 50%;\n background: #EF4444;\n border: 2px solid #fff;\n box-shadow: 0 0 0 2px #fff;\n animation: csk-badge-in 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);\n pointer-events: none;\n}\n.csk-launcher__badge--hidden { display: none; }\n@keyframes csk-badge-in {\n from { transform: scale(0); }\n to { transform: scale(1); }\n}\n\n/* ========== Launcher 提示气泡 ========== */\n.csk-teaser {\n position: fixed;\n bottom: 90px;\n z-index: 9997;\n max-width: 240px;\n padding: 10px 14px;\n background: #fff;\n color: #1F2937;\n font-size: 13px;\n line-height: 1.5;\n border-radius: 12px;\n box-shadow: 0 4px 20px rgba(15, 23, 42, 0.15);\n animation: csk-teaser-in 0.35s cubic-bezier(0.22, 1, 0.36, 1);\n cursor: pointer;\n user-select: none;\n}\n.csk-teaser--right { right: 24px; }\n.csk-teaser--left { left: 24px; }\n.csk-teaser::after {\n content: '';\n position: absolute;\n bottom: -6px;\n right: 28px;\n width: 12px;\n height: 12px;\n background: inherit;\n border-radius: 2px;\n transform: rotate(45deg);\n box-shadow: 2px 2px 4px rgba(15, 23, 42, 0.08);\n}\n.csk-teaser--left::after { right: auto; left: 28px; }\n.csk-teaser__close {\n position: absolute;\n top: 4px;\n right: 6px;\n background: none;\n border: none;\n font-size: 16px;\n color: #9CA3AF;\n cursor: pointer;\n padding: 2px 4px;\n line-height: 1;\n border-radius: 4px;\n}\n.csk-teaser__close:hover { color: #374151; }\n.csk-teaser--hidden { display: none; }\n@keyframes csk-teaser-in {\n from { opacity: 0; transform: translateY(8px) scale(0.95); }\n to { opacity: 1; transform: translateY(0) scale(1); }\n}\n\n/* ========== 消息反馈按钮(👍 / 👎) ========== */\n.csk-feedback-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border: none;\n background: rgba(var(--csk-primary-rgb), 0.08);\n color: #9CA3AF;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n padding: 0;\n}\n.csk-feedback-btn:hover { background: rgba(var(--csk-primary-rgb), 0.18); color: var(--csk-primary); }\n.csk-feedback-btn--active {\n background: rgba(var(--csk-primary-rgb), 0.28);\n color: var(--csk-primary);\n}\n.csk-feedback-btn--active.down { background: #FEF2F2; color: #EF4444; }\n.csk-feedback-btn:active { transform: scale(0.9); }\n.csk-msg--streaming .csk-feedback-btn { display: none; }\n\n/* ========== 点踩原因选择面板 ========== */\n.csk-feedback-reason {\n position: relative;\n margin-top: 6px;\n padding: 10px 12px;\n background: var(--csk-bg);\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n animation: cskFadeIn 0.15s ease;\n}\n.csk-feedback-reason__title {\n font-size: 12px;\n color: var(--csk-text-muted);\n margin-bottom: 8px;\n}\n.csk-feedback-reason__options {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-bottom: 8px;\n}\n.csk-feedback-reason__btn {\n padding: 4px 10px;\n font-size: 12px;\n border: 1px solid var(--csk-border);\n border-radius: 14px;\n background: var(--csk-bg);\n color: var(--csk-text);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.csk-feedback-reason__btn:hover {\n border-color: var(--csk-primary);\n color: var(--csk-primary);\n background: rgba(var(--csk-primary-rgb), 0.08);\n}\n.csk-feedback-reason__comment-row {\n display: flex;\n gap: 6px;\n}\n.csk-feedback-reason__comment {\n flex: 1;\n padding: 4px 8px;\n font-size: 12px;\n border: 1px solid var(--csk-border);\n border-radius: 6px;\n background: var(--csk-bg);\n color: var(--csk-text);\n outline: none;\n}\n.csk-feedback-reason__comment:focus { border-color: var(--csk-primary); }\n.csk-feedback-reason__submit {\n padding: 4px 10px;\n font-size: 12px;\n border: none;\n border-radius: 6px;\n background: var(--csk-primary);\n color: #fff;\n cursor: pointer;\n white-space: nowrap;\n}\n.csk-feedback-reason__close {\n position: absolute;\n top: 8px;\n right: 8px;\n width: 18px;\n height: 18px;\n border: none;\n background: none;\n color: var(--csk-text-muted);\n cursor: pointer;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n}\n.csk-feedback-reason__close:hover { color: var(--csk-text); background: var(--csk-hover); }\n.csk-dark .csk-feedback-reason { background: var(--csk-bg); border-color: var(--csk-border); }\n.csk-dark .csk-feedback-reason__btn {\n background: rgba(255,255,255,0.06);\n border-color: var(--csk-border);\n color: var(--csk-text);\n}\n.csk-dark .csk-feedback-reason__btn:hover {\n border-color: var(--csk-primary-light);\n color: var(--csk-primary-light);\n background: rgba(var(--csk-primary-rgb), 0.15);\n}\n.csk-dark .csk-feedback-reason__comment {\n background: rgba(255,255,255,0.06);\n border-color: var(--csk-border);\n color: var(--csk-text);\n}\n\n/* ========== 历史会话搜索框 ========== */\n.csk-history-panel__search-wrap {\n padding: 8px 10px;\n border-bottom: 1px solid var(--csk-border);\n flex-shrink: 0;\n}\n.csk-history-panel__search-wrap:focus-within {\n border-bottom-color: var(--csk-primary);\n}\n.csk-history-panel__search {\n width: 100%;\n padding: 7px 10px;\n border: 1px solid var(--csk-border);\n border-radius: 8px;\n font-size: 12.5px;\n font-family: inherit;\n color: #1F2937;\n background: var(--csk-bg-app);\n outline: none;\n transition: border-color 0.2s;\n}\n.csk-history-panel__search:focus { border-color: var(--csk-primary); }\n.csk-history-panel__search::placeholder { color: #9CA3AF; }\n\n/* ========== a11y 焦点指示 ========== */\n.csk-root :focus-visible {\n outline: 2px solid var(--csk-primary);\n outline-offset: 2px;\n}\n.csk-root button:focus-visible {\n outline: 2px solid var(--csk-primary);\n outline-offset: 2px;\n border-radius: inherit;\n}\n/* 弹窗打开时隐藏 launcher 上的焦点环 */\n.csk-launcher:focus-visible {\n outline: none;\n border-color: rgba(255, 255, 255, 0.75);\n box-shadow:\n 0 1px 2px rgba(0, 0, 0, 0.06),\n 0 4px 16px rgba(0, 0, 0, 0.10),\n 0 6px 24px rgba(var(--csk-primary-rgb), 0.28),\n 0 0 48px rgba(var(--csk-primary-rgb), 0.12),\n 0 0 0 4px rgba(var(--csk-primary-rgb), 0.3);\n}\n\n/* ========== a11y aria-live 播报区(视觉隐藏) ========== */\n.csk-sr-only {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0,0,0,0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n\n/* ========== 会话分组标题 ========== */\n.csk-history-group {\n margin-bottom: 4px;\n}\n.csk-history-group__label {\n font-size: 11px;\n font-weight: 600;\n color: #9CA3AF;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n padding: 8px 12px 4px;\n user-select: none;\n}\n.csk-dark .csk-history-group__label { color: #6B7280; }\n\n/* ========== 移动端适配 ========== */\n@media (max-width: 480px) {\n .csk-window {\n width: 100vw !important;\n height: 100vh !important;\n max-height: 100vh;\n bottom: 0 !important;\n right: 0 !important;\n left: 0 !important;\n border-radius: 0;\n }\n .csk-resize-handle { display: none !important; }\n .csk-window--hidden { transform: translateY(100%); }\n /* 移动端默认位置,仅在未被 JS 拖拽覆盖时生效 */\n .csk-launcher:not([style*="bottom"]) { bottom: 20px; }\n .csk-launcher--right:not([style*="bottom"]) { right: 20px; }\n .csk-launcher--left:not([style*="bottom"]) { left: 20px; }\n}\n`}(e),document.head.appendChild(S))}function M(){return"undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const n=16*Math.random()|0;return("x"===e?n:3&n|8).toString(16)})}function F(e){const n={"&":"&","<":"<",">":">",'"':""","'":"'"};return e.replace(/[&<>"']/g,e=>n[e]||e)}function z(e){const n=new Date(e);return`${String(n.getHours()).padStart(2,"0")}:${String(n.getMinutes()).padStart(2,"0")}`}function D(){return Date.now()}const T='';function B(e,n){const t=document.createElement("div");t.id="csk-launcher",t.className="csk-launcher csk-launcher--"+("left-bottom"===e.position?"left":"right"),t.setAttribute("title",e.title),t.setAttribute("aria-label",e.title),t.setAttribute("role","button"),t.setAttribute("tabindex","0"),t.innerHTML=e.launcherIcon;const r=document.createElement("div");r.className="csk-launcher__badge csk-launcher__badge--hidden",t.appendChild(r);const s=function(e,n){let t=null;return function(...r){null!==t&&clearTimeout(t),t=setTimeout(()=>{e.apply(this,r),t=null},n)}}(n,300);return t.addEventListener("click",s),t.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),s())}),t}function q(e){const n=document.createElement("div");if(n.id="csk-window",n.className=`csk-root csk-window csk-window--${"left-bottom"===e.position?"left":"right"} csk-window--hidden${"dark"===e.theme?" csk-dark":""}`,n.setAttribute("role","dialog"),n.setAttribute("aria-label",e.title),n.setAttribute("aria-modal","false"),e.watermark){const t=document.createElement("div");t.className="csk-watermark";const r=function(e){const n=document.createElement("canvas"),t=n.getContext("2d");if(!t)return"";const r=new Date,s=`${r.getFullYear()}-${String(r.getMonth()+1).padStart(2,"0")}-${String(r.getDate()).padStart(2,"0")} ${String(r.getHours()).padStart(2,"0")}:${String(r.getMinutes()).padStart(2,"0")}`,o=e.watermark?`${e.watermark} ${s}`:s;n.width=280,n.height=160;const a="dark"===e.theme;return t.fillStyle=a?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.06)",t.font='13px -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif',t.textAlign="center",t.textBaseline="middle",t.save(),t.translate(140,80),t.rotate(-22*Math.PI/180),t.fillText(o,0,0),t.restore(),n.toDataURL("image/png")}(e);r&&(t.style.backgroundImage=`url(${r})`),n.appendChild(t)}const t=document.createElement("div");t.className="csk-header";const r=document.createElement("div");r.className="csk-header__left";const s=document.createElement("div");s.className="csk-header__avatar",s.innerHTML=T;const a=document.createElement("div");a.className="csk-header__info";const i=document.createElement("span");i.className="csk-header__title",i.textContent=e.title;const c=document.createElement("span");c.className="csk-header__status",c.innerHTML=`${o("status_online")}`,a.appendChild(i),a.appendChild(c),r.appendChild(s),r.appendChild(a);let l=null;const d=e.roles;if(d&&d.length>1){l=document.createElement("select"),l.className="csk-role-select",l.setAttribute("aria-label",o("role_selector_label"));for(const n of d){const t=document.createElement("option");t.value=String(n.id),t.textContent=n.name||String(n.id),String(n.id)===String(e.integrateId)&&(t.selected=!0),l.appendChild(t)}l.addEventListener("change",()=>{const e=l.value;n.dispatchEvent(new CustomEvent("csk:roleChange",{detail:{roleId:e}}))});const s=document.createElement("div");s.className="csk-role-select-wrap",s.appendChild(l),t.appendChild(r),t.appendChild(s)}else t.appendChild(r);const p=document.createElement("div");p.className="csk-header__actions";const u=document.createElement("button");u.className="csk-history-btn",u.setAttribute("title",o("history_title")),u.innerHTML='';const m=document.createElement("button");m.className="csk-header__btn csk-header__btn--minimize",m.setAttribute("title",o("minimize")),m.innerHTML='',m.addEventListener("click",()=>{n.classList.add("csk-window--hidden")});const k=document.createElement("button");k.className="csk-header__btn csk-header__btn--close",k.setAttribute("title",o("close")),k.innerHTML='',k.addEventListener("click",()=>{n.classList.add("csk-window--hidden")}),p.appendChild(u),p.appendChild(m),p.appendChild(k),t.appendChild(p);const g=document.createElement("div");g.id="csk-messages",g.className="csk-messages";const h=document.createElement("div");if(h.className="csk-welcome",h.innerHTML=`\n
${T}
\n
${o("welcome_title")}
\n
${o("welcome_desc")}
\n `,e.quickReplies.length>0){const t=document.createElement("div");t.className="csk-quick-replies";for(const r of e.quickReplies){const e=document.createElement("button");e.type="button",e.className="csk-quick-reply",e.textContent=r,e.addEventListener("click",()=>{n.dispatchEvent(new CustomEvent("csk:quickReply",{detail:{text:r}}))}),t.appendChild(e)}h.appendChild(t)}g.appendChild(h);const b=document.createElement("button");b.type="button",b.className="csk-newmsg csk-newmsg--hidden",b.innerHTML=`\n \n ${o("new_message")}\n `,n.appendChild(b);const f=document.createElement("div");f.className="csk-history-panel csk-history-panel--hidden",f.innerHTML=`\n
\n ${o("history_title")}\n \n
\n
\n \n
\n
\n `,g.appendChild(f);const y=f.querySelector("#csk-history-back");y&&y.addEventListener("click",()=>{f.classList.add("csk-history-panel--hidden")}),u.addEventListener("click",e=>{e.stopPropagation();const t=f.classList.contains("csk-history-panel--hidden");f.classList.toggle("csk-history-panel--hidden"),t&&n.dispatchEvent(new CustomEvent("csk:loadHistory"))});let v=null;if(e.showCategorySwitch){const e=document.createElement("div");e.className="csk-category-bar";const r=document.createElement("span");r.className="csk-category-bar__label",r.textContent="📚",v=document.createElement("select"),v.id="csk-category-select",v.className="csk-category-select",v.innerHTML=``,v.addEventListener("change",()=>{const e=v.value;n.dispatchEvent(new CustomEvent("csk:categoryChange",{detail:{categoryId:e?Number(e):void 0}}))}),e.appendChild(r),e.appendChild(v),n.appendChild(t),n.appendChild(g),n.appendChild(e)}else n.appendChild(t),n.appendChild(g);const x=document.createElement("div");x.className="csk-input-area";const w=document.createElement("div");w.className="csk-input-wrap";const _=document.createElement("textarea");_.id="csk-input",_.className="csk-input",_.setAttribute("placeholder",o("placeholder")),_.setAttribute("rows","1"),_.setAttribute("autofocus","");const E=document.createElement("button");E.id="csk-send-btn",E.className="csk-send-btn",E.setAttribute("title",o("send")),E.setAttribute("disabled","true"),E.innerHTML='',w.appendChild(_),w.appendChild(E),x.appendChild(w);const C=document.createElement("div");C.className="csk-disclaimer",void 0!==e.disclaimer?(C.innerHTML=e.disclaimer,e.disclaimer||(C.style.display="none")):C.style.display="none",x.appendChild(C),n.appendChild(x);let L=null;e.showClear&&(L=document.createElement("button"),L.className="csk-clear-btn",L.textContent=o("clear"),L.style.display="none",n.insertBefore(L,x));let I=null;const S=document.createElement("div");S.className="csk-sr-only",S.setAttribute("aria-live","polite"),S.setAttribute("aria-atomic","true"),n.appendChild(S);const A=f.querySelector("#csk-history-search"),$=document.createElement("div");$.className=`csk-teaser csk-teaser--${"left-bottom"===e.position?"left":"right"} csk-teaser--hidden`,$.setAttribute("role","status"),$.innerHTML=`\n \n ${e.teaserText||o("teaser_text")}\n `;const N=document.createElement("div");return N.className="csk-resize-handle",N.setAttribute("aria-label",o("resize")),N.innerHTML='',n.appendChild(N),{window:n,messagesContainer:g,inputEl:_,sendBtn:E,clearBtn:L,categorySelect:v,historyPanel:f,welcomeEl:h,newMsgBtn:b,teaserEl:$,resizeHandle:N,searchInput:A,ariaLiveEl:S,roleSelect:l,disclaimer:C,showLoading:function(){if(I)return I.style.display="flex",I;const e=document.createElement("div");return e.className="csk-loading",e.innerHTML=`\n
${T}
\n
\n
\n
\n
\n
\n `,g.appendChild(e),I=e,e},hideLoading:function(){I&&I.parentNode&&(I.parentNode.removeChild(I),I=null)}}}function H(){return window.innerHeight-76}function j(e,n,t){const r=document.createElement("div");r.className="csk-msg csk-msg--user";const s=document.createElement("div");s.className="csk-msg__avatar csk-msg__avatar--user",s.innerHTML='';const o=document.createElement("div");o.className="csk-msg__content";const a=document.createElement("div");a.className="csk-msg__bubble",a.textContent=n;const i=document.createElement("div");return i.className="csk-msg__time",i.textContent=z(t),o.appendChild(a),o.appendChild(i),r.appendChild(s),r.appendChild(o),e.appendChild(r),r}function R(e,n,t,r,s){const o=document.createElement("div");o.className="csk-msg csk-msg--ai",s&&(o.dataset.cskMsgId=s);const a=document.createElement("div");a.className="csk-msg__avatar csk-msg__avatar--ai",a.innerHTML=T;const i=document.createElement("div");i.className="csk-msg__content";const c=document.createElement("div");c.className="csk-msg__bubble",r?c.innerHTML=r(n):c.textContent=n;const l=document.createElement("div");l.className="csk-msg__time",l.textContent=z(t),i.appendChild(c);const d=document.createElement("div");return d.className="csk-msg__meta",d.appendChild(l),d.appendChild(W(c,o)),i.appendChild(d),o.appendChild(a),o.appendChild(i),e.appendChild(o),X(c),o}const P='',U='';function W(e,n){const t=document.createElement("div");t.className="csk-msg__actions";const r=document.createElement("button");r.type="button",r.className="csk-action-btn",r.setAttribute("title",o("copy")),r.setAttribute("aria-label",o("copy")),r.innerHTML=P,r.addEventListener("click",async n=>{n.stopPropagation();const t=e.textContent||"";await O(t,r)});const s=document.createElement("button");s.type="button",s.className="csk-action-btn",s.setAttribute("title",o("retry")),s.setAttribute("aria-label",o("retry")),s.innerHTML=U,s.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:retry",{detail:{msgId:n.dataset.cskMsgId||""}}))});const a=document.createElement("button");a.type="button",a.className="csk-feedback-btn",a.setAttribute("title",o("feedback_up")),a.setAttribute("aria-label",o("feedback_up")),a.innerHTML='',a.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:feedback",{detail:{msgId:n.dataset.cskMsgId||"",value:"up"}}))});const i=document.createElement("button");return i.type="button",i.className="csk-feedback-btn",i.setAttribute("title",o("feedback_down")),i.setAttribute("aria-label",o("feedback_down")),i.innerHTML='',i.addEventListener("click",e=>{e.stopPropagation();const t=n.closest(".csk-window");t&&t.dispatchEvent(new CustomEvent("csk:feedback",{detail:{msgId:n.dataset.cskMsgId||"",value:"down"}}))}),t.appendChild(r),t.appendChild(s),t.appendChild(a),t.appendChild(i),t}function Y(e,n){const t=e.querySelectorAll(".csk-feedback-btn");t.length<2||(t.forEach(e=>e.classList.remove("csk-feedback-btn--active","down")),"up"===n&&t[0]&&t[0].classList.add("csk-feedback-btn--active"),"down"===n&&t[1]&&t[1].classList.add("csk-feedback-btn--active","down"))}async function O(e,n){const t=n.innerHTML;try{if(navigator.clipboard&&window.isSecureContext)await navigator.clipboard.writeText(e);else{const n=document.createElement("textarea");n.value=e,n.style.position="fixed",n.style.opacity="0",document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n)}n.innerHTML='',n.classList.add("csk-action-btn--done"),setTimeout(()=>{n.innerHTML=t,n.classList.remove("csk-action-btn--done")},1500)}catch(e){}}function X(e){e.querySelectorAll(".csk-md-code-block").forEach(e=>{if(e.querySelector(".csk-md-code-copy"))return;const n=e.querySelector("code"),t=document.createElement("button");t.type="button",t.className="csk-md-code-copy",t.setAttribute("title",o("copy")),t.setAttribute("aria-label",o("copy")),t.innerHTML=P,t.addEventListener("click",async e=>{e.stopPropagation(),await O((null==n?void 0:n.textContent)||"",t)}),e.appendChild(t)})}function K(e,n){e.classList.remove("csk-msg--streaming");const t=n.querySelector(".csk-caret");t&&t.remove(),X(n)}function J(e,n){const t=e.querySelector(".csk-sources");if(t&&t.remove(),!n||0===n.length)return;const r=document.createElement("div");r.className="csk-sources csk-sources--collapsed";const s=document.createElement("div");s.className="csk-sources__header";const a=document.createElement("span");a.className="csk-sources__title",a.textContent=`📚 ${o("source_count",{n:n.length})}`;const i=document.createElement("span");i.className="csk-sources__arrow",i.textContent="▼",s.appendChild(a),s.appendChild(i),s.addEventListener("click",()=>{r.classList.toggle("csk-sources--collapsed")});const c=document.createElement("div");c.className="csk-sources__body";for(const e of n){const n=document.createElement("div");n.className="csk-source-item";const t=document.createElement("div");if(t.className="csk-source-item__name",t.textContent=e.title||e.sourceName||"未知文档",e.snippet){const t=document.createElement("div");t.className="csk-source-item__snippet",t.textContent=e.snippet,n.appendChild(t)}const r=document.createElement("div");r.className="csk-source-item__meta";const s=[];e.sourceName&&s.push(e.sourceName),void 0!==e.chunkIndex&&s.push(`分块 #${e.chunkIndex}`),void 0!==e.score&&s.push(`相关度 ${(100*e.score).toFixed(0)}%`),r.textContent=s.join(" · "),n.appendChild(t),n.appendChild(r),c.appendChild(n)}r.appendChild(s),r.appendChild(c);const l=e.querySelector(".csk-msg__meta");l&&l.parentNode?l.parentNode.insertBefore(r,l.nextSibling):e.appendChild(r)}function V(e,n,t,r,s,a,i){if(e.innerHTML="",0===n.length){const n=document.createElement("div");return n.className="csk-history-panel__empty",n.innerHTML=`\n
💬
\n
${o("history_empty")}
\n `,void e.appendChild(n)}const c=function(e){const n=new Date,t=new Date(n.getFullYear(),n.getMonth(),n.getDate()).getTime(),r=t-864e5,s=t-864e5*(n.getDay()||7)+864e5,a={today:[],yesterday:[],week:[],earlier:[]};for(const n of e){const e=n.lastMessageTime||n.createdAt,o=e?new Date(e).getTime():0;o>=t?a.today.push(n):o>=r?a.yesterday.push(n):o>=s?a.week.push(n):a.earlier.push(n)}const i=[];return a.today.length&&i.push({label:o("history_group_today"),items:a.today}),a.yesterday.length&&i.push({label:o("history_group_yesterday"),items:a.yesterday}),a.week.length&&i.push({label:o("history_group_week"),items:a.week}),a.earlier.length&&i.push({label:o("history_group_earlier"),items:a.earlier}),i}(n);for(const n of c){if(c.length>1){const t=document.createElement("div");t.className="csk-history-group";const r=document.createElement("div");r.className="csk-history-group__label",r.textContent=n.label,t.appendChild(r),e.appendChild(t)}for(const i of n.items){const n=document.createElement("div");n.className="csk-history-item";const c=i.chatId||i.id;a&&c===a&&n.classList.add("csk-history-item--active");const l=document.createElement("div");l.className="csk-history-item__info";const d=document.createElement("div");d.className="csk-history-item__id",i.lastMessagePreview?d.textContent=i.lastMessagePreview.length>60?i.lastMessagePreview.substring(0,60)+"...":i.lastMessagePreview:d.textContent=c;const p=document.createElement("div");p.className="csk-history-item__meta";const u=[];i.roleName&&u.push(i.roleName),void 0!==i.messageCount&&u.push(`${i.messageCount} 条消息`),i.lastMessageTime?u.push(i.lastMessageTime):i.createdAt&&u.push(i.createdAt),p.textContent=u.join(" · "),l.appendChild(d),l.appendChild(p);const m=document.createElement("div");m.className="csk-history-item__actions";const k=document.createElement("button");k.className="csk-history-action csk-history-action--export",k.setAttribute("title",o("history_export")),k.innerHTML='',k.addEventListener("click",e=>{e.stopPropagation(),r(i.id)});const g=document.createElement("button");g.className="csk-history-action csk-history-action--delete",g.setAttribute("title",o("history_delete")),g.innerHTML='',g.addEventListener("click",e=>{e.stopPropagation(),s(i.id)}),m.appendChild(k),m.appendChild(g),n.appendChild(l),n.appendChild(m),n.addEventListener("click",()=>{t(c)}),e.appendChild(n)}}}function G(e){e.scrollTop=e.scrollHeight}const Q=[{key:"inaccurate",labelKey:"feedback_reason_inaccurate"},{key:"irrelevant",labelKey:"feedback_reason_irrelevant"},{key:"incomplete",labelKey:"feedback_reason_incomplete"},{key:"other",labelKey:"feedback_reason_other"}];function Z(e){return`csk_history_${e}`}function ee(e,n){try{let r=n;r.length>200&&(r=r.slice(50),t.warn(`消息数量达到上限,已裁剪最早 50 条,当前 ${r.length} 条`));const s={messages:r,updatedAt:Date.now()};localStorage.setItem(Z(e),JSON.stringify(s))}catch(e){e instanceof Error&&"QuotaExceededError"===e.name?t.error("localStorage 空间不足,会话历史保存失败。建议清空历史记录。"):t.error("保存会话历史失败",e)}}function ne(e){try{localStorage.removeItem(Z(e))}catch(e){}}const te="\0CODEBLOCK_",re="\0INLINECODE_";function se(e){if(!e||"string"!=typeof e)return"";const n=[];let t=e;t=t.replace(/```(\w*)\n([\s\S]*?)```/g,(e,t,r)=>{const s=n.length,o=F(r.trimEnd()),a=t?` class="language-${F(t)}"`:"";return n.push(`
${o}
`),`${te}${s}\0`});const r=[];t=t.replace(/`([^`\n]+)`/g,(e,n)=>{const t=r.length;return r.push(`${F(n)}`),`${re}${t}\0`}),t=F(t),t=oe(t,te,n),t=oe(t,re,r);const s=t.split("\n"),o=[];let a=!1,i="",c=!1,l=[];for(let e=0;e')){h(),b(),f(),o.push(n);continue}const t=n.match(/^ {0,3}(#{1,6})(?:\s+|(?=[\u3400-\u9FFF\d]))(.+)/);if(t){h(),b(),f();const e=t[1].length;o.push(`${t[2]}`);continue}if(e+10&&t.length===r.length){h(),b(),f();const n=r.map(k);for(o.push('
'),o.push(""),t.forEach((e,t)=>{o.push(`${d(e)}`)}),o.push(""),e+=2;e"),t.forEach((e,t)=>{o.push(`${d(r[t]||"")}`)}),o.push(""),e++}o.push("
"),e--;continue}}const r=n.match(/^ {0,3}>\s?(.*)/);if(r){h(),b(),c||(c=!0,o.push('
')),o.push(`

${d(r[1])}

`);continue}c&&f();const y=n.match(/^ {0,3}[\-\*]\s+(.+)/);if(y){h(),f(),a&&"ul"===i||(b(),a=!0,i="ul",o.push('
    ')),o.push(`
  • ${d(y[1])}
  • `);continue}const v=n.match(/^ {0,3}\d+\.\s+(.+)/);v?(h(),f(),a&&"ol"===i||(b(),a=!0,i="ol",o.push('
      ')),o.push(`
    1. ${d(v[1])}
    2. `)):""!==n.trim()?/^(\*{3,}|-{3,}|_{3,})$/.test(n.trim())?(h(),b(),f(),o.push('
      ')):(b(),f(),l.push(d(n))):(h(),b())}return h(),b(),f(),o.join("\n");function d(e){return e=(e=(e=(e=(e=(e=e.replace(/\*\*(.+?)\*\*/g,"$1")).replace(/__(.+?)__/g,"$1")).replace(/\*(.+?)\*/g,"$1")).replace(/(?$1")).replace(/~~(.+?)~~/g,"$1")).replace(/\[([^\]]+)\]\(([^)]+)\)/g,(e,n,t)=>`${n}`)}function p(e){const n=m(e);return n.length>0&&n.every(e=>/^:?-{3,}:?$/.test(e.trim()))}function u(e){return""!==e.trim()&&e.includes("|")}function m(e){const n=e.trim().replace(/^\|/,"").replace(/\|$/,"");if(!n.includes("|"))return[];const t=[];let r="";for(let e=0;e0&&(o.push(`

      ${l.join("
      ")}

      `),l=[])}function b(){a&&(o.push("ul"===i?"
":""),a=!1,i="")}function f(){c&&(o.push("
"),c=!1)}}function oe(e,n,t){return e.replace(new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")+"(\\d+)\0","g"),(e,n)=>t[parseInt(n)]||"")}let ae,ie=null,ce=[],le=null,de=null,pe=null,ue=null,me=null,ke=null,ge=null,he=null,be=null,fe=null,ye=null,ve=null,xe=null,we=null,_e=!1,Ee=null,Ce=!0,Le=[],Ie="",Se=!1;function Ae(e,n){ie=e,le=n.messagesContainer,de=n.inputEl,pe=n.inputEl.parentElement,ue=n.sendBtn,me=n.clearBtn,ke=n.categorySelect,ge=n.roleSelect,he=n.historyPanel,be=n.welcomeEl,fe=n.newMsgBtn,ye=n.searchInput,ve=n.ariaLiveEl,xe=n.showLoading,we=n.hideLoading,ae=e.categoryId,Se=e.enableRag,function(){if(!de||!ue)return;ue.addEventListener("click",()=>{_e&&Ee?Ee.abort():He()}),de.addEventListener("keydown",e=>{"Enter"!==e.key||e.shiftKey||e.isComposing||(e.preventDefault(),He())}),de.addEventListener("input",()=>{qe(),function(){if(!de)return;de.style.height="auto",de.style.height=`${Math.min(de.scrollHeight,120)}px`}()}),de.addEventListener("focus",()=>{pe&&pe.classList.add("csk-input-wrap--focus")}),de.addEventListener("blur",()=>{pe&&pe.classList.remove("csk-input-wrap--focus")}),me&&me.addEventListener("click",()=>function(){if(!ie)return;if(ce=[],le){le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove())}me&&(me.style.display="none");Be(),ne(ie.integrateId);const e=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();d(e),I(ie.integrateId,ie.userId,e),t.lifecycleClear(ie.integrateId)}())}(),function(){if(!le)return;le.addEventListener("scroll",()=>{if(!le)return;const{scrollTop:e,scrollHeight:n,clientHeight:t}=le;Ce=n-e-t<80,Ce&&Me()}),fe&&fe.addEventListener("click",()=>{le&&G(le),Ce=!0,Me()})}(),function(){if(!ye)return;ye.addEventListener("input",()=>{Ie=ye.value.trim().toLowerCase(),De()})}(),e.showCategorySwitch&&ke&&async function(){if(!ke)return;try{const e=await async function(){const e=u("/category/tree");try{const n=await k(e);if(!n.ok)throw new g(h(n.status),`http_${n.status}`);const r=await n.json();return r.success&&Array.isArray(r.data)?(t.info(`加载分类树成功 count=${r.data.length}`),r.data):[]}catch(e){return e instanceof g?t.error(`加载分类树失败: ${e.message}`):t.error("加载分类树失败",e),[]}}();if(0===e.length)return;ke.innerHTML=``;const n=(e,t=0)=>{for(const r of e){const e=document.createElement("option");e.value=String(r.id),e.textContent=`${" ".repeat(t)}${r.name}`,void 0!==ae&&String(r.id)===String(ae)&&(e.selected=!0),ke.appendChild(e),r.children&&r.children.length>0&&n(r.children,t+1)}};n(e),t.info(`知识库分类加载成功 count=${e.length}`)}catch(e){t.error(o("category_load_error"),e)}}()}async function $e(){if(ie&&le&&(await C(),await Ne(),0===ce.length)){const e=function(e){try{const n=localStorage.getItem(Z(e));if(!n)return[];const r=JSON.parse(n);return r&&Array.isArray(r.messages)?(t.info(`加载历史消息 integrateId=${e} count=${r.messages.length}`),r.messages):[]}catch(e){return[]}}(ie.integrateId);e.length>0&&(ce=e,Pe(),t.info(`从本地缓存恢复 ${e.length} 条消息`))}}async function Ne(){if(!ie||!le)return;const e=p();if(e)try{const n=await w(e);n.messages.length>0&&(ce=n.messages.map((e,n)=>({id:M(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),Pe(),t.info(`从后端加载 ${ce.length} 条历史消息`),ee(l(),ce))}catch(e){}}function Me(){fe&&fe.classList.add("csk-newmsg--hidden")}function Fe(){le&&(Ce?G(le):fe&&fe.classList.remove("csk-newmsg--hidden"))}function ze(e){ue&&("stop"===e?(ue.classList.add("csk-send-btn--stop"),ue.removeAttribute("disabled"),ue.setAttribute("title",o("stop")),ue.setAttribute("aria-label",o("stop")),ue.innerHTML=''):(ue.classList.remove("csk-send-btn--stop"),ue.setAttribute("title",o("send")),ue.setAttribute("aria-label",o("send")),ue.innerHTML='',qe()))}function De(){const e=null==he?void 0:he.querySelector("#csk-history-list");if(!e||!ie)return;V(e,Ie?Le.filter(e=>(e.lastMessagePreview||e.chatId||e.id||"").toLowerCase().includes(Ie)):Le,e=>{Ue(e)},e=>{window.open(E(e),"_blank")},async e=>{if(!confirm(o("history_delete_confirm")))return;await _(e)&&(e===p()&&(ce=[],le&&le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),me&&(me.style.display="none"),Be()),Le=Le.filter(n=>(n.chatId||n.id)!==e),De())},p())}function Te(e,n){if(!le)return;const t=ce.find(n=>n.id===e&&"ai"===n.role);if(t){if("up"===n){const n="up"===t.feedback?void 0:"up";t.feedback=n,t.feedbackReason=void 0,t.feedbackComment=void 0;const r=le.querySelector(`[data-csk-msg-id="${e}"]`);return r&&Y(r,n),ie&&ee(ie.integrateId,ce),void(n&&v(String(e),"THUMBS_UP").then(e=>{}))}if("down"===n){const n=le.querySelector(`[data-csk-msg-id="${e}"]`);if(!n)return;if("down"===t.feedback)return t.feedback=void 0,t.feedbackReason=void 0,t.feedbackComment=void 0,n&&Y(n,void 0),void(ie&&ee(ie.integrateId,ce));!function(e,n,t){const r=e.querySelector(".csk-feedback-reason");r&&r.remove();const s=document.createElement("div");s.className="csk-feedback-reason";const a=document.createElement("div");a.className="csk-feedback-reason__title",a.textContent=o("feedback_reason_title"),s.appendChild(a);const i=document.createElement("div");i.className="csk-feedback-reason__options",Q.forEach(e=>{const n=document.createElement("button");n.type="button",n.className="csk-feedback-reason__btn",n.textContent=o(e.labelKey),n.addEventListener("click",n=>{n.stopPropagation(),t(e.key),s.remove()}),i.appendChild(n)}),s.appendChild(i);const c=document.createElement("div");c.className="csk-feedback-reason__comment-row";const l=document.createElement("input");l.type="text",l.className="csk-feedback-reason__comment",l.placeholder=o("feedback_reason_comment_placeholder"),l.maxLength=200,c.appendChild(l);const d=document.createElement("button");d.type="button",d.className="csk-feedback-reason__submit",d.textContent=o("feedback_reason_submit"),d.addEventListener("click",e=>{e.stopPropagation();const n=l.value.trim()||void 0;t("other",n),s.remove()}),c.appendChild(d),s.appendChild(c);const p=document.createElement("button");p.type="button",p.className="csk-feedback-reason__close",p.setAttribute("aria-label",o("close")),p.innerHTML='',p.addEventListener("click",e=>{e.stopPropagation(),s.remove()}),s.appendChild(p),e.appendChild(s)}(n,0,(r,s)=>{t.feedback="down",t.feedbackReason=r,t.feedbackComment=s,n&&Y(n,"down"),ie&&ee(ie.integrateId,ce),v(String(e),"THUMBS_DOWN",r,s).then(e=>{})})}}}function Be(){if(!be)return;const e=ce.length>0||le&&le.querySelector(".csk-msg");be.style.display=e?"none":""}function qe(){if(!ue||!de)return;de.value.trim().length>0&&!_e?ue.removeAttribute("disabled"):ue.setAttribute("disabled","true")}async function He(){if(!de||!ie||_e)return;const e=de.value.trim();if(""===e)return;de.value="",qe(),de.style.height="auto";const n=D(),t={id:M(),role:"user",content:e,timestamp:n};le&&j(le,e,n),ce.push(t),Be(),me&&ce.length>0&&(me.style.display="inline-flex"),le&&Fe(),await je(e)}async function je(e){if(!ie||!le)return;_e=!0,ze("stop"),ie.chatId||await C();const n=D(),r=Se;xe&&xe(),le&&Fe();const s=M();let i="";try{ie.streaming?i=await async function(e,n,t,r){Ee=new AbortController;const s=Ee.signal;return new Promise((a,i)=>{let c=null,l=null,d="",p=!1;f(e,e=>{if(d+=e,!p&&le){we&&we();const{wrapper:e,bubble:t}=function(e,n,t){const r=document.createElement("div");r.className="csk-msg csk-msg--ai csk-msg--streaming",t&&(r.dataset.cskMsgId=t);const s=document.createElement("div");s.className="csk-msg__avatar csk-msg__avatar--ai",s.innerHTML=T;const o=document.createElement("div");o.className="csk-msg__content";const a=document.createElement("div");a.className="csk-msg__bubble",a.innerHTML="";const i=document.createElement("div");i.className="csk-msg__time",i.textContent=z(n),o.appendChild(a);const c=document.createElement("div");return c.className="csk-msg__meta",c.appendChild(i),c.appendChild(W(a,r)),o.appendChild(c),r.appendChild(s),r.appendChild(o),e.appendChild(r),{wrapper:r,bubble:a}}(le,n,r);l=e,c=t,p=!0}c&&(c.innerHTML=se(d),function(e){if(e.querySelector(".csk-caret"))return;const n=document.createElement("span");n.className="csk-caret",n.setAttribute("aria-hidden","true"),e.appendChild(n)}(c)),le&&Fe()},()=>{if(l&&c){if(!p&&""===d)return void b(e).then(a).catch(i);d&&(c.innerHTML=se(d)),K(l,c)}a(d)},e=>{"network"!==e.type&&"cors"!==e.type||le&&function(e){if(document.getElementById("csk-offline-banner"))return;const n=document.createElement("div");n.id="csk-offline-banner",n.className="csk-offline-banner",n.textContent=o("error_offline"),e.insertBefore(n,e.firstChild)}(le),d.length>0?(c&&(c.innerHTML=se(d+"\n\n"+o("stream_interrupted")),l&&K(l,c)),a(d)):i(e)},ae,t,s)})}(e,n,r,s):(i=await b(e),we&&we(),le&&R(le,i,n,se,s));const t={id:s,role:"ai",content:i,timestamp:n};ce.push(t),ee(ie.integrateId,ce),le&&Fe(),function(e){if(!ve)return;const n=e.length>120?e.substring(0,120)+"...":e;ve.textContent=o("new_msg_announce")+":"+n}(i),le&&le.dispatchEvent(new CustomEvent("csk:newMessage",{bubbles:!0,detail:{msg:t}})),r&&async function(e,n){try{const t=await y(e,ae);if(t.length>0){const e=t.map(e=>{var n,t;return{documentId:e.documentId||"",title:e.title||"",sourceName:e.sourceName||"",chunkIndex:null!==(n=e.chunkIndex)&&void 0!==n?n:0,score:null!==(t=e.score)&&void 0!==t?t:0,snippet:e.snippet||""}});if(n.sources=e,le){const n=le.querySelector(".csk-msg--ai:last-of-type");n&&J(n,e)}ie&&ee(ie.integrateId,ce)}}catch(e){}}(e,t),ie.suggestions&&async function(e){const n=p();if(!n||!le)return;try{const t=await async function(e){if(!a||!e)return[];try{const n=new URLSearchParams;n.set("chatId",e);const t=u(`/ai/suggestions?${n.toString()}`),r=await k(t);if(!r.ok)return[];const s=await r.json();return s.success&&s.data&&Array.isArray(s.data.suggestions)?s.data.suggestions.filter(e=>"string"==typeof e&&e.trim().length>0):[]}catch(e){return[]}}(n);if(t.length>0&&le){const n=le.querySelector(`[data-csk-msg-id="${e}"]`);n&&function(e,n,t){if(function(e){const n=e.querySelector(".csk-suggestions");n&&n.remove()}(e),!n||0===n.length)return;const r=document.createElement("div");r.className="csk-suggestions";const s=document.createElement("div");s.className="csk-suggestions__list";for(const e of n){const n=document.createElement("button");n.type="button",n.className="csk-suggestion-item",n.textContent=e,n.addEventListener("click",n=>{n.stopPropagation(),t(e)}),s.appendChild(n)}r.appendChild(s);const o=e.querySelector(".csk-msg__content");o?o.appendChild(r):e.appendChild(r)}(n,t,Re)}}catch(e){}}(s),function(){const e=document.getElementById("csk-offline-banner");e&&e.remove()}()}catch(e){we&&we();const n=e instanceof g?e.message:o("error_send");if(le){const e=document.createElement("div");e.className="csk-msg csk-msg--ai";const t=document.createElement("div");t.className="csk-msg__bubble",t.style.color="#DC2626",t.textContent=`⚠ ${n}`,e.appendChild(t),le.appendChild(e)}t.error(`发送失败 integrateId=${ie.integrateId}`,e)}finally{_e=!1,Ee=null,ze("send"),qe()}}function Re(e){return!de||_e?Promise.resolve():(de.value=e,qe(),He())}function Pe(){if(!le)return;const e=le.querySelector(".csk-history-panel");le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());for(const e of ce)if("user"===e.role)j(le,e.content,e.timestamp);else{const n=R(le,e.content,e.timestamp,se,e.id);e.sources&&e.sources.length>0&&J(n,e.sources),e.feedback&&Y(n,e.feedback)}Ce=!0,G(le),me&&ce.length>0&&(me.style.display="inline-flex"),Be(),e&&!le.contains(e)&&le.appendChild(e)}async function Ue(e){if(!ie||!le)return;const n=Le.find(n=>(n.chatId||n.id)===e);if(n&&void 0!==n.roleId){const e=String(n.roleId),t=l();e&&e!==t&&(c(e),ge&&(ge.value=e))}d(e),I(l(),ie.userId,e),he&&he.classList.add("csk-history-panel--hidden"),ce=[];le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());try{const n=await w(e);n.messages.length>0&&(ce=n.messages.map(e=>({id:M(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),Pe(),t.info(`加载会话 ${e} 的 ${ce.length} 条消息`),ee(ie.integrateId,ce))}catch(e){}me&&ce.length>0&&(me.style.display="inline-flex"),Be()}let We=null,Ye=!1,Oe=null,Xe=null,Ke=null,Je=null,Ve=null,Ge=null,Qe=null,Ze=null,en=null,nn=null,tn=null,rn=null,sn=null,on=null,an=null,cn=null,ln=null,dn=null,pn=null;function un(){if(!an||!Oe)return;const e=Oe.getBoundingClientRect(),n=on?"left"===on.side:"left-bottom"===(null==We?void 0:We.position);n?(an.style.left=`${e.left}px`,an.style.right="auto"):(an.style.right=window.innerWidth-e.right+"px",an.style.left="auto"),an.style.bottom=window.innerHeight-e.top+8+"px",an.classList.toggle("csk-teaser--left",!!n),an.classList.toggle("csk-teaser--right",!n)}function mn(){if(!an)return;an.classList.add("csk-teaser--hidden"),an.removeEventListener("click",kn);const e=an.querySelector(".csk-teaser__close");e&&e.removeEventListener("click",gn)}function kn(e){e.target.closest(".csk-teaser__close")||(mn(),yn())}function gn(e){e.stopPropagation(),mn()}function hn(){an&&!an.classList.contains("csk-teaser--hidden")&&un()}const bn='button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])';function fn(e){"Escape"===e.key&&Xe&&!Xe.classList.contains("csk-window--hidden")&&vn(),function(e){if(!Xe||Xe.classList.contains("csk-window--hidden"))return;if("Tab"!==e.key)return;const n=Array.from(Xe.querySelectorAll(bn));if(0===n.length)return;const t=n[0],r=n[n.length-1];e.shiftKey?document.activeElement===t&&(e.preventDefault(),r.focus()):document.activeElement===r&&(e.preventDefault(),t.focus())}(e)}function yn(){Xe&&(Xe.classList.remove("csk-window--hidden"),mn(),ln&&ln.classList.add("csk-launcher__badge--hidden"),setTimeout(()=>{Je&&Je.focus()},80))}function vn(){Xe&&Xe.classList.add("csk-window--hidden")}function xn(){Xe&&(Xe.classList.contains("csk-window--hidden")?yn():vn())}function wn(e){return`csk_size_${e}`}function _n(e){return`csk_position_${e}`}function En(e){return`csk_launcher_pos_${e}`}function Cn(e){Xe&&(Xe.classList.remove("csk-window--right","csk-window--left"),Xe.classList.add(`csk-window--${e}`),an&&(an.classList.remove("csk-teaser--right","csk-teaser--left"),an.classList.add(`csk-teaser--${e}`)))}const Ln={init:function(e){if(Ye)return;const i=function(e){var n,r,s,o,a,i,c,l,d,p,u,m,k;if(!e.integrateId||"string"!=typeof e.integrateId&&"number"!=typeof e.integrateId||"string"==typeof e.integrateId&&""===e.integrateId.trim())return t.error('integrateId 是必传参数(对应后端 roleId 客服角色 ID),请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;if(!e.requestDomain||"string"!=typeof e.requestDomain||""===e.requestDomain.trim())return t.error('requestDomain 是必传参数,请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;try{new URL(e.requestDomain)}catch(n){return t.error(`requestDomain 不是合法的 URL 格式:${e.requestDomain}。请提供完整的域名,如 https://api.example.com`),null}const g=String(e.integrateId).trim(),h=e.requestDomain.replace(/\/+$/,""),b=e.launcherIcon||``,f=e.primaryColor||"#4F46E5",y={integrateId:g,requestDomain:e.requestDomain.replace(/\/+$/,""),userId:e.userId,categoryId:e.categoryId,showCategorySwitch:null!==(n=e.showCategorySwitch)&&void 0!==n&&n,title:e.title||"AI 智能助手",width:null!==(r=e.width)&&void 0!==r?r:500,height:Math.max(400,null!==(s=e.height)&&void 0!==s?s:520),position:"left-bottom"===e.position?"left-bottom":"right-bottom",primaryColor:f,launcherIcon:b,showClear:null===(o=e.showClear)||void 0===o||o,showAdminPanel:null!==(a=e.showAdminPanel)&&void 0!==a&&a,quickReplies:Array.isArray(e.quickReplies)?e.quickReplies.map(e=>String(e).trim()).filter(Boolean):[],suggestions:null===(i=e.suggestions)||void 0===i||i,theme:"dark"===e.theme?"dark":"light",showTeaser:null===(c=e.showTeaser)||void 0===c||c,teaserText:"string"==typeof e.teaserText&&e.teaserText.trim()||"",resizable:null===(l=e.resizable)||void 0===l||l,watermark:"string"==typeof e.watermark&&e.watermark.trim()||void 0,streaming:null===(d=e.streaming)||void 0===d||d,enableRag:null===(p=e.enableRag)||void 0===p||p,rewriteStrategy:e.rewriteStrategy||"REWRITE",locale:e.locale||"zh-CN",debug:null===(u=e.debug)||void 0===u||u,sound:null!==(m=e.sound)&&void 0!==m&&m,notification:null!==(k=e.notification)&&void 0!==k&&k,onError:"function"==typeof e.onError?e.onError:void 0,onReady:"function"==typeof e.onReady?e.onReady:void 0,onMessage:"function"==typeof e.onMessage?e.onMessage:void 0,token:e.token,roles:e.roles,disclaimer:e.disclaimer,chatId:""};return t.info(`配置解析完成 integrateId(=roleId)=${y.integrateId} userId(=accountId)=${y.userId||"(未设置)"} requestDomain=${y.requestDomain}`),y}(e);if(!i)return;We=i,function(e){if(r[e])s=e;else{const n=e.split("-")[0],t=Object.keys(r).find(e=>e.startsWith(n));t&&(s=t)}}(We.locale),We.debug,n(We.onError),function(e){a=e}(We),N(We),Oe=B(We,xn),document.body.appendChild(Oe),ln=Oe.querySelector(".csk-launcher__badge"),function(e,n){try{const t=localStorage.getItem(En(e));if(!t)return;const r=JSON.parse(t);if("left"!==r.side&&"right"!==r.side||"number"!=typeof r.bottom)return;const s=window.innerHeight-76,o=Math.max(16,Math.min(r.bottom,s));n.classList.remove("csk-launcher--right","csk-launcher--left"),n.classList.add(`csk-launcher--${r.side}`),n.style.bottom=`${o}px`,on={side:r.side,bottom:o}}catch(e){}}(We.integrateId,Oe),rn=function(e,n,t){let r=!1,s=0,o=0,a=!1,i=0,c=0,l=0,d=!1;function p(){const n=parseFloat(getComputedStyle(e).bottom);return isNaN(n)?24:n}function u(n,t){if(d)return;r=!0,a=!1,s=n,o=t,i=p();const u=e.style,m=getComputedStyle(e);c=u.right?parseFloat(u.right):parseFloat(m.right),l=u.left?parseFloat(u.left):parseFloat(m.left)}function m(n,t,d){if(!r)return;const p=n-s,u=t-o;if(!a){if(Math.abs(p)<5&&Math.abs(u)<5)return;a=!0,e.classList.add("csk-launcher--dragging"),e.classList.remove("csk-launcher--right","csk-launcher--left"),e.style.transition="none",!isNaN(c)&&c>=0&&isNaN(l)?(e.style.right=`${c}px`,e.style.left="auto"):!isNaN(l)&&l>=0&&(e.style.left=`${l}px`,e.style.right="auto")}if(a){d.preventDefault();const n=Math.max(16,Math.min(i-u,H()));e.style.bottom=`${n}px`}}function k(){if(!r)return;if(r=!1,!a)return;const n=parseFloat(e.style.bottom)||p(),s=Math.max(16,Math.min(n,H())),o=e.getBoundingClientRect(),i=o.left+o.width/2<=window.innerWidth/2?"left":"right";e.classList.remove("csk-launcher--dragging"),e.classList.add(`csk-launcher--${i}`,"csk-launcher--snap"),e.style.left="",e.style.right="",e.style.bottom=`${s}px`,d=!0;const c=()=>{e.removeEventListener("transitionend",c),e.classList.remove("csk-launcher--snap"),e.style.transition="",d=!1};e.addEventListener("transitionend",c),setTimeout(()=>{d&&c()},350);const l=n=>{n.stopPropagation(),e.removeEventListener("click",l,!0)};e.addEventListener("click",l,!0);const u=e.querySelector(".csk-launcher__badge");u&&(u.style.display=""),t&&t({side:i,bottom:s})}function g(e){u(e.clientX,e.clientY)}function h(e){m(e.clientX,e.clientY,e)}function b(){k()}function f(e){1===e.touches.length&&u(e.touches[0].clientX,e.touches[0].clientY)}function y(e){1===e.touches.length&&m(e.touches[0].clientX,e.touches[0].clientY,e)}function v(){k()}return e.addEventListener("mousedown",g),document.addEventListener("mousemove",h),document.addEventListener("mouseup",b),e.addEventListener("touchstart",f,{passive:!0}),document.addEventListener("touchmove",y,{passive:!1}),document.addEventListener("touchend",v),()=>{e.removeEventListener("mousedown",g),document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",b),e.removeEventListener("touchstart",f),document.removeEventListener("touchmove",y),document.removeEventListener("touchend",v)}}(Oe,0,e=>{const n=null==on?void 0:on.side;on=e,function(e,n){try{localStorage.setItem(En(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e),n&&n!==e.side&&function(){if(!Xe)return;Xe.style.left="",Xe.style.top="",Xe.style.right="",Xe.style.bottom=""}(),Cn(e.side),an&&!an.classList.contains("csk-teaser--hidden")&&un()}),on&&Cn(on.side);const d=q(We);Xe=d.window,Ke=d.messagesContainer,Je=d.inputEl,Ve=d.sendBtn,Ge=d.clearBtn,Qe=d.categorySelect,Ze=d.historyPanel,en=d.showLoading,nn=d.hideLoading,pn=d.disclaimer,document.body.appendChild(Xe),an=d.teaserEl,document.body.appendChild(an),un();const m=Xe.querySelector(".csk-header");if(m&&(tn=function(e,n,t){let r=!1,s=0,o=0,a=0,i=0;const c=e=>{if(e.target.closest("button"))return;r=!0,s=e.clientX,o=e.clientY;const t=n.getBoundingClientRect();a=s-t.left,i=o-t.top,document.addEventListener("mousemove",l),document.addEventListener("mouseup",d)},l=e=>{if(!r)return;const t=e.clientX-a,s=e.clientY-i,o=window.innerWidth-n.offsetWidth,c=window.innerHeight-n.offsetHeight;n.style.right="auto",n.style.bottom="auto",n.style.left=`${Math.max(0,Math.min(t,o))}px`,n.style.top=`${Math.max(0,Math.min(s,c))}px`},d=()=>{if(r=!1,document.removeEventListener("mousemove",l),document.removeEventListener("mouseup",d),t){const e=n.getBoundingClientRect();t({x:e.left,y:e.top})}};return e.addEventListener("mousedown",c),()=>{e.removeEventListener("mousedown",c),document.removeEventListener("mousemove",l),document.removeEventListener("mouseup",d)}}(m,Xe,e=>{!function(e,n){try{localStorage.setItem(_n(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e)})),function(e,n){try{const t=localStorage.getItem(_n(e));if(!t)return;const r=JSON.parse(t);if("number"!=typeof r.x||"number"!=typeof r.y)return;const s=window.innerWidth-n.offsetWidth,o=window.innerHeight-n.offsetHeight,a=Math.max(0,Math.min(r.x,s)),i=Math.max(0,Math.min(r.y,o));n.style.right="auto",n.style.bottom="auto",n.style.left=`${a}px`,n.style.top=`${i}px`}catch(e){}}(We.integrateId,Xe),We.resizable){const e=d.resizeHandle;sn=function(e,n,t){let r=!1,s=0,o=0,a=0,i=0;const c=(e,t)=>{r=!0,s=e,o=t;const c=n.getBoundingClientRect();a=c.width,i=c.height,n.classList.add("csk-window--resizing"),document.addEventListener("mousemove",p),document.addEventListener("mouseup",u),document.addEventListener("touchmove",g,{passive:!1}),document.addEventListener("touchend",h)},l=(e,t,c)=>{if(!r)return;c&&c.preventDefault();const l=e-s,d=t-o,p=Math.max(300,Math.min(a+l,window.innerWidth-24)),u=Math.max(300,Math.min(i+d,window.innerHeight-24));n.style.width=`${p}px`,n.style.height=`${u}px`,n.style.setProperty("--csk-window-width",`${p}px`),n.style.setProperty("--csk-window-height",`${u}px`),n.style.bottom="",n.style.right=""},d=()=>{if(!r)return;r=!1,n.classList.remove("csk-window--resizing"),document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",u),document.removeEventListener("touchmove",g),document.removeEventListener("touchend",h);const e=n.getBoundingClientRect();t&&t({width:e.width,height:e.height})};function p(e){l(e.clientX,e.clientY,e)}function u(){d()}function m(e){e.preventDefault(),e.stopPropagation(),c(e.clientX,e.clientY)}function k(e){e.preventDefault(),e.stopPropagation(),1===e.touches.length&&c(e.touches[0].clientX,e.touches[0].clientY)}function g(e){1===e.touches.length&&l(e.touches[0].clientX,e.touches[0].clientY,e)}function h(){d()}return e.addEventListener("mousedown",m),e.addEventListener("touchstart",k,{passive:!1}),()=>{e.removeEventListener("mousedown",m),e.removeEventListener("touchstart",k),document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",u),document.removeEventListener("touchmove",g),document.removeEventListener("touchend",h)}}(e,Xe,e=>{!function(e,n){try{localStorage.setItem(wn(e),JSON.stringify(n))}catch(e){}}(We.integrateId,e)}),function(e,n){try{const t=localStorage.getItem(wn(e));if(!t)return;const r=JSON.parse(t);if("number"!=typeof r.width||"number"!=typeof r.height)return;const s=Math.max(300,Math.min(r.width,window.innerWidth-24)),o=Math.max(300,Math.min(r.height,window.innerHeight-24));n.style.width=`${s}px`,n.style.height=`${o}px`,n.style.setProperty("--csk-window-width",`${s}px`),n.style.setProperty("--csk-window-height",`${o}px`)}catch(e){}}(We.integrateId,Xe)}if(Ae(We,{messagesContainer:Ke,inputEl:Je,sendBtn:Ve,clearBtn:Ge,categorySelect:Qe,historyPanel:Ze,welcomeEl:d.welcomeEl,newMsgBtn:d.newMsgBtn,searchInput:d.searchInput,ariaLiveEl:d.ariaLiveEl,roleSelect:d.roleSelect,showLoading:en,hideLoading:nn}),Xe.addEventListener("csk:categoryChange",e=>{var n,t;n=e.detail.categoryId,ae=n,Se=null===(t=null==ie?void 0:ie.enableRag)||void 0===t||t}),Xe.addEventListener("csk:loadHistory",()=>{!async function(){if(!he||!ie)return;const e=he.querySelector("#csk-history-list");if(e){e.innerHTML='
加载中...
';try{const n=await x(1,50,ie.userId,l());Le=n.list.map(e=>({id:e.conversationId||"",chatId:e.conversationId||"",roleId:e.roleId,roleName:e.roleName,messageCount:e.messageCount,lastMessageTime:e.lastMessageTime,lastMessagePreview:e.lastMessagePreview,createdAt:e.firstMessageTime||e.createdAt})),Ie="",ye&&(ye.value=""),V(e,Le,e=>{Ue(e)},e=>{window.open(E(e),"_blank")},async e=>{confirm(o("history_delete_confirm"))&&await _(e)&&(e===p()&&(ce=[],le&&le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),me&&(me.style.display="none"),Be()),Le=Le.filter(n=>(n.chatId||n.id)!==e),De())},p())}catch(n){t.error(o("history_load_error"),n),e.innerHTML=`
${o("history_load_error")}
`}}}()}),Xe.addEventListener("csk:quickReply",e=>{Re(e.detail.text)}),Xe.addEventListener("csk:retry",e=>{!async function(e){if(!ie||!le||_e)return;const n=ce.findIndex(n=>n.id===e&&"ai"===n.role);if(n<0)return;let t="";for(let e=n-1;e>=0;e--)if("user"===ce[e].role){t=ce[e].content;break}if(!t)return;const r=ce.splice(n),s=new Set(r.map(e=>e.id));le.querySelectorAll(".csk-msg").forEach(e=>{const n=e.dataset.cskMsgId;n&&s.has(n)&&e.remove()}),ee(ie.integrateId,ce),Be(),await je(t)}(e.detail.msgId)}),Xe.addEventListener("csk:feedback",e=>{Te(e.detail.msgId,e.detail.value)}),Xe.addEventListener("csk:newMessage",e=>{var n;if(Xe&&Xe.classList.contains("csk-window--hidden")&&(ln&&ln.classList.remove("csk-launcher__badge--hidden"),(null==We?void 0:We.sound)&&function(){try{dn||(dn=new(window.AudioContext||window.webkitAudioContext));const e=dn;if("suspended"===e.state)return void e.resume();const n=e.currentTime;[0,.15].forEach((t,r)=>{const s=e.createOscillator(),o=e.createGain();s.type="sine",s.frequency.value=0===r?880:1100,o.gain.setValueAtTime(.15,n+t),o.gain.exponentialRampToValueAtTime(.001,n+t+.12),s.connect(o),o.connect(e.destination),s.start(n+t),s.stop(n+t+.12)})}catch(e){}}(),(null==We?void 0:We.notification)&&function(){try{if(!("Notification"in window))return;"granted"===Notification.permission?new Notification((null==We?void 0:We.title)||"AI 智能助手",{body:"收到新消息",icon:void 0,silent:!0}):"denied"!==Notification.permission&&Notification.requestPermission()}catch(e){}}()),(null==We?void 0:We.onMessage)&&(null===(n=e.detail)||void 0===n?void 0:n.msg))try{We.onMessage(e.detail.msg)}catch(e){}}),Xe.addEventListener("csk:roleChange",e=>{e.detail.roleId&&async function(e){if(!ie||!le)return;const n=l();if(e===n)return;if(ce.length>0&&ee(n,ce),Ee&&(Ee.abort(),Ee=null),_e=!1,ze("send"),ce=[],le.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove()),ne(n),I(n,ie.userId,void 0),ne(e),I(e,ie.userId,void 0),c(e),ge&&(ge.value=e),await C(!0))try{await Ne()}catch(e){}me&&0===ce.length&&(me.style.display="none"),Be(),Ce=!0,le&&G(le)}(String(e.detail.roleId))}),document.addEventListener("keydown",fn),window.addEventListener("resize",hn),Ye=!0,t.lifecycleInit(We.integrateId,We.requestDomain),We.onReady)try{We.onReady()}catch(e){}We.showTeaser&&(cn=setTimeout(()=>{Xe&&Xe.classList.contains("csk-window--hidden")&&function(){if(!an)return;un(),an.classList.remove("csk-teaser--hidden"),an.addEventListener("click",kn);const e=an.querySelector(".csk-teaser__close");e&&e.addEventListener("click",gn)}()},1500)),$e().catch(e=>{}),void 0===We.disclaimer&&async function(e){if(!a)return"";try{const n=u(`/ai/system-config/${encodeURIComponent(e)}`),t=await k(n);if(!t.ok)return"";const r=await t.json();return r.success&&r.data&&r.data.configValue||""}catch(e){return""}}("disclaimer").then(e=>{e&&pn&&(pn.innerHTML=e,pn.style.display="")}).catch(()=>{})},destroy:function(){Ye&&(cn&&(clearTimeout(cn),cn=null),mn(),an&&an.parentNode&&(an.parentNode.removeChild(an),an=null),Oe&&Oe.parentNode&&(Oe.parentNode.removeChild(Oe),Oe=null),Xe&&Xe.parentNode&&(Xe.parentNode.removeChild(Xe),Xe=null),tn&&(tn(),tn=null),rn&&(rn(),rn=null),sn&&(sn(),sn=null),on=null,S&&S.parentNode&&(S.parentNode.removeChild(S),S=null),document.querySelectorAll("style[data-csk-sdk]").forEach(e=>e.remove()),document.removeEventListener("keydown",fn),window.removeEventListener("resize",hn),n(void 0),null==We||We.integrateId,We=null,Ye=!1,Ke=null,Je=null,Ve=null,Ge=null,Qe=null,Ze=null,en=null,nn=null,ln=null,dn=null,pn=null,a=null,i=null)},open:yn,close:vn,toggle:xn,clearHistory:function(){We&&(Ge?Ge.click():ne(We.integrateId))}};return"undefined"!=typeof window&&(window.ChatbotSDK=Ln),Ln}(); diff --git a/src/main/resources/static/sdk/launcher-logo.png b/src/main/resources/static/sdk/launcher-logo.png index 8c57c42a3e5428964c181ce0b74a52e67a27ae87..0cc53c12074906b5c804948ba55e88dc406f3c6b 100644 GIT binary patch literal 182510 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 literal 88940 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
')),o.push(`

${d(r[1])}

`);continue}c&&f();const y=n.match(/^ {0,3}[\-\*]\s+(.+)/);if(y){h(),f(),a&&"ul"===i||(b(),a=!0,i="ul",o.push('
":""),a=!1,i="")}function f(){c&&(o.push("