/* The chat stays quiet until a visitor chooses to open it. */
.bcp-chat{position:fixed;right:22px;bottom:22px;z-index:1050;font-family:inherit;color:var(--ink)}
.bcp-chat-launcher{display:flex;align-items:center;justify-content:center;gap:11px;min-height:57px;padding:13px 20px;border:0;border-radius:50px;color:#fff;background:var(--blue);box-shadow:0 7px 25px #1420392e;font-size:13px;font-weight:650;line-height:1.25;transition:background .18s ease,box-shadow .18s ease}
.bcp-chat-launcher:hover{background:var(--blue-hover);box-shadow:0 8px 27px #1420393b}
.bcp-chat-symbol{width:26px;height:26px;flex:none}
.bcp-chat-launcher::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:var(--pink);right:18px;top:8px}
.bcp-chat-panel{position:fixed;inset:auto 22px 22px auto;width:min(390px,calc(100vw - 30px));max-width:none;height:min(660px,calc(100dvh - 44px));max-height:calc(100dvh - 44px);margin:0;padding:0;border:1px solid #d8e2f5;border-radius:16px;overflow:hidden;background:#fff;color:var(--ink);box-shadow:0 16px 65px #14203935;overscroll-behavior:contain}
.bcp-chat-panel[open]{display:flex;flex-direction:column}
.bcp-chat-panel::backdrop{background:#14203912}
.bcp-chat-header{display:flex;gap:12px;align-items:center;flex:none;padding:19px 17px 18px;border-bottom:1px solid var(--line);background:linear-gradient(105deg,#fff,#f4f7ff)}
.bcp-chat-avatar{display:flex;align-items:center;justify-content:center;flex:none;letter-spacing:-.07em;width:43px;height:46px;border:1px solid #dae4fa;border-radius:9px;background:var(--pale-blue);font-size:24px;font-weight:700;color:var(--blue)}
.bcp-chat-avatar span{color:var(--pink)}
.bcp-chat-avatar.bcp-chat-avatar-photo{height:auto;aspect-ratio:3/4;overflow:hidden;background:transparent}.bcp-chat-avatar-photo img{display:block;width:100%;height:auto}
.bcp-chat-heading{min-width:0;flex:1}
.bcp-chat-heading h2{font-size:19px;line-height:1.25;letter-spacing:-.025em}
.bcp-chat-heading p{font-size:11px;line-height:1.5;margin-top:4px;color:var(--muted)}
.bcp-chat-heading[data-available="true"] p::before{content:"";display:inline-block;width:6px;height:6px;margin:0 5px 1px 0;border-radius:50%;background:#19764c}
.bcp-chat-close{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:7px;flex:none;background:transparent;color:var(--muted)}
.bcp-chat-close:hover{background:var(--pale-blue);color:var(--blue)}
.bcp-chat-close svg{width:22px;height:22px}
.bcp-chat-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:20px 19px 15px;scroll-padding-block:16px}
.bcp-chat-intro{font-size:13px;line-height:1.65;margin-bottom:19px;color:#44526b}
.bcp-chat-start form{display:flex;flex-direction:column;gap:14px}
.bcp-chat-field label{display:block;font-size:11px;font-weight:600;line-height:1.5;margin-bottom:5px;color:var(--ink)}
.bcp-chat-field-hint{font-size:11px;line-height:1.55;color:var(--muted);margin-top:6px}
.bcp-chat .bcp-chat-panel input,.bcp-chat .bcp-chat-panel textarea{font-family:inherit;font-size:16px;line-height:1.4;padding:10px 11px;border-radius:6px;background:#fcfdff}
.bcp-chat .bcp-chat-panel textarea{min-height:60px;max-height:180px;resize:vertical}
.bcp-chat-send{display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-radius:7px;min-height:47px;padding:12px 15px;background:var(--blue);color:#fff;font-size:12px;font-weight:650;line-height:1.4}
.bcp-chat-send:hover{background:var(--blue-hover)}
.bcp-chat-send:disabled{cursor:wait}
.bcp-chat-loading{font-size:13px;line-height:1.7}
.bcp-chat-feedback{font-size:12px;line-height:1.65;margin-top:12px;padding:11px 12px;border:1px solid #efd0d7;border-radius:7px;background:#fff6f8;color:#94263e;overflow-wrap:anywhere}
.bcp-chat-retry,.bcp-chat-reopen{min-height:42px;margin-top:9px;padding:9px 13px;border:1px solid #ccd9f6;border-radius:7px;background:var(--pale-blue);color:var(--blue);font-size:12px;font-weight:600}
.bcp-chat-retry:hover,.bcp-chat-reopen:hover{border-color:var(--blue)}
.bcp-chat-messages{display:flex;flex-direction:column;gap:15px;outline-offset:2px}
.bcp-chat-message{display:flex;flex-direction:column;align-items:flex-start;max-width:90%;align-self:flex-start;gap:4px}
.bcp-chat-message[data-author="visitor"]{align-self:flex-end;align-items:flex-end}
.bcp-chat-message-label{font-size:10px;font-weight:600;line-height:1.4;color:var(--muted)}
.bcp-chat-message-body{padding:10px 12px;border-radius:11px 11px 11px 3px;background:var(--surface);font-size:14px;line-height:1.65;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.bcp-chat-message[data-author="visitor"] .bcp-chat-message-body{border-radius:11px 11px 3px 11px;background:var(--pale-blue)}
.bcp-chat-message time{color:var(--muted);font-size:10px;line-height:1.4}
.bcp-chat-ended{border-top:1px solid var(--line);margin-top:19px;padding-top:14px}
.bcp-chat-ended p{font-size:12px;line-height:1.65}
.bcp-chat-compose{display:flex;gap:9px;align-items:flex-end;flex:none;padding:13px 17px;border-top:1px solid var(--line);background:#fff}
.bcp-chat .bcp-chat-compose textarea{flex:1;min-height:48px;max-height:100px}
.bcp-chat-send-reply{display:flex;align-items:center;justify-content:center;width:43px;height:46px;min-height:46px;padding:10px;flex:none}
.bcp-chat-send-reply svg{width:21px;height:21px}
.bcp-chat-footer{padding:12px 18px 13px;flex:none;border-top:1px solid var(--line);background:#fafbfe}
.bcp-chat-footer p{font-size:11px;line-height:1.55}
.bcp-chat-footer p+p{margin-top:5px}
.bcp-chat-footer a{color:var(--blue)}
.bcp-chat-footer .bcp-chat-privacy{font-size:10px;line-height:1.5}
/* Privacy choices sit above chat and cannot be blocked by the launcher. */
body:has(.consent-banner:not([hidden])) .bcp-chat{visibility:hidden}
body:has(.privacy-dialog[open]) .bcp-chat{visibility:hidden}
@media(max-width:600px){.bcp-chat{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.bcp-chat-launcher{width:57px;padding:14px}.bcp-chat-launcher-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.bcp-chat-launcher::after{right:10px;top:7px}.bcp-chat-panel{inset:auto 12px max(12px,env(safe-area-inset-bottom)) 12px;width:auto;height:min(660px,calc(100dvh - 24px - env(safe-area-inset-bottom)));max-height:calc(100dvh - 24px - env(safe-area-inset-bottom));border-radius:13px}.bcp-chat-header{padding:14px 15px}.bcp-chat-body{padding:17px 17px 14px}.bcp-chat-footer{padding:10px 16px 11px}.bcp-chat .bcp-chat-panel textarea{max-height:140px}.bcp-chat-compose{padding:11px 14px}}
@media(max-height:560px){.bcp-chat-panel{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);bottom:10px}.bcp-chat-header{padding-block:10px}.bcp-chat-avatar{width:35px;height:37px;font-size:21px}.bcp-chat-footer .bcp-chat-other-contact,.bcp-chat-footer .bcp-chat-privacy{display:none}.bcp-chat-footer{padding-block:8px}.bcp-chat-body{padding-block:13px}.bcp-chat-start form{gap:10px}.bcp-chat-intro{margin-bottom:12px}}

/* Exact visible bounds during a mobile keyboard transition; values come from VisualViewport. */
@media(max-width:600px){.bcp-chat-panel.bcp-chat-visual-viewport{top:var(--bcp-chat-visible-top);bottom:auto;height:min(660px,var(--bcp-chat-visible-height));max-height:var(--bcp-chat-visible-height)}.bcp-chat-panel.bcp-chat-compact .bcp-chat-header{padding-block:8px}.bcp-chat-panel.bcp-chat-compact .bcp-chat-avatar{width:32px;height:35px;font-size:20px}.bcp-chat-panel.bcp-chat-compact .bcp-chat-footer{display:none}.bcp-chat-panel.bcp-chat-compact .bcp-chat-body{padding-block:12px}.bcp-chat-panel.bcp-chat-compact .bcp-chat-compose{padding-block:8px}}
@media(max-width:600px){.bcp-chat-panel.bcp-chat-compact .bcp-chat-avatar.bcp-chat-avatar-photo{height:auto;aspect-ratio:3/4}}
@media(prefers-reduced-motion:reduce){.bcp-chat-launcher{transition:none}}
@media print{.bcp-chat{display:none!important}}
