/* Shared public live chat: compact desktop panel, mobile bottom sheet. */
body #liveChatPanel{--chat-bg:#f6f3ff;--chat-surface:#fff;--chat-ink:#292046;--chat-muted:#756b8c;--chat-border:#ded3ff;position:fixed;z-index:1001;right:24px;bottom:94px;width:380px;max-width:calc(100vw - 32px);height:min(620px,calc(100dvh - 120px));min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--chat-border);border-radius:24px;background:var(--chat-surface);color:var(--chat-ink);box-shadow:0 18px 55px #34206735;font:14px/1.5 'DM Sans',sans-serif;text-align:left;padding:0;margin:0}
body #liveChatPanel[hidden],body #liveChatPanel [hidden]{display:none!important}
body #liveChatPanel *{box-sizing:border-box}
body #liveChatPanel button{font-family:inherit;cursor:pointer;text-transform:none;letter-spacing:normal}
body #liveChatPanel .chat-head{display:flex;align-items:center;flex:none;gap:12px;padding:14px 16px;background:linear-gradient(110deg,#7241ff,#a24bfa);color:white;border:0}
body #liveChatPanel .chat-avatar{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#ffc849,#ff922b);color:#3b2100;font-weight:800}
body #liveChatPanel .chat-head>div{min-width:0;flex:1}
body #liveChatPanel .chat-head strong{display:block;color:white;font:700 14px/1.5 Sora,sans-serif}
body #liveChatPanel .chat-head small{display:block;color:#f3eaff;font-size:12px;opacity:1}
body #liveChatPanel .chat-head small:before{display:none}
body #liveChatPanel #chatClose{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#ffffff2b;color:#fff;border:0;font-size:24px;padding:0;flex:none}
body #liveChatPanel .chat-tabs{display:flex;gap:16px;flex:none;padding:0 16px;background:var(--chat-surface);border-bottom:1px solid var(--chat-border)}
body #liveChatPanel .chat-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;color:var(--chat-muted);font-size:12px;padding:9px 0;min-height:36px;flex:none}
body #liveChatPanel .chat-tabs button[aria-selected=true]{border-color:#8842f5;color:var(--chat-ink);font-weight:700}
body #liveChatPanel #chatConversation{display:flex;flex-direction:column;flex:1;min-height:0;padding:0;overflow:hidden}
body #liveChatPanel .chat-messages{flex:1;min-height:80px;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--chat-bg);scrollbar-width:thin;scrollbar-color:#b8a6dc transparent}
body #liveChatPanel .chat-message{flex:none;align-self:flex-start;max-width:84%;padding:10px 14px;border:1px solid var(--chat-border);border-radius:17px 17px 17px 4px;background:var(--chat-surface);color:var(--chat-ink);box-shadow:none;font-size:14px;line-height:1.6;white-space:normal;overflow-wrap:anywhere;margin:0}
body #liveChatPanel .chat-message.buyer{align-self:flex-end;background:linear-gradient(120deg,#7842ff,#a34efa);border-color:transparent;border-radius:17px 17px 4px 17px;color:#fff}
body #liveChatPanel .chat-message>strong{display:none}
body #liveChatPanel .chat-message p{margin:0;color:inherit;font-size:14px;line-height:1.6;white-space:pre-wrap}
body #liveChatPanel .chat-message small{display:block;margin-top:3px;font-size:10px;color:var(--chat-muted)}
body #liveChatPanel .chat-message.buyer small{color:#eee2ff}
body #liveChatPanel .chat-attachment img{display:block;max-width:100%;max-height:200px;object-fit:contain;border-radius:8px}
body #liveChatPanel .chat-quick{display:flex;flex:none;flex-wrap:wrap;gap:6px;padding:10px 16px 0;background:var(--chat-surface)}
body #liveChatPanel .chat-quick button{padding:7px 12px;min-height:36px;border:1px solid var(--chat-border);border-radius:999px;font-size:12px;background:var(--chat-surface);color:var(--chat-ink);line-height:1.4;flex:none;white-space:nowrap}
body #liveChatPanel #chatForm{display:grid;flex:none;grid-template-columns:minmax(0,1fr) 46px;gap:7px 8px;align-items:stretch;margin:0;padding:10px 16px 0;background:var(--chat-surface)}
body #liveChatPanel #chatInput{grid-area:1/1;display:block;width:100%;min-width:0;min-height:46px;max-height:100px;height:46px;padding:11px 12px;margin:0;resize:vertical;border:1px solid var(--chat-border);border-radius:12px;background:var(--chat-bg);color:var(--chat-ink);font:16px/1.4 'DM Sans',sans-serif;box-shadow:none}
body #liveChatPanel #chatInput::placeholder{color:var(--chat-muted)}
body #liveChatPanel #chatSend{grid-area:1/2;display:grid;place-items:center;width:46px;min-height:46px;padding:0;border:0;border-radius:12px;background:linear-gradient(140deg,#ffca45,#ff922b);color:#432100;margin:0}
body #liveChatPanel #chatSend:disabled{opacity:.5;cursor:wait}
body #liveChatPanel .chat-upload{grid-column:1/-1;display:flex;align-items:center;gap:8px;min-width:0;color:var(--chat-muted);font-size:10px}
body #liveChatPanel .chat-file{display:flex;align-items:center;gap:3px;flex:none;margin:0;font-size:12px;cursor:pointer;color:var(--chat-ink);padding:3px 0}
body #liveChatPanel #chatFileName{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body #liveChatPanel .chat-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
body #liveChatPanel #chatStatus{flex:none;margin:0;padding:6px 16px 0;font-size:11px;line-height:1.5;color:var(--chat-ink);max-height:55px;overflow:auto}
body #liveChatPanel #chatStatus:empty{padding:0}
body #liveChatPanel .chat-footer{flex:none;padding:6px 16px 12px;background:var(--chat-surface);color:var(--chat-muted);font-size:11px}
body #liveChatPanel .chat-security{margin:0;color:var(--chat-muted);font-size:11px;line-height:1.6}
body #liveChatPanel a{color:#7042ce;text-decoration:underline}
body #liveChatPanel .chat-footer small,body #liveChatPanel summary{font-size:10px;color:var(--chat-muted);line-height:1.5}
body #liveChatPanel summary{cursor:pointer;margin-top:3px}
body #liveChatPanel #chatOrderHistory{flex:1;overflow:auto;min-height:0;padding:16px;background:var(--chat-bg)}
body #liveChatPanel .customer-order{padding:12px;margin-bottom:10px;border:1px solid var(--chat-border);border-radius:12px;background:var(--chat-surface);color:var(--chat-ink)}
body #liveChatPanel .customer-order p{font-size:13px;color:inherit;margin:6px 0}
body #liveChatPanel .chat-order-link{display:block;max-width:100%;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;font-size:11px;padding:6px;margin-top:8px;overflow-wrap:anywhere}
body #liveChatPanel .chat-older{border:0;color:var(--chat-ink);background:var(--chat-bg);font-size:12px;padding:8px}
body #liveChatPanel :focus-visible{outline:3px solid #d5a224;outline-offset:2px}
body #liveChatOpen{display:flex;align-items:center;justify-content:center;gap:9px;width:auto;min-height:52px;padding:14px 22px;border:0;border-radius:999px;background:linear-gradient(110deg,#7241ff,#a24bfa);box-shadow:0 8px 24px #753cf044;color:white;font:700 14px 'DM Sans',sans-serif}
body #liveChatOpen span{display:inline}
html[data-theme=dark] body #liveChatPanel{--chat-bg:#211a35;--chat-surface:#2c2343;--chat-ink:#f4efff;--chat-muted:#c2b6d8;--chat-border:#51416b}
html[data-theme=dark] body #liveChatPanel a{color:#ccb0ff}
@media(max-width:520px){body #liveChatPanel{right:0;bottom:0;width:100%;max-width:100%;height:min(82dvh,660px);border-radius:24px 24px 0 0;padding-bottom:env(safe-area-inset-bottom)}body #liveChatOpen{padding:13px 18px;min-height:48px}}

@media(prefers-color-scheme:dark){html:not([data-theme=light]) body #liveChatPanel{--chat-bg:#211a35;--chat-surface:#2c2343;--chat-ink:#f4efff;--chat-muted:#c2b6d8;--chat-border:#51416b}html:not([data-theme=light]) body #liveChatPanel a{color:#ccb0ff}}
body #liveChatPanel #chatSend{min-width:0;max-width:46px}
body #liveChatPanel .chat-footer details{border:0;padding:0;margin:0;background:none;border-radius:0;box-shadow:none}
body #liveChatPanel .chat-footer summary{padding:2px 0;border:0;min-height:0;background:none;font-weight:400}
