/* Live microphone signal; bar heights come from Web Audio, never CSS keyframes. */
.voice-area .live-recorder { padding:16px; margin:10px 0; border:1px solid #d9dfe8; border-radius:14px; background:#f7f9fc; color:#202630; }
.voice-record-meta { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:500; }
.voice-record-meta time { margin-left:auto; font-variant-numeric:tabular-nums; color:#626b7b; }
.voice-record-dot { width:7px; height:7px; background:#d34949; border-radius:50%; }
.voice-wave { display:flex; align-items:center; justify-content:center; gap:3px; height:44px; width:100%; margin:10px 0; overflow:hidden; }
.voice-wave i { display:block; width:4px; max-width:5px; flex:1; height:3px; border-radius:4px; background:#285be3; }
.live-recorder[data-paused=true] .voice-wave i { background:#8992a2; }
.voice-record-controls { display:flex; align-items:center; gap:6px; }
.voice-record-controls button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-width:40px; height:40px; border-radius:50%; color:#454f60; background:#e9edf4; }
.voice-record-controls button:hover { background:#dfe5f0; }
.voice-record-controls .voice-send { margin-left:auto; border-radius:24px; background:#2459e4; color:white; padding:0 14px; font-size:12px; font-weight:600; }
.voice-record-controls .voice-send:hover { background:#1947bc; }
.voice-private-note { margin:12px 0 0; font-size:11px; line-height:1.5; color:#667080; }
.voice-review-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:10px; }
.voice-review-actions .primary { font-size:12px; padding:9px 12px; min-height:40px; background:#2459e4; color:#fff; border-radius:8px; }
.voice-area .voice-message { background:#f7f9fc; color:#202630; border:1px solid #d9dfe8; border-radius:12px; }
.voice-area .voice-message textarea { color:#202630; background:white; width:100%; border:1px solid #d9dfe8; border-radius:8px; padding:10px; }
.voice-processing { display:flex; gap:8px; align-items:center; color:#3a4e70; font-size:13px; }
.voice-processing .spinner { width:14px; height:14px; }
@media(max-width:600px){.voice-record-controls button{min-width:44px;height:44px}.voice-record-controls .voice-send{font-size:11px}.voice-review-actions .primary,.voice-review-actions .secondary{min-height:44px}.voice-area .voice-message textarea{font-size:16px}}
@media(prefers-reduced-motion:reduce){.voice-processing .spinner{animation:none}}
.voice-live-transcript { margin:4px 0 14px; padding:12px; min-height:76px; max-height:180px; overflow:auto; background:white; border:1px solid #d9dfe8; border-radius:8px; font-size:14px; line-height:1.65; white-space:pre-wrap; overflow-wrap:anywhere; color:#202630; }
.voice-record-controls .voice-cancel { width:auto; padding:0 11px; border-radius:20px; font-size:12px; }
.launch-home .voice-record-controls .voice-cancel { width:auto; min-width:0; padding:0 9px; font-size:11px; }
@media(max-width:600px){.voice-live-transcript{font-size:16px}.voice-record-controls{flex-wrap:wrap}.voice-record-controls .voice-send{min-width:75px}.launch-home .voice-record-controls .voice-send{font-size:12px}}
