.buyerChat { position:fixed; inset-inline-end:20px; bottom:20px; z-index:1400; max-width:90vw; text-align:start; font-size:16px; display:flex; flex-direction:column; align-items:stretch; }
.buyerChat [hidden] { display:none !important; }
body:has(.cCookieConsent) .buyerChat { visibility:hidden; }
.buyerChat #buyerChatOpen { display:flex; order:2; align-items:center; gap:8px; margin-inline-start:auto; min-height:44px; border-radius:24px; box-shadow:0 3px 16px #0003; }
.buyerChat #buyerChatPanel { width:500px; max-width:90vw; height:600px; max-height:90dvh; box-sizing:border-box; display:flex; flex-direction:column; overflow:hidden; border:0; border-radius:32px; box-shadow:0 0 24px #00000014; }
.buyerChat:has(#buyerChatPanel:not([hidden])) #buyerChatOpen { display:none; }
.buyerChatContent { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; }
.buyerChatOffer { padding:18px; line-height:1.5; overflow-wrap:anywhere; }
.buyerChatOffer h3 { margin-block:0 12px; color:inherit; }
.buyerChatOffer p { margin-block:0 16px; }
.buyerChatOffer .buyerChatActivate { min-height:44px; white-space:normal; }
#chat-box:has(#buyerChatTry) { container-type:inline-size; container-name:buyerChatAdmin; }
#chat-box:has(#buyerChatTry) .chatTitle { gap:6px; padding-inline:20px; }
#chat-box:has(#buyerChatTry) .chatTitle > p { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#buyerChatTry { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-width:44px; min-height:44px; margin:0; padding:0 10px; flex-shrink:0; border:1px solid #ddd; border-radius:12px; background:#f1f1f1; color:#222; font:inherit; font-size:12px; line-height:1.2; white-space:nowrap; cursor:pointer; }
#buyerChatTry:hover { background:#e5e5e5; }
#buyerChatTry:focus-visible { outline:3px solid currentColor; outline-offset:2px; }
@container buyerChatAdmin (max-width:300px) {
    #chatMode .chatTitle > p { display:none; }
    #chat-box:has(#buyerChatTry) .chatTitle { padding-inline:10px; justify-content:flex-end; }
    #chatMode .chatActionBar { gap:4px; }
}
#chat-box:not(.chatOpen) #buyerChatTry { visibility:hidden; }
.buyerChatPreviewActions { display:flex; flex-wrap:wrap; gap:8px; }
.buyerChatPreviewActions button { min-height:44px; }
.buyerChat #buyerChatOpen[hidden] { display:none; }
body.buyerChatPreviewActive #chat-box, body.buyerChatPreviewActive #chat-button { display:none !important; }
.buyerChat header { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:24px 20px; }
.buyerChat header h2 { margin:0 0 5px; padding:0; font-size:20px; font-weight:500; line-height:1.4; color:inherit; }
.buyerChat header span { font-size:.82em; }
.buyerChat header button { color:inherit; background:transparent; border:1px solid color-mix(in srgb, currentColor 30%, transparent); border-radius:12px; min-width:44px; min-height:44px; cursor:pointer; font-size:1.1em; }
.buyerChat #buyerChatBody { padding:20px; overflow-wrap:anywhere; }
.buyerChat #buyerChatBody h3 { font-size:1.12em; color:inherit; margin:0 0 12px; }
.buyerChat #buyerChatBody p { line-height:1.5; margin:0 0 16px; white-space:pre-line; }
.buyerChat .buyerChatChoices, .buyerChat .buyerChatOrderActions { display:grid; gap:9px; }
.buyerChat .buyerChatOrder { margin-bottom:18px; padding:14px; border:1px solid color-mix(in srgb, currentColor 24%, transparent); border-radius:10px; }
.buyerChat .buyerChatOrder h4 { margin:0 0 12px; font-size:1em; line-height:1.5; color:inherit; }
.buyerChat .buyerChatChoice { display:block; width:100%; box-sizing:border-box; text-align:start; white-space:normal; padding:12px 14px; font:inherit; min-height:44px; border-radius:8px; text-decoration:none; cursor:pointer; border:1px solid currentColor; background:var(--ColBgUtilityBtn); color:var(--ColTextUtilityBtn); }
.buyerChat .buyerChatChoice:hover { background:var(--ColBgClickableHover, var(--ColBgUtilityBtn)); color:var(--ColTextClickableHover, var(--ColTextUtilityBtn)); }
.buyerChat button:focus-visible, .buyerChat a:focus-visible, .buyerChat input:focus-visible, .buyerChat textarea:focus-visible, .buyerChat #buyerChatBody:focus-visible { outline:3px solid var(--ColTextHighlight); outline-offset:2px; }
.buyerChat footer { display:flex; justify-content:space-between; gap:10px; padding:18px 20px; border-top:1px solid color-mix(in srgb, currentColor 14%, transparent); }
.buyerChat footer button { min-height:44px; border-radius:10px; }
.buyerChat form { margin:0 0 16px; }
.buyerChat label { display:block; margin-bottom:6px; }
.buyerChat .buyerChatSearch { display:flex; gap:8px; }
.buyerChat .buyerChatPreview { padding:12px 18px; border-bottom:1px solid currentColor; overflow-wrap:anywhere; }
.buyerChat .buyerChatPreview p { margin-block:8px; font-size:.82em; }
.buyerChat #buyerChatBuyer { float:none; display:block; }
.buyerChat #buyerChatSearchHint { margin-block:12px 16px; }
.buyerChat #buyerChatManageFaq { display:block; box-sizing:border-box; margin-top:12px; min-height:44px; text-align:center; }
.buyerChat .ui-autocomplete { position:absolute; max-height:180px; overflow:auto; z-index:2; max-width:100%; box-sizing:border-box; }
.buyerChat .buyerChatTicketList { padding-inline-start:24px; }
.buyerChat .buyerChatTicketList li { margin-block:10px; line-height:1.5; }
.buyerChat .buyerChatQr { display:block; margin:12px auto; background:white; }
.buyerChat input { min-width:0; width:100%; box-sizing:border-box; font:inherit; min-height:44px; }
.buyerChat textarea { box-sizing:border-box; width:100%; min-height:130px; resize:vertical; font:inherit; }
.buyerChatEmailFallback { margin-top:18px; }
.buyerChatSr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.buyerFaqGrid td { overflow-wrap:anywhere; }
.buyerFaqSettings { border-block:1px solid color-mix(in srgb, currentColor 20%, transparent); padding-block:8px; }
.buyerFaqSettings summary { cursor:pointer; font-weight:600; padding-block:6px; }
#buyerFaqFilters .buyerFaqFilterFields { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); }
#buyerFaqFilters .buyerFaqFilterFields .filterCol { max-width:none; }
#buyerFaqFilters .buyerFaqFilterFields .select2-container { margin-block-end:5px; }
.buyerFaqFilterActions { display:flex; flex-wrap:wrap; gap:8px; margin-block-start:16px; }
.buyerFaqFilterActions .nsBtn { margin:0; }
@media(max-width:950px) {
    #buyerFaqFilters .buyerFaqFilterFields { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:480px) {
    .buyerChat #buyerChatBody { padding:16px; }
    #buyerFaqFilters .buyerFaqFilterFields { grid-template-columns:minmax(0,1fr); }
}
@media print { .buyerChat { display:none; } }
