.ezsc-launcher{position:fixed;bottom:var(--ezsc-bottom-desktop);z-index:var(--ezsc-z);display:flex;flex-direction:column-reverse;align-items:flex-end;gap:var(--ezsc-gap);font-family:inherit;line-height:1}.ezsc-pos-right{right:var(--ezsc-side)}.ezsc-pos-left{left:var(--ezsc-side);align-items:flex-start}.ezsc-main,.ezsc-item{width:auto;min-width:var(--ezsc-button-size-desktop);height:var(--ezsc-button-size-desktop);border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;box-shadow:0 8px 25px rgba(0,0,0,.18);text-decoration:none!important;cursor:pointer;transition:transform .18s ease,opacity .18s ease,box-shadow .18s ease}.ezsc-main{background:var(--ezsc-main-bg);color:var(--ezsc-main-color);font-weight:700}.ezsc-main-icon{font-weight:800}.ezsc-items{display:flex;flex-direction:column;gap:var(--ezsc-gap);align-items:flex-end}.ezsc-pos-left .ezsc-items{align-items:flex-start}.ezsc-item{color:#fff!important;font-weight:700}.ezsc-icon-img{width:var(--ezsc-icon-size-desktop)!important;height:var(--ezsc-icon-size-desktop)!important;min-width:var(--ezsc-icon-size-desktop)!important;min-height:var(--ezsc-icon-size-desktop)!important;max-width:var(--ezsc-icon-size-desktop)!important;max-height:var(--ezsc-icon-size-desktop)!important;display:block!important;object-fit:contain!important;flex:0 0 auto!important;opacity:1!important;visibility:visible!important}.ezsc-whatsapp{background:var(--ezsc-wa-bg)}.ezsc-messenger{background:var(--ezsc-ms-bg)}.ezsc-call{background:var(--ezsc-call-bg)}.ezsc-main:hover,.ezsc-item:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.24);opacity:.96}.ezsc-desktop-hover .ezsc-items{opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;transition:opacity .18s ease,visibility .18s ease,transform .18s ease}.ezsc-desktop-hover:hover .ezsc-items,.ezsc-desktop-hover.ezsc-open .ezsc-items{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.ezsc-labels-desktop-no .ezsc-item .ezsc-label{display:none}.ezsc-labels-desktop-no .ezsc-item{padding:0;width:var(--ezsc-button-size-desktop);min-width:var(--ezsc-button-size-desktop)}@media(max-width:767px){.ezsc-launcher{bottom:var(--ezsc-bottom-mobile)}.ezsc-main,.ezsc-item{min-width:var(--ezsc-button-size-mobile);height:var(--ezsc-button-size-mobile);padding:0 12px}.ezsc-icon-img{width:var(--ezsc-icon-size-mobile)!important;height:var(--ezsc-icon-size-mobile)!important;min-width:var(--ezsc-icon-size-mobile)!important;min-height:var(--ezsc-icon-size-mobile)!important;max-width:var(--ezsc-icon-size-mobile)!important;max-height:var(--ezsc-icon-size-mobile)!important}.ezsc-mobile-hover .ezsc-items{opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;transition:opacity .18s ease,visibility .18s ease,transform .18s ease}.ezsc-mobile-hover.ezsc-open .ezsc-items{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.ezsc-labels-mobile-no .ezsc-label{display:none}.ezsc-labels-mobile-no .ezsc-main,.ezsc-labels-mobile-no .ezsc-item{padding:0;width:var(--ezsc-button-size-mobile);min-width:var(--ezsc-button-size-mobile)}}
.ezsc-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,12px);background:#111827;color:#fff;padding:10px 14px;border-radius:10px;font-size:13px;line-height:1.35;z-index:calc(var(--ezsc-z) + 5);opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;box-shadow:0 10px 30px rgba(0,0,0,.22);max-width:88vw;text-align:center}.ezsc-toast-show{opacity:1;transform:translate(-50%,0)}

/* v1.3.2: Mobile behavior fix. Desktop hover must not force mobile expanded mode closed. */
@media(max-width:767px){
  .ezsc-launcher.ezsc-mobile-expanded .ezsc-items{
    opacity:1!important;
    visibility:visible!important;
    transform:translateY(0)!important;
    pointer-events:auto!important;
  }
  .ezsc-launcher.ezsc-mobile-hover:not(.ezsc-open) .ezsc-items{
    opacity:0!important;
    visibility:hidden!important;
    transform:translateY(8px)!important;
    pointer-events:none!important;
  }
  .ezsc-launcher.ezsc-mobile-hover.ezsc-open .ezsc-items{
    opacity:1!important;
    visibility:visible!important;
    transform:translateY(0)!important;
    pointer-events:auto!important;
  }
}


/* v1.3.4: Separate customization for the floating Need Help toggle button only. */
.ezsc-main{
  width:var(--ezsc-main-width-desktop)!important;
  min-width:var(--ezsc-main-width-desktop)!important;
  height:var(--ezsc-main-height-desktop)!important;
  padding:var(--ezsc-main-padding-y) var(--ezsc-main-padding-x)!important;
  border-radius:var(--ezsc-main-radius)!important;
  font-size:var(--ezsc-main-font-size)!important;
  font-weight:var(--ezsc-main-font-weight)!important;
  gap:var(--ezsc-main-icon-gap)!important;
  box-sizing:border-box!important;
}
@media(max-width:767px){
  .ezsc-main{
    width:var(--ezsc-main-width-mobile)!important;
    min-width:var(--ezsc-main-width-mobile)!important;
    height:var(--ezsc-main-height-mobile)!important;
  }
}


/* v1.3.5: Global main button color + hover color controls. */
.ezsc-launcher .ezsc-main,
.ezsc-launcher .ezsc-main:visited,
.ezsc-launcher .ezsc-main:focus{
  background:var(--ezsc-main-bg)!important;
  color:var(--ezsc-main-color)!important;
}
.ezsc-launcher .ezsc-main:hover{
  background:var(--ezsc-main-hover-bg)!important;
  color:var(--ezsc-main-hover-color)!important;
}
.ezsc-launcher .ezsc-main .ezsc-label,
.ezsc-launcher .ezsc-main .ezsc-main-icon{
  color:inherit!important;
}


/* v1.3.7: Hover tooltip labels for contact channel icons. */
.ezsc-item[data-ezsc-tooltip]{position:relative!important;overflow:visible!important;}
.ezsc-item[data-ezsc-tooltip]::before{
  content:attr(data-ezsc-tooltip);
  position:absolute;
  top:50%;
  right:calc(100% + 10px);
  transform:translateY(-50%) translateX(4px);
  background:#111827;
  color:#ffffff;
  font-size:12px;
  font-weight:600;
  line-height:1.2;
  white-space:nowrap;
  padding:7px 9px;
  border-radius:8px;
  box-shadow:0 8px 20px rgba(0,0,0,.18);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
  z-index:calc(var(--ezsc-z) + 2);
}
.ezsc-item[data-ezsc-tooltip]::after{
  content:"";
  position:absolute;
  top:50%;
  right:calc(100% + 4px);
  transform:translateY(-50%);
  border-width:6px 0 6px 6px;
  border-style:solid;
  border-color:transparent transparent transparent #111827;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s ease,visibility .16s ease;
  z-index:calc(var(--ezsc-z) + 2);
}
.ezsc-pos-left .ezsc-item[data-ezsc-tooltip]::before{
  left:calc(100% + 10px);
  right:auto;
  transform:translateY(-50%) translateX(-4px);
}
.ezsc-pos-left .ezsc-item[data-ezsc-tooltip]::after{
  left:calc(100% + 4px);
  right:auto;
  border-width:6px 6px 6px 0;
  border-color:transparent #111827 transparent transparent;
}
.ezsc-item[data-ezsc-tooltip]:hover::before,
.ezsc-item[data-ezsc-tooltip]:focus::before{
  opacity:1;
  visibility:visible;
  transform:translateY(-50%) translateX(0);
}
.ezsc-item[data-ezsc-tooltip]:hover::after,
.ezsc-item[data-ezsc-tooltip]:focus::after{
  opacity:1;
  visibility:visible;
}
@media(max-width:767px){
  .ezsc-item[data-ezsc-tooltip]::before,
  .ezsc-item[data-ezsc-tooltip]::after{display:none!important;}
}



/* v1.4.0: Working lightweight animation for the main Need Help button.
   Controlled by admin settings: animation_enabled, animation_type, animation_interval. */
.ezsc-launcher.ezsc-animation-pulse .ezsc-main{
  animation:ezsc-main-premium-pulse var(--ezsc-animation-interval,7s) ease-out infinite!important;
  will-change:transform,box-shadow;
}
.ezsc-launcher.ezsc-animation-soft-bounce .ezsc-main{
  animation:ezsc-main-soft-bounce var(--ezsc-animation-interval,7s) ease-out infinite!important;
  will-change:transform;
}
@keyframes ezsc-main-premium-pulse{
  0%,72%,100%{transform:scale(1);box-shadow:0 8px 24px rgba(0,0,0,.18)}
  78%{transform:scale(1.035);box-shadow:0 8px 24px rgba(0,0,0,.18),0 0 0 10px rgba(24,119,242,.28)}
  86%{transform:scale(1);box-shadow:0 8px 24px rgba(0,0,0,.18),0 0 0 18px rgba(24,119,242,0)}
}
@keyframes ezsc-main-soft-bounce{
  0%,76%,100%{transform:translateY(0)}
  80%{transform:translateY(-4px)}
  84%{transform:translateY(0)}
  88%{transform:translateY(-2px)}
  92%{transform:translateY(0)}
}
.ezsc-launcher.ezsc-animation-pulse .ezsc-main:hover,
.ezsc-launcher.ezsc-animation-soft-bounce .ezsc-main:hover{
  animation-play-state:paused;
}
@media(prefers-reduced-motion:reduce){
  .ezsc-launcher.ezsc-animation-pulse .ezsc-main,
  .ezsc-launcher.ezsc-animation-soft-bounce .ezsc-main{animation:none!important;will-change:auto!important;}
}
