/* ── TTS Audio Player ─────────────────────────────────── */
.tts-audio {
  width: 100%;
  height: 40px;
  accent-color: #4f46e5;
  border-radius: 8px;
  outline: none;
}

/* ── Range Slider ─────────────────────────────────────── */
.tts-range {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 4px;
  background: #27272a;
  border-radius: 99px;
  outline: none;
  cursor: pointer;
}

.tts-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #4f46e5;
  cursor: pointer;
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.2);
  transition: background 0.2s, box-shadow 0.2s;
}

.tts-range::-webkit-slider-thumb:hover {
  background: #6366f1;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.25);
}

.tts-range::-moz-range-thumb {
  width: 14px;
  height: 14px;
  border: none;
  border-radius: 50%;
  background: #4f46e5;
  cursor: pointer;
}

/* ── Waveform Bars ────────────────────────────────────── */
.tts-wave-bar {
  width: 3px;
  border-radius: 99px;
  background: #4f46e5;
  opacity: 0.5;
  transform-origin: bottom center;
  transition: opacity 0.3s;
}

@keyframes tts-pulse {
  0%, 100% { transform: scaleY(0.25); opacity: 0.4; }
  50%       { transform: scaleY(1);    opacity: 0.9; }
}

.tts-wave-bar.playing {
  animation: tts-pulse 0.7s ease-in-out infinite;
}
