.voice-demos { margin: 16px 0 24px; padding: 18px; border: 1px solid rgba(255,214,0,.22); border-radius: 18px; background: rgba(255,214,0,.035); }
.voice-demos h3 { margin: 0 0 8px; font-size: 1.05rem; }
.voice-demo-name { margin: 0 0 8px; overflow-wrap: anywhere; }
.voice-demo-buttons { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 14px; }
.voice-demo-buttons .btn { min-height: 48px; padding: 12px 8px; font-size: .85rem; white-space: normal; }
.vm-jussa .voice-demos .voice-demo-buttons .btn[aria-pressed="true"] { background: var(--vm-yellow,#ffd400); border-color: var(--vm-yellow,#ffd400); color: #111; }
.voice-demo-player { width: 100%; margin-top: 14px; }
.voice-demo-status { min-height: 1.5em; margin-bottom: 0; }
.voice-demo-retry { margin-top: 12px; }
@media (max-width: 420px) { .voice-demos { padding: 14px; } .voice-demo-buttons .btn { font-size: .8rem; } }

.vm-jussa .voice-demo-buttons .btn { margin: 0; width: 100%; min-width: 0; }
.vm-jussa #voiceCatalogSelect { display: block; width: 100%; max-width: 100%; min-height: 48px; padding: 12px; margin: 8px 0 16px; border: 1px solid #444; border-radius: 12px; background: #1e1e1e; color: #f7f7f7; font: inherit; }
