.warm-chat-launcher{position:fixed;right:1rem;bottom:1rem;z-index:20;border:2px solid #fff;border-radius:999px;background:#164f62;color:#fff;padding:.9rem 1.2rem;font:700 1rem system-ui;box-shadow:0 4px 20px #0003;cursor:pointer}
.warm-chat{position:fixed;inset:auto 1rem 5rem auto;margin:0;width:min(390px,calc(100vw - 2rem));max-width:calc(100vw - 2rem);max-height:calc(100dvh - 7rem);padding:0;border:1px solid #c7d7d9;border-radius:18px;background:#fffdf8;color:#183c46;box-shadow:0 16px 64px #0003;font:1rem/1.5 system-ui;overflow:auto}
.warm-chat::backdrop{background:#12354055}
.warm-chat header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;background:#164f62;color:white;padding:1rem}
.warm-chat h2{margin:0;font:700 1.3rem system-ui;color:inherit}
.warm-chat header p{margin:.4rem 0 0;font-size:.85rem}
.warm-chat header button{border:0;background:transparent;color:white;font-size:1.6rem;cursor:pointer;min-width:44px;min-height:44px}
.warm-chat-note,.warm-chat-footer{margin:0;padding:1rem;font-size:.8rem}
.warm-chat-messages{max-height:32dvh;overflow:auto;padding:0 1rem}
.warm-chat-message{background:#edf4f3;border-radius:12px;padding:.8rem;margin-bottom:.7rem}
.warm-chat-message p{margin:0 0 .4rem}
.warm-chat-message a{display:block;margin-top:.4rem;color:#164f62;text-decoration:underline}
.warm-chat-user{background:#fff0ca;margin-left:2rem}
.warm-chat-topics{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 1rem}
.warm-chat-topics button{border:1px solid #a8bfc0;border-radius:12px;background:white;color:#164f62;font:600 .9rem system-ui;padding:.65rem .8rem;min-height:44px;cursor:pointer;text-align:left}
.warm-chat-topics button:hover{background:#fff0ca}
.warm-chat button:focus-visible,.warm-chat a:focus-visible,.warm-chat-launcher:focus-visible{outline:3px solid #d75d19;outline-offset:3px}
@media(max-width:480px){.warm-chat{inset:auto 1rem 1rem auto;max-height:calc(100dvh - 2rem)}}
