.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}:root{--ink-0: #1d1813;--ink-1: #241e19;--ink-2: #2c2820;--ink-3: #3a342b;--hair: rgba(228, 198, 174, .14);--hair-strong: rgba(228, 198, 174, .24);--tx-1: #f4efe3;--tx-2: #b0a489;--tx-3: #7a6e59;--emerald: #3dbb90;--butter: #f1c24a;--coral: #f0774d;--denim: #4574d6;--plum: #8163ae;--sand: #e4c6ae;--emerald-dim: rgba(61, 187, 144, .16);--butter-dim: rgba(241, 194, 74, .16);--denim-dim: rgba(69, 116, 214, .16);--coral-dim: rgba(240, 119, 77, .14);--on-emerald: #12312a;--on-butter: #33280e;--ctl-sm: 28px;--ctl-md: 32px;--ctl-lg: 40px;--r-ctl: 6px;--r-panel: 8px;--r-pill: 999px;--fs-label: 11px;--fs-ui: 12.5px;--fs-body: 13px;--t-fast: .12s;--t-med: .2s;--bg: var(--ink-0);--panel: var(--ink-1);--panel-2: var(--ink-2);--border: var(--hair);--text: var(--tx-1);--muted: var(--tx-2);--accent: var(--emerald);--accent-dim: var(--emerald-dim);--danger: var(--coral)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Figtree,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:13px;line-height:1.4;-webkit-font-smoothing:antialiased;scrollbar-color:var(--ink-3) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--ink-3);border-radius:5px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}:focus-visible{outline:2px solid var(--denim);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}#root,.app-shell{height:100vh;display:flex;flex-direction:column}.loading{padding:48px;color:var(--muted)}.muted{color:var(--muted)}.small{font-size:12px}.field-label,.sidebar-heading,.timeline-title,.anchor-source-label,.ai-debug-label,.drawer-sessions-label,.drawer-title{font-size:var(--fs-label);font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--tx-3)}.top-bar{display:flex;align-items:center;gap:16px;padding:10px 16px;background:var(--ink-2);flex-shrink:0}.brand{display:flex;align-items:center;gap:7px;font-family:"Baloo 2",Figtree,sans-serif;font-weight:800;font-size:16px;white-space:nowrap;background:none;border:none;color:inherit;cursor:pointer;padding:4px 10px;margin:-4px -10px;border-radius:var(--r-ctl);transition:background var(--t-fast) ease}.brand:hover{background:var(--ink-3)}.brand-mark{display:inline-flex;color:var(--butter)}.brand-tv{color:var(--coral)}.brand-studio{font-family:Figtree,sans-serif;font-weight:600;font-size:13px;color:var(--tx-2)}.project-name{flex:0 1 320px;font-size:13.5px;font-weight:600;background:transparent;border-color:transparent;transition:border-color var(--t-fast) ease,background var(--t-fast) ease}.project-name:hover{border-color:var(--hair)}.project-name:focus{border-color:var(--denim);background:var(--ink-1)}.top-bar-right{margin-left:auto;display:flex;gap:8px;align-items:center;flex-shrink:0}.breadcrumb{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap;flex:1 1 auto;overflow:hidden}.breadcrumb>.muted:first-child{overflow:hidden;text-overflow:ellipsis;flex-shrink:1}.beat-dot{width:8px;height:8px;border-radius:50%;background:var(--butter);flex-shrink:0}.beat-name-input{width:240px;font-weight:700;font-size:13.5px;background:transparent;border-color:transparent;transition:border-color var(--t-fast) ease,background var(--t-fast) ease}.beat-name-input:hover{border-color:var(--hair)}.beat-name-input:focus{border-color:var(--denim);background:var(--ink-1)}input,select,textarea{font-family:inherit}input,select{height:var(--ctl-md);background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-ctl);color:var(--text);padding:0 10px;font-size:13px;min-width:0}input[type=checkbox]{height:auto;accent-color:var(--emerald)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--denim)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--ctl-md);border-radius:var(--r-ctl);padding:0 12px;font-size:var(--fs-ui);font-weight:600;cursor:pointer;border:1px solid var(--hair);background:var(--ink-3);color:var(--text);white-space:nowrap;transition:background var(--t-fast) ease,border-color var(--t-fast) ease}.btn:hover{border-color:var(--hair-strong)}.btn:disabled{opacity:.4;cursor:default;border-color:var(--hair)}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover{background:var(--ink-3);border-color:transparent}.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--on-emerald);font-weight:700}.btn-accent:hover:not(:disabled){border-color:var(--accent);filter:brightness(1.07)}.btn-beat{background:var(--butter-dim);border-color:#f1c24a59;color:var(--butter)}.btn-beat:hover:not(:disabled){border-color:#f1c24a99}.btn-danger{background:transparent;color:var(--danger)}.btn-danger:hover{border-color:var(--danger);background:var(--coral-dim)}.btn-sm{height:var(--ctl-sm);padding:0 10px;font-size:12px}.play-btn{width:var(--ctl-md);height:var(--ctl-md);flex-shrink:0;display:grid;place-items:center;padding:0;border:none;border-radius:var(--r-ctl);background:var(--accent);color:var(--on-emerald);font-size:12px;cursor:pointer}.play-btn:hover{filter:brightness(1.07)}.player-stage{flex:1;min-height:0;display:flex;align-items:stretch;justify-content:center;gap:16px;padding:20px}.transcript-panel{width:300px;flex-shrink:0;display:flex;flex-direction:column;background:var(--ink-1);border-radius:var(--r-panel);padding:12px;min-height:0}.transcript-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.transcript-status{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-label);color:var(--tx-3)}.transcript-stale{font-size:11px;color:var(--danger);margin-bottom:6px}.transcript-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.transcript-empty{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:12px;color:var(--muted);padding:12px 4px;line-height:1.5}.transcript-seg{position:relative;display:flex;gap:8px;padding:5px 8px;border-radius:6px;cursor:pointer;font-size:var(--fs-body);line-height:1.45;color:var(--muted);transition:background var(--t-fast) ease,color var(--t-fast) ease}.transcript-seg-time{position:absolute;top:3px;right:4px;font-size:10px;font-variant-numeric:tabular-nums;color:var(--tx-2);background:var(--ink-3);border-radius:4px;padding:0 4px;opacity:0;pointer-events:none;transition:opacity var(--t-fast) ease}.transcript-seg:hover .transcript-seg-time,.transcript-beat:hover .transcript-seg-time{opacity:1}.transcript-seg:hover{background:var(--ink-2);color:var(--text)}.transcript-seg-active{background:var(--accent-dim);color:var(--text)}.transcript-seg-active .transcript-time{color:var(--accent)}.transcript-time{font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;padding-top:2px}.transcript-text{min-width:0}.kw{background-image:linear-gradient(#3dbb904d,#3dbb904d);background-repeat:no-repeat;background-size:0% 100%;border-radius:2px;transition:background-size 90ms linear}.kw{cursor:pointer}.kw:hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:2px}.kw-done{color:var(--text)}.kw-cut{color:var(--tx-3);text-decoration:line-through;text-decoration-color:#f1c24a99}.kw-cut:hover{text-decoration:line-through underline}.timeline-hover{position:absolute;top:0;bottom:0;width:1px;background:#4574d673;pointer-events:none;z-index:4}.timeline-hover-label{position:absolute;top:2px;left:0;transform:translate(-50%);background:var(--ink-1);border:1px solid var(--denim);border-radius:4px;color:var(--tx-1);font-size:10px;font-variant-numeric:tabular-nums;padding:1px 5px;white-space:nowrap}.transcript-beat{position:relative;display:flex;gap:8px;align-items:center;padding:5px 8px;margin:3px 0;background:var(--butter-dim);border:1px solid rgba(241,194,74,.5);border-radius:6px;cursor:pointer;font-size:12px;transition:box-shadow var(--t-fast) ease}.transcript-beat:hover{border-color:#f1c24acc}.transcript-beat-active{background:#f1c24a38;border-color:#f1c24acc}.transcript-beat-star{color:var(--butter);flex-shrink:0}.transcript-beat-label{color:var(--butter);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transcript-beat-disabled{opacity:.4}.video-frame{position:relative;height:100%;max-width:100%;aspect-ratio:16 / 9;background:#000;border-radius:var(--r-panel);overflow:hidden}.video-frame{cursor:pointer}.video-frame video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:#000;z-index:0;pointer-events:none}.video-frame video.video-active{z-index:1}.video-frame video.video-fading{z-index:2;animation:video-fade-in .1s ease-out both}@keyframes video-fade-in{0%{opacity:.02}to{opacity:1}}.live-beat-badge,.decision-overlay{z-index:5}.live-beat-badge{position:absolute;top:14px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;background:#1d1813d9;border:1px solid var(--accent);color:var(--accent);border-radius:var(--r-pill);padding:6px 16px;font-weight:700;letter-spacing:.1em;font-size:11px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{opacity:.3}}.mode-toggle{display:flex;align-items:stretch;height:var(--ctl-md);background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-ctl);overflow:hidden}.mode-toggle button{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--muted);padding:0 13px;cursor:pointer;font-family:inherit;font-size:var(--fs-ui);font-weight:600}.mode-toggle button.mode-active{background:var(--ink-3);color:var(--accent)}.mode-toggle button.mode-active-magic{background:var(--ink-3);color:var(--butter)}.live-beat-badge,.decision-overlay{--accent: var(--butter);--accent-dim: var(--butter-dim);--on-emerald: var(--on-butter)}.decision-overlay{position:absolute;left:50%;bottom:16px;transform:translate(-50%);width:min(92%,560px);background:#1d1813e6;border:1px solid var(--accent);border-radius:var(--r-panel);padding:12px 16px;cursor:default;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 10px 30px #00000073}.decision-title{display:flex;justify-content:space-between;font-size:var(--fs-label);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:8px;font-variant-numeric:tabular-nums}.decision-title-right{display:inline-flex;align-items:center;gap:8px}.decision-title-label{display:inline-flex;align-items:center;gap:6px}.decision-collapse{background:none;border:none;border-radius:4px;color:var(--muted);width:18px;height:18px;line-height:1;font-size:12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.decision-collapse:hover{color:var(--accent);background:var(--ink-3)}.decision-compact{width:auto;max-width:min(80%,480px);padding:6px 10px 8px;bottom:10px}.decision-compact .decision-title{font-size:10px;margin-bottom:4px}.decision-compact .decision-options{gap:5px}.decision-compact .decision-option{flex:0 1 auto;min-height:0;padding:4px 9px;font-size:11px;white-space:nowrap}.decision-compact .option-key{width:14px;height:14px;font-size:10px;margin-right:5px}.decision-minimal{width:auto;min-width:240px;max-width:min(70%,380px);padding:6px 10px 8px;bottom:10px}.decision-minimal .decision-title{font-size:10px;margin-bottom:6px}.decision-minimal .decision-bar{margin-top:0}.decision-timing{font-variant-numeric:tabular-nums;font-size:10px;color:var(--muted);margin-right:8px;white-space:nowrap}.decision-compact .ai-panel{margin-top:4px;border-top:none;padding-top:0}.decision-compact .ai-status-row,.decision-compact .ai-debug-label,.decision-compact .ai-sim{display:none}.decision-compact .ai-transcript{margin-top:0;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.decision-compact .ai-verdict-line{margin-top:2px;font-size:11px;max-width:360px}.decision-compact .decision-bar{margin-top:6px;height:2px}.decision-options{display:flex;flex-wrap:wrap;gap:8px}.decision-option{flex:1 1 auto;min-height:var(--ctl-sm);background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-ctl);color:var(--text);padding:6px 10px;cursor:pointer;text-align:left;font-family:inherit;font-size:var(--fs-ui);font-weight:600;transition:border-color var(--t-fast) ease,background var(--t-fast) ease}.decision-option:hover:not(:disabled){border-color:var(--accent)}.decision-option:disabled{opacity:.6;cursor:default}.decision-option.option-chosen,.decision-option.option-chosen:disabled{border-color:var(--accent);background:var(--accent-dim);opacity:1}.option-key{display:inline-flex;width:18px;height:18px;border-radius:4px;background:var(--ink-3);align-items:center;justify-content:center;font-size:11px;font-weight:700;margin-right:8px}.option-chosen .option-key{background:var(--accent);color:var(--on-emerald)}.ai-panel{margin-top:10px;border-top:1px solid var(--hair);padding-top:10px}.ai-debug-label{margin-bottom:6px}.debug-toggle{width:var(--ctl-md);height:var(--ctl-md);display:grid;place-items:center;background:none;border:1px solid transparent;border-radius:var(--r-ctl);color:var(--muted);cursor:pointer;padding:0}.debug-toggle:hover{color:var(--text);border-color:var(--hair)}.debug-toggle-on,.debug-toggle-on:hover{color:var(--butter);border-color:#f1c24a80;background:var(--butter-dim)}.rec-btn{height:var(--ctl-md);display:inline-flex;align-items:center;gap:6px;padding:0 10px;background:none;border:1px solid var(--hair);border-radius:var(--r-ctl);color:var(--muted);font:inherit;font-size:12.5px;cursor:pointer;font-variant-numeric:tabular-nums}.rec-btn:hover:not(:disabled){color:var(--text)}.rec-btn:disabled{opacity:.6;cursor:default}.rec-btn-live,.rec-btn-live:hover:not(:disabled){color:var(--coral);border-color:#f0774d80;background:var(--coral-dim)}.rec-btn-live svg{animation:rec-pulse 1.6s ease-in-out infinite}@keyframes rec-pulse{0%,to{opacity:1}50%{opacity:.35}}.ai-status-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.ai-dot{width:8px;height:8px;border-radius:50%;background:var(--ink-3);flex-shrink:0}.ai-dot-on{background:var(--coral)}.ai-guess{color:var(--accent);font-weight:600;margin-left:auto}.ai-transcript{font-size:var(--fs-body);font-style:italic;color:var(--text);margin-top:6px}.ai-pulses{display:grid;grid-template-columns:max-content max-content max-content 1fr;gap:2px 12px;margin-top:6px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.ai-pulse{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;align-items:baseline}.ai-pulse-at{color:var(--tx-3)}.ai-pulse-conf{font-weight:600}.ai-pulse-why{font-style:italic;color:var(--tx-3)}.ai-pulse-hot{color:var(--butter)}.ai-pulse-hot .ai-pulse-lane{font-weight:600}.ai-pulse-hot .ai-pulse-at,.ai-pulse-hot .ai-pulse-why{color:#f1c24abf}.decision-compact .ai-pulses{display:none}.ai-verdict-line{margin-top:6px;font-size:12px;font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums}.ai-verdict-quiet{color:var(--muted);font-weight:500}.ai-verdict-bad{color:var(--coral)}.verdict-report{position:absolute;bottom:16px;left:50%;transform:translate(-50%);z-index:5;display:flex;align-items:flex-start;gap:8px;max-width:min(92%,560px);background:#1d1813e6;border:1px solid var(--butter);color:var(--butter);border-radius:var(--r-pill);padding:7px 14px;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:default}.verdict-report svg{flex-shrink:0;margin-top:2px}.verdict-report span{line-height:1.45}.verdict-report-bad{border-color:var(--coral);color:var(--coral)}.ai-sim{width:100%;height:var(--ctl-sm);margin-top:8px;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-ctl);color:var(--text);padding:0 8px;font-size:12px}.trigger-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chip{display:inline-flex;align-items:center;gap:4px;height:24px;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-pill);padding:0 4px 0 10px;font-size:12px}.chip-x{background:none;border:none;color:var(--muted);cursor:pointer;font-size:13px;padding:0 4px}.chip-x:hover{color:var(--danger)}.chip-input{height:24px;background:none;border:none;color:var(--text);font-size:12px;width:90px;padding:0 2px}.chip-input:focus{outline:none}.branch-triggers{margin:8px 0}.branch-desc-input{width:100%;margin:4px 0 6px;font-size:12px}.gen-section{border-top:1px solid var(--hair);padding-top:12px}.anchor-check{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text);cursor:pointer}.ref-tag{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10.5px;font-weight:600;color:var(--tx-1);background:var(--denim);border-radius:4px;padding:1px 5px;letter-spacing:.01em}.sandwich{display:flex;gap:8px;align-items:flex-start}.sandwich-side{flex:1;display:flex;flex-direction:column;gap:5px;min-width:0}.sandwich-arrow{display:flex;justify-content:center;color:var(--muted);padding-top:46px}.sandwich-thumb{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:6px;border:none;background:#000}.sandwich-thumb-empty{display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px;border:1px dashed var(--hair-strong)}.sandwich-off .sandwich-thumb,.sandwich-off .anchor-label{opacity:.35}.anchor-source-row{display:flex;align-items:center;gap:8px;margin-top:8px}.anchor-source-row select{flex:1;font-size:12px}.anchor-source-label{white-space:nowrap}.anchor-label{font-size:11px;color:var(--muted)}.grade-ab-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.grade-ab-swap{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border:1px solid transparent;border-radius:var(--r-ctl);background:none;color:var(--muted);font-size:10px;font-variant:small-caps;letter-spacing:.06em;cursor:pointer}.grade-ab-swap:hover{color:var(--text);border-color:var(--hair)}.grade-ab-head .field-label{margin-bottom:0}.brightness-compare{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:6px;overflow:hidden;background:#000;margin-bottom:8px}.brightness-compare img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.brightness-compare{cursor:ew-resize;touch-action:none}.brightness-compare img:first-of-type{clip-path:inset(0 calc(100% - var(--ab-split, 50%)) 0 0)}.brightness-compare img+img{clip-path:inset(0 0 0 var(--ab-split, 50%))}.brightness-compare-handle{position:absolute;top:0;bottom:0;left:var(--ab-split, 50%);width:0;z-index:1;pointer-events:none}.brightness-compare-handle:before,.brightness-compare-handle:after{content:"";position:absolute;left:0;width:1px;height:10px;transform:translate(-.5px);background:#ffffffe6;box-shadow:0 0 2px #000000bf}.brightness-compare-handle:before{top:0}.brightness-compare-handle:after{bottom:0}.brightness-compare-labels{position:absolute;inset:auto 0 0 0;display:flex;justify-content:space-between;padding:0 8px 4px;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#ffffffbf;text-shadow:0 1px 2px rgba(0,0,0,.8);pointer-events:none}.btn-publish-clean{background:transparent;border:1px solid var(--accent);color:var(--accent)}.btn-publish-clean:hover:not(:disabled){background:var(--accent-dim, rgba(61, 187, 144, .14))}.drawer-pull{display:flex;align-items:center;gap:10px;width:calc(100% - 20px);margin:0 10px 8px;padding:10px 12px;background:#f1c24a1a;border:1px solid var(--butter);border-radius:8px;color:var(--text);cursor:pointer;text-align:left}.drawer-pull:hover{background:#f1c24a2e}.drawer-pull-icon{display:flex;color:var(--butter);flex-shrink:0}.drawer-pull-title{display:block;font-size:13px;font-weight:600;color:var(--butter)}.drawer-pull-sub{display:block;font-size:11.5px;color:var(--muted);margin-top:1px}.takes{display:flex;flex-direction:column;gap:6px;margin-top:10px}.take-row{display:flex;align-items:center;gap:4px}.take-pick{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:4px;background:var(--ink-2);border:1px solid var(--hair);border-radius:6px;color:var(--text);cursor:pointer;text-align:left}.take-pick:hover{border-color:var(--hair-strong)}.take-row-active .take-pick{border-color:var(--denim)}.take-thumb{width:52px;aspect-ratio:16 / 9;object-fit:cover;border-radius:4px;background:#000;flex-shrink:0}.take-meta{min-width:0;display:flex;flex-direction:column;gap:1px}.take-time{font-size:11px;color:var(--muted)}.take-prompt{font-size:11px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.take-delete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;border-radius:5px;color:var(--muted);cursor:pointer;flex-shrink:0}.take-delete:hover{color:var(--coral);background:var(--coral-dim)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#120e0b9e;display:flex;align-items:center;justify-content:center;z-index:40}.modal{background:var(--ink-1);border-radius:10px;box-shadow:0 18px 50px #00000073;padding:18px;width:min(440px,calc(100vw - 48px))}.modal-title{margin:0 0 8px;font-size:14px;font-weight:600}.modal-body{margin:0 0 12px;font-size:13px;line-height:1.5;color:var(--muted)}.modal-note{margin:10px 0 0;font-size:12px;line-height:1.5;color:var(--muted)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.publish-changes{display:flex;flex-direction:column;gap:5px;background:var(--ink-2);border-radius:8px;padding:10px 12px;margin-bottom:12px}.publish-change{display:flex;align-items:center;gap:8px;font-size:12px;min-width:0}.pub-status{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:1px 6px;border-radius:4px;flex-shrink:0}.pub-status-new{color:var(--accent);background:#3dbb9029}.pub-status-edited{color:var(--butter);background:var(--butter-dim)}.pub-status-deleted{color:var(--coral);background:var(--coral-dim)}.pub-kind{font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);flex-shrink:0}.pub-label{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pub-bytes{margin-left:auto;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0}.publish-change-shared .pub-label{color:var(--muted)}.publish-lfs-total{margin-top:4px;padding-top:6px;border-top:1px solid var(--hair);font-size:11px;color:var(--muted)}.publish-others{font-size:11px;color:var(--muted)}.script-block{position:relative;background:var(--ink-0);border-radius:8px;padding:12px}.script-block pre{margin:0;font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-all;color:var(--text)}.script-copy{position:absolute;top:8px;right:8px;height:26px;padding:0 10px;font-size:12px}.brightness-row{display:flex;align-items:center;gap:8px}.brightness-row input[type=range]{flex:1;accent-color:var(--accent)}.brightness-reset{height:28px;padding:0 10px;font-size:12px}.grade-sliders{display:flex;flex-direction:column;gap:1px;margin-top:6px}.grade-row{display:flex;align-items:center;gap:8px}.grade-row input[type=range]{flex:1;height:16px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:pointer}.grade-row input[type=range]::-webkit-slider-runnable-track{height:3px;border-radius:2px;background:var(--hair)}.grade-row input[type=range]::-moz-range-track{height:3px;border-radius:2px;background:var(--hair)}.grade-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:9px;height:9px;margin-top:-3px;border-radius:50%;background:var(--accent)}.grade-row input[type=range]::-moz-range-thumb{width:9px;height:9px;border:none;border-radius:50%;background:var(--accent)}.grade-row-label{font-size:10px;font-variant:small-caps;letter-spacing:.06em;color:var(--muted);min-width:34px}.grade-row-readout{font-size:11px;color:var(--muted);min-width:30px;text-align:right;font-variant-numeric:tabular-nums}.grade-row-unit{opacity:.7}.gen-prompt-wrap{position:relative;margin-top:8px}.gen-prompt,.gen-prompt-highlights{box-sizing:border-box;width:100%;padding:8px;border:1px solid transparent;border-radius:var(--r-ctl);font-size:12px;font-family:inherit;line-height:1.45;white-space:pre-wrap;overflow-wrap:break-word}.gen-prompt-highlights{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--ink-2);border-color:var(--hair);color:var(--text);overflow:hidden;pointer-events:none}.gen-prompt{position:relative;margin:0;background:transparent;color:transparent;caret-color:var(--text);field-sizing:content;resize:none}.gen-prompt-wrap:focus-within .gen-prompt-highlights{border-color:var(--denim)}.gen-prompt:focus{border-color:transparent}.ref-mark{color:var(--tx-1);background:var(--denim);border-radius:3px;box-shadow:0 0 0 1.5px var(--denim)}.gen-opts{display:flex;gap:6px;margin:8px 0}.gen-opts select{flex:1}.sync-conflict{position:fixed;bottom:16px;left:50%;transform:translate(-50%);z-index:40;display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--panel);border:1px solid var(--coral);border-radius:var(--r-ctl);box-shadow:0 6px 24px #00000073}.sync-conflict-text{font-size:12px;color:var(--coral)}.gen-seed{display:flex;align-items:center;gap:6px;margin:8px 0}.gen-seed label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.gen-seed input{flex:1;min-width:0;font-variant-numeric:tabular-nums}.gen-seed-roll{flex:none;padding:0 8px}.gen-error{font-size:12px;color:var(--danger);margin-top:6px}.canvas-issue{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:6;display:inline-flex;align-items:center;gap:6px;max-width:min(75%,560px);font-size:12px;font-weight:600;color:var(--danger);background:#1d1813d9;border:1px solid var(--coral);border-radius:var(--r-pill);padding:6px 14px;pointer-events:none}.canvas-issue svg{flex-shrink:0}.canvas-issue span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.canvas-issue+.canvas-hint{display:none}.anchor-stale{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--danger)}.ref-mode-warn{display:flex;align-items:flex-start;gap:5px;font-size:11px;line-height:1.45;color:var(--butter)}.ref-mode-warn svg{flex-shrink:0;margin-top:2px}.clip-node-generating{color:var(--accent)}.drawer-handle{position:fixed;left:0;top:50%;transform:translateY(-50%);z-index:40;width:22px;height:64px;border:1px solid var(--hair);border-left:none;border-radius:0 var(--r-ctl) var(--r-ctl) 0;background:var(--ink-1);color:var(--muted);font-size:16px;cursor:pointer;transition:left var(--t-med) ease}.drawer-handle:hover{color:var(--text);border-color:var(--hair-strong)}.drawer-handle-open{left:280px}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0c098c;z-index:30}.drawer{position:fixed;left:0;top:0;bottom:0;width:280px;background:var(--ink-1);box-shadow:8px 0 32px #00000059;transform:translate(-100%);transition:transform var(--t-med) ease;z-index:35;display:flex;flex-direction:column;padding:16px}.drawer-open{transform:translate(0)}.drawer-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.drawer-title{margin:0}.drawer-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.drawer-sessions{border-top:1px solid var(--hair);padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px}.drawer-sessions-count{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text)}.drawer-sessions-count svg{color:var(--coral)}.drawer-sessions-size{color:var(--muted);margin-left:auto;font-variant-numeric:tabular-nums}.drawer-sessions-sub{font-size:11.5px;color:var(--muted);line-height:1.45}.drawer-sessions-open{align-self:flex-start}.drawer-sessions-error{font-size:11.5px;color:var(--coral)}.drawer-item{position:relative;padding:10px 30px 10px 12px;background:var(--ink-2);border:1px solid transparent;border-radius:var(--r-panel);margin-bottom:8px;cursor:pointer;transition:background var(--t-fast) ease,border-color var(--t-fast) ease}.drawer-item:hover{background:var(--ink-3)}.drawer-item-active{border-color:var(--denim);background:var(--denim-dim)}.drawer-item-name{font-weight:600;font-size:13px}.drawer-item-meta{font-size:11px;color:var(--muted);margin-top:2px}.drawer-item-actions{position:absolute;right:6px;top:6px;display:flex;align-items:center;gap:2px}.drawer-item-copy,.drawer-item-delete{background:none;border:none;color:var(--muted);font-size:14px;cursor:pointer;padding:2px 6px}.drawer-item-copy:hover{color:var(--tx-1)}.drawer-item-delete:hover{color:var(--danger)}.node-thumb{display:block;width:100%;height:88px;object-fit:cover;border-radius:6px;border:none;background:#000;margin:6px 0 4px;pointer-events:none}.system-node .node-thumb{height:84px;margin-top:0}.branch-triggers-target{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--accent);margin-bottom:4px}.listen-indicator{position:absolute;left:50%;bottom:16px;transform:translate(-50%);width:160px;height:4px;border-radius:2px;background:#0006;box-shadow:0 0 0 1px #0000002e;overflow:hidden;pointer-events:none}.listen-indicator-fill{height:100%;border-radius:2px;background:var(--butter)}.decision-bar{height:3px;background:var(--ink-3);border-radius:2px;margin-top:10px;overflow:hidden}.decision-bar-fill{height:100%;background:var(--accent)}.upload-drop{border:2px dashed var(--hair-strong);border-radius:12px;padding:48px 96px;text-align:center;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;align-self:center}.upload-drop:hover{border-color:var(--accent)}.upload-drop-star{margin-bottom:8px}.upload-drop-title{font-size:14px;font-weight:700}.upload-drop-hint{color:var(--muted);font-size:12px}.transport{display:flex;align-items:center;gap:14px;padding:8px 16px;flex-shrink:0}.time-display{font-variant-numeric:tabular-nums;font-size:var(--fs-ui)}.time-display b{font-weight:600;color:var(--tx-1)}.time-total{color:var(--tx-3)}.transport-note{display:inline-flex;align-items:center;gap:5px;color:var(--accent);font-size:var(--fs-ui)}.timeline{background:var(--ink-1);padding:10px 16px 16px;flex-shrink:0}.timeline-header{margin-bottom:6px;display:flex;align-items:baseline;gap:12px}.timeline-length{font-size:11px;color:var(--tx-3);font-variant-numeric:tabular-nums}.timeline-zoom{margin-left:auto;align-self:center;display:flex;align-items:center;gap:2px}.zoom-btn{background:none;border:1px solid var(--hair);border-radius:4px;color:var(--muted);width:20px;height:20px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.zoom-btn:hover:not(:disabled){color:var(--tx-1)}.zoom-btn:disabled{opacity:.35;cursor:default}.zoom-level{min-width:30px;text-align:center;font-size:11px;color:var(--tx-3);font-variant-numeric:tabular-nums}.timeline-body{display:flex}.timeline-labels{width:80px;flex-shrink:0;display:flex;flex-direction:column}.timeline-label-spacer{height:18px}.timeline-scroll{flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;overscroll-behavior:none;padding:0 6px}.timeline-tracks{position:relative;min-width:100%;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none}.timeline-ruler{position:relative;height:18px;color:var(--tx-3);font-size:10.5px}.ruler-tick{position:absolute;transform:translate(-50%);font-variant-numeric:tabular-nums}.ruler-beat-tick{position:absolute;bottom:0;width:2px;height:5px;transform:translate(-1px);background:var(--butter);border-radius:1px}.track{position:relative;height:34px;margin-top:6px;background:var(--ink-2);border-radius:var(--r-ctl)}.track-label{height:34px;margin-top:6px;display:flex;align-items:center;justify-content:flex-end;color:var(--muted);font-size:11px;font-weight:600;text-align:right;padding-right:10px}.video-filmstrip{position:absolute;top:4px;right:4px;bottom:4px;left:4px;display:flex;border-radius:3px;overflow:hidden;background:var(--ink-3)}.film-cell{flex:1;min-width:0;background-size:cover;background-position:center;box-shadow:inset -1px 0 #00000059}.film-cell:last-child{box-shadow:none}.beat-cut{position:absolute;top:0;bottom:0;width:2px;transform:translate(-1px);background:var(--butter);box-shadow:0 0 0 1px #0000008c;z-index:2;pointer-events:none}.beat-cut-star{position:absolute;left:50%;top:100%;transform:translate(-50%,-45%);color:var(--butter)}.beat-cut-region{position:absolute;top:0;bottom:0;z-index:1;background:repeating-linear-gradient(-55deg,#f1c24a47 0,#f1c24a47 2px,#1d181373 2px,#1d181373 7px);pointer-events:none}.beat-cut-end{pointer-events:none}.beat-cut-end-handle{position:absolute;left:50%;top:0;transform:translate(-50%,-55%);width:11px;height:11px;border-radius:3px;background:var(--ink-1);border:2px solid var(--butter);cursor:ew-resize;pointer-events:auto;transition:background var(--t-fast) ease}.beat-cut-end-handle:hover,.beat-cut-end-dragging .beat-cut-end-handle{background:var(--butter)}.beat-cut-end-label{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);z-index:6;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--on-butter);background:var(--butter);border-radius:4px;padding:2px 6px;pointer-events:none}.beat-cut-disabled{opacity:.3}.track-audio{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;gap:1px;padding:0 8px;overflow:hidden;border-radius:var(--r-ctl);pointer-events:none}.track-audio i{flex:1;min-width:1px;min-height:1px;background:var(--emerald);opacity:.5;border-radius:1px}.beat-chip{position:absolute;top:50%;transform:translateY(-50%);touch-action:none;cursor:grab;height:24px;display:inline-flex;align-items:center;background:var(--ink-3);border:1px solid rgba(241,194,74,.5);color:var(--butter);border-radius:var(--r-pill);overflow:hidden;padding:0 12px;font-family:inherit;font-size:11.5px;font-weight:700;cursor:pointer;white-space:nowrap;z-index:2;transition:background var(--t-fast) ease}.beat-chip-empty{opacity:.6}.beat-chip-active{box-shadow:inset 0 0 0 1px #f1c24ab3}.beat-chip-dragging{cursor:grabbing;background:#f1c24a40}.beat-chip-fill{position:absolute;left:0;top:0;bottom:0;background:#f1c24a59;pointer-events:none}.beat-chip-label{position:relative}.beat-chip-disabled{opacity:.4}.beat-chip-broken{border-color:#f0774da6;color:var(--coral)}.react-flow__edge.selected path{stroke-width:3.5!important;opacity:1!important}.beat-chip:hover{background:#f1c24a38}.playhead{position:absolute;top:0;bottom:0;width:2px;transform:translate(-50%);background:var(--accent);pointer-events:none;z-index:3}.playhead:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--accent)}.editor-body{flex:1;min-height:0;display:flex}.canvas-wrap{flex:1;position:relative;min-width:0}.canvas-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--muted);pointer-events:none;font-size:13px}.sidebar-resizer{position:relative;flex-shrink:0;width:1px;cursor:col-resize;background:var(--hair);touch-action:none}.sidebar-resizer:before{content:"";position:absolute;top:0;bottom:0;left:-4px;right:-4px}.sidebar-resizer:hover,.sidebar-resizer:active{background:var(--denim)}.sidebar{width:320px;flex-shrink:0;background:var(--ink-1);padding:16px;overflow-y:auto;overscroll-behavior:none;display:flex;flex-direction:column;gap:12px}.sidebar-heading{margin:4px 0 0}.field{display:flex;flex-direction:column;gap:6px}.sidebar{gap:16px}.sidebar .sidebar-heading{margin-top:6px;padding-top:14px;border-top:1px solid var(--hair)}.sidebar .sidebar-heading:first-child{margin-top:0;padding-top:0;border-top:none}.sidebar .btn-accent{width:100%;height:var(--ctl-lg);justify-content:center}.node-video-preview{width:100%;border-radius:var(--r-ctl);background:#000;border:none;aspect-ratio:16 / 9}.video-name{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.path-list{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}.path-item{background:none;border:none;color:var(--text);cursor:pointer;padding:0;font-family:inherit;font-size:13px;text-align:left}.path-item:hover{color:var(--accent)}.path-item-warn{color:var(--danger);font-size:12px}.react-flow{background:var(--bg);--xy-background-color: var(--ink-0);--xy-background-pattern-color: rgba(228, 198, 174, .06)}.clip-node{position:relative;width:240px;height:132px;display:flex;flex-direction:column;background:var(--ink-1);border:1px solid var(--hair);border-radius:var(--r-panel);padding:10px 12px;transition:border-color var(--t-fast) ease,box-shadow var(--t-fast) ease}.clip-node-decision{height:auto}.clip-node-docked{width:100%;min-width:0;max-width:none}.clip-node-decision.clip-node-docked{width:calc(100% + 2px);margin-left:-1px}.node-selected{border-color:var(--branch, var(--denim))!important}.clip-node.node-selected:not(.clip-node-decision),.system-node.node-selected{background:linear-gradient(var(--denim-dim),var(--denim-dim)),var(--ink-2)}.node-in-path{background:var(--ink-2)}.clip-node-kicker{display:block;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clip-node-decision{border-color:transparent;background:none}.clip-node-decision:before,.clip-node-decision:after{content:"";position:absolute;pointer-events:none}.clip-node-decision:before{top:0;right:0;bottom:0;left:0;z-index:-2;background:#f1c24abf;clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 14px)}.clip-node-decision:after{top:1px;right:1px;bottom:1px;left:1px;z-index:-1;background:linear-gradient(180deg,#f1c24a1c,#f1c24a0a 55%),var(--ink-1);clip-path:polygon(13.5px 0,calc(100% - 13.5px) 0,100% 13.5px,100% calc(100% - 13.5px),calc(100% - 13.5px) 100%,13.5px 100%,0 calc(100% - 13.5px),0 13.5px)}.clip-node-decision.node-selected{border-color:transparent!important;box-shadow:none}.clip-node-decision.node-selected:before{background:var(--butter)}.clip-node-decision.node-selected:after{background:linear-gradient(180deg,#f1c24a57,#f1c24a29 55%),var(--ink-2)}.clip-node-decision.node-in-path:after{background:linear-gradient(180deg,#f1c24a1c,#f1c24a0a 55%),var(--ink-2)}.clip-node-decision.node-selected.node-in-path:after{background:linear-gradient(180deg,#f1c24a57,#f1c24a29 55%),var(--ink-2)}.clip-node.clip-node-broken{border-color:var(--danger)!important;box-shadow:0 0 0 1px var(--danger)}.clip-node-decision.clip-node-broken{border-color:transparent!important;box-shadow:none}.clip-node-decision.clip-node-broken:before{background:var(--coral)}.beat-issue{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:700;color:var(--danger);border:1px dashed var(--coral);background:var(--coral-dim);border-radius:6px;padding:4px 8px;margin-bottom:4px}.choice-rows{margin:8px -12px -4px;border-top:1px solid rgba(241,194,74,.35)}.choice-rows-label{font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#f1c24a8c;padding:5px 12px 0}.choice-row{position:relative;display:flex;align-items:center;gap:7px;padding:6px 16px 6px 12px;font-size:11px;font-weight:700;color:var(--text);cursor:pointer}.choice-row+.choice-row{border-top:1px dashed rgba(241,194,74,.22)}.choice-row-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.choice-pin-default{border-color:#3dbb90!important}.choice-row-new{color:var(--muted);font-weight:600;font-style:italic}.choice-row-phrases{flex:1;min-width:0;font-style:italic;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.choice-row-unphrased .choice-row-phrases{color:var(--muted);font-style:normal}.choice-row-desc{font-style:normal}.beat-thumb-wrap{position:relative;flex-shrink:0;display:inline-flex}.chip-regen{position:absolute;top:0;right:0;bottom:0;left:0;display:inline-flex;align-items:center;justify-content:center;background:#1d18138c;border:1px dashed rgba(241,194,74,.75);border-radius:6px;color:var(--butter);cursor:pointer;padding:0;transition:background var(--t-fast) ease}.chip-regen:hover{background:#1d1813c7;border-style:solid}.field-changed textarea,.field-changed input{border-color:#f1c24a8c}.field-changed-tag{margin-left:6px;font-size:9px;font-weight:800;letter-spacing:.1em;color:var(--on-butter);background:var(--butter);border-radius:4px;padding:1px 5px;vertical-align:1px}.btn-regen-changed{color:var(--butter)}.btn-regen-changed:hover{border-color:var(--butter);background:var(--butter-dim)}.choice-row-silence .choice-row-phrases{font-style:italic;color:var(--muted)}.choice-row-new .choice-row-label{display:inline-flex;align-items:center;gap:5px}.choice-row-x{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:4px;background:none;color:var(--muted);opacity:0;cursor:pointer;transition:opacity var(--t-fast) ease,color var(--t-fast) ease,background var(--t-fast) ease}.choice-row:hover .choice-row-x{opacity:1}.choice-row-x:hover{color:var(--danger);background:var(--coral-dim)}.dialog-chip{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:var(--ink-2);border:1px solid var(--hair);border-radius:6px;padding:5px 8px;margin-bottom:6px;cursor:pointer;transition:border-color var(--t-fast) ease}.dialog-chip:hover{border-color:var(--denim)}.dialog-chip-quote{flex:1;min-width:0;font-size:11px;font-style:italic;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ref-token{font-size:10px;font-weight:800;letter-spacing:.02em;background:var(--denim);color:var(--tx-1);border-radius:3px;padding:1px 5px;flex-shrink:0}.dialog-input{min-height:44px;field-sizing:content;resize:none;box-sizing:border-box;width:100%;padding:8px;background:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-ctl);color:var(--text);font-size:12px;line-height:1.45}.dialog-input:focus{border-color:var(--denim)}.choice-pin.react-flow__handle{width:11px;height:11px;right:-5px;border-radius:2px;transform:translateY(-50%) rotate(45deg);background:var(--ink-1);border:2px solid var(--butter)}.choice-pin.react-flow__handle:hover{background:var(--butter)}.choice-pin-new.react-flow__handle{border-style:dashed;border-color:#f1c24a99}.choice-row-pending .choice-row-phrases{font-style:italic;color:var(--butter);opacity:.85}.choice-row-pending .choice-pin.react-flow__handle{opacity:1;border-color:var(--butter);animation:pending-pin-pulse 1.4s ease-in-out infinite}@keyframes pending-pin-pulse{0%,to{box-shadow:0 0 #f1c24a00}50%{box-shadow:0 0 0 3px #f1c24a40}}.strip-stub-pending{border-style:dashed;border-color:#f1c24a80;cursor:default}.strip-stub-pending .strip-stub-target span{color:var(--butter);font-style:italic}.react-flow__edge.edge-decision .react-flow__edge-path{stroke-dasharray:7 5}.clip-node.node-hosting-right,.system-node.node-hosting-right{border-top-right-radius:0;border-bottom-right-radius:0}.clip-node-docked-right{border-top-left-radius:0;border-bottom-left-radius:0;border-left-color:var(--hair)}.node-hosting-right>.react-flow__handle-right,.clip-node-docked-right>.react-flow__handle-left{display:none}.dock-seam-chevron{position:absolute;left:-9px;top:50%;transform:translateY(-50%);width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ink-1);border:1px solid var(--hair-strong);color:var(--muted);z-index:10;padding:0;cursor:pointer;transition:color var(--t-fast) ease,border-color var(--t-fast) ease,background var(--t-fast) ease}.dock-seam-chevron:hover{color:var(--denim);border-color:var(--denim);background:var(--denim-dim)}.clip-node.node-hosting,.system-node.node-hosting{border-bottom-left-radius:0;border-bottom-right-radius:0}.node-hosting>.react-flow__handle-right{display:none}.clip-node-docked>.react-flow__handle-left{display:none}.clip-node-docked:before{clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px))}.clip-node-docked:after{clip-path:polygon(0 0,100% 0,100% calc(100% - 13.5px),calc(100% - 13.5px) 100%,13.5px 100%,0 calc(100% - 13.5px))}.beat-body{display:flex;align-items:flex-start;gap:8px;flex:1;min-height:0;overflow:hidden;margin:7px 0 4px}.beat-dialog{flex:1;min-width:0;font-size:12px;line-height:1.45;font-style:italic;color:var(--text);background:var(--ink-2);border:1px solid var(--hair);border-radius:3px 10px 10px;padding:5px 9px 6px}.beat-dialog-empty{color:var(--muted)}.beat-direction{flex:1;min-width:0;font-size:11px;line-height:1.5;font-style:italic;color:var(--muted);align-self:center}.dialog-chip-direction{color:var(--muted)}.beat-thumb{width:46px;height:46px;object-fit:cover;border-radius:6px;background:#000;flex-shrink:0;pointer-events:none}.beat-thumb-empty{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);background:var(--ink-2)}.beat-video-status{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--muted);border:1px dashed var(--hair);border-radius:6px;padding:4px 8px;margin-bottom:4px}.beat-video-status-decision{border-color:#f1c24a8c;background:#f1c24a0f;color:var(--butter)}.beat-generate{display:flex;align-items:center;gap:5px;width:100%;font-family:inherit;font-size:10px;font-weight:700;color:var(--butter);background:#f1c24a0f;border:1px solid rgba(241,194,74,.55);border-radius:6px;padding:4px 8px;margin-bottom:4px;cursor:pointer;transition:background var(--t-fast) ease}.beat-generate:hover{background:#f1c24a2e}.add-next-chip{position:absolute;top:50%;right:-30px;transform:translateY(-50%);width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ink-1);border:1px dashed var(--hair-strong);color:var(--muted);cursor:pointer;transition:color var(--t-fast) ease,border-color var(--t-fast) ease,background var(--t-fast) ease}.add-next-chip:hover{color:var(--accent);border-color:var(--accent);border-style:solid;background:var(--ink-2)}.add-decision-chip{position:absolute;bottom:-30px;left:50%;transform:translate(-50%);width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ink-1);border:1px dashed var(--hair-strong);color:var(--muted);cursor:pointer;transition:color var(--t-fast) ease,border-color var(--t-fast) ease,background var(--t-fast) ease}.add-decision-chip:hover{color:var(--butter);border-color:var(--butter);border-style:solid;background:var(--ink-2)}.script-tag,.decision-tag,.system-tag{position:absolute;bottom:100%;margin-bottom:-1px;left:12px;display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:2px 7px 3px;border-radius:5px 5px 0 0}.script-tag{background:var(--ink-2);border:1px solid var(--hair);border-bottom:none;color:var(--muted)}.decision-tag{left:14px;background:var(--butter);color:var(--ink-0)}.system-tag{background:var(--ink-2);border:1px solid var(--hair-strong);border-bottom:none;color:var(--accent)}.clip-node-docked .decision-tag{left:12px}.clip-node-stale{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--danger);margin-top:2px}.canvas-hint{position:absolute;top:12px;right:12px;z-index:5;font-size:11px;color:var(--muted);background:#1d1813c7;border-radius:var(--r-pill);padding:5px 12px;pointer-events:none}.meta-pill{background:var(--ink-3);border-radius:var(--r-pill);padding:3px 10px;font-size:11px;color:var(--muted);margin-left:8px;white-space:nowrap;font-variant-numeric:tabular-nums}.transport-warn{color:var(--danger);font-weight:600;margin-left:auto}.transport-saved{color:var(--emerald);font-weight:600;margin-left:auto;display:inline-flex;align-items:center;gap:5px}.mode-toggle button.mode-active-danger{background:var(--coral-dim);color:var(--danger)}.delete-quiet{color:var(--muted)}.delete-quiet:hover{color:var(--danger);border-color:var(--danger);background:var(--coral-dim)}.system-node{position:relative;width:170px;height:132px;background:var(--ink-2);border:1px solid var(--hair-strong);border-radius:var(--r-panel);padding:10px 12px}.system-node-sub{font-size:12px;color:var(--muted);margin-top:2px}.path-status-ok,.path-status-warn{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600}.path-status-ok{color:var(--accent)}.path-status-warn{color:var(--danger)}.clip-node>.react-flow__handle,.system-node>.react-flow__handle{opacity:0;transition:opacity var(--t-fast) ease}.clip-node:hover>.react-flow__handle,.system-node:hover>.react-flow__handle,.react-flow__handle.connectingto,.react-flow__handle.valid{opacity:1}.react-flow__handle{width:11px;height:11px;background:var(--ink-2);border:2px solid var(--tx-3);transition:border-color var(--t-fast) ease,background var(--t-fast) ease}.react-flow__handle:hover{border-color:var(--denim);background:var(--denim-dim)}.react-flow__edge path{transition:opacity var(--t-med) ease}.react-flow__controls{box-shadow:none;border:1px solid var(--hair);border-radius:var(--r-ctl);overflow:hidden}.react-flow__controls button{background:var(--ink-1);border-bottom:1px solid var(--hair);color:var(--text);fill:var(--text)}.react-flow__controls button:hover{background:var(--ink-2)}button svg,.btn svg,.mode-toggle button svg,.decision-collapse svg,.chip-x svg,.drawer-item-copy svg,.drawer-item-delete svg{display:block}.icon-spin{animation:icon-spin .7s linear infinite}@keyframes icon-spin{to{transform:rotate(360deg)}}.video-poster{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;background-color:#000;z-index:2}.video-play-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;display:grid;place-items:center;background:#1d181338;transition:background var(--t-fast) ease}.video-play-overlay .disc{pointer-events:auto;cursor:pointer;width:62px;height:62px;border-radius:50%;background:#1d18138c;border:1px solid var(--hair-strong);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;color:var(--tx-1);transition:transform var(--t-fast) ease,background var(--t-fast) ease,color var(--t-fast) ease}.video-frame:hover .video-play-overlay .disc{transform:scale(1.06);background:var(--emerald);border-color:var(--emerald);color:var(--on-emerald)}.video-frame:has(.video-fs-btn:hover) .video-play-overlay .disc{transform:none;background:#1d18138c;border-color:var(--hair-strong);color:var(--tx-1)}.video-fs-btn{position:absolute;right:14px;bottom:14px;z-index:6;width:36px;height:36px;display:grid;place-items:center;border-radius:var(--r-ctl);background:#1d18138c;border:1px solid var(--hair-strong);color:var(--tx-1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;opacity:0;transform:translateY(4px);transition:opacity var(--t-fast) ease,transform var(--t-fast) ease,background var(--t-fast) ease,border-color var(--t-fast) ease}.video-frame.controls-shown .video-fs-btn,.video-fs-btn:focus-visible{opacity:1;transform:translateY(0)}.video-frame.controls-hidden{cursor:none}.video-fs-btn:hover{background:var(--emerald);border-color:var(--emerald);color:var(--on-emerald)}.video-frame:fullscreen{aspect-ratio:auto;width:100%;height:100%;border-radius:0}.video-frame:fullscreen video{object-fit:contain}.canvas-view-toggle{position:absolute;top:12px;left:12px;z-index:6;display:inline-flex;gap:2px;padding:2px;background:#1d1813c7;border:1px solid var(--hair);border-radius:var(--r-pill)}.canvas-view-toggle button{border:none;background:none;font-family:inherit;font-size:11px;font-weight:700;color:var(--muted);padding:3px 12px;border-radius:var(--r-pill);cursor:pointer;transition:color var(--t-fast) ease,background var(--t-fast) ease}.canvas-view-toggle button.view-active{background:var(--ink-3);color:var(--text)}.strip-canvas{position:absolute;top:0;right:0;bottom:0;left:0}.strip-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;background:var(--ink-0);background-image:radial-gradient(rgba(228,198,174,.06) 1px,transparent 1px);background-size:30px 30px}.strip-flow{display:inline-flex;align-items:flex-start;padding:64px 80px 80px;min-width:100%}.strip-slot{position:relative;display:flex;flex-direction:column;flex-shrink:0}.strip-slot+.strip-slot{margin-left:-1px}.strip-cell{position:relative;width:240px;min-height:132px;display:flex;flex-direction:column;background:var(--ink-1);border:1px solid var(--hair);padding:10px 12px;cursor:pointer}.strip-cell-system{width:170px;background:var(--ink-2);border-color:var(--hair-strong)}.strip-slot:first-child>.strip-cell{border-radius:var(--r-panel) 0 0 var(--r-panel)}.strip-slot:last-child>.strip-cell{border-radius:0 var(--r-panel) var(--r-panel) 0}.strip-slot:only-child>.strip-cell{border-radius:var(--r-panel)}.strip-cell-inpath{background:var(--ink-2)}.strip-cell-child{z-index:1;border-color:#f1c24a99;background:linear-gradient(180deg,#f1c24a1c,#f1c24a0a 55%),var(--ink-1)}.strip-cell-child.strip-cell-inpath{background:linear-gradient(180deg,#f1c24a1c,#f1c24a0a 55%),var(--ink-2)}.strip-cell-child>.decision-tag{left:12px}.strip-cell-selected{z-index:2;border-color:var(--denim)!important;background:linear-gradient(var(--denim-dim),var(--denim-dim)),var(--ink-2)}.strip-cell-child.strip-cell-selected{border-color:var(--butter)!important;background:linear-gradient(180deg,#f1c24a57,#f1c24a29 55%),var(--ink-2)}.strip-cell-broken{z-index:2;border-color:var(--danger)!important}.strip-seam{position:absolute;left:-9px;top:57px;width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ink-1);border:1px solid var(--hair-strong);color:var(--muted);z-index:3;pointer-events:none}.strip-row-continues{flex-shrink:0;display:inline-flex;color:var(--butter)}.strip-lane-mark{flex-shrink:0;width:9px;height:9px;border:2px solid var(--butter);border-radius:2px;transform:rotate(45deg);background:var(--ink-1)}.strip-lane-mark-default{border-color:var(--emerald)}.strip-lane-setdefault{flex-shrink:0;border:none;background:none;font-family:inherit;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:1px 5px;border-radius:4px;cursor:pointer;transition:color var(--t-fast) ease,background var(--t-fast) ease}.strip-lane-setdefault:hover{color:var(--on-emerald);background:var(--emerald)}.strip-stubs{position:relative;display:flex;flex-direction:column;gap:8px;margin:14px 0 0 26px;padding-bottom:8px}.strip-stubs:before{content:"";position:absolute;left:-12px;top:-14px;bottom:16px;border-left:1px dashed rgba(241,194,74,.45)}.strip-stub{display:flex;flex-direction:column;gap:6px;width:214px;text-align:left;font-family:inherit;color:var(--text);background:var(--ink-1);border:1px dashed rgba(241,194,74,.5);border-radius:var(--r-panel);padding:8px 10px;cursor:pointer;transition:border-color var(--t-fast) ease,background var(--t-fast) ease}.strip-stub:hover{border-style:solid;border-color:var(--butter);background:var(--ink-2)}.strip-stub-phrases{display:flex;align-items:center;gap:7px;min-width:0;font-size:11px;font-weight:600;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strip-stub-silence .strip-stub-phrases{color:var(--muted)}.strip-stub-target{display:flex;align-items:center;gap:7px;min-width:0;font-size:11px;color:var(--muted)}.strip-stub-target img{width:30px;height:30px;border-radius:5px;object-fit:cover;background:#000;flex-shrink:0;pointer-events:none}.strip-stub-target span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strip-stub-ghost{flex-direction:row;align-items:center;gap:6px;font-size:11px;font-style:italic;color:var(--muted);border-color:var(--hair-strong)}.strip-stub-ghost:hover{color:var(--text);border-color:var(--butter)}.strip-stub-ghost.strip-stub-silence{border-color:#f1c24a80}.strip-stub{position:relative}.strip-stub-x{position:absolute;top:5px;right:5px}.strip-stub:hover .strip-stub-x{opacity:1}.strip-orphans{position:absolute;bottom:12px;left:12px;z-index:6;display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--danger);background:#1d1813d9;border-radius:var(--r-pill);padding:5px 12px;pointer-events:none}.crash-panel{max-width:640px;margin:15vh auto 0;padding:24px;background:var(--ink-2);border:1px solid var(--coral);border-radius:10px;display:flex;flex-direction:column;gap:12px}.crash-title{font-size:15px;font-weight:700;color:var(--coral)}.crash-message{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--ink-1);border:1px solid var(--hair);border-radius:6px;padding:10px 12px;max-height:220px;overflow-y:auto}.crash-note{font-size:12px;color:var(--muted)}.crash-panel .btn{align-self:flex-start}.gen-addendum{margin-top:6px;font-size:11px;line-height:1.5;color:var(--muted);font-style:italic}.gen-addendum-label{display:block;font-style:normal;font-size:var(--fs-label);font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--tx-3);margin-bottom:2px}.app-runtime .top-bar,.app-runtime .timeline,.app-runtime .transcript-panel,.app-runtime .transport,.app-runtime .mode-toggle,.app-runtime .rec-btn,.app-runtime .debug-toggle,.app-runtime .btn-beat{display:none}.app-runtime .player-stage{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;max-width:none;width:100vw;height:100vh;margin:0;padding:0;border-radius:0}.app-runtime .player-stage video,.app-runtime .video-frame{width:100vw;height:100vh;max-height:none;object-fit:contain;border-radius:0}.runtime-start{min-width:200px;height:var(--ctl-lg);font-size:16px}.runtime-progress{font-variant-numeric:tabular-nums;color:var(--muted);font-size:13px}.runtime-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:var(--bg);padding:24px}.runtime-title{font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.runtime-name{font-size:34px;font-weight:700;color:var(--text)}.runtime-note{max-width:440px;text-align:center;color:var(--muted);font-size:14px;line-height:1.5}.runtime-loading-bar{width:220px;height:4px;border-radius:2px;background:var(--ink-3);overflow:hidden}.runtime-loading-fill{height:100%;width:40%;border-radius:2px;background:var(--butter);animation:runtime-sweep 1.6s ease-in-out infinite}@keyframes runtime-sweep{0%{transform:translate(-100%)}to{transform:translate(320%)}}.runtime-form{display:flex;gap:8px}.runtime-form input{width:240px}.runtime-url{font-family:ui-monospace,monospace;font-size:13px;color:var(--text);background:var(--panel);border:1px solid var(--hair);border-radius:8px;padding:10px 14px;-webkit-user-select:all;user-select:all}.runtime-ready{color:var(--emerald);font-size:13px}.runtime-wait{color:var(--butter);font-size:13px}.dossier{--dn-bg: #16213a;--dn-ink: #ece5d3;--dn-mut: #8b94ad;--dn-hair: rgba(236, 229, 211, .35);--dn-red: #c24d2e;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--dn-bg);display:flex;align-items:stretch;padding:18px;font-family:IBM Plex Mono,ui-monospace,monospace;color:var(--dn-ink)}.dossier-frame{position:relative;flex:1;border:1px solid var(--dn-hair);display:flex;flex-direction:column}.dossier-top{display:flex;justify-content:space-between;gap:12px;padding:14px 22px;border-bottom:1px solid var(--dn-hair);font-size:12px;letter-spacing:.22em;color:var(--dn-ink)}.dossier-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;padding:24px 72px}.dossier-mark{width:150px;stroke:var(--dn-ink);opacity:.9}.dossier-mark-spark{fill:var(--butter);stroke:none}.dossier-kicker{font-size:13px;letter-spacing:.5em;color:var(--dn-mut)}.dossier-title{font-family:Playfair Display,Georgia,serif;font-weight:600;font-size:clamp(34px,6.5vw,68px);line-height:1.08;margin:0;color:var(--dn-ink);max-width:18ch}.dossier-hr{width:180px;height:1px;background:var(--dn-hair)}.dossier-sub{font-size:12px;letter-spacing:.3em;color:var(--dn-mut);max-width:60ch;line-height:1.8}.dossier-rail{position:absolute;top:90px;right:26px;writing-mode:vertical-rl;font-size:13px;letter-spacing:.5em;color:var(--dn-mut)}.dossier-stamp{position:absolute;top:64px;right:70px;width:64px;height:64px;border:2px solid var(--dn-red);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--dn-red);font-size:17px;letter-spacing:.1em;transform:rotate(-12deg);opacity:.85}.dossier-cells{display:flex;border-top:1px solid var(--dn-hair);font-size:12px;letter-spacing:.14em;color:var(--dn-mut)}.dossier-cells span{padding:12px 18px;border-right:1px solid var(--dn-hair);white-space:nowrap}.dossier-cells b{color:var(--dn-mut);font-weight:400;margin-right:8px}.dossier-cells span b+*,.dossier-cells span{color:var(--dn-ink)}.dossier-cell-spacer{flex:1;border-right:1px solid var(--dn-hair)}.dossier-cells span:last-child{border-right:none}.dossier .runtime-form input{background:transparent;border:1px solid var(--dn-hair);color:var(--dn-ink);font-family:inherit;letter-spacing:.18em;font-size:13px;padding:0 14px;height:40px;width:280px}.dossier .runtime-form input::placeholder{color:var(--dn-mut)}.dossier-btn{background:var(--dn-ink);color:var(--dn-bg);border:none;border-radius:0;height:40px;padding:0 22px;font-family:inherit;letter-spacing:.22em;font-size:13px}.dossier-btn:hover{background:#fff}.dossier .runtime-start{min-width:260px;height:48px}.dossier .runtime-note,.dossier .runtime-wait,.dossier .runtime-ready,.dossier .runtime-progress{font-size:11px;letter-spacing:.24em;line-height:2;max-width:64ch;color:var(--dn-mut)}.dossier .runtime-ready{color:var(--emerald)}.dossier .runtime-wait{color:var(--butter)}.dossier .runtime-url{background:transparent;border:1px solid var(--dn-hair);border-radius:0;color:var(--dn-ink);letter-spacing:.06em}.dossier .runtime-loading-bar{width:280px;background:#ece5d31f}@media (max-width: 700px){.dossier{padding:10px}.dossier-body{padding:18px}.dossier-rail,.dossier-stamp{display:none}.dossier-cells span:nth-child(2),.dossier-cells span:nth-child(3){display:none}.dossier-top{font-size:9px;letter-spacing:.14em}}.crt-slate{position:fixed;top:0;right:0;bottom:0;left:0;background:#050505;overflow:hidden;display:flex;align-items:center;justify-content:center;font-family:IBM Plex Mono,ui-monospace,monospace;color:#e8e4da}.crt-slate:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.045) 0px,rgba(255,255,255,.045) 1px,transparent 1px,transparent 3px)}.crt-noise{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");animation:crt-jitter .45s steps(3) infinite}@keyframes crt-jitter{0%{transform:translate(0)}33%{transform:translate(-2%,1%)}66%{transform:translate(1%,-2%)}to{transform:translate(0)}}.crt-scanline{position:absolute;left:0;right:0;height:90px;pointer-events:none;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.06),transparent);animation:crt-sweep 5s linear infinite}@keyframes crt-sweep{0%{top:-20%}to{top:110%}}.crt-lines{position:relative;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;padding:24px;animation:crt-flicker 4s infinite}@keyframes crt-flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.72}94%{opacity:1}97%{opacity:.85}98%{opacity:1}}.crt-jp{font-size:13px;letter-spacing:.6em;color:#e8e4da99}.crt-main{font-size:clamp(22px,4.4vw,42px);letter-spacing:.28em;font-weight:500;text-shadow:0 0 14px rgba(232,228,218,.35)}.crt-sub{font-size:13px;letter-spacing:.42em;color:#e8e4dabf}.crt-channel{font-size:12px;letter-spacing:.34em;color:#e8e4da80}.crt-begin{margin-top:10px;background:transparent;border:1px solid rgba(232,228,218,.7);color:#e8e4da;font-family:inherit;font-size:14px;letter-spacing:.3em;padding:14px 30px;cursor:pointer;text-shadow:0 0 10px rgba(232,228,218,.4)}.crt-begin:hover{background:#e8e4da1f}.crt-foot{font-size:10px;letter-spacing:.3em;line-height:2.1;max-width:60ch;color:#e8e4da8c;font-variant-numeric:tabular-nums}.found-page{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182c;font-family:IBM Plex Mono,ui-monospace,monospace;color:#cfd3dd}.found-block{position:absolute;top:12vh;left:clamp(24px,12vw,160px);display:flex;flex-direction:column;gap:10px;font-size:13px;letter-spacing:.18em;line-height:1.7}.found-line{white-space:pre-wrap}.found-dim{color:#626b83}.found-small{font-size:11px;max-width:52ch;text-transform:lowercase}.found-bad{color:var(--coral)}.found-gap{height:18px}.found-prompt{display:flex;align-items:center;gap:12px}.found-prompt input{background:transparent;border:none;border-bottom:1px solid #626b83;color:#e8ebf2;font-family:inherit;font-size:14px;letter-spacing:.3em;padding:2px 0;width:220px;outline:none}.found-prompt input:focus{border-bottom-color:#cfd3dd}.found-mark{width:84px;stroke:#626b83;margin-bottom:8px}.found-seal{display:flex;align-items:center;gap:18px;margin-bottom:8px}.found-seal .found-mark{margin-bottom:0}.found-seal-text{border-left:1px solid #2a3450;padding-left:18px}.found-ica{font-size:26px;letter-spacing:.34em;line-height:1;color:#cfd3dd}.found-ica-name{margin-top:7px;font-size:10px;letter-spacing:.26em;color:#626b83}.found-brand{color:var(--butter);opacity:.8}.found-foot{position:absolute;bottom:4vh;left:clamp(24px,12vw,160px);font-size:10px;letter-spacing:.24em;color:#3d4661}.found-mark-spark{fill:var(--butter);stroke:none;opacity:.8}.found-level{color:var(--dn-red, #c24d2e);letter-spacing:.24em}.found-url{border:1px solid #626b83;padding:8px 12px;color:#e8ebf2;letter-spacing:.06em;-webkit-user-select:all;user-select:all;font-size:12px}.found-ok{color:var(--emerald)}.found-warn{color:var(--butter);max-width:56ch}.found-mark-op .found-mark-spark{fill:#c24d2e}.boot-log{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:0 clamp(24px,14vw,220px);width:100%;font-size:clamp(12px,1.6vw,16px);letter-spacing:.18em;line-height:1.6}.boot-line{color:#e8e4dad9;text-shadow:0 0 8px rgba(232,228,218,.25);white-space:pre-wrap}.boot-signal{color:var(--butter);font-variant-numeric:tabular-nums}.boot-locked{color:#fff;text-shadow:0 0 12px rgba(255,255,255,.4)}.boot-dim{color:#e8e4da73;font-size:.75em}.boot-begin{margin-top:6px}.boot-cursor{color:#e8e4dacc;animation:boot-blink .9s steps(1) infinite}@keyframes boot-blink{50%{opacity:0}}.found-url-row{display:flex;align-items:stretch;gap:8px}.found-copy{background:transparent;border:1px solid #626b83;color:#cfd3dd;font-family:inherit;font-size:10px;letter-spacing:.22em;padding:0 12px;cursor:pointer}.found-copy:hover{border-color:#cfd3dd;color:#fff}.found-ok{display:flex;align-items:center;gap:12px}.found-regen{margin-left:4px}.boot-fault{color:var(--coral);max-width:52ch}.boot-rescan{font-size:11px;padding:10px 20px;border-color:var(--coral);color:var(--coral)}.boot-rescan:hover{background:#e05a471f}.found-name-row{display:flex;gap:14px;align-items:baseline}.found-name{color:#e8ebf2;min-width:9ch}.found-name-row .found-ok,.found-name-row .found-warn,.found-name-row .found-bad{display:inline}
