.chat-form .voice-control { flex: 0 0 44px; width: 44px; min-width: 44px; background: #e8f5ef; color: #0b7655; border: 1px solid #b8dccd; border-radius: 12px; font-size: 20px; }
.chat-form .voice-control.listening { background: #0b7655; color: white; box-shadow: 0 0 0 4px #a9ddc8; }
.voice-status { min-height: 1.3em; margin: 6px 0 0; color: #46665c; font-size: .85rem; }
.ai-context { margin-top: 12px; padding: 10px 12px; border: 1px solid #c9dfd5; border-radius: 12px; color: #315f4d; background: #f6fbf8; font-size: .86rem; overflow-wrap: anywhere; }
.ai-context summary { cursor: pointer; font-weight: 650; }
.ai-context p { margin: 8px 0 0; }
.voice-reply { border: 1px solid #badacb; border-radius: 9px; background: #f2faf6; color: #0b7655; padding: 5px 9px; cursor: pointer; }
.voice-notice,.voice-status { color: var(--muted); font-size: .875rem; line-height: 1.6; }
.voice-status { font-weight: 600; }
.voice-language { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 14px 0; color: var(--text); font-size: 1rem; }
.voice-language select { min-height: 44px; max-width: 100%; padding: 8px 14px; border: 1px solid var(--line); border-radius: 10px; color: var(--text); background: var(--surface); font: inherit; }
.voice-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.voice-actions button { min-height: 44px; padding: 9px 14px; background: var(--surface); color: var(--text); border: 1px solid var(--line); border-radius: 10px; }
.voice-actions button[hidden] { display: none; }
.install-help { max-width: 520px; width: calc(100% - 32px); max-height: 85dvh; padding: 24px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); color: var(--text); line-height: 1.6; }
.install-help::backdrop { background: #06241baa; }
.install-help h2 { font-size: 1.3rem; margin-top: 0; }
.install-help li { margin-bottom: 10px; }
.install-help button { width: 100%; min-height: 44px; background: var(--accent); color: white; border: 0; border-radius: 10px; }
@media (max-width: 600px) { .chat-form .voice-control { flex-basis: 40px; width: 40px; min-width: 40px; } .ai-meta { flex-wrap: wrap; } }
