/* ===== ЖИВОЙ ЧАТ: кнопка входа + экран диалога (поверх сцены агента) ===== */

/* кнопка входа в чат (в профиле агента) */
.chat-enter{margin:8px 16px 0;text-align:center;font-family:'JetBrains Mono',monospace;font-size:13px;
  letter-spacing:.14em;color:#fff;border:1px solid var(--accent);
  background:color-mix(in srgb, var(--bordeaux) 30%, transparent);padding:14px;cursor:pointer;min-height:48px;
  box-shadow:0 0 18px color-mix(in srgb, var(--neon) 18%, transparent)}
.chat-enter:active{transform:scale(.98)}

/* нижний лист с диалогом — агент остаётся виден сверху */
#ui-chat .chat-wrap{position:absolute;left:0;right:0;bottom:0;top:48%;z-index:11;display:flex;flex-direction:column;
  background:linear-gradient(180deg,rgba(8,8,10,0) 0%,rgba(8,8,10,.7) 12%,rgba(8,8,10,.93) 30%,#08080a 100%);
  padding-bottom:calc(12px + var(--safe-b))}

.chat-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:8px;
  padding:14px 16px 6px}

.cmsg{max-width:84%;padding:9px 12px;font-size:13px;line-height:1.45;border:1px solid var(--line);
  white-space:pre-wrap;word-break:break-word;animation:fadeIn .22s ease}
.cmsg.from-agent{align-self:flex-start;color:var(--bone);background:rgba(255,255,255,.05)}
.cmsg.from-user{align-self:flex-end;color:#fff;border-color:var(--bordeaux);
  background:color-mix(in srgb, var(--bordeaux) 32%, transparent);
  box-shadow:0 0 10px color-mix(in srgb, var(--neon) 14%, transparent)}

/* индикатор печати */
.cmsg.typing{display:flex;gap:5px;align-items:center;align-self:flex-start}
.cmsg.typing .tdot{width:6px;height:6px;border-radius:50%;background:var(--neon-soft);opacity:.35;
  animation:tblink 1s infinite}
.cmsg.typing .tdot:nth-child(2){animation-delay:.2s}
.cmsg.typing .tdot:nth-child(3){animation-delay:.4s}
@keyframes tblink{0%,60%,100%{opacity:.3}30%{opacity:1}}

/* строка статуса / CTA на исчерпанном лимите */
.chat-status{display:none;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.1em;
  color:var(--muted);text-align:center;padding:4px 16px}
.chat-status.on{display:block}
.chat-status.cta{color:#fff;cursor:pointer;border:1px dashed var(--accent);margin:4px 16px;padding:11px;
  background:color-mix(in srgb, var(--bordeaux) 18%, transparent);min-height:42px;letter-spacing:.12em}
.chat-status.cta:active{transform:scale(.98)}

/* поле ввода */
.chat-input-row{display:flex;gap:8px;align-items:flex-end;padding:6px 12px 0}
.chat-input{flex:1;resize:none;font-family:'Manrope',sans-serif;font-size:14px;line-height:1.4;color:var(--bone);
  background:rgba(12,9,12,.7);border:1px solid var(--line);padding:11px 12px;max-height:110px;outline:none}
.chat-input:focus{border-color:var(--accent);box-shadow:0 0 12px color-mix(in srgb, var(--neon) 16%, transparent)}
.chat-input:disabled{opacity:.5}
.chat-send{flex:0 0 48px;width:48px;min-height:48px;border:1px solid var(--accent);color:#fff;cursor:pointer;
  background:color-mix(in srgb, var(--bordeaux) 30%, transparent);font-size:18px;
  display:flex;align-items:center;justify-content:center}
.chat-send:active{transform:scale(.95)}
.chat-send:disabled{opacity:.4;cursor:default}

/* на экране чата прячем плавающий контакт-FAB — он перекрывал «отправить» */
body.in-chat .contact-fab{display:none}

@media (min-width:900px){
  #ui-chat .chat-wrap{top:auto;height:72%;left:auto;right:0;width:440px;
    background:linear-gradient(90deg,rgba(8,8,10,0) 0%,rgba(8,8,10,.92) 14%,#0a0809 38%);
    border-left:1px solid var(--line)}
}
