/* CHATBOT WIDGET */

#chat-fab{
  position:fixed;bottom:28px;right:28px;z-index:1000;
  width:58px;height:58px;border-radius:50%;
  background:linear-gradient(135deg,#0891B2,#22D3EE);
  border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 24px rgba(34,211,238,0.35);
  transition:transform 0.2s,box-shadow 0.2s;
}
#chat-fab:hover{transform:scale(1.08);box-shadow:0 6px 32px rgba(34,211,238,0.5);}
#chat-fab svg{width:26px;height:26px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
#chat-fab .notif{
  position:absolute;top:2px;right:2px;
  width:14px;height:14px;border-radius:50%;
  background:#F59E0B;border:2px solid #06080F;
  font-size:8px;color:#06080F;font-weight:700;
  display:flex;align-items:center;justify-content:center;
}

#chat-window{
  position:fixed;bottom:98px;right:28px;z-index:999;
  width:370px;max-height:580px;
  background:#111827;
  border:1px solid rgba(34,211,238,0.2);
  border-radius:18px;
  display:flex;flex-direction:column;
  overflow:hidden;
  box-shadow:0 20px 60px rgba(0,0,0,0.5);
  transform:scale(0.92) translateY(16px);
  opacity:0;pointer-events:none;
  transition:transform 0.25s,opacity 0.2s;
}
#chat-window.open{transform:scale(1) translateY(0);opacity:1;pointer-events:all;}

.chat-header{
  padding:1rem;
  background:#162035;
  border-bottom:1px solid rgba(255,255,255,0.07);
  display:flex;align-items:center;gap:10px;
}
.chat-avatar{
  width:36px;height:36px;border-radius:50%;
  background:linear-gradient(135deg,#0891B2,#22D3EE);
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-weight:700;
}
.chat-header-name{font-size:0.9rem;font-weight:600;}
.chat-header-status{font-size:0.7rem;color:#4ADE80;}

.chat-messages{
  flex:1;overflow-y:auto;padding:1rem;
  display:flex;flex-direction:column;gap:10px;
}

.msg{display:flex;max-width:85%;}
.msg.bot{align-self:flex-start;}
.msg.user{align-self:flex-end;}

.msg-bubble{
  padding:0.6rem 0.9rem;
  border-radius:12px;
  font-size:0.85rem;
}

.msg.bot .msg-bubble{
  background:#06080F;
  border:1px solid rgba(255,255,255,0.07);
  color:#fff;
}
.msg.user .msg-bubble{
  background:#22D3EE;
  color:#06080F;
}

.chat-input-row{
  display:flex;
  padding:0.8rem;
  border-top:1px solid rgba(255,255,255,0.07);
  background:#162035;
}
#chat-input{
  flex:1;
  background:#06080F;
  border:1px solid rgba(255,255,255,0.07);
  border-radius:20px;
  padding:0.5rem 1rem;
  color:#fff;
}
#chat-send{
  margin-left:8px;
  width:36px;height:36px;
  border-radius:50%;
  background:#22D3EE;
  border:none;cursor:pointer;
}

.typing-indicator{display:flex;gap:4px;}
.typing-indicator span{
  width:6px;height:6px;border-radius:50%;
  background:#6B7FA3;
  animation:bounce 1.2s infinite;
}
.typing-indicator span:nth-child(2){animation-delay:0.2s;}
.typing-indicator span:nth-child(3){animation-delay:0.4s;}

@keyframes bounce{
  0%,60%,100%{transform:translateY(0)}
  30%{transform:translateY(-5px)}
}