/* Voices of the valley section. Uses tokens from tokens.css. */
.vo-section { display: grid; gap: 10px; min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.vo-section * { min-width: 0; box-sizing: border-box; }
.vo-section h3 { margin: 26px 0 10px; font: 600 11.5px var(--font-ui); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }   /* same as the other panel sections */
.vo-section h4 { margin: 8px 0 4px; font-size: .9rem; }
.vo-langs { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.vo-langs li, .vo-lang { min-width: 0; overflow-wrap: anywhere; }
.vo-lang { padding: 8px 10px; border: 1px solid var(--line, rgba(243,235,221,.16)); border-radius: 8px; }
.vo-aka, .vo-meta, .vo-src, .vo-empty, .vo-credit { font-size: .82rem; opacity: .85; }
.vo-src a, .vo-empty a { color: var(--accent, #e9a23b); }
.vo-rec { margin: 0 0 14px; }
.vo-rec audio { width: 100%; }
.vo-transcript { margin: 6px 0; font-size: .95rem; }
.vo-translation { margin: 4px 0; font-style: italic; }
.vo-credit { margin: 4px 0 0; }
@media (max-width: 480px) { .vo-section { padding: 0 16px; } }

/* the consent page (voices-consent.html), on the shared tokens */
body.consent { margin: 0; background: var(--ink); color: var(--cream); font: 400 16px/1.6 var(--font-ui); display: flex; flex-direction: column; min-height: 100vh; -webkit-font-smoothing: antialiased; }
body.consent main { flex: 1; width: 100%; max-width: 720px; margin: 0 auto; padding: 28px var(--gutter) 24px; overflow-wrap: anywhere; box-sizing: border-box; }
body.consent main * { min-width: 0; box-sizing: border-box; }
body.consent h1 { font: 600 clamp(1.9rem, 1.3rem + 2.4vw, 2.7rem)/1.05 var(--f-title); letter-spacing: .04em; margin: 12px 0 10px; }
body.consent h2 { font: 600 1.35rem/1.15 var(--f-title); letter-spacing: .06em; text-transform: uppercase; color: var(--saffron); margin: 32px 0 10px; }
body.consent p, body.consent li { color: var(--cream); font-family: var(--font-text); }
body.consent .lead { color: var(--muted); font-size: 1.05rem; }
body.consent .card { background: var(--raise); border: 1px solid var(--line); border-radius: 12px; padding: 16px 20px; margin: 10px 0; }
body.consent .card ul, body.consent .card ol { margin: 0; padding-left: 1.2em; }
body.consent .card li { margin: 6px 0; }
body.consent .form { white-space: pre-wrap; font: inherit; margin: 0; }
body.consent a { color: var(--saffron); text-underline-offset: 3px; }
body.consent .src { font-size: .9rem; }
body.consent .src li { margin: 0; }
body.consent .src li a, body.consent .card li > a { display: inline-flex; align-items: center; min-height: 44px; }
body.consent .draft { display: inline-block; font: 600 .75rem var(--font-ui); letter-spacing: .08em; text-transform: uppercase; border: 1px solid var(--saffron); color: var(--saffron); border-radius: 6px; padding: 3px 10px; }
