.ai-chat{position:fixed;z-index:60;right:24px;bottom:24px;display:flex;align-items:flex-end;flex-direction:column;gap:12px;font-family:var(--sans)}
.ai-chat__toggle{display:grid;width:58px;height:58px;place-items:center;border:0;border-radius:50%;background:var(--accent);color:var(--accent-ink);box-shadow:0 14px 36px rgba(0,0,0,.24);cursor:pointer;font-size:24px;transition:transform .2s}
.ai-chat__toggle:hover{transform:translateY(-3px) rotate(8deg)}
.ai-chat__panel{width:min(390px,calc(100vw - 32px));height:min(580px,calc(100vh - 120px));overflow:hidden;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.25)}
.ai-chat__panel:not([hidden]){display:grid;grid-template-rows:auto auto 1fr auto;animation:chat-in .2s ease-out}
@keyframes chat-in{from{opacity:0;transform:translateY(12px) scale(.98)}}
.ai-chat__header{display:flex;padding:18px 18px 14px;align-items:center;justify-content:space-between;background:var(--ink);color:var(--paper)}
.ai-chat__header strong,.ai-chat__header span{display:block}.ai-chat__header span{margin-top:3px;font-size:11px;opacity:.72}
.ai-chat__close{width:34px;height:34px;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;cursor:pointer;font-size:22px}
.ai-chat__privacy{padding:10px 16px;background:var(--paper-soft);color:var(--muted);font-size:11px;line-height:1.4}
.ai-chat__messages{display:flex;padding:16px;overflow-y:auto;flex-direction:column;gap:10px}
.ai-chat__message{max-width:86%;padding:10px 13px;border-radius:15px;font-size:14px;line-height:1.45;white-space:pre-wrap}
.ai-chat__message--bot{align-self:flex-start;background:var(--paper-soft);border-bottom-left-radius:4px}
.ai-chat__message--user{align-self:flex-end;background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:4px}
.ai-chat__form{display:grid;padding:12px;grid-template-columns:1fr 42px;gap:8px;border-top:1px solid var(--line)}
.ai-chat__form textarea{max-height:100px;padding:10px 12px;resize:none;background:var(--paper-soft);color:var(--ink);border:1px solid var(--line);border-radius:13px;outline:0}
.ai-chat__form button{border:0;border-radius:13px;background:var(--ink);color:var(--paper);cursor:pointer}.ai-chat__form button:disabled{opacity:.5}
@media(max-width:520px){.ai-chat{right:16px;bottom:16px}.ai-chat__panel{height:min(560px,calc(100vh - 96px))}}
