.chat{z-index:50;font-family:var(--body);flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:16px;right:16px}.chat[hidden],.chat [hidden]{display:none!important}.chat__launcher{background:var(--ink);color:var(--paper);cursor:pointer;font:600 .98rem var(--body);border:1px solid #e5a63a73;border-radius:999px;align-items:center;gap:.5rem;padding:.75rem 1.1rem;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 6px 20px #12231f47}.chat__launcher:hover{background:var(--lake)}.chat__launcher:before{content:"";pointer-events:none;background:linear-gradient(100deg,#0000 12%,#e5a63a38 32%,#e5a63a9e 50%,#e5a63a38 68%,#0000 88%);animation:7s ease-in-out 2s 8 chat-shimmer;position:absolute;inset:0;transform:translate(-130%)}@keyframes chat-shimmer{0%{transform:translate(-130%)}64%,to{transform:translate(130%)}}.chat--open .chat__launcher:before{animation:none}.chat__launcher svg,.chat__launcher span{position:relative}.chat__launcher svg{width:20px;height:20px}.chat--open .chat__launcher span{display:none}.chat__nudge{border:1px solid var(--rule);background:var(--white);border-radius:10px;max-width:260px;padding:.85rem 2.2rem .85rem 1rem;position:relative;box-shadow:0 6px 20px #12231f29}.chat__nudge-open{color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0;font-size:.95rem}.chat__nudge-close,.chat__close{color:inherit;cursor:pointer;background:0 0;border:0;font-size:1.4rem;line-height:1}.chat__actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.chat__reset{color:var(--paper);cursor:pointer;font:500 .8rem var(--body);background:0 0;border:1px solid #f5f1e859;border-radius:999px;padding:.25rem .6rem}.chat__reset:hover{border-color:var(--paper)}.chat__nudge-close{color:var(--muted);position:absolute;top:.4rem;right:.5rem}.chat__panel{border:1px solid var(--rule);background:var(--white);border-radius:12px;flex-direction:column;width:min(380px,100vw - 32px);height:min(560px,100dvh - 110px);display:flex;overflow:hidden;box-shadow:0 12px 40px #12231f40}.chat__head{background:var(--ink);color:var(--paper);justify-content:space-between;align-items:flex-start;gap:1rem;padding:.9rem 1rem;display:flex}.chat__title{font-family:var(--display);font-size:1.05rem;font-weight:600}.chat__sub{color:var(--mist);font-size:.82rem}.chat__log{background:var(--paper);flex-direction:column;flex:1;gap:.6rem;padding:1rem;display:flex;overflow-y:auto}.chat__msg{overflow-wrap:anywhere;border-radius:10px;max-width:88%;padding:.6rem .85rem;font-size:.95rem;line-height:1.5}.chat__msg--bot{border:1px solid var(--rule);background:var(--white);align-self:flex-start}.chat__msg--user{background:var(--lake);color:var(--white);align-self:flex-end}.chat__msg a{color:var(--lake);font-weight:500}.chat__msg--user a{color:inherit}.chat__msg--typing{gap:4px;padding-block:.85rem;display:flex}.chat__msg--typing span{background:var(--muted);border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite chat-dot}.chat__msg--typing span:nth-child(2){animation-delay:.15s}.chat__msg--typing span:nth-child(3){animation-delay:.3s}@keyframes chat-dot{0%,80%,to{opacity:.3}40%{opacity:1}}.chat__turnstile{padding:.5rem 1rem 0}.chat__turnstile:empty{display:none}.chat__form{border-top:1px solid var(--rule);align-items:flex-end;gap:.5rem;padding:.75rem;display:flex}.chat__label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.chat__form textarea{background:var(--white);min-height:2.6rem;color:var(--ink);font:inherit;resize:none;border:1px solid #a9a290;border-radius:6px;flex:1;padding:.6rem .75rem;font-size:1rem}.chat__form textarea:focus{border-color:var(--lake);outline:2px solid var(--lake);outline-offset:0}.chat__send{background:var(--sun);color:var(--ink);cursor:pointer;font:600 .95rem var(--body);border:0;border-radius:6px;padding:.65rem 1rem}.chat__send:disabled{opacity:.6;cursor:wait}.chat__notice{color:var(--muted);padding:0 .75rem .7rem;font-size:.78rem}.chat__notice a{color:inherit}@media (width<=36rem){.chat{bottom:12px;right:12px}.chat--open{left:12px}.chat__panel{width:100%;height:calc(100dvh - 90px)}}@media (prefers-reduced-motion:reduce){.chat__msg--typing span,.chat__launcher:before{animation:none}}
