.voice-panel { padding: clamp(18px, 3vw, 32px); }
.voice-session-frame { position: fixed; width: 1px; height: 1px; border: 0; opacity: 0; pointer-events: none; inset: auto 0 0 auto; }
.voice-panel h3 { margin-block: 8px 12px; }
.voice-panel .voice-status { background: #1d3048; color: #c4d6e9; }
.voice-panel h4 { margin-block: 0 20px; font-size: 1.15rem; }
.voice-eyebrow { font-size: .72rem; letter-spacing: .09em; color: #a6c9eb; }
.voice-panel .pane-heading { align-items: start; gap: 20px; flex-wrap: wrap; }
.voice-panel .notice { margin-block: 20px 28px; }
.voice-panel p { line-height: 1.65; overflow-wrap: anywhere; }
.voice-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 24px; }
.voice-card { min-width: 0; padding: clamp(18px, 2vw, 28px); background: rgba(15, 27, 46, .7); border: 1px solid #2d425d; border-radius: 20px; }
.voice-card label { display: block; margin-block: 16px; }
.voice-card input, .voice-card select, .voice-card textarea { max-width: 100%; }
.voice-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.voice-card .voice-check { display: flex; align-items: start; gap: 12px; line-height: 1.6; }
.voice-check input { flex: 0 0 20px; width: 20px; height: 20px; margin-block-start: 3px; }
.voice-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.voice-card .button { min-height: 44px; white-space: normal; }
.voice-card hr { border: 0; border-top: 1px solid #2d425d; margin-block: 28px; }
.voice-card details { margin-block: 20px; }
.voice-card summary { padding-block: 12px; cursor: pointer; }
.voice-transcript { max-height: 280px; overflow-y: auto; overflow-wrap: anywhere; }
.voice-transcript:empty { display: none; }
.voice-transcript p { border-inline-start: 2px solid #608ebc; padding-inline-start: 12px; }
.voice-panel [inert] { opacity: .65; }
@media(max-width: 1050px) { .voice-grid { grid-template-columns: 1fr; } }
@media(max-width: 420px) { .voice-fields { grid-template-columns: 1fr; gap: 0; } .voice-actions .button { width: 100%; } }
@media(prefers-reduced-transparency: reduce), (prefers-contrast: more) { .voice-card { background: #101d31; } }
