:root{color-scheme:light;--bg: #f5f7fb;--panel: #ffffff;--panel-soft: #f0f4fa;--panel-strong: #e8eef8;--text: #172033;--muted: #60708a;--line: #dbe3ef;--line-soft: #e3e9f3;--primary: #1d6fcb;--primary-soft: #eaf2ff;--primary-text: #1558a8;--success-bg: #dcfce7;--success-text: #166534;--danger-bg: #fee2e2;--danger-text: #991b1b;--warn-bg: #fff4d6;--warn-text: #8a5a00;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}:root[data-theme=dark]{color-scheme:dark;--bg: #0b1120;--panel: #111827;--panel-soft: #1f2937;--panel-strong: #263244;--text: #e5edf8;--muted: #9aa8bd;--line: #253149;--line-soft: #2d3a52;--primary: #60a5fa;--primary-soft: #172554;--primary-text: #93c5fd;--success-bg: #123521;--success-text: #86efac;--danger-bg: #3b1115;--danger-text: #fca5a5;--warn-bg: #33250b;--warn-text: #facc15}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary),transparent 86%),transparent 45%),var(--bg)}.login-panel{width:min(420px,100%);display:grid;gap:18px;padding:28px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 18px 50px color-mix(in srgb,#000000,transparent 86%)}.login-panel h1{margin:4px 0 0;font-size:28px}.login-form{display:grid;gap:14px}.login-form button{width:100%}.login-error{margin:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--danger-text),transparent 55%);border-radius:7px;background:var(--danger-bg);color:var(--danger-text);font-weight:700}.theme-toggle{justify-self:start}button,input,select{font:inherit}button{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:7px;padding:8px 12px;cursor:pointer}button:hover:not(:disabled){border-color:var(--primary)}button:disabled{cursor:not-allowed;opacity:.55}button.primary{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:750}button.danger-btn{border-color:color-mix(in srgb,var(--danger-text),transparent 50%);background:var(--danger-bg);color:var(--danger-text);font-weight:750}input,select{width:100%;border:1px solid var(--line);border-radius:7px;padding:8px 10px;background:var(--panel);color:var(--text)}label{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:650}.field-hint{display:inline-flex;width:fit-content;border-radius:999px;padding:3px 8px;background:var(--primary-soft);color:var(--primary-text);font-size:11px;font-weight:800}a{color:var(--primary);text-decoration:none;font-weight:650}small{color:var(--muted)}.topbar h2,.sidebar h1{margin:0}.eyebrow{margin:0;color:var(--primary);font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.app-shell{min-height:100vh;display:grid;grid-template-columns:232px minmax(0,1fr)}.sidebar{display:flex;flex-direction:column;gap:8px;border-right:1px solid var(--line);background:var(--panel);padding:22px;position:sticky;top:0;height:100vh}.nav{position:relative;display:flex;align-items:center;gap:10px;text-align:left;border-color:transparent;background:transparent;color:var(--muted);font-weight:750;padding:10px}.nav:hover:not(:disabled){background:var(--panel-soft)}.nav-marker{display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid var(--line);border-radius:7px;background:var(--panel-soft);color:var(--muted);font-size:12px;font-weight:900}.nav.active{border-color:color-mix(in srgb,var(--primary),transparent 35%);background:linear-gradient(90deg,var(--primary-soft),transparent 120%);color:var(--primary-text);font-weight:850;box-shadow:inset 3px 0 0 var(--primary)}.nav.active .nav-marker{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-text)}.chip.active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-text);font-weight:750}.nav.muted{margin-top:auto;color:var(--muted)}.content{min-width:0;display:grid;align-content:start;gap:14px;padding:22px}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:center}.topbar p,.status-text{margin:6px 0 0;color:var(--muted)}.top-actions,.bulkbar,.filters,.group-form,.pager,.quickbar{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px}.filters-panel{display:grid;gap:12px}.section-title{flex:1 0 100%;display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.section-title strong{font-size:14px}.section-title span{color:var(--muted);font-size:13px}.stats-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}.stat-card{display:grid;gap:8px;min-height:86px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.stat-card span{color:var(--muted);font-size:12px;font-weight:750}.stat-card strong{font-size:26px;line-height:1}.stat-card.primary{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-text)}.stat-card.success{border-color:color-mix(in srgb,var(--success-text),transparent 72%);background:var(--success-bg);color:var(--success-text)}.stat-card.warning{border-color:color-mix(in srgb,var(--warn-text),transparent 72%);background:var(--warn-bg);color:var(--warn-text)}.stat-card.danger{border-color:color-mix(in srgb,var(--danger-text),transparent 72%);background:var(--danger-bg);color:var(--danger-text)}.filters label{min-width:160px;flex:1 1 160px}.filters .wide-field{flex:2 1 320px}.filters .rows-field{flex:0 1 120px}.quick-filter-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:10px;border-top:1px solid var(--line-soft)}.quick-filter-row>span{color:var(--muted);font-size:12px;font-weight:850;text-transform:uppercase}.bulkbar input,.bulkbar select{max-width:240px}.downloadbar{border-color:var(--primary)}.danger-panel{border-color:color-mix(in srgb,var(--danger-text),transparent 55%)}.bulk-panel{display:grid;gap:10px}.compact-actions{align-items:center}.selection-bar{position:sticky;top:0;z-index:4;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--primary);border-radius:8px;background:color-mix(in srgb,var(--panel),var(--primary-soft) 42%);box-shadow:0 12px 32px #0f172a1f}.selection-bar div{display:grid;gap:3px}.selection-bar span{color:var(--muted);font-size:13px}.chip{border-radius:999px}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip.static{display:inline-flex;align-items:center;border:1px solid var(--line);background:var(--panel-soft);color:var(--muted);cursor:default;padding:7px 10px;font-size:13px;font-weight:750}.muted{color:var(--muted);margin:10px 0 0;line-height:1.45}.table-panel{overflow:auto}.table-meta{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px;color:var(--muted);font-size:13px;text-align:right}.inline-actions{display:inline-flex;align-items:center;gap:8px;color:var(--text)}table{width:100%;border-collapse:collapse;min-width:1180px}.videos-table{min-width:1560px}.jobs-table,.queue-table,.channels-table{min-width:1120px}.channels-table{min-width:1480px;table-layout:fixed}.channels-table .channel-col-select{width:44px}.channels-table .channel-col-name{width:260px}.channels-table .channel-col-platform{width:82px}.channels-table .channel-col-group{width:170px}.channels-table .channel-col-status{width:140px}.channels-table .channel-col-number{width:82px}.channels-table .channel-col-date{width:132px}.channels-table .channel-col-job{width:128px}.channels-table .channel-col-tags{width:180px}.channels-table .channel-col-actions{width:260px}th,td{border-bottom:1px solid var(--line-soft);padding:10px;text-align:left;vertical-align:top;font-size:14px}th{position:sticky;top:0;z-index:1;background:var(--panel-soft);color:var(--text);font-size:13px}tr.selected-row td{background:var(--primary-soft)}tr.deleted-row td{opacity:.72}.videos-table tbody tr{cursor:pointer;-webkit-user-select:none;user-select:none}.videos-table tbody tr:not(.selected-row):hover td{background:color-mix(in srgb,var(--panel),var(--primary-soft) 35%)}@media(min-width:1100px){.videos-table th:first-child,.videos-table td:first-child{position:sticky;left:0;z-index:2;width:44px;min-width:44px;background:var(--panel)}.videos-table th:nth-child(2),.videos-table td:nth-child(2){position:sticky;left:44px;z-index:2;background:var(--panel);box-shadow:1px 0 0 var(--line-soft)}.videos-table th:first-child,.videos-table th:nth-child(2){z-index:3;background:var(--panel-soft)}.videos-table tr.selected-row td:first-child,.videos-table tr.selected-row td:nth-child(2){background:var(--primary-soft)}.videos-table tbody tr:not(.selected-row):hover td:first-child,.videos-table tbody tr:not(.selected-row):hover td:nth-child(2){background:color-mix(in srgb,var(--panel),var(--primary-soft) 35%)}}.sort{border:0;background:transparent;padding:0;color:inherit;font-weight:800}.sort.active{color:var(--primary)}.video-cell{display:grid;grid-template-columns:72px minmax(220px,1fr);gap:10px;min-width:340px}.video-cell.compact{grid-template-columns:58px minmax(220px,1fr)}.video-cell img{width:72px;aspect-ratio:9 / 16;object-fit:cover;border-radius:6px;background:var(--panel-strong)}.video-cell.compact img{width:58px}.video-cell strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.video-cell div{display:grid;gap:5px}.channel-stats{grid-template-columns:repeat(7,minmax(120px,1fr))}.channel-filters label{min-width:150px}.channels-table th,.channels-table td{vertical-align:middle}.channels-table th{height:40px}.channels-table td{padding:8px 10px;height:74px}.channels-table tbody tr:not(.selected-row):hover td{background:color-mix(in srgb,var(--panel),var(--primary-soft) 22%)}.channel-select-cell{text-align:center}.channel-name-cell{display:grid;align-content:center;gap:4px;min-width:0}.channel-name-cell strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.25}.channel-name-cell small,.tags-cell small{display:block;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.35}.platform-pill{display:inline-flex;align-items:center;height:24px;border-radius:999px;padding:0 9px;background:var(--panel-strong);color:var(--text);font-size:12px;font-weight:800}.channel-control-cell{min-width:0}.channel-controls{display:grid;align-content:center;gap:5px;min-width:0}.channel-controls .group-badge,.channel-controls .badge{max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis}.compact-select{width:100%;min-width:0;height:28px;padding:0 26px 0 9px;font-size:12px;line-height:28px;border-radius:7px}.number-cell{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.date-cell{white-space:nowrap;font-variant-numeric:tabular-nums}.channel-job-cell{display:grid;align-content:center;gap:5px;min-width:0}.tags-cell{min-width:0}.channel-actions-cell{position:relative;overflow:visible}.channel-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}.channel-row-actions>button,.row-actions-menu>summary{min-height:30px;padding:6px 9px;font-size:12px;white-space:nowrap}.row-actions-menu{position:relative}.row-actions-menu>summary{display:inline-flex;align-items:center;list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--text);font-weight:750}.row-actions-menu>summary::-webkit-details-marker{display:none}.row-actions-menu[open]>summary{border-color:var(--primary)}.row-actions-menu>div{position:absolute;right:0;top:calc(100% + 6px);z-index:8;display:grid;gap:6px;min-width:160px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 16px 42px #00000047}.row-actions-menu>div>a,.row-actions-menu>div>button{width:100%;justify-content:center;text-align:center;white-space:nowrap}@media(min-width:1100px){.channels-table th:first-child,.channels-table td:first-child{position:sticky;left:0;z-index:2;background:var(--panel)}.channels-table th:nth-child(2),.channels-table td:nth-child(2){position:sticky;left:44px;z-index:2;background:var(--panel);box-shadow:1px 0 0 var(--line-soft)}.channels-table th:first-child,.channels-table th:nth-child(2){z-index:3;background:var(--panel-soft)}.channels-table tr.selected-row td:first-child,.channels-table tr.selected-row td:nth-child(2){background:var(--primary-soft)}.channels-table tr.deleted-row td:first-child,.channels-table tr.deleted-row td:nth-child(2){background:var(--panel)}}.danger-text{color:var(--danger-text)!important}.badge{display:inline-flex;border-radius:999px;padding:4px 9px;background:var(--panel-strong);color:var(--muted);font-weight:750;font-size:12px;white-space:nowrap}.badge.new,.badge.none,.badge.active{background:var(--panel-strong);color:var(--muted)}.badge.downloaded,.badge.used,.badge.completed{background:var(--success-bg);color:var(--success-text)}.badge.failed,.badge.ignored,.badge.completed_with_errors,.badge.deleted,.badge.archived{background:var(--danger-bg);color:var(--danger-text)}.badge.queued,.badge.claimed,.badge.retry_wait,.badge.shortlisted,.badge.running{background:var(--warn-bg);color:var(--warn-text)}.group-badge{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.group-badge i{width:10px;height:10px;border-radius:999px}.empty{text-align:center;color:var(--muted)}.empty-state{display:grid;justify-items:center;gap:10px;padding:28px}.empty-state strong{color:var(--text)}.group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.group-card{border:1px solid var(--line-soft);border-radius:8px;padding:14px}.group-card.archived{opacity:.7}.group-card>span:first-child{display:block;width:32px;height:8px;border-radius:999px;margin-bottom:10px}.group-card p{margin:6px 0 0;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:6px;min-width:120px}.stale-note{display:block;margin-top:4px;color:var(--warn-text);font-weight:750}.error-snippet{display:block;max-width:220px;margin-top:4px;color:var(--danger-text);overflow-wrap:anywhere}.error-cell{max-width:260px}.error-details{max-width:100%;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.error-details summary{color:var(--primary);cursor:pointer;font-weight:750}.agent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.agent-card{display:grid;gap:8px;border:1px solid var(--line-soft);border-radius:8px;padding:12px;background:var(--panel)}.agent-card.active{border-color:color-mix(in srgb,var(--success-text),transparent 68%)}.agent-card div{display:flex;align-items:center;justify-content:space-between;gap:10px}.agent-card p{margin:0;color:var(--muted)}.agent-card .agent-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.agent-card label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.agent-card input,.agent-card select{width:100%}.maintenance-table{min-width:960px}.maintenance-table td strong,.maintenance-table td small{display:block}.maintenance-table td small{margin-top:4px;max-width:420px;line-height:1.35}.maintenance-table input[type=number]{width:110px;display:inline-block;margin-right:8px}.maintenance-actions input{min-width:280px;flex:1 1 280px}.danger-btn{border-color:var(--danger-text);background:var(--danger-bg);color:var(--danger-text);font-weight:800}.danger-btn:hover:not(:disabled){border-color:var(--danger-text)}.alert-card{border:1px solid var(--line);border-radius:8px;padding:12px;display:grid;gap:8px}.alert-card.ok{border-color:color-mix(in srgb,var(--success-text),transparent 70%);background:var(--success-bg);color:var(--success-text)}.alert-card.warning{border-color:color-mix(in srgb,var(--warn-text),transparent 70%);background:var(--warn-bg);color:var(--warn-text)}.alert-card div{display:flex;flex-wrap:wrap;gap:8px}.alert-card div span{border:1px solid color-mix(in srgb,currentColor,transparent 74%);border-radius:999px;padding:4px 8px;font-size:12px;font-weight:750}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;border-right:0;border-bottom:1px solid var(--line)}.sidebar>div{flex:1 0 100%}.nav{flex:1 1 120px}.content{padding:14px}.topbar{align-items:stretch;flex-direction:column}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.selection-bar{top:0}}@media(max-width:640px){.stats-grid{grid-template-columns:1fr}.bulkbar input,.bulkbar select,.filters label{min-width:100%;max-width:none}}
