/* Chat widget. Sits above the WhatsApp button and below the loader bar. */
#rf-chat{position:fixed;right:18px;bottom:86px;z-index:45;font-family:var(--font-body,system-ui,sans-serif);font-size:15px;line-height:1.4;color:var(--ink,#101C2A)}
.rf-chat__launcher{width:56px;height:56px;border-radius:50%;border:0;background:var(--navy,#184977);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 30px -8px rgba(0,0,0,.45);transition:transform .25s}
.rf-chat__launcher:hover{transform:scale(1.08)}
.rf-chat__launcher:focus-visible,.rf-chat__close:focus-visible,.rf-chat__send:focus-visible,.rf-chat__input:focus-visible{outline:3px solid var(--sky,#1B79B8);outline-offset:2px}
.rf-chat__panel{position:absolute;right:0;bottom:68px;width:min(380px,calc(100vw - 36px));max-height:70vh;display:flex;flex-direction:column;background:#fff;border-radius:16px;box-shadow:0 18px 50px -12px rgba(24,73,119,.5);overflow:hidden}
.rf-chat__panel[hidden]{display:none}
.rf-chat__head{display:flex;align-items:center;justify-content:space-between;padding:.7rem 1rem;background:var(--navy,#184977);color:#fff}
.rf-chat__close{border:0;background:transparent;color:#fff;font-size:26px;line-height:1;cursor:pointer;padding:0 .25rem}
.rf-chat__list{flex:1;min-height:160px;overflow-y:auto;padding:.8rem;display:flex;flex-direction:column;gap:.5rem;background:var(--tint,#EAF3FA)}
.rf-chat__msg{max-width:88%;padding:.55rem .8rem;border-radius:14px;overflow-wrap:anywhere}
.rf-chat__msg--bot{align-self:flex-start;background:#fff;border-bottom-left-radius:4px}
.rf-chat__msg--user{align-self:flex-end;background:var(--navy,#184977);color:#fff;border-bottom-right-radius:4px}
.rf-chat__msg a{color:inherit;text-decoration:underline}
.rf-chat__typing{opacity:.7;font-style:italic}
.rf-chat__cards{display:flex;flex-direction:column;gap:.4rem}
.rf-chat__card{display:flex;flex-direction:column;gap:.1rem;padding:.55rem .8rem;border-radius:12px;background:#fff;border:1px solid var(--line,rgba(16,28,42,.12));color:inherit;text-decoration:none}
.rf-chat__card:hover{border-color:var(--navy,#184977)}
.rf-chat__card span{font-size:13px;color:var(--muted,#4A5968)}
.rf-chat__card em{font-size:13px;font-style:normal;color:var(--accent-ink,#B30000)}
.rf-chat__login{align-self:flex-start;padding:.5rem 1rem;border-radius:999px;background:var(--accent,#E60000);color:#fff;text-decoration:none;font-weight:600}
.rf-chat__form{display:flex;gap:.4rem;padding:.6rem;border-top:1px solid var(--line,rgba(16,28,42,.12))}
.rf-chat__input{flex:1;min-width:0;padding:.55rem .75rem;border:1px solid var(--line,rgba(16,28,42,.25));border-radius:999px;font:inherit}
.rf-chat__send{border:0;border-radius:999px;padding:0 1rem;background:var(--accent,#E60000);color:#fff;font:inherit;font-weight:600;cursor:pointer}
.rf-chat__send:disabled,.rf-chat__input:disabled{opacity:.6;cursor:default}
.rf-chat__notice{margin:0;padding:0 .8rem .6rem;font-size:12px;color:var(--muted,#4A5968)}
.rf-chat__chips{display:flex;flex-wrap:wrap;gap:.4rem}
.rf-chat__chip{border:1px solid var(--navy,#184977);border-radius:999px;padding:.45rem .9rem;background:#fff;color:var(--navy,#184977);font:inherit;font-weight:600;cursor:pointer}
.rf-chat__chip--yes{background:var(--accent,#E60000);border-color:var(--accent,#E60000);color:#fff}
.rf-chat__chip:focus-visible{outline:3px solid var(--sky,#1B79B8);outline-offset:2px}
@media (max-width:480px){#rf-chat{right:12px;bottom:80px}.rf-chat__panel{max-height:68vh}}
