@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--ink:#19201f;--muted:#627061;--paper:#f5f6f3;--white:#fff;--lime:#d4f76a;--line:#dde3d9;--soft:#e9ede4;--font:'DM Sans',Arial,sans-serif;--display:'Space Grotesk',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 var(--font)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer;border:0;touch-action:manipulation}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #526d24;outline-offset:4px}[hidden]{display:none!important}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sprite{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;top:-80px;left:15px;z-index:20;padding:12px;background:var(--lime)}.skip-link:focus{top:10px}.topbar{height:80px;padding:0 max(28px,calc((100vw - 1320px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:#fafbf8}.brand{display:flex;align-items:center;font:700 27px var(--display);letter-spacing:-1.4px}.brand-icon{height:38px;width:38px;background:var(--ink);color:var(--lime);border-radius:11px;margin-right:10px;display:grid;place-items:center;transform:rotate(-6deg)}.brand-icon svg{width:25px;height:25px;stroke-width:2.5}.brand-period{color:#6d853b}nav{display:flex;gap:6px}nav a{padding:10px 19px;border-radius:30px;color:var(--muted);font-size:14px;font-weight:600}nav a.active{background:var(--soft);color:var(--ink)}.help-button{display:flex;align-items:center;gap:8px;background:transparent;color:var(--muted);font-size:14px}main{max-width:1400px;padding:38px 40px 45px;margin:auto;min-height:65vh}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.7px;color:#586b49;text-transform:uppercase}.primary,.secondary,.text-button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:600;border-radius:11px;min-height:46px;padding:12px 19px}.primary{background:var(--lime);color:var(--ink)}.primary:hover{background:#c9ef56}.secondary{border:1px solid var(--line);background:#fafbf8;color:var(--ink)}.secondary:hover{background:var(--soft)}.text-button{background:transparent;color:var(--ink);padding:9px 3px}.icon-button{padding:10px;min-height:40px}.home-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center;margin-bottom:44px}.home-copy h1{font-size:clamp(38px,4.2vw,62px);letter-spacing:-2.8px;line-height:1.05;margin:13px 0 18px}.home-copy p{font-size:17px;color:var(--muted);max-width:340px;margin-bottom:24px}.home-copy .primary{padding:14px 24px}.small-note{display:block;color:var(--muted);font-size:13px;margin-top:12px}.feature-preview{border-radius:19px;aspect-ratio:16/9;position:relative;overflow:hidden;background:#15241c}.feature-preview video,.scene-stage video{width:100%;height:100%;object-fit:cover;display:block}.feature-preview .preview-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;background:linear-gradient(transparent 40%,rgba(10,20,14,.63))}.big-play{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.94);color:var(--ink)}.big-play svg{fill:currentColor;stroke:none;width:24px;height:24px}.preview-overlay span{color:white;font-size:14px;font-weight:600}.preview-name{position:absolute;bottom:18px;left:22px;color:white;font-size:18px;font-weight:700}.preview-tag{position:absolute;left:20px;top:18px;background:rgba(15,26,19,.76);color:white;font-size:12px;font-weight:600;letter-spacing:1.2px;padding:5px 9px;border-radius:5px}.preview-stop{position:absolute;right:14px;bottom:14px;background:#fff}.section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 20px}.section-header h2{font-size:28px;letter-spacing:-1px}.section-header p{color:var(--muted);font-size:14px;margin-top:3px}.scene-count{font-size:14px;color:var(--muted)}.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter-chip{background:transparent;border:1px solid var(--line);padding:7px 15px;border-radius:24px;color:#586254;font-size:14px}.filter-chip.active{background:var(--ink);border-color:var(--ink);color:white}.scene-search{border:1px solid var(--line);background:#fff;padding:10px 14px;border-radius:10px;width:230px;max-width:100%}.scene-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}.scene-card{padding:0;background:transparent;text-align:left;color:var(--ink);border-radius:15px;min-width:0}.card-image{aspect-ratio:16/9;overflow:hidden;border-radius:14px;position:relative;background:var(--soft)}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.scene-card:hover img{transform:scale(1.035)}.card-image.quick img{transform:scale(1.24)}.scene-card:hover .card-image.quick img{transform:scale(1.29)}.card-tag,.card-time{position:absolute;top:12px;left:12px;padding:4px 9px;font-size:12px;border-radius:5px;background:#f8fbf1;color:var(--ink);font-weight:600}.card-time{top:auto;left:auto;bottom:11px;right:11px;background:rgba(18,27,23,.85);color:white}.card-heading{display:flex;align-items:center;justify-content:space-between;margin:12px 0 4px}.card-heading h3{font-size:20px;letter-spacing:-.5px}.card-description{font-size:14px;color:var(--muted);margin:4px 0}.card-meta{font-size:13px;color:#5b6855}.how-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:42px;border-top:1px solid var(--line);padding-top:24px}.how-strip b{font-family:var(--display);font-size:16px}.how-strip p{font-size:14px;color:var(--muted);margin-top:4px}.site-footer{max-width:1320px;padding:23px 0 30px;margin:auto;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:13px}.footer-brand{font-family:var(--display);font-weight:700;font-size:22px;color:var(--ink)}.loading-view,.empty-state{text-align:center;padding:70px 20px;color:var(--muted)}.empty-state h2{color:var(--ink);margin-bottom:10px}.empty-state .primary{margin-top:20px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.page-heading h1{font-size:34px;letter-spacing:-1.2px;margin-top:5px}.page-heading p{color:var(--muted);margin-top:5px}.breadcrumb{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:14px}.breadcrumb a:hover{text-decoration:underline}.saved-state{font-size:13px;color:var(--muted)}.workspace{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr);gap:24px;align-items:start}.scene-stage{position:relative;aspect-ratio:16/9;border-radius:17px;overflow:hidden;background:#18291c}.stage-top{position:absolute;top:15px;left:17px;right:17px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.scene-type,.duration-pill{padding:5px 8px;border-radius:5px;background:rgba(12,25,17,.75);color:white;font-size:12px;font-weight:600;letter-spacing:.7px}.stage-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px}.stage-center span{color:white;font-size:14px;text-shadow:0 1px 8px #172019}.stage-caption{position:absolute;left:18px;right:18px;bottom:30px;background:rgba(9,21,15,.85);color:white;padding:12px 16px;border-radius:8px;text-align:center;font-size:18px;font-weight:600;line-height:1.4}.stage-caption small{display:block;color:var(--lime);font-size:11px;letter-spacing:1.5px;margin-bottom:5px}.playback-track{position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.2)}.playback-track div{height:100%;background:var(--lime);width:0}.countdown-overlay{position:absolute;inset:0;display:grid;place-items:center;background:rgba(9,20,13,.32);color:white;font:700 72px var(--display)}.scene-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;color:var(--muted);padding:12px 0 19px}.scene-meta>div{display:flex;gap:10px;align-items:center}.headphone-note{display:inline-flex;gap:6px;align-items:center}.headphone-note svg{width:16px;height:16px}.section-label{display:flex;justify-content:space-between;align-items:center;font-size:14px;margin-bottom:14px}.section-label h3{font-size:16px}.cast-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cast-card{display:flex;align-items:center;gap:12px;min-height:70px;border:1px solid var(--line);background:white;border-radius:12px;padding:13px;text-align:left;color:var(--ink)}.cast-card.selected{border-color:#8aa24a;background:#f0f6e3;box-shadow:inset 0 0 0 1px #8aa24a}.cast-avatar{position:relative;width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0}.cast-avatar img{position:absolute;width:350%;height:auto;max-width:none}.cast-info{flex:1;min-width:0}.cast-info strong{font-size:15px;display:block}.cast-info small{display:block;font-size:12px;color:var(--muted)}.cast-radio{height:18px;width:18px;border:1px solid #9cae7c;border-radius:50%;display:grid;place-items:center}.cast-radio svg{width:14px;height:14px}.both-roles{font-size:13px;color:var(--muted);margin:12px 0 20px;display:flex;gap:8px;align-items:center}.both-roles input{width:16px;height:16px;accent-color:#718e2a}.record-panel{border:1px solid var(--line);background:white;border-radius:17px;overflow:hidden}.panel-heading{padding:18px 21px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:15px;font-weight:600;gap:10px}.step-number{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:7px;background:var(--soft);color:#61714e;margin-right:9px;font-size:12px}.take-badge{font-size:11px;background:var(--soft);padding:3px 7px;border-radius:5px;color:#657151}.record-content{padding:24px}.line-position{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:27px;font-size:12px;font-weight:600;letter-spacing:1px;color:#60704f}.line-dots{display:flex;gap:5px;flex-wrap:wrap;max-width:175px}.line-dots button{width:28px;height:28px;border-radius:50%;background:#f5f7ef;color:#5c6c4d;border:1px solid var(--line);font-size:12px}.line-dots button.active{background:#e8f1d5;border-color:#b5c78c;color:var(--ink)}.line-dots button.saved{background:var(--lime);color:var(--ink)}.speaking-label{display:inline-block;background:#edf1e5;color:#4d603b;padding:4px 7px;border-radius:4px;font-size:11px;font-weight:700;letter-spacing:1px}blockquote{font:600 clamp(24px,2.1vw,31px)/1.3 var(--display);letter-spacing:-.8px;margin:16px 0 14px}.delivery-tip{font-size:14px;color:var(--muted);min-height:42px}.reference-button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:12px;background:#fafbf5;border:1px solid var(--line);border-radius:10px;margin:20px 0 10px;color:#50613d;font-size:14px}.reference-button .reference-label{display:flex;align-items:center;gap:8px}.waveform{height:51px;display:flex;align-items:center;justify-content:center;gap:3px;overflow:hidden}.waveform span{width:3px;max-height:47px;border-radius:3px;background:#ccd7ba}.waveform.has-take span{background:#93ac4c}.waveform.recording span{background:#71912c}.record-status{font-size:13px;line-height:1.45;color:#536447;text-align:center;min-height:38px;padding:5px 0;margin:4px 0 9px}.record-button{width:100%}.record-button kbd{margin-left:auto;font:11px var(--font);border:1px solid #9cb453;padding:0 5px;border-radius:4px}.record-button.is-recording{background:#f5dbd5;color:#813329}.stop-square{width:12px;height:12px;background:currentColor;border-radius:2px}.take-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:9px;margin-top:10px}.sample-button{background:transparent;font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:3px;margin-top:15px;display:block;width:100%;padding:6px}.panel-footer{border-top:1px solid var(--line);padding:13px 18px;color:var(--muted);font-size:12px;text-align:center}.mic-check{width:100%;justify-content:space-between;font-size:13px;margin-top:15px;background:transparent;padding:10px 2px;color:var(--muted);display:flex;align-items:center;border-top:1px solid var(--line)}.mic-check .reference-label{display:flex;align-items:center;gap:6px}.cue-track{margin-top:13px;display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.result-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.85fr);gap:30px;align-items:start}.result-info{padding:26px;border:1px solid var(--line);background:white;border-radius:17px}.result-info h2{font-size:30px;letter-spacing:-1px;margin:11px 0}.result-info p{color:var(--muted);font-size:14px;margin-bottom:20px}.result-info .primary,.result-info .secondary{width:100%;margin-bottom:10px}.result-info .small-note{margin:4px 0 20px}.result-name{display:block;font-size:13px;color:var(--muted);margin-bottom:5px}.title-input{width:100%;border:1px solid var(--line);background:#fafbf8;padding:11px 13px;border-radius:8px;font-size:15px;margin-bottom:18px}.export-progress{height:6px;background:var(--soft);border-radius:10px;overflow:hidden;margin:12px 0}.export-progress div{height:100%;width:0;background:#8baa39}.next-scene{margin-top:35px;border-top:1px solid var(--line);padding-top:25px}.next-scene .scene-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.works-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.work-card{border:1px solid var(--line);background:white;border-radius:15px;overflow:hidden}.work-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.work-body{padding:18px}.work-body h3{font-size:20px;overflow-wrap:anywhere}.work-meta{font-size:13px;color:var(--muted);margin:6px 0 16px}.work-actions{display:flex;gap:8px;align-items:center}.work-actions a{flex:1}.work-actions .icon-button{margin-left:auto;background:transparent;color:var(--muted)}.work-badge{display:inline-block;font-size:11px;padding:3px 7px;border-radius:4px;background:var(--soft);color:#566747;margin-bottom:8px}.work-badge.complete{background:var(--lime);color:var(--ink)}dialog{border:1px solid var(--line);border-radius:18px;padding:32px;max-width:480px;width:calc(100% - 32px);color:var(--ink);background:#fff}dialog::backdrop{background:rgba(12,24,15,.52)}.modal-close{position:absolute;right:12px;top:12px;background:transparent}.modal-eyebrow{font-size:12px;font-weight:700;letter-spacing:1.4px;color:#668048;margin-bottom:14px}dialog h2{font-size:30px;letter-spacing:-1px;margin:12px 0}dialog p{font-size:14px;color:var(--muted);margin:12px 0}.modal-steps{padding-left:23px;font-size:15px}.modal-steps li{padding:9px 0}.mic-meter{display:flex;height:55px;align-items:center;justify-content:center;gap:4px;background:#f5f7ef;border-radius:10px;margin:16px 0}.mic-meter span{height:4px;width:5px;background:#8fac3f;border-radius:3px}.mic-select{width:100%;border:1px solid var(--line);background:white;border-radius:8px;padding:9px;font-size:14px;margin:7px 0 12px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:12px;padding:12px 18px;font-size:14px;z-index:50;max-width:calc(100vw - 30px);box-shadow:0 8px 35px #18201930}.search-empty{grid-column:1/-1;padding:30px;color:var(--muted)}.next-scene-note{font-size:13px;color:var(--muted);margin-bottom:12px}
@media(min-width:1500px){main{padding-top:44px}}@media(max-width:1000px){main{padding:28px 25px 35px}.home-feature{gap:28px}.workspace{grid-template-columns:minmax(0,1.15fr) minmax(300px,1fr);gap:20px}.record-content{padding:20px}.headphone-note{display:none}.site-footer{margin:0 25px}.result-layout{gap:20px}}@media(max-width:760px){.topbar{height:72px;padding:0 18px;gap:8px}.brand{font-size:25px}.brand-icon{width:32px;height:32px;margin-right:7px}nav{gap:1px}nav a{padding:8px 10px;font-size:13px}.help-button span{display:none}.help-button{padding:6px}main{padding:25px 18px 35px}.home-feature{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.home-copy h1{font-size:43px;letter-spacing:-2px}.home-copy p{max-width:420px;font-size:16px;margin-bottom:20px}.home-copy h1 br{display:none}.home-copy .small-note{display:inline-block;margin-left:12px}.feature-preview{aspect-ratio:16/9}.scene-grid,.works-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 16px}.card-heading h3{font-size:18px}.card-description{font-size:13px}.card-meta{font-size:12px}.how-strip{gap:18px}.how-strip b{font-size:14px}.how-strip p{font-size:13px}.section-header h2{font-size:25px}.filter-bar{flex-wrap:wrap;gap:12px}.scene-search{width:100%}.workspace,.result-layout{grid-template-columns:1fr}.page-heading h1{font-size:29px}.page-heading{gap:10px}.page-heading>.saved-state{display:none}.scene-stage{border-radius:14px}.stage-caption{font-size:16px;padding:9px 12px;left:12px;right:12px;bottom:18px}.cast-options{gap:10px}.cast-card{padding:11px}.record-content{padding:24px}.record-panel{border-radius:14px}.record-panel blockquote{font-size:29px}.delivery-tip{min-height:0}.line-position{margin-bottom:20px}.waveform{height:45px}.record-status{min-height:31px}.both-roles{margin-bottom:4px}.result-info{padding:24px}.next-scene .scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.next-scene .scene-card:last-child{display:none}.site-footer{margin:0 18px;flex-wrap:wrap;padding:22px 0;gap:8px 16px}.site-footer>span:last-child{width:100%}}@media(max-width:400px){.brand-icon{display:none}nav a{padding:8px 8px}.topbar{padding:0 14px}.brand{font-size:23px}main{padding-left:14px;padding-right:14px}.home-copy h1{font-size:38px}.home-copy .small-note{margin-left:0;display:block}.scene-grid,.works-list{grid-template-columns:1fr}.scene-card .card-image{aspect-ratio:16/9}.how-strip{grid-template-columns:1fr;gap:17px}.record-content{padding:20px}.cast-avatar{width:34px;height:34px}.cast-card{gap:8px;padding:9px}.cast-info small{font-size:11px}.cast-radio{display:none}.take-actions{grid-template-columns:1fr 1fr}.primary,.secondary{padding:12px}.next-scene .scene-grid{grid-template-columns:1fr}.next-scene .scene-card:nth-child(2){display:none}.page-heading h1{font-size:27px}.scene-count{font-size:12px}.stage-caption{font-size:14px}.stage-caption small{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.stage-audio{position:absolute;right:10px;bottom:8px;background:rgba(15,25,18,.75);color:white;border:1px solid #ffffff33}.stage-stop{position:absolute;left:12px;bottom:9px;min-height:32px;padding:5px 11px;font-size:12px;background:#fff}.feature-preview .stage-caption{font-size:17px;bottom:44px}.feature-preview:has(#stage-center[hidden]) .preview-name{display:none}.scene-stage .stage-caption{bottom:54px}.how-strip{margin-bottom:10px}.work-meta br{line-height:1.8}
@media(max-width:760px){.workspace .scene-column{display:contents}.workspace .scene-stage{position:sticky;top:10px;z-index:3;box-shadow:0 5px 18px #19201f24}.workspace .scene-meta{padding:0}.workspace .record-panel{scroll-margin-top:230px}.workspace .record-content button{scroll-margin-top:230px}}

@media(max-width:600px){.topbar{height:auto;min-height:94px;display:grid;grid-template-columns:1fr auto;gap:8px;padding-top:12px;padding-bottom:10px}.topbar .brand{grid-column:1;grid-row:1}.topbar .help-button{grid-column:2;grid-row:1}.topbar nav{grid-column:1/-1;grid-row:2;justify-content:center}.footer-brand{font-size:20px}}

/* Layout and interaction refinement: preserve the original visual language. */
main:focus,blockquote:focus{outline:none}
.help-button,.icon-button{min-width:44px;min-height:44px}
.scene-count,.take-badge,.section-header>.text-button{flex-shrink:0;white-space:nowrap}
.filter-chip{min-height:44px}
.card-heading{gap:12px}
.card-heading>svg{width:34px;height:34px;padding:9px;border-radius:50%;background:#e9eee1;color:#425535;stroke-width:2}
.scene-card:focus-visible .card-image{box-shadow:0 0 0 3px #718e2a}
.search-empty{border:1px dashed #bcc8ae;border-radius:15px;background:#fafbf8;padding:44px 24px;text-align:center}
.search-empty h2{font-size:25px;letter-spacing:-.7px;color:var(--ink)}
.search-empty p{font-size:15px;margin:8px 0 20px}
.line-position{letter-spacing:.65px;gap:14px}
.line-position:has(button:nth-child(4)){flex-direction:column;align-items:flex-start;gap:12px}
.line-dots{max-width:none;gap:6px}
.line-dots button{width:36px;height:36px;font-weight:600;flex-shrink:0}
.line-dots button.active{outline:2px solid #617a35;outline-offset:2px}
.line-dots button.saved{border-color:#a6c353}
.waveform-label{font-size:12px;color:var(--muted);margin-top:16px;text-align:center}
.record-status{font-size:14px}
.record-status.is-error,#mic-hint.is-error{color:#8a392e;background:#fff4f0;border-radius:8px;padding:10px 12px}
.sample-button,.panel-footer,.cast-info small{font-size:13px}
.sample-button,.mic-check{min-height:44px}
.work-card{display:flex;flex-direction:column}
.work-body{flex:1;display:flex;flex-direction:column;align-items:flex-start}
.work-body h3{line-height:1.35}
.work-actions{width:100%;margin-top:auto}
.work-actions a{min-width:0}
.delete-link{background:transparent;color:#86493e;font-size:13px;min-width:52px;min-height:44px;padding:10px 5px;border-radius:8px}
.delete-link:hover{background:#fff3ef}
.work-badge,.take-badge{font-size:12px}
.work-meta{line-height:1.6}
.work-meta time{font-size:12px}
dialog{max-height:calc(100svh - 32px);overflow:auto}
.modal-close{width:44px;height:44px}
.modal-eyebrow{display:block;padding-right:28px}
.modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.modal-actions button{flex:1;min-height:48px;white-space:nowrap}
.mic-actions{flex-direction:column}
.danger-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #b35a4b;border-radius:11px;background:#a94535;color:white;padding:12px 19px;font-weight:600}
.danger-button:hover{background:#933b2d}
.mic-meter{overflow:hidden}
.mic-meter span{flex-shrink:1}
@media(min-width:761px) and (min-height:650px){.workspace .scene-column{position:sticky;top:20px}}
@media(max-width:760px){
 .home-copy .small-note{display:block;margin-left:0}
 .section-header{align-items:flex-start;gap:14px}
 .section-header p{font-size:14px}
 .scene-count{font-size:13px;margin-top:7px}
 .filters{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:4px 3px 7px;scroll-padding:3px;scrollbar-width:thin}
 .filter-chip{flex-shrink:0;padding:8px 14px}
 .filter-bar{display:block;margin-bottom:20px}
 .scene-search{margin-top:12px}
 .card-description{font-size:14px}
 .card-meta{font-size:13px}
 .how-strip b{font-size:15px}
 .how-strip p{font-size:14px}
 .workspace{gap:18px}
 .workspace .studio-preview{position:sticky;top:0;z-index:3;background:var(--paper);padding-block:10px;margin-block:-10px 0}
 .workspace .scene-stage{position:relative;top:auto;z-index:auto;width:min(100%,calc(40svh * 16 / 9));margin-inline:auto}
 .workspace .record-panel,.workspace .record-content button,.workspace .line-position{scroll-margin-top:var(--preview-clearance,230px)}
 .workspace .scene-meta{font-size:13px;flex-wrap:wrap}
 .stage-top{top:10px;left:12px;right:12px}
 .scene-type,.duration-pill{font-size:11px;letter-spacing:.3px}
 .line-dots button{width:44px;height:44px}
 .line-dots{gap:5px}
 .record-panel .panel-heading{padding:16px 20px}
 .result-layout{gap:16px}
 .result-layout .scene-meta{padding:10px 0 0}
 .result-info h2{font-size:28px}
 .result-info{padding:22px}
 .next-scene .scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .next-scene .scene-card:last-child,.next-scene .scene-card:nth-child(2){display:block}
 .works-heading{flex-wrap:wrap;align-items:flex-start;gap:16px}
 .works-heading .secondary{white-space:nowrap;min-height:44px}
}
@media(max-width:400px){
 .section-header{flex-wrap:wrap;gap:7px}
 .section-header .scene-count{margin-top:0}
 .next-scene .section-header{flex-wrap:nowrap;gap:14px}
 .next-scene .section-header h2{font-size:23px}
 .next-scene .scene-grid{grid-template-columns:1fr}
 .cast-options{gap:8px}
 .cast-info small{font-size:12px}
 .stage-center .big-play{width:50px;height:50px}
 .stage-center{gap:6px}
 .stage-center span{font-size:13px}
 .modal-actions{flex-direction:column}
 dialog{padding:28px 24px}
 dialog h2{font-size:27px}
}
@media(max-width:359px){
 .line-dots{gap:2px}
 .line-dots button{width:40px;height:40px}
 .stage-top{left:9px;right:9px}
 .scene-type,.duration-pill{padding:4px 6px;font-size:10px}
}
@media(max-width:760px) and (max-height:500px){
 .workspace .scene-stage{border-radius:11px}
 .workspace .stage-top{top:7px;left:8px;right:8px}
 .workspace .scene-type,.workspace .duration-pill{font-size:10px;padding:3px 5px}
 .workspace .big-play{width:44px;height:44px}
 .workspace .stage-center{gap:4px}
 .workspace .stage-center span{font-size:12px}
 .workspace .stage-caption{font-size:12px;line-height:1.25;padding:6px 8px;left:8px;right:8px;bottom:51px}
 .workspace .stage-caption small{font-size:9px;letter-spacing:.7px;margin-bottom:3px}
 .workspace .countdown-overlay{font-size:48px}
}

/* Account access follows the existing game, without making sign-in a play gate. */
.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.account-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 17px;border:1px solid #bdc8b7;border-radius:24px;font-size:14px;font-weight:600;white-space:nowrap;background:#fff}
.account-link.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.account-initial{display:grid;place-items:center;border-radius:50%;background:var(--lime);color:var(--ink);width:26px;height:26px;font-size:13px}
.account-link:has(.account-initial){padding:6px 12px 6px 7px}
.topbar nav a{min-height:44px;display:inline-flex;align-items:center}
.account-layout{max-width:990px;margin:35px auto 60px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:28px;align-items:start}
.account-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:40px;min-width:0}
.account-card h1{font-size:34px;line-height:1.18;letter-spacing:-1.2px;margin:16px 0}
.account-card p{color:var(--muted);font-size:16px;margin:16px 0}
.google-signin{width:100%;min-height:44px;margin-top:27px}
.google-signin>div{max-width:100%}
.google-unavailable{height:44px;display:flex;justify-content:center;align-items:center;border:1px solid #cbd1c7;border-radius:24px;background:#f6f7f4;color:#61705b;width:100%;max-width:320px;font-size:14px;font-weight:600;margin-top:27px}
.account-card .auth-unavailable,.account-card #auth-status{font-size:14px;line-height:1.5;margin:12px 0}
.account-card .account-data-note{font-size:14px;padding-top:20px;border-top:1px solid var(--line);margin-top:25px}
.guest-play{display:inline-flex;min-height:44px;align-items:center;margin-top:9px}
.account-local{padding:30px 18px;min-width:0}
.local-icon{display:grid;place-items:center;width:46px;height:46px;background:var(--soft);border-radius:13px;margin-bottom:18px}
.local-icon svg{width:24px;height:24px}
.account-local h2{font-size:25px;letter-spacing:-.7px;line-height:1.3}
.account-local p{font-size:16px;color:var(--muted);margin:14px 0}
.account-local a{min-height:44px;display:inline-flex;align-items:center}
.account-profile{display:flex;align-items:center;gap:17px;margin:25px 0;min-width:0}
.account-profile>div{min-width:0}
.profile-initial{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--lime);font:600 30px var(--display);flex-shrink:0}
.account-profile h1{font-size:29px;overflow-wrap:anywhere;margin:0 0 5px}
.account-profile p{font-size:14px;overflow-wrap:anywhere;margin:0}
.account-connected{display:inline-flex;align-items:center;font-size:14px;color:#456025;background:#eff5e5;border-radius:7px;padding:6px 10px}
.account-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.is-error{color:#a2392b!important}
.toast{width:max-content;max-width:min(560px,calc(100vw - 30px))}
@media(max-width:1100px){.header-actions .help-button span{display:none}.topbar{gap:16px}.topbar nav a{padding-left:14px;padding-right:14px}}
@media(max-width:760px){
 .topbar{height:auto;min-height:110px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:10px 18px}
 .topbar .brand{grid-column:1;grid-row:1}
 .topbar .header-actions{grid-column:2;grid-row:1;gap:6px}
 .topbar nav{grid-column:1/-1;grid-row:2;justify-content:center}
 .account-layout{margin:8px auto 25px;gap:12px}
 .account-card{padding:28px}
 .account-local{padding:25px 14px}
 .account-link{padding:8px 14px}
}
@media(max-width:600px){
 .account-layout{grid-template-columns:1fr}
 .account-card{padding:30px 24px;border-radius:16px}
 .account-card h1{font-size:30px}
 .account-local{padding:25px 8px;border-top:1px solid var(--line);margin-top:12px}
}
@media(max-width:359px){
 .topbar{padding-left:14px;padding-right:14px;gap:6px}
 .topbar .brand{font-size:22px}
 .header-actions{gap:2px!important}
 .account-link{font-size:13px;padding:8px 11px}
 .account-link:has(.account-initial){min-width:44px;padding:6px}
 .account-link-label{display:none}
 .account-card{padding:26px 20px}
 .account-card h1{font-size:27px}
 .account-profile{gap:12px}
 .profile-initial{width:48px;height:48px;font-size:24px}
}

/* Home starts the game; the Scenes page owns the complete catalog. */
.home-page{max-width:1320px;margin:auto}
.home-page .home-feature{grid-template-columns:.88fr 1.12fr;gap:44px;margin-bottom:40px}
.home-page .home-copy h1{font-size:clamp(38px,4vw,58px)}
.home-page .home-copy p{font-size:17px;max-width:360px;line-height:1.6;margin-bottom:22px}
.home-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.home-actions .primary{min-height:48px}
.home-browse,.home-library-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:600;text-underline-offset:4px}
.home-browse:hover,.home-library-link:hover{text-decoration:underline}
.home-start-note{display:block;font-size:14px;color:var(--muted);margin-top:12px;line-height:1.6}
.home-page .preview-name{font-size:20px;bottom:18px}
.home-page .preview-tag{font-size:12px;letter-spacing:.8px}
.home-page .section-header{align-items:center;margin-bottom:22px}
.home-page .section-header p{font-size:16px;margin-top:5px}
.home-library-link{flex-shrink:0;border-bottom:1px solid #bdc8b7;white-space:nowrap}
.home-page .scene-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-page .card-description{font-size:15px;line-height:1.5}
.home-page .card-meta{font-size:14px;margin-top:4px}
.home-how{margin-top:35px;padding:25px 0 0;gap:30px}
.home-how b{font-size:16px}
.home-how p{font-size:15px;line-height:1.5;max-width:340px;margin-top:7px}
.home-resume{display:flex;align-items:center;gap:18px;padding:18px 22px;background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:35px}
.resume-icon{width:44px;height:44px;display:grid;place-items:center;background:var(--soft);border-radius:12px;flex-shrink:0}
.resume-copy{flex:1;min-width:0}
.resume-label{font-size:12px;font-weight:600;color:#5b7146;letter-spacing:.8px}
.resume-copy h2{font-size:20px;letter-spacing:-.4px;margin:2px 0;overflow-wrap:anywhere}
.resume-copy p{font-size:14px;color:var(--muted)}
.home-resume .secondary{flex-shrink:0;min-height:44px}
@media(max-width:1000px){
 .home-page .home-feature{gap:28px}
 .home-page .home-copy h1{font-size:45px}
 .home-actions{gap:9px 16px}
}
@media(max-width:760px){
 .home-page .home-feature{grid-template-columns:1fr;gap:22px;margin-bottom:32px}
 .home-page .home-copy h1{font-size:43px;letter-spacing:-1.8px;margin:12px 0 14px}
 .home-page .home-copy p{font-size:16px;max-width:470px;margin-bottom:18px}
 .home-page .home-start-note{margin-top:8px}
 .home-page .scene-grid{grid-template-columns:1fr;gap:24px}
 .home-page .scene-card{display:grid;grid-template-columns:minmax(155px,.95fr) minmax(0,1fr);column-gap:18px;align-content:start}
 .home-page .card-image{grid-column:1;grid-row:1/4;aspect-ratio:16/10;align-self:start}
 .home-page .card-heading{grid-column:2;grid-row:1;margin:1px 0 5px;align-items:start}
 .home-page .card-heading h3{font-size:20px;line-height:1.3}
 .home-page .card-heading>svg{width:30px;height:30px;padding:8px}
 .home-page .card-description{grid-column:2;grid-row:2;font-size:15px;margin:0 0 5px}
 .home-page .card-meta{grid-column:2;grid-row:3;font-size:14px;margin:0}
 .home-page .section-header{gap:14px;flex-wrap:wrap}
 .home-page .section-header h2{font-size:26px;letter-spacing:-.8px}
 .home-page .section-header p{font-size:15px}
 .home-page .home-how{grid-template-columns:1fr;gap:16px;margin-top:28px}
 .home-how>div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:12px}
 .home-how p{font-size:14px;max-width:none;margin:0}
 .home-resume{gap:14px;padding:16px;margin-bottom:28px}
 .home-resume .resume-icon{display:none}
 .resume-copy h2{font-size:18px}
}
@media(max-width:500px){
 .home-page .scene-card{grid-template-columns:116px minmax(0,1fr);column-gap:15px;padding-bottom:20px;border-bottom:1px solid var(--line);border-radius:0}
 .home-page .scene-card:last-child{padding-bottom:0;border-bottom:0}
 .home-page .card-image{aspect-ratio:1;border-radius:12px}
 .home-page .card-heading{gap:7px;align-items:center}
 .home-page .card-heading h3{font-size:18px}
 .home-page .card-heading>svg{width:27px;height:27px;padding:7px}
 .home-page .card-tag{top:8px;left:7px;padding:3px 5px;font-size:11px}
 .home-page .card-time{bottom:7px;right:7px;font-size:11px;padding:3px 5px}
 .home-page .card-description{font-size:14px;line-height:1.45}
 .home-page .card-meta{font-size:13px;line-height:1.5}
 .home-page .preview-tag{top:12px;left:12px;font-size:11px}
 .home-page .preview-name{left:14px;bottom:12px;font-size:18px}
 .home-how>div{grid-template-columns:1fr;gap:4px}
 .home-how p{font-size:14px}
 .home-resume{align-items:flex-start;flex-direction:column;gap:12px}
 .home-resume .secondary{width:100%}
 .home-page .home-browse{font-size:14px}
}
@media(max-width:359px){
 .home-page .home-copy h1{font-size:37px;letter-spacing:-1.5px}
 .home-page .home-start-note{font-size:13px}
 .home-page .scene-card{grid-template-columns:100px minmax(0,1fr);column-gap:12px}
 .home-page .card-heading h3{font-size:17px}
 .home-page .card-heading>svg{display:none}
 .home-page .card-image{min-height:110px}
 .home-page .section-header h2{font-size:24px}
}

/* The landing page explains the game after the immediate play entry. */
.landing-how{border-top:1px solid var(--line);margin-top:56px;padding-top:52px;scroll-margin-top:28px}
.landing-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.landing-intro h2,.play-your-way h2,.faq-intro h2{font-size:clamp(30px,3vw,40px);line-height:1.15;letter-spacing:-1.5px;margin-top:13px}
.landing-intro>p{font-size:17px;line-height:1.7;color:var(--muted);max-width:550px}
.play-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;list-style:none;padding:0;margin:38px 0 0}
.play-step-number{display:block;font:500 29px var(--display);color:#6d8349;letter-spacing:-1px}
.play-steps h3{font-size:21px;letter-spacing:-.6px;margin:10px 0 9px}
.play-steps p{font-size:15px;line-height:1.65;color:var(--muted);max-width:340px}
.landing-play{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;background:#202a24;color:#f5f8ef;border-radius:22px;padding:45px 48px;margin-top:55px}
.delivery-example{min-width:0;border:1px solid #59684f;border-radius:15px;padding:28px;background:#2a362d}
.delivery-label{font-size:12px;font-weight:600;letter-spacing:1.2px;color:#d4f76a}
.delivery-example blockquote{font-size:clamp(26px,3.3vw,43px);letter-spacing:-1.4px;line-height:1.15;margin:24px 0;max-width:330px}
.delivery-directions{display:flex;gap:7px;flex-wrap:wrap}
.delivery-directions span{font-size:12px;border:1px solid #59684f;border-radius:20px;padding:5px 10px;color:#e1e9d9}
.delivery-source{font-size:13px;display:block;color:#b7c5ae;border-top:1px solid #48573f;padding-top:20px;margin-top:24px}
.delivery-source a{display:inline-flex;gap:6px;align-items:center;color:#edf4e5;text-decoration:underline;text-underline-offset:4px}
.delivery-source a svg{width:15px;height:15px}
.play-your-way .eyebrow{color:#d4f76a}
.play-your-way h2{font-size:34px}
.play-your-way>p{font-size:16px;line-height:1.65;color:#c3ceba;margin:17px 0 22px;max-width:450px}
.play-benefits{list-style:none;margin:0;padding:0;display:grid;gap:13px;font-size:14px}
.play-benefits li{display:flex;align-items:center;gap:10px}
.play-benefits svg{width:18px;height:18px;color:#d4f76a}
.landing-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start;margin-top:65px;scroll-margin-top:28px}
.faq-intro>p{max-width:300px;font-size:16px;color:var(--muted);line-height:1.65;margin:20px 0}
.faq-caption{display:block;font-size:14px;color:#61784d;line-height:1.8}
.faq-list{border-top:1px solid #c7d0c0}
.faq-item{border-bottom:1px solid #c7d0c0}
.faq-item summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;min-height:64px;font-size:16px;font-weight:600;line-height:1.5}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:focus-visible{outline:3px solid #526d24;outline-offset:4px;border-radius:4px}
.faq-toggle{font-weight:400;font-size:24px;line-height:1;width:24px;flex-shrink:0;display:grid;place-items:center;transition:transform .15s;color:#597445}
.faq-item[open] .faq-toggle{transform:rotate(45deg)}
.faq-answer{padding:0 36px 23px 0;color:var(--muted);font-size:15px;line-height:1.75}
.landing-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;background:#e9efdf;border:1px solid #dae4cc;border-radius:18px;padding:32px 38px;margin-top:60px}
.landing-cta h2{font-size:34px;letter-spacing:-1px;margin:6px 0}
.landing-cta p{color:var(--muted);font-size:15px}
.landing-cta .primary{flex-shrink:0;min-height:52px;padding-inline:25px}
.footer-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.footer-links a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
.no-script-note{max-width:1320px;margin:0 auto 30px;padding:14px 20px;border:1px solid var(--line);background:var(--soft);border-radius:12px}
@media(max-width:1000px){
 .landing-intro,.landing-play{gap:35px}
 .landing-play{padding:35px}
 .delivery-example{padding:22px}
 .landing-faq{gap:40px}
 .footer-links{gap:18px}
}
@media(max-width:760px){
 .landing-how{margin-top:35px;padding-top:30px}
 .landing-intro{grid-template-columns:1fr;gap:18px}
 .landing-intro h2,.faq-intro h2{font-size:31px;letter-spacing:-1.1px}
 .landing-intro>p{font-size:16px;line-height:1.65}
 .play-steps{grid-template-columns:1fr;gap:22px;margin-top:28px}
 .play-steps li{display:grid;grid-template-columns:44px 1fr;column-gap:15px}
 .play-step-number{grid-column:1;grid-row:1/3;font-size:24px;margin-top:1px}
 .play-steps h3{margin:0 0 6px;font-size:20px}
 .play-steps p{grid-column:2;font-size:15px;max-width:none}
 .landing-play{grid-template-columns:1fr;gap:30px;padding:28px;margin-top:36px;border-radius:17px}
 .delivery-example{padding:24px}
 .delivery-example blockquote{font-size:36px;max-width:100%;margin:23px 0}
 .play-your-way h2{font-size:30px;letter-spacing:-1px}
 .landing-faq{grid-template-columns:1fr;gap:25px;margin-top:40px}
 .faq-intro h2 br{display:none}
 .faq-intro>p{max-width:500px;margin:12px 0 0;font-size:15px}
 .faq-caption{display:none}
 .faq-item summary{font-size:15px;padding:18px 0;gap:14px;min-height:60px}
 .faq-answer{padding-right:25px;font-size:15px;line-height:1.7}
 .landing-cta{padding:27px 25px;margin-top:35px;flex-wrap:wrap;gap:20px}
 .landing-cta h2{font-size:30px}
 .footer-links{gap:22px}
 .no-script-note{margin:0 18px 25px}
}
@media(max-width:400px){
 .landing-play{padding:23px 19px}
 .delivery-example{padding:20px 17px}
 .delivery-example blockquote{font-size:31px;letter-spacing:-1px}
 .delivery-directions span{font-size:11px;padding:5px 8px}
 .landing-cta{padding:25px 22px}
 .landing-cta .primary{width:100%;padding-inline:15px}
 .faq-item summary{font-size:15px}
}

.scene-breadcrumb{align-items:center;gap:9px;color:var(--muted);font-size:13px;margin-bottom:12px}
.scene-breadcrumb a{padding:0;border-radius:0;font:inherit;color:inherit}
.scene-breadcrumb a:hover{text-decoration:underline}

.landing-recording{border-top:1px solid var(--line);margin-top:60px;padding-top:48px}
.play-your-way>p+p{margin-top:16px}
.landing-saving{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-top:1px solid var(--line);margin-top:60px;padding-top:48px;align-items:start}
.landing-saving h2{font-size:clamp(30px,3vw,40px);line-height:1.15;letter-spacing:-1.5px;margin-top:13px}
.saving-copy p{font-size:16px;line-height:1.7;color:var(--muted);margin-bottom:18px}
.saving-copy>a{display:inline-flex;align-items:center;gap:8px}
.faq-source{display:inline-flex;align-items:center;gap:7px;text-decoration:underline;text-underline-offset:3px}
.faq-source svg{width:16px;height:16px}
@media(max-width:760px){
 .landing-recording{margin-top:40px;padding-top:30px}
 .landing-saving{grid-template-columns:1fr;gap:20px;margin-top:40px;padding-top:30px}
 .landing-saving h2{font-size:31px;letter-spacing:-1.1px}
 .saving-copy p{font-size:15px}
}
