@font-face{font-family:GFL;src:url('/fonts/gfl-ui-regular.ttf')}*{box-sizing:border-box}body{margin:0;background:#101820;color:#e8ede8;font:14px GFL,Segoe UI,sans-serif}header{padding:12px 20px;border-bottom:2px solid #cbd54c;display:flex;justify-content:space-between;align-items:center}h1{font-size:22px}h2{font-size:18px;color:#e4c67d}a{color:#e4c67d}main{display:grid;grid-template-columns:minmax(240px,1fr) 2fr;gap:20px;padding:20px}section{min-width:0}input,select,button,textarea{font:inherit;background:#1b2b34;color:#eee;border:1px solid #52636b;padding:8px;border-radius:3px}button{cursor:pointer}label{display:block;margin:6px 0}#rigs,#actors,textarea{width:100%}#rigs{height:260px}#rig-preview{height:300px;position:relative;overflow:hidden;background:#15232a}canvas{width:100%;height:100%}.fields,.buttons{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.fields input{width:100px}.fields label input{display:block}p{color:#a8bbc1;line-height:1.5}#cues li{margin:8px 0}#cues button{margin-left:8px}.preview{padding:20px}.preview iframe{width:100%;height:650px;border:1px solid #52636b}textarea{font-family:monospace}#related{max-height:180px;overflow:auto}@media(max-width:700px){main{grid-template-columns:1fr}.preview iframe{height:480px}}
.preview{padding:12px 20px 0}.preview h2{margin:5px 0}#canvas-wrap{position:relative;aspect-ratio:16/9;max-height:65dvh;width:min(100%,1150px);margin:auto;background:#080d11}#canvas-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}#guides{position:absolute;inset:0;width:100%;height:100%;touch-action:none;overflow:hidden}#guides .route{fill:none;stroke:#73e8f7;stroke-width:3;stroke-dasharray:8 5;pointer-events:none}#guides .handle{fill:#142832;stroke:#73e8f7;stroke-width:3;cursor:grab}#guides .handle.selected{fill:#4c9da7}#guides text{fill:white;font-size:13px;paint-order:stroke;stroke:#101820;stroke-width:4px;pointer-events:none}#guides .camera-box{fill:#eac5750b;stroke:#eac575;stroke-width:2;stroke-dasharray:10 5;cursor:move}#camera-controls{padding:8px 20px;border-bottom:1px solid #52636b}#camera-controls h2{margin:4px 0}#edit-time{width:240px}.cue-selected{outline:1px solid #73e8f7}.cue-select{background:#273d46}#canvas-help{margin:5px 0;font-size:12px}

#canvas-wrap{width:min(100%,1150px,115.555dvh);max-height:none}#camera-preset{max-width:100%}.fields>label{font-size:12px;color:#b9c9ce}.fields>label input{margin-top:3px}
