/* ==========================================================================
   GENERATED FILE — DO NOT EDIT.
   Source: brand/tokens.json   Generator: brand/generate.py
   Run `python3 brand/generate.py` after changing tokens.json.
   Read brand/BRAND.md before touching Whisper's colours.
   ========================================================================== */

.waveform-bar {
  animation-duration: 1.4s;
}

/* 13 bars, tallest at the centre — same ratios as the mark. */
.waveform-bar:nth-child(1) { height: 26%; background: rgb(168, 85, 247); animation-delay: 0.54s; }
.waveform-bar:nth-child(2) { height: 40%; background: rgb(174, 84, 239); animation-delay: 0.45s; }
.waveform-bar:nth-child(3) { height: 34%; background: rgb(179, 83, 231); animation-delay: 0.36s; }
.waveform-bar:nth-child(4) { height: 56%; background: rgb(185, 82, 224); animation-delay: 0.27s; }
.waveform-bar:nth-child(5) { height: 72%; background: rgb(191, 81, 216); animation-delay: 0.18s; }
.waveform-bar:nth-child(6) { height: 90%; background: rgb(196, 80, 208); animation-delay: 0.09s; }
.waveform-bar:nth-child(7) { height: 100%; background: rgb(202, 78, 200); animation-delay: 0.0s; }
.waveform-bar:nth-child(8) { height: 90%; background: rgb(208, 77, 192); animation-delay: 0.09s; }
.waveform-bar:nth-child(9) { height: 72%; background: rgb(213, 76, 184); animation-delay: 0.18s; }
.waveform-bar:nth-child(10) { height: 56%; background: rgb(219, 75, 176); animation-delay: 0.27s; }
.waveform-bar:nth-child(11) { height: 34%; background: rgb(225, 74, 169); animation-delay: 0.36s; }
.waveform-bar:nth-child(12) { height: 40%; background: rgb(230, 73, 161); animation-delay: 0.45s; }
.waveform-bar:nth-child(13) { height: 26%; background: rgb(236, 72, 153); animation-delay: 0.54s; }

@keyframes wave {
  0%, 100% { transform: scaleY(0.42); }
  50%      { transform: scaleY(1); }
}

@media (prefers-reduced-motion: reduce) {
  .waveform-bar { animation: none; }
}
