.voice-panel { border: 1px solid var(--c-line); border-radius: var(--r-m); background: var(--c-surface); padding: var(--s-s) var(--s-m); }
.voice-panel summary { cursor: pointer; font-weight: 600; color: var(--c-primary); }
.voice-body { display: flex; flex-direction: column; gap: var(--s-s); padding-top: var(--s-s); }
.voice-hint, .voice-note, .voice-said { margin: 0; font-size: 13px; color: var(--c-textSecondary); }
.voice-text { width: 100%; box-sizing: border-box; font: inherit; }
.voice-actions { display: flex; flex-wrap: wrap; gap: var(--s-s); }
.voice-error { margin: 0; color: var(--c-warning); }
.voice-error:empty { display: none; }
.voice-lines { display: flex; flex-direction: column; gap: var(--s-s); }
.voice-line { display: flex; flex-direction: column; gap: 4px; padding: var(--s-s) 0; border-top: 1px solid var(--c-line); }
.voice-controls { display: grid; grid-template-columns: minmax(0, 1fr) 84px auto auto; gap: var(--s-xs); align-items: center; }
.voice-controls select { min-width: 0; width: 100%; }
.voice-controls input { width: 100%; box-sizing: border-box; }
.voice-note { color: var(--c-warning); }
.voice-note:empty { display: none; }
@media (max-width: 480px) { .voice-controls { grid-template-columns: 1fr auto auto; } .voice-controls select { grid-column: 1 / -1; } }
.voice-panel .btn { width: auto; min-width: 0; padding: 0 var(--s-m); }
