:root{color-scheme:light;--brand:#6148f9;--brand-hover:#5039de;--ink:#242130;--muted:#736e82;--canvas:#f6f5f8;--paper:#fdfcfe;--line:#e6e3ed;--violet-wash:#efecff;--green:#168260;--radius:14px;font-family:'Instrument Sans',sans-serif;font-size:16px;font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
a{color:inherit}
button{cursor:pointer}
button:disabled{opacity:.45;cursor:not-allowed}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #9b8bff;outline-offset:3px}
button{transition:background .18s,color .18s,transform .18s}
button:active:not(:disabled){transform:translateY(1px)}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.skip{position:fixed;left:16px;top:-100px;z-index:10;padding:12px;background:var(--paper)}
.skip:focus{top:12px}
.masthead{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 3.2vw;background:var(--paper)}
.brand{display:flex;align-items:center;gap:18px;text-decoration:none}
.brand img{width:107px;height:36px;object-fit:contain}
.brand>span:last-child{font-size:1rem;color:var(--muted)}
.brand-divider{height:22px;width:1px;background:var(--line)}
nav{display:flex;align-self:stretch;gap:30px}
nav a{position:relative;display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--muted);font-size:1rem;font-weight:550}
nav a[aria-current]{color:var(--brand)}
nav a[aria-current]:after{content:'';position:absolute;bottom:-1px;height:3px;background:var(--brand);left:0;right:0;border-radius:3px 3px 0 0}
.nav-dot{width:5px;height:5px;border-radius:50%;background:var(--brand)}
.source-link{text-decoration:none;font-size:1rem;color:var(--muted)}
.source-link span{margin-left:8px}
main{max-width:1600px;margin:0 auto;padding:42px 3.2vw 0}
.intro{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:30px;gap:20px}
.eyebrow{font-size:1rem;letter-spacing:.14em;font-weight:700;color:var(--muted);margin:0 0 12px}
.eyebrow span{margin:0 10px;color:#b8b1c6}
h1{font-size:clamp(2rem,2.7vw,2.8rem);letter-spacing:-.055em;font-weight:550;line-height:1.12;margin:0 0 10px}
.intro-copy{margin:0;color:var(--muted);font-size:1rem;line-height:1.6}
.pipeline{display:flex;align-items:center;gap:13px;padding-bottom:6px;color:var(--muted);font-size:1rem}
.pipeline span{display:flex;align-items:center;gap:7px}
.pipeline i{font-style:normal;font-size:1rem;color:var(--brand);display:grid;place-items:center;width:23px;height:23px;background:var(--violet-wash);border-radius:50%}
.pipeline b{font-weight:400;color:#bfb8cc}
.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 370px;align-items:start;gap:26px}
.broadcast-column{min-width:0}
.stage{position:relative;border-radius:var(--radius);aspect-ratio:16/9;overflow:hidden;background:#211e2d;color:#fdfcfe;isolation:isolate}
.stage>video#preview{width:100%;height:100%;object-fit:contain;display:block}
.stage:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,20,36,.26),transparent 30%,transparent 48%,rgba(18,14,30,.8));pointer-events:none;z-index:0}
.stage-top,.stage-bottom{position:absolute;left:24px;right:24px;display:flex;justify-content:space-between;gap:15px;z-index:1}
.stage-top{top:21px}
.stage-tag{background:#292337bd;border:1px solid #ffffff24;color:#faf7ff;font-size:1rem;letter-spacing:.09em;font-weight:600;padding:7px 10px;border-radius:5px;display:flex;align-items:center;gap:7px;backdrop-filter:blur(8px)}
.status-dot{width:5px;height:5px;border-radius:50%;background:#d8d1ea}
.status-dot.live{background:#74edb4;box-shadow:0 0 0 3px #74edb419}
.stage-time{font-size:1rem;font-variant-numeric:tabular-nums;letter-spacing:.04em}
.stage-bottom{bottom:22px;align-items:flex-end}
.small-label{font-size:1rem;letter-spacing:.17em;color:#d6d0e2}
.stage-bottom h2{font-size:1.6rem;font-weight:500;margin:7px 0 5px;letter-spacing:-.035em}
.stage-bottom p{margin:0;font-size:1rem;color:#e1dce8}
.recording-note{font-size:1rem;color:#e1dce8;text-align:right}
.stage-idle{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;background:#221b3614}
.stage-idle button{width:62px;height:62px;border-radius:50%;border:1px solid #ffffff6b;background:#faf7ffdd;display:grid;place-items:center;box-shadow:0 4px 35px #1f182d18}
.stage-idle button:hover{background:#faf7ff;transform:scale(1.06)}
.stage-idle svg{width:23px;height:23px;fill:var(--brand);margin-right:3px}
.stage-idle>span{font-size:1rem;color:#fdfbff;text-shadow:0 1px 6px #1b1528}
.stage-caption{position:absolute;z-index:2;left:6%;right:6%;bottom:17%;text-align:center;pointer-events:none}
.stage-caption>span{display:inline-block;background:var(--brand);padding:4px 8px;font-size:1rem;border-radius:3px;margin-bottom:5px}
.stage-caption p{margin:0;display:table;margin-inline:auto;background:#1d182ce6;padding:8px 14px;border-radius:5px;font-size:clamp(1rem,1.3vw,1.1rem);line-height:1.5;max-width:95%;text-wrap:balance}
.transport{display:flex;align-items:center;justify-content:space-between;padding:16px 0 14px;gap:12px}
.transport-main{display:flex;align-items:center;gap:10px}
.primary{border:0;color:#fdfcfe;background:var(--brand);border-radius:7px;padding:12px 16px;display:flex;gap:9px;align-items:center;font-size:1rem;font-weight:600;min-height:42px}
.primary:hover{background:var(--brand-hover)}
.primary.running{background:var(--ink)}
.play-icon{font-size:1rem}
.icon-button{background:transparent;border:1px solid var(--line);border-radius:7px;min-width:38px;min-height:40px;font-size:1.2rem;color:var(--muted)}
.icon-button:hover{background:var(--paper)}
.transport-status{font-size:1rem;color:var(--muted);max-width:160px;line-height:1.4}
.listen{display:flex;gap:2px;align-items:center;font-size:1rem}
.listen>span{color:var(--muted);margin-right:8px}
.listen button{border:0;background:transparent;color:var(--muted);padding:7px 9px;border-radius:5px;min-height:34px;font-size:1rem}
.listen button[aria-pressed=true]{background:var(--paper);color:var(--brand);box-shadow:0 0 0 1px var(--line)}
.listen button:hover{color:var(--brand)}
.timeline{height:3px;background:var(--line);border-radius:3px;overflow:hidden}
.timeline-progress{height:100%;background:var(--brand);width:100%;transform:scaleX(0);transform-origin:left;transition:transform .3s linear}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.section-heading h2,.section-heading h3{font-size:1rem;font-weight:600;letter-spacing:-.015em;margin:0}
.section-heading>span{font-size:1rem;color:var(--muted)}
.recordings{padding:26px 0 28px;border-bottom:1px solid var(--line)}
.recording-list{display:flex;gap:11px;margin-top:15px}
.recording-card{min-width:0;flex:1;text-align:left;display:flex;gap:10px;align-items:center;border:1px solid transparent;border-radius:8px;padding:8px;background:transparent;position:relative}
.recording-card:hover{background:#eeebf4}
.recording-card[aria-pressed=true]{border-color:#c4b9ff;background:var(--violet-wash)}
.recording-card img{width:65px;height:50px;object-fit:cover;border-radius:4px}
.recording-card strong{font-size:1rem;line-height:1.3;font-weight:600;display:block;margin-bottom:5px}
.recording-card small{font-size:1rem;color:var(--muted);display:block}
.recording-card .selected-mark{position:absolute;right:5px;top:4px;font-size:1rem;color:var(--brand)}
.transcript-section{padding-top:26px}
.transcript-title{display:flex;gap:10px;align-items:center}
.count{font-size:1rem;color:var(--muted);background:#eae7f0;padding:4px 7px;border-radius:4px}
.text-button{border:0;background:transparent;color:var(--brand);font-size:1rem;font-weight:550;padding:8px 0}
.text-button:hover{text-decoration:underline}
.transcript-labels{display:grid;grid-template-columns:1fr 1fr;margin-top:21px;border-bottom:1px solid var(--line);padding:0 0 11px;font-size:1rem;font-weight:650;letter-spacing:.1em;color:var(--muted)}
.transcript-labels>span:last-child{padding-left:20px;color:var(--brand)}
.transcripts{max-height:420px;min-height:210px;overflow:auto;scrollbar-width:thin;scrollbar-color:#d8d1e8 transparent}
.transcript-empty{text-align:center;padding:28px 35px 25px}
.empty-wave{font-size:1.3rem;letter-spacing:4px;color:#aaa0cf}
.transcript-empty h3{font-size:1rem;font-weight:550;letter-spacing:-.02em;margin:13px 0 7px}
.transcript-empty p{font-size:1rem;color:var(--muted);max-width:350px;margin:auto;line-height:1.6}
.phrase{border-bottom:1px solid var(--line);padding:14px 0}
.phrase-meta{display:flex;align-items:center;gap:8px;font-size:1rem;color:var(--muted);margin-bottom:8px}
.speaker-token{font-size:1rem;font-weight:600;color:var(--brand);background:var(--violet-wash);padding:4px 6px;border-radius:4px}
.phrase-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.phrase-columns p{font-size:1rem;line-height:1.65;margin:0;overflow-wrap:anywhere}
.phrase-columns p:last-child{padding-left:0;color:#4c3a9e}
.translation-pending{color:#a9a0bb!important;font-style:italic}
.correction{margin:12px 0 0;padding:10px 12px;background:#f1ecdF;border-radius:6px;font-size:1rem;line-height:1.6;color:#796030}
.correction strong{font-weight:650;display:block}
.correction del{color:#9c7771}
.partial{color:var(--muted);font-size:1rem;font-style:italic;min-height:26px;padding-top:8px}
.director{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);overflow:hidden}
.director-header{padding:25px 23px 22px;display:flex;justify-content:space-between;gap:8px;align-items:center}
.director-header .eyebrow{font-size:1rem;margin-bottom:8px;letter-spacing:.12em}
.director-header h2{font-size:1.15rem;font-weight:550;letter-spacing:-.04em;margin:0}
.live-settings{font-size:1rem;letter-spacing:.07em;padding:6px 7px;background:#f2f0f7;color:var(--muted);border-radius:4px;white-space:nowrap}
.language-row{display:flex;align-items:center;gap:16px;padding:0 23px 23px}
.source-language{flex:1}
.field-label{display:block;font-size:1rem;font-weight:550;color:var(--muted);margin:0 0 8px}
.source-language strong{font-size:1rem;font-weight:500}
.source-language strong span{font-size:1rem;color:var(--muted);margin-left:6px}
.language-arrow{color:#b3a7cc;font-size:1rem;margin-top:20px}
.target-language{flex:1.3;min-width:0}
.target-language select{background:var(--violet-wash);color:var(--brand);border-color:#e0d9ff;font-size:1rem;font-weight:550;padding:10px}
.tabs{display:flex;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 23px;gap:25px}
.tabs button{position:relative;font-size:1rem;font-weight:550;padding:14px 0;border:0;background:transparent;color:var(--muted)}
.tabs button[aria-selected=true]{color:var(--brand)}
.tabs button[aria-selected=true]:after{position:absolute;content:'';height:2px;background:var(--brand);left:0;right:0;bottom:-1px}
.tool-panel{padding:23px}
.field-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.field-heading label,.toggle-row label{font-size:1rem;font-weight:550;line-height:1.4}
.field-heading>span{font-size:1rem;color:var(--muted);white-space:nowrap;margin-top:4px}
.field-help{font-size:1rem;line-height:1.6;color:var(--muted);margin:7px 0 12px}
.preset-row{display:flex;gap:5px;margin:17px 0 12px}
.preset-row button{background:var(--paper);border:1px solid var(--line);color:var(--muted);padding:7px 9px;font-size:1rem;border-radius:20px}
.preset-row button:hover{border-color:#bcb0ff;color:var(--brand);background:var(--violet-wash)}
textarea,input[type=search],select{width:100%;border:1px solid var(--line);border-radius:7px;padding:12px;color:var(--ink);background:var(--canvas);font-size:1rem;line-height:1.65;min-height:42px}
textarea{resize:vertical;min-height:130px;max-height:450px}
select{appearance:auto;line-height:1.3}
input[type=search]{margin-bottom:0}
.secondary{width:100%;border:1px solid #d6cef9;background:var(--violet-wash);color:var(--brand);border-radius:7px;padding:11px 13px;font-size:1rem;font-weight:600;display:flex;justify-content:space-between;align-items:center;min-height:42px}
.secondary:hover{background:#e5dfff}
.direction-note{display:flex;gap:12px;border-top:1px solid var(--line);margin-top:24px;padding-top:20px}
.note-symbol{color:var(--brand);font-size:1.25rem;line-height:1}
.direction-note h3{font-size:1rem;font-weight:550;margin:0 0 7px}
.direction-note p{font-size:1rem;line-height:1.65;color:var(--muted);margin:0}
.toggle-row{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:20px}
.toggle-row p{font-size:1rem;color:var(--muted);line-height:1.5;margin:5px 0 0}
input[role=switch]{appearance:none;flex-shrink:0;width:31px;height:19px;border-radius:30px;background:#d8d3e2;position:relative;cursor:pointer;transition:background .2s}
input[role=switch]:after{content:'';position:absolute;top:3px;left:3px;width:13px;height:13px;background:#fdfcfe;border-radius:50%;transition:transform .2s}
input[role=switch]:checked{background:var(--brand)}
input[role=switch]:checked:after{transform:translateX(12px)}
.draft-label{font-size:1rem;letter-spacing:.1em;font-weight:650;display:flex;gap:6px;align-items:center;color:#9a7534;margin:17px 0 11px}
.draft-dot{width:5px;height:5px;border-radius:50%;background:#ba914d}
.authority{display:flex;gap:10px;margin-top:23px;color:var(--brand)}
.authority>span{font-size:1.2rem}
.authority strong{font-size:1rem;font-weight:600}
.authority p{color:var(--muted);font-size:1rem;line-height:1.65;margin:6px 0 0}
#panel-voices .field-label{margin-top:15px}
.voice-summary{font-size:1rem;color:var(--muted);margin:12px 0}
.voice-list{max-height:228px;overflow:auto;scrollbar-width:thin}
.voice-item{padding:10px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:9px}
.voice-item button{color:var(--ink);border:0;background:transparent;padding:4px 0;display:block;text-align:left;flex:1}
.voice-item strong{font-size:1rem;font-weight:550;display:block}
.voice-item small{font-size:1rem;color:var(--muted);display:block;margin-top:4px;line-height:1.45}
.voice-item.selected strong{color:var(--brand)}
.voice-item .voice-preview{flex:none;width:28px;height:28px;font-size:1rem;background:var(--violet-wash);border-radius:50%;text-align:center;color:var(--brand)}
.speaker-section{padding:21px 23px;border-top:1px solid var(--line)}
.speaker-section .section-heading h3{font-size:1rem}
.speaker-section .section-heading>span{font-size:1rem}
.speaker-empty{font-size:1rem;line-height:1.6;color:var(--muted);margin:13px 0}
.speaker-row{display:flex;gap:9px;align-items:center;margin-top:15px}
.speaker-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--violet-wash);font-size:1rem;font-weight:600;color:var(--brand);flex:none}
.speaker-info{flex:1;min-width:0}
.speaker-info strong{font-size:1rem;font-weight:550;display:block}
.speaker-info small{font-size:1rem;color:var(--muted);display:block;margin-top:4px}
.speaker-row select{max-width:135px;font-size:1rem;padding:6px;min-height:32px}
.speaker-explainer{margin-top:17px;color:var(--muted)}
.speaker-explainer summary{font-size:1rem;cursor:pointer;display:flex;justify-content:space-between;gap:12px;list-style:none}
.speaker-explainer summary::-webkit-details-marker{display:none}
.speaker-explainer p{font-size:1rem;line-height:1.65;margin:11px 0 0}
.engine{padding:15px 18px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:7px;background:#f7f5fb;font-size:1rem;color:#514765}
.engine i{font-size:1rem;font-style:normal;color:var(--muted);margin-left:3px}
.engine b{font-weight:400;color:#b6adc9}
.engine-dot{width:5px;height:5px;border-radius:50%;background:var(--green);margin-right:1px}
footer{border-top:1px solid var(--line);margin-top:35px;padding:23px 0;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:1rem;line-height:1.7}
footer p{margin:0}
footer a{text-decoration:none;color:#6f628a}
footer a:hover{text-decoration:underline}
footer p>span{display:block;font-size:1rem;color:#8c849b}
.footer-wordmark{font-size:1rem;letter-spacing:-.02em;white-space:nowrap}
.notice{border:1px solid #e1ccb0;border-radius:7px;background:#fbf1e2;color:#855b2b;font-size:1rem;line-height:1.6;padding:14px 18px;margin-bottom:20px}
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fdfcfe;font-size:1rem;line-height:1.5;padding:12px 20px;border-radius:8px;z-index:5;box-shadow:0 8px 20px #23183220;max-width:90vw}
.is-running .stage-bottom{opacity:0}
.is-running .stage-caption{bottom:9%}
.is-running .stage-idle{display:none}
.phrase.is-playing .speaker-token{color:#fdfcfe;background:var(--brand)}

@media(min-width:1450px){.workspace-grid{grid-template-columns:minmax(0,1fr) 410px;gap:32px}
.director-header,.tool-panel,.speaker-section{padding-left:27px;padding-right:27px}
.stage{max-height:515px}
.recording-card img{width:84px;height:58px}
.recording-card strong{font-size:1rem}
.recording-card small{font-size:1rem}
}
@media(max-width:1100px){.workspace-grid{grid-template-columns:minmax(0,1fr) 340px;gap:20px}
.transport{align-items:flex-start;flex-direction:column}
.listen{align-self:flex-end;margin-top:-6px}
.recording-list{gap:4px}
.recording-card{display:block;padding:7px}
.recording-card img{width:100%;height:65px;margin-bottom:7px}
.pipeline{display:none}
.stage-bottom h2{font-size:1.25rem}
.recording-note{display:none}
.stage-top,.stage-bottom{left:18px;right:18px}
}
@media(max-width:820px){.masthead{height:70px;padding:0 5vw}
.brand{gap:10px}
.brand img{width:92px}
.brand>span:last-child,.brand-divider,.source-link{display:none}
nav{gap:18px}
nav a{font-size:1rem}
main{padding:30px 5vw 0}
.intro{margin-bottom:24px}
h1{font-size:2.15rem}
.intro-copy{font-size:1rem;max-width:300px}
.workspace-grid{grid-template-columns:1fr;gap:25px}
.director{grid-row:2}
.transport{flex-direction:row;align-items:center}
.listen{align-self:center;margin:0}
.recording-card{display:flex}
.recording-card img{width:75px;height:53px;margin:0}
.recording-card strong{font-size:1rem}
.tool-panel{min-height:0}
.voice-list{max-height:220px}
.stage{max-height:none}
.stage-bottom h2{font-size:1.6rem}
footer{margin-top:25px}
.footer-wordmark{display:none}
}
@media(max-width:480px){nav{gap:13px}
nav a{font-size:1rem}
.nav-dot{display:none}
.brand img{width:80px}
.intro h1{font-size:1.9rem}
.intro-copy{font-size:1rem}
.stage{border-radius:10px}
.stage-idle button{width:48px;height:48px}
.stage-idle>span{display:none}
.stage-top{top:13px;left:13px;right:13px}
.stage-tag{font-size:1rem;padding:5px 7px}
.stage-time{font-size:1rem}
.stage-bottom{bottom:14px;left:14px}
.stage-bottom h2{font-size:1.2rem}
.small-label{font-size:1rem}
.stage-bottom p{font-size:1rem}
.transport{flex-wrap:wrap;gap:12px}
.transport-main{gap:8px;width:100%}
.transport-status{font-size:1rem;max-width:none;flex:1}
.listen{margin-left:auto}
.recordings{padding-top:22px}
.section-heading>span{font-size:1rem}
.recording-list{gap:5px}
.recording-card{display:block;padding:6px}
.recording-card img{width:100%;height:55px;margin:0 0 7px}
.recording-card strong{font-size:1rem;min-height:28px;margin-bottom:3px}
.recording-card small{font-size:1rem}
.transcript-title{gap:6px;flex-wrap:wrap}
.section-heading h2{font-size:1rem}
.count{font-size:1rem}
.text-button{font-size:1rem}
.transcript-labels{font-size:1rem}
.phrase-columns{gap:14px}
.phrase-columns p{font-size:1rem}
.transcript-labels>span:last-child{padding-left:7px}
.stage-caption p{font-size:1rem;padding:5px 8px}
.director-header h2{font-size:1.2rem}
.transcripts{max-height:320px}
.transcript-empty{padding:25px 15px}
.transcript-empty p{font-size:1rem}
}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* Touch layouts keep editing comfortably readable and every action reachable. */
@media(pointer:coarse){button,nav a,.listen button,.preset-row button,.tabs button,.voice-item button{min-height:44px}
.voice-item .voice-preview{width:44px;height:44px}
.speaker-row select{min-height:44px}
input[role=switch]{outline-offset:10px}
}

@media(max-width:820px){textarea,input[type=search],select{font-size:1rem}
.field-help,.direction-note p,.authority p,.toggle-row p,.speaker-empty,.voice-summary{font-size:1rem}
.field-heading label,.toggle-row label{font-size:1rem}
.preset-row button,.tabs button,.secondary{font-size:1rem;min-height:44px}
.director-header .eyebrow{font-size:1rem}
.tool-panel{padding:24px}
.speaker-explainer summary{font-size:1rem}
.speaker-explainer p{font-size:1rem}
.voice-item strong{font-size:1rem}
.voice-item small{font-size:1rem}
.field-label{font-size:1rem}
.listen button{min-height:40px}
}

@media(max-width:820px){.broadcast-column{display:contents}
.workspace-grid{row-gap:18px}
.stage{grid-row:1}
.transport{grid-row:2;margin-top:-3px;padding-top:0;padding-bottom:0}
.timeline{grid-row:3}
.recordings{grid-row:4;padding-top:5px}
.director{grid-row:5}
.transcript-section{grid-row:6;padding-top:8px}
}


/* Readable type is a product requirement across every studio state. */
:root{font-size:16px}
.workspace-grid{grid-template-columns:minmax(0,1fr) 450px}
.engine{flex-wrap:wrap;gap:10px}
.pipeline i{width:30px;height:30px;flex:none}
.field-heading{flex-wrap:wrap}
.field-heading>span{margin-top:0}
.live-settings{white-space:normal;line-height:1.4}
.director-header{align-items:flex-start;flex-wrap:wrap;gap:16px}
.stage-tag{letter-spacing:.04em}
.stage-caption p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.transport{flex-wrap:wrap}
.transport-main{flex-wrap:wrap}
.transport-status{max-width:230px}
.listen{margin-left:auto}
.recording-card{align-items:flex-start}
.recording-card small{line-height:1.5}
.speaker-row{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px}
.speaker-avatar{width:36px;height:36px;grid-row:span 2}
.speaker-row select{grid-column:2;max-width:none;width:100%;min-height:44px}
.speaker-info small{line-height:1.5}
.voice-item .voice-preview{width:44px;height:44px;flex:none}
.source-loader{margin:0 0 26px;padding:22px 24px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1fr);gap:18px 28px;align-items:center}
.source-loader label{font-weight:600;font-size:1rem}
.source-loader p{font-size:1rem;line-height:1.6;color:var(--muted);margin:7px 0 0}
.stream-url-row{display:flex;gap:12px;min-width:0}
.stream-url-row input{flex:1;min-width:0;border:1px solid var(--line);border-radius:7px;background:var(--canvas);font-size:1rem;color:var(--ink);padding:12px 14px;min-height:48px}
.stream-url-row .secondary{width:auto;min-width:150px;gap:16px}
.source-loader .stream-status{grid-column:1/-1;margin:0;color:var(--brand);overflow-wrap:anywhere}
.transcript-labels{line-height:1.5;gap:18px}
.phrase-meta{flex-wrap:wrap;line-height:1.5}
.section-heading{flex-wrap:wrap}
@media(max-width:1250px){.workspace-grid{grid-template-columns:1fr}.broadcast-column{display:contents}.workspace-grid{row-gap:20px}.stage{grid-row:1}.transport{grid-row:2;margin:0;padding:0}.timeline{grid-row:3}.recordings{grid-row:4;padding-top:8px}.director{grid-row:5}.transcript-section{grid-row:6}.director-header{flex-wrap:nowrap}.tool-panel{padding:26px}.source-loader{grid-template-columns:1fr}.stage{max-height:none}.recording-card img{width:90px;height:65px}.recording-card{display:flex}.recording-card strong{min-height:0}}
@media(max-width:820px){.masthead{height:auto;flex-wrap:wrap;gap:14px;padding:20px 5vw 0}.brand img{width:107px}nav{width:100%;justify-content:space-between;gap:12px;min-height:52px}nav a{font-size:1rem;line-height:1.4;padding:10px 0}main{padding-top:28px}.source-loader{padding:20px;gap:16px}.stream-url-row{flex-wrap:wrap}.stream-url-row input{flex-basis:100%}.stream-url-row .secondary{width:100%}.director-header{flex-wrap:wrap}.preset-row{flex-wrap:wrap}.tabs{gap:24px}.transport-status{max-width:none}.recording-list{gap:10px}}
@media(max-width:600px){.recording-list{flex-direction:column}.recording-card{display:flex;gap:14px;padding:10px}.recording-card img{width:100px;height:65px;margin:0}.recording-card strong,.recording-card small{font-size:1rem;min-height:0}.recording-card .selected-mark{right:10px;top:8px}.recording-card>span:not(.selected-mark){padding-right:12px}.stage-bottom .small-label,.stage-bottom p{display:none}.stage-top{left:12px;right:12px;top:12px}.stage-tag{font-size:1rem;padding:6px 8px;letter-spacing:0}.stage-bottom h2{font-size:1.25rem}.stage-idle>span{display:none}.transport-main{width:100%}.transport-status{flex-basis:100%;line-height:1.5}.listen{flex-wrap:wrap;justify-content:flex-end}.listen button{min-height:44px;font-size:1rem}.source-language strong span{display:block;margin:6px 0 0}.language-row{gap:10px}.source-language{flex:.8}.target-language{flex:1.3}.transcript-labels>span:last-child{padding-left:0}.phrase-columns{gap:14px}.phrase-columns p{font-size:1rem}.transcript-empty{padding-inline:10px}.eyebrow{letter-spacing:.08em}.source-loader-copy label{line-height:1.5}.engine{justify-content:flex-start;padding:18px 23px}}

/* On-camera samples remain legible as the library grows. */
.recording-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.recording-card{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:10px;min-width:0}
.recording-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;margin:0}
.recording-card>span:not(.selected-mark){padding:0 2px}
.recording-card strong{font-size:1rem;line-height:1.4;margin-bottom:5px;min-height:0}
.recording-card small{font-size:1rem;line-height:1.5}
.recording-card .selected-mark{top:16px;right:16px;width:26px;height:26px;border-radius:50%;background:var(--paper);display:grid;place-items:center;font-size:1rem}
@media(max-width:600px){.recording-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.recording-card{padding:8px;gap:10px}.recording-card img{width:100%;height:auto}.recording-card>span:not(.selected-mark){padding:0}.recording-card .selected-mark{top:12px;right:12px}}
