.bb-chat-trigger{
  position:fixed;
  right:24px;
  bottom:20px;
  z-index:70;
  width:56px;
  height:56px;
  border:0;
  padding:0;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  background:#25d366;
  box-shadow:0 12px 30px rgba(7,106,94,.34);
  cursor:pointer;
  font:inherit;
  transition:opacity .15s ease,transform .15s ease;
  animation:bb-chat-pulse 2.4s ease-in-out infinite;
}
.bb-chat-trigger svg{width:32px;height:32px}
.bb-chat-trigger:hover,.bb-chat-trigger:focus-visible{transform:translateY(-2px) scale(1.04)}
.bb-chat-trigger[aria-expanded="true"]{
  opacity:0;
  pointer-events:none;
  visibility:hidden;
  transform:scale(.88);
}
.bb-chat{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:80;
  width:min(360px,calc(100vw - 28px));
  height:min(520px,calc(100dvh - 36px));
  color:#1c2730;
  background:#f1ede7;
  border-radius:24px;
  box-shadow:0 24px 60px rgba(7,70,63,.3);
  overflow:hidden;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  font-family:Montserrat,system-ui,sans-serif;
  animation:bb-chat-in .2s ease-out;
}
.bb-chat[hidden]{display:none!important}
.bb-chat__header{
  min-height:64px;
  padding:11px 13px;
  display:grid;
  grid-template-columns:44px 1fr 34px;
  gap:10px;
  align-items:center;
  color:#fff;
  background:#076a5e;
}
.bb-chat__avatar{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#25d366;
}
.bb-chat__avatar svg{width:24px;height:24px}
.bb-chat__identity h2{
  margin:0;
  color:#fff;
  font-size:.9rem;
  line-height:1.2;
  font-weight:800;
}
.bb-chat__identity p{
  margin:3px 0 0;
  display:flex;
  gap:6px;
  align-items:center;
  color:rgba(255,255,255,.9);
  font-size:.74rem;
  line-height:1;
}
.bb-chat__identity p span{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#25d366;
  box-shadow:0 0 0 2px rgba(37,211,102,.14);
}
.bb-chat__close{
  width:34px;
  height:34px;
  padding:0;
  border:0;
  border-radius:50%;
  color:#eaf8f5;
  background:transparent;
  font:700 1.45rem/1 Montserrat,system-ui,sans-serif;
  cursor:pointer;
}
.bb-chat__close:hover,.bb-chat__close:focus-visible{background:rgba(255,255,255,.12)}
.bb-chat__messages{
  min-height:0;
  overflow-y:auto;
  padding:16px 12px 12px;
  scrollbar-width:thin;
  scrollbar-color:#8c8c8c transparent;
  overscroll-behavior:contain;
}
.bb-chat__conversation{display:flex;flex-direction:column;gap:10px}
.bb-chat__privacy{
  max-width:90%;
  padding:8px 10px;
  border-left:3px solid #00bcbd;
  color:#6b6670;
  background:rgba(255,255,255,.55);
  font-size:.65rem;
  line-height:1.4;
}
.bb-chat__bubble{
  width:fit-content;
  max-width:86%;
  padding:10px 12px;
  border-radius:12px;
  font-size:.84rem;
  line-height:1.45;
  box-shadow:0 1px 3px rgba(31,26,22,.16);
  overflow-wrap:anywhere;
}
.bb-chat__bubble--agent{align-self:flex-start;background:#fff;border-bottom-left-radius:5px}
.bb-chat__bubble--visitor{align-self:flex-end;background:#dff8dc;border-bottom-right-radius:5px}
.bb-chat__bubble strong{font-weight:900}
.bb-chat__choices{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:12px;
}
.bb-chat__choices[hidden]{display:none!important}
.bb-chat__choices button{
  min-width:66px;
  padding:10px 20px;
  border:1.5px solid #076a5e;
  border-radius:99px;
  color:#076a5e;
  background:#fff;
  font:700 .85rem Montserrat,system-ui,sans-serif;
  cursor:pointer;
}
.bb-chat__choices button:hover,.bb-chat__choices button:focus-visible{color:#fff;background:#076a5e}
.bb-chat__final{
  display:grid;
  justify-items:center;
  gap:9px;
  padding:16px 4px 4px;
}
.bb-chat__final[hidden]{display:none!important}
.bb-chat__whatsapp{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:11px 22px;
  border-radius:99px;
  color:#fff;
  background:#25b95e;
  box-shadow:0 8px 18px rgba(18,140,74,.25);
  font-size:.86rem;
  font-weight:800;
}
.bb-chat__whatsapp:hover{transform:translateY(-1px)}
.bb-chat__whatsapp svg{width:19px;height:19px}
.bb-chat__final p{max-width:290px;color:#665f58;font-size:.67rem;line-height:1.35;text-align:center}
.bb-chat__composer{
  margin:0;
  padding:10px 12px 12px;
  border-radius:0;
  background:#f1ede7;
  box-shadow:none;
  display:grid;
  grid-template-columns:minmax(0,1fr) 42px;
  gap:8px;
  align-items:center;
}
.bb-chat__composer[hidden]{display:none!important}
.bb-chat__composer input{
  min-width:0;
  height:44px;
  padding:0 15px;
  border:1px solid transparent;
  border-radius:99px;
  outline:0;
  color:#1c2730;
  background:#fff;
  font:500 .84rem Montserrat,system-ui,sans-serif;
}
.bb-chat__composer input:focus{border-color:#00bcbd;box-shadow:0 0 0 3px rgba(0,188,189,.14)}
.bb-chat__composer>button{
  width:42px;
  height:42px;
  padding:0;
  border:0;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  background:#25d366;
  cursor:pointer;
}
.bb-chat__composer>button:hover,.bb-chat__composer>button:focus-visible{background:#18b955}
.bb-chat__composer>button svg{width:23px;height:23px}
.bb-chat__error{
  grid-column:1/-1;
  margin:0;
  padding:0 8px;
  color:#9b2031;
  font-size:.7rem;
  font-weight:700;
}
.bb-chat__error[hidden]{display:none!important}
.bb-chat__sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
@keyframes bb-chat-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@keyframes bb-chat-pulse{0%,100%{box-shadow:0 12px 30px rgba(7,106,94,.34),0 0 0 0 rgba(37,211,102,.28)}50%{box-shadow:0 12px 30px rgba(7,106,94,.34),0 0 0 10px rgba(37,211,102,0)}}
@media (max-width:480px){
  .bb-chat{left:10px;right:10px;bottom:10px;width:auto;height:min(540px,calc(100dvh - 20px))}
  .bb-chat-trigger{right:16px;bottom:16px}
}
@media (prefers-reduced-motion:reduce){
  .bb-chat,.bb-chat-trigger{animation:none;transition:none}
  .bb-chat__whatsapp:hover{transform:none}
}
