.typing-dots {
  display: inline-flex;
  align-items: center;
  height: 20px;
  margin-left: 4px;
  position: relative;
  top: 3px;
}

.typing-dots span {
  display: inline-block;
  width: 3px;
  height: 3px;
  margin-right: 2px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.8);
  opacity: 0.4;
}

.typing-dots span:nth-child(1) {
  animation: pulse 1.5s infinite 0s;
}

.typing-dots span:nth-child(2) {
  animation: pulse 1.5s infinite 0.3s;
}

.typing-dots span:nth-child(3) {
  animation: pulse 1.5s infinite 0.6s;
  margin-right: 0;
}

@keyframes pulse {
  0%, 100% {
    opacity: 0.4;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
}

