.tunnel-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.7rem 1.1rem;margin:.6rem 1.25rem 0;border-radius:10px;background:linear-gradient(90deg,#ffbd441f,#ffbd440a);border:1px solid rgba(255,189,68,.32);color:var(--warn, #ffbd44);font-size:.85rem;line-height:1.4}.tunnel-banner-body{display:flex;flex-direction:column;gap:.6rem;flex:1;min-width:0}.tunnel-banner-title{display:flex;flex-wrap:wrap;gap:.6rem;align-items:baseline}.tunnel-banner-sub{color:var(--text-muted, #a5acc0);font-size:.78rem}.tunnel-banner-actions{display:flex;flex-wrap:wrap;gap:.8rem}.tunnel-banner-group{display:flex;flex-direction:column;gap:.3rem;min-width:0}.tunnel-banner-group .eyebrow{text-transform:uppercase;letter-spacing:.06em;font-size:.66rem;color:var(--text-subtle, #6b7287)}.tunnel-banner-urls{display:flex;flex-wrap:wrap;gap:.4rem}.tunnel-url-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.32rem .55rem;border-radius:6px;border:1px solid rgba(255,189,68,.35);background:#ffbd4414;color:var(--text, #e8ebf4);cursor:pointer;transition:background .12s ease,border-color .12s ease}.tunnel-url-btn:hover{background:#ffbd442e;border-color:#ffbd4499}.tunnel-url-btn.tunnel-url-primary{text-decoration:none;background:#3dd68c1f;border-color:#3dd68c80}.tunnel-url-btn.tunnel-url-primary:hover{background:#3dd68c38;border-color:#3dd68ccc}.tunnel-url-btn.tunnel-url-primary .tunnel-url-copy{color:var(--ok, #3dd68c)}.tunnel-link{color:var(--accent-strong, #a594ff);text-decoration:underline}.tunnel-link:hover{color:var(--accent, #8b7dff)}.tunnel-url-btn code{background:transparent;padding:0;font-family:var(--font-mono);font-size:.78rem;color:var(--text, #e8ebf4)}.tunnel-url-copy{color:var(--warn, #ffbd44);font-size:.7rem}.tunnel-banner-close{align-self:flex-start}.tunnel-banner code{background:#00000059;padding:.05rem .4rem;border-radius:4px;font-family:var(--font-mono);font-size:.78rem;color:var(--text, #e8ebf4)}:root{color-scheme:dark;--font-sans: "Inter", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--bg: #0a0b10;--bg-elev: #0f1117;--surface: #141721;--surface-2: #1b1f2c;--surface-3: #232836;--border: #252a38;--border-strong: #323847;--text: #e8ebf4;--text-muted: #a5acc0;--text-subtle: #6b7287;--accent: #8b7dff;--accent-strong: #a594ff;--accent-soft: rgba(139, 125, 255, .12);--accent-glow: 0 0 0 3px rgba(139, 125, 255, .25);--ok: #3dd68c;--ok-bg: rgba(61, 214, 140, .1);--ok-border: rgba(61, 214, 140, .3);--warn: #ffbd44;--warn-bg: rgba(255, 189, 68, .1);--warn-border: rgba(255, 189, 68, .3);--err: #ff5d7a;--err-bg: rgba(255, 93, 122, .1);--err-border: rgba(255, 93, 122, .3);--info: #4ea8ff;--info-bg: rgba(78, 168, 255, .1);--info-border: rgba(78, 168, 255, .3);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3), 0 1px 3px rgba(0, 0, 0, .4);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .45), 0 4px 10px rgba(0, 0, 0, .3);--radius-xs: 4px;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--radius-xl: 20px;--sidebar-w: 240px;--sidebar-collapsed-w: 64px;--topbar-h: 64px;--transition: .15s cubic-bezier(.4, 0, .2, 1);font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}[data-theme=light]{color-scheme:light;--bg: #f7f8fc;--bg-elev: #ffffff;--surface: #ffffff;--surface-2: #f3f5fa;--surface-3: #e9ecf3;--border: #e4e7ef;--border-strong: #cfd4e1;--text: #141721;--text-muted: #4a5168;--text-subtle: #6b7287;--accent: #6b5dff;--accent-strong: #5849ff;--accent-soft: rgba(107, 93, 255, .08);--accent-glow: 0 0 0 3px rgba(107, 93, 255, .2);--ok: #0a9b55;--ok-bg: #e6f9ef;--ok-border: #a8e8c7;--warn: #b36b00;--warn-bg: #fff6e5;--warn-border: #f3d089;--err: #c52344;--err-bg: #fde8ec;--err-border: #f4b8c4;--info: #1166d6;--info-bg: #e7f1fd;--info-border: #a8ccf0;--shadow-sm: 0 1px 2px rgba(20, 23, 33, .06);--shadow-md: 0 2px 8px rgba(20, 23, 33, .08), 0 1px 2px rgba(20, 23, 33, .04);--shadow-lg: 0 12px 32px rgba(20, 23, 33, .12), 0 2px 6px rgba(20, 23, 33, .06)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100vh;background:var(--bg);color:var(--text)}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;letter-spacing:-.015em;color:var(--text)}h1{font-size:1.25rem}h2{font-size:1.5rem}h3{font-size:1.125rem}h4{font-size:1rem}p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}input,select,textarea{font:inherit;color:inherit}::selection{background:var(--accent-soft);color:var(--text)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--text-subtle);background-clip:padding-box;border:2px solid transparent}.app-shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;transition:grid-template-columns var(--transition)}.app-shell.collapsed{grid-template-columns:var(--sidebar-collapsed-w) 1fr}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;background:var(--bg-elev);border-right:1px solid var(--border);overflow:hidden}.sidebar-brand{display:flex;align-items:center;gap:.6rem;padding:1rem;border-bottom:1px solid var(--border);min-height:var(--topbar-h)}.sidebar-brand-logo{width:32px;height:32px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--accent),#ff6b9d);display:grid;place-items:center;color:#fff;font-weight:700;flex-shrink:0;box-shadow:0 4px 10px #8b7dff59}.sidebar-brand-text{display:flex;flex-direction:column;overflow:hidden}.sidebar-brand-name{font-size:.92rem;font-weight:600;color:var(--text);white-space:nowrap}.sidebar-brand-tag{font-size:.7rem;color:var(--text-subtle);letter-spacing:.04em;white-space:nowrap}.collapsed .sidebar-brand-text{display:none}.sidebar-nav{flex:1;padding:.75rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.nav-group{display:flex;flex-direction:column;gap:.15rem}.nav-group-title{font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-subtle);padding:.5rem .75rem .25rem}.collapsed .nav-group-title{display:none}.nav-item{display:flex;align-items:center;gap:.7rem;padding:.6rem .75rem;border-radius:var(--radius-sm);color:var(--text-muted);font-size:.875rem;font-weight:500;text-align:left;width:100%;transition:background var(--transition),color var(--transition);position:relative}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent-strong)}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--accent);border-radius:0 3px 3px 0}.nav-item svg{width:18px;height:18px;flex-shrink:0}.nav-item-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-item-badge{font-size:.68rem;font-weight:600;padding:.1rem .4rem;border-radius:999px;background:var(--surface-3);color:var(--text-muted)}.collapsed .nav-item-label,.collapsed .nav-item-badge{display:none}.collapsed .nav-item{justify-content:center;padding:.65rem}.sidebar-footer{padding:.75rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.5rem}.sidebar-toggle{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem;border-radius:var(--radius-sm);color:var(--text-subtle);font-size:.78rem;transition:background var(--transition),color var(--transition)}.sidebar-toggle:hover{background:var(--surface-2);color:var(--text)}.sidebar-toggle svg{width:16px;height:16px}.content{display:flex;flex-direction:column;min-width:0;min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1.5rem;height:var(--topbar-h);background:var(--bg-elev);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.topbar-left{display:flex;flex-direction:column;min-width:0}.topbar-title{font-size:1.05rem;font-weight:600;color:var(--text)}.topbar-sub{font-size:.76rem;color:var(--text-subtle)}.topbar-actions{display:flex;align-items:center;gap:.5rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);color:var(--text-muted);transition:background var(--transition),color var(--transition)}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn svg{width:18px;height:18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;transition:background var(--transition),color var(--transition),border-color var(--transition),transform var(--transition);border:1px solid transparent;white-space:nowrap}.btn svg{width:16px;height:16px}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 10px #8b7dff4d}.btn.primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn.primary:disabled{background:var(--surface-3);color:var(--text-subtle);border-color:var(--border);box-shadow:none;cursor:not-allowed}.btn.secondary{background:var(--surface-2);color:var(--text);border-color:var(--border)}.btn.secondary:hover{background:var(--surface-3);border-color:var(--border-strong)}.btn.secondary:disabled{opacity:.5;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--text-muted)}.btn.ghost:hover{background:var(--surface-2);color:var(--text)}.btn.danger{background:var(--err-bg);color:var(--err);border-color:var(--err-border)}.btn.danger:hover{background:var(--err);color:#fff;border-color:var(--err)}.btn-sm{padding:.35rem .7rem;font-size:.8rem}.page{flex:1;padding:1.5rem;max-width:1400px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:1.25rem;animation:fadeIn .25s ease}.page-wide{max-width:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--transition),box-shadow var(--transition)}.card.elev{box-shadow:var(--shadow-md)}.card:hover.interactive{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.card-header h3{font-size:.95rem}.card-header .eyebrow{margin-bottom:.15rem}.card-body{padding:1.25rem}.card-body.tight{padding:.75rem 1.25rem}.eyebrow{display:inline-block;font-size:.67rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-subtle)}.subtle{color:var(--text-subtle);font-size:.85rem}.mono{font-family:var(--font-mono);font-size:.82rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.stat-card{padding:1.1rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:.35rem;position:relative;overflow:hidden;transition:transform var(--transition),border-color var(--transition)}.stat-card:after{content:"";position:absolute;top:0;right:0;bottom:0;width:3px;background:var(--accent);opacity:0;transition:opacity var(--transition)}.stat-card:hover{border-color:var(--border-strong);transform:translateY(-1px)}.stat-card:hover:after{opacity:1}.stat-card strong{display:block;font-size:1.85rem;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.1}.stat-card .stat-icon{position:absolute;top:1rem;right:1rem;color:var(--text-subtle);opacity:.5}.stat-card .stat-icon svg{width:20px;height:20px}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:500;white-space:nowrap;border:1px solid transparent}.badge.ok{color:var(--ok);background:var(--ok-bg);border-color:var(--ok-border)}.badge.warn{color:var(--warn);background:var(--warn-bg);border-color:var(--warn-border)}.badge.err{color:var(--err);background:var(--err-bg);border-color:var(--err-border)}.badge.info{color:var(--info);background:var(--info-bg);border-color:var(--info-border)}.badge.neutral{color:var(--text-muted);background:var(--surface-2);border-color:var(--border)}.badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.chip-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.field{display:flex;flex-direction:column;gap:.35rem}.field-label{font-size:.78rem;font-weight:500;color:var(--text-muted)}input[type=text],input[type=number],input[type=search],textarea,select{padding:.55rem .75rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font-size:.875rem;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition);width:100%}input[type=text]:focus,input[type=number]:focus,input[type=search]:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:var(--accent-glow);background:var(--surface)}select{cursor:pointer}textarea{font-family:var(--font-mono);font-size:.82rem;resize:vertical;min-height:120px}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem 1rem;border:1.5px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-2);transition:border-color var(--transition),background var(--transition);cursor:pointer;text-align:center;min-height:130px}.dropzone:hover,.dropzone.active{border-color:var(--accent);background:var(--accent-soft)}.dropzone svg{width:28px;height:28px;color:var(--text-subtle)}.dropzone-title{font-weight:500;font-size:.9rem;color:var(--text)}.dropzone-sub{font-size:.78rem;color:var(--text-subtle)}.dropzone.has-file{border-style:solid;border-color:var(--ok-border);background:var(--ok-bg)}.dropzone.has-file svg{color:var(--ok)}.dropzone-filename{font-weight:500;font-size:.85rem;color:var(--text);word-break:break-all}.dropzone input[type=file]{display:none}.stepper{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem;flex-wrap:wrap}.step{display:flex;align-items:center;gap:.5rem;padding:.3rem .7rem;border-radius:999px;background:var(--surface-2);color:var(--text-muted);font-size:.82rem;transition:all var(--transition)}.step-num{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--surface-3);font-size:.72rem;font-weight:600}.step.active{background:var(--accent-soft);color:var(--accent-strong)}.step.active .step-num{background:var(--accent);color:#fff}.step.done .step-num{background:var(--ok);color:#fff}.step-sep{color:var(--text-subtle)}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.75rem 1rem;text-align:left;vertical-align:middle;font-size:.875rem;border-bottom:1px solid var(--border)}.data-table th{font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);background:var(--surface-2);position:sticky;top:0}.data-table tbody tr{transition:background var(--transition)}.data-table tbody tr:hover{background:var(--surface-2)}.data-table tbody tr:last-child td{border-bottom:none}.cell-title{font-weight:600;color:var(--text)}.cell-subtle{color:var(--text-subtle);font-size:.78rem;margin-top:.1rem}.exports-layout{display:grid;grid-template-columns:320px 1fr;gap:1.25rem;align-items:stretch;flex:1;min-height:0}.folder-list{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;max-height:calc(100vh - var(--topbar-h) - 3rem)}.folder-list-header{padding:.75rem;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:.5rem}.folder-list-search{position:relative}.folder-list-search svg{position:absolute;left:.6rem;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--text-subtle);pointer-events:none}.folder-list-search input{padding-left:2rem}.folder-list-sort{display:flex;gap:.3rem}.folder-list-sort button{flex:1;padding:.35rem .5rem;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-muted);font-size:.72rem;font-weight:500;border:1px solid var(--border);transition:all var(--transition)}.folder-list-sort button.active{background:var(--accent-soft);color:var(--accent-strong);border-color:var(--accent)}.folder-list-scroll{overflow-y:auto;padding:.5rem;flex:1}.folder-item{display:flex;align-items:center;gap:.65rem;padding:.7rem .8rem;border-radius:var(--radius-sm);width:100%;text-align:left;color:var(--text);transition:background var(--transition);margin-bottom:.2rem}.folder-item:hover{background:var(--surface-2)}.folder-item.active{background:var(--accent-soft)}.folder-item-icon{width:34px;height:34px;border-radius:var(--radius-sm);background:var(--surface-3);display:grid;place-items:center;color:var(--accent);flex-shrink:0}.folder-item.active .folder-item-icon{background:var(--accent);color:#fff}.folder-item-icon svg{width:16px;height:16px}.folder-item-body{flex:1;min-width:0}.folder-item-name{font-size:.87rem;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-item-meta{font-size:.72rem;color:var(--text-subtle);display:flex;gap:.4rem;margin-top:.15rem}.video-pane{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;min-width:0}.video-pane-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.video-pane-body{padding:1.25rem;flex:1;overflow-y:auto}.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px}.video-card{background:transparent;border:1px solid transparent;border-radius:8px;overflow:hidden;transition:background var(--transition),border-color var(--transition),box-shadow var(--transition);cursor:pointer;position:relative;display:flex;flex-direction:column;content-visibility:auto;contain-intrinsic-size:320px 280px}.video-card:hover{background:var(--surface-2);border-color:var(--border);box-shadow:var(--shadow-sm)}.video-card.selected{background:var(--accent-soft);border-color:var(--accent)}.video-card-thumb{aspect-ratio:16 / 9;background:#000;position:relative;overflow:hidden;display:grid;place-items:center;contain:layout paint;border-radius:6px}.video-card-thumb canvas,.video-card-thumb video,.video-card-thumb img,.video-card-thumb .vt-img{width:100%;height:100%;object-fit:cover;display:block}.vt-img{width:100%;height:100%;object-fit:cover;display:block;background:#000;user-select:none;-webkit-user-drag:none;opacity:0;transition:opacity .22s ease}.vt-img.loaded{opacity:1}.vt-skeleton{position:absolute;inset:0;background:linear-gradient(100deg,#ffffff0a 30%,#ffffff1f,#ffffff0a 70%);background-size:220% 100%;animation:vt-shimmer 1.2s linear infinite}@keyframes vt-shimmer{0%{background-position:220% 0}to{background-position:-120% 0}}.vt-fallback{width:100%;height:100%;display:grid;place-items:center;color:var(--text-subtle);background:#0a0b10}.vt-fallback svg{width:32px;height:32px;opacity:.45}.video-card-play{position:absolute;inset:0;display:grid;place-items:center;background:#00000040;opacity:0;transition:opacity var(--transition)}.video-card:hover .video-card-play{opacity:1}.video-card-play-icon{width:52px;height:52px;border-radius:50%;background:#fffffff2;color:#0a0b10;display:grid;place-items:center;box-shadow:0 8px 20px #0006}.video-card-play-icon svg{width:22px;height:22px;margin-left:2px}.video-card-body{padding:.45rem .55rem .35rem;display:flex;flex-direction:column;gap:.15rem}.video-card-name{font-size:.78rem;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.video-card-meta{font-size:.68rem;color:var(--text-subtle);display:flex;gap:.4rem}.video-card-actions{padding:0 .55rem .5rem;display:flex;gap:.3rem}.video-card-actions .btn{flex:1}.video-card-select{position:absolute;top:.5rem;left:.5rem;width:22px;height:22px;border-radius:50%;background:#00000080;border:2px solid rgba(255,255,255,.9);display:grid;place-items:center;color:#fff;opacity:0;transition:opacity var(--transition),background var(--transition),transform var(--transition);z-index:2}.video-card-select:hover{transform:scale(1.1)}.video-card:hover .video-card-select,.video-card.selected .video-card-select{opacity:1}.video-card.selected .video-card-select{background:var(--accent);border-color:var(--accent)}.vc-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;transition:opacity .2s ease;z-index:1}.video-card-thumb canvas{position:relative;z-index:0}.video-card-select.checked{background:var(--accent);border-color:var(--accent)}.video-card-select svg{width:13px;height:13px;stroke-width:3}.view-toggle{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.view-toggle button{width:32px;height:32px;display:grid;place-items:center;color:var(--text-subtle);border-right:1px solid var(--border);transition:all var(--transition)}.view-toggle button:last-child{border-right:none}.view-toggle button.active{background:var(--accent-soft);color:var(--accent-strong)}.view-toggle button:hover:not(.active){background:var(--surface-3);color:var(--text)}.view-toggle button svg{width:15px;height:15px}.gallery{display:flex;flex-direction:column;gap:1.75rem}.gallery-group{display:flex;flex-direction:column;gap:.6rem}.gallery-group-header{display:flex;align-items:center;justify-content:space-between;padding:0 .25rem .4rem;border-bottom:1px solid var(--border)}.gallery-group-header h4{font-size:.95rem;font-weight:600;color:var(--text)}.video-grid.compact{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem}.video-grid.compact .video-card-body{padding:.5rem .6rem}.video-grid.compact .video-card-name{font-size:.78rem}.video-grid.compact .video-card-meta{font-size:.68rem}.lb-backdrop{position:fixed;inset:0;background:#000000f0;backdrop-filter:blur(6px);display:flex;z-index:200;animation:fadeIn .15s ease;height:100vh;width:100vw}.lb-shell{position:relative;display:grid;grid-template-rows:56px minmax(0,1fr) 90px;width:100%;height:100vh;max-height:100vh;overflow:hidden}.lb-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;gap:1rem;background:linear-gradient(to bottom,rgba(0,0,0,.6),transparent);z-index:5}.lb-head-info{display:flex;align-items:baseline;gap:1rem;min-width:0;flex:1}.lb-counter{font-family:var(--font-mono);font-size:.78rem;color:#ffffffb3;flex-shrink:0}.lb-title{font-weight:500;font-size:.95rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-head-actions{display:flex;gap:.25rem;flex-shrink:0}.lb-head-actions .icon-btn{background:#ffffff14;color:#ffffffd9}.lb-head-actions .icon-btn:hover{background:#ffffff2e;color:#fff}.lb-head-actions .lb-danger:hover{background:var(--err);color:#fff}.lb-stage{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;height:100%;min-height:0;min-width:0;padding:0 .5rem;overflow:hidden}.lb-nav{width:60px;height:60px;border-radius:50%;background:#ffffff14;color:#ffffffd9;font-size:2.5rem;line-height:1;display:grid;place-items:center;transition:all var(--transition)}.lb-nav:hover{background:#ffffff2e;color:#fff;transform:scale(1.05)}.lb-nav:disabled{opacity:.2;cursor:not-allowed}.lb-video-wrap{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:0;min-width:0;padding:0 .5rem;overflow:hidden}.lb-video{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius);background:#000;box-shadow:0 24px 60px #00000080;display:block}.lb-footer{display:flex;flex-direction:column;gap:.4rem;padding:.4rem 1rem .5rem;background:linear-gradient(to top,rgba(0,0,0,.6),transparent);overflow:hidden}.lb-meta{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.78rem;color:#ffffffb3;align-items:center}.lb-thumbs{display:flex;gap:.4rem;overflow-x:auto;padding:.25rem 0;justify-content:center}.lb-thumb{flex:0 0 auto;width:70px;height:40px;border-radius:4px;overflow:hidden;border:2px solid transparent;background:#ffffff14;transition:all var(--transition);padding:0}.lb-thumb video{width:100%;height:100%;object-fit:cover}.lb-thumb:hover{border-color:#fff6}.lb-thumb.active{border-color:var(--accent);transform:scale(1.1)}@media (max-width: 720px){.lb-nav{width:44px;height:44px;font-size:1.8rem}.lb-stage{padding:0 .25rem}.lb-video-wrap{padding:0}.lb-thumbs{padding-bottom:.5rem}.lb-thumb{width:56px;height:32px}.lb-head-info{gap:.5rem}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:var(--text-subtle);gap:.5rem;min-height:300px}.empty-state svg{width:44px;height:44px;color:var(--text-subtle);opacity:.5}.empty-state-title{font-size:1rem;font-weight:500;color:var(--text-muted)}.modal-backdrop{position:fixed;inset:0;background:#000000bf;backdrop-filter:blur(4px);display:grid;place-items:center;z-index:100;padding:1rem;animation:fadeIn .15s ease}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:1100px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:scaleIn .18s ease}@keyframes scaleIn{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.25rem;border-bottom:1px solid var(--border)}.modal-title{font-size:1rem;font-weight:600;color:var(--text);word-break:break-word}.modal-body{padding:0;background:#000;flex:1;overflow:hidden;display:grid;place-items:center}.modal-video{width:100%;max-height:70vh;display:block;background:#000}.modal-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1.25rem;border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap}.modal-meta{color:var(--text-subtle);font-size:.8rem;display:flex;gap:.75rem;flex-wrap:wrap}.modal-actions{display:flex;gap:.5rem}.confirm-modal{max-width:420px}.confirm-body{padding:1.25rem;font-size:.9rem;color:var(--text-muted)}.bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 1rem;background:var(--accent-soft);border:1px solid var(--accent);border-radius:var(--radius-sm);margin-bottom:1rem;font-size:.85rem}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.quick-action{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:left;transition:all var(--transition)}.quick-action:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.quick-action-icon{width:40px;height:40px;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex-shrink:0}.quick-action-icon svg{width:20px;height:20px}.quick-action-body{flex:1;display:flex;flex-direction:column;gap:.1rem}.quick-action-title{font-weight:600;font-size:.9rem;color:var(--text)}.quick-action-sub{font-size:.75rem;color:var(--text-subtle)}.draft-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.draft-card{padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--transition)}.draft-card:hover{border-color:var(--border-strong)}.draft-card h4{font-size:.92rem;margin-bottom:.1rem}.stack{display:flex;flex-direction:column;gap:.6rem}.validation-row{padding:.75rem 1rem;background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--text-subtle);border-radius:var(--radius-sm)}.validation-row.severity-error{border-left-color:var(--err)}.validation-row.severity-warning{border-left-color:var(--warn)}.validation-row.severity-info{border-left-color:var(--info)}.validation-row p{font-size:.85rem;color:var(--text-muted);margin-top:.2rem}.jobs-layout{display:grid;grid-template-columns:300px 1fr;gap:1rem;align-items:stretch;flex:1;min-height:0}.jobs-sidebar{display:flex;flex-direction:column;gap:1rem;max-height:calc(100vh - var(--topbar-h) - 3rem);overflow-y:auto}.jobs-sidebar-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem}.jobs-sidebar-section h4{font-size:.8rem;font-weight:600;color:var(--text-muted);margin-bottom:.5rem;letter-spacing:.04em}.jobs-list-item{display:block;width:100%;text-align:left;padding:.55rem .7rem;border:1px solid transparent;border-radius:var(--radius-sm);transition:all var(--transition);margin-bottom:.3rem}.jobs-list-item:hover{background:var(--surface-2)}.jobs-list-item.active{background:var(--accent-soft);border-color:var(--accent)}.jobs-list-name{font-size:.82rem;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jobs-list-meta{display:flex;gap:.35rem;align-items:center;margin-top:.2rem}.jobs-detail{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;min-height:300px;overflow:auto}.job-row{padding:1rem 1.15rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.75rem}.job-row-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.4rem}.job-filename{font-weight:600;font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-row-actions{display:flex;gap:.4rem;flex-shrink:0}.job-row-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.progress-track{height:6px;background:var(--surface-3);border-radius:999px;overflow:hidden;margin-bottom:.25rem}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-strong));transition:width .4s ease;position:relative}.progress-fill.done{background:var(--ok)}.progress-fill.err{background:var(--err)}.progress-fill.indeterminate:after{content:"";position:absolute;top:0;left:0;bottom:0;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 1.5s linear infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(350%)}}.job-error{margin:.4rem 0 0;font-size:.82rem;color:var(--err);padding:.5rem .7rem;background:var(--err-bg);border-radius:var(--radius-sm);border:1px solid var(--err-border)}.log-box{max-height:360px;overflow:auto;padding:.85rem 1rem;border-radius:var(--radius-sm);background:#05060a;color:#d4d8e4;font-family:var(--font-mono);font-size:.76rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;border:1px solid var(--border)}.lyric-toolbar{display:flex;align-items:center;gap:.6rem;padding:.25rem 0}.lyric-flat{display:flex;flex-direction:column;gap:.15rem;padding:.9rem 1rem;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);max-height:560px;overflow-y:auto;counter-reset:lyric-line}.lyric-flat.with-timings{gap:.5rem}.lyric-line{display:grid;grid-template-columns:1.8rem 1fr;align-items:baseline;gap:.5rem;padding:.4rem .55rem;border-radius:var(--radius-sm);border-left:2px solid transparent;transition:background var(--transition),border-color var(--transition)}.lyric-line:hover{background:var(--surface)}.lyric-line:focus-within{background:var(--surface);border-left-color:var(--accent)}.lyric-line-num{font-family:var(--font-mono);font-size:.72rem;color:var(--text-subtle);text-align:right;user-select:none;padding-top:.2rem}.lyric-line-words{display:flex;flex-wrap:wrap;align-items:baseline;gap:.1rem .25rem;line-height:1.5}.lyric-flat.with-timings .lyric-line-words{align-items:flex-start;gap:.35rem .4rem}.lyric-word-cell{display:inline-flex;flex-direction:column;align-items:center;gap:.05rem;padding:.05rem .15rem;border-radius:4px;border-bottom:1px dashed transparent;transition:background var(--transition),border-color var(--transition)}.lyric-word-cell:hover{background:var(--surface-3);border-bottom-color:var(--border-strong)}.lyric-word-cell:focus-within{background:var(--surface-3);border-bottom-color:var(--accent)}input[type=text].lyric-word-input{border:none;background:transparent;font-size:1rem;font-weight:500;color:var(--text);padding:0;min-width:1ch;width:auto;max-width:100%;text-align:center;field-sizing:content;transition:color var(--transition);caret-color:var(--accent);font-family:inherit;border-radius:0;box-shadow:none}input[type=text].lyric-word-input:focus{outline:none;border:none;background:transparent;box-shadow:none}input[type=text].lyric-word-input.invalid{color:var(--err);text-decoration:underline wavy var(--err)}.lyric-word-timing{font-family:var(--font-mono);font-size:.62rem;font-weight:500;color:var(--text-subtle);letter-spacing:.01em;white-space:nowrap;line-height:1;padding:0}.lyric-word-cell:hover .lyric-word-timing,.lyric-word-cell:focus-within .lyric-word-timing{color:var(--text-muted)}.lyric-eye-button{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition)}.lyric-eye-button:hover{background:var(--surface-3);color:var(--text)}.lyric-eye-button.active{background:var(--accent);border-color:var(--accent);color:#fff}.lyric-eye-button svg{width:16px;height:16px}.transcribe-progress{display:flex;flex-direction:column;gap:.45rem;padding:.75rem .9rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.transcribe-progress.err{border-color:var(--err-border);background:var(--err-bg)}.transcribe-progress-header{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.transcribe-progress-phase{font-weight:600;font-size:.88rem;color:var(--text)}.transcribe-progress-meta{color:var(--text-subtle);font-size:.78rem;font-family:var(--font-mono)}.transcribe-progress-message{font-size:.78rem;color:var(--text-muted);font-family:var(--font-mono)}.logs-view{display:flex;flex-direction:column;gap:.75rem;flex:1;min-height:0}.logs-controls{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1rem}.logs-control-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.logs-toggle{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;color:var(--text-muted)}.logs-level-chip{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;padding:.25rem .55rem;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);cursor:pointer;transition:all var(--transition)}.logs-level-chip:has(input:checked){border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.logs-search{flex:1;min-width:140px}.logs-stream{flex:1;overflow-y:auto;padding:.5rem;background:#05060a;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.78rem;line-height:1.35}.logs-line{display:grid;grid-template-columns:82px 70px 160px 1fr;gap:.5rem;padding:.14rem .3rem;color:#c7c7cf;word-break:break-word;white-space:pre-wrap;border-radius:var(--radius-xs)}.logs-line:hover{background:#ffffff0a}.logs-ts{color:#7d7d88}.logs-logger{color:#8ab4f8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logs-message{color:#e6e6eb}.logs-level-badge{font-weight:600;font-size:.7rem;padding:0 .35rem;border-radius:3px;text-align:center;align-self:start}.logs-level-debug{color:#9aa0a6}.logs-level-info{color:#81c995}.logs-level-warning{color:#fdd663}.logs-level-error{color:#f28b82}.logs-level-critical{color:#ff6e6e;font-weight:700}.logs-level-badge.logs-level-debug{background:#9aa0a626}.logs-level-badge.logs-level-info{background:#81c9952e}.logs-level-badge.logs-level-warning{background:#fdd66333;color:#1a1a1a}.logs-level-badge.logs-level-error{background:#f28b8233}.logs-level-badge.logs-level-critical{background:#ff6e6e4d;color:#fff}.loading-shell{display:grid;place-items:center;min-height:100vh;padding:2rem;color:var(--text-muted)}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-card{max-width:540px;padding:1.5rem}@media (max-width: 1024px){.app-shell{grid-template-columns:var(--sidebar-collapsed-w) 1fr}.app-shell .sidebar-brand-text,.app-shell .nav-item-label,.app-shell .nav-item-badge,.app-shell .nav-group-title{display:none}.app-shell .nav-item{justify-content:center;padding:.65rem}.exports-layout{grid-template-columns:1fr}.folder-list{max-height:300px}.jobs-layout{grid-template-columns:1fr}.jobs-sidebar{max-height:300px}}@media (max-width: 640px){.page{padding:1rem}.topbar{padding:0 1rem}.stat-grid{grid-template-columns:1fr 1fr}.video-grid{grid-template-columns:1fr 1fr;gap:.6rem}}.card-header.form-hero{background:linear-gradient(135deg,#6366f114,#a855f70f);border-bottom:1px solid rgba(99,102,241,.15);padding:1.5rem 1.75rem}.card-header.form-hero h3{font-size:1.35rem;letter-spacing:-.01em;margin:.25rem 0 .4rem}.form-hero-sub{margin:0;font-size:.88rem;color:var(--text-muted, #6b7280)}.lyrics-text-panel{border:1.5px dashed rgba(99,102,241,.35);border-radius:14px;padding:1rem 1.1rem 1.1rem;background:linear-gradient(135deg,#6366f10a,#a855f708);display:flex;flex-direction:column;gap:.6rem}.lyrics-text-panel-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.lyrics-text-panel-title{display:flex;align-items:center;gap:.55rem}.lyrics-text-panel-badge{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.18rem .55rem;border-radius:999px;color:#fff;background:linear-gradient(135deg,#6366f1,#a855f7)}.lyrics-text-panel-name{font-weight:600;font-size:.95rem}.lyrics-text-panel-count{font-size:.78rem;color:var(--text-muted, #6b7280);font-variant-numeric:tabular-nums}.lyrics-text-panel-help{margin:0;font-size:.82rem;line-height:1.45;color:var(--text-muted, #6b7280)}.lyrics-text-panel-textarea{width:100%;min-height:130px;font-family:inherit;font-size:.92rem;line-height:1.5;padding:.7rem .85rem;border:1px solid rgba(99,102,241,.2);border-radius:10px;background:#fff9;box-sizing:border-box;resize:vertical;transition:border-color .15s,box-shadow .15s}.lyrics-text-panel-textarea:focus{outline:none;border-color:#6366f18c;box-shadow:0 0 0 3px #6366f12e}.lyrics-text-panel-textarea:disabled{opacity:.6;cursor:not-allowed}.btn.accent-cta{background:linear-gradient(135deg,#6366f1,#a855f7);border:none;color:#fff;font-weight:600;padding:.85rem 1.5rem;font-size:1rem;letter-spacing:.01em;box-shadow:0 4px 14px #6366f140;transition:transform .1s,box-shadow .15s,filter .15s}.btn.accent-cta:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #6366f159;filter:brightness(1.05)}.btn.accent-cta:disabled{background:linear-gradient(135deg,#9ca3af,#d1d5db);box-shadow:none;cursor:not-allowed}[data-theme=dark] .card-header.form-hero{background:linear-gradient(135deg,#6366f124,#a855f71a);border-bottom-color:#6366f140}[data-theme=dark] .lyrics-text-panel{background:linear-gradient(135deg,#6366f114,#a855f70f);border-color:#818cf873}[data-theme=dark] .lyrics-text-panel-textarea{background:#0f121c80;border-color:#818cf84d;color:inherit}@media (max-width: 640px){:root{--topbar-h: 52px;--mobile-tabbar-h: 58px}.app-shell,.app-shell.collapsed{grid-template-columns:1fr}.content{padding-bottom:var(--mobile-tabbar-h)}.sidebar{position:fixed;inset:auto 0 0;width:100vw;height:var(--mobile-tabbar-h);flex-direction:row;border-right:none;border-top:1px solid var(--border);background:var(--bg-elev);z-index:60;overflow:hidden;backdrop-filter:blur(8px);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 16px,#000 calc(100% - 16px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 16px,#000 calc(100% - 16px),transparent 100%)}.sidebar-brand,.sidebar-footer{display:none}.sidebar-nav{flex:1;flex-direction:row;padding:0;gap:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.sidebar-nav::-webkit-scrollbar{display:none}.nav-group{flex-direction:row;flex:1;gap:0}.nav-group-title{display:none}.nav-item{flex:1;flex-direction:column;align-items:center;justify-content:center;gap:.18rem;padding:.4rem .3rem;font-size:.62rem;text-align:center;border-radius:0;min-width:64px}.nav-item.active{background:transparent;color:var(--accent)}.nav-item.active:before{left:50%;top:0;transform:translate(-50%);width:28px;height:3px;border-radius:0 0 3px 3px}.nav-item-badge{position:absolute;top:4px;right:50%;transform:translate(18px);padding:0;min-width:14px;height:14px;font-size:.55rem;line-height:14px;text-align:center}.nav-item svg{width:22px;height:22px}.app-shell .nav-item-label,.nav-item-label{display:block;flex:none;font-size:.62rem;line-height:1;letter-spacing:.01em}.topbar{padding:0 .85rem;gap:.4rem;height:var(--topbar-h)}.topbar-title{font-size:.95rem}.topbar-sub{display:none}.topbar-actions{gap:.25rem}.topbar-actions .btn-sm{padding:.35rem .55rem;font-size:.72rem}.topbar-actions .btn-sm svg{width:14px;height:14px}.page,.page-wide{padding:.65rem .7rem .9rem;gap:.7rem}.stat-grid{grid-template-columns:repeat(3,1fr)!important;gap:.4rem}.stat-card{padding:.5rem .55rem;border-radius:var(--radius);flex-direction:column;align-items:flex-start;gap:.1rem;min-height:0}.stat-card .eyebrow{font-size:.55rem;letter-spacing:.08em}.stat-card strong{font-size:1.05rem;line-height:1.1}.stat-card .subtle{display:none}.stat-card .stat-icon{top:.4rem;right:.45rem;opacity:.35}.stat-card .stat-icon svg{width:14px;height:14px}.stat-card:hover{transform:none}.exports-layout{grid-template-columns:1fr;gap:.55rem}.folder-list{max-height:none;flex-direction:column;border-radius:var(--radius);overflow:visible}.folder-list-header{padding:.4rem .4rem .3rem;flex-direction:row;gap:.35rem;border-bottom:none}.folder-list-search{flex:1}.folder-list-search input{padding:.42rem .5rem .42rem 1.8rem;font-size:.8rem}.folder-list-sort{flex:0 0 auto;gap:.2rem}.folder-list-sort button{padding:.35rem .45rem;font-size:.65rem}.folder-list-scroll{overflow-x:auto;overflow-y:hidden;padding:.3rem .4rem .5rem;display:flex;flex-direction:row;gap:.45rem;scrollbar-width:none;border-top:1px solid var(--border)}.folder-list-scroll::-webkit-scrollbar{display:none}.folder-item{flex:0 0 auto;flex-direction:column;align-items:flex-start;gap:.25rem;min-width:150px;max-width:200px;padding:.55rem .65rem;margin:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.folder-item.active{border-color:var(--accent);background:var(--accent-soft)}.folder-item-icon{display:none}.folder-item-body{width:100%}.folder-item-name{font-size:.78rem}.folder-item-meta{font-size:.62rem;flex-wrap:wrap;gap:.3rem}.video-pane{border-radius:var(--radius);border:1px solid var(--border);overflow:visible}.video-pane-header{padding:.55rem .65rem;flex-direction:column;align-items:stretch;gap:.45rem;position:sticky;top:var(--topbar-h);z-index:10;background:var(--surface);border-bottom:1px solid var(--border)}.video-pane-header>div:first-child h3{font-size:.95rem;margin:0}.video-pane-header>div:first-child .eyebrow{font-size:.55rem}.video-pane-header>div:first-child .subtle{font-size:.7rem}.video-pane-header .chip-row{width:100%;gap:.3rem;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.video-pane-header .chip-row::-webkit-scrollbar{display:none}.video-pane-header .chip-row .folder-list-search{flex:1 1 auto;min-width:120px;width:auto!important}.video-pane-header .chip-row .folder-list-search input{padding:.4rem .5rem .4rem 1.8rem;font-size:.78rem}.video-pane-header .chip-row .btn,.video-pane-header .chip-row .icon-btn{flex:0 0 auto;padding:.4rem .6rem;font-size:.7rem;min-height:34px}.video-pane-header .chip-row .view-toggle{flex-shrink:0}.video-pane-body{padding:.55rem}.video-grid{grid-template-columns:1fr 1fr!important;gap:.45rem}.video-grid.compact{grid-template-columns:1fr!important}.video-grid.compact .video-card{flex-direction:row}.video-grid.compact .video-card-thumb{width:120px;aspect-ratio:16 / 9;flex-shrink:0}.video-grid.compact .video-card-body{flex:1;padding:.5rem .6rem;justify-content:center}.video-card{border-radius:var(--radius-sm)}.video-card-body{padding:.5rem .55rem;gap:.15rem}.video-card-name{font-size:.75rem}.video-card-meta{font-size:.62rem;gap:.3rem}.video-card-select{opacity:1;width:26px;height:26px;top:.35rem;left:.35rem;background:#000000b3;border-width:1.5px}.video-card-play{display:none}.gallery{gap:1rem}.gallery-group{gap:.4rem}.gallery-group-header{padding:0}.gallery-group-header h4{font-size:.78rem}.gallery-group-header .subtle{font-size:.65rem}.bulk-toolbar{position:fixed;left:.5rem;right:.5rem;bottom:calc(var(--mobile-tabbar-h) + .5rem);z-index:40;flex-direction:column;align-items:stretch;gap:.4rem;padding:.55rem .65rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.bulk-toolbar>span:first-child{font-size:.78rem;color:var(--text-muted)}.bulk-toolbar .chip-row{width:100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.bulk-toolbar .chip-row::-webkit-scrollbar{display:none}.bulk-toolbar .chip-row .btn{flex:1 1 0;min-width:0;justify-content:center;padding:.5rem;font-size:.72rem;white-space:nowrap}.empty-state{padding:1.5rem .75rem;min-height:180px}.empty-state svg{width:34px;height:34px}.empty-state-title{font-size:.9rem}.modal-backdrop{padding:0}.modal{border-radius:0;max-height:100vh;max-width:100vw;width:100%;height:100vh}.modal-header{padding:.55rem .7rem}.modal-title{font-size:.85rem}.modal-body{padding:0;display:flex;align-items:center;background:#000}.modal-video{max-height:calc(100vh - 170px);width:100%}.modal-footer{flex-direction:column;gap:.5rem;align-items:stretch;padding:.6rem .7rem .8rem}.modal-actions{display:flex;gap:.35rem}.modal-actions .btn{flex:1;justify-content:center;padding:.5rem .4rem;font-size:.75rem}.modal-meta{flex-wrap:wrap;gap:.25rem .6rem;font-size:.7rem}.lb-shell{grid-template-rows:46px minmax(0,1fr) 50px}.lb-header{padding:.35rem .5rem;gap:.35rem}.lb-counter{display:none}.lb-title{font-size:.78rem}.lb-head-actions{gap:.12rem}.lb-head-actions .icon-btn{width:32px;height:32px}.lb-stage{padding:0}.lb-nav{width:34px;height:34px;font-size:1.3rem}.lb-video-wrap{padding:0}.lb-footer{padding:.2rem .6rem .35rem;gap:.2rem}.lb-meta{font-size:.68rem;gap:.3rem}.lb-thumbs{display:none}.btn-sm{min-height:32px}.icon-btn{min-width:36px;min-height:36px}.card{border-radius:var(--radius)}.card-header{padding:.7rem .85rem;gap:.55rem;flex-wrap:wrap}.card-header h3{font-size:.92rem}.card-header .eyebrow{font-size:.58rem}.card-body{padding:.85rem}.card-body.tight{padding:.55rem .85rem}.card-header.form-hero{padding:.9rem .95rem}.card-header.form-hero h3{font-size:1.05rem;margin:.15rem 0 .2rem}.form-hero-sub{font-size:.78rem}.field{gap:.25rem}.field-label{font-size:.72rem}input[type=text],input[type=number],input[type=search],textarea,select{font-size:.85rem;padding:.5rem .6rem}@supports (-webkit-touch-callout: none){input[type=text],input[type=number],input[type=search],textarea,select{font-size:16px}}.stepper{flex-wrap:wrap;gap:.35rem;row-gap:.45rem}.step{font-size:.74rem;gap:.3rem}.step-num{width:22px;height:22px;font-size:.72rem}.step-sep{display:none}.quick-actions{grid-template-columns:1fr!important;gap:.4rem}.quick-action{padding:.7rem .8rem;gap:.6rem}.quick-action-icon{width:36px;height:36px}.quick-action-icon svg{width:18px;height:18px}.quick-action-title{font-size:.85rem}.quick-action-sub{font-size:.7rem}.draft-grid{grid-template-columns:1fr!important;gap:.5rem}.draft-card{padding:.75rem .85rem}.draft-card h4{font-size:.85rem}.jobs-layout{grid-template-columns:1fr;gap:.55rem}.jobs-sidebar{max-height:280px;padding:.55rem;gap:.5rem}.jobs-sidebar-section h4{font-size:.72rem}.jobs-list-item{padding:.5rem .6rem}.jobs-list-name{font-size:.78rem}.jobs-list-meta{font-size:.66rem;gap:.3rem}.jobs-detail{padding:.65rem;gap:.55rem}.job-row{padding:.6rem .75rem}.job-row-header{flex-direction:column;align-items:flex-start;gap:.3rem;margin-bottom:.35rem}.job-row-actions{gap:.3rem;flex-wrap:wrap}.job-row-meta{flex-wrap:wrap;gap:.3rem;font-size:.7rem}.job-filename{font-size:.78rem;word-break:break-all}.job-error{font-size:.7rem}.table-wrap{margin:0 -.25rem}.data-table th,.data-table td{padding:.5rem .55rem;font-size:.75rem}.data-table th{font-size:.68rem}.cell-title{font-size:.78rem}.cell-subtle{font-size:.68rem}.logs-view{gap:.55rem}.logs-controls{padding:.55rem .6rem;gap:.45rem}.logs-control-row{gap:.35rem}.logs-toggle{font-size:.74rem}.logs-level-chip{font-size:.68rem;padding:.25rem .5rem}.logs-search{min-width:0;width:100%;flex:1 1 100%}.logs-stream{max-height:calc(100vh - 280px);padding:.5rem .6rem;font-size:.7rem}.logs-line{grid-template-columns:56px 50px 1fr;gap:.4rem;padding:.18rem 0}.logs-logger{display:none}.logs-ts{font-size:.62rem}.logs-level-badge{font-size:.6rem}.log-box{max-height:240px;font-size:.68rem;padding:.55rem .7rem}.transcribe-progress{padding:.55rem .7rem;gap:.35rem}.transcribe-progress-header{flex-direction:column;align-items:flex-start;gap:.15rem}.transcribe-progress-phase{font-size:.8rem}.transcribe-progress-meta{font-size:.7rem}.transcribe-progress-message{font-size:.7rem;word-break:break-word}.loading-shell{padding:1rem;min-height:200px}.error-card{padding:1rem;max-width:100%}.chip-row{row-gap:.4rem}.lyric-flat{padding:.6rem .55rem;max-height:60vh}.lyric-line{grid-template-columns:1.4rem 1fr;gap:.35rem;padding:.3rem .35rem}.lyric-line-num{font-size:.65rem}input[type=text].lyric-word-input{font-size:.92rem}.lyric-word-timing{font-size:.58rem}.lyrics-text-panel{padding:.7rem .75rem}.lyrics-text-panel-title{font-size:.85rem}.lyrics-text-panel-textarea{font-size:.85rem;min-height:120px}.badge{font-size:.65rem;padding:.15rem .45rem}}@media (max-width: 420px){.stat-grid{grid-template-columns:1fr 1fr!important}.stat-card:nth-child(3){grid-column:auto}.video-grid{grid-template-columns:1fr 1fr!important}.folder-item{min-width:130px}.topbar-actions .btn-sm span{display:none}.quick-action{padding:.6rem .7rem;gap:.55rem}.quick-action-icon{width:32px;height:32px}.quick-action-icon svg{width:16px;height:16px}}@media (max-width: 360px){.stat-card strong{font-size:.95rem}.video-pane-header .chip-row .btn span{display:none}}@media (hover: none) and (pointer: coarse){.video-card-play{display:none}.video-card:hover{transform:none;box-shadow:none}.vc-preview{display:none}}
