:root{color-scheme:light;--ink:#202124;--muted:#667085;--line:#d9dee8;--surface:#ffffff;--surface-2:#f5f7fa;--nav:#1f2937;--accent:#0f766e;--accent-2:#2563eb;--danger:#b42318;--warning:#b54708;--ready:#027a48}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--surface-2);font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.loading,.loginShell{min-height:100vh;display:grid;place-items:center}.loginShell{background:linear-gradient(135deg,#101828,#1f2937 44%,#0f766e)}.loginPanel{width:min(420px,calc(100vw - 32px));padding:32px;background:var(--surface);border-radius:8px;box-shadow:0 24px 80px rgba(16,24,40,.24)}.brandMark{width:48px;height:48px;display:grid;place-items:center;color:#ffffff;background:var(--accent);border-radius:8px}.loginPanel h1{margin:20px 0;font-size:30px;letter-spacing:0}.appShell{min-height:100vh;display:grid;grid-template-columns:280px 1fr}.sidebar{min-height:100vh;padding:24px;color:#f9fafb;background:var(--nav);display:flex;flex-direction:column;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-weight:700}.identity{display:grid;grid-gap:4px;gap:4px;padding:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:8px}.identity span{color:#cbd5e1;font-size:13px}.projectNav{display:grid;grid-gap:6px;gap:6px}.projectNav button{width:100%;min-height:40px;padding:8px 10px;color:#e5e7eb;text-align:left;background:transparent;border:1px solid transparent;border-radius:6px}.projectNav button.selected,.projectNav button:hover{color:#ffffff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.14)}.workspace{width:min(100%,1720px);min-width:0;margin:0 auto;padding:28px;container-type:inline-size}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.topbar h1{margin:0;font-size:28px;letter-spacing:0}.topbar p{margin:6px 0 0;color:var(--muted)}.topActions{display:flex;gap:8px}.toolGrid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));grid-gap:14px;gap:14px;align-items:start;margin-bottom:18px}.playerPanel,.toolPanel,.videoTable{background:var(--surface);border:1px solid var(--line);border-radius:8px}.toolPanel{min-height:172px;padding:14px;display:grid;grid-gap:10px;gap:10px}.toolPanel.wide{grid-column:span 1}.panelTitle{display:flex;align-items:center;gap:8px;font-weight:700}input,select{width:100%;min-height:40px;padding:8px 10px;color:var(--ink);background:#ffffff;border:1px solid var(--line);border-radius:6px}.fileButton,.ghostButton,.ghostSmallButton,.primaryButton,.secondaryButton{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;border-radius:6px;border:1px solid transparent}.primaryButton{color:#ffffff;background:var(--accent)}.primaryButton:disabled{opacity:.55;cursor:not-allowed}.ghostSmallButton,.secondaryButton{min-height:34px;padding:7px 10px;background:#ffffff;border-color:var(--line);font-size:13px}.secondaryButton{color:var(--accent-2)}.ghostSmallButton{color:var(--muted)}.ghostSmallButton:disabled,.secondaryButton:disabled{opacity:.55;cursor:not-allowed}.ghostButton{margin-top:auto;color:#e5e7eb;background:transparent;border-color:rgba(255,255,255,.16)}.fileButton{color:var(--accent-2);border-color:var(--line);background:#f8fafc}.fileButton input{display:none}.iconButton{width:36px;height:36px;display:inline-grid;place-items:center;color:var(--ink);background:#ffffff;border:1px solid var(--line);border-radius:6px}.iconButton.danger{color:var(--danger)}.iconButton:disabled{color:var(--muted);background:#f8fafc;cursor:not-allowed;opacity:.65}.rowCtaButton{flex:1 0 100%;order:0;min-height:36px;width:100%;max-width:none;padding:7px 10px;color:#ffffff;background:var(--accent-2);border:1px solid var(--accent-2);border-radius:6px;font-size:13px;line-height:1.15;white-space:normal}.rowCtaButton:disabled{opacity:.6;cursor:not-allowed}.rowCtaButton.secondary{color:var(--accent-2);background:#ffffff}.notice,.noticeRow{color:var(--warning)}.noticeRow{background:#fffbeb;border:1px solid #fedf89;border-radius:8px}.noticeRow,.uploadNotice{margin-bottom:14px;padding:10px 12px}.uploadNotice{color:#1849a9;background:#eff8ff;border:1px solid #b2ddff;border-radius:8px}.progressTrack{width:100%;height:8px;overflow:hidden;background:#e4e7ec;border-radius:999px}.progressTrack span{display:block;height:100%;background:var(--accent-2)}.uploadList{display:grid;grid-gap:12px;gap:12px}.uploadProgress{display:grid;grid-gap:8px;gap:8px;min-width:0}.uploadProgressHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.uploadProgressHeader strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progressMeta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px}.projectChecks{max-height:92px;display:grid;grid-gap:6px;gap:6px;overflow:auto}.projectChecks label{display:flex;align-items:center;gap:8px;font-size:13px}.projectChecks input{width:16px;min-height:16px}.videoLayout{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;grid-gap:14px;gap:14px}.videoLayout.withPreview{grid-template-columns:minmax(0,1fr) clamp(360px,28vw,520px)}.videoTable{min-width:0;overflow:hidden}.tableControls{gap:12px;justify-content:space-between;padding:10px 14px;background:#ffffff;border-bottom:1px solid var(--line)}.bulkActions,.tableControls,.tableFilters{display:flex;align-items:center;flex-wrap:wrap}.bulkActions,.tableFilters{gap:10px}.bulkActions{flex:1 1 260px;min-height:34px;color:var(--muted);font-size:13px}.tableFilters{flex:1 1 320px;justify-content:flex-end;margin-left:auto}.downloadReadyPanel{margin:12px 14px;padding:10px 12px;color:#1849a9;background:#eff8ff;border:1px solid #b2ddff;border-radius:8px}.downloadReadyHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.downloadReadyHeader>div{min-width:0;display:grid;grid-gap:2px;gap:2px}.downloadReadyHeader strong{color:var(--ink);font-size:13px}.downloadReadyHeader span{color:var(--muted);font-size:12px}.filterControl,.toggleControl{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.filterControl select{min-width:168px;min-height:34px;padding:6px 30px 6px 10px;color:var(--text);background:#ffffff;border:1px solid var(--line);border-radius:6px;font:inherit}.toggleControl input{width:16px;min-height:16px}.tableHeader,.videoRow{display:grid;grid-template-columns:minmax(190px,1.7fr) minmax(112px,.8fr) minmax(128px,.8fr) minmax(78px,.45fr) minmax(164px,.9fr);align-items:center;grid-gap:12px;gap:12px;padding:12px 14px}.videoTable.withSelection .tableHeader,.videoTable.withSelection .videoRow{grid-template-columns:28px minmax(190px,1.7fr) minmax(112px,.8fr) minmax(128px,.8fr) minmax(78px,.45fr) minmax(164px,.9fr)}.selectionCell{display:inline-grid;place-items:center}.selectionCell input{width:16px;min-height:16px}.sortHeader{display:inline-flex;align-items:center;gap:5px;width:-moz-fit-content;width:fit-content;min-width:0;padding:0;color:inherit;background:transparent;border:0;font:inherit;text-transform:inherit;cursor:pointer}.sortHeader span{min-width:10px}.tableHeader{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;background:#f8fafc}.tableHeader,.videoRow{border-bottom:1px solid var(--line)}.videoRow{min-height:72px}.videoRow small,.videoRow strong{display:block;overflow-wrap:anywhere}.titleCell{display:grid;grid-gap:4px;gap:4px;justify-items:start}.assetBadge{width:-moz-fit-content;width:fit-content;padding:2px 7px;color:#344054;background:#f2f4f7;border:1px solid #d0d5dd;border-radius:999px;font-size:11px;font-weight:700;line-height:1.4}.assetBadge.zip{color:#7a2e0e;background:#fff4ed;border-color:#f7b27a}.assetBadge.image{color:#175cd3;background:#eff8ff;border-color:#84caff}.videoRow small{color:var(--muted)}.statusCell{min-width:0}.dateCell{color:var(--muted);font-size:13px}.sizeCell{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.status{width:-moz-fit-content;width:fit-content;padding:4px 8px;font-size:12px;border-radius:999px;background:#eef2ff;color:#3538cd}.status.Streamable{color:var(--ready);background:#ecfdf3}.status.Deleted,.status.ProcessingFailed,.status.UploadExpired,.status.UploadFailed{color:var(--danger);background:#fef3f2}.status.Uploading{color:var(--warning);background:#fffbeb}.actions{display:flex;gap:6px;flex-wrap:wrap;width:100%}.actions .iconButton{flex:1 1;order:1;width:auto;min-width:0;height:40px}.actionHint{flex:1 0 100%;min-height:36px;display:inline-flex;padding:7px 10px;background:#f8fafc;border:1px solid var(--line);border-radius:6px;font-size:13px;text-align:center}.actionHint,.emptyState{align-items:center;justify-content:center;color:var(--muted)}.emptyState{min-height:120px;display:flex;gap:8px}.playerPanel{position:-webkit-sticky;position:sticky;top:28px;align-self:start;justify-self:end;width:100%;max-width:520px;max-height:calc(100vh - 56px);overflow:auto;padding:14px;display:grid;grid-gap:12px;gap:12px;box-shadow:0 16px 48px rgba(16,24,40,.1)}.previewHeader{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px}.previewHeader .panelTitle{min-width:0;overflow:hidden}.previewCloseButton,.previewHeader .panelTitle svg{flex:0 0 auto}.imagePreview,.playerPanel video{width:100%;max-height:min(70vh,640px);object-fit:contain;background:#111827;border-radius:6px}@container (max-width: 1320px){.videoLayout.withPreview{grid-template-columns:minmax(0,1fr)}.playerPanel{position:fixed;top:24px;right:24px;bottom:24px;z-index:20;width:min(520px,calc(100vw - 48px));max-height:none;grid-template-rows:auto minmax(0,1fr);box-shadow:0 24px 80px rgba(16,24,40,.28)}.imagePreview,.playerPanel video{height:100%;max-height:none}}@container (max-width: 900px){.tableControls{display:grid;grid-template-columns:1fr}.bulkActions,.tableFilters{flex:none;justify-content:stretch;margin-left:0}.bulkActions .ghostSmallButton,.bulkActions .secondaryButton{flex:1 1 150px}.filterControl{flex:1 1 190px}.filterControl select{min-width:0}.downloadReadyHeader{align-items:stretch;flex-direction:column}.downloadReadyHeader .secondaryButton{width:100%}.tableHeader{display:none}.videoRow,.videoTable.withSelection .videoRow{position:relative;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;min-height:0;padding:16px}.videoTable.withSelection .videoRow{padding-left:54px}.videoRow>.selectionCell{position:absolute;top:18px;left:16px}.titleCell{gap:6px}.dateCell,.sizeCell,.statusCell{min-height:28px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink);font-size:13px}.dateCell:before,.sizeCell:before,.statusCell:before{content:attr(data-label);color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));grid-gap:8px;gap:8px;padding-top:10px;border-top:1px solid #eef2f7}.actionHint,.rowCtaButton{grid-column:1/-1}.actions .iconButton{width:100%;height:44px}.playerPanel{position:fixed;max-height:none;overflow:auto}}@media (max-width:1100px){.appShell{grid-template-columns:1fr}.sidebar{min-height:auto}.toolGrid,.videoLayout{grid-template-columns:1fr}}@media (max-width:720px){.sidebar,.workspace{padding:18px}.tableHeader{display:none}.videoRow{grid-template-columns:1fr}.playerPanel{top:12px;right:12px;bottom:12px;left:12px;width:auto;max-width:none}}