.studio-modal-open{overflow:hidden}.studio-dialog{width:min(1200px,94vw);max-width:94vw;height:min(850px,94dvh);max-height:94dvh;padding:0;background:#0b0e11;color:#f5efdf;border:1px solid #b69a5d66;box-shadow:0 30px 100px #000c}.studio-dialog::backdrop{background:#000d;backdrop-filter:blur(10px)}.studio-dialog header{display:flex;align-items:center;justify-content:space-between;padding:20px 26px;border-bottom:1px solid #ffffff18}.studio-dialog h2{font-size:clamp(24px,3vw,38px);margin:5px 0 0}.studio-dialog header .eyebrow{font-size:9px}.studio-canvas{height:calc(100% - 260px);min-height:250px;position:relative;touch-action:none}.studio-canvas canvas{display:block;width:100%;height:100%}.studio-loading{position:absolute;inset:35% 8% auto;text-align:center;color:#d6bd86;line-height:1.7}.studio-tools{padding:16px 26px}.studio-status{font-size:10px;letter-spacing:.15em;color:#d6bd86}.studio-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.studio-controls label,.director-controls label{font-size:10px;display:grid;gap:8px;color:#d3cab9}.studio-controls input{width:120px;accent-color:#d6bd86}.studio-controls select,.director-controls select{background:#171b1e;color:#e9dbbb;padding:9px;border:1px solid #d6bd8644}.studio-tip{font-size:11px;color:#949b9f;margin:15px 0 0}.equipment-bottom{flex-wrap:wrap;gap:15px}.explore-model{font-size:10px;white-space:nowrap}.director-controls{display:grid;gap:14px;border-top:1px solid #ffffff20;padding-top:14px;margin-top:12px}.light-console[open]{max-height:65vh;overflow-y:auto}.moving-light{animation-duration:var(--sweep-time,9s)}.lamp-beam{scale:var(--beam-width,1) 1;transform-origin:50% 0}.freeze-lights .moving-light{animation-play-state:paused!important}.studio-haze{position:absolute;inset:10% 0 0;pointer-events:none;background:radial-gradient(ellipse at 65% 55%,color-mix(in srgb,var(--lamp-color) 9%,transparent),transparent 60%);opacity:calc(var(--ready-gate,0)*var(--lamp-power,.75));filter:blur(25px);z-index:3}.piano-light-stage{height:180px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 100%,#7b602c44,transparent 60%),#07090b;border:1px solid #d6bd8622;margin-bottom:22px}.piano-light-stage img{position:absolute;width:150px;left:calc(50% - 75px);top:48px;z-index:2}.piano-light-stage i{position:absolute;left:calc(var(--i)*12.5%);top:0;width:13%;height:100%;opacity:.1;background:linear-gradient(var(--note-color,#dfbf79),transparent);clip-path:polygon(45% 0,55% 0,100% 100%,0 100%)}@media(max-width:760px){.studio-dialog header{padding:14px}.studio-dialog{height:94dvh}.studio-tools{padding:12px 14px}.studio-canvas{height:calc(100% - 310px)}.studio-controls{gap:10px}.studio-controls button{padding:12px;font-size:10px}.equipment-bottom .explore-model{padding:10px}.equipment-bottom{bottom:80px!important}.light-console[open]{max-height:55vh}.studio-tip{font-size:9px}}@media(prefers-reduced-motion:reduce){.studio-haze{filter:none}}
.brief-step{border:0;padding:0;margin:0;min-width:0}.brief-step[hidden]{display:none}.brief-step legend{font-size:25px;font-family:Georgia,serif;margin:0 0 24px;color:#e6ca8d}.brief-progress{display:flex;gap:8px;margin-bottom:35px}.brief-progress button{flex:1;padding:13px 8px;border:1px solid #ffffff20;background:transparent;color:#999;font-size:10px;line-height:1.5}.brief-progress button[aria-current=step]{border-color:#c3a468;color:#e6ca8d}.brief-progress button:disabled{opacity:.4}.brief-navigation{display:flex;justify-content:space-between;margin-top:24px;gap:15px}.brief-review{padding:20px;border:1px solid #c3a46844;background:#c3a46808;margin:24px 0}.brief-review p{font-size:12px;line-height:1.7;margin:8px 0}.brief-review strong{color:#e6ca8d}
.studio-dialog .outline-button,.studio-dialog .gold-button{width:auto;flex:none;min-width:0;background:transparent;border:1px solid #bba26b66;color:#ead7ad;padding:12px 18px;cursor:pointer}.studio-dialog .gold-button{background:#c3a468;color:#101315}.studio-dialog header>div{min-width:0}.studio-dialog h2{font-family:Georgia,serif;font-weight:400}.studio-dialog header{gap:20px}.studio-dialog .studio-close{margin:0;white-space:nowrap}.studio-dialog{overflow:auto}.studio-tools .studio-status{margin:0 0 14px}
@media(max-width:760px){.studio-canvas{height:38dvh;min-height:220px}.studio-dialog header{padding:12px 14px}.studio-dialog h2{font-size:23px;line-height:1.25}.studio-controls input{width:115px}.studio-dialog .studio-close{padding:10px}.studio-tools{padding-bottom:20px}}
