/* Isolated widget styles. No global reset, external icon/font or Bootstrap dependency. */
.vm-float{--chat-teal:#087f79;--chat-border:#dce5e8;--chat-text:#20343d;font:14px/1.5 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--chat-text);position:relative;z-index:1080}
.vm-float [hidden],.vm-float[hidden]{display:none!important}
.vm-float *, .vm-float *::before,.vm-float *::after{box-sizing:border-box}
.vm-float button,.vm-float input,.vm-float textarea,.vm-float select{font:inherit}
.vm-float button{cursor:pointer;touch-action:manipulation}
.vm-float button:focus-visible,.vm-float input:focus-visible,.vm-float select:focus-visible,.vm-float textarea:focus-visible,.vm-float a:focus-visible{outline:3px solid #ffba59;outline-offset:2px}
.vm-float-launcher{position:fixed;right:24px;bottom:24px;display:flex;align-items:center;gap:10px;min-height:52px;border:0;border-radius:28px;padding:12px 20px;color:#fff;background:var(--chat-teal);box-shadow:0 6px 24px #18394b30;font-weight:650}
.vm-float-launcher:hover{background:#066d68}
.vm-float-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:20px;color:#fff;background:#dc3545;font-size:12px;font-weight:700}
.vm-float-panel{position:fixed;right:24px;bottom:88px;width:400px;height:min(660px,calc(100dvh - 112px));max-height:calc(100vh - 112px);display:flex;flex-direction:column;background:#fff;border:1px solid var(--chat-border);border-radius:16px;box-shadow:0 14px 70px #163c5033;overflow:hidden;isolation:isolate}
.vm-float-panel.is-expanded{width:min(680px,calc(100vw - 48px));height:min(800px,calc(100dvh - 112px))}
.vm-float-header{margin:0;border-radius:0;flex-shrink:0;display:flex;align-items:center;gap:8px;padding:10px 9px;color:#fff;background:var(--chat-teal);min-height:68px}
.vm-float-icon{width:38px;min-width:38px;height:42px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:inherit;font-size:27px;line-height:1}
.vm-float-icon:hover{background:#ffffff25}
.vm-float-avatar{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;font-size:13px;font-weight:700;color:#fff;background:#ffffff26;border:1px solid #ffffff70}
.vm-float-heading{min-width:0;flex:1}.vm-float-heading strong{display:block;font-size:15px}.vm-float-heading span{display:block;font-size:11px;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vm-float-options{display:flex;justify-content:space-between;gap:6px;align-items:center;padding:9px 13px;background:#f6f9fa;border-bottom:1px solid #edf0f2;font-size:11px;flex-shrink:0}
.vm-float-options label{display:flex;align-items:center;gap:5px;cursor:pointer;margin:0;white-space:nowrap}.vm-float-options input{accent-color:var(--chat-teal);margin:0;width:15px;height:15px}.vm-float-options span{color:#657a84;text-align:right}
.vm-float-info{margin:10px 12px 4px;padding:9px 11px;border:1px solid #f1d8ae;border-radius:8px;background:#fffbf2;color:#8c581b;font-size:12px;flex-shrink:0}
.vm-float-feedback{flex-shrink:0;max-height:100px;overflow:auto;margin:6px 12px;padding:9px 11px;border-radius:8px;background:#fff0ed;color:#a52e20;font-size:12px;overflow-wrap:anywhere}
.vm-float-list-pane{display:flex;flex-direction:column;flex:1;min-height:0}.vm-float-list{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:5px 8px;scrollbar-width:thin}
.vm-float-conversation{width:100%;display:flex;align-items:center;gap:10px;padding:13px 7px;border:0;border-bottom:1px solid #eef2f4;background:white;text-align:left;color:var(--chat-text);border-radius:7px}
.vm-float-conversation:hover{background:#f1f8f7}.vm-float-conversation .vm-float-avatar{background:#e7f2f1;color:var(--chat-teal);border:0}
.vm-float-conversation-copy{flex:1;min-width:0}.vm-float-conversation-copy strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.vm-float-conversation-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#647b85;margin-top:3px}
.vm-float-more,.vm-float-support{background:#fff;color:var(--chat-teal);border:0;border-top:1px solid #e6edef;padding:12px;text-align:center;min-height:46px;font-weight:600;flex-shrink:0}
.vm-float-support{background:#f1faf9}.vm-float-more:hover,.vm-float-support:hover{background:#e8f5f3}
.vm-float-empty{color:#82959e;text-align:center;padding:42px 22px;font-size:13px}
.vm-float-thread{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}
.vm-float-context{margin:5px 12px 0;color:#637d88;font-size:12px;flex-shrink:0;overflow-wrap:anywhere}.vm-float-context a{padding:0;display:inline;color:#136cc0;text-decoration:none}
.vm-float-history{flex:1;min-height:70px;overflow:auto;overscroll-behavior:contain;padding:14px 14px 18px;scrollbar-width:thin;background:#fff}
.vm-float-message{padding:0;border:0;border-radius:0;background:transparent;display:flex;flex-direction:column;align-items:flex-start;margin:0 0 15px;max-width:100%}.vm-float-message.is-mine{align-items:flex-end}
.vm-float-meta{font-size:10px;color:#789099;margin:0 3px 5px;display:flex;gap:8px}
.vm-float-bubble{max-width:88%;padding:10px 13px;border-radius:3px 14px 14px;border:1px solid #c4dfdc;background:#eaf4f3;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;color:#243c45;text-align:left}
.vm-float-message.is-mine .vm-float-bubble{background:#eaf0ff;border-color:#d2dfff;border-radius:14px 3px 14px 14px;color:#1d4279}
.vm-float-history .vm-float-older{display:block;width:auto;min-height:38px;margin:0 auto 18px;padding:6px 14px;border:1px solid #dbe5e8;border-radius:20px;background:white;color:#66808a;font-size:12px}
.vm-float-composer{padding:10px 12px max(10px,env(safe-area-inset-bottom));border-top:1px solid #e5ecef;background:#fff;flex-shrink:0;margin:0;max-height:55%;overflow:auto;overscroll-behavior:contain}
.vm-float-input-row{display:flex;align-items:flex-end;gap:8px}.vm-float-input-row textarea{flex:1;min-width:0;min-height:46px;max-height:100px;resize:none;border:1px solid #b5c8ce;border-radius:23px;padding:11px 15px;line-height:22px;background:#fff;color:var(--chat-text)}
.vm-float-input-row button{border:0;background:var(--chat-teal);color:white;border-radius:23px;min-width:62px;min-height:46px;padding:10px 13px;font-weight:600}
.vm-float-input-row button:disabled{opacity:.5;cursor:not-allowed}.vm-float-input-row textarea:disabled{background:#f4f6f7;color:#789099}
.vm-float-input-help{font-size:10px;display:flex;justify-content:space-between;gap:8px;padding-top:6px;color:#7f959f}
.vm-float-support-fields{padding-bottom:10px}.vm-float-support-fields label{font-size:12px;color:#516b78;display:block;margin-bottom:7px}.vm-float-support-fields input,.vm-float-support-fields select{width:100%;min-width:0;height:36px;border:1px solid #d1dfe4;border-radius:6px;padding:4px 8px;display:block;background:white;color:#243c45;margin-top:3px}
.vm-float-form-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.vm-float-form-row label{min-width:0;margin:0}
.vm-float-jump{position:absolute;bottom:120px;left:50%;transform:translateX(-50%);border:1px solid #d4e2e5;box-shadow:0 2px 10px #23404b15;border-radius:20px;padding:7px 14px;background:#fff;color:var(--chat-teal);white-space:nowrap;font-size:12px}
.vm-float-notice{position:fixed;right:24px;bottom:88px;width:300px;max-width:calc(100vw - 32px);border:1px solid #d9e5e7;background:white;border-radius:12px;box-shadow:0 7px 25px #29495c26;padding:14px;font-size:13px;z-index:2}
.vm-float-panel:not([hidden])~.vm-float-notice{bottom:auto}.vm-float-notice button{border:0;padding:6px 9px;min-height:38px;background:#eef8f7;border-radius:6px;color:var(--chat-teal);font-size:12px}.vm-float-notice strong{display:block;margin-bottom:7px;padding-right:28px}.vm-float-notice .vm-float-dismiss{float:right;background:transparent;font-size:20px;margin-top:-10px}.vm-float-notice p{margin:0 0 7px;font-size:12px;color:#647b85}
.vm-float.is-open .vm-float-notice{right:438px;bottom:88px}
.vm-float-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width:767px){
 .vm-float-launcher{right:14px;bottom:calc(82px + env(safe-area-inset-bottom));min-height:48px;font-size:13px;padding:10px 16px}
 .seller-area .vm-float-launcher{bottom:calc(20px + env(safe-area-inset-bottom))}
 .vm-float-panel,.vm-float-panel.is-expanded{top:var(--vm-chat-top,0px);right:0;bottom:auto;left:0;width:100%;height:var(--vm-chat-height,100dvh);max-height:none;border-radius:0;border:0}
 .vm-float-header{padding-top:calc(10px + env(safe-area-inset-top));min-height:68px}.vm-float-icon{width:44px;min-width:44px}
 .vm-float-expand{display:none}.vm-float-history{padding:16px}.vm-float-composer{padding-left:12px;padding-right:12px}.vm-float-input-row textarea{font-size:16px}
 .vm-float.is-open .vm-float-launcher{display:none}.vm-float.is-open .vm-float-notice{right:12px;left:12px;width:auto;bottom:auto;top:calc(var(--vm-chat-top,0px) + 110px)}
 .vm-float-notice{right:14px;bottom:calc(143px + env(safe-area-inset-bottom))}
 .vm-float-options{font-size:10px}.vm-float-info{font-size:11px}
 .vm-float-support-fields input,.vm-float-support-fields select{font-size:16px}
 body.vm-chat-mobile-open{overflow:hidden}
}
@media (max-height:480px){.vm-float-info{display:none}.vm-float-input-help{display:none}.vm-float-panel{height:calc(100dvh - 100px)}.vm-float-panel .vm-float-header{min-height:50px;padding-block:4px}.vm-float-composer{max-height:60%}}
@media (max-width:767px) and (max-height:480px){.vm-float-panel{height:var(--vm-chat-height,100dvh)}}
@media (prefers-reduced-motion:reduce){.vm-float *{scroll-behavior:auto!important}}

@media (min-width:768px) and (max-width:1020px){.vm-float.is-open .vm-float-notice{right:32px;bottom:auto;top:24px}}
