:root{font-family:system-ui,-apple-system,sans-serif;color:#163f39;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:transparent}button,textarea{font:inherit}button{cursor:pointer;border:0}button:focus-visible,textarea:focus-visible{outline:3px solid #6da998;outline-offset:2px}button:disabled{opacity:.55;cursor:default}[hidden]{display:none!important}#launcher{position:fixed;bottom:12px;right:12px;width:112px;height:40px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid #ffffff70;border-radius:999px;background:linear-gradient(135deg,#087f78,#07594d);color:#fff;font-size:13px;font-weight:750;white-space:nowrap;box-shadow:0 5px 12px #063f493d,inset 0 1px 0 #ffffff40;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}#launcher svg{width:18px;height:18px;flex-shrink:0;color:#ffdd8a}#launcher:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 7px 14px #063f494d,inset 0 1px 0 #ffffff40}#launcher:active:not(:disabled){transform:translateY(0) scale(.97)}#launcher:focus-visible{outline:3px solid #ffcc69;outline-offset:3px}@media(prefers-reduced-motion:reduce){#launcher{transition:none}}#panel{position:fixed;inset:2px;display:flex;flex-direction:column;background:#fff;border:1px solid #d2e3dd;border-radius:18px;overflow:hidden}header{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;background:#176859;color:white}header strong{font-size:20px;letter-spacing:1px}#connection{display:block;font-size:12px;opacity:.9;margin-top:3px}#close{background:transparent;color:white;font-size:28px;padding:0 6px}#transcript{flex:1;overflow:auto;min-height:60px;padding:16px;background:#f6faf8}#empty{text-align:center;font-size:14px;color:#647b73;margin:32px 12px;line-height:1.8}#messages{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}#messages li{max-width:88%;align-self:flex-start;overflow-wrap:anywhere}#messages li.customer{align-self:flex-end}#messages p{white-space:pre-wrap;margin:0;padding:10px 13px;background:#fff;border:1px solid #dde8e3;border-radius:12px 12px 12px 3px;font-size:14px;line-height:1.6}#messages .customer p{background:#deeee7;border-color:#deeee7;border-radius:12px 12px 3px 12px}#messages small{display:block;font-size:10px;color:#647b73;margin-top:4px}.customer small{text-align:right}#notice{font-size:12px;color:#894822;padding:0 16px;margin:8px 0;line-height:1.5}#notice:empty{display:none}#composer{padding:12px 16px;border-top:1px solid #e3ece7}label{font-size:12px;display:block;margin-bottom:6px}textarea{width:100%;resize:none;padding:10px;border:1px solid #bdd2c9;border-radius:8px;font-size:14px}.controls{display:flex;align-items:center;justify-content:space-between;margin-top:8px;gap:8px}.controls small{font-size:10px;color:#647b73}#send{background:#176859;color:#fff;border-radius:8px;padding:9px 14px;font-size:13px}#older,#reconnect,#new-session{background:#e4eee9;color:#265d4e;padding:8px;border-radius:6px;font-size:12px}#older{display:block;margin:0 auto 15px}#reconnect,#new-session{margin:4px 16px}footer{text-align:center;font-size:10px;color:#71877d;padding:0 0 9px}
#outbox{list-style:none;padding:0;margin:12px 0;display:flex;flex-direction:column;gap:10px}#outbox li{max-width:88%;align-self:flex-end;border:1px dashed #aa9774;border-radius:10px;padding:10px;background:#fff9ee;overflow-wrap:anywhere}#outbox p{white-space:pre-wrap;margin:0 0 6px;font-size:14px}#outbox small{display:block;font-size:11px;color:#775b2e}#outbox button{font-size:11px;background:transparent;color:#775b2e;text-decoration:underline;margin-top:5px}#preferences{padding:4px 16px 8px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px}#preference{background:#e4eee9;color:#265d4e;border-radius:6px;padding:7px;flex-shrink:0}
#typing{font-size:12px;color:#477365;margin:5px 16px;flex-shrink:0}
.chat-image{display:block;max-width:100%;width:240px;height:200px;object-fit:contain;border-radius:10px;background:#fff;border:1px solid #d2e3dd}.image-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:6px}.image-controls button{background:#e4eee9;color:#265d4e;padding:6px 9px;border-radius:6px;font-size:12px}#image-selection{font-size:11px;overflow-wrap:anywhere;margin:5px 0}#image-selection:empty{display:none}#composer{flex-shrink:0}#messages button{padding:10px;border-radius:8px;background:#e4eee9;color:#265d4e}
#satisfaction{margin:8px 14px;padding:12px;border:1px solid #d5e6dc;border-radius:10px;background:#f4faf6;flex-shrink:0}#satisfaction strong{font-size:14px}#satisfaction p,#satisfaction small{font-size:12px;line-height:1.6;margin:6px 0}#satisfaction form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}#satisfaction form small{width:100%}#satisfaction button{font-size:13px;padding:7px 12px}.rating-choices{display:flex;gap:7px;margin-top:8px}.rating-choices label{position:relative;cursor:pointer}.rating-choices input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.rating-choices span{display:block;font-size:30px;color:#6c7d76;line-height:1.2}.rating-choices label.selected span{color:#a16b00}.rating-choices input:focus-visible+span{outline:3px solid #12806c;border-radius:4px}.rating-choices input:disabled+span{opacity:.5}
#reopen-chat{margin:8px 16px;padding:12px 16px;border-radius:10px;background:#176859;color:white;font-size:15px;font-weight:700;flex-shrink:0}
/* When a mobile keyboard leaves a short viewport, keep the composer reachable. */
@media(max-height:480px){#panel{overflow-y:auto}#panel>header{padding:10px 16px;flex-shrink:0}#transcript{flex:1 0 70px;min-height:70px}#composer{padding:8px 12px}#preferences,footer{flex-shrink:0}}
#account-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 12px;background:#e4eee9;font-size:12px;flex-shrink:0}#account-label{overflow-wrap:anywhere}#account-open{padding:6px;background:#fff;color:#176859;border-radius:5px;flex-shrink:0;font-size:12px}#account-dialog{width:calc(100% - 24px);max-width:370px;max-height:calc(100dvh - 24px);overflow:auto;padding:18px;border:1px solid #bdd2c9;border-radius:12px;color:#224b43}#account-dialog::backdrop{background:#123b32aa}#account-dialog h2{font-size:19px;margin:0 0 10px}#account-dialog p,#account-dialog small{font-size:13px;line-height:1.6}#account-dialog label{margin-top:12px;font-size:14px}#account-dialog input{width:100%;font:inherit;font-size:16px;padding:9px;border:1px solid #9dbcb1;border-radius:6px}#account-dialog button{padding:9px;margin-top:10px;border-radius:6px;background:#e4eee9;color:#176859}#account-dialog #account-submit{background:#176859;color:white;width:100%}#account-dialog nav{display:flex;gap:8px;flex-wrap:wrap}#account-recovery-value{display:block;overflow-wrap:anywhere;user-select:all;padding:12px;background:#edf5f1;font-size:16px}#account-error{color:#a33318}
#account-required{margin:10px 14px;padding:14px;background:#eaf5f0;border:1px solid #bdd2c9;border-radius:10px;flex-shrink:0}#account-required strong{font-size:15px}#account-required p{font-size:13px;line-height:1.6;margin:7px 0}#account-start{width:100%;padding:10px;background:#176859;color:#fff;border-radius:7px}

#account-required{overflow:auto;min-height:0;flex-shrink:1}#phone-form input{width:100%;padding:10px;border:1px solid #9dbcb1;border-radius:6px;font:inherit;font-size:16px}#phone-form label{margin-top:8px}#phone-start{width:100%;padding:11px;background:#176859;color:white;border-radius:7px}#phone-forgot{padding:9px;background:transparent;color:#176859;text-decoration:underline}#account-start{background:white;color:#176859;font-size:12px}#phone-error{color:#a33318}

body.direct-chat{background:#eaf4ef}.direct-chat #panel{inset:0;margin:0 auto;max-width:760px;border-radius:0;height:100dvh}.direct-chat #close{display:none}.direct-chat.needs-account #transcript,.direct-chat.needs-account #composer,.direct-chat.needs-account #account-bar,.direct-chat.needs-account #preferences{display:none}.direct-chat.needs-account #account-required{margin:auto 16px;padding:24px}.direct-chat #panel>header{flex-shrink:0}
