.fx-chat{position:fixed;inset-block-end:max(1rem,env(safe-area-inset-bottom));inset-inline-start:max(1rem,env(safe-area-inset-left));z-index:46;font-family:var(--font-body)}@media(max-width:1023px){body:has(.fx-tabbar) .fx-chat{inset-block-end:calc(4.6rem + env(safe-area-inset-bottom))}}.fx-chat__launcher{display:inline-flex;align-items:center;gap:.6rem;min-height:3.25rem;padding:0 1.1rem 0 .6rem;border:0;border-radius:999px;background:var(--color-primary);color:var(--color-on-primary);font:700 .95rem/1 var(--font-body);box-shadow:0 12px 30px -12px color-mix(in srgb,var(--color-primary) 70%,transparent);cursor:pointer;transition:transform .3s var(--ease-out),box-shadow .3s var(--ease)}[dir=rtl] .fx-chat__launcher{padding:0 .6rem 0 1.1rem}.fx-chat__launcher:hover,.fx-chat__launcher:focus-visible{transform:translateY(-3px)}.fx-chat__launcher:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.fx-chat__launcher .fx-icon{width:1.5rem;height:1.5rem}.fx-chat__avatar{display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;background:#ffffff29}.fx-chat.is-nudging .fx-chat__launcher{animation:fx-chat-nudge 1.2s var(--ease-out) 2}@keyframes fx-chat-nudge{0%,to{transform:translateY(0)}30%{transform:translateY(-6px)}60%{transform:translateY(-2px)}}.fx-chat.is-open .fx-chat__launcher{display:none}.fx-chat.is-open{z-index:1000}.fx-chat__panel{position:absolute;inset-block-end:0;inset-inline-start:0;width:min(400px,calc(100vw - 2rem));height:min(620px,calc(100dvh - 2rem - env(safe-area-inset-bottom)));display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:20px;background:var(--color-surface);box-shadow:0 30px 70px -30px #00000080,0 2px 8px #00000014;overflow:hidden;opacity:0;transform:translateY(12px) scale(.98);transition:opacity .25s var(--ease),transform .3s var(--ease-out)}.fx-chat__panel.is-shown{opacity:1;transform:none;pointer-events:auto}.fx-chat__panel[hidden]{display:none}.fx-chat__panel:not(.is-shown){pointer-events:none}@media(max-width:480px){.fx-chat.is-open,body:has(.fx-tabbar) .fx-chat.is-open{inset:0}.fx-chat__panel{inset:0;width:auto;height:auto;border-radius:0;border:0}}.fx-chat__head{display:flex;align-items:center;gap:.75rem;padding:.9rem 1rem;background:var(--color-deep, var(--color-secondary));color:#fff}.fx-chat__head .fx-chat__avatar{background:var(--color-accent);color:var(--color-on-accent)}.fx-chat__title{flex:1;min-width:0;display:grid;gap:.1rem}.fx-chat__title strong{font-family:var(--font-heading);font-size:1rem}.fx-chat__title small{font-size:.78rem;opacity:.8}.fx-chat__status{display:inline-block;width:.5rem;height:.5rem;margin-inline-end:.3rem;border-radius:50%;background:#4ade80;vertical-align:middle}.fx-chat__close{display:grid;place-items:center;width:2.25rem;height:2.25rem;border:0;border-radius:50%;background:#ffffff1f;color:#fff;cursor:pointer}.fx-chat__close .fx-icon{width:1.1rem;height:1.1rem}.fx-chat__log{flex:1;min-height:0;display:flex;flex-direction:column;gap:.6rem;padding:1rem;overflow-y:auto;overscroll-behavior:contain;background:var(--color-background)}.fx-chat__msg{display:grid;gap:.4rem;max-width:88%}.fx-chat__msg--assistant{align-self:flex-start}.fx-chat__msg--user{align-self:flex-end}.fx-chat__bubble{padding:.7rem .9rem;border-radius:16px;font-size:.95rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.fx-chat__msg--assistant .fx-chat__bubble{border:1px solid var(--color-border);border-start-start-radius:4px;background:var(--color-surface);color:var(--color-text)}.fx-chat__msg--user .fx-chat__bubble{border-start-end-radius:4px;background:var(--color-primary);color:var(--color-on-primary)}.fx-chat__bubble a{color:inherit;text-decoration:underline;text-underline-offset:2px}.fx-chat__links{display:flex;flex-wrap:wrap;gap:.35rem}.fx-chat__link{display:inline-block;padding:.35rem .7rem;border:1px solid color-mix(in srgb,var(--color-primary) 35%,var(--color-border));border-radius:999px;background:var(--color-primary-soft);color:var(--color-primary);font-size:.82rem;font-weight:600;text-decoration:none}.fx-chat__link:hover{background:var(--color-primary);color:var(--color-on-primary)}.fx-chat__typing{display:flex;gap:.3rem;padding:.8rem 1rem;border:1px solid var(--color-border);border-radius:16px;border-start-start-radius:4px;background:var(--color-surface);width:max-content}.fx-chat__typing span{width:.45rem;height:.45rem;border-radius:50%;background:var(--color-muted);animation:fx-chat-dot 1s infinite ease-in-out}.fx-chat__typing span:nth-child(2){animation-delay:.15s}.fx-chat__typing span:nth-child(3){animation-delay:.3s}@keyframes fx-chat-dot{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.fx-chat__chips{display:flex;gap:.4rem;padding:.5rem 1rem 0;overflow-x:auto;scrollbar-width:none;background:var(--color-background)}.fx-chat__chips::-webkit-scrollbar{display:none}.fx-chat__chip{flex:none;padding:.4rem .8rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-text);font:600 .82rem/1.3 var(--font-body);text-decoration:none;cursor:pointer;white-space:nowrap}.fx-chat__chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.fx-chat__chip--wa{border-color:#25d366;color:#128c3e}.fx-chat__form{display:flex;gap:.5rem;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-surface)}.fx-chat__input{flex:1;min-width:0;min-height:2.75rem;padding:.5rem .9rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-background);color:var(--color-text);font:1rem/1.4 var(--font-body)}.fx-chat__input:focus{outline:2px solid var(--color-primary);outline-offset:1px}.fx-chat__send{display:grid;place-items:center;width:2.75rem;height:2.75rem;border:0;border-radius:50%;background:var(--color-primary);color:var(--color-on-primary);cursor:pointer}.fx-chat__send:disabled{opacity:.5;cursor:wait}.fx-chat__send .fx-icon{width:1.2rem;height:1.2rem}[dir=rtl] .fx-chat__send .fx-icon{transform:scaleX(-1)}.fx-chat__foot{padding:0 1rem .5rem;background:var(--color-surface);color:var(--color-muted);font-size:.7rem;text-align:center}@media(prefers-reduced-motion:reduce){.fx-chat__panel,.fx-chat__launcher,.fx-chat__typing span{transition:none;animation:none}}
