/* ===== UMANA Chatbot (CSS v3-fix) ===== */
:root{
  --umana-brand: #D32F2F;
  --umana-bg: #fffdfb;
  --umana-text: #222;
}
.umana-chatbot{
  position: fixed; right: 20px; bottom: 20px; z-index: 9999;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
.umana-chatbot__launcher{
  width: 56px; height: 56px; border-radius: 50%; border: none; cursor: pointer;
  box-shadow: 0 8px 20px rgba(0,0,0,.15); background: var(--umana-brand);
  color: #fff; font-size: 22px; display:flex; align-items:center; justify-content:center;
}
.umana-chatbot__launcher:focus{ outline: 3px solid rgba(211,47,47,.35); outline-offset: 3px; }
.umana-chatbot__window{
  width: 340px; max-height: 70vh; background: var(--umana-bg);
  border-radius: 16px; overflow: hidden; box-shadow: 0 16px 40px rgba(0,0,0,.22);
  display: none; flex-direction: column;
}
.umana-chatbot--open .umana-chatbot__window{ display:flex; }
.umana-chatbot__header{
  background: #ffffff; border-bottom: 1px solid #eee; padding: 12px 14px; display:flex; gap:10px; align-items:center;
  position: sticky; top:0; z-index:2;
}
.umana-chatbot__avatar{
  width: 28px; height: 28px; border-radius: 50%; background: var(--umana-brand); color: #fff;
  display:flex; align-items:center; justify-content:center; font-weight: 700;
}
.umana-chatbot__title{ font-weight: 700; font-size: 14px; color: var(--umana-text); }
.umana-chatbot__close{ margin-left:auto; background:transparent; border:none; font-size:18px; cursor:pointer; }
.umana-chatbot__body{ padding: 12px; overflow:auto; display:flex; flex-direction: column; gap: 10px; }
.umana-msg{ max-width: 85%; border-radius: 14px; padding: 10px 12px; line-height: 1.35; font-size: 14px; }
.umana-msg--bot{ background: #fff; border:1px solid #eee; color: var(--umana-text); }
.umana-msg--user{ background: var(--umana-brand); color:#fff; margin-left:auto; }
.umana-suggestions{ display:flex; flex-wrap: wrap; gap: 8px; margin-top: -2px; }
.umana-suggestion{ border:1px solid #eee; background:#fff; border-radius: 999px; padding:6px 10px; font-size:12px; cursor:pointer; }
.umana-suggestion:hover{ border-color: var(--umana-brand); }
.umana-chatbot__input{ display:flex; gap:8px; padding: 10px; border-top:1px solid #eee; background:#fff; }
.umana-chatbot__input input{ flex:1; border:1px solid #e5e5e5; border-radius: 999px; padding: 10px 12px; font-size:14px; }
.umana-chatbot__input button{ border:none; background: var(--umana-brand); color:#fff; border-radius: 999px; padding: 10px 14px; cursor:pointer; }
/* Links tipo chip */
.umana-link{
  display:inline-block; text-decoration:none; border:1px solid #eee; padding:8px 12px; border-radius:999px;
  font-size:13px; margin-right:8px;
}
.umana-link:hover{ border-color: var(--umana-brand); }
@media (prefers-reduced-motion:no-preference){
  .umana-msg{ animation: fadeIn .18s ease-out; }
  @keyframes fadeIn{ from{opacity:0; transform: translateY(2px);} to{opacity:1; transform:none;} }
}
@media (max-width: 480px){ .umana-chatbot__window{ width: 92vw; } }
/* Animación de rebote */
@keyframes umana-bounce {
  0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
  40% { transform: translateY(-6px); }
  60% { transform: translateY(-3px); }
}

.umana-chatbot__launcher {
  animation: umana-bounce 3s infinite;
}