.customer-chat{position:fixed;right:24px;bottom:24px;z-index:60;font-family:Sora,Arial,sans-serif;color:#104038}
.customer-chat [hidden]{display:none!important}
.chat-launcher{display:flex;align-items:center;gap:10px;border:1px solid #ffffff50;border-radius:30px;padding:15px 20px;background:#008c78;color:#fff;box-shadow:0 6px 24px #10403830;font:500 12px Sora,Arial,sans-serif;cursor:pointer;transition:background .2s,box-shadow .2s}
.chat-launcher:hover{background:#104038;box-shadow:0 8px 26px #10403840}
.chat-launcher svg{width:24px;height:24px;flex-shrink:0}
.chat-launcher{padding:15px}
.chat-launcher span{display:none}
.chat-panel{position:absolute;right:0;bottom:76px;width:390px;height:min(640px,calc(100dvh - 128px));max-height:calc(100dvh - 128px);display:flex;flex-direction:column;background:#fff;border:1px solid #dbe7e1;border-radius:16px;box-shadow:0 20px 65px #1040382e;overflow:hidden;animation:chat-open .25s ease-out}
.chat-header{display:flex;align-items:center;gap:12px;padding:19px 18px;background:#104038;color:#fff;flex-shrink:0}
.chat-avatar{width:39px;height:39px;border:1px solid #ffffff40;border-radius:12px;display:grid;place-items:center;font-size:23px;font-family:Georgia,serif;font-style:italic}
.site-body .chat-header h2{color:#fff;font-size:14px;font-weight:500;letter-spacing:-.02em;line-height:1.5;margin:0}
.site-body .chat-header p{font-size:10px;color:#c4e3d9;margin:3px 0 0;line-height:1.5}
.chat-close{margin-left:auto;border:0;background:transparent;color:#fff;width:34px;height:34px;font-size:27px;cursor:pointer;border-radius:6px}
.chat-close:hover{background:#ffffff15}
.chat-intro{font-size:10px;line-height:1.75;color:#52665f;padding:12px 18px;background:#f2f7f4;border-bottom:1px solid #e4ece7;flex-shrink:0}
.chat-messages{overflow-y:auto;overscroll-behavior:contain;padding:18px 16px 4px;flex:1;min-height:70px;scrollbar-width:thin}
.chat-message{max-width:94%;margin:0 auto 14px 0;padding:12px 13px;background:#f1f6f3;border-radius:2px 12px 12px;color:#333232;overflow-wrap:anywhere}
.chat-message-client{margin-left:auto;margin-right:0;background:#e0f3ec;border-radius:12px 2px 12px 12px}
.chat-message-label{display:block;color:#376758;font-size:9px;font-weight:600;margin-bottom:6px}
.site-body .chat-message p{font-size:12px;line-height:1.85;color:#333232;white-space:pre-line;margin:0}
.chat-message-links{display:flex;flex-direction:column;align-items:start;gap:8px;margin-top:12px}
.chat-message-links a{font-size:11px;line-height:1.6;color:#00735f;text-decoration:underline;text-underline-offset:3px}
.chat-message-links a:hover{color:#104038}
.chat-pending{padding:0 18px 9px;font-size:10px;color:#52665f}
.chat-suggestions{display:flex;flex-wrap:wrap;gap:7px;padding:9px 16px 13px;flex-shrink:0;max-height:115px;overflow-y:auto}
.chat-suggestions button{font:400 10px/1.6 Sora,Arial,sans-serif;border:1px solid #cce0d5;border-radius:16px;padding:6px 10px;color:#10604e;background:#fff;cursor:pointer;text-align:left}
.chat-suggestions button:hover{background:#edf6f1;border-color:#83baa5}
.chat-suggestions button:disabled{opacity:.6;cursor:wait}
.chat-form{display:flex;align-items:flex-end;gap:9px;padding:13px 15px;border-top:1px solid #e4ece7;background:#fff;flex-shrink:0}
.site-body .chat-form textarea{flex:1;min-width:0;min-height:43px;max-height:100px;resize:none;background:#f8faf9;border:1px solid #d9e5dd;border-radius:9px;padding:11px 12px;font:400 12px/1.6 Sora,Arial,sans-serif;margin:0;color:#333232}
.site-body .chat-form textarea::placeholder{color:#61766c}
.chat-form button{display:grid;place-items:center;width:43px;height:43px;flex-shrink:0;border:0;border-radius:9px;background:#008c78;color:#fff;cursor:pointer}
.chat-form button svg{width:21px;height:21px}
.chat-form button:disabled{opacity:.5;cursor:wait}
.chat-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 16px 12px;font-size:9px;line-height:1.5;color:#61766c;background:#fff;flex-shrink:0}
.chat-reset{font:inherit;color:#246c56;background:none;border:0;padding:2px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.chat-error{margin:0 15px 8px;padding:10px;background:#fff2ec;border-radius:6px;color:#803d24;font-size:11px;line-height:1.7;flex-shrink:0}
.customer-chat button:focus-visible,.customer-chat a:focus-visible,.customer-chat textarea:focus-visible,.chat-messages:focus-visible{outline:2px solid #008c78;outline-offset:3px}
.site-body.has-customer-chat .back-to-top{bottom:100px}
@keyframes chat-open{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:600px){.customer-chat{right:14px;bottom:16px}.chat-launcher{padding:14px}.chat-launcher span{display:none}.chat-panel{right:0;bottom:70px;width:min(390px,calc(100vw - 28px));height:min(600px,calc(100dvh - 110px));max-height:calc(100dvh - 110px);border-radius:13px}.site-body .chat-form textarea{font-size:16px}.chat-intro{font-size:10px}.site-body.has-customer-chat .back-to-top{bottom:90px}}
@media(prefers-reduced-motion:reduce){.chat-panel{animation:none}.chat-launcher{transition:none}}
