/* Shared WhatsApp mini-chatbot */
.whatsapp-support-widget { bottom: max(20px, env(safe-area-inset-bottom)); position: fixed; right: clamp(18px, 2.7vw, 34px); z-index: 1060; }
.whatsapp-support-toggle { align-items: center; background: #25D366; border: 0; border-radius: 50%; box-shadow: 0 12px 28px rgba(12, 77, 45, .28); color: #fff; cursor: pointer; display: flex; height: 58px; justify-content: center; margin-left: auto; padding: 0; transition: box-shadow .25s ease, transform .25s ease; width: 58px; }
.whatsapp-support-toggle:hover, .whatsapp-support-toggle:focus-visible { box-shadow: 0 16px 34px rgba(12, 77, 45, .36); color: #fff; outline: 0; transform: translateY(-3px) scale(1.04); }
.whatsapp-support-toggle svg { fill: currentColor; height: 29px; width: 29px; }
.whatsapp-support-panel { background: #fff; border-radius: 17px; bottom: 74px; box-shadow: 0 18px 52px rgba(8,42,47,.24); display: flex; flex-direction: column; max-height: min(590px, calc(100vh - 102px)); overflow: hidden; position: absolute; right: 0; transform: translateY(12px) scale(.97); transform-origin: bottom right; transition: opacity .22s ease, transform .22s ease, visibility .22s ease; visibility: hidden; width: min(380px, calc(100vw - 36px)); opacity: 0; }
.whatsapp-support-widget.is-open .whatsapp-support-panel { opacity: 1; transform: translateY(0) scale(1); visibility: visible; }
.whatsapp-support-header { align-items: flex-start; background: #25D366; color: #fff; display: flex; flex: 0 0 auto; gap: 12px; padding: 16px 16px 15px; }
.whatsapp-support-brand-icon { align-items: center; background: rgba(255,255,255,.18); border-radius: 50%; display: flex; flex: 0 0 38px; height: 38px; justify-content: center; }
.whatsapp-support-brand-icon svg { fill: #fff; height: 22px; width: 22px; }.whatsapp-support-header-copy { min-width: 0; padding-top: 1px; }.whatsapp-support-header-copy strong { display: block; font-family: "DM Sans", Arial, sans-serif; font-size: .95rem; font-weight: 700; line-height: 1.3; }.whatsapp-support-header-copy span { color: rgba(255,255,255,.86); display: block; font-size: .78rem; margin-top: 2px; }
.whatsapp-support-header-actions { display: flex; gap: 2px; margin: -3px -5px 0 auto; }.whatsapp-support-back, .whatsapp-support-close { align-items: center; background: transparent; border: 0; border-radius: 50%; color: #fff; cursor: pointer; display: flex; height: 32px; justify-content: center; padding: 0; transition: background-color .2s ease; width: 32px; }.whatsapp-support-back:hover, .whatsapp-support-close:hover { background: rgba(255,255,255,.18); }.whatsapp-support-back { font-size: 1.25rem; line-height: 1; }.whatsapp-support-close svg { fill: none; height: 19px; stroke: currentColor; stroke-linecap: round; stroke-width: 2; width: 19px; }
.whatsapp-support-chat { background: #f3f7f4; display: flex; flex: 1 1 auto; flex-direction: column; min-height: 0; }.whatsapp-support-messages { display: flex; flex: 1 1 auto; flex-direction: column; gap: 9px; min-height: 0; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; padding: 17px 15px 14px; scrollbar-color: rgba(8,42,47,.2) transparent; scrollbar-width: thin; }
.whatsapp-chat-bubble { box-shadow: 0 4px 12px rgba(8,42,47,.07); font-family: "DM Sans", Arial, sans-serif; font-size: .84rem; line-height: 1.58; margin: 0; max-width: 88%; padding: 11px 13px; white-space: pre-wrap; }.whatsapp-chat-bubble--bot { align-self: flex-start; background: #fff; border-radius: 4px 14px 14px; color: #46575b; }.whatsapp-chat-bubble--visitor { align-self: flex-end; background: #d8f8e5; border-radius: 14px 4px 14px 14px; color: #184d2e; }
.whatsapp-quick-replies { display: grid; gap: 7px; grid-template-columns: 1fr 1fr; margin-top: 2px; }.whatsapp-quick-reply { background: #fff; border: 1px solid #d7e5db; border-radius: 9px; color: #164d2e; cursor: pointer; font-family: "DM Sans", Arial, sans-serif; font-size: .75rem; font-weight: 700; line-height: 1.3; min-height: 43px; padding: 8px 9px; text-align: left; transition: background-color .18s ease, border-color .18s ease, transform .18s ease; }.whatsapp-quick-reply:hover { background: #ebfff2; border-color: #25D366; transform: translateY(-1px); }
.whatsapp-chat-typing { align-items: center; align-self: flex-start; background: #fff; border-radius: 4px 14px 14px; box-shadow: 0 4px 12px rgba(8,42,47,.07); display: flex; gap: 4px; height: 35px; padding: 0 13px; }.whatsapp-chat-typing span { animation: whatsapp-chat-bounce 1s infinite ease-in-out; background: #7c8e84; border-radius: 50%; height: 5px; width: 5px; }.whatsapp-chat-typing span:nth-child(2) { animation-delay: .15s; }.whatsapp-chat-typing span:nth-child(3) { animation-delay: .3s; }@keyframes whatsapp-chat-bounce { 0%, 60%, 100% { opacity: .4; transform: translateY(0); } 30% { opacity: 1; transform: translateY(-3px); } }
.whatsapp-confirmation-actions { display: grid; gap: 8px; margin-top: 2px; }.whatsapp-continue, .whatsapp-edit, .whatsapp-restart { align-items: center; border-radius: 8px; font-family: "DM Sans", Arial, sans-serif; font-size: .78rem; font-weight: 700; justify-content: center; min-height: 43px; padding: 10px 12px; text-align: center; transition: background-color .18s ease, box-shadow .18s ease, transform .18s ease; width: 100%; }.whatsapp-continue { background: #25D366; box-shadow: 0 7px 15px rgba(37,211,102,.2); color: #fff; display: flex; }.whatsapp-continue:hover { background: #1ebc59; box-shadow: 0 9px 18px rgba(37,211,102,.3); color: #fff; transform: translateY(-1px); }.whatsapp-edit, .whatsapp-restart { background: #fff; border: 1px solid #cbdad0; color: #285a3c; cursor: pointer; display: flex; }.whatsapp-edit:hover, .whatsapp-restart:hover { background: #effaf2; border-color: #78c999; }.whatsapp-restart { font-size: .72rem; min-height: 35px; padding: 7px 10px; }
.whatsapp-support-composer { align-items: flex-end; background: #fff; border-top: 1px solid #e2ebe5; display: flex; flex: 0 0 auto; gap: 8px; padding: 10px 11px; }.whatsapp-support-composer textarea { background: #f5f8f6; border: 1px solid transparent; border-radius: 8px; color: #234138; flex: 1; font-family: "DM Sans", Arial, sans-serif; font-size: .84rem; line-height: 1.45; max-height: 108px; min-height: 38px; outline: 0; overflow-y: auto; padding: 9px 10px; resize: none; transition: border-color .18s ease, box-shadow .18s ease; }.whatsapp-support-composer textarea::placeholder { color: #819188; }.whatsapp-support-composer textarea:focus { background: #fff; border-color: #25D366; box-shadow: 0 0 0 3px rgba(37,211,102,.16); }.whatsapp-support-composer textarea:disabled { background: #f4f5f3; color: #a4aca6; cursor: not-allowed; }
.whatsapp-support-send { align-items: center; background: #25D366; border: 0; border-radius: 8px; color: #fff; cursor: pointer; display: flex; flex: 0 0 39px; height: 39px; justify-content: center; padding: 0; transition: background-color .18s ease, transform .18s ease; width: 39px; }.whatsapp-support-send:hover:not(:disabled) { background: #1ebc59; transform: translateY(-1px); }.whatsapp-support-send:disabled { background: #c9d4cc; cursor: not-allowed; }.whatsapp-support-send svg { fill: none; height: 19px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; width: 19px; }
.whatsapp-support-toggle:focus-visible, .whatsapp-support-close:focus-visible, .whatsapp-support-back:focus-visible, .whatsapp-quick-reply:focus-visible, .whatsapp-support-send:focus-visible, .whatsapp-edit:focus-visible, .whatsapp-restart:focus-visible, .whatsapp-continue:focus-visible { outline: 3px solid rgba(181,137,63,.72); outline-offset: 3px; }.whatsapp-support-sr-only { height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; clip: rect(0, 0, 0, 0); white-space: nowrap; }
@media (max-width: 575.98px) { .whatsapp-support-widget { bottom: max(15px, env(safe-area-inset-bottom)); right: 15px; }.whatsapp-support-toggle { height: 54px; width: 54px; }.whatsapp-support-panel { bottom: 67px; max-height: min(575px, calc(100dvh - 88px)); width: min(380px, calc(100vw - 30px)); }.whatsapp-support-messages { padding: 14px 12px 12px; }.whatsapp-chat-bubble { font-size: .82rem; max-width: 91%; }.whatsapp-quick-reply { font-size: .71rem; min-height: 41px; padding: 7px; }.whatsapp-support-composer { padding: 9px; } }
@media (prefers-reduced-motion: reduce) { .whatsapp-support-toggle, .whatsapp-support-panel, .whatsapp-quick-reply, .whatsapp-continue, .whatsapp-edit, .whatsapp-restart, .whatsapp-support-send, .whatsapp-chat-typing span { animation: none; transition: none; } }
