/* Small icons with full keyboard/touch targets; no automatic microphone or playback. */
.has-chat-audio { display: grid !important; grid-template-columns: minmax(0,1fr) auto auto; align-items: end; gap: 8px; }
.chat-audio-controls { display: flex; align-items: center; gap: 4px; }
.chat-audio-controls button { width: 44px !important; min-width: 44px !important; height: 44px !important; min-height: 44px !important; padding: 0 !important; display: grid; place-items: center; border: 1px solid var(--experience-line,var(--line)); border-radius: 8px; color: inherit; background: transparent; cursor: pointer; }
.chat-audio-controls button[hidden] { display: none !important; }
.chat-audio-controls button:disabled { opacity: .45; cursor: not-allowed; }
.chat-audio-controls button[aria-pressed="true"] { background: color-mix(in srgb,var(--experience-accent,var(--accent)) 18%,transparent); }
.chat-audio-controls svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.chat-audio-controls button:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.chat-audio-status { flex: none; margin: 0; padding: 4px 12px; font-size: 12px; line-height: 1.45; }
.chat-audio-status:empty { display: none; }
.chat-audio-transcript { flex: none; max-height: 100px; width: calc(100% - 24px); margin: 4px 12px; font-size: 14px; line-height: 1.5; color: inherit; background: transparent; border: 1px solid var(--experience-line,var(--line)); }
.chat-audio-transcript[hidden] { display: none; }
@media (max-width:599px) { .has-chat-audio > textarea { grid-column: 1 / -1; } .has-chat-audio > .chat-audio-controls { grid-column: 1 / 3; } .has-chat-audio > button[type="submit"] { grid-column: 3; } }

/* Voice choice stays with the two explicit audio controls; the draft keeps a full row. */
.has-chat-audio > textarea { grid-column: 1 / -1; }
.has-chat-audio > .chat-audio-controls { grid-column: 1 / 3; }
.has-chat-audio > button[type="submit"] { grid-column: 3; }
.chat-audio-voice { min-width: 74px; width: 88px; max-width: 100px; min-height: 44px; padding: 6px; border: 1px solid var(--experience-line,var(--line)); border-radius: 8px; font-size: 12px; color: inherit; background: var(--experience-paper,var(--surface)); }

.chat-audio-controls { min-width:0;flex-wrap:wrap; }
.has-chat-audio > textarea { width:100%!important;min-width:0!important; }
.chat-audio-controls:is([data-state="connecting"],[data-state="recording"],[data-state="processing"]) .chat-audio-voice { display:none; }
