:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;--bg:#080808;--bg-raised:#0e0e0e;--panel:#141414;--control:#1c1c1c;--control-hover:#252525;--border:#ffffff12;--border-strong:#ffffff24;--text:#f4f4f4;--muted:#8d8d8d;--accent:#ff7a1a;--accent-hover:#ff9447;--accent-ink:#160a02;--accent-soft:#ff7a1a1f;--warning:#ffd04d;--success:#58d68d;--radius:18px;--radius-sm:12px;--focus:0 0 0 2px var(--bg), 0 0 0 4px #ff7a1abf;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--bg);height:100%;color:var(--text);margin:0}code{background:var(--control);color:var(--text);border-radius:6px;padding:1px 6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.92em}:focus-visible{box-shadow:var(--focus);outline:none}.icon{flex-shrink:0;display:block}.sidebar,.rail,.file-list{scrollbar-width:thin;scrollbar-color:#2a2a2a transparent}.sidebar::-webkit-scrollbar{width:8px}.rail::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-thumb{border:2px solid var(--bg-raised);background:#2a2a2a;border-radius:4px}.rail::-webkit-scrollbar-thumb{border:2px solid var(--bg-raised);background:#2a2a2a;border-radius:4px}.app{grid-template-columns:76px 320px minmax(0,1fr) 300px;grid-template-areas:"nav side main rail";height:100%;display:grid}.sidebar,.rail{background:var(--bg-raised);flex-direction:column;gap:10px;min-height:0;padding:0 14px 20px;display:flex;overflow-y:auto}.sidebar{border-right:1px solid var(--border);grid-area:side}.rail{border-left:1px solid var(--border);grid-area:rail;padding-top:14px}.navbar{border-right:1px solid var(--border);background:var(--bg);flex-direction:column;grid-area:nav;align-items:center;gap:4px;padding:16px 8px;display:flex;overflow-y:auto}.brand-mark{filter:drop-shadow(0 0 14px #ff7a1a4d);flex-shrink:0;width:38px;height:38px;margin-bottom:14px;display:block}.brand-logo{width:auto;height:30px;display:block}.navbar-item{width:60px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:14px;flex-direction:column;align-items:center;gap:5px;padding:9px 0 8px;font-family:inherit;font-size:10.5px;font-weight:500;transition:color .15s,background-color .15s;display:flex}.navbar-item:hover{color:var(--text);background:var(--control)}.navbar-item:hover .icon{color:var(--accent)}.navbar-divider{background:var(--border-strong);width:28px;height:1px;margin:6px 0}.brand{z-index:3;background:linear-gradient(var(--bg-raised) 78%, #0e0e0e00);margin:0 -14px;padding:18px 16px 14px;position:sticky;top:0}.sidebar h1{margin:0;line-height:0}.tagline{color:var(--muted);margin:8px 0 0;font-size:12px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;flex-shrink:0;scroll-margin-top:80px;display:flex}.rail .panel{scroll-margin-top:14px}.panel h2{color:var(--text);margin:0;font-size:14px;font-weight:650}.panel-toggle{border-radius:var(--radius);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:12px 14px;display:flex}.panel-icon{background:var(--control);width:28px;height:28px;color:var(--accent);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.panel-title{flex:1;min-width:0}.panel-chevron{border-right:1.6px solid var(--muted);border-bottom:1.6px solid var(--muted);width:7px;height:7px;margin-right:4px;transition:transform .18s;transform:translateY(-2px)rotate(45deg)}.panel-toggle:hover .panel-chevron{border-color:var(--text)}.panel.collapsed .panel-chevron{transform:rotate(-45deg)}.panel-body{flex-direction:column;gap:12px;padding:2px 14px 16px;display:flex}.panel-body[hidden]{display:none}.field{flex-direction:column;gap:7px;font-size:13px;display:flex}.field-label{color:var(--muted);font-size:12px;font-weight:500}.field.checkbox{color:var(--text);cursor:pointer;flex-direction:row;align-items:center;gap:9px;font-size:13px}.field.checkbox input{appearance:none;background:var(--control-hover);cursor:pointer;border-radius:999px;flex-shrink:0;width:30px;height:18px;margin:0;transition:background-color .15s;position:relative}.field.checkbox input:after{content:"";background:#9a9a9a;border-radius:50%;width:12px;height:12px;transition:transform .15s,background-color .15s;position:absolute;top:3px;left:3px}.field.checkbox input:checked{background:var(--accent)}.field.checkbox input:checked:after{background:var(--accent-ink);transform:translate(12px)}select,input[type=text],input[type=email],input[type=number]{background:var(--control);width:100%;color:var(--text);border-radius:var(--radius-sm);border:1px solid #0000;padding:9px 12px;font-family:inherit;font-size:13px;transition:border-color .15s,background-color .15s}select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 17px) 52%,calc(100% - 13px) 52%;background-repeat:no-repeat;background-size:4px 4px;padding-right:32px}select option{background:var(--panel)}select:hover:not(:disabled),input[type=text]:hover:not(:disabled),input[type=email]:hover:not(:disabled),input[type=number]:hover:not(:disabled){background-color:var(--control-hover)}select:focus-visible,input[type=text]:focus-visible,input[type=email]:focus-visible,input[type=number]:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}select:disabled,input:disabled{opacity:.45;cursor:default}input::placeholder{color:#5e5e5e}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:18px;margin:0}input[type=range]:disabled{opacity:.4;cursor:default}input[type=range]::-webkit-slider-runnable-track{background:#2c2c2c;border-radius:2px;height:4px}input[type=range]::-moz-range-track{background:#2c2c2c;border-radius:2px;height:4px}input[type=range]::-moz-range-progress{background:var(--accent);border-radius:2px;height:4px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border:none;border-radius:50%;width:14px;height:14px;margin-top:-5px;transition:transform .12s;box-shadow:0 0 0 3px #ff7a1a2e}input[type=range]::-moz-range-thumb{background:var(--accent);border:none;border-radius:50%;width:14px;height:14px}input[type=range]:hover:not(:disabled)::-webkit-slider-thumb{transform:scale(1.15)}input[type=range]:focus-visible{box-shadow:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 5px #ff7a1a4d}.file-button,.export-button{text-align:center;cursor:pointer;justify-content:center;align-items:center;gap:8px;width:100%;font-family:inherit;transition:background-color .15s,border-color .15s,color .15s,transform 80ms;display:flex}.file-button{background:var(--control);color:var(--text);border:1px solid #0000;border-radius:999px;padding:10px 14px;font-size:13px;font-weight:500}.file-button:hover:not(:disabled){background:var(--control-hover)}.file-button:hover:not(:disabled) .icon{color:var(--accent)}.file-button.primary-drop{border:1.5px dashed var(--border-strong);border-radius:var(--radius-sm);background:0 0;flex-direction:column;gap:6px;padding:18px 14px}.file-button.primary-drop .icon{width:22px;height:22px;color:var(--accent)}.file-button.primary-drop:hover{border-color:var(--accent);background:var(--accent-soft)}.file-button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.file-button:disabled{opacity:.45;cursor:default}.export-button{background:var(--accent);color:var(--accent-ink);border:1px solid #0000;border-radius:999px;padding:13px 16px;font-size:14px;font-weight:700;box-shadow:0 8px 28px #ff7a1a2e}.export-button:hover:not(:disabled){background:var(--accent-hover)}.export-button:active:not(:disabled),.file-button:active:not(:disabled){transform:scale(.985)}.export-button:disabled{opacity:.4;cursor:default;box-shadow:none}.export-button.secondary{background:var(--control);color:var(--text);box-shadow:none;padding:11px 16px;font-size:13px;font-weight:600}.export-button.secondary:hover:not(:disabled){background:var(--control-hover)}.export-button.secondary:hover:not(:disabled) .icon{color:var(--accent)}.file-list{flex-direction:column;gap:4px;max-height:140px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.file-list li{color:var(--muted);background:var(--control);overflow-wrap:anywhere;border-radius:8px;padding:5px 10px;font-size:12px}.photo-builder{flex-direction:column;gap:10px;display:flex}.photo-color{align-items:center;gap:8px;display:flex}.photo-swatch{border:1px solid var(--border-strong);border-radius:4px;flex-shrink:0;width:16px;height:16px}.photo-compare{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.photo-compare figure{flex-direction:column;gap:4px;margin:0;display:flex}.photo-compare img{background:var(--control);border-radius:8px;width:100%}.photo-compare figcaption{color:var(--muted);text-align:center;font-size:11px}.account{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:12px;display:flex}.account>.note{flex-basis:100%}.account-status{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.account-label{color:var(--muted);font-size:11px}.account-email{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.file-button.account-action{width:auto;padding:7px 12px;font-size:12px}.account-form{gap:6px;width:100%;display:flex}.account-form input{flex:1;min-width:0}.account-form .file-button{flex-shrink:0;width:auto;padding:8px 12px;font-size:12px}.project-list{flex-direction:column;gap:4px;max-height:260px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.project-row{border-radius:var(--radius-sm);background:var(--control);border:1px solid #0000;align-items:center;gap:4px;padding-right:4px;display:flex}.project-row.current{border-color:var(--accent);background:var(--accent-soft)}.project-open{border-radius:var(--radius-sm);min-width:0;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:8px 10px;font-family:inherit;display:flex}.project-open:disabled{cursor:default;opacity:.6}.project-row:hover:not(.current){background:var(--control-hover)}.project-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13px;font-weight:600;overflow:hidden}.project-date{color:var(--muted);font-size:11px}.shot-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.shot-row{background:var(--bg-raised);border:1px solid var(--border);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:10px;font-size:13px;display:flex}.shot-label{flex:1;min-width:7rem;font-weight:600}.shot-actions{align-items:center;gap:4px;display:flex}.shot-actions .shot-duration{border-radius:8px;width:3.8rem;padding:5px 8px}.shot-options{grid-template-columns:1fr 1fr;gap:5px;width:100%;display:grid}.shot-options select{background-position:calc(100% - 13px) 52%,calc(100% - 9px) 52%;border-radius:9px;min-width:0;padding:6px 24px 6px 9px;font-size:12px}.shot-options select:first-child{grid-column:1/-1}.shot-options .shot-move{grid-column:1/-1;justify-self:start;font-size:12px}.shot-move,.shot-remove{min-width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;place-items:center;padding:0 4px;font-family:inherit;font-size:13px;line-height:1;transition:color .12s,background-color .12s;display:grid}.shot-move:hover:not(:disabled),.shot-remove:hover:not(:disabled){color:var(--text);background:var(--control-hover)}.shot-remove:hover:not(:disabled){color:#ff7a7a}.shot-move:disabled,.shot-remove:disabled{opacity:.3;cursor:default}.contract-card{background:#ffd04d0d;border:1px solid #ffd04d59;border-radius:14px;flex-direction:column;gap:9px;padding:12px;display:flex}.contract-card.passed{background:#58d68d0d;border-color:#58d68d59}.contract-heading{justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.contract-status{color:var(--warning);letter-spacing:.06em;text-transform:uppercase;background:#ffd04d29;border-radius:999px;flex-shrink:0;padding:3px 9px;font-size:10px;font-weight:700}.contract-card.passed .contract-status{color:var(--success);background:#58d68d29}.contract-checks li.passed{color:var(--text)}.contract-checks li.passed>span:first-child{color:var(--success)}.contract-checks li.pending>span:first-child{color:var(--muted)}.contract-checks{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.contract-checks li{color:var(--warning);align-items:flex-start;gap:7px;font-size:11px;display:flex}.contract-checks li>span:last-child{flex-direction:column;gap:1px;display:flex}.contract-checks small{color:var(--muted);font-size:10px}.progress-track{background:var(--control);border-radius:3px;height:6px;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width .1s linear;box-shadow:0 0 12px #ff7a1a99}.note{color:var(--muted);overflow-wrap:break-word;margin:0;font-size:12px;line-height:1.5}.note.warning{color:var(--warning);background:#ffd04d14;border-radius:10px;padding:8px 11px}.model-name{color:var(--text);font-weight:600}.preview{background:radial-gradient(ellipse at 50% 35%, #ff7a1a09, transparent 60%), var(--bg);flex-direction:column;grid-area:main;justify-content:center;align-items:center;gap:18px;min-width:0;min-height:0;padding:28px;display:flex}.preview.dragging{outline:2px dashed var(--accent);outline-offset:-12px;background-color:#ff7a1a08}.stage-area{flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.stage{border-radius:var(--radius);border:1px solid var(--border);background:#000;position:relative;overflow:hidden;box-shadow:0 30px 80px #000000b3}.stage.marking,.stage.marking canvas{cursor:crosshair}.stage.marking{border-color:var(--accent)}.stage.orbiting,.stage.orbiting canvas{cursor:grab;touch-action:none}.stage.orbiting:active,.stage.orbiting:active canvas{cursor:grabbing}.stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.text-canvas{z-index:1;pointer-events:none}.text-handle{z-index:3;box-sizing:content-box;cursor:grab;touch-action:none;border:1px dashed #0000;border-radius:6px;margin:-6px;padding:6px;position:absolute}.text-handle:hover,.text-handle:active{border-color:#ffffffbf;box-shadow:0 0 0 1px #00000059}.text-handle:active{cursor:grabbing}.text-resize{cursor:nwse-resize;opacity:0;background:#fff;border-radius:50%;width:12px;height:12px;position:absolute;bottom:-6px;right:-6px;box-shadow:0 0 0 1px #00000073}.text-handle:hover .text-resize,.text-handle:active .text-resize{opacity:1}.text-tabs{border-radius:var(--radius-sm);background:#ffffff0a;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.text-tab{height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.text-tab:hover{color:var(--text)}.text-tab.active{background:var(--control-hover);color:var(--text);box-shadow:0 1px 2px #0006, inset 0 0 0 1px var(--border)}.text-tab.active .icon{color:var(--accent)}.text-tab-count{background:var(--accent-soft);min-width:18px;height:18px;color:var(--accent);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;padding:0 5px;font-size:11px;font-weight:600;display:inline-grid}.text-tab-count .dot{background:var(--accent);border-radius:50%;width:6px;height:6px}.text-group{flex-direction:column;gap:14px;display:flex}.text-inputs{flex-direction:column;gap:10px;display:flex}.text-inputs .text-input-title{font-size:15px;font-weight:600}.shot-label{align-items:center;gap:7px;display:inline-flex}.shot-chip{background:var(--control-hover);width:18px;height:18px;color:var(--text);font-variant-numeric:tabular-nums;border-radius:5px;place-items:center;font-size:11px;font-weight:600;display:inline-grid}.shot-endcard{border:1px dashed var(--border-strong);color:var(--muted);border-radius:10px;align-items:center;gap:7px;padding:9px 11px;font-size:12px;display:flex}.text-look{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff05;flex-direction:column;gap:14px;padding:12px;display:flex}.text-look-head{min-height:22px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:11px;font-weight:600;display:flex}.text-tip{color:var(--muted);align-items:flex-start;gap:8px;margin:0;font-size:12px;line-height:1.45;display:flex}.text-tip .icon{flex:none;margin-top:2px}.text-reset{color:var(--muted);letter-spacing:0;text-transform:none;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:12px;font-weight:500;display:inline-flex}.text-reset:hover:not(:disabled){background:var(--border);color:var(--text)}.text-group-hint{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.text-row{flex-direction:column;gap:7px;display:flex}.text-row-label{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;font-weight:500;display:flex}.text-row-name{align-items:center;gap:6px;display:inline-flex}.text-row-label em{color:var(--text);font-variant-numeric:tabular-nums;font-style:normal;font-weight:500}.text-fonts{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.text-font{border:1px solid var(--border-strong);height:38px;color:var(--text);cursor:pointer;background:#ffffff08;border-radius:9px;padding:0;font-size:17px;line-height:1;transition:border-color .12s,background .12s}.text-font:hover:not(:disabled){border-color:#ffffff4d}.text-font.glow{color:#ff6fb5;text-shadow:0 0 6px #ff3d9a,0 0 12px #ff3d9a99}.text-font.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.text-colors{grid-template-columns:repeat(10,1fr);gap:5px;display:grid}.text-color{aspect-ratio:1;cursor:pointer;border:2px solid #ffffffd9;border-radius:50%;width:100%;padding:0;transition:transform .12s}.text-color:hover:not(:disabled){transform:scale(1.1)}.text-color.auto{background:conic-gradient(#fff 0 50%, #111 0 100%)}.text-color.active{box-shadow:0 0 0 2px var(--panel), 0 0 0 4px var(--accent)}.text-positions{background:#ffffff0a;border-radius:9px;grid-template-columns:repeat(6,1fr);gap:4px;padding:3px;display:grid}.text-position{height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;padding:0;transition:background .12s,color .12s;display:grid}.text-position:hover:not(:disabled){color:var(--text)}.text-position.active{background:var(--accent-soft);color:var(--accent)}.text-font:disabled,.text-color:disabled,.text-position:disabled{opacity:.4;cursor:default}.compare-canvas{z-index:2;background:#000}.compare-canvas[hidden]{display:none}.stage-overlay{z-index:3;text-align:center;color:var(--text);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;background:#080808cc;justify-content:center;align-items:center;gap:10px;padding:20px;font-size:14px;font-weight:500;display:flex;position:absolute;inset:0}.stage-overlay:before{content:"";border:2px solid #2c2c2c;border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.8s linear infinite spin}.preview.dragging .stage-overlay:before{display:none}@keyframes spin{to{transform:rotate(360deg)}}.timeline{border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#141414d9;border-radius:999px;align-items:center;gap:14px;width:100%;max-width:760px;padding:7px 18px 7px 7px;display:flex}.preview-edit{border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#141414d9;flex-direction:column;gap:6px;width:100%;max-width:760px;padding:8px 12px;font-size:12px;display:flex}.preview-edit-head{align-items:center;gap:6px;min-width:0;display:flex}.preview-edit-subject{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.preview-edit-head select{max-width:220px;font-size:11px}.preview-edit-head button{border:1px solid var(--border-strong);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;display:inline-flex}.preview-edit-head button:hover:not(:disabled){background:var(--control-hover)}.preview-edit .preview-edit-flag,.preview-edit .preview-edit-notes{margin-left:0}.timeline input[type=range]{flex:1}.play-button{background:var(--accent);width:40px;height:40px;color:var(--accent-ink);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;place-items:center;transition:background-color .15s,transform 80ms;display:grid}.play-button:hover:not(:disabled){background:var(--accent-hover)}.play-button:active:not(:disabled){transform:scale(.94)}.play-button:disabled{opacity:.4;cursor:default}.timecode{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;font-size:12px;font-weight:500}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (width<=1260px){.app{grid-template:"nav side main"minmax(0,1fr)"nav rail main"/76px 320px minmax(0,1fr)}.rail{border-left:none;border-right:1px solid var(--border);border-top:1px solid var(--border);max-height:42vh}}@media (width<=760px){html,body,#root{height:auto}.app{grid-template:"main""side""rail"/minmax(0,1fr);height:auto;padding-bottom:72px}.navbar{z-index:10;padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-right:none;border-top:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080808eb;flex-direction:row;justify-content:space-around;gap:0;position:fixed;inset:auto 0 0;overflow-x:auto}.navbar .brand-mark,.navbar-divider{display:none}.navbar-item{width:auto;min-width:44px;padding:6px 4px}.preview{height:70vh;padding:12px}.sidebar,.rail{border:none;max-height:none;overflow:visible}.brand{position:static}}.file-button.primary{background:var(--accent);color:var(--accent-ink)}.file-button.primary .icon,.file-button.primary:hover:not(:disabled) .icon{color:var(--accent-ink)}.file-button.primary:hover:not(:disabled){background:var(--accent-hover)}.director{flex-direction:column;gap:12px;display:flex}.director-reading{background:#ffffff0a;border-radius:10px;margin:0;padding:10px 12px;font-size:12px;line-height:1.5}.director-strip{border-radius:6px;gap:2px;height:22px;display:flex;overflow:hidden}.director-beat{color:#000000bf;white-space:nowrap;justify-content:center;align-items:center;min-width:0;font-size:10px;font-weight:600;display:flex;overflow:hidden}.beat-hook{background:#ff7a1a}.beat-reveal{background:#fdcb5c}.beat-detail{background:#70c050}.beat-context{background:#3897f0}.beat-payoff{background:#c77dff}.director-shots{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.director-shot{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:3px;padding:9px 11px;display:flex}.director-shot-head{justify-content:space-between;align-items:center;display:flex}.director-tag{color:#000c;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600}.director-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.director-subject{font-size:13px;font-weight:500}.director-spec{color:var(--muted);font-size:12px}.director-purpose{color:var(--muted);font-size:12px;font-style:italic}.director-signature{color:var(--muted);font-variant-numeric:tabular-nums;opacity:.8;font-size:11px}.director-dwell{margin:0;font-size:13px;font-weight:600}.director-checks summary{color:var(--muted);cursor:pointer;justify-content:space-between;font-size:12px;font-weight:500;display:flex}.director-checks summary em{font-style:normal}.director-checks .ok{color:#70c050}.director-checks .warn{color:#fdcb5c}.director-checks ul{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.director-checks li{gap:8px;font-size:12px;display:flex}.director-checks li>div>div:first-child{color:var(--text)}.director-detail{color:var(--muted)}.director-parts{flex-direction:column;gap:8px;display:flex}.director-parts summary{color:var(--muted);cursor:pointer;justify-content:space-between;font-size:12px;font-weight:500;display:flex}.director-parts summary em{font-style:normal}.director-parts ul{flex-direction:column;gap:6px;margin:10px 0;padding:0;list-style:none;display:flex}.director-parts li{grid-template-columns:78px 1fr auto;align-items:center;gap:8px;font-size:12px;display:grid}.director-parts li input{min-width:0}.director-parts li.picked input{outline:1px solid var(--accent)}.director-role{color:var(--muted);font-size:11px}.director-role.role-hero{color:var(--text);font-weight:600}.director-repeats{color:var(--muted);font-style:normal}.director-section{border-bottom:1px solid var(--border);flex-direction:column;gap:9px;padding-bottom:12px;display:flex}.director-section h3{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;margin:0;font-size:11px;font-weight:600;display:flex}.director-row{grid-template-columns:92px 1fr;align-items:center;gap:8px;font-size:12px;display:grid}.director-row>span{color:var(--muted);font-weight:500}.director-row>span em{color:var(--text);margin-left:4px;font-style:normal}.director-row select,.director-row input[type=text]{padding-top:7px;padding-bottom:7px;font-size:12px}.director-pair{grid-template-columns:1fr 1fr;gap:8px;display:grid}.director-pair .director-row{grid-template-columns:minmax(0,1fr);gap:4px}.director-refresh{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:3px;display:inline-flex}.director-refresh:hover:not(:disabled){color:var(--text)}.director-stills{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.director-still{border:1px solid var(--border);background:var(--control);min-width:0;color:var(--muted);text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;gap:3px;padding:3px;font-size:10px;display:flex}.director-still img,.director-still-empty{aspect-ratio:16/9;object-fit:cover;background:var(--bg-raised);border-radius:5px;width:100%;display:block}.director-still span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.director-still.active{border-color:var(--accent);color:var(--text)}.shot-list-panel{flex-direction:column;gap:10px;display:flex}.shot-list-panel.busy .shot-cards{opacity:.6}.shot-list-head{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;font-size:11px;font-weight:600;display:flex}.shot-list-head em{letter-spacing:0;margin-left:auto;font-style:normal}.shot-list-head .ok{color:var(--success)}.shot-list-head .warn{color:var(--warning)}.shot-list-undo{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0 0 0 10px;display:inline-flex}.shot-list-undo:hover:not(:disabled){color:var(--text)}.director-frame{flex-direction:column;gap:6px;display:flex}.director-frame .note{margin:0}.director-frame-actions{flex-wrap:wrap;gap:6px;display:flex}.shot-timeline{touch-action:none;-webkit-user-select:none;user-select:none;gap:2px;height:30px;display:flex}.shot-block{color:#000000c7;cursor:grab;border-radius:5px;justify-content:space-between;align-items:center;min-width:18px;padding:0 9px 0 5px;font-size:10px;font-weight:600;display:flex;position:relative;overflow:hidden}.shot-block.beat-hand{background:#9a9a9a}.shot-block.fixed{cursor:pointer}.shot-block.active{box-shadow:inset 0 0 0 2px #ffffffe6}.shot-block.dragging{opacity:.45;cursor:grabbing}.shot-block.drop-before{box-shadow:inset 3px 0 #fff}.shot-block.drop-after{box-shadow:inset -3px 0 #fff}.shot-block-time{opacity:.75;font-weight:500}.shot-block-edge{cursor:ew-resize;background:#0000002e;width:7px;position:absolute;top:0;bottom:0;right:0}.shot-block-edge:hover,.shot-block-edge:focus-visible{background:#0006;outline:none}.shot-film-issues li{align-items:flex-start;gap:5px;line-height:1.4;display:flex}.shot-film-issues em{color:var(--muted);font-style:normal}.shot-film-issues{color:var(--warning);flex-direction:column;gap:4px;margin:0;padding:0;font-size:11px;list-style:none;display:flex}.shot-cards{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.shot-card{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:3px;padding:8px 10px 9px;display:flex}.shot-card.active{border-color:var(--border-strong)}.shot-card.flagged{border-color:#ffd04d59}.shot-card.packshot{background:#c77dff0d}.shot-card-head{align-items:center;gap:6px;display:flex}.shot-card-title{min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:baseline;gap:6px;padding:0;display:flex}.shot-card-num{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.shot-card-beat{letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.beat-text-hook{color:#ff7a1a}.beat-text-reveal{color:#fdcb5c}.beat-text-detail{color:#70c050}.beat-text-context{color:#3897f0}.beat-text-payoff{color:#c77dff}.beat-text-hand{color:var(--muted)}.shot-card-subject{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.shot-card-dur{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.shot-card-lock,.shot-card-pin{color:var(--accent);margin-left:3px;display:inline-flex}.shot-card-pin{color:#c77dff}.shot-card-lock.unlock{cursor:pointer;background:0 0;border:none;padding:0}.shot-card-lock.unlock:hover{color:var(--text)}.shot-card-view{border:1px solid var(--accent);color:var(--accent);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:4px;margin:4px 0 0 18px;padding:3px 8px;font-size:11px;display:inline-flex}.shot-card-view:hover:not(:disabled){background:var(--control-hover)}.shot-card-menu{position:relative}.shot-card-popover{z-index:5;border:1px solid var(--border-strong);background:var(--panel);border-radius:10px;flex-direction:column;gap:6px;width:210px;padding:8px;font-size:12px;display:flex;position:absolute;top:26px;right:0;box-shadow:0 10px 30px #00000080}.shot-card-popover label{color:var(--muted);flex-direction:column;gap:4px;display:flex}.shot-card-popover select{padding-top:6px;padding-bottom:6px;font-size:12px}.shot-card-popover button{background:var(--control);color:var(--text);font:inherit;text-align:left;cursor:pointer;border:0;border-radius:7px;padding:6px 8px}.shot-card-popover button:hover{background:var(--control-hover)}.shot-card-sig{color:var(--text);font-variant-numeric:tabular-nums;opacity:.85;padding-left:18px;font-size:11px}.shot-card-why{color:var(--muted);padding-left:18px;font-size:12px;font-style:italic;line-height:1.4}.shot-card-ticks{flex-wrap:wrap;gap:4px 10px;margin:2px 0 0;padding:0 0 0 18px;font-size:11px;list-style:none;display:flex}.shot-card-ticks .ok{color:var(--success)}.shot-card-ticks .warn{color:var(--warning)}.shot-card-flag{color:var(--warning);align-items:center;gap:6px;margin-left:18px;font-size:11px;display:flex}.shot-card-flag span{flex:1}.shot-card-flag button,.shot-card-notes button{border:1px solid var(--border-strong);color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border-radius:999px;padding:3px 8px;font-size:11px}.shot-card-flag button{color:var(--warning);border-color:#ffd04d80}.shot-card-flag button:hover:not(:disabled),.shot-card-notes button:hover:not(:disabled){background:var(--control-hover)}.shot-card-flag .shot-card-flag-actions{flex:none;gap:4px;display:inline-flex}.shot-card-flag button.quiet{border-color:var(--border-strong);color:var(--muted)}.shot-list-score{font:inherit;letter-spacing:0;cursor:pointer;background:0 0;border:none;border-bottom:1px dashed;margin-left:auto;padding:0}.shot-failing{border:1px solid var(--border-strong);border-radius:8px;flex-direction:column;gap:2px;margin:0;padding:6px 8px;font-size:11px;list-style:none;display:flex}.shot-failing button{width:100%;color:var(--warning);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;gap:8px;padding:3px 0;display:flex}.shot-failing button:disabled{cursor:default}.shot-failing em{color:var(--muted);flex:none;font-style:normal}.shot-failing button{flex-wrap:wrap}.shot-failing small,.shot-card-ticks small{color:var(--muted);flex-basis:100%;font-size:11px}.shot-card-ticks small{margin-left:12px;display:block}.shot-rewrites{color:var(--muted);font-size:11px}.shot-rewrites-toggle{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:0}.shot-rewrites-toggle:hover{color:var(--text)}.shot-rewrites ul{margin:4px 0 0;padding-left:14px;line-height:1.4}.true-color .note{margin:4px 0 0}.shot-card-notes{flex-wrap:wrap;gap:4px;margin:4px 0 0 18px;display:flex}.shot-card-more{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:3px;margin:4px 0 0 18px;padding:0;font-size:12px;display:inline-flex}.shot-card-more:hover{color:var(--text)}.shot-card-notes button:disabled{opacity:.35;cursor:default}.shot-card-fields{flex-direction:column;gap:8px;margin:6px 0 0 18px;display:flex}.move-options{grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:6px;margin-bottom:2px;display:grid}.move-option{border:1px solid var(--border);background:var(--control);min-width:0;color:var(--muted);font:inherit;text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;gap:4px;padding:4px;font-size:11px;display:flex}.move-option:hover:not(:disabled){background:var(--control-hover);color:var(--text)}.move-option.on{border-color:var(--accent);color:var(--text)}.move-option-frames{grid-template-columns:1fr 1fr;gap:2px;display:grid}.move-option-frames img,.move-option-empty{aspect-ratio:16/9;object-fit:cover;background:var(--bg-raised);border-radius:4px;width:100%;display:block}.move-option-label{line-height:1.25}.shot-card-group{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px;margin:0;padding:0;display:grid}.shot-card-group legend{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;padding:0;font-size:10px;font-weight:600}.shot-card-field{min-width:0;color:var(--muted);flex-direction:column;gap:3px;font-size:11px;display:flex}.shot-card-field select{border-radius:8px;padding:5px 26px 5px 8px;font-size:12px}.shot-card-value{color:var(--text);text-overflow:ellipsis;white-space:nowrap;padding:5px 0;font-size:12px;overflow:hidden}.shot-summary{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.text-product-name{justify-content:space-between;align-items:baseline;gap:8px;margin:0;font-size:13px;display:flex}.text-product-name em{color:var(--muted)}.text-link{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}
