*{box-sizing:border-box}body{margin:0;background:#eae6dc;color:#26332e;font:16px/1.5 system-ui,sans-serif}main{max-width:1240px;margin:auto;padding:28px}header{margin-bottom:24px}header>p:first-child{font-size:12px;letter-spacing:.18em}h1{font:normal 52px Georgia,serif;margin:8px 0}h2{font:normal 28px Georgia,serif}a{color:#31574a}button,select,textarea,input{font:inherit}button,select,textarea{border:1px solid #78887a;border-radius:6px;padding:9px;background:#f8f6f0;color:inherit}button{cursor:pointer}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #c37c36;outline-offset:3px}.controls{display:flex;gap:14px;flex-wrap:wrap;align-items:end;margin:18px 0}.controls label{display:flex;flex-direction:column;gap:5px;font-size:13px}.controls select{min-width:155px}.controls .check{display:flex;flex-direction:row;align-items:center}.wide{flex:1;min-width:min(100%,300px)}.viewport{overflow:auto;background:#111c24;border:1px solid #737d70;border-radius:8px}#stage{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden}#stage.zoom{width:1600px;height:900px}#stage>img,#layers>img{width:100%;height:100%;position:absolute;inset:0}#image-b{opacity:1}#dialogue{position:absolute;left:4%;right:4%;top:78%;bottom:3%;border:1px solid #e0d6bd88;background:#172d27e8;color:#f8f2df;padding:1.1% 2%;border-radius:5px;overflow:auto}#dialogue strong{font-size:clamp(9px,1.1vw,14px);letter-spacing:.12em}#dialogue p{font-size:clamp(10px,1.8vw,23px);margin:4px 0}.actor{position:absolute;top:28%;height:58%;width:15%;border:2px dashed #f9e6ba;background:#2c3c4c55;border-radius:45% 45% 7% 7%}.actor:before{content:'';position:absolute;left:20%;right:20%;height:22%;top:-14%;border-radius:50%;background:#e3d6b9aa}.actor-a{left:29%}.actor-b{left:55%}#layers{position:relative;width:100%;aspect-ratio:16/9;background:#17232e}footer{margin-top:32px;padding-top:12px;border-top:1px solid #a6ad9e}#status{overflow-wrap:anywhere;font-family:monospace}textarea{width:100%;resize:vertical}@media(max-width:600px){main{padding:16px}h1{font-size:38px}.controls{gap:10px}.controls label:not(.check){width:100%}.controls select{width:100%}.controls button{flex:1}header p{font-size:14px}#dialogue{padding:1% 2%}#dialogue strong{font-size:7px}#dialogue p{font-size:9px;line-height:1.2}}