*,:before,:after{box-sizing:border-box}:root{--color-bg1:#16191e;--color-bg2:#1e2228;--color-bg3:#262b33;--color-bg4:#2e343c;--color-border:#2e3440;--color-text1:#cdd3de;--color-text2:#8891a0;--color-text3:#4a5260;--color-cue-audio:#4a9edd;--color-cue-memo:#e6a030;--color-cue-group:#9b8fdd;--color-cue-fade:#3db882;--color-go:#1f6e47;--color-stop:#7a2828;--color-accent:#4a9edd;--cue-icon-size:1.571rem;--toolbar-height:3.714rem;--scene-browser-height:3.571rem;color:var(--color-text1);background:var(--color-bg1);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:14px}.label-caps{letter-spacing:.08em;text-transform:uppercase;font-size:.714rem;font-weight:700}html,body{overscroll-behavior:none;width:100%;height:100%;margin:0;padding:0;position:fixed;overflow:hidden}#root{height:100%;margin:0;padding:0}button{cursor:pointer;font-family:inherit}textarea,input{font-family:inherit}.toolbar{height:var(--toolbar-height);background:var(--color-bg2);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 1.143rem;display:flex}.toolbar__left{align-items:center;gap:.714rem;display:flex}.toolbar__title{color:var(--color-text1);margin:0;font-size:1.214rem;font-weight:600}.toolbar__dirty-indicator{color:var(--color-text3);font-size:1.714rem;font-weight:400}.toolbar__saving-indicator,.toolbar__saved-indicator{color:var(--color-text3);font-size:13px}.toolbar__title--renaming{outline:1px solid var(--color-accent);background:0 0;border:none;border-radius:.286rem;padding:.071rem .286rem;font-family:inherit}.segmented-control{background:var(--color-bg3);border-radius:.571rem;gap:.143rem;padding:.143rem;display:flex}.segmented-control__btn{color:var(--color-text2);background:0 0;border:none;border-radius:.429rem;padding:.286rem 1.286rem;font-size:.929rem;font-weight:500;transition:background .12s,color .12s}.segmented-control__btn--active{background:var(--color-bg4);color:var(--color-text1)}.file-menu{position:relative}.file-menu__trigger{border:1px solid var(--color-border);background:var(--color-bg3);border-radius:.429rem;justify-content:center;align-items:center;width:2.286rem;height:2.286rem;transition:background .12s;display:flex}.file-menu__trigger:hover,.file-menu__trigger--open{background:var(--color-bg4)}.file-menu__hamburger{background:var(--color-text2);width:1rem;height:2px;box-shadow:0 -.286rem 0 var(--color-text2), 0 .286rem 0 var(--color-text2);border-radius:1px;display:block}.file-menu__dropdown{background:var(--color-bg2);border:1px solid var(--color-border);z-index:50;border-radius:.571rem;min-width:14.286rem;padding:.286rem;position:absolute;top:calc(100% + .429rem);left:0;box-shadow:0 .571rem 1.714rem #0006}.file-menu__item{text-align:left;width:100%;color:var(--color-text1);background:0 0;border:none;border-radius:.357rem;padding:.5rem .857rem;font-size:.929rem;transition:background .1s;display:block}.file-menu__item:hover:not(:disabled){background:var(--color-bg3)}.file-menu__item:disabled{color:var(--color-text3);cursor:default}.file-menu__separator{background:var(--color-border);height:1px;margin:.286rem 0}.edit-mode{flex-direction:column;flex:1;display:flex;overflow:hidden}.edit-work-area{flex-direction:row;flex:1;min-height:0;display:flex;overflow:hidden}@media (orientation:portrait){.edit-work-area{flex-direction:column}}.scene-browser{height:var(--scene-browser-height);background:var(--color-bg2);border-bottom:1px solid var(--color-border);flex-shrink:0;align-items:center;gap:.714rem;padding:0 1.143rem;display:flex}.scene-browser__label{color:var(--color-text3);white-space:nowrap}.scene-browser__chips{overscroll-behavior:contain;scrollbar-width:none;gap:.429rem;display:flex;overflow-x:auto}.scene-browser__chips::-webkit-scrollbar{display:none}.scene-chip{border:1px solid var(--color-border);color:var(--color-text2);white-space:nowrap;background:0 0;border-radius:.429rem;align-items:center;gap:.286rem;padding:.286rem .714rem;font-size:.929rem;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.scene-chip:hover{background:var(--color-bg3);color:var(--color-text1)}.scene-chip--active{background:var(--color-accent);border-color:var(--color-accent);color:#fff;font-weight:500}.scene-chip--active:hover{background:var(--color-accent);color:#fff}.scene-chip--add{color:var(--color-accent);border-color:#0000}.scene-chip--add:hover:not(:disabled){background:color-mix(in srgb, var(--color-accent) 10%, var(--color-bg2));color:var(--color-accent);border-color:#0000}.scene-chip--add:disabled{color:var(--color-text3);cursor:default}.scene-chip-wrap{align-items:center;gap:.143rem;display:inline-flex}.scene-chip__drag-handle{opacity:0;cursor:grab;color:var(--color-text3);-webkit-user-select:none;user-select:none;flex-shrink:0;padding:0 .071rem;font-size:.857rem;transition:opacity .15s}.scene-chip:hover .scene-chip__drag-handle{opacity:1}.scene-chip-wrap--dragging{opacity:.4}.scene-chip-wrap--drop-target{border-left:2px solid var(--color-accent);margin-left:-2px}.scene-chip-wrap--drop-target-end{border-right:2px solid var(--color-accent)}.scene-chip--renaming{width:auto;min-width:5.714rem;font-size:inherit;cursor:text;border:none;outline:2px solid #fff9;padding:.286rem .571rem;font-family:inherit}.scene-chip-delete{opacity:0;color:inherit;cursor:pointer;outline-offset:1px;border-radius:.214rem;flex-shrink:0;padding:.071rem .214rem;font-size:1rem;line-height:1;transition:opacity .15s,background .15s}.scene-chip:hover .scene-chip-delete{opacity:1}.scene-chip-delete:hover{background:color-mix(in srgb, var(--color-stop) 40%, var(--color-bg2))}.cue-list-panel{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.add-cue-bar{flex-shrink:0;gap:.571rem;padding:.857rem 1.143rem .714rem;display:flex}.add-cue-btn{border:1px solid var(--color-border);background:var(--color-bg3);color:var(--color-text2);border-radius:.429rem;padding:.357rem .857rem;font-size:.929rem;transition:background .12s,color .12s}.add-cue-btn:hover:not(:disabled){background:var(--color-bg4);color:var(--color-text1)}.add-cue-btn:disabled{color:var(--color-text3);cursor:default}.cue-detail-resizer{cursor:col-resize;background:#636366;flex-shrink:0;width:.357rem;transition:background .1s}.cue-detail-resizer:hover,.cue-detail-resizer:active{background:var(--color-accent)}@media (orientation:portrait){.cue-detail-resizer{cursor:row-resize;width:100%;height:.357rem}}.cue-detail-panel{border-left:1px solid var(--color-border);background:var(--color-bg3);width:var(--cue-detail-panel-size,320px);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}@media (orientation:portrait){.cue-detail-panel{border-left:none;border-top:1px solid var(--color-border);width:100%;height:var(--cue-detail-panel-size,280px)}.cue-detail-panel--collapsed{height:auto}}.cue-detail-panel__header{border-bottom:1px solid var(--color-border);background:var(--color-bg4);flex-shrink:0;justify-content:center;align-items:center;padding:.5rem 1.143rem;display:flex;position:relative}.cue-detail-panel__title{color:var(--color-text2)}.cue-detail-panel__toggle{color:var(--color-text2);cursor:pointer;background:0 0;border:none;border-radius:.214rem;padding:.143rem .357rem;font-size:.929rem;line-height:1;position:absolute;top:50%;right:.571rem;transform:translateY(-50%)}.cue-detail-panel__toggle:hover{background:#ffffff1a}@media (orientation:landscape){.cue-detail-panel{flex-direction:row}.cue-detail-panel--collapsed{width:auto}.cue-detail-panel__header{border-bottom:none;border-right:1px solid var(--color-border);flex-direction:column;align-self:stretch;width:2.286rem;height:auto;padding:1rem 0}.cue-detail-panel__title{writing-mode:vertical-rl;transform:rotate(180deg)}.cue-detail-panel__toggle{top:.571rem;right:50%;transform:translate(50%)}}.cue-detail-panel__body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.modal-backdrop{z-index:100;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--color-bg2);border:1px solid var(--color-border);border-radius:.857rem;width:24.286rem;max-width:calc(100vw - 2.286rem);padding:1.714rem}.modal__title{color:var(--color-text1);margin:0 0 1.286rem;font-size:1.143rem;font-weight:600}.modal__field{flex-direction:column;gap:.429rem;margin-bottom:.714rem;display:flex}.modal__label{color:var(--color-text2);font-size:.857rem;font-weight:500}.modal__input{background:var(--color-bg3);border:1px solid var(--color-border);color:var(--color-text1);border-radius:.5rem;width:100%;padding:.571rem .714rem;font-size:1rem}.modal__input:focus{border-color:var(--color-accent);outline:none}.modal__hint{color:var(--color-text3);margin:0 0 1.429rem;font-size:.857rem}.modal__message{color:var(--color-text2);margin:0 0 1.429rem;font-size:1rem;line-height:1.5}.modal__actions{justify-content:flex-end;gap:.571rem;display:flex}.modal__btn{border:1px solid var(--color-border);border-radius:.5rem;padding:.5rem 1.143rem;font-size:.929rem;font-weight:500}.modal__btn--cancel{background:var(--color-bg3);color:var(--color-text2)}.modal__btn--cancel:hover{background:var(--color-bg4);color:var(--color-text1)}.modal__btn--confirm{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.modal__btn--confirm:hover{opacity:.9}.modal__btn--destructive{background:var(--color-bg3);color:var(--color-stop);border-color:var(--color-border)}.modal__btn--destructive:hover{background:color-mix(in srgb, var(--color-stop) 12%, var(--color-bg2))}.cue-list{--toggle-col-width:2.143rem;--label-col-width:3.714rem;--type-col-width:calc(var(--cue-icon-size) + .429rem);--duration-col-width:5.143rem;--playing-indicator-col-width:1rem;--drag-handle-col-width:.857rem;--delete-col-width:1.143rem;--cue-indent:.571rem;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.cue-list--empty{color:var(--color-text3);justify-content:center;align-items:center;font-size:1rem;display:flex}.cue-list__header{border-bottom:1px solid var(--color-border);background:var(--color-bg2);z-index:1;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text3);-webkit-user-select:none;user-select:none;align-items:center;gap:.286rem;padding:.286rem .571rem;font-size:.714rem;font-weight:600;display:flex;position:sticky;top:0}.cue-list__header-toggle{width:var(--toggle-col-width);flex-shrink:0}.cue-list__header-label{width:var(--label-col-width);flex-shrink:0;position:relative}.cue-list__label-resize{cursor:col-resize;z-index:1;width:.571rem;position:absolute;top:0;bottom:0;right:-.286rem}.cue-list__label-resize:after{content:"";background:var(--color-border);border-radius:1px;width:2px;transition:background .15s;position:absolute;top:20%;bottom:20%;left:50%;transform:translate(-50%)}.cue-list__label-resize:hover:after{background:var(--color-accent)}.cue-list__header-type{width:var(--type-col-width);text-align:center;flex-shrink:0}.cue-list__header-name{flex:1}.cue-list__header-duration{width:var(--duration-col-width);text-align:right;flex-shrink:0}.cue-row{border-bottom:1px solid var(--color-border);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.571rem;padding:.286rem .429rem .286rem .143rem;transition:background .1s;display:flex}.cue-row:hover{background:var(--color-bg2)}.cue-row--selected{background:color-mix(in srgb, var(--color-accent) 10%, var(--color-bg2))}.cue-row--selected:hover{background:color-mix(in srgb, var(--color-accent) 14%, var(--color-bg2))}.cue-row__label{width:var(--label-col-width);text-align:left;color:var(--color-text1);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:1rem;font-weight:600}.cue-row__label--empty{opacity:.35;cursor:default}.cue-row__label--renaming{width:var(--label-col-width);outline:1px solid var(--color-accent);font-variant-numeric:tabular-nums;color:var(--color-text1);text-align:left;background:0 0;border:none;border-radius:.214rem;padding:0 .143rem;font-family:inherit;font-size:1rem;font-weight:600}.cue-row__name{color:var(--color-text1);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:1rem;overflow:hidden}.cue-row__name--empty{opacity:.4;font-style:italic}.cue-row__name--renaming{outline:1px solid var(--color-accent);color:var(--color-text1);white-space:normal;background:0 0;border:none;border-radius:.214rem;padding:0 .143rem;font-family:inherit;font-size:1rem;overflow:visible}.cue-row__duration{width:var(--duration-col-width);text-align:right;color:var(--color-text2);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.929rem}.cue-list__header-spacer{flex-shrink:0}.cue-list__header-spacer--playing{width:var(--playing-indicator-col-width)}.cue-list__header-spacer--drag{width:var(--drag-handle-col-width)}.cue-list__header-spacer--delete{width:var(--delete-col-width)}.cue-row__drag-handle{width:var(--drag-handle-col-width);opacity:0;cursor:grab;color:var(--color-text3);-webkit-user-select:none;user-select:none;flex-shrink:0;padding:0;font-size:1rem;transition:opacity .15s}.cue-row:hover .cue-row__drag-handle{opacity:1}.cue-row--dragging{opacity:.4}.cue-row--drop-before{box-shadow:0 -2px 0 0 var(--color-accent)}.cue-row--drop-after{box-shadow:0 2px 0 0 var(--color-accent)}.cue-row--drop-inside{outline:2px solid var(--color-accent);outline-offset:-2px}.cue-list__end-zone{height:.571rem}.cue-list__end-zone--active{border-top:2px solid var(--color-accent)}.cue-row--group{font-weight:600}.cue-row--group.cue-row--selected{background:color-mix(in srgb, var(--color-accent) 10%, var(--color-bg2))}.cue-row__tree{color:var(--color-text2);white-space:pre;flex-shrink:0;font-family:monospace;font-size:.929rem;font-weight:400}.cue-row__group-toggle,.cue-row__group-toggle-spacer{width:var(--toggle-col-width);flex-shrink:0}.cue-row__group-toggle{color:var(--color-text2);cursor:pointer;opacity:.7;background:0 0;border:none;padding:0 .714rem;font-size:.857rem;line-height:1}.cue-row__group-toggle:hover{opacity:1}.cue-row--group-enter{outline:2px solid color-mix(in srgb, var(--color-accent) 50%, transparent);outline-offset:-2px}.cue-row__playing-indicator{width:var(--playing-indicator-col-width);color:var(--color-cue-fade);text-align:center;visibility:hidden;flex-shrink:0;font-size:.714rem}.cue-row__playing-indicator--active{visibility:visible}.cue-row__warning{color:var(--color-warning,#f5a623);cursor:default;text-align:center;font-size:1rem}.cue-row--playing{background:color-mix(in srgb, var(--color-cue-fade) 7%, var(--color-bg2))}.cue-row__delete{width:var(--delete-col-width);opacity:0;color:var(--color-text3);cursor:pointer;background:0 0;border:none;border-radius:.286rem;flex-shrink:0;padding:.143rem 0;font-size:1.143rem;line-height:1;transition:opacity .15s,background .15s,color .15s}.cue-row:hover .cue-row__delete,.cue-row--selected .cue-row__delete{opacity:1}.cue-row__delete:hover{background:color-mix(in srgb, var(--color-stop) 12%, var(--color-bg2));color:var(--color-stop)}.cue-row__delete--confirm{opacity:1;background:var(--color-stop);color:#fff;width:auto;padding:.214rem .571rem;font-size:.786rem;font-weight:700}.cue-row__delete--confirm:hover{color:#fff;background:#d93025}.cue-badge{width:var(--cue-icon-size);height:var(--cue-icon-size);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.cue-badge--audio{background:color-mix(in srgb, var(--color-cue-audio) 15%, var(--color-bg2));color:var(--color-cue-audio)}.cue-badge--memo{background:color-mix(in srgb, var(--color-cue-memo) 15%, var(--color-bg2));color:var(--color-cue-memo)}.cue-badge--group{background:color-mix(in srgb, var(--color-cue-group) 15%, var(--color-bg2));color:var(--color-cue-group)}.cue-badge--fade{background:color-mix(in srgb, var(--color-cue-fade) 15%, var(--color-bg2));color:var(--color-cue-fade)}.cue-detail-empty{color:var(--color-text3);text-align:center;margin:0;padding:1.429rem 1.143rem;font-size:.929rem}.cue-detail-fields{flex-direction:column;gap:1rem;padding:1rem 1.143rem;display:flex}.cue-detail-field{flex-direction:column;gap:.357rem;display:flex}.cue-detail-row-2{grid-template-columns:1fr 1fr;gap:.714rem;display:grid}.cue-detail-label{color:var(--color-text2);font-size:.786rem;font-weight:500}.cue-detail-label--disabled{opacity:.4}.cue-detail-input,.cue-detail-select{background:var(--color-bg3);border:1px solid var(--color-border);width:100%;color:var(--color-text1);appearance:none;border-radius:.429rem;padding:.5rem .714rem;font-size:.929rem}.cue-detail-input:focus,.cue-detail-select:focus{border-color:var(--color-accent);outline:none}.cue-detail-loop{align-items:center;gap:.714rem;display:flex}.cue-detail-loop .cue-detail-input{flex:none;width:5.714rem}.cue-detail-loop__forever{color:var(--color-text1);cursor:pointer;white-space:nowrap;align-items:center;gap:.357rem;font-size:.929rem;display:flex}.cue-detail-hint{color:var(--color-text3);margin-top:.214rem;font-size:.786rem;display:block}.cue-detail-textarea{background:var(--color-bg3);border:1px solid var(--color-border);width:100%;color:var(--color-text1);resize:vertical;border-radius:.429rem;padding:.5rem .714rem;font-size:.929rem;line-height:1.5}.cue-detail-textarea::placeholder{color:var(--color-text3)}.cue-detail-textarea:focus{border-color:var(--color-accent);outline:none}.file-picker{background:var(--color-bg3);border:1px solid var(--color-border);border-radius:.429rem;align-items:center;gap:.571rem;padding:.429rem .429rem .429rem .714rem;transition:border-color .1s,background .1s;display:flex}.file-picker__name{color:var(--color-text1);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.929rem;overflow:hidden}.file-picker--dragover{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 8%, var(--color-bg2))}.file-picker__name--empty{color:var(--color-text3)}.cue-detail-static{color:var(--color-text2);padding:.5rem 0;font-size:.929rem}.file-picker__btn{border:1px solid var(--color-border);background:var(--color-bg4);color:var(--color-accent);white-space:nowrap;border-radius:.286rem;flex-shrink:0;padding:.214rem .714rem;font-size:.857rem;font-weight:500}.signal-chain{align-items:flex-start;gap:0;margin-bottom:.571rem;display:flex}.signal-chain__knobs{flex-direction:column;flex-shrink:0;gap:1rem;padding-right:1.286rem;display:flex}.group-offsets{flex-direction:column;gap:.286rem;display:flex}.group-offset-row{align-items:center;gap:.571rem;display:flex}.group-offset-name{color:var(--color-text2);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.857rem;overflow:hidden}.group-offset-input{flex-shrink:0;width:5.143rem}.timeline-wrapper{border:1px solid var(--color-border);border-radius:.286rem;position:relative}.timeline-view{background:var(--color-bg2);-webkit-user-select:none;user-select:none;border-radius:.286rem;overflow:auto hidden}.timeline-ticks{border-bottom:1px solid var(--color-border);height:1.286rem;position:relative}.timeline-zoom{background:var(--color-bg2);border-left:1px solid var(--color-border);border-bottom:1px solid var(--color-border);z-index:10;border-radius:0 .214rem 0 0;align-items:center;gap:.143rem;padding:.143rem .286rem;display:flex;position:absolute;top:0;right:0}.timeline-zoom-btn{border:1px solid var(--color-border);background:var(--color-bg3);width:1.429rem;height:1.429rem;color:var(--color-text1);cursor:pointer;border-radius:.214rem;justify-content:center;align-items:center;padding:0;font-size:1rem;line-height:1;display:flex}.timeline-zoom-btn:disabled{opacity:.35;cursor:default}.timeline-zoom-btn:not(:disabled):hover{background:var(--color-bg1)}.timeline-tick{background:var(--color-border);width:1px;height:100%;position:absolute;top:0}.timeline-tick-label{color:var(--color-text3);white-space:nowrap;font-size:.643rem;position:absolute;top:.143rem;left:.214rem}.timeline-bars{padding:.429rem 0;position:relative}.timeline-bar{cursor:grab;box-sizing:border-box;border-radius:.214rem;align-items:center;gap:.429rem;height:2rem;padding:0 .429rem;display:flex;position:absolute;overflow:hidden}.timeline-bar--audio{background:color-mix(in srgb, var(--color-cue-audio) 30%, transparent);border:1px solid var(--color-cue-audio)}.timeline-bar--other{background:var(--color-bg3);border:1px solid var(--color-border);cursor:default}.timeline-bar--dragging{opacity:.85;z-index:10}.timeline-bar--audio.timeline-bar--dragging{cursor:grabbing}.timeline-bar-label{color:var(--color-text1);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.786rem;overflow:hidden}.timeline-bar-offset{color:var(--color-cue-audio);white-space:nowrap;flex-shrink:0;font-size:.714rem}.knob-field{flex-direction:column;align-items:center;gap:.357rem;display:flex}.knob-label{text-transform:uppercase;letter-spacing:.07em;color:var(--color-text2);font-size:.714rem;font-weight:600}.knob-svg{cursor:grab;touch-action:none;width:3.714rem;height:3.714rem;overflow:visible}.knob-svg:active{cursor:grabbing}.knob-input{background:var(--color-bg3);border:1px solid var(--color-border);color:var(--color-text1);text-align:center;font-variant-numeric:tabular-nums;border-radius:.286rem;outline:none;width:3.714rem;padding:.214rem 0;font-size:.786rem}.knob-input:focus{border-color:var(--color-accent)}.vfader{flex-direction:column;align-items:center;gap:.429rem;display:flex}.vfader-label{text-transform:uppercase;letter-spacing:.07em;color:var(--color-text2);font-size:.714rem;font-weight:600}.vfader-area{width:6.429rem;height:var(--vfader-track-height);touch-action:none;position:relative}.vfader-track{background:var(--color-bg3);border:1px solid var(--color-border);z-index:2;border-radius:.214rem;width:.357rem;position:absolute;top:0;bottom:0;left:3.071rem}.vfader-fill{background:var(--color-cue-fade);opacity:.65;z-index:3;border-radius:.214rem;width:.357rem;position:absolute;bottom:0;left:3.071rem}.vfader-tick{z-index:1;align-items:center;gap:.286rem;display:flex;position:absolute;left:2.643rem;transform:translateY(50%)}.vfader-tick-line{background:var(--color-text3);flex-shrink:0;width:1.214rem;height:1px}.vfader-tick--zero .vfader-tick-line{background:var(--color-text2)}.vfader-tick-label{color:var(--color-text3);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.643rem;line-height:1}.vfader-tick--zero .vfader-tick-label{color:var(--color-text2)}.vfader-dot{background:var(--color-text3);border:1.5px solid var(--color-text2);z-index:4;border-radius:50%;width:.786rem;height:.786rem;position:absolute;left:2.857rem;transform:translateY(50%)}.vfader-cap{background:var(--color-bg4);border:2px solid var(--color-text1);cursor:grab;z-index:5;touch-action:none;border-radius:.214rem;width:1.786rem;height:.786rem;position:absolute;left:2.357rem;transform:translateY(50%);box-shadow:0 1px 4px #00000080}.vfader-cap:active{cursor:grabbing}.vfader-live-num{text-align:right;width:2.143rem;color:var(--color-cue-fade);font-variant-numeric:tabular-nums;white-space:nowrap;z-index:6;pointer-events:none;font-size:.714rem;font-style:italic;font-weight:600;line-height:1;position:absolute;right:4.143rem;transform:translateY(50%)}.vfader-input{background:var(--color-bg3);border:1px solid var(--color-border);color:var(--color-text1);text-align:center;font-variant-numeric:tabular-nums;border-radius:.286rem;outline:none;width:3.714rem;padding:.214rem 0;font-size:.786rem}.vfader-input:focus{border-color:var(--color-accent)}.media-manager{flex-direction:column;height:100%;display:flex;overflow:hidden}.media-manager__header{border-bottom:1px solid var(--color-border);flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.media-manager__title{flex:1}.media-manager__close{background:var(--color-bg3);border:1px solid var(--color-border);color:var(--color-text2);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:13px}.media-manager__close:hover{background:var(--color-bg4);color:var(--color-text1)}.media-manager__list{flex:1;overflow-y:auto}.media-manager__empty{color:var(--color-text3);text-align:center;padding:24px 16px;font-size:14px}.media-row--header{border-bottom:1px solid var(--color-border);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text3);-webkit-user-select:none;user-select:none;grid-template-columns:1fr 72px 72px 1fr 52px;gap:0 8px;padding:4px 12px;font-size:11px;font-weight:600;display:grid}.media-row{border-bottom:1px solid var(--color-border);grid-template-columns:1fr 72px 72px 1fr 52px;align-items:center;gap:0 8px;padding:6px 12px;font-size:13px;transition:background .1s;display:grid}.media-row:hover{background:var(--color-bg2)}.media-row--orphan{background:color-mix(in srgb, var(--color-warning,#f59e0b) 8%, transparent)}.media-row--orphan:hover{background:color-mix(in srgb, var(--color-warning,#f59e0b) 14%, transparent)}.media-row__name{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text1);font-weight:500;overflow:hidden}.media-row__type,.media-row__size,.media-row__duration{color:var(--color-text2);white-space:nowrap;font-size:12px}.media-row__cues{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text2);font-size:12px;overflow:hidden}.media-row__cues--none{color:var(--color-text3);font-style:italic}.media-row__delete{border:1px solid var(--color-border);color:var(--color-text3);cursor:pointer;white-space:nowrap;background:0 0;border-radius:5px;justify-self:end;padding:2px 8px;font-size:13px;transition:background .1s,color .1s,border-color .1s}.media-row__delete:hover{background:var(--color-bg3);color:var(--color-text1)}.media-row__delete--confirm{background:var(--color-destructive,#dc2626);border-color:var(--color-destructive,#dc2626);color:#fff}.media-row__delete--confirm:hover{background:color-mix(in srgb, var(--color-destructive,#dc2626) 85%, black);border-color:color-mix(in srgb, var(--color-destructive,#dc2626) 85%, black);color:#fff}.transport-bar{border-top:1px solid var(--color-border);background:var(--color-bg2);flex-shrink:0;gap:.571rem;padding:.714rem .857rem;display:flex}.transport-bar--show{background:0 0;gap:.714rem;padding:.857rem}.transport-go{background:var(--color-go);cursor:pointer;border:none;border-radius:.571rem;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.214rem;padding:.714rem;transition:opacity .1s;display:flex}.transport-go:hover:not(:disabled){opacity:.85}.transport-go:disabled{opacity:.3;cursor:default}.transport-go--scene-boundary{background:var(--color-accent)}.transport-go__label{color:#fff;letter-spacing:.06em;font-size:1rem;font-weight:800}.transport-go__hint{color:#ffffffa6;letter-spacing:.06em;text-transform:uppercase;font-size:.714rem}.transport-bar--show .transport-go{border-radius:1rem;padding:1.286rem}.transport-bar--show .transport-go__label{letter-spacing:.04em;white-space:nowrap;font-size:2rem;font-weight:800}.transport-stop{background:var(--color-stop);cursor:pointer;border:none;border-radius:.571rem;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.214rem;padding:.714rem 1.143rem;transition:opacity .1s;display:flex}.transport-stop:hover{opacity:.85}.transport-stop__label{color:#fff;letter-spacing:.04em;font-size:.857rem;font-weight:700}.transport-stop__hint{color:#ffffffa6;letter-spacing:.06em;text-transform:uppercase;font-size:.714rem}.transport-bar--show .transport-stop{border-radius:1rem;width:7.857rem;padding:1.286rem .714rem}.transport-bar--show .transport-stop__label{font-size:1.143rem}.show-mode{flex-direction:column;flex:1;display:flex;overflow:hidden}.show-scene-header{height:var(--scene-browser-height);border-bottom:1px solid var(--color-border);flex-shrink:0;align-items:center;gap:.714rem;padding:0 .857rem;display:flex}.show-scene-header__name{color:var(--color-text1);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.929rem;font-weight:600;overflow:hidden}.show-jump-btn{color:var(--color-accent);border:1px solid var(--color-accent);cursor:pointer;background:0 0;border-radius:.429rem;flex-shrink:0;padding:.286rem .714rem;font-size:.857rem}.show-jump-btn:hover{opacity:.8}.scene-picker-list{flex-direction:column;gap:.286rem;margin-bottom:1.143rem;display:flex}.scene-picker-item{text-align:left;background:var(--color-bg3);border:1px solid var(--color-border);color:var(--color-text1);cursor:pointer;border-radius:.5rem;padding:.643rem .857rem;font-size:1rem}.scene-picker-item:hover{background:var(--color-bg4)}.scene-picker-item--active{border-color:var(--color-accent);color:var(--color-accent)}.show-mode__cue-list{flex-direction:column;flex:1;display:flex;overflow:hidden}.show-cards{flex-shrink:0;grid-template-columns:1fr 1fr;gap:.714rem;padding:.714rem .857rem;display:grid}.show-card{background:var(--color-bg2);border:1px solid var(--color-border);border-radius:.714rem;min-height:4.714rem;padding:.857rem 1rem}.show-card--playing{border-color:var(--color-cue-fade)}.show-card--scene-boundary{background:var(--color-accent);border-color:var(--color-accent)}.show-card--scene-boundary .show-card__label{color:#ffffffb3}.show-card--scene-boundary .show-card__name{color:#fff}.show-card__label{color:var(--color-text3);margin-bottom:.357rem}.show-card__name{color:var(--color-text1);white-space:nowrap;text-overflow:ellipsis;font-size:1.071rem;font-weight:600;overflow:hidden}.show-card__numbers{color:var(--color-text2);white-space:nowrap;margin-top:.143rem;font-size:.857rem;overflow:hidden}.show-card__empty{color:var(--color-text3);font-size:.929rem}.prefs-modal{width:31.429rem}.prefs-section{margin-bottom:1.429rem}.prefs-section__heading{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text3);margin:0 0 .571rem;font-size:.786rem;font-weight:600}.prefs-row{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:1.143rem;padding:.571rem 0;display:flex}.prefs-row--clickable{cursor:pointer}.prefs-row--disabled{opacity:.4;cursor:default}.prefs-row__label{color:var(--color-text1);font-size:1rem}.prefs-checkbox{width:1.143rem;height:1.143rem;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.prefs-zoom{flex-shrink:0;align-items:center;gap:.571rem;display:flex}.prefs-zoom__value{color:var(--color-text2);text-align:left;min-width:2.5rem;font-size:.929rem}.prefs-zoom__slider{width:8rem;accent-color:var(--color-accent);cursor:pointer}.prefs-select{background:var(--color-bg3);border:1px solid var(--color-border);color:var(--color-text1);cursor:pointer;border-radius:.5rem;padding:.286rem .571rem;font-size:.929rem}.welcome{background:var(--color-bg1);flex:1;justify-content:center;align-items:center;display:flex}.welcome__card{flex-direction:column;align-items:center;gap:.857rem;display:flex}.welcome__title{color:var(--color-text1);letter-spacing:-.02em;margin:0;font-size:3.429rem;font-weight:700}.welcome__subtitle{color:var(--color-text2);margin:0 0 1.143rem;font-size:1.071rem}.welcome__version{color:var(--color-text3);margin:-.857rem 0 .571rem;font-size:.857rem}.welcome__browser-warning{color:var(--color-text2);background:color-mix(in srgb, var(--color-accent) 12%, var(--color-bg2));border:1px solid color-mix(in srgb, var(--color-accent) 40%, var(--color-bg2));border-radius:.429rem;margin:0;padding:.857rem 1rem;font-size:1rem;line-height:1.5}.welcome__actions{flex-direction:column;gap:.714rem;width:15.714rem;display:flex}.welcome__btn{border:1px solid var(--color-border);background:var(--color-bg2);color:var(--color-text1);cursor:pointer;border-radius:.714rem;padding:.857rem 1.429rem;font-size:1.071rem;font-weight:500;transition:background .15s}.welcome__btn:hover{background:var(--color-bg4)}.welcome__btn--primary{background:var(--color-accent);color:#fff;border-color:#0000}.welcome__btn--primary:hover{background:#0071e3}.welcome__mobile-note{color:var(--color-text2);text-align:center;margin:.286rem 0 0;font-size:.857rem;line-height:1.4}.pwa-update-banner{bottom:calc(1.143rem + env(safe-area-inset-bottom));z-index:1000;background:var(--color-bg3);border:1px solid var(--color-accent);color:var(--color-text1);white-space:nowrap;border-radius:.571rem;align-items:center;gap:.857rem;padding:.714rem 1.143rem;font-size:1rem;display:flex;position:fixed;left:50%;transform:translate(-50%)}.pwa-update-banner button{border:1px solid var(--color-accent);color:var(--color-accent);cursor:pointer;background:0 0;border-radius:.286rem;padding:.286rem .857rem;font-size:.929rem}.pwa-update-banner button:hover{background:var(--color-accent);color:var(--color-bg1)}.app{height:100dvh;padding-bottom:env(safe-area-inset-bottom);background:var(--color-bg1);flex-direction:column;display:flex;overflow:hidden}
