/* AI 음성 입력 아이콘 (voice-icon.js). 삼각형 = 글자색, 상태 색 = 둘레의 빛 안개(스크립트가 칠함). */
.vi { position: relative; display: inline-block; flex: none; width: 20px; height: 20px; color: currentColor; pointer-events: none; }
.vi-core { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.vi-tri { fill: currentColor; stroke: currentColor; stroke-linejoin: round; }
.vi[data-vi-state="off"] .vi-tri { opacity: .45; }
.vi-fog { position: absolute; border-radius: 50%; }
.vi-f1 { inset: -45%; }
.vi-f2 { inset: -95%; }
/* 음성 입력 버튼 = 밝은 버튼(흰 바탕 · 색 테두리 · 색 글자) + 아이콘 안(2026-10-15 사용자, 후보 D). 진한 바탕에서는 빛 안개가 묻힙니다. */
.vi-btn { background: var(--a-surface, #fff); border-color: var(--a-accent, #0b7a72); color: var(--a-accent, #0b7a72); }
.vi-btn:hover:not(:disabled) { background: var(--a-accent-soft, #dbeeea); border-color: var(--a-accent, #0b7a72); }
.vi-btn .vi { width: 20px; height: 20px; }
