/* Loaded after the theme; no external chat service, fonts, cookies or images. */
body .dtx-whatsapp-float.dtx-wa-ready { isolation: isolate; overflow: visible; }
.dtx-whatsapp-float.dtx-wa-ready::before { content: ''; position: absolute; inset: -2px; border-radius: 50%; background: #25d366; z-index: -1; pointer-events: none; animation: dtx-wa-pulse 2.2s ease-out infinite; }
.dtx-whatsapp-float.dtx-wa-ready[aria-expanded="true"]::before { animation: none; opacity: 0; }
@keyframes dtx-wa-pulse { 0% { transform: scale(1); opacity: .3; } 75%, 100% { transform: scale(1.85); opacity: 0; } }
dialog.dtx-whatsapp-chat { position: fixed; inset: auto max(22px, env(safe-area-inset-right)) max(88px, calc(env(safe-area-inset-bottom) + 74px)) auto; margin: 0; padding: 0; width: min(360px, calc(100vw - 28px)); max-width: none; max-height: calc(100dvh - 112px); overflow: auto; border: 0; border-radius: 18px; background: #f8f7f4; color: #243c36; box-shadow: 0 12px 48px #062e2940; z-index: 100000; font: 16px/1.5 Arial, sans-serif; }
.dtx-whatsapp-chat:not([open]) { display: none; }
.dtx-whatsapp-chat *, .dtx-whatsapp-chat *::before { box-sizing: border-box; }
.dtx-wa-header { display: flex; align-items: center; gap: 12px; padding: 20px; background: #087b57; color: white; }
.dtx-wa-avatar { display: grid; place-items: center; flex: 0 0 46px; height: 46px; background: white; color: #073477; border-radius: 50%; font-size: 27px; font-weight: bold; }
.dtx-wa-header h2 { margin: 0; color: white; font: bold 21px/1.3 Arial, sans-serif; }
.dtx-wa-header p { margin: 3px 0 0; color: white; font-size: 13px; }
.dtx-wa-close { margin-left: auto; flex: 0 0 44px; height: 44px; padding: 0; border: 1px solid #ffffff80; border-radius: 50%; background: transparent; color: white; font: 30px/1 Arial, sans-serif; cursor: pointer; }
.dtx-wa-body { min-height: 180px; padding: 18px 22px 28px; background-color: #ece7df; background-image: radial-gradient(#cfc7bb70 1px, transparent 1px); background-size: 14px 14px; }
.dtx-wa-day { display: table; margin: 0 auto 18px; padding: 3px 12px; border-radius: 7px; background: #e1f2f4; color: #4b6467; font-size: 12px; }
.dtx-wa-message { position: relative; padding: 16px; border-radius: 0 12px 12px; background: white; box-shadow: 0 2px 4px #0000000c; }
.dtx-wa-message::before { content: ''; position: absolute; top: 0; left: -9px; border-top: 10px solid white; border-left: 10px solid transparent; }
.dtx-wa-message p { margin: 0; color: #34473f; font-size: 16px; line-height: 1.6; }
.dtx-wa-form { margin: 0; padding: 18px; }
.dtx-wa-form label { display: block; margin: 0 0 7px; font-size: 13px; font-weight: bold; }
.dtx-wa-compose { display: flex; gap: 8px; align-items: stretch; }
.dtx-wa-compose textarea { display: block; width: 100%; min-width: 0; min-height: 58px; max-height: 120px; resize: vertical; margin: 0; padding: 12px; border: 1px solid #b9c9c1; border-radius: 10px; background: white; color: #243c36; font: 16px/1.4 Arial, sans-serif; }
.dtx-wa-compose button { display: grid; place-items: center; flex: 0 0 48px; min-height: 48px; margin: 0; padding: 10px; border: 0; border-radius: 10px; background: #087b57; color: white; cursor: pointer; }
.dtx-wa-compose svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linejoin: round; }
.dtx-wa-note { margin: 10px 0 0; font-size: 12px; line-height: 1.4; color: #52645d; }
.dtx-whatsapp-chat button:hover { filter: brightness(.9); }
.dtx-whatsapp-chat :focus-visible { outline: 3px solid #073477; outline-offset: 3px; }
.dtx-wa-header button:focus-visible { outline-color: white; }
@media (max-width: 600px) { dialog.dtx-whatsapp-chat { right: max(14px, env(safe-area-inset-right)); bottom: max(84px, calc(env(safe-area-inset-bottom) + 70px)); max-height: calc(100dvh - 102px); } }
@media (prefers-reduced-motion: reduce) { .dtx-whatsapp-float.dtx-wa-ready::before { animation: none; opacity: 0; } }

.dtx-wa-avatar img { display: block; width: 34px; height: 34px; object-fit: contain; }
