
#openai-chat-container {
  padding: 1em;
}

#chat-window {
  /* Ensure the chat fits on small screens */
  overflow-x: hidden;
  word-break: break-word;
}
/* Thinking indicator animated dots */
.dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 4px;
  background-color: #888;
  border-radius: 50%;
  animation: bounce 1.4s infinite ease-in-out both;
}
.dot:nth-child(2) {
  animation-delay: 0.2s;
}
.dot:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes bounce {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}

#pending-file-list li {
  margin-bottom: 4px;
}

#pending-file-list button {
  margin-left: 4px;
}

.pending-file-type {
  margin-right: 4px;
  padding: 4px;
}

.pending-send-btn {
  background-color: #28a745;
  color: #fff;
  border: none;
}

.pending-send-btn:hover {
  background-color: #218838;
}


/* Upload spinner */
.upload-spinner {
  border: 2px solid #f3f3f3;
  border-top: 2px solid #555;
  border-radius: 50%;
  width: 12px;
  height: 12px;
  animation: spin 1s linear infinite;
  display: inline-block;
  margin-right: 4px;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

/* Responsive layout for input row */
.chat-input-row {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}

.chat-input-row #chat-input {
  flex: 1 1 auto;
  min-width: 0;
}

.chat-input-row button {
  flex-shrink: 0;
}

.chat-input-row #chat-file-type {
  flex-shrink: 0;
}

@media (max-width: 480px) {
  .chat-input-row #chat-input {
    flex-basis: 100%;
  }
  .chat-input-row button {
    flex-basis: auto;
  }
}
