#hb-messages{
  flex:1;
  overflow-y:auto;
  padding:18px;
  display:flex;
  flex-direction:column;
  gap:10px;
  background:
    radial-gradient(circle at top right, rgba(235,108,0,.08), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,.01), rgba(255,255,255,0));
}

.hb-msg{
  max-width:88%;
  padding:12px 14px;
  border-radius:16px;
  font-size:14px;
  line-height:1.5;
  color:#fff;
  word-break:break-word;
}

.hb-msg.bot{
  background:#1B1B25;
  align-self:flex-start;
  border:1px solid rgba(255,255,255,.05);
}

.hb-msg.user{
  background:var(--hb-primary);
  align-self:flex-end;
}

#hb-options{
  padding:14px;
  border-top:1px solid rgba(255,255,255,.06);
  display:flex;
  flex-direction:column;
  gap:8px;
  background:rgba(0,0,0,.12);
}

.hb-option{
  width:100%;
  border:none;
  background:#1B1B25;
  color:#fff;
  padding:12px 14px;
  text-align:left;
  border-radius:14px;
  cursor:pointer;
  transition:.25s ease;
  font-size:14px;
  border:1px solid rgba(255,255,255,.05);
}

.hb-option:hover{
  transform:translateY(-1px);
  background:var(--hb-primary);
}

.hb-option:focus{
  outline:none;
  box-shadow:0 0 0 3px rgba(235,108,0,.18);
}

.hb-typing{
  display: inline-flex;
  gap: 6px;
  align-items: center;
}

.hb-typing span{
  width: 6px;
  height: 6px;
  background: #fff;
  border-radius: 50%;
  display: inline-block;
  animation: hbTyping 1.4s infinite ease-in-out;
}

.hb-typing span:nth-child(2){
  animation-delay: 0.2s;
}

.hb-typing span:nth-child(3){
  animation-delay: 0.4s;
}

@keyframes hbTyping{
  0%, 80%, 100%{
    transform: scale(0.6);
    opacity: 0.3;
  }
  40%{
    transform: scale(1);
    opacity: 1;
  }
}