.noUi-target,.noUi-target *{-webkit-touch-callout:none;-webkit-tap-highlight-color:#0000;-webkit-user-select:none;user-select:none;-ms-touch-action:none;touch-action:none;box-sizing:border-box}.noUi-target{position:relative}.noUi-base,.noUi-connects{z-index:1;width:100%;height:100%;position:relative}.noUi-connects{z-index:0;overflow:hidden}.noUi-connect,.noUi-origin{will-change:transform;z-index:1;transform-origin:0 0;width:100%;height:100%;-webkit-transform-style:preserve-3d;transform-style:flat;position:absolute;top:0;right:0}.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin{left:0;right:auto}.noUi-vertical .noUi-origin{width:0;top:-100%}.noUi-horizontal .noUi-origin{height:0}.noUi-handle{backface-visibility:hidden;position:absolute}.noUi-touch-area{width:100%;height:100%}.noUi-state-tap .noUi-connect,.noUi-state-tap .noUi-origin{transition:transform .3s}.noUi-state-drag *{cursor:inherit!important}.noUi-horizontal .noUi-handle{width:34px;height:28px;top:-6px;right:-17px}.noUi-vertical{width:18px}.noUi-vertical .noUi-handle{width:28px;height:34px;bottom:-17px;right:-6px}.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle{left:-17px;right:auto}.noUi-target{background:#fafafa;border:1px solid #d3d3d3;border-radius:4px;box-shadow:inset 0 1px 1px #f0f0f0,0 3px 6px -5px #bbb}.noUi-connects{border-radius:3px}.noUi-connect{background:#3fb8af}.noUi-draggable{cursor:ew-resize}.noUi-vertical .noUi-draggable{cursor:ns-resize}.noUi-handle{cursor:default;background:#fff;border:1px solid #d9d9d9;border-radius:3px;box-shadow:inset 0 0 1px #fff,inset 0 1px 7px #ebebeb,0 3px 6px -3px #bbb}.noUi-active{box-shadow:inset 0 0 1px #fff,inset 0 1px 7px #ddd,0 3px 6px -3px #bbb}.noUi-handle:before,.noUi-handle:after{content:"";background:#e8e7e6;width:1px;height:14px;display:block;position:absolute;top:6px;left:14px}.noUi-handle:after{left:17px}.noUi-vertical .noUi-handle:before,.noUi-vertical .noUi-handle:after{width:14px;height:1px;top:14px;left:6px}.noUi-vertical .noUi-handle:after{top:17px}[disabled] .noUi-connect{background:#b8b8b8}[disabled].noUi-target,[disabled].noUi-handle,[disabled] .noUi-handle{cursor:not-allowed}.noUi-pips,.noUi-pips *{box-sizing:border-box}.noUi-pips{color:#999;position:absolute}.noUi-value{white-space:nowrap;text-align:center;position:absolute}.noUi-value-sub{color:#ccc;font-size:10px}.noUi-marker{background:#ccc;position:absolute}.noUi-marker-sub,.noUi-marker-large{background:#aaa}.noUi-pips-horizontal{width:100%;height:80px;padding:10px 0;top:100%;left:0}.noUi-value-horizontal{transform:translate(-50%,50%)}.noUi-rtl .noUi-value-horizontal{transform:translate(50%,50%)}.noUi-marker-horizontal.noUi-marker{width:2px;height:5px;margin-left:-1px}.noUi-marker-horizontal.noUi-marker-sub{height:10px}.noUi-marker-horizontal.noUi-marker-large{height:15px}.noUi-pips-vertical{height:100%;padding:0 10px;top:0;left:100%}.noUi-value-vertical{padding-left:25px;transform:translateY(-50%)}.noUi-rtl .noUi-value-vertical{transform:translateY(50%)}.noUi-marker-vertical.noUi-marker{width:5px;height:2px;margin-top:-1px}.noUi-marker-vertical.noUi-marker-sub{width:10px}.noUi-marker-vertical.noUi-marker-large{width:15px}.noUi-tooltip{color:#000;text-align:center;white-space:nowrap;background:#fff;border:1px solid #d9d9d9;border-radius:3px;padding:5px;display:block;position:absolute}.noUi-horizontal .noUi-tooltip{bottom:120%;left:50%;transform:translate(-50%)}.noUi-vertical .noUi-tooltip{top:50%;right:120%;transform:translateY(-50%)}.noUi-horizontal .noUi-origin>.noUi-tooltip{bottom:10px;left:auto;transform:translate(50%)}.noUi-vertical .noUi-origin>.noUi-tooltip{top:auto;right:28px;transform:translateY(-18px)}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080a0d;--surface:#0e1216f2;--surface-2:#161c22f5;--border:#ffffff12;--text:#e8f0ec;--muted:#7d8e85;--accent:#72ff9f;--accent-dim:#72ff9f33;--accent-2:#62d6ff;--r:6px;--r-sm:4px}*,:before,:after{box-sizing:border-box;margin:0}html,body{background:var(--bg);height:100%;color:var(--text);font-family:Instrument Sans,sans-serif;font-size:14px;overflow:hidden}.app{-webkit-user-select:none;user-select:none;flex-direction:column;height:100dvh;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:12px;height:44px;padding:0 14px;display:grid}.topbar-left,.topbar-center,.topbar-right{align-items:center;min-width:0;display:flex}.topbar-left{justify-content:flex-start}.topbar-center{justify-content:center}.topbar h1{letter-spacing:-.02em;white-space:nowrap;font-family:Syne,sans-serif;font-size:1rem;font-weight:700}.topbar-subtitle{color:var(--muted);white-space:nowrap;letter-spacing:.02em;margin-left:10px;font-family:IBM Plex Mono,monospace;font-size:.6rem;font-weight:400}.topbar-version{color:var(--accent);opacity:.7;margin-left:4px;font-size:.55rem}.topbar-right{justify-content:flex-end;gap:8px}.topbar-right .process-status{color:var(--muted);white-space:nowrap;font-family:IBM Plex Mono,monospace;font-size:10px}.topbar-right .process-meter{background:#ffffff14;border-radius:2px;width:40px;height:3px;overflow:hidden}.topbar-right .process-meter-fill{background:var(--accent);width:0%;height:100%;transition:width .12s linear}.btn-process{color:#0a1a10;background:linear-gradient(#72ff9feb 0%,#3ed278d9 100%);border-color:#72ff9fb3;font-weight:600;box-shadow:inset 0 1px #ffffff59,0 0 12px #72ff9f4d,0 2px 6px #0000004d}.btn-process:hover:not(:disabled){background:linear-gradient(#82ffaff2 0%,#50e18ce6 100%)}.btn-process:disabled{color:var(--muted);border-color:var(--border);box-shadow:none;opacity:.4;background:linear-gradient(#29292985 0%,#23232300 100%)}.export-dropdown-wrap{position:relative}.btn-export-trigger{align-items:center;gap:5px;padding:4px 12px;font-size:11px;display:inline-flex}.export-dropdown{z-index:200;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--border);flex-direction:column;min-width:160px;padding:4px;display:none;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #00000080}.export-dropdown.open{display:flex}.export-item{border-radius:var(--r-sm);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:7px 12px;font-size:12px;transition:background 80ms;display:block}.export-item:hover:not(:disabled){background:#ffffff0f}.export-item:disabled{opacity:.3;cursor:not-allowed}.topbar-file{color:var(--muted);white-space:nowrap;text-align:center;scrollbar-width:none;max-width:100%;font-family:IBM Plex Mono,monospace;font-size:11px;overflow:auto hidden}.topbar-file::-webkit-scrollbar{display:none}.btn{border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;background:linear-gradient(#29292985 0%,#23232300 100%);padding:6px 14px;font-size:12px;transition:border-color .12s,background .12s,opacity .12s,box-shadow .12s;box-shadow:inset 0 1px #ffffff2e,0 4px 4px #00000047}.btn:hover:not(:disabled){background:linear-gradient(#34343490 0%,#28282810 100%);border-color:#ffffff29}.btn:disabled{opacity:.3;cursor:not-allowed}.tooltip-wrap{display:inline-flex;position:relative}.tooltip-wrap:after{content:attr(data-tip);border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--border);color:var(--text);white-space:nowrap;pointer-events:none;opacity:0;z-index:100;padding:5px 10px;font-size:11px;transition:opacity .12s;position:absolute;top:calc(100% + 6px);right:0}.tooltip-wrap:hover:after{opacity:1}.tooltip-wrap:not([data-tip]):after,.tooltip-wrap[data-tip=""]:after{display:none}.btn-process{border-color:#ffffff1f;width:100%;padding:8px 16px;font-weight:600}.workspace{flex:1;min-height:0;display:flex;overflow:hidden}.stage{flex:1;gap:2px;min-width:0;padding:4px 2px;display:flex}.viewer{cursor:default;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative}.viewer-head{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;display:flex}.viewer-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:10px;display:block}.viewer-tools{gap:4px;display:flex}.viewer-tools-left{margin-right:auto}.view-btn,.mode-btn{border-radius:var(--r-sm);color:#72ff9fc7;cursor:pointer;background:0 0;border:1px solid #72ff9f42;padding:4px 8px;font-family:IBM Plex Mono,monospace;font-size:10px;transition:color .1s,background .1s,border-color .1s,box-shadow .1s;box-shadow:inset 0 0 0 1px #72ff9f0f}.view-btn:hover,.mode-btn:hover{color:#c8ffd8;background:#72ff9f14;border-color:#72ff9f61;box-shadow:inset 0 0 0 1px #72ff9f14,0 0 0 1px #72ff9f0d}.view-btn.active,.mode-btn.active{color:#e5ffed;background:#72ff9f1f;border-color:#72ff9f80;box-shadow:inset 0 0 0 1px #72ff9f14,0 0 12px #72ff9f14}.viewer-wrap{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.viewer-canvas{max-width:100%;max-height:100%;display:block}.processed-bg-dark-checker .viewer-canvas{background:repeating-conic-gradient(#ffffff0f 0% 25%,#0000 0% 50%) 0 0/20px 20px,#0a0e12}.processed-bg-light-checker .viewer-canvas{background:repeating-conic-gradient(#d0d0d0 0% 25%,#f0f0f0 0% 50%) 0 0/20px 20px}.processed-bg-gray .viewer-canvas{background:gray}.processed-bg-black .viewer-canvas{background:#000}.processed-bg-white .viewer-canvas{background:#fff}.processed-bg-custom .viewer-canvas{background:var(--custom-bg,#e04080)}.viewer#source-drop-zone{cursor:pointer;border-radius:var(--r);cursor:default;border:1px dashed #72ff9f1f;transition:border-color .12s,background .12s}.viewer#source-drop-zone.drag-active{background:#72ff9f08;border-color:#72ff9f66}.viewer#source-drop-zone.sample-mode,.viewer#source-drop-zone.sample-mode .viewer-wrap,.viewer#source-drop-zone.sample-mode .viewer-canvas{cursor:crosshair}.drop-hint{pointer-events:auto;z-index:2;color:var(--text);border:2px dashed var(--border);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:12px}.drop-hint:hover{border-color:var(--accent);background:var(--accent-dim)}.drop-hint svg{opacity:.35;color:var(--accent)}.drop-hint strong{font-size:13px}.drop-hint span{color:var(--muted);font-size:11px}.viewer.has-video .drop-hint{opacity:0;pointer-events:none}.sidebar{border-left:1px solid var(--border);background:var(--surface);scrollbar-width:thin;scrollbar-color:#ffffff24 #ffffff0a;flex-direction:column;flex-shrink:0;gap:12px;width:360px;padding:12px;display:flex;overflow:hidden auto}.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-track{background:#ffffff0a}.sidebar::-webkit-scrollbar-thumb{background:#ffffff24;border:2px solid #0e1216f2;border-radius:999px}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff38}.ctrl-section{border-radius:var(--r);background:var(--surface-2);flex-direction:column;gap:14px;padding:12px;display:flex}.ctrl-heading{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-family:IBM Plex Mono,monospace;font-size:10px}.ctrl-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.ctrl-row label{font-size:12px;font-weight:600}.ctrl-row output{color:#a8e4be;font-family:IBM Plex Mono,monospace;font-size:11px}.ctrl-help{color:var(--muted);font-size:11px;line-height:1.4}.mode-group{gap:6px;display:flex}.btn-pick-sample{width:100%;padding:7px 10px;font-family:IBM Plex Mono,monospace;font-size:11px}.btn-pick-sample.active{color:#0a1a10;background:linear-gradient(#72ff9feb 0%,#3ed278d9 100%);border-color:#72ff9fb3;font-weight:600;box-shadow:inset 0 1px #ffffff59,0 0 12px #72ff9f4d,0 2px 6px #0000004d}.viewer-canvas.sample-mode-canvas{cursor:crosshair}.viewer-wrap:has(.sample-mode-canvas){cursor:crosshair}#sample-similarity-group[hidden]{display:none}#sample-similarity-group{flex-direction:column;gap:14px;display:flex}.sample-swatches{flex-wrap:wrap;gap:6px;min-height:28px;display:flex}.sample-swatch{border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text);cursor:pointer;background:#ffffff08;align-items:center;gap:6px;padding:4px 7px 4px 4px;font-family:IBM Plex Mono,monospace;font-size:10px;display:inline-flex}.sample-chip{border:1px solid #ffffff24;border-radius:2px;width:14px;height:14px}.sample-empty{color:var(--muted);font-size:11px}.slider-mount{margin-top:2px;margin-bottom:10px}.threshold-tabs{gap:4px;display:flex}.threshold-tab{border-radius:var(--r-sm);color:var(--muted);text-align:center;cursor:pointer;background:0 0;border:1px solid #ffffff14;flex:1;padding:5px 10px;font-family:IBM Plex Mono,monospace;font-size:11px;transition:color .1s,background .1s,border-color .1s}.threshold-tab:hover{color:var(--text);background:#ffffff0a}.threshold-tab.active{color:var(--accent);background:#72ff9f14;border-color:#72ff9f4d}.curve-editor-mount[hidden],.slider-mount[hidden]{display:none}.curve-editor-mount{border-radius:var(--r-sm);border:1px solid var(--border);width:100%;height:140px;margin-bottom:6px;overflow:hidden}.curve-canvas{cursor:crosshair;width:100%;height:100%;display:block}.noUi-target{box-shadow:none!important;background:#ffffff14!important;border:none!important;border-radius:4px!important}.noUi-horizontal{height:10px!important}.noUi-base,.noUi-connects{border-radius:4px!important}.noUi-connect{background:linear-gradient(90deg,#72ff9fcc,#62d6ffbf)!important;border-radius:4px!important}.noUi-horizontal .noUi-handle{background:var(--accent)!important;border:2px solid var(--bg)!important;cursor:grab!important;border-radius:3px!important;width:14px!important;height:22px!important;top:-6px!important;right:-7px!important;box-shadow:0 0 0 3px #72ff9f24,0 2px 8px #00000073!important}.noUi-handle:active{cursor:grabbing!important}.noUi-handle:before,.noUi-handle:after,.noUi-tooltip{display:none!important}.bg-options{align-items:center;gap:6px;display:flex}.bg-btn{border-radius:var(--r-sm);cursor:pointer;background:0 0;border:2px solid #0000;flex-shrink:0;width:28px;height:28px;padding:3px;transition:border-color .1s}.bg-btn:hover{border-color:#fff3}.bg-btn.active{border-color:var(--accent)}.bg-swatch{border-radius:2px;width:100%;height:100%;display:block}.swatch-dark-checker{background:repeating-conic-gradient(#ffffff1f 0% 25%,#181e24 0% 50%) 0 0/10px 10px}.swatch-light-checker{background:repeating-conic-gradient(#ccc 0% 25%,#fff 0% 50%) 0 0/10px 10px}.swatch-gray{background:gray;border:1px solid #ffffff1a}.swatch-black{background:#000;border:1px solid #ffffff1a}.swatch-white{background:#fff}.swatch-custom{background:#e04080}#color-picker-popover{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r);color:var(--text);margin:0;padding:12px;box-shadow:0 4px 24px #0009}#color-picker-popover::backdrop{background:0 0}.status-strip{border-radius:var(--r);background:var(--surface-2);color:#c0d8cc;align-items:flex-start;gap:7px;padding:8px 10px;font-size:12px;line-height:1.45;display:flex}.status-dot{background:var(--accent);border-radius:999px;flex-shrink:0;width:7px;height:7px;margin-top:4px;box-shadow:0 0 8px #72ff9f80}.status-dot.busy{animation:1s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.progress-section{border-radius:var(--r);background:var(--surface-2);padding:8px 10px}.progress-row{grid-template-columns:1fr 1fr;gap:8px;font-size:12px;display:grid}.meta-label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:10px}.progress-section strong{margin-top:2px;font-size:1rem;display:block}.meter{background:#ffffff0f;border-radius:3px;width:100%;height:6px;margin-top:8px;overflow:hidden}.meter-fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent-2), var(--accent));width:0%;height:100%;transition:width .12s linear}.export-info{border-radius:var(--r);background:var(--surface-2);padding:8px 10px;font-size:12px}.export-info p:last-child{color:#a0b5a9;margin-top:4px;line-height:1.45}.app.image-mode .bottombar{display:none}.bottombar{background:var(--surface);border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:8px;padding:8px 14px 10px;display:flex}.keyframe-lane{border-radius:var(--r-sm) var(--r-sm) 0 0;background:#0a0e1299;border:1px solid #ffffff0d;border-bottom:none;width:100%;display:none;position:relative}.keyframe-lane.visible{display:block}.tracker-layer{border-bottom:1px solid #ffffff0a;height:22px;position:relative}.tracker-layer:last-child{border-bottom:none}.tracker-layer-name{color:var(--muted);white-space:nowrap;pointer-events:none;z-index:2;opacity:.7;text-shadow:0 1px 3px #000c;font-family:IBM Plex Mono,monospace;font-size:8px;position:absolute;top:2px;left:4px}.tracker-layer-track{width:100%;height:100%;position:relative;overflow:visible}.tracker-on-bar{pointer-events:none;border-radius:2px;height:calc(100% - 8px);position:absolute;top:4px}.tracker-on-bar[data-mode=keep]{background:#72ff9f33}.tracker-on-bar[data-mode=discard]{background:#ff505033}.tracker-on-bar[data-mode=off]{background:#78787826}.tracker-layer-track .kf-tick{opacity:.7;border-radius:1px;width:4px;height:calc(100% - 4px);margin-left:-2px;position:absolute;top:2px}.tracker-layer-track .kf-tick[data-mode=keep]{background:var(--accent)}.tracker-layer-track .kf-tick[data-mode=discard]{background:#ff5050}.tracker-layer-track .kf-tick[data-mode=off]{background:#666}.kf-diamond{background:var(--accent);cursor:pointer;z-index:3;border:1px solid #0006;width:8px;height:8px;margin-top:-4px;margin-left:-4px;transition:transform 80ms,box-shadow 80ms;position:absolute;top:6px;transform:rotate(45deg)}.kf-diamond:hover{transform:rotate(45deg)scale(1.4);box-shadow:0 0 6px #72ff9f99}.kf-diamond.selected{border-color:var(--accent);background:#fff;transform:rotate(45deg)scale(1.3);box-shadow:0 0 8px #ffffffb3}.kf-diamond.kf-diamond-onoff{background:#fd3;border-color:#00000080;top:16px}.kf-diamond.kf-diamond-onoff:hover{box-shadow:0 0 6px #fd39}.kf-diamond.kf-diamond-onoff.selected{background:#fff;border-color:#fd3;box-shadow:0 0 8px #ffdd33b3}.kf-diamond.dragging{transition:none}.timeline-container{border-radius:var(--r-sm);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;background:#0a0e12;border:1px solid #ffffff0d;width:100%;height:60px;position:relative;overflow:visible}.timeline-thumbs{opacity:.6;width:100%;height:100%;display:block}.timeline-buffer{pointer-events:none;z-index:4;opacity:.95;width:100%;height:3px;position:absolute;top:-4px;left:0}.timeline-played{pointer-events:none;background:#ffdd3326;width:0%;transition:width 50ms linear;position:absolute;inset:0}.timeline-playhead{pointer-events:none;z-index:3;width:0;height:100%;transition:left 50ms linear;position:absolute;top:0;left:0}.timeline-container.scrubbing .timeline-playhead,.timeline-container.scrubbing .timeline-played{transition:none}.playhead-arrow{fill:#fd3;filter:drop-shadow(0 2px 4px #000c);position:absolute;top:-1px;left:-7px}.playhead-line{background:#fd3;width:2px;height:100%;position:absolute;top:0;left:-1px;box-shadow:0 0 6px #fd39}.transport{align-items:center;gap:8px;height:44px;display:flex}.tbtn{border:1px solid var(--border);border-radius:var(--r-sm);width:44px;height:44px;color:var(--text);cursor:pointer;background:linear-gradient(#29292985 0%,#23232300 100%);justify-content:center;align-items:center;padding:0;transition:border-color .1s,background .1s,opacity .1s;display:flex;box-shadow:inset 0 1px #ffffff2e,0 4px 4px #00000047}.tbtn svg{width:18px;height:18px}.tbtn:hover:not(:disabled){background:linear-gradient(#34343490 0%,#28282810 100%);border-color:#ffffff29}.tbtn:disabled{opacity:.3;cursor:not-allowed}.tbtn-loop.active{color:var(--accent);background:#72ff9f1a;border-color:#72ff9f59}.tbtn-play{width:52px}.tbtn-play svg{width:22px;height:22px}.transport-time{align-items:center;gap:4px;margin-left:8px;font-family:IBM Plex Mono,monospace;font-size:14px;display:flex}.time-code{color:#c0e0d0}.time-sep{color:var(--muted);opacity:.5}.speed-group{gap:2px;margin-left:8px;display:flex}.speed-btn{border-radius:var(--r-sm);color:var(--muted);cursor:pointer;box-shadow:none;background:0 0;border:1px solid #0000;padding:4px 7px;font-family:IBM Plex Mono,monospace;font-size:11px;transition:color .1s,background .1s,border-color .1s}.speed-btn:hover{color:var(--text);background:#ffffff0a}.speed-btn.active{color:#fff;background:#ffffff14;border-color:#ffffff29}.transport-meta{color:var(--muted);margin-left:12px;font-family:IBM Plex Mono,monospace;font-size:12px}.transport-spacer{flex:1}.busy-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050709b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.busy-overlay[hidden]{display:none}.busy-card{border-radius:var(--r);background:var(--surface-2);border:1px solid var(--border);text-align:left;flex-direction:column;align-items:flex-start;gap:12px;width:360px;padding:24px 26px;display:flex;box-shadow:0 16px 48px #0009}.busy-card strong{font-size:1rem}.busy-card span{color:var(--muted);font-variant-numeric:tabular-nums;min-height:16px;font-family:IBM Plex Mono,monospace;font-size:12px}.busy-spinner{border:2px solid #ffffff14;border-top-color:var(--accent);border-radius:999px;width:18px;height:18px;animation:.75s linear infinite spinBusy}.busy-progress-track{background:#ffffff14;border-radius:99px;width:100%;height:5px;overflow:hidden}.busy-progress-fill{background:linear-gradient(90deg,#72ff9fcc,#62d6ffbf);border-radius:99px;width:0%;height:100%;transition:width 80ms linear}.busy-cancel-btn{opacity:.65;padding:5px 16px;font-size:11px}.busy-cancel-btn:hover:not(:disabled){opacity:1}@keyframes spinBusy{to{transform:rotate(360deg)}}.modal-overlay{z-index:1001;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050709d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-overlay[hidden]{display:none}.modal-card{border-radius:var(--r);background:var(--surface-2);border:1px solid var(--border);text-align:center;flex-direction:column;align-items:center;gap:16px;padding:36px 44px;display:flex;position:relative;box-shadow:0 24px 64px #0009}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;display:flex;position:absolute;top:12px;right:12px}.modal-close:hover{color:var(--text);background:var(--surface-3)}.modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.modal-card h2{letter-spacing:-.02em;font-family:Syne,sans-serif;font-size:1.3rem;font-weight:700}.modal-sub{color:var(--muted);margin-bottom:4px;font-size:13px}.modal-actions{gap:12px;display:flex}.modal-btn{border-radius:var(--r);cursor:pointer;align-items:center;gap:8px;padding:12px 24px;font-size:13px;font-weight:600;display:inline-flex}.modal-btn-green{color:#0a1a10;background:linear-gradient(#72ff9feb 0%,#3ed278d9 100%);border-color:#72ff9fb3;box-shadow:inset 0 1px #ffffff59,0 0 16px #72ff9f40,0 4px 8px #0000004d}.modal-btn-green:hover{color:#fff;background:linear-gradient(#3cb464f2 0%,#289650e6 100%);box-shadow:inset 0 1px #ffffff40,0 0 20px #72ff9f59,0 4px 8px #0000004d}.modal-btn-gray{color:var(--text);border:1px solid var(--border);background:linear-gradient(#29292985 0%,#23232300 100%);box-shadow:inset 0 1px #ffffff2e,0 4px 4px #00000047}.modal-btn-gray:hover{background:linear-gradient(#34343490 0%,#28282810 100%);border-color:#ffffff29}.tracker-instructions-body{text-align:left;color:var(--muted);flex-direction:column;gap:6px;font-size:12px;line-height:1.5;display:flex}.tracker-instructions-body strong{color:var(--text)}.tracker-btn-group{gap:6px;display:flex}.btn-add-tracker,.btn-record-tracker{flex:1}.tracker-list{flex-direction:column;gap:6px;display:flex}.tracker-item{border-radius:var(--r-sm);border:1px solid var(--border);color:var(--text);background:#ffffff08;flex-direction:column;gap:4px;padding:6px 8px;font-family:IBM Plex Mono,monospace;font-size:11px;display:flex}.tracker-row{justify-content:space-between;align-items:center;gap:4px;display:flex}.tracker-row-right{align-items:center;gap:5px;display:flex}.tracker-row-label{color:var(--muted);min-width:52px;font-size:10px}.tracker-item-name{align-items:center;gap:6px;display:flex}.tracker-dot{background:var(--accent);border-radius:50%;width:8px;height:8px}.tracker-auto-discard-btn{border-radius:var(--r-sm);width:100%;color:var(--muted);cursor:pointer;text-align:center;background:0 0;border:1px solid #ffffff14;padding:3px 6px;font-family:IBM Plex Mono,monospace;font-size:10px;transition:all .1s}.tracker-auto-discard-btn:hover{color:var(--text);border-color:#fff3}.tracker-auto-discard-btn.active{color:#1a1a00;background:#e6dc3cb3;border-color:#e6dc3c80}.tracker-strength{min-width:0;accent-color:var(--accent);flex:1}.tracker-strength-value{text-align:right;color:#a8e4be;min-width:32px;font-family:IBM Plex Mono,monospace;font-size:10px}.tracker-mode-btn{border-radius:var(--r-sm);height:22px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #ffffff1a;padding:0 6px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:600;transition:all .1s}.tracker-mode-btn:hover{color:var(--text);border-color:#ffffff40}.tracker-mode-btn.active.keep{color:#0a1a10;background:#72ff9fd9;border-color:#72ff9fb3}.tracker-mode-btn.active.discard{color:#fff;background:#ff5050b3;border-color:#ff505099}.tracker-delete{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:14px;line-height:1}.tracker-delete:hover{color:#ff6b6b}.tracker-onoff-btn{border-radius:var(--r-sm);width:22px;height:22px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #ffffff1a;padding:0;font-size:11px;line-height:1;transition:all .1s}.tracker-onoff-btn:hover{color:var(--text);border-color:#ffffff40}.tracker-onoff-btn.on{color:#0a1a10;background:#72ff9fb3;border-color:#72ff9f99}.tracker-overlay{pointer-events:none;z-index:5;position:absolute;overflow:hidden}.tracker-indicator{color:#0a1a10;pointer-events:auto;cursor:grab;-webkit-user-select:none;user-select:none;will-change:left, top;background:#72ff9fd9;border:2px solid #0a1a10cc;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin-top:-14px;margin-left:-14px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:700;transition:box-shadow .12s;display:flex;position:absolute;box-shadow:0 0 12px #72ff9f66,0 2px 6px #00000080}.tracker-indicator:hover{box-shadow:0 0 18px #72ff9f99,0 2px 8px #00000080}.tracker-indicator.dragging{cursor:grabbing;z-index:10;box-shadow:0 0 24px #72ff9fcc,0 4px 12px #00000080}.tracker-indicator[data-mode=discard]{color:#fff;background:#ff5050d9;border-color:#500a0acc;box-shadow:0 0 12px #ff505066,0 2px 6px #00000080}.tracker-indicator[data-mode=discard]:hover{box-shadow:0 0 18px #ff505099,0 2px 8px #00000080}.tracker-indicator[data-mode=discard].dragging{box-shadow:0 0 24px #ff5050cc,0 4px 12px #00000080}.tracker-indicator[data-mode=off]{color:#ffffffb3;background:#78787899;border-color:#3c3c3ccc;box-shadow:0 0 6px #7878784d,0 2px 4px #0006}.app.tracker-recording .viewer-wrap,.app.tracker-recording .viewer-canvas{cursor:crosshair}.countdown-overlay{z-index:1002;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050709a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.countdown-overlay[hidden]{display:none}.countdown-number{color:var(--accent);font-family:Syne,sans-serif;font-size:80px;font-weight:700;animation:1s ease-out countPulse}@keyframes countPulse{0%{opacity:0;transform:scale(1.6)}30%{opacity:1;transform:scale(1)}to{opacity:1}}@media (width<=900px){.workspace{flex-direction:column}.sidebar{border-left:none;border-top:1px solid var(--border);flex-flow:wrap;width:100%;overflow:auto hidden}.stage{flex-direction:column}}
