/* ── Typing Indicator ── */
.typing-indicator {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 4px 0;
  width: fit-content;
}

.typing-indicator.hidden { display: none; }

.typing-indicator span {
  width: 7px;
  height: 7px;
  background: var(--blue);
  border-radius: 50%;
  animation: dot-bounce 1.2s infinite ease-in-out;
}

.typing-indicator span:nth-child(2) { animation-delay: .2s; background: var(--violet); }
.typing-indicator span:nth-child(3) { animation-delay: .4s; background: var(--cyan); }

@keyframes dot-bounce {
  0%, 60%, 100% { transform: translateY(0); opacity: .4; }
  30%            { transform: translateY(-6px); opacity: 1; }
}
