.tc-row { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 0.75rem 1rem; }
.tc-lang { display: flex; flex-direction: column; gap: 0.25rem; min-width: 11rem; }
.tc-lang label { margin: 0; }
.tc-lang select { width: 100%; }
.tc-start { width: auto; min-width: 11rem; background: var(--pt-accent, var(--blue)); color: #fff; border-color: var(--pt-accent, var(--blue)); font-weight: 700; }
.tc-start.is-run { background: var(--red); border-color: var(--red); }
.tc-start:disabled { opacity: 0.45; cursor: not-allowed; }
.tc-status { font-size: 0.9rem; padding-bottom: 0.55rem; color: var(--text-sub); }
.tc-status[data-state="listen"] { color: var(--pt-accent, var(--blue)); font-weight: 700; }
.tc-status[data-state="voice"] { color: var(--green, #16a34a); font-weight: 700; }
.tc-status::before { content: ""; display: inline-block; width: 0.6rem; height: 0.6rem; margin-right: 0.4rem; background: currentColor; border-radius: 1px; vertical-align: baseline; }

.tc-opts { display: flex; flex-direction: column; gap: 0.4rem; margin-top: 1rem; }
.tc-more { margin-top: 1rem; border-top: 1px solid var(--border); padding-top: 0.75rem; }
.tc-more summary { cursor: pointer; font-size: 0.9rem; font-weight: 600; }
.tc-more textarea { width: 100%; margin-top: 0.6rem; font-family: inherit; }

.tc-out { width: 100%; min-height: 16rem; line-height: 1.8; resize: vertical; font-family: inherit; font-size: 16px; }
.tc-interim { min-height: 1.8em; margin-top: 0.4rem; color: var(--text-sub); font-style: italic; word-break: break-all; }
.tc-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; margin-top: 0.5rem; }
.tc-bar .btn { width: auto; }
.tc-size { display: inline-flex; align-items: center; gap: 0.4rem; font-size: 0.85rem; margin: 0 0 0 auto; font-weight: 400; }
.tc-size select { width: auto; padding: 0.35rem 0.5rem; }
.tc-count { font-size: 0.85rem; color: var(--text-sub); }

@media (max-width: 640px) {
  .tc-lang { flex: 1 1 100%; }
  .tc-start { flex: 1 1 100%; }
  .tc-status { padding-bottom: 0; }
  .tc-size { margin-left: 0; }
  .tc-out { min-height: 14rem; }
}
