.ws-chat-panel,.ws-chat-invite{font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;color:#102d45}
.ws-chat-panel{position:fixed;right:24px;bottom:104px;z-index:19;display:flex;width:min(400px,calc(100vw - 32px));max-height:calc(100vh - 128px);overflow:hidden;flex-direction:column;border:1px solid #d4e9f3;border-radius:22px;background:#fff;box-shadow:0 26px 70px rgba(5,45,72,.28)}
.ws-chat-panel[hidden],.ws-chat-invite[hidden],.ws-chat-qr-wrap[hidden]{display:none}
.ws-chat-panel>header{display:flex;align-items:flex-start;justify-content:space-between;padding:16px 18px 14px;border-bottom:1px solid #dcebf2;background:linear-gradient(135deg,#eefaff,#f9fdff)}
.ws-chat-panel header strong,.ws-chat-panel header span{display:block}.ws-chat-panel header strong{font-size:17px}.ws-chat-panel header span{margin-top:4px;color:#668096;font-size:12px}.ws-chat-panel header span i{display:inline-block;width:7px;height:7px;margin-right:4px;border-radius:50%;background:#12a26f}
.ws-chat-panel header .ws-chat-service-hours{display:block;margin-top:4px;color:#4f7086;font-size:11px;line-height:1.4}
.ws-chat-panel header button{width:34px;height:34px;border:0;border-radius:50%;background:#fff;color:#47677c;cursor:pointer;font-size:22px}
.ws-chat-body{min-height:0;max-height:min(570px,calc(100vh - 230px));overflow:auto;flex:1 1 auto;background:#f8fcfe}
.ws-chat-agent-avatar{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:13px;background:linear-gradient(145deg,#0ba1e4,#087ac8);color:#fff;font-weight:800}.ws-chat-agent-avatar.has-logo{overflow:hidden;padding:4px;border:1px solid #d7e9f2;background:#fff}.ws-chat-agent-avatar img{display:block;width:100%;height:100%;object-fit:contain}.ws-chat-empty{margin:0;color:#668096;font-size:13px;line-height:1.55}
.ws-chat-auto-messages{display:flex;flex-direction:column;gap:10px;padding:18px 20px 8px}.ws-chat-auto-row{display:flex;align-items:flex-end;gap:10px;opacity:0;transform:translateY(7px);animation:ws-chat-message-in .32s ease-out forwards}.ws-chat-auto-row:nth-child(2){animation-delay:.55s}.ws-chat-auto-row:nth-child(3){animation-delay:1.1s}.ws-chat-auto-row p{max-width:calc(100% - 48px);margin:0;padding:10px 12px;border:1px solid #e1edf3;border-radius:14px 14px 14px 4px;background:#fff;box-shadow:0 3px 12px rgba(9,62,91,.08);color:#173951;font-size:13px;line-height:1.55}.ws-chat-auto-row .ws-chat-agent-avatar{width:34px;height:34px;flex-basis:34px;border-radius:11px}@keyframes ws-chat-message-in{to{opacity:1;transform:none}}
.ws-chat-quick{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 20px 4px}.ws-chat-quick button{min-height:38px;padding:7px 9px;border:1px solid #b9dfea;border-radius:12px;background:#fff;color:#176d98;cursor:pointer;font-weight:650;text-align:left}.ws-chat-quick button:hover{border-color:#0b91d4;background:#eefaff;color:#087bc0}
.ws-chat-start{display:grid;grid-template-columns:1fr auto;gap:9px;padding:12px 20px 20px}.ws-chat-start textarea,.ws-chat-reply textarea{display:block;width:100%;padding:11px 12px;border:1px solid #cfe3ed;border-radius:11px;outline:none;background:#fff;color:#102d45;font:inherit;box-sizing:border-box}.ws-chat-start textarea:focus,.ws-chat-reply textarea:focus{border-color:#0a91d4;box-shadow:0 0 0 3px rgba(10,145,212,.12)}.ws-chat-start textarea{grid-column:1/-1;min-height:82px;resize:vertical}.ws-chat-contact-tip{grid-column:1/-1;margin:0;color:#71899a;font-size:12px;line-height:1.5}
.ws-chat-primary{min-height:42px;padding:0 18px;border:0;border-radius:99px;background:#0b91d4;color:#fff;cursor:pointer;font-weight:750}.ws-chat-primary:disabled{cursor:wait;opacity:.55}.ws-chat-start .ws-chat-primary{grid-column:1/-1;width:100%}.ws-chat-error{min-height:0;margin:0;color:#c92a2a;font-size:12px}.ws-chat-start .ws-chat-error{grid-column:1/-1}
.ws-chat-loading,.ws-chat-error-state{padding:50px 20px;color:#668096;text-align:center}.ws-chat-messages{display:flex;min-height:280px;max-height:390px;flex-direction:column;gap:12px;overflow:auto;padding:18px}.ws-chat-message{align-self:flex-start;max-width:82%}.ws-chat-message.visitor{align-self:flex-end}.ws-chat-message span,.ws-chat-message time{display:block;margin:0 4px 4px;color:#7890a0;font-size:11px}.ws-chat-message.visitor span,.ws-chat-message.visitor time{text-align:right}.ws-chat-message p{margin:0;padding:10px 12px;border-radius:13px 13px 13px 4px;background:#fff;box-shadow:0 2px 9px rgba(9,62,91,.08);line-height:1.55;overflow-wrap:anywhere}.ws-chat-message.visitor p{border-radius:13px 13px 4px 13px;background:#0b91d4;color:#fff}.ws-chat-message time{margin-top:4px}
.ws-chat-reply{display:grid;grid-template-columns:1fr auto;gap:9px;padding:10px 16px 14px;border-top:1px solid #dcebf2;background:#fff}.ws-chat-reply-tip{grid-column:1/-1;margin:0;color:#71899a;font-size:12px}.ws-chat-reply textarea{min-height:42px;max-height:92px;margin:0;resize:none}.ws-chat-reply .ws-chat-error{grid-column:1/-1}.ws-chat-closed{padding:18px;border-top:1px solid #dcebf2;background:#fff;text-align:center}.ws-chat-closed p{margin:0 0 9px;color:#668096;font-size:13px}.ws-chat-closed button{border:0;background:transparent;color:#0788ca;cursor:pointer;font-weight:700}
.ws-chat-footer{padding:11px 16px 13px;border-top:1px solid #dcebf2;background:#fff;flex:0 0 auto;text-align:center}.ws-chat-footer>strong{display:block;margin-bottom:7px;color:#173951;font-size:13px}.ws-chat-qr-wrap{text-align:center}.ws-chat-qr-grid{display:grid;grid-template-columns:repeat(2,86px);justify-content:center;gap:12px}.ws-chat-qr-grid[data-qr-count="1"]{grid-template-columns:86px}.ws-chat-qr-item{display:block}.ws-chat-footer .ws-chat-qr-item img{display:block;width:86px;height:86px;padding:3px;border:1px solid #d9eaf2;border-radius:10px;object-fit:contain}.ws-chat-qr-wrap small{display:block;margin-top:5px;color:#168bc8}
.ws-chat-invite{position:fixed;right:24px;bottom:182px;z-index:18;width:min(310px,calc(100vw - 32px));padding:17px 42px 16px 18px;border:1px solid #bfe4f3;border-radius:18px;background:#fff;box-shadow:0 18px 45px rgba(5,75,116,.2);animation:ws-chat-rise .28s ease-out}.ws-chat-invite:after{position:absolute;right:27px;bottom:-9px;width:16px;height:16px;border-right:1px solid #bfe4f3;border-bottom:1px solid #bfe4f3;background:#fff;content:"";transform:rotate(45deg)}.ws-chat-invite strong,.ws-chat-invite span{display:block}.ws-chat-invite strong{font-size:15px;line-height:1.45}.ws-chat-invite span{margin-top:4px;color:#668096;font-size:12px;line-height:1.5}.ws-chat-invite-close{position:absolute;top:8px;right:9px;width:28px;height:28px;border:0;border-radius:50%;background:#f2f8fb;color:#587488;cursor:pointer;font-size:18px}.ws-chat-invite-action{margin-top:11px;padding:8px 17px;border:0;border-radius:99px;background:#0b91d4;color:#fff;cursor:pointer;font-weight:750}@keyframes ws-chat-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.ws-chat-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.wecom-float[data-ws-chat-toggle]{overflow:visible}.wecom-float[data-ws-chat-toggle]:hover{width:64px!important;height:64px!important}.wecom-float[data-ws-chat-toggle]:hover .wecom-flip{transform:none!important}.wecom-float .ws-chat-icon-unread{position:absolute;top:-7px;right:-7px;z-index:3;display:grid;min-width:23px;height:23px;place-items:center;padding:0 5px;border:2px solid #fff;border-radius:99px;background:#f03e3e;color:#fff;font-size:11px;font-style:normal}
@media(prefers-reduced-motion:reduce){.ws-chat-auto-row{opacity:1;transform:none;animation:none}}
@media(max-width:600px){.ws-chat-panel{right:10px;bottom:76px;width:calc(100vw - 20px);max-height:calc(100vh - 88px)}.ws-chat-body{max-height:calc(100vh - 190px)}.ws-chat-invite{right:12px;bottom:154px;width:calc(100vw - 48px)}.ws-chat-auto-messages{padding:14px 16px 6px}.ws-chat-quick{padding:8px 16px 4px}.ws-chat-start{padding:10px 16px 16px}.ws-chat-messages{min-height:220px}.ws-chat-quick button{font-size:12px}}
.ws-chat-message-image{display:block;margin-top:8px}.ws-chat-message-image img{display:block;max-width:220px;max-height:220px;border-radius:12px;object-fit:contain;background:#fff}.ws-chat-image-button{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:7px 12px;border:1px solid #c9e2ef;border-radius:9px;color:#087fbd;background:#f5fbfe;cursor:pointer;font-size:13px}.ws-chat-image-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.ws-chat-image-preview{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;background:#eef8fc}.ws-chat-image-preview[hidden]{display:none}.ws-chat-image-preview img{width:64px;height:64px;object-fit:cover;border-radius:8px}.ws-chat-image-preview button{border:0;background:transparent;color:#cf3345;cursor:pointer}.ws-chat-send-hint{grid-column:1/-1;color:#7892a2;font-size:12px}
.ws-chat-panel,.ws-chat-panel *{box-sizing:border-box}
/* One bounded panel; only the conversation track scrolls. */
.ws-chat-panel{z-index:1300;width:min(420px,calc(100vw - 32px));height:min(700px,calc(100dvh - 120px));max-height:none;border-radius:18px;box-shadow:0 16px 56px #163a5426;font-size:14px;line-height:1.5}
.ws-chat-panel>header{position:static;flex:0 0 auto;padding:14px 18px;background:#fff;gap:12px}
.ws-chat-panel>header button{flex:0 0 34px;background:#f3f7f9}
.ws-chat-body{display:flex;flex-direction:column;flex:1 1 0;min-height:0;max-height:none;overflow:hidden;background:#f5f8fa}
.ws-chat-messages,.ws-chat-history{flex:1 1 0;min-height:0;max-height:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bdd0dc transparent;scrollbar-gutter:stable}
.ws-chat-messages{padding:16px;gap:16px}
.ws-chat-message{flex:0 0 auto;max-width:86%;min-width:0}
.ws-chat-message p,.ws-chat-auto-row p{box-shadow:none;border:1px solid #e5edf2}
.ws-chat-message.visitor p{background:#e4f3fc;border-color:#d6ebf8;color:#173951}
.ws-chat-message-image img{max-width:min(240px,100%);max-height:180px;height:auto;border:1px solid #e5edf2;border-radius:10px}
.ws-chat-start,.ws-chat-reply,.ws-chat-closed{flex:0 0 auto;margin:0;padding:12px 16px;background:#fff;border-top:1px solid #e6edf2;gap:8px;grid-template-columns:minmax(0,1fr) auto}
.ws-chat-start textarea,.ws-chat-reply textarea{grid-column:1;grid-row:1;min-height:58px;height:58px;max-height:58px;resize:none;font-size:14px;line-height:1.5;background:#f8fafc}
.ws-chat-start .ws-chat-primary,.ws-chat-reply .ws-chat-primary{grid-column:2;grid-row:1;width:auto;align-self:stretch;min-height:40px;border-radius:10px;padding:0 15px}
.ws-chat-contact-tip,.ws-chat-reply-tip{display:none}
.ws-chat-send-hint{font-size:11px;line-height:1.4}
.ws-chat-error:empty{display:none}
.ws-chat-image-preview{grid-row:2;margin:0;padding:6px;font-size:12px}
.ws-chat-image-preview img{width:36px;height:36px}
.ws-chat-panel>.ws-chat-footer{position:static;display:block;margin:0;padding:11px 16px 13px;border-top:1px solid #e6edf2;text-align:center}
.ws-chat-footer>strong{margin:0 0 7px;font-size:13px;font-weight:700}
.ws-chat-qr-grid{grid-template-columns:repeat(2,86px);gap:12px}
.ws-chat-qr-grid[data-qr-count="1"]{grid-template-columns:86px}
.ws-chat-footer .ws-chat-qr-item img{width:86px;height:86px;padding:3px;border-radius:10px}
.ws-chat-qr-wrap small{font-size:13px;color:#168bc8;margin-top:5px}
.ws-chat-quick{padding-bottom:16px}
.ws-chat-panel button:focus-visible,.ws-chat-messages:focus-visible,.ws-chat-history:focus-visible{outline:2px solid #0b91d4;outline-offset:-2px}
@media(max-width:600px){
 .ws-chat-panel{right:8px;bottom:max(8px,env(safe-area-inset-bottom));width:calc(100vw - 16px);height:min(700px,calc(100dvh - 16px));border-radius:16px}
 .ws-chat-panel>header{padding:12px 14px}
 .ws-chat-start textarea,.ws-chat-reply textarea{font-size:16px}
 .ws-chat-panel>.ws-chat-footer{padding:10px 16px}
}
@media(max-height:560px){
 .ws-chat-panel{bottom:8px;height:calc(100dvh - 16px)}
 .ws-chat-panel>header{padding:8px 14px}
 .ws-chat-panel header span{display:none}
 .ws-chat-panel>.ws-chat-footer{padding:6px 16px}
 .ws-chat-start,.ws-chat-reply{padding:8px 12px;gap:4px}
 .ws-chat-start textarea,.ws-chat-reply textarea{height:44px;min-height:44px;max-height:44px;padding:8px}
 .ws-chat-send-hint{display:none}
 .ws-chat-image-preview{padding:2px 6px}
 .ws-chat-image-preview img{width:24px;height:24px}
}
.wecom-float.ws-chat-universal-launch{position:fixed;right:24px;bottom:24px;z-index:1090;display:grid;place-items:center;width:64px;height:64px;padding:5px;border:0;border-radius:20px;background:#fff;box-shadow:0 8px 32px #12314826;cursor:pointer}
.wecom-float.ws-chat-universal-launch img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:600px){.wecom-float.ws-chat-universal-launch{right:14px;bottom:18px}}

/* Approved WhaleShot chat interface, isolated from site styles. */
#wsChatPanel{--blue:#2475b5;--ink:#16324c;--muted:#7c8d9c;--line:#e7edf3;--pale:#edf4fa}#wsChatPanel *{box-sizing:border-box}#wsChatPanel{margin:0;background:#edf3f8;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;color:var(--ink);font-size:14px}#wsChatPanel button,#wsChatPanel input,#wsChatPanel textarea{font:inherit}#wsChatPanel button{cursor:pointer}#wsChatPanel button:focus-visible,#wsChatPanel textarea:focus-visible,#wsChatPanel input:focus-visible{outline:2px solid #2475b5;outline-offset:3px}#wsChatPanel button{color:inherit}#wsChatPanel .preview-bar{height:62px;max-width:1040px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 24px;color:#667e91;font-size:12px}#wsChatPanel .preview-bar strong{font-size:13px;color:#36576e;font-weight:500}#wsChatPanel .preview-bar button{border:0;background:transparent;color:#2475b5;padding:8px}#wsChatPanel .scene{display:flex;justify-content:center;padding:10px 20px 30px}#wsChatPanel{width:440px;height:min(810px,calc(100dvh - 100px));min-height:600px;display:flex;flex-direction:column;background:#f4f7fa;border:1px solid #dde7ef;border-radius:24px;overflow:hidden;box-shadow:0 24px 65px #173f5b16}#wsChatPanel .chat-header{padding:23px 22px 20px;background:linear-gradient(120deg,#e4f2fd,#f8fbff);display:flex;align-items:center;gap:12px;border-bottom:1px solid #e3edf5}#wsChatPanel .brand-logo{width:48px;height:48px;border-radius:50%;background:white;padding:3px;flex-shrink:0}#wsChatPanel .brand-text{flex:1;min-width:0}#wsChatPanel .brand-text h1{font-size:20px;line-height:1.4;margin:0 0 4px;letter-spacing:.3px}#wsChatPanel .brand-text p{margin:0;color:#71899c;font-size:12px}#wsChatPanel .header-action{background:#ffffff9c;border:1px solid #d9e7f2;width:32px;height:32px;display:grid;place-items:center;border-radius:50%}#wsChatPanel .header-action svg{width:16px;height:16px}#wsChatPanel svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}#wsChatPanel .body{flex:1;min-height:0;overflow:auto;padding:18px 18px 22px;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#cedde8 transparent}#wsChatPanel .service-card{background:#fff;border:1px solid #e8eff5;border-radius:16px;padding:16px;margin-bottom:20px}#wsChatPanel .service-heading{font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}#wsChatPanel .service-heading span:last-child{font-size:11px;font-weight:400;color:#8a9caa}#wsChatPanel .services{display:grid;grid-template-columns:1fr 1fr;gap:7px 10px}#wsChatPanel .service{display:flex;align-items:center;gap:7px;color:#506e84;font-size:12px;padding:3px 0}#wsChatPanel .service svg{width:15px;height:15px;color:var(--blue)}#wsChatPanel .service-foot{border-top:1px solid #eef2f6;padding-top:11px;margin-top:13px;color:#7c8d9b;font-size:11px;display:flex;align-items:center;justify-content:space-between}#wsChatPanel .service-foot button{font-size:11px;border:0;background:transparent;color:var(--blue);padding:0}#wsChatPanel .timestamp{font-size:11px;color:#9aa8b3;text-align:center;margin:0 0 17px}#wsChatPanel .message{display:flex;align-items:flex-start;gap:8px;margin-bottom:16px}#wsChatPanel .avatar{width:30px;height:30px;border-radius:50%;background:#fff;padding:3px;flex-shrink:0;border:1px solid #e7eef4}#wsChatPanel .bubble{background:#fff;border:1px solid #eaf0f5;border-radius:3px 16px 16px 16px;padding:13px 14px;font-size:14px;line-height:1.8;max-width:calc(100% - 38px);white-space:pre-line;overflow-wrap:anywhere}#wsChatPanel .bubble strong{font-weight:600}#wsChatPanel .bubble .hello{font-size:15px;display:block;margin-bottom:7px}#wsChatPanel .message.user{justify-content:flex-end;margin-left:34px}#wsChatPanel .message.user .bubble{background:#ddebfa;border:0;border-radius:16px 3px 16px 16px;max-width:100%;padding:10px 15px}#wsChatPanel .quick-title{margin:2px 0 9px 38px;color:#91a0ad;font-size:11px}#wsChatPanel .quick-options{margin:0 0 18px 38px;display:grid;grid-template-columns:1fr 1fr;gap:8px}#wsChatPanel .quick-options button{display:flex;align-items:center;justify-content:space-between;text-align:left;background:white;border:1px solid #dce8f2;border-radius:9px;padding:11px 10px;font-size:12px;color:#365e7d;transition:background .2s}#wsChatPanel .quick-options button:hover{background:#eaf3fc;border-color:#b1cfe6}#wsChatPanel .quick-options svg{width:12px;height:12px;color:#8aa6bc}#wsChatPanel .composer{background:#fff;border-top:1px solid #e7edf3;padding:12px 18px 14px}#wsChatPanel .contact-actions{display:flex;gap:9px;margin-bottom:12px}#wsChatPanel .contact-actions button{display:flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid #e2eaf1;background:#fff;border-radius:8px;color:#526d81;font-size:12px}#wsChatPanel .contact-actions button:hover{border-color:#2475b5;color:#2475b5}#wsChatPanel .contact-actions svg{width:16px;height:16px}#wsChatPanel .input-row{display:flex;gap:10px;align-items:flex-end}#wsChatPanel .input-wrap{flex:1;background:#f3f6f9;border:1px solid #e8edf2;border-radius:11px;display:flex;align-items:center;padding:10px 12px}#wsChatPanel .input-wrap textarea{width:100%;resize:none;border:0;background:transparent;outline:0!important;color:#16324c;line-height:1.5;font-size:14px;height:22px;max-height:90px}#wsChatPanel .input-wrap textarea::placeholder{color:#9aa8b3}#wsChatPanel .send{width:43px;height:43px;border:0;border-radius:11px;background:var(--blue);color:white;display:grid;place-items:center}#wsChatPanel .send:disabled{background:#c3d7e7;cursor:default}#wsChatPanel .send svg{width:20px;height:20px}#wsChatPanel .preview-note{font-size:10px;text-align:center;color:#a0adb8;margin-top:10px}#wsChatPanel .backdrop{position:fixed;inset:0;background:#0c253e60;display:grid;place-items:center;z-index:10;padding:20px;backdrop-filter:blur(3px)}#wsChatPanel [hidden]{display:none!important}#wsChatPanel .sheet{position:relative;width:340px;max-width:100%;border-radius:20px;background:white;padding:28px;text-align:center;box-shadow:0 20px 80px #16324c30}#wsChatPanel .sheet h2{font-size:19px;margin:0 0 10px}#wsChatPanel .sheet p{font-size:13px;color:#748b9c;line-height:1.8;margin:8px 0}#wsChatPanel .sheet .qr{width:204px;height:204px;max-width:100%;object-fit:contain;border:1px solid var(--line);padding:8px;border-radius:12px;margin:12px auto}#wsChatPanel .close{position:absolute;right:10px;top:10px;width:30px;height:30px;display:grid;place-items:center;background:#f3f6f9;border:0;border-radius:50%}#wsChatPanel .close svg{width:15px;height:15px}#wsChatPanel .sheet form{text-align:left;margin-top:18px}#wsChatPanel .sheet label{display:block;font-size:12px;color:#526e84;margin-bottom:6px}#wsChatPanel .sheet input{display:block;width:100%;padding:11px;border:1px solid #dce5ed;border-radius:8px;margin-bottom:14px;outline:0}#wsChatPanel .sheet .submit{width:100%;padding:12px;border:0;background:var(--blue);color:white;border-radius:9px}#wsChatPanel .form-note{font-size:10px!important;color:#9ba8b2!important}#wsChatPanel .toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);max-width:90vw;background:#16324c;color:white;font-size:12px;padding:12px 18px;border-radius:10px;z-index:20;box-shadow:0 5px 30px #16324c30}#wsChatPanel .minimized{position:fixed;bottom:32px;right:32px;border:0;border-radius:50%;width:64px;height:64px;background:#2475b5;color:white;box-shadow:0 10px 25px #2475b540}#wsChatPanel .minimized svg{width:28px;height:28px}
@media(max-width:540px){#wsChatPanel{background:#f4f7fa}#wsChatPanel .preview-bar{height:35px;padding:0 14px;font-size:10px;background:#f8fbfd}#wsChatPanel .preview-bar strong{font-size:10px}#wsChatPanel .preview-bar button{font-size:10px;padding:4px}#wsChatPanel .scene{padding:0;display:block}#wsChatPanel{width:100%;height:calc(100dvh - 35px);min-height:0;border:0;border-radius:0;box-shadow:none}#wsChatPanel .chat-header{padding:18px 18px 17px}#wsChatPanel .brand-text h1{font-size:19px}#wsChatPanel .body{padding:16px}#wsChatPanel .service-card{padding:14px;margin-bottom:18px}#wsChatPanel .bubble{font-size:14px}#wsChatPanel .composer{padding:12px 16px max(14px,env(safe-area-inset-bottom))}#wsChatPanel .preview-note{margin-top:8px}#wsChatPanel .brand-logo{width:44px;height:44px}#wsChatPanel .quick-options button{font-size:12px;padding:11px 9px}}@media(prefers-reduced-motion:reduce){#wsChatPanel *{scroll-behavior:auto!important;transition:none!important}}#wsChatPanel .wechat-cta{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;margin-top:13px;padding:10px 8px;border:0;border-radius:8px;background:#2475b5;color:#fff;font-size:12px;line-height:1.5;font-weight:500;white-space:normal}#wsChatPanel .wechat-cta svg{width:13px;height:13px}#wsChatPanel .cta-note{display:block;color:#96a5b2;font-size:10px;text-align:center;margin-top:6px}#wsChatPanel .contact-actions [data-kf]{order:-1}#wsChatPanel .contact-actions [data-kf]:hover{background:#1c639b;color:#fff}#wsChatPanel .brand-text p{line-height:1.65;max-width:100%;overflow-wrap:anywhere}#wsChatPanel .service-heading{font-size:13px;line-height:1.65;margin-bottom:12px}#wsChatPanel .chat-header{align-items:center}#wsChatPanel .service{line-height:1.6}#wsChatPanel .quick-options button:last-child:nth-child(3){grid-column:1 / -1}#wsChatPanel .contact-actions button{transition:background .18s ease,color .18s ease,border-color .18s ease}#wsChatPanel .contact-actions button:hover,#wsChatPanel .contact-actions button:active,#wsChatPanel .contact-actions button.is-selected{background:#2475b5!important;color:#fff!important;border-color:#2475b5!important}#wsChatPanel .contact-actions button .wechat-icon{fill:none;background:transparent;width:19px;height:19px;stroke-width:1.45}#wsChatPanel .contact-actions button:focus-visible{outline:2px solid #8bb8db;outline-offset:3px}

@media(max-width:420px){#wsChatPanel .contact-actions{gap:6px}#wsChatPanel .contact-actions button{padding:7px 8px;font-size:11px;gap:5px}#wsChatPanel .contact-actions button .wechat-icon{width:17px;height:17px}}#wsChatPanel /* Hover takes precedence over the previously selected entry. */
.contact-actions:has(button:hover) button:not(:hover){background:#fff!important;color:#526d81!important;border-color:#e2eaf1!important}

#wsChatPanel{position:fixed;right:24px;bottom:100px;z-index:1300;width:440px;max-width:calc(100vw - 32px);height:min(810px,calc(100dvh - 125px));min-height:0;max-height:none;display:flex;flex-direction:column;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;color:#16324c;--blue:#2475b5;--ink:#16324c;--muted:#7c8d9c;--line:#e7edf3;--pale:#edf4fa}
#wsChatPanel[hidden]{display:none!important}#wsChatPanel .ws-chat-body{display:flex;flex-direction:column;flex:1;min-height:0;max-height:none;overflow:hidden;background:#f4f7fa}
#wsChatPanel .body{display:block;flex:1;min-height:0;max-height:none;overflow:auto;scrollbar-gutter:auto}
#wsChatPanel .ws-chat-history,#wsChatPanel .ws-chat-messages{padding:18px;min-height:0}
#wsChatPanel .composer{flex:0 0 auto;position:static;padding:12px 18px 14px;border-top:1px solid #e7edf3;background:#fff}
#wsChatPanel .composer form{display:block;margin:0;padding:0;border:0;background:transparent}
#wsChatPanel .input-row{display:flex;gap:10px;align-items:flex-end}
#wsChatPanel .input-wrap textarea{height:24px;min-height:24px;max-height:90px;padding:0;border:0;border-radius:0;font-size:14px;resize:none;background:transparent;box-shadow:none}
#wsChatPanel .send{flex:0 0 43px;padding:0}#wsChatPanel .send:disabled{opacity:.55;cursor:wait}
#wsChatPanel .chat-header{display:flex;align-items:center;justify-content:flex-start;flex:0 0 auto;padding:23px 22px 20px;background:linear-gradient(120deg,#e4f2fd,#f8fbff)}
#wsChatPanel .chat-header .header-action{width:32px;height:32px;flex:0 0 32px;padding:0;border:1px solid #d9e7f2;background:#ffffff9c}
#wsChatPanel .chat-header span{display:inline;margin:0}#wsChatPanel .contact-actions{margin-bottom:12px}#wsChatPanel .bubble{font-size:14px;line-height:1.8;text-align:left}
#wsChatPanel .chat-time{display:block;font-size:10px;line-height:1.5;color:#93a3b0;margin-top:6px}
#wsChatPanel .live-chat-tip{display:block;font-size:10px;text-align:center;color:#96a5b2;margin-top:8px;line-height:1.6}
#wsChatPanel .ws-chat-error:not(:empty){margin-top:8px;line-height:1.5}
.ws-live-qr{width:min(360px,calc(100vw - 36px));padding:28px;border:0;border-radius:18px;background:#fff;color:#16324c;text-align:center;box-shadow:0 20px 80px #16324c30;font-family:"Microsoft YaHei","PingFang SC",sans-serif}
.ws-live-qr::backdrop{background:#0c253e60;backdrop-filter:blur(3px)}.ws-live-qr h2{font-size:19px;margin:0 0 12px}.ws-live-qr p{font-size:13px;line-height:1.7;color:#748b9c}.ws-live-qr [data-ws-chat-qr-close]{position:absolute;right:10px;top:10px;border:0;border-radius:50%;width:30px;height:30px;background:#f3f6f9;color:#526d81;font-size:22px;cursor:pointer}
.ws-live-qr .ws-chat-qr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ws-live-qr .ws-chat-qr-grid[data-qr-count="1"]{grid-template-columns:1fr}.ws-live-qr .ws-chat-qr-item img{display:block;width:100%;max-width:220px;aspect-ratio:1;object-fit:contain;margin:auto;padding:6px;border:1px solid #e7edf3;border-radius:10px}
@media(max-width:600px){#wsChatPanel{right:8px;bottom:max(8px,env(safe-area-inset-bottom));width:calc(100vw - 16px);max-width:none;height:calc(100dvh - 16px);min-height:0;border-radius:18px}#wsChatPanel .chat-header{padding:16px}#wsChatPanel .ws-chat-history,#wsChatPanel .ws-chat-messages{padding:16px}#wsChatPanel .composer{padding:12px 14px max(14px,env(safe-area-inset-bottom))}#wsChatPanel .contact-actions{gap:6px}#wsChatPanel .contact-actions button{padding:7px 7px;font-size:11px;gap:4px}#wsChatPanel .input-wrap textarea{font-size:16px}}
@media(max-height:560px){#wsChatPanel{bottom:8px;height:calc(100dvh - 16px)}#wsChatPanel .chat-header{padding:10px 14px}#wsChatPanel .composer{padding:8px 12px}#wsChatPanel .live-chat-tip{display:none}}

.ws-service-info{border:1px solid #dce8ef;border-radius:20px;width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 40px);box-sizing:border-box;overflow:auto;padding:28px;color:#16324c;font-family:'Microsoft YaHei',sans-serif}
.ws-service-info::backdrop{background:#16324c66}.ws-service-info>button:first-child{float:right;border:0;border-radius:50%;background:#f1f6fb;width:32px;height:32px;font-size:23px;color:#16324c;cursor:pointer}.ws-service-info h2{font-size:20px;margin:0 35px 14px 0}.ws-service-info>p{font-size:13px;color:#7890a2}.ws-service-info article{background:#f4f8fc;border:1px solid #e1eaf2;padding:14px;border-radius:12px;margin:12px 0}.ws-service-info h3{font-size:15px;margin:0 0 8px}.ws-service-info article p{font-size:13px;line-height:1.9;color:#627c90;margin:0}.ws-service-return{width:100%;background:#2475b5;color:#fff;border:0;border-radius:8px;padding:12px;cursor:pointer}
#wsChatPanel .composer{display:block!important;min-width:0!important;width:100%!important;box-sizing:border-box!important}#wsChatPanel .composer form{width:100%;min-width:0}#wsChatPanel .input-row{width:100%;min-width:0}#wsChatPanel .input-wrap{min-width:0}#wsChatPanel textarea{min-width:0}
/* Isolate the overview from general website service-card and footer layouts. */
#wsChatPanel .service-card{display:block!important;grid-template-columns:none!important;align-self:stretch!important;width:100%!important;max-width:none!important;min-width:0!important;min-height:0!important;text-align:left!important}
#wsChatPanel .service-heading{display:block!important;width:100%!important;text-align:center!important;line-height:1.6!important;margin:0 0 12px!important;color:#16324c!important}
#wsChatPanel .services{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:360px!important;margin:0 auto!important;gap:9px 12px!important}
#wsChatPanel .service{display:grid!important;grid-template-columns:16px minmax(0,1fr)!important;align-items:center!important;gap:7px!important;min-width:0!important;line-height:1.6!important;text-align:left!important}
#wsChatPanel .service-foot{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;gap:8px 12px!important;width:100%!important;max-width:none!important;margin:13px 0 0!important;padding:11px 0 0!important}
#wsChatPanel .service-foot>span{flex:1 1 150px;min-width:0;line-height:1.6}#wsChatPanel .service-foot>button{flex:0 0 auto;white-space:nowrap;margin:0!important}
/* Compact introduction; fit the entire dialog to the available viewport. */
#wsServiceInfo{position:fixed!important;inset:auto!important;left:50%!important;top:50%!important;margin:0!important;width:min(660px,calc(100vw - 36px))!important;max-width:none!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:hidden!important;padding:20px!important;border-radius:16px!important;transform:translate(-50%,-50%) scale(var(--ws-info-scale,.92));transform-origin:center}
#wsServiceInfo h2{font-size:19px!important;line-height:1.4!important;margin:0 32px 8px 0!important}
#wsServiceInfo>p{font-size:12px!important;line-height:1.5!important;margin:0 0 12px!important}
#wsServiceInfo .ws-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 14px}
#wsServiceInfo article{min-width:0;margin:0!important;padding:12px!important;border-radius:10px!important}
#wsServiceInfo article h3{font-size:14px!important;line-height:1.4!important;margin:0 0 7px!important}
#wsServiceInfo article p{font-size:12px!important;line-height:1.65!important;margin:0!important}
#wsServiceInfo .ws-service-return{padding:9px!important;font-size:13px!important;line-height:1.5!important}
@media(max-width:600px){#wsServiceInfo{padding:15px!important}#wsServiceInfo .ws-info-grid{grid-template-columns:1fr;gap:7px;margin:8px 0 10px}#wsServiceInfo h2{font-size:17px!important}#wsServiceInfo article{padding:9px 11px!important}#wsServiceInfo article h3{font-size:13px!important;margin-bottom:4px!important}#wsServiceInfo article p{font-size:12px!important;line-height:1.55!important}}
body dialog .ws-unified-close,#wsServiceInfo>.ws-unified-close,#wsLiveChatQR>.ws-unified-close{position:absolute!important;inset:12px 12px auto auto!important;float:none!important;display:grid!important;place-items:center!important;align-items:center!important;justify-content:center!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;max-width:32px!important;padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;background:#f1f6fa!important;color:#385b73!important;line-height:1!important;box-shadow:none!important;cursor:pointer!important;z-index:3}
body dialog .ws-unified-close svg{display:block!important;width:16px!important;height:16px!important;margin:0!important;padding:0!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
body dialog .ws-unified-close:hover{background:#e4eff8!important;color:#16324c!important}body dialog .ws-unified-close:focus-visible{outline:2px solid #2475b5!important;outline-offset:3px}
#wsChatPanel .header-action{display:grid!important;place-items:center!important;line-height:1!important;padding:0!important}
#wsServiceInfo h2{padding-right:14px!important}
@media(max-width:360px){#wsServiceInfo article p{line-height:1.45!important}#wsServiceInfo .ws-info-grid{gap:5px}#wsServiceInfo article{padding:8px 10px!important}}

.wecom-float[data-ws-chat-toggle]{display:none!important}.customer-dock{position:fixed;z-index:90;right:20px;bottom:max(24px,env(safe-area-inset-bottom));width:64px;padding:9px 6px;background:#fff;border-radius:36px;box-shadow:0 8px 35px #173b5614;transition:transform .42s cubic-bezier(.22,.75,.25,1),opacity .42s ease}.customer-dock button{display:flex;flex-direction:column;align-items:center;gap:6px;justify-content:center;width:100%;height:80px;border:0;background:none;color:#17232d;cursor:pointer;font:14px/1.4 inherit;padding:8px 0;border-radius:28px}.customer-dock button+button{border-top:1px solid #e5edf4;border-radius:0}.customer-dock button:hover,.customer-dock button:focus-visible{color:#247fba;background:#f1f8fd}.customer-dock svg{width:26px;height:26px}.customer-dock.is-scrolling{transform:translateX(calc(100% + 12px));opacity:.18;pointer-events:none}.customer-dock-card{position:fixed;z-index:91;right:98px;bottom:max(24px,env(safe-area-inset-bottom));width:302px;padding:20px;background:#fff;color:#274356;border:1px solid #e7edf2;border-radius:16px;box-shadow:0 14px 50px #153c5518;animation:customerCardIn .24s ease both;box-sizing:border-box}.customer-dock-card[hidden]{display:none!important}.customer-dock-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.customer-dock-card h2{font-size:14px;font-weight:500;color:#8796a0;margin:0}.customer-dock-card [data-dock-close]{width:28px;height:28px;padding:5px;border:0;background:transparent;color:#7d919e;cursor:pointer;display:grid;place-items:center}.customer-dock-card svg{width:22px;height:22px}.dock-contact{display:flex;align-items:center;gap:14px;padding:19px 0;text-decoration:none;color:inherit}.dock-contact+.dock-contact{border-top:1px solid #edf1f5}.dock-contact>img,.dock-contact>svg{width:38px;height:38px;object-fit:contain;flex-shrink:0;padding:7px;box-sizing:content-box;background:#f5f8fa;border-radius:50%}.dock-contact strong{display:block;font-size:17px;font-weight:400;line-height:1.6}.dock-contact span{display:block;font-size:12px;color:#8796a0;margin-top:3px}.customer-dock-card p{font-size:12px;line-height:1.8;color:#8093a0}.dock-chat-start{width:100%;border:0;border-radius:7px;background:#277eb7;color:#fff;font-size:13px;padding:11px;cursor:pointer}.dock-qr{display:block;width:148px;height:148px;object-fit:contain;margin:12px auto}.customer-dock-card:has(.dock-qr) p{text-align:center}.ws-chat-panel{right:102px!important}@keyframes customerCardIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}@media(max-width:650px){.customer-dock{width:49px;right:10px;bottom:max(22px,env(safe-area-inset-bottom));padding:6px 4px}.customer-dock button{height:66px;font-size:12px}.customer-dock svg{width:23px;height:23px}.customer-dock-card{right:70px;width:min(280px,calc(100vw - 82px));padding:16px;bottom:max(22px,env(safe-area-inset-bottom))}.dock-contact{gap:10px;padding:15px 0}.dock-contact strong{font-size:15px}.dock-contact span{font-size:11px}.dock-contact>img,.dock-contact>svg{width:29px;height:29px}.ws-chat-panel{right:0!important}}@media(prefers-reduced-motion:reduce){.customer-dock{transition:none}.customer-dock-card{animation:none}}

/* Suppress obsolete launch/footer before async UI initialization. */
.wecom-float{display:none!important}body>footer.site-footer{display:none!important}

/* Customer-service widgets are isolated from each website's header/link defaults. */
html body .customer-dock,html body .customer-dock-card{box-sizing:border-box!important;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif!important;line-height:1.5!important;letter-spacing:normal!important}
html body .customer-dock{width:56px!important;padding:6px!important;right:16px!important;bottom:max(18px,env(safe-area-inset-bottom))!important;border-radius:30px!important}
html body .customer-dock>button{box-sizing:border-box!important;min-width:0!important;min-height:0!important;width:100%!important;height:64px!important;padding:6px 0!important;margin:0!important;gap:5px!important;font:12px/1.4 "Microsoft YaHei","PingFang SC",Arial,sans-serif!important;box-shadow:none!important}
html body .customer-dock>button>svg{display:block!important;width:23px!important;height:23px!important;flex-shrink:0!important}
html body .customer-dock>button>span{font:inherit!important;line-height:1.4!important}
html body .customer-dock-card{width:264px!important;max-width:calc(100vw - 96px)!important;padding:14px!important;right:84px!important;bottom:max(18px,env(safe-area-inset-bottom))!important;border-radius:13px!important;border:1px solid #e7edf2!important;background:#fff!important;max-height:calc(100dvh - 36px)!important;overflow:auto!important;overscroll-behavior:contain}
html body .customer-dock-card>header{position:static!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important;max-width:none!important;height:26px!important;min-height:0!important;padding:0!important;margin:0 0 8px!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;transform:none!important;inset:auto!important;box-sizing:border-box!important}
html body .customer-dock-card>header::before,html body .customer-dock-card>header::after{display:none!important;content:none!important}
html body .customer-dock-card>header>h2{font:400 13px/20px "Microsoft YaHei","PingFang SC",Arial,sans-serif!important;margin:0!important;padding:0!important;color:#81929e!important;border:0!important;letter-spacing:normal!important}
html body .customer-dock-card [data-dock-close]{position:static!important;display:grid!important;place-items:center!important;flex:0 0 26px!important;box-sizing:border-box!important;width:26px!important;height:26px!important;min-height:0!important;min-width:0!important;margin:0!important;padding:5px!important;border:0!important;border-radius:50%!important;line-height:1!important;background:transparent!important;box-shadow:none!important;color:#7d919e!important}
html body .customer-dock-card [data-dock-close]>svg{display:block!important;width:16px!important;height:16px!important}
html body .customer-dock-card>.dock-contact{box-sizing:border-box!important;display:flex!important;align-items:center!important;gap:11px!important;padding:13px 0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;text-decoration:none!important;box-shadow:none!important;color:#274356!important;font-size:13px!important;min-height:0!important;line-height:1.5!important}
html body .customer-dock-card>.dock-contact+.dock-contact{border-top:1px solid #edf1f5!important}
html body .customer-dock-card .dock-contact>img,html body .customer-dock-card .dock-contact>svg{box-sizing:border-box!important;display:block!important;width:42px!important;height:42px!important;padding:8px!important;margin:0!important;border:0!important;flex:0 0 42px!important;border-radius:50%!important;background:#f5f8fa!important;object-fit:contain!important}
html body .customer-dock-card .dock-contact>div{min-width:0!important;flex:1!important}
html body .customer-dock-card .dock-contact strong{display:block!important;font:400 15px/23px "Microsoft YaHei","PingFang SC",Arial,sans-serif!important;margin:0!important;padding:0!important;color:#274356!important;letter-spacing:normal!important}
html body .customer-dock-card .dock-contact span{display:block!important;font:400 11px/18px "Microsoft YaHei","PingFang SC",Arial,sans-serif!important;margin:3px 0 0!important;padding:0!important;color:#8796a0!important;letter-spacing:normal!important}
html body .customer-dock-card>p{font:400 12px/20px "Microsoft YaHei","PingFang SC",Arial,sans-serif!important;margin:8px 0 12px!important;padding:0!important;color:#8093a0!important;letter-spacing:normal!important}
html body .customer-dock-card>.dock-chat-start{box-sizing:border-box!important;width:100%!important;min-width:0!important;min-height:0!important;height:36px!important;margin:0!important;padding:8px 12px!important;border:0!important;border-radius:6px!important;font:400 12px/20px "Microsoft YaHei","PingFang SC",Arial,sans-serif!important;background:#277eb7!important;color:#fff!important;box-shadow:none!important}
html body .customer-dock-card>.dock-qr{display:block!important;box-sizing:border-box!important;width:128px!important;height:128px!important;max-width:100%!important;object-fit:contain!important;padding:0!important;margin:10px auto!important;border:0!important;border-radius:0!important}
html body .customer-dock-card:has(.dock-qr)>p{font-size:11px!important;margin:8px 0 0!important;text-align:center!important}
@media(max-width:650px),(max-height:480px){
 html body .customer-dock{width:44px!important;padding:4px!important;right:8px!important;bottom:max(12px,env(safe-area-inset-bottom))!important;border-radius:25px!important}
 html body .customer-dock>button{height:54px!important;padding:5px 0!important;gap:4px!important;font-size:11px!important}
 html body .customer-dock>button>svg{width:21px!important;height:21px!important}
 html body .customer-dock-card{width:250px!important;max-width:calc(100vw - 70px)!important;right:60px!important;bottom:max(12px,env(safe-area-inset-bottom))!important;padding:12px!important;border-radius:12px!important;max-height:calc(100dvh - 24px)!important}
 html body .customer-dock-card>.dock-contact{gap:10px!important;padding:11px 0!important}
 html body .customer-dock-card .dock-contact>img,html body .customer-dock-card .dock-contact>svg{width:36px!important;height:36px!important;flex-basis:36px!important;padding:7px!important}
 html body .customer-dock-card .dock-contact strong{font-size:14px!important;line-height:22px!important}
 html body .customer-dock-card .dock-contact span{font-size:11px!important;line-height:18px!important}
 html body .customer-dock-card>.dock-qr{width:120px!important;height:120px!important;margin:8px auto!important}
}
