.voice-lab{--vl-ink:#203b36;--vl-muted:#63736b;--vl-line:#dfe7df;--vl-green:#2a7166;--vl-soft:#f2f7f2;--vl-pale:#e5f1e9;position:relative;margin:42px 0 30px;padding:30px 34px 26px;border:1px solid var(--vl-line);border-radius:20px;background:#fff;color:var(--vl-ink);box-shadow:0 12px 34px rgba(33,56,48,.045)}
.voice-lab *{box-sizing:border-box}
.voice-lab-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}
.voice-lab-heading .eyebrow{margin:0 0 8px;color:#497a6e;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.voice-lab-heading h2{margin:0;color:var(--vl-ink);font-size:clamp(24px,3vw,32px);line-height:1.15;letter-spacing:-.04em}
.voice-lab-lead{max-width:64ch;margin:9px 0 0;color:var(--vl-muted);font-size:14px;line-height:1.55}
.voice-lab-badge{flex:0 0 auto;padding:7px 11px;border:1px solid #d7e8da;border-radius:999px;background:#f6faf6;color:#397160;font-size:11px;font-weight:700;letter-spacing:.02em}
.voice-lab-consent-wrap{padding:16px 18px;border:1px solid #dce8dd;border-radius:13px;background:var(--vl-soft)}
.voice-lab-consent{display:flex;align-items:flex-start;gap:11px;color:#27443d;font-size:13px;font-weight:600;line-height:1.55;cursor:pointer}
.voice-lab-consent input,.voice-lab-radio input{width:18px;height:18px;flex:0 0 18px;margin:1px 0 0;accent-color:var(--vl-green)}
.voice-lab-note{max-width:84ch;margin:11px 0 0 29px;color:#64766e;font-size:12px;line-height:1.55}
.voice-lab-options{display:grid;grid-template-columns:minmax(220px,.82fr) minmax(0,1.18fr);gap:25px;padding:22px 0;border-bottom:1px solid var(--vl-line)}
.voice-lab-duration{display:grid;gap:9px;align-content:start;margin:0;padding:0;border:0}
.voice-lab-duration legend{margin-bottom:9px;padding:0;color:var(--vl-ink);font-size:13px;font-weight:700}
.voice-lab-radio{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border:1px solid var(--vl-line);border-radius:12px;background:#fff;color:var(--vl-ink);cursor:pointer;transition:border-color .16s,background .16s}
.voice-lab-radio:has(input:checked){border-color:#8bb5a1;background:#f7fbf7}
.voice-lab-radio span{display:grid;gap:3px}
.voice-lab-radio strong{font-size:13px;font-weight:700}
.voice-lab-radio strong em{display:inline-block;margin-left:5px;padding:2px 6px;border-radius:999px;background:#e7f2e9;color:#34725d;font-size:9px;font-style:normal;font-weight:700;vertical-align:2px}
.voice-lab-radio small{color:var(--vl-muted);font-size:11px;line-height:1.4}
.voice-lab-script details{border:1px solid var(--vl-line);border-radius:12px;background:#fbfcfa}
.voice-lab-script summary{padding:12px 14px;color:var(--vl-green);font-size:12px;font-weight:700;cursor:pointer}
.voice-lab-script-copy{padding:0 14px 12px;color:#475c54;font-size:12px;line-height:1.6}
.voice-lab-script-copy p{margin:0 0 9px}
.voice-lab-script-copy p:last-child{margin-bottom:0}
.voice-lab-script-hint{margin:9px 0 0;color:var(--vl-muted);font-size:11px;line-height:1.45}
.voice-lab-recorder{padding-top:19px}
.voice-lab-meter-row,.voice-lab-timer-row{display:flex;align-items:center;justify-content:space-between;gap:18px}
.voice-lab-label{color:#35544b;font-size:12px;font-weight:700}
.voice-lab-meter-row p{margin:4px 0 0;color:var(--vl-muted);font-size:11px}
.voice-lab-meter{position:relative;overflow:hidden;width:min(34%,230px);height:9px;border-radius:999px;background:#e7eee7}
.voice-lab-meter span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#75aa8c,#2a7166);transition:width .08s linear}
.voice-lab-timer-row{margin:18px 0 10px}
.voice-lab-timer-row [data-vl-timer]{color:#28483f;font-size:24px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.04em}
.voice-lab-timer-row [data-vl-phase]{color:var(--vl-muted);font-size:12px}
.voice-lab-controls{display:flex;align-items:center;flex-wrap:wrap;gap:9px}
.voice-lab-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:10px;font:inherit;font-size:12px;font-weight:700;text-decoration:none;cursor:pointer;transition:background .16s,border-color .16s,transform .16s}
.voice-lab-button:hover:not(:disabled){transform:translateY(-1px)}
.voice-lab-button:focus-visible,.voice-lab-clear:focus-visible,.voice-lab-consent input:focus-visible,.voice-lab-radio input:focus-visible,.voice-lab summary:focus-visible{outline:3px solid rgba(42,113,102,.3);outline-offset:2px}
.voice-lab-record{background:#286d61;color:#fff}
.voice-lab-record:hover:not(:disabled){background:#205d53}
.voice-lab-stop{background:#203b36;color:#fff}
.voice-lab-download{background:#e8f2e9;color:#275d4d}
.voice-lab-button:disabled{opacity:.48;cursor:not-allowed}
.voice-lab-clear{padding:9px 11px;border:0;background:transparent;color:#526a60;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.voice-lab audio{width:min(100%,360px);height:40px}
.voice-lab-status{min-height:19px;margin:11px 0 0;color:#4f695d;font-size:12px;line-height:1.5}
.voice-lab-status[data-state="error"]{color:#a0443b}
.voice-lab-footnote{margin:9px 0 0;color:#77847d;font-size:10px;line-height:1.5}
.voice-lab [hidden]{display:none!important}
@media(max-width:760px){.voice-lab{margin:30px 0 22px;padding:23px 20px 20px;border-radius:16px}.voice-lab-heading{gap:10px}.voice-lab-badge{display:none}.voice-lab-options{grid-template-columns:1fr;gap:18px}.voice-lab-meter{width:34%;min-width:90px}}
@media(max-width:480px){.voice-lab{padding:21px 16px 18px}.voice-lab-consent-wrap{padding:14px}.voice-lab-consent{font-size:12px}.voice-lab-note{margin-left:0}.voice-lab-meter-row{align-items:flex-end}.voice-lab-meter-row p{max-width:33ch}.voice-lab-controls{display:grid;grid-template-columns:1fr 1fr}.voice-lab-controls .voice-lab-button{width:100%}.voice-lab-controls audio{grid-column:1/-1;width:100%}.voice-lab-controls .voice-lab-clear{grid-column:1/-1;justify-self:start}.voice-lab-timer-row{margin-top:14px}}
@media(prefers-reduced-motion:reduce){.voice-lab *{transition:none!important}}
.voice-lab-guide{margin:8px 0 0 29px;font-size:11px;line-height:1.45}.voice-lab-guide a{color:#2d6d57;font-weight:700;text-decoration-thickness:1px;text-underline-offset:3px}.voice-lab-guide a:focus-visible{outline:3px solid rgba(42,113,102,.3);outline-offset:3px}@media(max-width:480px){.voice-lab-guide{margin-left:0}}
