#live-voice-btn { position:absolute; right:96px; bottom:10px; width:32px; height:32px;
  display:flex; align-items:center; justify-content:center; border:0; border-radius:50%;
  background:transparent; color:var(--text-3); cursor:pointer; }
#live-voice-btn:hover, #live-voice-btn[aria-pressed="true"] { background:var(--surface); color:var(--accent); }
#live-voice-btn:disabled { opacity:.45; cursor:wait; }
.input-box:has(#live-voice-btn), #main.welcome-mode .input-box:has(#live-voice-btn) { padding-right:138px; }
#live-voice-panel { margin:0 auto 6px; padding:8px 12px; border:1px solid #dce3d7;
  border-radius:16px; background:rgba(255,255,255,.94); color:var(--text); }
#live-voice-panel[hidden] { display:none; }
.live-voice-head { display:flex; align-items:center; gap:10px; }
.live-voice-dot { width:8px; height:8px; border-radius:50%; background:#75846f; flex-shrink:0; }
.live-voice-dot.connected { background:#668c55; box-shadow:0 0 0 5px #668c5515; }
#live-voice-status { font-size:13px; font-weight:600; flex:1; }
#live-voice-time { font-size:12px; font-variant-numeric:tabular-nums; color:#73806e; }
.live-voice-controls { display:flex; gap:8px; margin-left:auto; }
.live-voice-controls button { font:inherit; font-size:12px; border:1px solid #dce3d7;
  border-radius:8px; background:transparent; padding:6px 10px; cursor:pointer; color:inherit; }
.live-voice-controls .live-end { color:#a34238; border-color:#eadad6; }
#live-voice-captions > summary { cursor:pointer; font-size:12px; color:var(--text-2); padding:6px 0 2px; }
#live-voice-transcript { max-height:min(180px, 25dvh); overflow:auto; overscroll-behavior:contain; margin-top:6px; font-size:13px; line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; }
#live-voice-transcript:empty { display:none; }
.live-transcript-user { color:var(--text); }
.live-transcript-assistant { color:var(--text-2); }
#live-voice-note { margin-top:8px; font-size:11px; line-height:1.5; color:#7c8577; }
#live-voice-note:empty { display:none; }
#live-voice-tasks { margin:0 auto 6px; padding:0 12px; border:1px solid var(--border, #ddd);
  border-radius:14px; background:var(--bg, #fff); color:var(--text); font-size:13px; }
#live-voice-tasks[hidden] { display:none; }
.live-tasks-title { font-weight:600; cursor:pointer; padding:10px 0; line-height:20px; }
#live-tasks-summary { font-weight:400; color:var(--text-2); margin-left:6px; font-size:12px; }
.live-details-hint { float:right; color:var(--text-2); font-size:12px; font-weight:400; }
#live-tasks-list { max-height:min(220px, 30dvh); overflow:auto; overscroll-behavior:contain; }
.live-task { padding:8px 0; border-top:1px solid var(--border, #eee); }
.live-task-head { display:flex; align-items:center; gap:8px; }
.live-task-state { flex:1; font-weight:600; }
.live-task-cancel { flex-shrink:0; border:1px solid var(--border, #ddd); border-radius:6px;
  background:transparent; color:inherit; padding:4px 8px; cursor:pointer; font:inherit; }
.live-task summary { cursor:pointer; overflow-wrap:anywhere; color:var(--text-2); margin-top:6px; }
.live-task-original { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.6; }
.live-task-answer { overflow-wrap:anywhere; line-height:1.6; margin-top:8px; }
.live-task-error { color:#a34238; white-space:pre-wrap; margin-top:6px; }
@media(max-width:600px) { #live-voice-panel { padding:8px 10px; } .live-voice-head { gap:6px; flex-wrap:wrap; }
  #live-voice-status { min-width:76px; font-size:12px; } .live-voice-controls { gap:5px; }
  .live-voice-controls button { padding:6px 7px; min-height:36px; }
  #live-voice-time { font-size:11px; } .live-details-hint { display:none; }
  .input-box:has(#live-voice-btn), #main.welcome-mode .input-box:has(#live-voice-btn) { padding-right:12px !important; padding-bottom:54px; } }
