:root{--bg:#17181c;--panel:#1f2026;--raised:#272932;--well:#121317;--line:#33353f;--text:#e7e4ee;--muted:#8c8a9a;--accent:#8b6cff;--accent-ink:#fff;--accent-soft:#8b6cff29;--ok:#3fbf8a;--warn:#e8a33d;--bad:#e5534b;--idle:#4a4c58;--radius-tile:10px;--radius-control:6px;color:var(--text);background:var(--bg);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:14px;line-height:1.45}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tabular{font-variant-numeric:tabular-nums}.app{grid-template-columns:208px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--well);border-right:1px solid var(--line);z-index:20;flex-direction:column;align-self:start;gap:4px;height:100vh;padding:18px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:10px;padding:4px 8px 22px;font-size:17px;font-weight:700;display:flex}.brand svg{flex:none}.nav{text-align:left;width:100%;color:var(--muted);border-radius:var(--radius-control);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:10px;padding:9px 10px;display:flex}.nav:hover{color:var(--text);background:var(--panel)}.nav.active{color:var(--text);background:var(--raised);box-shadow:inset 2px 0 0 var(--accent)}.main{min-width:0;padding:20px 24px 132px}button,select,input,textarea{font:inherit;color:inherit}button.primary,button.secondary,a.secondary,button.ghost{border-radius:var(--radius-control);cursor:pointer;white-space:nowrap;border:1px solid #0000;align-items:center;gap:7px;padding:7px 12px;text-decoration:none;display:inline-flex}button.primary{background:var(--accent);color:var(--accent-ink);font-weight:600}button.primary:hover:not(:disabled){filter:brightness(1.1)}button.secondary,a.secondary{background:var(--raised);border-color:var(--line);color:var(--text)}button.secondary:hover:not(:disabled),a.secondary:hover{border-color:#4a4d5a}button.ghost{color:var(--muted);background:0 0}button.ghost:hover:not(:disabled){color:var(--text)}button:disabled,a[aria-disabled=true]{opacity:.4;cursor:default}select,input[type=text],input:not([type]),input[type=number],input[type=password],textarea{background:var(--well);border:1px solid var(--line);border-radius:var(--radius-control);padding:6px 8px}input[type=checkbox]{accent-color:var(--accent)}.header{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.project-select{letter-spacing:-.02em;background:0 0;border:0;max-width:420px;padding:2px 4px;font-size:22px;font-weight:700}.project-select option{background:var(--panel);font-size:14px}.accounts-pill{color:var(--muted);border:1px solid var(--line);border-radius:999px;align-items:center;gap:8px;padding:4px 10px;display:inline-flex}.dot{background:var(--ok);border-radius:50%;width:7px;height:7px}.dot.off{background:var(--bad)}.header .actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.settings{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-tile);flex-wrap:wrap;align-items:end;gap:14px;margin-bottom:18px;padding:12px 14px;display:flex}.settings label{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.settings label:has(input[type=checkbox]){flex-direction:row;align-self:center;align-items:center;gap:6px}.settings select,.settings input{color:var(--text);font-size:13px}.settings input[type=number]{width:64px}.field-error{font-size:12px}.skill-package-row{align-items:center;gap:8px;display:flex}.settings .file-button{color:var(--text);padding:5px 10px;font-size:13px}.grid{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:14px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-tile);flex-direction:column;display:flex;overflow:hidden}.card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.monitor{aspect-ratio:16/9;background:var(--well);place-items:center;display:grid;position:relative;overflow:hidden}.monitor video{object-fit:cover;width:100%;height:100%;display:block}.monitor.finished{background:linear-gradient(160deg, #262836, var(--well))}.monitor.finished video{position:absolute;inset:0}.monitor .play{position:relative}.monitor .slate{color:var(--idle);letter-spacing:-.03em;font-size:44px;font-weight:700}.monitor.generating{background:radial-gradient(120% 90% at 50% 100%, #8b6cff2e, var(--well) 70%)}.monitor .live{text-align:center}.monitor .live .timecode{font-variant-numeric:tabular-nums;font-size:26px;font-weight:600;display:block}.monitor .live .stage-name{color:var(--muted);font-size:12px}.monitor .scan{background:var(--accent);transform-origin:0;height:2px;animation:2.4s ease-in-out infinite scan;position:absolute;bottom:0;left:0;right:0}@keyframes scan{0%{opacity:.4;transform:scaleX(.05)}50%{opacity:1;transform:scaleX(1)}to{opacity:.4;transform:scaleX(.05)}}.monitor.problem{color:var(--warn);place-items:center start;padding:14px;font-size:12.5px;line-height:1.4}.monitor.problem.failed{color:var(--bad)}.monitor .problem-text{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tile-media{position:relative}.tile-overlay{justify-content:space-between;align-items:center;display:flex;position:absolute;top:8px;left:8px;right:8px}.tile-overlay .pick{background:#121317b8;border-radius:4px;padding:2px 4px;display:inline-flex}.tile-body{flex-direction:column;flex:1;gap:6px;padding:10px 12px 12px;display:flex}.tile-head{align-items:baseline;gap:8px;display:flex}.tile-number{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:12px}.card .title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.card .excerpt{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;display:-webkit-box;overflow:hidden}.tile-actions{align-items:center;gap:6px;margin-top:auto;padding-top:4px;display:flex}.tile-actions .takes{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;margin-left:auto;font-size:12px}.chip{color:var(--muted);border:1px solid var(--line);background:#121317b8;border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:500}.chip.done{color:var(--ok);border-color:#3fbf8a66}.chip.needs_check,.chip.partial,.chip.limit_reached{color:var(--warn);border-color:#e8a33d66}.chip.failed,.chip.expired{color:var(--bad);border-color:#e5534b66}.chip.generating,.chip.queued{color:var(--accent);border-color:#8b6cff73}.bottombar{background:var(--well);border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"count timeline transport""notice selection selection";align-items:center;gap:8px 16px;padding:12px 24px 14px;display:grid;position:fixed;bottom:0;left:208px;right:0}.bottombar .count{font-variant-numeric:tabular-nums;grid-area:count;font-weight:600}.timeline{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-control);grid-area:timeline;gap:2px;min-width:0;height:26px;padding:3px;display:flex}.timeline .clip{background:var(--idle);border-radius:3px;flex:1 1 0;min-width:3px}.timeline .clip.done{background:var(--ok)}.timeline .clip.generating{background:var(--accent)}.timeline .clip.queued{background:#8b6cff66}.timeline .clip.needs_check,.timeline .clip.partial{background:var(--warn)}.timeline .clip.failed{background:var(--bad)}.transport{grid-area:transport;gap:6px;display:flex}.selection{grid-area:selection;justify-content:flex-end;gap:4px;display:flex}.bottombar .notice{grid-area:notice;margin:0}.login-screen{place-items:center;min-height:100vh;padding:16px;display:grid}.login-card{width:min(380px,100%);margin:0}.login-card .brand{padding:0 0 6px}.sign-out{margin-top:auto}.account-foot{flex-direction:column;gap:2px;margin-top:auto;display:flex}.account-foot .sign-out{margin-top:0}.signed-in{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding:6px 10px 0;font-size:12.5px;overflow:hidden}.hint{color:var(--muted);max-width:72ch;margin:-6px 0 16px;font-size:13px}.notice.ok{color:var(--ok);background:#3fbf8a1f;border-color:#3fbf8a59}.check{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.row-actions input[type=password]{width:180px}.you{color:var(--muted);font-size:12px}.image-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;margin:4px 0 10px;display:grid}.image-tile{aspect-ratio:1;border-radius:var(--radius-control);background:var(--well);border:1px solid var(--line);margin:0;position:relative;overflow:hidden}.image-tile img{object-fit:cover;width:100%;height:100%;display:block}.image-remove{border:1px solid var(--line);width:24px;height:24px;color:var(--text);cursor:pointer;background:#121317cc;border-radius:50%;padding:0;font-size:18px;line-height:1;position:absolute;top:4px;right:4px}.image-remove:hover,.image-remove:focus-visible{background:var(--bad);border-color:var(--bad)}.modal-backdrop{z-index:50;background:#08080c9e;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-tile);width:min(520px,100%);max-height:calc(100vh - 32px);padding:20px;overflow:auto;box-shadow:0 24px 60px #00000080}.modal h2{margin:0 0 14px;font-size:17px}.modal form{flex-direction:column;gap:14px;display:flex}.modal textarea{resize:vertical;min-height:110px}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.modal.wide{width:min(640px,100%)}.modal-message p{margin:0 0 8px}button.danger{background:var(--bad);border:1px solid var(--bad);color:#fff;border-radius:var(--radius-control);cursor:pointer;padding:8px 14px;font-weight:600}button.danger:disabled{opacity:.6;cursor:default}button.ghost.danger-text:hover{color:var(--bad)}.empty-state{text-align:center;background:var(--panel);border:1px dashed var(--line);border-radius:var(--radius-tile);max-width:460px;margin:56px auto;padding:32px 28px}.empty-state h2{margin:12px 0 6px;font-size:18px}.empty-state p{color:var(--muted);margin:0 0 18px;font-size:14px;line-height:1.55}.empty-icon{color:var(--accent);display:inline-flex}.empty-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.segmented{background:var(--well);border:1px solid var(--line);border-radius:var(--radius-control);align-self:flex-start;gap:3px;padding:3px;display:inline-flex}.segmented label{color:var(--muted);cursor:pointer;border-radius:4px;padding:6px 12px;font-size:13px}.segmented label.on{background:var(--raised);color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}.segmented input{opacity:0;pointer-events:none;position:absolute}.segmented label:has(input:focus-visible){outline:2px solid var(--accent)}.drop-zone{border:1.5px dashed var(--line);border-radius:var(--radius-tile);color:var(--muted);background:var(--well);flex-direction:column;align-items:center;gap:10px;padding:20px;font-size:13px;display:flex}.drop-zone.over{border-color:var(--accent);color:var(--text);background:#8b6cff14}.file-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.file-list li{background:var(--well);border:1px solid var(--line);border-radius:var(--radius-control);align-items:center;gap:10px;padding:6px 8px 6px 12px;font-size:13px;display:flex}.file-list .file-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:none;color:var(--text);flex:auto;overflow:hidden}.file-list .hint-text{white-space:nowrap;margin-left:auto}.icon-button{border:1px solid var(--line);width:26px;height:26px;color:var(--muted);cursor:pointer;background:#121317b8;border-radius:50%;flex:none;place-items:center;padding:0;display:inline-grid}.tile-corner{align-items:center;gap:6px;display:inline-flex}.icon-button:hover:not(:disabled){color:var(--bad);border-color:#e5534b80}.icon-button:disabled{opacity:.4;cursor:default}.warn-text{color:var(--warn);font-size:12px}.image-remove.inline{flex:none;position:static}.import-summary{flex-direction:column;gap:6px;font-size:13px;display:flex}.prompt-preview{background:var(--well);border:1px solid var(--line);border-radius:var(--radius-control);color:var(--muted);max-height:160px;margin:0;padding:8px 12px;list-style:inside decimal;overflow:auto}.hint-text{color:var(--muted);margin:0;font-size:12.5px}.drop-zone .file-button{align-self:center}.prompt-preview li{white-space:nowrap;text-overflow:ellipsis;padding:2px 0;overflow:hidden}.form-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-tile);flex-direction:column;gap:14px;max-width:640px;margin-top:20px;padding:18px 20px;display:flex}.form-card h2{margin:0;font-size:16px}.field{color:var(--muted);flex-direction:column;gap:6px;font-size:13px;display:flex}.field input,.field textarea{color:var(--text);width:100%}.field textarea{resize:vertical;min-height:120px;font-size:12.5px}.form-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.form-actions .primary{margin-left:auto}.file-name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:12.5px;overflow:hidden}::placeholder{color:#5f5d6c}.drawer{background:var(--panel);border-left:1px solid var(--line);z-index:20;flex-direction:column;gap:10px;width:min(480px,100vw);padding:20px;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:auto}.drawer-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.drawer>*{flex-shrink:0}.drawer .take-error{overflow-wrap:anywhere}.drawer .take-error.clamped{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.drawer h2{margin:0 0 4px;font-size:18px}.file-button{border-radius:var(--radius-control);background:var(--raised);border:1px solid var(--line);cursor:pointer;align-self:start;align-items:center;padding:7px 12px;display:inline-flex;position:relative}.file-button:hover,.file-button:focus-within{border-color:#4a4d5a}.file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.drawer h3{color:var(--muted);margin:10px 0 0;font-size:13px;font-weight:600}.drawer textarea{resize:vertical;width:100%;min-height:140px}.drawer video{border-radius:var(--radius-control);background:var(--well)}.drawer .card{gap:6px;padding:10px 12px}.notice{color:var(--warn);border-radius:var(--radius-control);background:#e8a33d1f;border:1px solid #e8a33d59;margin-bottom:12px;padding:8px 12px;font-size:13px}h1{letter-spacing:-.02em;margin:4px 0 16px;font-size:22px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.page-head h1{margin:0 0 4px}.page-head .hint{margin:0}.accounts-pill.ready{color:var(--ok);border-color:#3fbf8a73}.dot.idle{background:var(--idle)}.pool{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-tile);padding:16px 18px 8px}.pool-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pool-head h2{align-items:center;gap:8px;margin:0;font-size:16px;display:inline-flex}.pool-count{color:var(--muted);font-size:13px}.pool-head .secondary{margin-left:auto}.pool-note{max-width:78ch;margin:10px 0 0}.add-proxy{gap:8px;margin:14px 0;display:flex}.add-proxy input{flex:1;min-width:0}.proxy-list,.account-list{margin:0;padding:0;list-style:none}.proxy-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.proxy-line{align-items:center;gap:8px;display:flex}.proxy-url{font-weight:600}.proxy-meta{color:var(--ok);margin-top:2px;font-size:12.5px}.proxy-meta.dead{color:var(--bad)}.proxy-actions{flex:none;align-items:center;gap:8px;display:flex}.checked-ago{color:var(--muted);text-align:right;min-width:8.5em;font-size:12px}.account-filters{flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0;display:flex}.account-filters input{flex:180px}.account-filters label{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.account-card{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding:12px 0;display:flex}.account-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.account-top .row-actions{margin-left:auto}.proxy-bind{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.proxy-bind select{min-width:180px}table{border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-tile);width:100%;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--line);padding:10px 12px;font-size:13px}th{color:var(--muted);font-weight:500}tr:last-child td{border-bottom:0}.status-note{color:var(--warn);margin-top:4px;font-size:12px}.row-actions{justify-content:flex-end;gap:8px;display:flex}.empty{color:var(--muted);text-align:center;padding:48px 0}@media (width<=760px){.app{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;min-width:0;height:auto;padding:10px;overflow:auto hidden}.sidebar .nav{white-space:nowrap;flex:none;width:auto}.account-foot{flex-direction:row;align-items:center;margin:0 0 0 auto}.signed-in{display:none}table{max-width:100%;display:block;overflow-x:auto}.chip{white-space:nowrap}.brand{padding:0 8px 0 0}.bottombar{grid-template-columns:minmax(0,1fr);grid-template-areas:"count""timeline""transport""selection""notice";padding:10px 14px;left:0}.transport,.selection{flex-wrap:wrap;justify-content:flex-start}.brand span,.brand{font-size:15px}.header .actions{margin-left:0}.page-head,.add-proxy{flex-direction:column}.proxy-row,.proxy-actions{flex-wrap:wrap}.checked-ago{text-align:left;min-width:0}.pool-head .secondary{margin-left:0}.main{padding:16px 14px 260px}}@media (prefers-reduced-motion:reduce){.monitor .scan{animation:none;transform:scaleX(1)}}.pairing-code{letter-spacing:.12em;font-variant-numeric:tabular-nums;margin:4px 0;font-size:28px;font-weight:700}
