/* FlightSasta FAQ chat widget */
.fs-chat-btn{
  position:fixed;z-index:45;
  right:max(16px,var(--sr));bottom:max(16px,var(--sb));
  width:58px;height:58px;border-radius:50%;
  display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;
  background:var(--btn);color:#fff;border:0;cursor:pointer;
  box-shadow:var(--sh-lg);font:700 11px/1 var(--font);letter-spacing:.02em;
}
.fs-chat-btn:hover{background:var(--btn-h)}
.fs-chat-btn[aria-expanded="true"]{background:var(--navy)}
.fs-chat-btn .ico{width:22px;height:22px}
.page-results .fs-chat-btn{bottom:calc(72px + var(--sb))}
.page-results .fs-chat-panel{bottom:calc(140px + var(--sb))}
.fs-chat-panel{
  position:fixed;z-index:46;
  right:max(12px,var(--sr));bottom:calc(84px + var(--sb));
  width:min(380px, calc(100vw - 24px));
  height:min(540px, calc(100dvh - 110px));
  display:flex;flex-direction:column;
  background:var(--surface);color:var(--text);
  border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh-lg);
  overflow:hidden;
}
.fs-chat-panel[hidden]{display:none!important}
.fs-chat-hd{
  display:flex;align-items:center;gap:10px;
  padding:12px 12px 12px 16px;
  background:var(--navy);color:#fff;flex:none;
}
.fs-chat-hd h2{margin:0;font-size:1rem;font-weight:800;letter-spacing:-.01em;flex:1;color:#fff}
.fs-chat-hd .note{margin:2px 0 0;font-size:11px;font-weight:500;color:#cfdcf5}
.fs-chat-x{
  width:44px;height:44px;border:0;border-radius:10px;background:transparent;color:#fff;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
}
.fs-chat-x:hover{background:rgba(255,255,255,.12)}
.fs-chat-x .ico{width:20px;height:20px}
.fs-chat-log{
  flex:1;overflow:auto;padding:14px 14px 8px;
  display:flex;flex-direction:column;gap:10px;
  -webkit-overflow-scrolling:touch;
}
.fs-msg{max-width:92%;padding:10px 12px;border-radius:14px;font-size:14.5px;line-height:1.45;overflow-wrap:anywhere}
.fs-msg p{margin:0 0 .5em}.fs-msg p:last-child{margin:0}
.fs-msg a{color:inherit;font-weight:700}
.fs-msg-bot{align-self:flex-start;background:var(--surface-2);color:var(--text);border-bottom-left-radius:4px}
.fs-msg-user{align-self:flex-end;background:var(--brand-50);color:var(--text);border-bottom-right-radius:4px}
.fs-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.fs-chip{
  border:1px solid var(--line);background:var(--surface);color:var(--text);
  border-radius:999px;padding:7px 12px;font:600 13px/1.3 var(--font);cursor:pointer;min-height:36px;
}
.fs-chip:hover{border-color:var(--brand);color:var(--brand)}
.fs-chat-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.fs-chat-acts a{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:40px;padding:0 12px;border-radius:10px;font-weight:700;font-size:13.5px;text-decoration:none;
  background:var(--btn);color:#fff;
}
.fs-chat-acts a.wa{background:#0b7a3e;color:#fff}
.fs-chat-acts a.mail{background:var(--navy);color:#fff}
.fs-chat-ft{
  flex:none;display:flex;gap:8px;align-items:flex-end;
  padding:10px 12px calc(10px + var(--sb));
  border-top:1px solid var(--line);background:var(--surface);
}
.fs-chat-ft label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.fs-chat-ft textarea{
  flex:1;resize:none;min-height:44px;max-height:96px;
  padding:10px 12px;border:1px solid var(--line);border-radius:12px;
  background:var(--bg);color:var(--text);line-height:1.35;
}
.fs-chat-send{
  min-width:44px;min-height:44px;padding:0 14px;border:0;border-radius:12px;
  background:var(--btn);color:#fff;font-weight:700;cursor:pointer;
}
.fs-chat-send:hover{background:var(--btn-h)}
@media (max-width:480px){
  .fs-chat-panel{
    right:max(8px,var(--sr));left:max(8px,var(--sl));width:auto;
    bottom:max(8px,var(--sb));height:min(100dvh - 16px, 100%);
    border-radius:16px;
  }
  .page-results .fs-chat-panel{bottom:max(8px,var(--sb))}
}
@media (prefers-reduced-motion:reduce){
  .fs-chat-btn,.fs-chat-panel,.fs-chip{transition:none}
}
