/* Burbuja de WhatsApp con apariencia nativa. Colores oficiales de WhatsApp a propósito:
   la persona debe reconocer que va a entrar a WhatsApp. */
.rwa{position:fixed;right:18px;bottom:18px;z-index:2147483000;font-family:'Segoe UI',Helvetica,Arial,'Noto Sans',sans-serif;color:#111b21}
.rwa *{box-sizing:border-box}
.rwa-launch{display:flex;align-items:center;gap:8px;background:#25d366;color:#fff;border:0;border-radius:999px;padding:14px 20px 14px 16px;font:600 15px/1 'Segoe UI',Helvetica,Arial,sans-serif;cursor:pointer;box-shadow:0 6px 22px rgba(0,0,0,.28);transition:transform .2s,box-shadow .2s}
.rwa-launch:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.32)}
.rwa-launch svg{flex:none}
.rwa-hint{position:absolute;right:0;bottom:70px;background:#fff;color:#111b21;padding:10px 14px;border-radius:10px 10px 2px 10px;font-size:14px;box-shadow:0 4px 16px rgba(0,0,0,.2);white-space:nowrap}
.rwa-panel{position:absolute;right:0;bottom:70px;width:min(372px,calc(100vw - 28px));max-height:min(80vh,680px);display:flex;flex-direction:column;border-radius:12px;overflow:hidden;box-shadow:0 14px 48px rgba(0,0,0,.4);background:#efeae2}
.rwa-panel[hidden],.rwa-hint[hidden],.rwa-chip[hidden],.rwa-err[hidden]{display:none}
.rwa-head{display:flex;align-items:center;gap:12px;background:#075e54;color:#fff;padding:12px 14px}
.rwa-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;background:#182823;flex:none}
.rwa-who{display:grid;line-height:1.25;min-width:0;flex:1}
.rwa-who strong{font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rwa-who span{font-size:12.5px;opacity:.88;display:flex;align-items:center;gap:6px}
.rwa-dot{width:8px;height:8px;border-radius:50%;background:#25d366;display:inline-block;flex:none}
.rwa-x{background:none;border:0;color:#fff;font-size:26px;line-height:1;cursor:pointer;padding:2px 6px;border-radius:50%}
.rwa-x:hover{background:rgba(255,255,255,.14)}
.rwa-body{overflow:auto;padding:14px 12px 12px;background:#efeae2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Ccircle cx='8' cy='8' r='1.6' fill='%23d9d2c5'/%3E%3Ccircle cx='38' cy='34' r='1.6' fill='%23d9d2c5'/%3E%3C/svg%3E")}
.rwa-msg{position:relative;background:#fff;border-radius:0 10px 10px 10px;padding:9px 12px 20px;max-width:88%;font-size:14.5px;line-height:1.4;box-shadow:0 1px 1px rgba(11,20,26,.13);margin-bottom:12px}
.rwa-msg time{position:absolute;right:8px;bottom:4px;font-size:11px;color:#667781}
.rwa-form{display:grid;gap:9px}
.rwa-f{display:grid;gap:3px}
.rwa-f span{font-size:12px;color:#54656f;font-weight:600}
.rwa-f input,.rwa-f select,.rwa-f textarea{width:100%;background:#fff;border:1px solid #d1d7db;border-radius:8px;padding:9px 10px;font:inherit;font-size:14.5px;color:#111b21}
.rwa-f textarea{resize:vertical;min-height:54px}
.rwa-f input:focus,.rwa-f select:focus,.rwa-f textarea:focus{outline:2px solid #25d366;outline-offset:0;border-color:#25d366}
.rwa-f [aria-invalid=true]{border-color:#d93025;background:#fff6f5}
.rwa-chip{align-self:start;background:#d9fdd3;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:600;color:#0b3d1d;box-shadow:0 1px 1px rgba(11,20,26,.13)}
.rwa-hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.rwa-consent{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:#3b4a54;line-height:1.35}
.rwa-consent input{margin-top:2px}
.rwa-consent a{color:#027eb5}
.rwa-err{background:#fde7e5;color:#a1170c;border-radius:8px;padding:8px 10px;font-size:13px}
.rwa-send{display:flex;align-items:center;justify-content:center;gap:10px;background:#25d366;color:#fff;border:0;border-radius:10px;padding:13px 14px;font:700 15.5px/1.1 'Segoe UI',Helvetica,Arial,sans-serif;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.2)}
.rwa-send:hover{background:#1fba59}
.rwa-send:disabled{opacity:.7;cursor:progress}
.rwa-launch:focus-visible,.rwa-send:focus-visible,.rwa-x:focus-visible{outline:3px solid #075e54;outline-offset:2px}
@media (max-width:520px){
  .rwa{right:12px;bottom:12px}
  .rwa-label{display:none}
  .rwa-launch{padding:15px}
  .rwa-panel{position:fixed;left:8px;right:8px;bottom:8px;width:auto;max-height:86vh}
  .rwa-hint{display:none}
}
@media (prefers-reduced-motion:reduce){.rwa-launch{transition:none}}
