.chat-intro{padding:70px 24px 180px;max-width:850px}.chat-intro h1{font-size:clamp(2.5rem,6vw,4.5rem)}.hm-chat{font-family:Arial,sans-serif;color:#173d34;font-size:15px;line-height:1.5}.hm-chat *{box-sizing:border-box}.hm-chat [hidden]{display:none!important}.hm-launch{position:fixed;right:24px;bottom:24px;z-index:1000;display:flex;align-items:center;gap:12px;background:#173d34;color:white;padding:16px 22px;border:1px solid #365d51;border-radius:30px;box-shadow:0 8px 28px #0003;font:700 15px Arial;cursor:pointer}.hm-ai{font-size:10px;background:#dfb15b;color:#173d34;padding:2px 5px;border-radius:4px}.hm-panel{position:fixed;z-index:1001;right:24px;bottom:92px;width:390px;max-width:calc(100% - 32px);height:min(650px,calc(100dvh - 120px));background:#f8f7f2;border:1px solid #c8d2c9;border-radius:20px;box-shadow:0 20px 70px #0003;display:flex;flex-direction:column;overflow:hidden}.hm-header{display:flex;gap:10px;align-items:center;padding:18px;background:#173d34;color:#fff}.hm-header strong{font-size:17px}.hm-header small{display:block;font-size:11px;color:#d4e4dc}.hm-avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:#dfb15b;color:#173d34;font-weight:800}.hm-header button{border:0;background:none;color:#fff;cursor:pointer;padding:5px;font:inherit}.hm-header .hm-reset{margin-left:auto;font-size:11px;text-decoration:underline}.hm-header .hm-close{font-size:26px;line-height:1}.hm-messages{flex:1;min-height:120px;overflow-y:auto;padding:18px;overscroll-behavior:contain}.hm-message{max-width:94%;margin-bottom:16px;padding:12px 14px;border-radius:15px;background:#fff;border:1px solid #e0e5dd;overflow-wrap:anywhere}.hm-message p{font-size:14px;line-height:1.6;white-space:pre-line;margin:4px 0}.hm-speaker{font-size:10px;font-weight:700;letter-spacing:.03em;color:#547267}.hm-user{margin-left:auto;background:#e5eee7;border-color:#d3e0d5}.hm-message a{display:block;font-size:12px;color:#235f49;margin-top:9px;font-weight:700;text-underline-offset:3px}.hm-suggestions{display:flex;gap:6px;flex-wrap:wrap;padding:0 18px 12px}.hm-suggestions button{border:1px solid #b8ccbe;border-radius:16px;background:#fff;color:#214638;padding:7px 10px;font:11px Arial;cursor:pointer}.hm-form{padding:10px 16px 0;border-top:1px solid #e0e5dd;background:#fff}.hm-form label{font-size:11px;display:block;margin-bottom:4px}.hm-input-row{display:flex;align-items:center;gap:8px}.hm-input-row textarea{resize:none;min-height:0;height:64px;margin:0;flex:1;min-width:0;width:100%;border:1px solid #c4d2c9;border-radius:10px;padding:9px;font:14px/1.4 Arial;background:#fafbf8;color:#173d34}.hm-send{flex:none;background:#173d34;color:white;border:0;border-radius:50%;width:38px;height:38px;font-size:23px;cursor:pointer}.hm-status{font-size:11px;color:#54695d;margin:4px 0;min-height:16px}.hm-foot{background:#fff;padding:8px 16px 14px;font-size:10px;line-height:1.5;color:#66776b}.hm-foot a{color:#315941}.hm-chat button:disabled{opacity:.5;cursor:wait}.hm-chat button:focus-visible,.hm-chat textarea:focus-visible,.hm-chat a:focus-visible{outline:3px solid #b78424;outline-offset:3px}@media(max-width:480px){.hm-panel{right:10px;bottom:80px;max-width:calc(100% - 20px);height:calc(100dvh - 100px)}.hm-launch{right:12px;bottom:14px;padding:13px 18px}}


/* Fit the visible screen, including Safari's keyboard and safe areas. */
.hm-header,.hm-form,.hm-foot,.hm-suggestions{flex-shrink:0}
.hm-input-row textarea{font-size:16px}
@media(max-width:600px), (max-height:500px) and (max-width:950px){
 .hm-launch{right:max(12px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom))}
 .hm-chat.hm-open .hm-launch{display:none}
 .hm-panel{top:calc(var(--hm-view-top,0px) + 8px + env(safe-area-inset-top));left:calc(var(--hm-view-left,0px) + 8px + env(safe-area-inset-left));right:auto;bottom:auto;width:calc(var(--hm-view-width,100vw) - 16px - env(safe-area-inset-left) - env(safe-area-inset-right));max-width:none;height:calc(var(--hm-view-height,100dvh) - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:720px;border-radius:16px;overflow-y:auto;overscroll-behavior:contain}
 .hm-header{padding:10px 12px;gap:8px}
 .hm-header .hm-close{min-width:44px;min-height:44px}
 .hm-messages{min-height:64px;padding:12px}
 .hm-suggestions{padding:0 12px 8px}
 .hm-form{padding:8px 12px 0}
 .hm-input-row textarea{height:48px}
 .hm-foot{padding:6px 12px 10px}
 .hm-chat.hm-short .hm-suggestions{display:none}
 .hm-chat.hm-short .hm-messages{flex:none;max-height:120px}
}
