/* FuseLoom assistant — floating chat widget. Runs entirely in the visitor's browser:
   scripted answers built from the site's own content, no messages sent anywhere. */
.flchat-fab{position:fixed;right:22px;bottom:22px;z-index:90;border:0;cursor:pointer;display:flex;align-items:center;gap:9px;padding:13px 18px;border-radius:30px;background:linear-gradient(135deg,#FF7A45,#FF9A6B);color:#2a0f04;font-family:'Inter',sans-serif;font-weight:600;font-size:14px;box-shadow:0 10px 30px rgba(255,122,69,.4);transition:.25s}
.flchat-fab:hover{transform:translateY(-2px);box-shadow:0 14px 38px rgba(255,122,69,.55)}
.flchat-fab svg{flex-shrink:0}
.flchat-panel{position:fixed;right:22px;bottom:86px;z-index:95;width:360px;max-width:calc(100vw - 32px);height:min(540px,calc(100vh - 120px));display:none;flex-direction:column;background:rgba(17,13,38,.97);border:1px solid rgba(255,255,255,.14);border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.6);overflow:hidden;font-family:'Inter',sans-serif;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.flchat-panel.open{display:flex}
.flchat-head{display:flex;align-items:center;gap:9px;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.08);color:#ECEAFB;font-weight:600;font-size:14px;font-family:'Poppins',sans-serif}
.flchat-head .st{margin-left:auto;font-size:11px;color:#33D6A6;font-family:'Inter',sans-serif;font-weight:500}
.flchat-close{background:none;border:0;color:#A7A1C9;cursor:pointer;font-size:18px;line-height:1;padding:2px 4px}
.flchat-close:hover{color:#ECEAFB}
.flchat-msgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px}
.flchat-b{max-width:86%;padding:10px 13px;border-radius:14px;font-size:13.5px;line-height:1.5;color:#ECEAFB;overflow-wrap:break-word}
.flchat-b.u{background:rgba(139,125,242,.25);border:1px solid rgba(139,125,242,.4);align-self:flex-end;border-bottom-right-radius:4px}
.flchat-b.a{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);align-self:flex-start;border-bottom-left-radius:4px}
.flchat-b.a a{color:#FF9A6B;text-decoration:none;font-weight:600}
.flchat-b.a a:hover{text-decoration:underline}
.flchat-chips{display:flex;flex-wrap:wrap;gap:7px;padding:4px 14px 10px}
.flchat-chip{cursor:pointer;font-size:12.5px;color:#ECEAFB;background:rgba(255,122,69,.12);border:1px solid rgba(255,122,69,.32);padding:7px 12px;border-radius:18px;transition:.2s;font-family:'Inter',sans-serif}
.flchat-chip:hover{background:rgba(255,122,69,.25)}
.flchat-in{display:flex;gap:8px;padding:12px 14px;border-top:1px solid rgba(255,255,255,.08)}
.flchat-in input{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:10px 12px;color:#ECEAFB;font-size:13.5px;outline:none;font-family:'Inter',sans-serif}
.flchat-in input::placeholder{color:#A7A1C9}
.flchat-in input:focus{border-color:rgba(255,122,69,.45)}
.flchat-send{border:0;cursor:pointer;border-radius:12px;padding:0 14px;background:linear-gradient(135deg,#FF7A45,#FF9A6B);color:#2a0f04;font-weight:700;font-size:15px;font-family:'Inter',sans-serif}
.flchat-note{font-size:10.5px;color:#A7A1C9;text-align:center;padding:0 14px 10px}
@media(max-width:560px){.flchat-panel{right:8px;left:8px;width:auto;bottom:80px}.flchat-fab{right:14px;bottom:14px}.flchat-fab .lbl{display:none}}
@media (prefers-reduced-motion: reduce){.flchat-fab{transition:none}}
