src/components/TranscriptViewer.css
.TranscriptViewer {
  font-family: "Sarabun", sans-serif;
  letter-spacing: 0.1ch;
  font-size: 20px;
  padding-bottom: 75vh;
}

.TranscriptItem {
  margin-bottom: 0.5rem;
  display: flex;
}

.TranscriptItem__content {
  padding: 0.75rem 1rem;
  border-radius: 1rem;
  border: 1px solid transparent;
  position: relative;
}

.TranscriptItem__content[data-transcribed="true"] {
  border-color: var(--bs-border-color);
}

.TranscriptItem__content[data-needs-correction="true"] {
  color: var(--bs-yellow);
}

.TranscriptItem__content[data-editing="true"] {
  border-color: var(--bs-yellow);
}

.TranscriptItem__time {
  display: block;
  color: var(--bs-gray);
  font-size: 0.5em;
  position: absolute;
  bottom: 0.2rem;
  right: 0.7rem;
  opacity: 0;
  user-select: none;
}

.TranscriptItem__content:hover .TranscriptItem__time {
  opacity: 1;
}

.TranscriptViewerOptions {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: #000;
  padding: 0.5rem;
  transform: translateY(100%) translateY(-0.5rem);
  transition: all 0.3s;
  opacity: 0;
}

.TranscriptViewerOptions:hover,
.TranscriptViewerOptions:focus-within,
.TranscriptViewerOptions[data-editable="true"] {
  transform: translateY(0);
  opacity: 1;
}
