.ll-assistant-toggle{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:50;
  width:62px;
  height:62px;
  border:0;
  border-radius:20px;
  background:#08786f;
  color:#fff8ec;
  box-shadow:0 16px 36px rgba(8,120,111,.34);
  font:950 1.5rem/1 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  cursor:pointer;
}
.ll-assistant-toggle:focus-visible,
.ll-assistant-panel button:focus-visible,
.ll-assistant-panel input:focus-visible,
.ll-assistant-panel a:focus-visible{
  outline:3px solid #f8c95b;
  outline-offset:3px;
}
.ll-assistant-panel{
  position:fixed;
  right:18px;
  bottom:92px;
  z-index:51;
  width:min(410px,calc(100vw - 24px));
  max-height:min(690px,calc(100vh - 116px));
  display:none;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  border:1px solid #d8eee8;
  border-radius:26px;
  background:#fffdf8;
  color:#192535;
  box-shadow:0 26px 80px rgba(25,37,53,.24);
  font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.ll-assistant-panel.is-open{display:grid}
.ll-assistant-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:16px 16px 12px;
  border-bottom:1px solid #eadfce;
  background:#f5fbf8;
}
.ll-assistant-title{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  font-weight:950;
  letter-spacing:-.02em;
}
.ll-assistant-mark{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#08786f;
  color:#fff8ec;
}
.ll-assistant-close{
  flex:0 0 auto;
  border:1px solid #eadfce;
  border-radius:999px;
  background:#fffdf8;
  color:#192535;
  padding:7px 10px;
  font-weight:950;
  cursor:pointer;
}
.ll-assistant-body{
  overflow:auto;
  padding:14px;
}
.ll-assistant-msg{
  margin:0 0 10px;
  padding:12px 13px;
  border-radius:18px;
  background:#f4efe5;
  color:#334357;
  line-height:1.45;
  font-size:.96rem;
}
.ll-assistant-msg strong{color:#192535}
.ll-assistant-msg.user{
  margin-left:34px;
  background:#08786f;
  color:white;
}
.ll-assistant-results{
  display:grid;
  gap:8px;
  margin:10px 0 12px;
}
.ll-assistant-card{
  display:block;
  padding:12px;
  border:1px solid #eadfce;
  border-radius:18px;
  background:white;
  color:#192535;
  text-decoration:none;
}
.ll-assistant-card span{
  display:block;
  color:#596a7b;
  font-size:.9rem;
  margin-top:3px;
}
.ll-assistant-chips{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  padding:0 14px 10px;
}
.ll-assistant-chip{
  border:1px solid #eadfce;
  border-radius:999px;
  background:white;
  color:#192535;
  padding:8px 10px;
  font-weight:850;
  font-size:.9rem;
  cursor:pointer;
}
.ll-assistant-form{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
  padding:12px;
  border-top:1px solid #eadfce;
  background:#fff8ec;
}
.ll-assistant-form input{
  min-width:0;
  border:1px solid #eadfce;
  border-radius:999px;
  padding:12px 13px;
  color:#192535;
  font:inherit;
}
.ll-assistant-form button{
  border:0;
  border-radius:999px;
  background:#f8c95b;
  color:#3c2a00;
  padding:12px 14px;
  font-weight:950;
  cursor:pointer;
}
.ll-assistant-fine{
  display:block;
  color:#596a7b;
  font-size:.82rem;
  margin-top:8px;
}
@media(max-width:560px){
  .ll-assistant-toggle{
    right:14px;
    bottom:14px;
    width:56px;
    height:56px;
    border-radius:18px;
  }
  .ll-assistant-panel{
    left:12px;
    right:auto;
    width:min(360px,calc(100vw - 54px));
    bottom:82px;
    max-height:calc(100vh - 100px);
  }
  .ll-assistant-form{grid-template-columns:1fr}
}
