#chat-attachments { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 6px; max-height: 150px; overflow-y: auto; min-width: 0; }
#chat-attachments[hidden], #chat-upload-status[hidden], #chat-file-input { display: none; }
#chat-upload-status { grid-column: 1 / -1; margin: 0; font-size: 12px; color: var(--muted); }
.chat-attachment-chip { display: flex; align-items: center; gap: 6px; max-width: 100%; padding: 5px 8px; background: var(--raised); border: 1px solid var(--line); border-radius: 10px; }
.chat-attachment-chip img { width: 40px; height: 40px; object-fit: cover; border-radius: 5px; }
.chat-attachment-chip span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.chat-attachment-chip button { min-height: 32px; padding: 0 9px; border: 0; border-radius: 8px; background: var(--panel); color: var(--text); }
#chat-attach { min-width: 40px; padding: 0 8px; font-size: 23px; }
.chat-file-drag { outline: 3px dashed var(--blue); outline-offset: -5px; }
.chat-file-link { display: block; margin-top: 8px; color: var(--blue); overflow-wrap: anywhere; }
.bubble.user .chat-file-link { color: inherit; text-decoration: underline; }
@media (min-width: 900px) {
  body:has(#chat-view.active) .mobile-chat-tools { bottom: calc(var(--composer-height, 110px) + 14px); }
}
@media (max-width: 899px) {
  #chat-view #composer { flex-wrap: wrap; }
  #chat-attachments, #chat-upload-status { flex: 1 0 100%; }
}
@media (max-width: 600px) {
  #composer #chat-attachments, #composer #chat-upload-status { grid-column: 1 / -1; }
}
