.g591cl-wrap{position:fixed;bottom:var(--g591cl-bottom,24px);z-index:99999;opacity:var(--g591cl-opacity,.95);transition:opacity .2s ease; -webkit-tap-highlight-color: transparent}
.g591cl-wrap.side-right{right:var(--g591cl-sideOffset,18px)}
.g591cl-wrap.side-left{left:var(--g591cl-sideOffset,18px)}
.g591cl-wrap:hover{opacity:1}

/* Stack vertical: badge arriba, icono abajo */
.g591cl-stack{display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.g591cl-wrap.side-left .g591cl-stack{align-items:flex-start}

/* Botón hit-area circular; transparente */
.g591cl-bubble-btn{background:transparent;border:none;outline:none;width:var(--g591cl-btnSize,56px);height:var(--g591cl-btnSize,56px);padding:0;display:inline-grid;place-items:center;border-radius:50%;cursor:pointer;box-shadow:none;appearance:none;touch-action:manipulation}
.g591cl-bubble-btn:focus{outline:none}
.g591cl-bubble-btn:active{transform:scale(.98)}

/* Icono (glyph o imagen) */
.g591cl-whats{display:block;width:100%;height:100%;color:var(--g591cl-iconColor,#25D366)}
.g591cl-whats svg{width:100%;height:100%;display:block;transform:scale(var(--g591cl-iconScale,1));transform-origin:center center;filter: drop-shadow(0 1px 1px rgba(0,0,0, .35))}
.g591cl-whats img{width:100%;height:100%;display:block;object-fit:var(--g591cl-imgFit,contain);filter: drop-shadow(0 1px 1px rgba(0,0,0,.35))}

/* CTA opcional */
.g591cl-cta{display:inline-block;white-space:nowrap;max-width:var(--g591cl-ctaMaxDesktop,260px);overflow:hidden;text-overflow:ellipsis;margin-left:10px}
@media (max-width:600px){.g591cl-cta{max-width:var(--g591cl-ctaMaxMobile,200px)}}

/* Badge de estado por encima del icono (fuera del botón) */
.g591cl-status-outer{font-size:11px;line-height:1;padding:6px 10px;border-radius:999px;background:#fff;color:#222;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.g591cl-status-outer.online{color:#0e7a3b}
.g591cl-status-outer.offline{color:#a33}
.g591cl-status-outer.dot{width:10px;height:10px;padding:0;border-radius:50%;background:#0e7a3b;color:transparent}
.g591cl-status-outer.dot.offline{background:#a33}
