.chat-compose--voice { grid-template-columns:var(--tap-target,44px) minmax(0,1fr) var(--tap-target,44px) var(--tap-target,44px); }
.chat-compose--voice .chat-voice-button { display:grid; place-items:center; width:44px; min-width:44px; height:44px; padding:0; border:0; background:transparent; color:inherit; }
.chat-voice-button svg { width:22px; height:22px; }
.chat-compose--voice.chat-voice-active { grid-template-columns:minmax(0,1fr) 44px 44px; }
.chat-voice-active > input, .chat-voice-active > .chat-compose-attach { display:none; }
.chat-voice-panel { grid-row:1; grid-column:1; display:flex; align-items:center; min-width:0; gap:4px; }
.chat-voice-panel audio { width:100%; min-width:0; height:40px; }
.chat-voice-panel span { flex:1; min-width:0; font-size:12px; color:var(--muted); }
.chat-voice-active > [data-voice-control=mic] { grid-row:1; grid-column:2; }
.chat-voice-active > .send { grid-row:1; grid-column:3; }
.chat-voice-active:has(.chat-reply-preview) > :is(.chat-voice-panel,[data-voice-control=mic],.send) { grid-row:2; }
.chat-voice-button:disabled, .chat-compose--voice .send:disabled { opacity:.4; }
.chat-voice-message { width:260px; max-width:100%; }
.chat-voice-message audio { width:100%; max-width:100%; height:44px; }
