:root{font-family:Arial,Helvetica,sans-serif;color:#f1ead7;background:#111b20;font-synthesis:none;font-weight:400;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,a,input{touch-action:manipulation}button{font:inherit;cursor:pointer;color:inherit;background:none;border:1px solid #526063;border-radius:3px;padding:12px 17px;min-height:44px}button:hover{background:#263337;border-color:#d3bb86}button:disabled{cursor:default;opacity:.42}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #efc771;outline-offset:4px}a{color:inherit;text-decoration:none}main{max-width:1540px;margin:auto;padding:0 5vw}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #344247;padding:25px 0;gap:20px}.wordmark{font-size:12px;font-weight:700;letter-spacing:.19em}.wordmark span{color:#ba9e68;margin-left:24px}nav{display:flex;gap:6px}nav button{font-size:12px;border-color:transparent;padding:9px 13px}.heading{display:flex;justify-content:space-between;align-items:end;padding:36px 0 28px;gap:24px}.eyebrow{font-size:10px;letter-spacing:.19em;text-transform:uppercase;color:#b5bfb9;margin:0 0 18px}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(34px,4vw,61px);line-height:1.02;letter-spacing:-.045em;margin:0}h1 em{color:#d1b274;font-weight:400}h2{font-family:Georgia,serif;font-size:32px;font-weight:400;line-height:1.15}h3{font-family:Georgia,serif;font-size:23px;font-weight:400}.invitation{font-family:Georgia,serif;font-size:17px;line-height:1.7;color:#e4dec9;margin-bottom:2px}.invitation span{color:#a9b5b2}.theatre{max-width:1120px;margin:auto}.proscenium{border:1px solid #39474b;padding:12px;background:#0a1216;box-shadow:0 24px 60px #0004}.stage-label,.stage-footer{display:flex;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:.16em;color:#b5b6a9;padding:10px 8px 15px}.stage-footer{padding:16px 8px 6px}.stage-wrap{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1000/560}.stage-wrap svg{width:100%;height:100%;display:block}.curtain{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(90deg,#5b292b,#81413d 14%,#532628 27%,#6d3431 39%,#381c23 49%);box-shadow:0 0 22px #0008;border-bottom:8px solid #a37b52;pointer-events:none}.curtain:after{content:"";position:absolute;bottom:9px;left:0;right:0;border-bottom:1px solid #c69d6066}.curtain.left{left:0;border-right:2px solid #a77153}.curtain.right{right:0;transform:scaleX(-1);border-right:2px solid #a77153}.stage-input{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;z-index:3;touch-action:none}.stage-input:hover{background:transparent}.stage-input:disabled{opacity:1}.stage-input:focus-visible{outline-offset:-6px}.stage-note{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;text-shadow:0 2px 15px #000}.stage-note span{color:#dcbd81;font:italic 30px Georgia,serif}.stage-note p{font:24px/1.3 Georgia,serif;color:#fff4de}.caption{text-align:center;font:italic 16px/1.5 Georgia,serif;color:#bac3b9;min-height:52px;padding:18px 12px}.controls{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;padding:8px 0}.controls button{font-size:12px}.primary{background:#d6bd87;color:#152126;border-color:#d6bd87;min-width:215px}.primary:hover{background:#f2d89f;color:#132126}.primary span{padding-left:25px}.notice{min-height:20px;text-align:center;font-size:13px;color:#efcf8c}.panel{max-width:1000px;margin:28px auto;padding:30px;background:#1b2a2e;border:1px solid #4a5c5b;line-height:1.65}.panel-head{display:flex;align-items:center;justify-content:space-between}.panel-head .eyebrow{margin:0}.panel p,.panel ol{color:#ccd3ca;font-size:14px}.panel button{margin:4px;font-size:13px}fieldset{border:1px solid #4a5c5b;padding:20px;margin-bottom:20px}legend{font-size:12px;color:#d6bd87;letter-spacing:.1em}.edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:flex;flex-direction:column;font-size:12px;gap:10px}input{width:100%;min-height:42px;padding:10px;background:#111e22;border:1px solid #526063;color:#f1ead7;font:inherit}input[type=color]{padding:3px;width:100%}.file-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.file-button{position:relative;overflow:hidden;border:1px solid #526063;min-height:44px;padding:10px 17px;font-size:13px;cursor:pointer}.file-button:focus-within{outline:3px solid #efc771}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.events{list-style:none;padding:0;max-height:420px;overflow:auto}.events li{display:flex;gap:20px;justify-content:space-between;padding:10px;border-bottom:1px solid #405052;font-family:monospace;font-size:12px}.events time{min-width:90px}.replay{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;align-items:center;font-size:12px}.replay span{width:100%;text-align:center;padding:10px}.replay button{font-size:12px}.replay button[aria-pressed=true]{border-color:#eac981;color:#eac981}footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #344247;padding:20px 0;margin-top:20px;color:#91a3a3;font-size:11px;gap:20px}footer button{border:0;font-size:11px}@media(min-width:1450px){.theatre{max-width:1000px}}@media(max-width:650px){main{padding:0 18px}header{align-items:start;flex-direction:column;gap:12px;padding:18px 0}nav{width:100%;justify-content:space-between}nav button{padding:8px}.heading{padding:26px 0;align-items:start;flex-direction:column}.invitation{font-size:14px;margin:0}.stage-label{font-size:7px;letter-spacing:.06em}.stage-note p{font-size:18px}.proscenium{padding:6px}.stage-footer{font-size:7px}.caption{font-size:14px}.controls{justify-content:stretch}.controls button{flex:1}.panel{padding:18px}.edit-grid{grid-template-columns:1fr}h2{font-size:28px}.events li{gap:8px;font-size:10px}footer{align-items:start}.wordmark span{margin-left:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.studio-preview{max-width:570px;margin:20px auto;text-align:center}.studio-preview svg{width:100%;height:auto}.studio-preview p{font-style:italic;font-size:12px}
