.chatbot-launcher{
  position:fixed;
  right:clamp(1rem,3vw,1.5rem);
  bottom:clamp(1rem,3vw,1.5rem);
  z-index:80;
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  border:1px solid rgba(11,31,56,.18);
  border-radius:7px;
  padding:.92rem 1.08rem;
  background:#E8C9A4;
  color:#0B1F38;
  box-shadow:0 18px 48px rgba(11,31,56,.24), 0 0 0 4px rgba(232,201,164,.28);
  font:700 .9rem/1.1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.chatbot-launcher:hover{
  background:#F4D5AC;
  transform:translateY(-2px);
  box-shadow:0 22px 54px rgba(11,31,56,.28), 0 0 0 5px rgba(232,201,164,.34);
}
.chatbot-launcher svg{width:20px;height:20px}
.chatbot-panel{
  position:fixed;
  right:clamp(1rem,3vw,1.5rem);
  bottom:5.2rem;
  z-index:81;
  width:min(380px,calc(100vw - 2rem));
  height:min(620px,calc(100vh - 7rem));
  display:none;
  grid-template-rows:auto 1fr auto;
  overflow:hidden;
  border:1px solid rgba(11,31,56,.14);
  border-radius:8px;
  background:#F9F5ED;
  color:#0B1F38;
  box-shadow:0 24px 70px rgba(11,31,56,.28);
  font:400 .94rem/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.chatbot-panel.open{display:grid}
.chatbot-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:1rem 1rem .9rem;
  background:#0B1F38;
  color:#F4EFE6;
}
.chatbot-title{font-weight:700}
.chatbot-subtitle{display:block;margin-top:.15rem;color:rgba(244,239,230,.7);font-size:.76rem}
.chatbot-close{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(244,239,230,.22);
  border-radius:50%;
  background:transparent;
  color:inherit;
  cursor:pointer;
}
.chatbot-close svg{width:17px;height:17px}
.chatbot-log{
  overflow:auto;
  padding:1rem;
  display:flex;
  flex-direction:column;
  gap:.7rem;
}
.chatbot-msg{
  max-width:88%;
  padding:.75rem .85rem;
  border-radius:8px;
  white-space:pre-wrap;
}
.chatbot-msg.bot{
  align-self:flex-start;
  background:#FFFFFF;
  border:1px solid rgba(11,31,56,.08);
}
.chatbot-msg.user{
  align-self:flex-end;
  background:#1A3556;
  color:#F4EFE6;
}
.chatbot-msg.typing::after{
  content:"";
  display:inline-block;
  width:2px;
  height:1em;
  margin-left:2px;
  background:currentColor;
  vertical-align:-.15em;
  animation:chatbot-caret .8s steps(1) infinite;
}
@keyframes chatbot-caret{50%{opacity:0}}
.chatbot-suggestions{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  padding:0 1rem .85rem;
}
.chatbot-suggestions button{
  border:1px solid rgba(11,31,56,.18);
  border-radius:999px;
  background:#FFFFFF;
  color:#0B1F38;
  padding:.45rem .62rem;
  font:600 .75rem/1.1 inherit;
  cursor:pointer;
}
.chatbot-form{
  border-top:1px solid rgba(11,31,56,.1);
  padding:.8rem;
  background:#FFFFFF;
}
.chatbot-input-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:.55rem;
}
.chatbot-input{
  min-width:0;
  border:1px solid rgba(11,31,56,.16);
  border-radius:6px;
  padding:.75rem .8rem;
  font:inherit;
}
.chatbot-send{
  width:42px;
  border:0;
  border-radius:6px;
  background:#C08B5C;
  color:#0B1F38;
  display:grid;
  place-items:center;
  cursor:pointer;
}
.chatbot-send svg{width:18px;height:18px}
.chatbot-note{
  margin:.55rem 0 0;
  color:rgba(11,31,56,.62);
  font-size:.72rem;
}
@media (max-width:600px){
  .chatbot-launcher{
    right:.75rem;
    bottom:.75rem;
    padding:.68rem .78rem;
    font-size:.78rem;
    box-shadow:0 12px 28px rgba(11,31,56,.2), 0 0 0 3px rgba(232,201,164,.22);
  }
  .chatbot-launcher svg{width:16px;height:16px}
  .chatbot-panel{
    right:.75rem;
    left:.75rem;
    bottom:4rem;
    width:auto;
    height:min(560px,calc(100vh - 5.25rem));
  }
  .chatbot-msg{max-width:92%;font-size:.9rem}
}
