/* ═══ CHAT ═══ */
.chat-topbar{font-size:.92rem;font-weight:800;padding:10px 14px 6px;color:var(--text);letter-spacing:.3px}
.chat-msgs{flex:1;overflow-y:auto;padding:10px 14px;display:flex;flex-direction:column;gap:8px;min-height:300px;max-height:calc(100vh - 280px - env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch}
.chat-empty{text-align:center;color:var(--muted);padding:2rem;font-size:.82rem;margin:auto}
.chat-msg{display:flex;flex-direction:column;max-width:85%}
.chat-msg.me{align-self:flex-end;align-items:flex-end}
.chat-msg.other{align-self:flex-start;align-items:flex-start}
.chat-msg.ai-msg{align-self:flex-start;align-items:flex-start;max-width:92%}
.chat-bubble{padding:9px 12px;border-radius:16px;font-size:.82rem;line-height:1.45;position:relative;word-break:break-word}
.chat-msg.me .chat-bubble{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-radius:16px 16px 4px 16px}
.chat-msg.other .chat-bubble{background:var(--card);border:1px solid var(--border);border-radius:16px 16px 16px 4px}
.chat-msg.ai-msg .chat-bubble{background:rgba(124,111,255,.12);border:1px solid rgba(124,111,255,.35);border-radius:16px 16px 16px 4px;border-left:3px solid var(--accent)}
.bubble-own{border:1px solid rgba(251,191,36,.3)!important}
.chat-sender{font-size:.65rem;font-weight:700;color:var(--accent);margin-bottom:3px}
.chat-own-badge{background:linear-gradient(135deg,#7c6fff,#fbbf24);color:#000;font-size:.52rem;font-weight:800;padding:1px 5px;border-radius:4px;margin-right:4px}
.chat-text{word-break:break-word}
.ai-label{font-size:.65rem;font-weight:700;color:var(--accent);margin-bottom:3px;display:flex;align-items:center;gap:4px}
.ai-typing{display:flex;gap:4px;align-items:center;padding:4px 0}
.ai-typing span{width:7px;height:7px;border-radius:50%;background:var(--accent);display:inline-block;animation:aiDot 1.2s infinite}
.ai-typing span:nth-child(2){animation-delay:.2s}
.ai-typing span:nth-child(3){animation-delay:.4s}
@keyframes aiDot{0%,80%,100%{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}
.chat-reply-prev{font-size:.68rem;color:rgba(255,255,255,.55);border-left:2px solid rgba(255,255,255,.3);padding:2px 6px;margin-bottom:5px;border-radius:0 4px 4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-meta{display:flex;align-items:center;gap:5px;margin-top:4px}
.chat-time{font-size:.58rem;color:rgba(255,255,255,.35)}
.chat-msg.other .chat-time,.chat-msg.ai-msg .chat-time{color:var(--muted)}
.chat-del-btn,.chat-reply-btn{background:none;border:none;cursor:pointer;font-size:.68rem;opacity:.55;padding:2px 3px;transition:.2s}
.chat-del-btn:hover,.chat-reply-btn:hover{opacity:1}
.chat-reply-box{display:flex;align-items:center;gap:8px;padding:6px 14px;background:rgba(124,111,255,.08);border-top:1px solid rgba(124,111,255,.18);font-size:.72rem;color:var(--accent)}
.chat-reply-box button{background:none;border:none;color:var(--muted);cursor:pointer;font-size:.9rem;margin-left:auto}
.emoji-bar{display:flex;gap:5px;padding:6px 14px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.emoji-bar::-webkit-scrollbar{display:none}
.emoji-btn{background:rgba(255,255,255,.05);border:1px solid var(--border);border-radius:7px;padding:4px 7px;font-size:1rem;cursor:pointer;flex-shrink:0;transition:.2s}
.emoji-btn:active{background:rgba(124,111,255,.2)}
.chat-input-row{display:flex;gap:8px;padding:8px 14px;background:var(--card);border-top:1px solid var(--border);align-items:flex-end}
.chat-input-row input{flex:1;background:var(--input-bg);border:1px solid var(--border);border-radius:22px;padding:9px 14px;color:var(--text);font-size:.84rem;outline:none;transition:border .2s;-webkit-appearance:none}
.chat-input-row input:focus{border-color:var(--accent)}
.chat-send-btn{background:linear-gradient(135deg,var(--accent),var(--accent2));border:none;color:#fff;width:38px;height:38px;border-radius:50%;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:.2s}
.chat-send-btn:active{opacity:.8;transform:scale(.93)}
.chat-own-ctrl{padding:0 14px 4px;min-height:4px}
.ai-hint{font-size:.65rem;color:var(--muted);text-align:center;padding:4px 0 8px;opacity:.7}

