.speech-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin: 20px auto 0;
}

.speech-controls button {
  border: 1px solid var(--line);
  background: transparent;
  color: var(--ink);
  border-radius: 999px;
  padding: 8px 13px;
  cursor: pointer;
  font: 600 10px/1 system-ui, sans-serif;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.speech-controls .speech-primary {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
}

.speech-controls button:disabled {
  cursor: not-allowed;
  opacity: .45;
}

.speech-status {
  flex-basis: 100%;
  color: var(--muted);
  font: 11px/1.5 system-ui, sans-serif;
  margin-top: 2px;
}

.prose .speech-reading {
  background: rgba(168, 77, 67, .13);
  border-radius: 2px;
  box-shadow: 0 0 0 6px rgba(168, 77, 67, .13);
  transition: background-color 180ms ease, box-shadow 180ms ease;
}

@media (prefers-reduced-motion: reduce) {
  .prose .speech-reading {
    transition: none;
  }
}
