/* chat.css — the chat screen built by chat.js. Tokens only (theme.css).
   The input row is pinned to the bottom of the screen above the bar, and the
   transcript scrolls; on mobile the textarea stays 16px so iOS never zooms. */
.ga-chat{display:flex;flex-direction:column;height:100%}
.ga-chat-list{flex:1 1 auto;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;
  -webkit-overflow-scrolling:touch}
.ga-msg{max-width:min(620px,92%);padding:9px 12px;border-radius:9px;
  background:var(--void-deep);border:1px solid var(--teal-trace)}
.ga-msg.ga-user{align-self:flex-end;border-left:2px solid var(--teal)}
.ga-msg.ga-assistant{align-self:flex-start;border-left:2px solid var(--teal-dim)}
.ga-msg.ga-error{align-self:flex-start;border-color:var(--err);border-left:2px solid var(--err)}
.ga-who{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin-bottom:4px}
.ga-msg.ga-error .ga-who{color:var(--err)}
.ga-body{font-size:13px;line-height:1.6;color:var(--txt);white-space:pre-wrap;word-break:break-word}
.ga-shot{display:block;max-width:100%;border-radius:7px;border:1px solid var(--teal-trace)}
.ga-cap{margin-top:5px;font-size:10px;color:var(--dim);letter-spacing:.06em}
.ga-chat-form{flex:0 0 auto;display:flex;gap:8px;align-items:flex-end;padding:10px 12px;
  border-top:1px solid var(--teal-trace);background:var(--glass)}
.ga-chat-input{flex:1 1 auto;min-width:0;resize:none;max-height:120px;font-size:16px;line-height:1.5}
.ga-chat-eye{flex:0 0 auto;font-size:16px;padding:10px 12px}
.ga-chat-send{flex:0 0 auto}
