.chat-widget{position:fixed;z-index:60;inset-inline-start:16px;bottom:max(16px,env(safe-area-inset-bottom));font-family:inherit;color:#221b18}
.chat-widget [hidden]{display:none!important}
.chat-widget-launcher{border:0;border-radius:999px;background:#251d1a;color:#fff;box-shadow:0 8px 26px #20130f35;padding:13px 18px;font:inherit;font-weight:700;cursor:pointer;min-height:46px}
.chat-widget-panel{position:absolute;bottom:calc(100% + 10px);inset-inline-start:0;width:min(400px,calc(100vw - 32px));height:min(630px,calc(100dvh - 95px));display:flex;flex-direction:column;background:#fff;border:1px solid #ded8d2;border-radius:20px;box-shadow:0 16px 48px #1e130f35;overflow:hidden}
.chat-widget-header{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#241e1b;color:#fff;padding:15px 17px}
.chat-widget-header strong,.chat-widget-header span{display:block}.chat-widget-header span{font-size:12px;opacity:.78;margin-top:3px}
.chat-widget-header button{border:0;background:transparent;color:#fff;font-size:25px;line-height:1;min-height:40px;min-width:40px;cursor:pointer}
.chat-widget-disclosure{background:#f7f4f1;padding:9px 16px;font-size:12px;line-height:1.6;color:#5b514a}.chat-widget-disclosure summary{cursor:pointer;font-weight:700}.chat-widget-disclosure p{margin:7px 0}
.chat-widget-messages{padding:16px;display:flex;flex-direction:column;gap:10px;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
.chat-widget-message{max-width:93%;padding:10px 12px;border-radius:14px;background:#f3efeb;overflow-wrap:anywhere;white-space:pre-wrap;font-size:14px;line-height:1.6}.chat-widget-message strong{display:block;font-size:11px;margin-bottom:3px}.chat-widget-message.is-user{align-self:flex-end;background:#e8d9cd}.chat-widget-message.is-assistant{align-self:flex-start}
.chat-widget-empty{font-size:13px;color:#665a52;line-height:1.6;margin:4px 0}.chat-widget-error{margin:0 16px;color:#a32925;font-size:13px}.chat-widget-error button{border:0;background:transparent;text-decoration:underline;color:inherit;font:inherit;cursor:pointer}
.chat-widget-form{padding:10px 16px 5px;border-top:1px solid #eee9e4}.chat-widget-form label{display:block;font-size:12px;font-weight:700;margin-bottom:4px}.chat-widget-form textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:50px;max-height:120px;padding:9px;border:1px solid #cfc5be;border-radius:10px;font:inherit;font-size:16px}.chat-widget-actions{display:flex;justify-content:space-between;gap:8px;margin-top:7px}.chat-widget-actions button{border:1px solid #cabfb7;background:#fff;color:#221b18;border-radius:9px;padding:7px 12px;font:inherit;cursor:pointer}.chat-widget-actions button[type=submit]{background:#251d1a;color:white;border-color:#251d1a}.chat-widget-actions button:disabled{opacity:.55;cursor:default}.chat-widget-foot{font-size:11px;color:#71645a;margin:2px 16px 10px}
@media(max-width:420px){.chat-widget{inset-inline-start:10px;bottom:max(10px,env(safe-area-inset-bottom))}.chat-widget-panel{width:calc(100vw - 20px);height:min(640px,calc(100dvh - 82px));border-radius:16px}}

/* The launcher stays in the header so it never covers operational controls. */
.chat-widget{position:relative;inset:auto;bottom:auto;z-index:60}
.chat-widget-launcher{min-height:44px;padding:8px 12px;box-shadow:none;font-size:14px}
.chat-widget-panel{position:fixed;top:76px;bottom:auto;inset-inline-start:16px;max-height:calc(100dvh - 92px)}
@media(max-width:420px){.chat-widget{inset:auto;bottom:auto}.chat-widget-launcher{font-size:12px;padding:6px 8px}.chat-widget-panel{top:72px;bottom:auto;inset-inline-start:10px;max-height:calc(100dvh - 82px)}}
/* Align the open assistant panel with its header button. */
.chat-widget-panel{left:16px;right:auto;inset-inline-start:auto}
@media(max-width:420px){.chat-widget-panel{left:10px;right:auto;inset-inline-start:auto}}
.chat-widget-panel{left:max(16px,calc((100vw - 1010px) / 2))}
.chat-widget-launcher{white-space:nowrap}
