#alc-bubble{
  position:fixed;bottom:22px;right:22px;z-index:999999;
  width:58px;height:58px;border-radius:50%;
  background:var(--alc-accent,#0d7a6e);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.22);
  transition:transform .15s ease;
}
#alc-bubble:hover{transform:scale(1.06);}
#alc-bubble svg{width:26px;height:26px;fill:#fff;}
#alc-bubble.alc-hidden{display:none;}

#alc-panel{
  position:fixed;bottom:92px;right:22px;z-index:999999;
  width:340px;max-width:calc(100vw - 32px);
  height:480px;max-height:calc(100vh - 140px);
  background:#fff;border-radius:16px;
  box-shadow:0 12px 40px rgba(0,0,0,.25);
  display:none;flex-direction:column;overflow:hidden;
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
#alc-panel.alc-open{display:flex;}

#alc-header{
  background:var(--alc-accent,#0d7a6e);color:#fff;
  padding:16px 18px;display:flex;justify-content:space-between;align-items:center;
}
#alc-header .alc-title{font-size:14.5px;font-weight:600;}
#alc-header .alc-sub{font-size:11.5px;opacity:.85;margin-top:2px;}
#alc-close{cursor:pointer;font-size:20px;line-height:1;background:none;border:none;color:#fff;opacity:.85;}
#alc-close:hover{opacity:1;}

#alc-messages{
  flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;
  background:#faf9f6;
}
.alc-msg{max-width:80%;padding:9px 13px;border-radius:14px;font-size:13.5px;line-height:1.4;word-wrap:break-word;}
.alc-msg.alc-bot{align-self:flex-start;background:#eef0ee;color:#132521;border-bottom-left-radius:4px;}
.alc-msg.alc-agent{align-self:flex-start;background:#fbf3e3;color:#132521;border-bottom-left-radius:4px;}
.alc-msg.alc-me{align-self:flex-end;background:var(--alc-accent,#0d7a6e);color:#fff;border-bottom-right-radius:4px;}
.alc-typing{align-self:flex-start;display:flex;gap:4px;padding:10px 13px;}
.alc-typing span{width:6px;height:6px;border-radius:50%;background:#9aa39e;animation:alc-bounce 1.2s infinite ease-in-out;}
.alc-typing span:nth-child(2){animation-delay:.15s;}
.alc-typing span:nth-child(3){animation-delay:.3s;}
@keyframes alc-bounce{0%,60%,100%{transform:translateY(0);opacity:.5;}30%{transform:translateY(-4px);opacity:1;}}

#alc-form{display:flex;border-top:1px solid #ece9e2;padding:10px;gap:8px;background:#fff;}
#alc-input{flex:1;border:1px solid #e4e1d8;border-radius:10px;padding:9px 12px;font-size:13.5px;outline:none;}
#alc-input:focus{border-color:var(--alc-accent,#0d7a6e);}
#alc-send{background:var(--alc-accent,#0d7a6e);border:none;color:#fff;border-radius:10px;width:38px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
#alc-send svg{width:16px;height:16px;fill:#fff;}

@media (max-width:480px){
  #alc-panel{right:16px;left:16px;width:auto;bottom:86px;}
  #alc-bubble{right:16px;}
}
