.image-add {
  font-size: 20px;
  line-height: 1;
  border: 1px solid var(--line, #d9e3d6);
  background: var(--soft, #eef2eb);
  color: var(--text, #293b35);
  border-radius: 9px;
  min-width: 32px;
  min-height: 32px;
  padding: 4px 8px;
}
.composer {
  gap: 6px;
}
#visitor-chat.has-images textarea,
#visitor-chat.has-images .composer,
#visitor-chat.has-images #composer-hint {
  grid-row: 2;
}
.attachment-tray {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  grid-column: 1 / -1;
  grid-row: 1;
  padding: 2px 0 8px;
}
.attachment-tray[hidden],
input[type="file"][hidden] {
  display: none;
}
.attachment-chip {
  position: relative;
  width: 66px;
  height: 66px;
  border-radius: 10px;
  border: 1px solid var(--line, #d9e3d6);
  background: var(--surface, #fff);
  overflow: hidden;
}
.attachment-chip img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.attachment-chip button {
  position: absolute;
  right: 2px;
  top: 2px;
  padding: 0;
  min-width: 22px;
  height: 22px;
  border: 0;
  border-radius: 50%;
  color: white;
  background: #000b;
  font-size: 17px;
}
.image-progress {
  grid-column: 1 / -1;
  color: var(--muted, #697c70);
  font-size: 11px;
}
.image-progress:empty {
  display: none;
}
.message-images {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin: 5px 0 9px;
}
.image-thumb {
  padding: 0;
  border: 1px solid var(--line, #d9e3d6);
  background: var(--soft, #eef2eb);
  border-radius: 10px;
  overflow: hidden;
  max-width: 150px;
}
.image-thumb img {
  display: block;
  max-width: 140px;
  max-height: 140px;
  object-fit: contain;
}
.image-dialog {
  max-width: 95vw;
  max-height: 92dvh;
  padding: 12px;
  border: 1px solid var(--line, #d9e3d6);
  border-radius: 14px;
  background: var(--bg, #f7f9f5);
  color: var(--text, #293b35);
}
.image-dialog img {
  display: block;
  max-width: 85vw;
  max-height: 78dvh;
  object-fit: contain;
  margin-top: 10px;
}
.image-dialog::backdrop {
  background: #0008;
}
@media (max-width: 420px) {
  #composer-hint {
    font-size: 9px;
    max-width: 140px;
  }
  .image-thumb img {
    max-width: 110px;
    max-height: 110px;
  }
}
