.ct-page{--bg: #0d0d12;--surface: #111118;--surface-light: #1a1a26;--border: #1a1a26;--border-mid: #222230;--border-light: #2a2a3a;--text: #e8e8f0;--text-secondary: #8888a8;--text-muted: #555570;--blue: #0066ff;--blue-light: #4d9aff;--green: #00c853;--orange: #ff6d00;--red: #ff3d3d;--purple: #9c6fff;--bg-1: #11141b;--surface-2: #1c2030;--surface-hover: #20253a;--hairline: #1f2331;--border-strong: #353a4f;--text-2: #9aa3b6;--text-3: #6c7488;--text-4: #4a5168;--accent: #3a8fff;--accent-soft: #1d4f9c;--accent-tint: rgba(58,143,255,.14);--accent-fg: #ffffff;--rec: #ff3d4a;--hd: #34d27e;--warn: #ffb547;--rating: #ffc54a;--type-match: #34d27e;--type-tactics: #a883ff;--type-player: #5d9bff;--type-intro: #ff9a4d;--type-ui: #a3a9b6;--type-transfer: #e9b950;--type-stats: #5cd0e6;--type-story: #ff7388;--type-other: #a3a9b6;--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;background:var(--bg);color:var(--text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex;flex-direction:column}.ct-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--bg);border-bottom:1px solid var(--border);flex-shrink:0}.ct-header-title{display:flex;align-items:center;gap:8px;font-weight:700}.ct-brand{font-size:16px}.ct-sep{color:var(--text-muted);margin:0 4px}.ct-project-name{color:var(--text);font-size:14px}.ct-header-actions{display:flex;gap:8px;align-items:center}.ct-btn{background:var(--surface);border:1px solid var(--border-mid);color:var(--text);padding:6px 12px;border-radius:var(--r-sm);font-size:13px;cursor:pointer;font-family:inherit}.ct-btn:hover{background:var(--surface-hover);border-color:var(--border-strong)}.ct-btn:disabled{opacity:.5;cursor:not-allowed}.ct-btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.ct-btn-primary:hover{background:color-mix(in oklab,var(--accent) 86%,white)}.ct-btn-sm{padding:4px 8px;font-size:11.5px}.ct-body{flex:1;display:flex;min-height:0}.ct-sidebar{width:240px;flex-shrink:0;background:var(--bg-1);border-right:1px solid var(--border);padding:12px 8px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.ct-sidebar-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);padding:4px 8px 8px;font-weight:600}.ct-sidebar-empty{padding:16px 8px;color:var(--text-3);font-size:12px}.ct-project-row{background:transparent;border:1px solid transparent;padding:8px 10px;border-radius:var(--r-sm);cursor:pointer;text-align:left;font-family:inherit;color:var(--text)}.ct-project-row:hover{background:var(--surface)}.ct-project-row.is-active{background:var(--surface);border-color:var(--accent-soft)}.ct-project-row-name{font-size:13px;font-weight:500;margin-bottom:4px}.ct-project-row-meta{font-size:11px;color:var(--text-3)}.ct-status{display:inline-block;padding:1px 5px;border-radius:3px;font-size:10px;font-weight:600;text-transform:uppercase}.ct-status-ready{background:#00c85326;color:var(--green)}.ct-status-processing{background:#3a8fff26;color:var(--accent)}.ct-status-orphaned{background:#ff3d3d26;color:var(--red)}.ct-main{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.ct-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px}.ct-empty-icon{font-size:56px;opacity:.4}.ct-empty-title{font-size:18px;font-weight:600}.ct-empty-sub{color:var(--text-3);font-size:13px;margin-bottom:12px}.ct-toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--surface);border:1px solid var(--border-mid);padding:8px 16px;border-radius:var(--r-sm);font-size:13px;cursor:pointer;box-shadow:0 4px 12px #0006;z-index:100}.ct-text-panel{border-top:1px solid var(--border);padding:16px 20px;background:var(--bg-1);max-height:320px;overflow:auto}.ct-text-panel-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;font-weight:600}.ct-text-panel-header>span:first-child{flex:1}.ct-text-panel-output{background:var(--surface);padding:12px;border-radius:var(--r-sm);font-family:inherit;font-size:13px;white-space:pre-wrap;line-height:1.5;margin:0}.ct-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.ct-modal{background:var(--surface);border:1px solid var(--border-mid);border-radius:var(--r-lg);padding:24px;width:480px;max-width:92vw;position:relative;display:flex;flex-direction:column;gap:14px}.ct-modal-title{font-size:18px;font-weight:700}.ct-modal-close{position:absolute;top:12px;right:12px;background:none;border:none;color:var(--text-3);font-size:16px;cursor:pointer}.ct-drop{border:2px dashed var(--border-mid);border-radius:var(--r-md);padding:32px 16px;text-align:center;cursor:pointer;transition:all .15s}.ct-drop:hover,.ct-drop.is-hover{border-color:var(--accent);background:var(--accent-tint)}.ct-drop.has-file{border-style:solid;border-color:var(--green)}.ct-drop-icon{font-size:32px;margin-bottom:8px}.ct-drop-title{font-size:14px;font-weight:600;margin-bottom:4px}.ct-drop-sub{font-size:12px;color:var(--text-3)}.ct-field{display:flex;flex-direction:column;gap:6px}.ct-label{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.ct-input{background:var(--bg-1);border:1px solid var(--border-mid);border-radius:var(--r-sm);padding:8px 10px;font-size:13px;color:var(--text);font-family:inherit;outline:none}.ct-input:focus{border-color:var(--accent)}.ct-pill-row{display:flex;gap:6px}.ct-pill{background:var(--bg-1);border:1px solid var(--border-mid);color:var(--text-2);padding:6px 12px;border-radius:var(--r-sm);font-size:12px;cursor:pointer;font-family:inherit}.ct-pill.is-active{background:var(--accent-tint);border-color:var(--accent);color:var(--accent)}.ct-error{background:#ff3d3d1a;border:1px solid rgba(255,61,61,.3);padding:8px 10px;border-radius:var(--r-sm);font-size:12px;color:var(--red)}.ct-submit{background:var(--accent);border:none;color:var(--accent-fg);padding:10px 16px;border-radius:var(--r-sm);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}.ct-submit:disabled{opacity:.4;cursor:not-allowed}.ct-submit:hover:not(:disabled){background:color-mix(in oklab,var(--accent) 86%,white)}.ct-modal-progress{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 0}.ct-progress-bar{width:100%;height:8px;background:var(--bg-1);border-radius:999px;overflow:hidden}.ct-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--type-match));transition:width .3s}.ct-progress-msg{font-size:13px;color:var(--text-2)}.ct-progress-pct{font-family:ui-monospace,SF Mono,monospace;font-size:16px;color:var(--accent);font-weight:600}.project-workspace{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg)}.workspace-player{display:flex;flex-direction:column;min-height:0;background:var(--bg-1);flex-basis:0}.workspace-player-header{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--hairline);font-size:12px;color:var(--text-2)}.workspace-player-header .title{color:var(--text);font-weight:600}.workspace-player-header .meta{color:var(--text-3);font-family:ui-monospace,SF Mono,monospace;font-size:11px}.workspace-player-stage{flex:1;min-height:0;position:relative;background:#050709;overflow:hidden}.workspace-player-stage video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;background:#000;display:block}.workspace-player-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--text-3);font-size:13px;padding:24px;text-align:center}.workspace-divider{height:6px;flex-shrink:0;background:var(--hairline);cursor:row-resize;position:relative;transition:background .12s}.workspace-divider:hover,.workspace-divider.is-dragging{background:var(--accent)}.workspace-divider:after{content:"";position:absolute;left:50%;top:50%;width:24px;height:2px;transform:translate(-50%,-50%);background:var(--text-4);border-radius:1px;opacity:.5}.workspace-divider:hover:after,.workspace-divider.is-dragging:after{opacity:0}body.is-resizing-workspace{-webkit-user-select:none;user-select:none;cursor:row-resize!important}body.is-resizing-workspace *{cursor:row-resize!important}.workspace-panel{min-height:0;display:flex;background:var(--bg);overflow:hidden}.moments-panel-root{display:flex;flex-direction:column;background:var(--bg);flex:1;overflow:hidden;font-size:13px}.filterbar{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-bottom:1px solid var(--hairline);background:var(--bg-1);flex-shrink:0}.filterbar-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filterbar-row-status{padding-top:8px;border-top:1px dashed var(--hairline);margin-top:2px}.filterbar-status{font-size:12px;color:var(--text-2)}.filterbar-actions{display:flex;align-items:center;gap:4px}.filterbar-spacer{flex:1;min-width:12px}.search{flex:1;min-width:180px;display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--surface);border:1px solid var(--border-mid);border-radius:var(--r-sm);color:var(--text-2)}.search:focus-within{border-color:var(--accent)}.search input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-size:12px;font-family:inherit}.search input::placeholder{color:var(--text-3)}.kbd{font-family:ui-monospace,SF Mono,monospace;font-size:10px;border:1px solid var(--border-mid);background:var(--bg-1);color:var(--text-3);padding:1px 5px;border-radius:4px;min-width:16px;text-align:center;line-height:14px}.search .kbd{margin-left:auto}.chip-row{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.chip-row-label{color:var(--text-3);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;padding-right:4px}.filter-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:500;background:var(--surface);border:1px solid var(--border-mid);color:var(--text-2);border-radius:999px;cursor:pointer;font-family:inherit}.filter-chip:hover{color:var(--text);border-color:var(--border-strong)}.filter-chip.is-active{background:var(--accent-tint);border-color:color-mix(in oklab,var(--accent) 50%,transparent);color:var(--accent)}.filter-chip-dot{width:6px;height:6px;border-radius:50%}.filter-chip-count{font-family:ui-monospace,SF Mono,monospace;font-size:10px;color:var(--text-4)}.filter-chip.is-active .filter-chip-count{color:color-mix(in oklab,var(--accent) 70%,white)}.density-toggle{display:inline-flex;align-items:center;background:var(--surface);border:1px solid var(--border-mid);border-radius:var(--r-sm);padding:2px;gap:0}.density-toggle button{background:transparent;border:none;color:var(--text-2);padding:4px 8px;font-size:11px;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.density-toggle button:hover{color:var(--text)}.density-toggle button.is-active{background:var(--surface-hover);color:var(--text)}.select-wrap{display:inline-flex;align-items:center;gap:6px}.select-label{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.select{background:var(--surface);border:1px solid var(--border-mid);color:var(--text);border-radius:var(--r-sm);padding:5px 8px;font-size:12px;outline:none;font-family:inherit}.select:hover{border-color:var(--border-strong)}.select option:disabled{color:var(--text-4)}.rating-slider{display:inline-flex;align-items:center;gap:8px;min-width:220px}.rating-slider-label{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.rating-slider-track{position:relative;height:22px;flex:1;min-width:140px;background:var(--surface);border:1px solid var(--border-mid);border-radius:999px;cursor:pointer;display:flex;align-items:center}.rating-slider-fill{position:absolute;left:0;top:0;bottom:0;background:var(--accent-tint);border-radius:999px}.rating-slider-tick{position:absolute;width:1px;height:6px;background:var(--border-strong);transform:translate(-.5px);top:50%;margin-top:-3px}.rating-slider-tick.is-active{background:var(--accent)}.rating-slider-handle{position:absolute;height:18px;background:var(--accent);color:var(--accent-fg);border-radius:999px;font-size:10.5px;font-weight:600;padding:0 7px;display:grid;place-items:center;transform:translate(-50%);top:1px;white-space:nowrap;box-shadow:0 1px 4px #0000004d;font-family:ui-monospace,SF Mono,monospace}.btn-p1{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-mid);background:var(--surface);color:var(--text);padding:4px 8px;border-radius:var(--r-sm);font-size:11.5px;font-weight:500;cursor:pointer;font-family:inherit;transition:background .12s,border-color .12s,color .12s;white-space:nowrap}.btn-p1:hover{background:var(--surface-hover);border-color:var(--border-strong)}.btn-p1.btn-ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn-p1.btn-ghost:hover{color:var(--text);background:var(--surface);border-color:var(--border-mid)}.btn-p1.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.btn-p1.btn-primary:hover{background:color-mix(in oklab,var(--accent) 86%,white)}.divider-v{width:1px;height:16px;background:var(--hairline)}.clips-list-wrap{flex:1;overflow:auto;padding-bottom:24px}.clips-group-head{display:flex;align-items:center;gap:10px;padding:14px 12px 6px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);background:var(--bg);position:sticky;top:0;z-index:1}.clips-group-head:after{content:"";flex:1;height:1px;background:var(--hairline)}.clips-group-head .meta{color:var(--text-4);font-family:ui-monospace,SF Mono,monospace;font-weight:600;letter-spacing:0;text-transform:none}.clip-row{display:grid;grid-template-columns:18px 22px 84px 78px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--hairline);cursor:pointer;position:relative;background:transparent;transition:background .1s;-webkit-user-select:none;user-select:none}.clip-row:hover,.clip-row.is-active{background:var(--surface)}.clip-row.is-active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent)}.clip-row.is-selected{background:var(--accent-tint)}.clip-row.is-selected:hover{background:color-mix(in oklab,var(--accent-tint) 80%,var(--surface-hover))}.clip-row.is-previewing{background:color-mix(in oklab,var(--type-tactics) 10%,transparent)}.clip-row.is-previewing:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--type-tactics)}.clip-row.is-previewing.is-active:before{background:linear-gradient(180deg,var(--accent) 0% 50%,var(--type-tactics) 50% 100%)}.clip-num{font-family:ui-monospace,SF Mono,monospace;font-size:10.5px;color:var(--text-4);text-align:right}.clip-check{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--border-strong);display:grid;place-items:center;color:transparent;flex-shrink:0;transition:all .1s}.clip-row:hover .clip-check{border-color:var(--text-3)}.clip-row.is-selected .clip-check{background:var(--accent);border-color:var(--accent);color:#fff}.clip-ts{font-family:ui-monospace,SF Mono,monospace;font-size:11px;color:var(--text-2);display:flex;flex-direction:column;gap:2px;line-height:1.2}.clip-ts .ts-in{color:var(--text)}.clip-ts .ts-dur{color:var(--text-4);font-size:10px}.clip-thumb{width:78px;aspect-ratio:16/9;border-radius:var(--r-xs);overflow:hidden;background:var(--surface-2);border:1px solid var(--border-mid);position:relative}.clip-body{min-width:0;display:flex;flex-direction:column;gap:4px}.clip-row-title{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.clip-desc{font-size:12.5px;color:var(--text);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.clip-row.density-cozy{padding:5px 12px;grid-template-columns:18px 22px 84px minmax(0,1fr) auto auto}.clip-row.density-cozy .clip-thumb{display:none}.clip-row.density-cozy .clip-desc{-webkit-line-clamp:1}.clip-row.density-comfortable{padding:8px 12px}.clip-row.density-comfortable .clip-desc{-webkit-line-clamp:2}.clip-row.density-gallery{display:flex;flex-direction:column;padding:10px;border-bottom:none;border-radius:var(--r-md)}.clip-row.density-gallery .clip-thumb{width:100%;aspect-ratio:16/9;margin-bottom:8px}.clip-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;padding:10px 12px}.clip-tags{display:flex;flex-wrap:wrap;gap:3px;align-items:center}.tag{display:inline-flex;align-items:center;font-size:10.5px;font-weight:500;padding:1px 6px;border-radius:3px;background:var(--surface-2);color:var(--text-3);border:1px solid transparent;white-space:nowrap;letter-spacing:-.003em}.tag-promoted{color:var(--type-match);background:color-mix(in oklab,var(--type-match) 14%,transparent)}.type-chip{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);border-radius:var(--r-xs);white-space:nowrap}.type-chip-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.type-chip[data-type=match]{color:var(--type-match)}.type-chip[data-type=tactics]{color:var(--type-tactics)}.type-chip[data-type=player]{color:var(--type-player)}.type-chip[data-type=intro]{color:var(--type-intro)}.type-chip[data-type=ui]{color:var(--type-ui)}.type-chip[data-type=transfer]{color:var(--type-transfer)}.type-chip[data-type=stats]{color:var(--type-stats)}.type-chip[data-type=story]{color:var(--type-story)}.type-chip[data-type=other]{color:var(--type-other)}.stars-p1{display:inline-flex;gap:1px;line-height:1}.star{color:var(--text-4)}.star-full{color:var(--rating)}.star-half{background:linear-gradient(90deg,var(--rating) 50%,var(--text-4) 50%);-webkit-background-clip:text;background-clip:text;color:transparent}.clip-rating{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-family:ui-monospace,SF Mono,monospace;color:var(--text-3);white-space:nowrap}.clip-actions{display:flex;gap:2px;opacity:0;transition:opacity .1s}.clip-row:hover .clip-actions,.clip-row.is-active .clip-actions{opacity:1}.clip-action{width:24px;height:24px;border-radius:4px;background:transparent;border:1px solid transparent;color:var(--text-3);display:grid;place-items:center;cursor:pointer}.clip-action:hover{color:var(--text);border-color:var(--border-mid);background:var(--bg-1)}.clip-action.is-active{color:var(--accent);border-color:var(--accent-soft)}.vid-ph{position:relative;background:#050709;overflow:hidden;width:100%}.vid-ph-stripes{position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.012) 0,rgba(255,255,255,.012) 8px,transparent 8px,transparent 16px)}.vid-ph-label{position:absolute;left:8px;bottom:8px;font-family:ui-monospace,SF Mono,monospace;font-size:9.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;display:inline-flex;align-items:center;gap:5px;background:#00000059;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:2px 6px;border-radius:3px}.vid-ph-label-dot{width:5px;height:5px;border-radius:50%}.empty-state{padding:48px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px}.empty-state-icon{color:var(--text-4);margin-bottom:6px}.empty-state-title{color:var(--text);font-weight:600;font-size:13px}.empty-state-sub{color:var(--text-3);font-size:12px}.tray.hidden,.transport-stub{display:none}:root{--bg: #0A0E17;--bg-light: #101624;--surface: #141A2A;--surface-light: #1C2438;--surface-hover: #222C44;--text: #FFFFFF;--text-secondary: #8892A8;--text-muted: #555F78;--border: #1E2740;--border-light: #2A3555;--blue: #0066FF;--blue-light: #3388FF;--blue-dark: #0044CC;--orange: #FF6B00;--orange-light: #FF8A33;--green: #00C853;--purple: #7C4DFF;--gradient-blue: linear-gradient(135deg, #0066FF, #7C4DFF);--gradient-hero: linear-gradient(135deg, #0A0E17 0%, #0D1B3E 40%, #1A0A2E 70%, #0A0E17 100%);--gradient-card: linear-gradient(145deg, #141A2A, #1C2438);--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.gradient-text{background:var(--gradient-blue);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes scan-pulse{0%,to{box-shadow:0 0 #0066ff40}50%{box-shadow:0 0 0 5px #0066ff14}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(250%)}}@keyframes card-done{0%{transform:scale(1)}40%{transform:scale(1.03)}to{transform:scale(1)}}.scan-card--scanning{animation:scan-pulse 1.4s ease-in-out infinite}.scan-card--done{animation:card-done .3s ease-out forwards}.scan-shimmer{animation:shimmer 1.4s ease-in-out infinite;will-change:transform}
