/* ── Read Aloud: secondary controls (pause/speed/progress) ── */
#blum-a11y-widget .blum-a11y-tts-extra {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin-top: 10px !important;
  padding: 12px !important;
  background: #f8fafc !important;
  background-color: #f8fafc !important;
  border: 1px solid var(--blum-a11y-border) !important;
  border-radius: 10px !important;
}

#blum-a11y-widget .blum-a11y-tts-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

#blum-a11y-widget .blum-a11y-tts-pause {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  flex-shrink: 0 !important;
  height: 34px !important;
  padding: 0 14px !important;
  margin: 0 !important;
  border: none !important;
  border-radius: 17px !important;
  background: var(--blum-a11y-color) !important;
  background-color: var(--blum-a11y-color) !important;
  color: #fff !important;
  cursor: pointer !important;
  font-size: .82rem !important;
  font-weight: 500 !important;
  transition: background .15s, transform .1s !important;
  line-height: 1 !important;
}
#blum-a11y-widget .blum-a11y-tts-pause:hover:not(:disabled) {
  background: var(--blum-a11y-color-hover) !important;
  background-color: var(--blum-a11y-color-hover) !important;
}
#blum-a11y-widget .blum-a11y-tts-pause:active:not(:disabled) {
  transform: scale(.96) !important;
}
#blum-a11y-widget .blum-a11y-tts-pause:disabled {
  background: var(--blum-a11y-border) !important;
  background-color: var(--blum-a11y-border) !important;
  color: #94a3b8 !important;
  cursor: default !important;
}
#blum-a11y-widget .blum-a11y-tts-pause[aria-pressed="true"] {
  background: #475569 !important;
  background-color: #475569 !important;
}
#blum-a11y-widget .blum-a11y-tts-pause__icon {
  display: inline-block !important;
  width: 0 !important;
  height: 0 !important;
  border-style: solid !important;
  border-width: 5px 0 5px 8px !important;
  border-color: transparent transparent transparent currentColor !important;
}
#blum-a11y-widget .blum-a11y-tts-pause[aria-pressed="true"] .blum-a11y-tts-pause__icon {
  width: 8px !important;
  height: 10px !important;
  border-width: 0 2px !important;
  border-style: solid !important;
  border-color: currentColor !important;
  background: currentColor !important;
}

#blum-a11y-widget .blum-a11y-tts-rate {
  display: flex !important;
  gap: 2px !important;
  padding: 3px !important;
  border-radius: 17px !important;
  background: #fff !important;
  background-color: #fff !important;
  border: 1px solid var(--blum-a11y-border) !important;
}
#blum-a11y-widget .blum-a11y-tts-rate__btn {
  flex: 1 1 0 !important;
  padding: 6px 4px !important;
  margin: 0 !important;
  border: none !important;
  border-radius: 14px !important;
  background: none !important;
  background-color: transparent !important;
  cursor: pointer !important;
  font-size: .78rem !important;
  font-weight: 500 !important;
  color: var(--blum-a11y-text) !important;
  transition: background .15s, color .15s !important;
  line-height: 1 !important;
  text-align: center !important;
}
#blum-a11y-widget .blum-a11y-tts-rate__btn:hover {
  background: #f1f5f9 !important;
  background-color: #f1f5f9 !important;
}
#blum-a11y-widget .blum-a11y-tts-rate__btn.is-active {
  background: var(--blum-a11y-color) !important;
  background-color: var(--blum-a11y-color) !important;
  color: #fff !important;
}

#blum-a11y-widget .blum-a11y-tts-progress {
  position: relative !important;
  width: 100% !important;
  height: 8px !important;
  border-radius: 999px !important;
  background: var(--blum-a11y-border) !important;
  overflow: hidden !important;
}
#blum-a11y-widget .blum-a11y-tts-progress__fill {
  height: 100% !important;
  width: 0% !important;
  background: var(--blum-a11y-color) !important;
  border-radius: 999px !important;
  transition: width .2s linear !important;
}
#blum-a11y-widget .blum-a11y-tts-progress.is-indeterminate .blum-a11y-tts-progress__fill {
  width: 40% !important;
  transition: none !important;
  animation: blum-a11y-tts-indeterminate 1.2s ease-in-out infinite !important;
}
@media (prefers-reduced-motion: reduce) {
  #blum-a11y-widget .blum-a11y-tts-progress.is-indeterminate .blum-a11y-tts-progress__fill {
    animation: none !important;
    width: 100% !important;
    opacity: .5 !important;
  }
}
@keyframes blum-a11y-tts-indeterminate {
  0%   { margin-left: 0%; }
  50%  { margin-left: 60%; }
  100% { margin-left: 0%; }
}

#blum-a11y-widget .blum-a11y-tts-status {
  flex: 1 !important;
  margin: 0 !important;
  font-size: .78rem !important;
  color: var(--blum-a11y-text) !important;
  opacity: .75 !important;
  min-height: 1em !important;
  text-align: right !important;
}

/* ── Currently-spoken text highlight (page content, not the widget) ── */
::highlight(blum-a11y-tts-current) {
  background-color: #fde68a;
  color: #1e293b;
}
