#st-speech {
  position: fixed;
  left: max(16px, env(safe-area-inset-left));
  bottom: max(16px, env(safe-area-inset-bottom));
  z-index: 9990;
  font: 16px/1.45 system-ui, sans-serif;
  color: #102020;
  text-align: left;
  letter-spacing: normal;
}
#st-speech *, #st-speech *::before, #st-speech *::after { box-sizing: border-box; }
#st-speech [hidden] { display: none !important; }
#st-speech button, #st-speech select {
  font: inherit;
  text-transform: none;
  letter-spacing: normal;
  min-height: 44px;
  margin: 0;
  border: 1px solid #527676;
  border-radius: 10px;
  padding: 9px 14px;
  background: #fff;
  color: #123b3b;
  box-shadow: none;
  cursor: pointer;
}
#st-speech button:hover:not(:disabled) { background: #e4f4f2; }
#st-speech button:disabled { opacity: .5; cursor: default; }
#st-speech :focus-visible { outline: 3px solid #a54117; outline-offset: 3px; }
#st-speech .st-speech-launch, #st-speech .st-speech-play {
  background: #004f4f;
  color: #fff;
  border-color: #004f4f;
}
#st-speech button.st-speech-launch:hover:not(:disabled), #st-speech button.st-speech-play:hover:not(:disabled) { background: #003838; }
#st-speech .st-speech-launch {
  display: flex;
  gap: 9px;
  align-items: center;
  border-radius: 24px;
  box-shadow: 0 3px 16px #0003;
  border: 2px solid #fff;
}
#st-speech .st-speech-launch.is-playing { border-color: #ff9c70; }
#st-speech svg { width: 21px; height: 21px; flex: 0 0 auto; }
#st-speech-panel {
  position: absolute;
  left: 0;
  bottom: calc(100% + 10px);
  width: min(350px, calc(100vw - 32px));
  max-height: calc(100dvh - 100px);
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid #7b9e9b;
  border-radius: 16px;
  padding: 18px;
  background: #fffaf6;
  box-shadow: 0 6px 30px #0004;
}
#st-speech .st-speech-heading { display: flex; align-items: center; gap: 8px; justify-content: space-between; }
#st-speech h2 { font: 600 18px/1.3 system-ui, sans-serif; color: #003838; margin: 0; padding: 0; text-shadow: none; }
#st-speech h2::before, #st-speech h2::after { content: none; }
#st-speech .st-speech-close { flex: 0 0 44px; padding: 0; font: 26px/1 system-ui, sans-serif; }
#st-speech p { font: inherit; font-size: 13px; line-height: 1.5; margin: 12px 0; padding: 0; color: #355252; }
#st-speech .st-speech-settings { display: grid; grid-template-columns: minmax(0, 2fr) minmax(82px, 1fr); gap: 12px; margin: 14px 0; }
#st-speech label { display: flex; flex-direction: column; gap: 5px; font-size: 14px; color: #123b3b; }
#st-speech select { width: 100%; font-size: 16px; }
#st-speech .st-speech-actions { display: flex; gap: 8px; }
#st-speech .st-speech-play { flex: 1; }
#st-speech .st-speech-selection { margin-top: 10px; width: 100%; }
#st-speech .st-speech-status { min-height: 39px; }
#st-speech a { display: inline-block; color: #005b5b; font: 13px/1.5 system-ui, sans-serif; text-decoration: underline; text-underline-offset: 3px; padding: 3px 0; }
@media print { #st-speech { display: none; } }
