*{box-sizing:border-box}body{margin:0;background:#160e0d;color:#f8f1e6;font-family:"Segoe UI",Tahoma,Arial,sans-serif;line-height:1.6}button,select,a{font:inherit}button,select{min-height:44px}button{cursor:pointer;color:inherit;background:#221a18;border:1px solid #6f5743;border-radius:10px;padding:9px 17px;touch-action:manipulation}button:disabled{opacity:.45;cursor:default}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #f3ddad;outline-offset:4px}[hidden]{display:none!important}h1,h2,h3,p,figure{margin:0}#cinema-world,.shade{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}#cinema-world{z-index:-2}.shade{z-index:-1;background:linear-gradient(#0b080850,#0b080815 45%,#0b080895)}main{max-width:1240px;padding:22px 32px 30px;margin:auto}.game-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;gap:15px}.game-head h1{font-size:32px}.eyebrow{font-size:12px;color:#d7bd8f}.icon{width:48px;padding:0;font-size:23px;border-radius:50%}.panel{background:#151211ec;border:1px solid #5a4536;border-radius:20px;padding:24px}.help{max-width:520px;margin:0 auto 25px}.help p{font-size:14px;color:#d0c6b9;margin:10px 0}.home-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;align-items:center;min-height:530px}.hero-copy h2{font-size:clamp(36px,4vw,57px);line-height:1.3;margin:12px 0 20px}.hero-copy p{color:#d7cfc2;max-width:400px;font-size:17px;margin-bottom:25px}.primary{background:#f3ddad;color:#1d150c;border:0;border-radius:100px;font-weight:700;padding:12px 27px;min-height:54px}.quiet{background:#171211a8;border:1px solid #594537;color:#d7c7b3}.hero-copy .quiet{margin-right:10px}.approved-art{min-width:0}.approved-art>div{position:relative;aspect-ratio:1230/940;overflow:hidden;border-radius:18px;border:1px solid #9e7951;box-shadow:0 25px 70px #000a}.approved-art img{position:absolute;display:block;width:136%;height:100%;max-width:none;top:0;left:0}.approved-art figcaption{text-align:center;color:#d4c8b7;font-size:12px;padding:10px}.original{margin:20px auto;max-width:900px}.original p{color:#d5cbbc;margin:12px 0}.chips{display:flex;gap:8px;flex-wrap:wrap}.chips span{border:1px solid #5f4b37;border-radius:100px;padding:5px 11px;font-size:13px}.view-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px}.view-head h2{font-size:28px}.view-head p{font-size:14px;color:#cabfae;margin-top:5px}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.scene-card{padding:0;overflow:hidden;text-align:right;background:#151211e8;border-radius:18px;border-color:#aa8456}.sample-frame{position:relative;aspect-ratio:1.91;overflow:hidden}.scene-card>div:last-child{padding:18px}.scene-card strong{display:block;font-size:20px}.scene-card span{display:block;font-size:13px;color:#cbbb9f;margin-top:7px}.scene-card .card-cta{color:#f4dfb5}.cast{max-width:700px;margin:30px auto}.roles{display:grid;grid-template-columns:1fr 1fr;gap:16px}.roles button{display:flex;flex-direction:column;align-items:center;gap:5px;border-radius:16px;padding:25px 10px;background:#211916}.roles button[aria-pressed=true]{border:2px solid #e1bd77;background:#3c2b20}.role-symbol{font-size:34px;color:#e9cf9f}.roles strong{font-size:21px}.roles button>span:last-child{font-size:12px;color:#d3c2a8}.dialect{display:flex;align-items:center;gap:15px;justify-content:space-between;margin:23px 0;font-size:14px}.dialect select{max-width:60%;padding:8px 12px;color:#fff0d2;background:#201812;border:1px solid #756048;border-radius:10px}.cast>.primary{width:100%}#performance{max-width:1050px;background:#110f0edb;border-color:#8d6944;border-radius:18px;box-shadow:0 25px 90px #0009}.dub-demo-primary{border-radius:100px}.studio-extra{display:flex;justify-content:center;gap:10px;margin-top:15px;flex-wrap:wrap}.studio-extra button{font-size:12px;padding:8px 13px}.error{color:#ffbfad;font-size:13px;margin-top:12px;text-align:center}.dub-demo-status[data-recording=true]{color:#ffb0a0}.takes{max-width:950px;margin:auto;display:flex;flex-direction:column;gap:15px}.take{background:#151211ec;border:1px solid #675039;border-radius:16px;padding:20px;display:grid;grid-template-columns:1fr auto;gap:13px}.take h3{font-size:17px}.take p{font-size:13px;color:#d1c0a6;margin-top:5px}.take audio{width:100%;grid-column:1/-1;min-width:0}.take-actions{display:flex;gap:10px;align-items:center}.take-actions a{color:#f2d5a0;font-size:13px;padding:10px;text-decoration:none}.take-actions button{font-size:12px}.empty{padding:35px;text-align:center}.empty p{color:#cabb9f;margin:10px 0 22px}footer{text-align:center;font-size:12px;color:#c1af93;margin-top:35px}.dub-control-demo[data-screen-expanded=true] .studio-extra{grid-column:1/-1;margin:0}.dub-control-demo[data-screen-expanded=true] .studio-extra button{padding:4px 12px}.dub-control-demo[data-screen-expanded=true] .error{grid-column:1/-1;margin:0}body[data-room=fallback]{background:linear-gradient(90deg,#370809 0%,#150e0d 18%,#100e0d 82%,#370809 100%)}
@media(max-width:700px){main{padding:15px}.game-head{margin-bottom:23px}.game-head h1{font-size:27px}.home-layout{grid-template-columns:1fr;gap:20px;min-height:0}.hero-copy h2{font-size:38px}.hero-copy p{font-size:15px}.approved-art{max-width:500px;margin:auto;width:100%}.approved-art>div{aspect-ratio:1.55}.approved-art img{height:127%;top:-5%}.hero-copy .quiet{margin-right:0;margin-top:10px}.library-grid{grid-template-columns:1fr;max-width:460px;margin:auto}.view-head{gap:10px}.view-head h2{font-size:24px}.view-head p{font-size:13px}.panel{padding:18px}.take{grid-template-columns:1fr;padding:16px}.take-actions{flex-wrap:wrap}.roles{gap:10px}.roles button{padding:20px 10px}.studio-extra{gap:6px}.studio-extra button{font-size:11px;padding:6px 10px}.dub-control-demo[data-screen-expanded=true] .studio-extra{gap:5px}.dub-control-demo[data-screen-expanded=true] .studio-extra button{min-height:44px;font-size:11px;padding:4px 8px}footer{font-size:11px}}
@media(max-height:450px) and (min-width:521px){.dub-control-demo[data-screen-expanded=true] .studio-extra{position:relative;gap:8px}.dub-control-demo[data-screen-expanded=true] .studio-extra button{min-height:44px;padding:4px 12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Keep ordinary desktop recording controls within the viewport. */
body[data-view=studio] .game-head { margin-bottom:8px; }
body[data-view=studio] .game-head h1 { font-size:27px; }
body[data-view=studio] #studio>.view-head { margin-bottom:10px; }
body[data-view=studio] footer { display:none; }
#performance:not([data-screen-expanded]) { padding:18px; }
#performance:not([data-screen-expanded]) .dub-demo-head { padding-bottom:12px; }
#performance:not([data-screen-expanded]) .dub-demo-title { font-size:21px; }
#performance:not([data-screen-expanded]) .dub-demo-stage { display:flex; justify-content:center; }
#performance:not([data-screen-expanded]) .dub-demo-scene { width:100%; max-width:min(100%,max(400px,calc((100dvh - 430px)*1.91))); }
#performance:not([data-screen-expanded]) .dub-demo-script { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:7px 18px; padding-top:12px; }
#performance:not([data-screen-expanded]) .dub-demo-role-row { grid-column:1; }
#performance:not([data-screen-expanded]) .dub-demo-line { grid-column:1; min-height:0; margin:0; font-size:24px; line-height:1.5; }
#performance:not([data-screen-expanded]) .dub-demo-primary { grid-column:2; grid-row:1/3; width:190px; margin:0; }
#performance:not([data-screen-expanded]) .dub-demo-progress,
#performance:not([data-screen-expanded]) .dub-demo-hint,
#performance:not([data-screen-expanded]) .studio-extra,
#performance:not([data-screen-expanded]) .error { grid-column:1/-1; margin:0; }
@media(max-width:700px) {
 #performance:not([data-screen-expanded]) { padding:14px; }
 #performance:not([data-screen-expanded]) .dub-demo-scene { max-width:none; }
 #performance:not([data-screen-expanded]) .dub-demo-script { grid-template-columns:1fr; gap:8px; }
 #performance:not([data-screen-expanded]) .dub-demo-primary { grid-column:1; grid-row:auto; width:100%; }
 #performance:not([data-screen-expanded]) .dub-demo-line { font-size:21px; }
 #performance:not([data-screen-expanded]) .dub-demo-title { font-size:17px; }
 #performance:not([data-screen-expanded]) .dub-demo-simulation { font-size:11px; }
}