#sgba-root{
  position:fixed;
  bottom:18px;
  z-index:999999;
  font-family:Arial,Helvetica,sans-serif;
  opacity:0;
  transform:translateY(10px);
  transition:opacity .22s ease,transform .22s ease;
}
#sgba-root.sgba-ready{opacity:1;transform:none}
#sgba-root.sgba-right{right:18px}
#sgba-root.sgba-left{left:18px}

#sgba-root .sgba-avatar-btn{
  position:relative;
  width:68px;
  height:68px;
  padding:0;
  border:2px solid #FBB03A;
  border-radius:50%;
  background:#0B0B0B;
  box-shadow:0 14px 38px rgba(0,0,0,.48);
  cursor:pointer;
  overflow:visible;
  display:flex;
  align-items:center;
  justify-content:center;
}
#sgba-root .sgba-avatar{
  width:62px;
  height:62px;
  border-radius:50%;
  object-fit:cover;
  display:block;
  background:#0B0B0B;
}
#sgba-root .sgba-pulse{
  position:absolute;
  right:-1px;
  bottom:1px;
  width:16px;
  height:16px;
  border-radius:50%;
  background:#FBB03A;
  border:3px solid #0B0B0B;
  box-shadow:0 0 0 0 rgba(251,176,58,.45);
  animation:sgbaPulse 2.2s infinite;
}
@keyframes sgbaPulse{
  0%{box-shadow:0 0 0 0 rgba(251,176,58,.45)}
  70%{box-shadow:0 0 0 10px rgba(251,176,58,0)}
  100%{box-shadow:0 0 0 0 rgba(251,176,58,0)}
}

#sgba-root .sgba-guide{
  position:absolute;
  bottom:82px;
  width:min(380px,calc(100vw - 36px));
  padding:18px 18px 16px;
  background:#0B0B0B;
  border:1px solid rgba(251,176,58,.48);
  border-radius:18px;
  box-shadow:0 20px 60px rgba(0,0,0,.54);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px) scale(.985);
  transition:.2s ease;
}
#sgba-root.sgba-right .sgba-guide{right:0}
#sgba-root.sgba-left .sgba-guide{left:0}
#sgba-root.sgba-open .sgba-guide{
  opacity:1;
  visibility:visible;
  transform:none;
}
#sgba-root.sgba-stage-change .sgba-guide{
  box-shadow:0 20px 65px rgba(0,0,0,.58),0 0 0 1px rgba(251,176,58,.18);
}

#sgba-root .sgba-close{
  position:absolute;
  top:8px;
  right:11px;
  border:0;
  background:transparent;
  color:#FFFFFF!important;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  padding:4px;
}
#sgba-root .sgba-guide-head{
  display:flex;
  align-items:center;
  gap:10px;
  padding-right:30px;
  margin-bottom:12px;
}
#sgba-root .sgba-avatar-mini{
  width:42px;
  height:42px;
  border-radius:50%;
  object-fit:cover;
  border:1px solid #FBB03A;
}
#sgba-root .sgba-guide-head strong{
  display:block;
  color:#FBB03A!important;
  font-size:15px!important;
  line-height:1.15!important;
  font-weight:900!important;
}
#sgba-root .sgba-guide-head small{
  display:block;
  margin-top:3px;
  color:#FFFFFF!important;
  font-size:11px!important;
  line-height:1.25!important;
  opacity:1!important;
}
#sgba-root .sgba-message{
  margin:0 0 13px!important;
  color:#FFFFFF!important;
  font-size:14px!important;
  line-height:1.52!important;
  font-weight:600!important;
}
#sgba-root .sgba-contact{
  display:inline-block;
  color:#FFFFFF!important;
  font-size:12px!important;
  line-height:1.35!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
  opacity:1!important;
}
#sgba-root .sgba-contact:hover{color:#FBB03A!important}

@media(max-width:600px){
  #sgba-root{bottom:14px}
  #sgba-root.sgba-right{right:14px}
  #sgba-root.sgba-left{left:14px}
  #sgba-root .sgba-avatar-btn{width:62px;height:62px}
  #sgba-root .sgba-avatar{width:56px;height:56px}
  #sgba-root .sgba-guide{bottom:74px;width:min(350px,calc(100vw - 28px))}
}

/* v1.1.1 — WhatsApp assistance without leaving the booking flow */
#sgba-root .sgba-whatsapp{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  margin-top:2px!important;
  padding:10px 13px!important;
  border:1px solid #FBB03A!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#FFFFFF!important;
  text-decoration:none!important;
  font-weight:800!important;
}
#sgba-root .sgba-whatsapp:hover{
  background:#FBB03A!important;
  color:#111111!important;
}


/* v1.2.2 — separazione visiva dalla chat del sito */
@media(min-width:601px){
  #sgba-root.sgba-right{right:96px!important;}
  #sgba-root.sgba-left{left:96px!important;}
}
@media(max-width:600px){
  #sgba-root.sgba-right{right:82px!important;}
  #sgba-root.sgba-left{left:82px!important;}
}

/* Quando una chat esterna è aperta l'assistente resta chiuso e discreto. */
#sgba-root.sgba-chat-open .sgba-guide{
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(8px) scale(.985)!important;
}


/* v1.2.5 — contact action is an internal chat button */
#sgba-root .sgba-contact{
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
  font-family:Arial,Helvetica,sans-serif!important;
}


/* v1.2.6 — pulsante chat: contrasto protetto da Divi/theme */
#sgba-root button.sgba-contact.sgba-open-chat,
#sgba-root .sgba-guide button.sgba-contact {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:44px!important;
  padding:10px 18px!important;
  border:1px solid #FBB03A!important;
  border-radius:999px!important;
  background:#0B0B0B!important;
  background-color:#0B0B0B!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.25!important;
  opacity:1!important;
  box-shadow:none!important;
}
#sgba-root button.sgba-contact.sgba-open-chat:hover,
#sgba-root button.sgba-contact.sgba-open-chat:focus {
  background:#FBB03A!important;
  background-color:#FBB03A!important;
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
  border-color:#FBB03A!important;
}


/* v1.3.1 — celebrazione ordine ricevuto */
#sgba-root.sgba-success .sgba-guide{
  border-color:#FBB03A!important;
  box-shadow:0 22px 70px rgba(0,0,0,.60),0 0 0 1px rgba(251,176,58,.26)!important;
  overflow:hidden!important;
}
#sgba-root.sgba-success .sgba-guide-head strong{
  color:#FBB03A!important;
}
#sgba-root.sgba-success .sgba-message{
  font-size:15px!important;
  line-height:1.58!important;
}
#sgba-root.sgba-success .sgba-message::first-line{
  font-weight:900!important;
}
#sgba-root .sgba-confetti{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;
  border-radius:18px;
}
#sgba-root .sgba-confetti span{
  position:absolute;
  font-size:18px;
  opacity:.95;
  animation:sgbaConfetti 2.4s ease-out both;
}
#sgba-root .sgba-confetti span:nth-child(1){left:10%;top:5%;animation-delay:.05s}
#sgba-root .sgba-confetti span:nth-child(2){left:34%;top:2%;animation-delay:.18s}
#sgba-root .sgba-confetti span:nth-child(3){right:28%;top:4%;animation-delay:.10s}
#sgba-root .sgba-confetti span:nth-child(4){right:10%;top:8%;animation-delay:.24s}
#sgba-root .sgba-confetti span:nth-child(5){left:62%;top:0%;animation-delay:.32s}

@keyframes sgbaConfetti{
  0%{transform:translateY(-18px) rotate(0deg) scale(.8);opacity:0}
  18%{opacity:1}
  100%{transform:translateY(85px) rotate(260deg) scale(1.05);opacity:0}
}


/* v1.3.2 — Gaudio Assistant separato verticalmente dal launcher chat */
@media(min-width:601px){
  #sgba-root{bottom:112px!important;}
  #sgba-root.sgba-right{right:22px!important;}
  #sgba-root.sgba-left{left:22px!important;}
}
@media(max-width:600px){
  #sgba-root{bottom:104px!important;}
  #sgba-root.sgba-right{right:16px!important;}
  #sgba-root.sgba-left{left:16px!important;}
}
