:root{--bg:#f6f7f9;--panel:#fff;--ink:#14171c;--mute:#5d6673;--line:#dde1e7;--accent:#0b6bcb;--ok:#177a3c;--warn:#a05a00;--bad:#b3261e}@media(prefers-color-scheme:dark){:root{--bg:#0f1216;--panel:#171b21;--ink:#e8ebef;--mute:#98a2b0;--line:#2a313b;--accent:#4c9aff;--ok:#4cc27a;--warn:#e0a040;--bad:#ff7b72}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.45 system-ui,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:6px 12px;cursor:pointer}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button:disabled{opacity:.5;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input,select,textarea{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:6px 8px}header.top{display:flex;gap:16px;align-items:center;padding:8px 16px;background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap}header.top nav{display:flex;gap:4px;flex:1;flex-wrap:wrap}header.top nav button[aria-current=page]{background:var(--accent);color:#fff;border-color:var(--accent)}main{padding:16px;max-width:1400px;margin:0 auto}.bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.bar input[type=search]{flex:1;min-width:200px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden;cursor:pointer;text-align:left;padding:0;display:block;width:100%}.card .th{aspect-ratio:16/9;background:#0003;display:flex;align-items:center;justify-content:center;color:var(--mute);font-size:12px}.card .th img{width:100%;height:100%;object-fit:cover}.card .meta{padding:8px}.card .t{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-block;font-size:11px;padding:1px 7px;border-radius:10px;border:1px solid var(--line);color:var(--mute)}.badge.approved,.badge.ready,.badge.succeeded,.badge.ok{color:var(--ok);border-color:var(--ok)}.badge.in_review,.badge.running,.badge.queued,.badge.ingesting{color:var(--warn);border-color:var(--warn)}.badge.rejected,.badge.failed{color:var(--bad);border-color:var(--bad)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px;margin-bottom:12px}.split{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:16px}@media(max-width:900px){.split{grid-template-columns:1fr}}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--mute);font-weight:500}video{width:100%;background:#000;border-radius:6px}.err{color:var(--bad)}.mute{color:var(--mute)}.tabs{display:flex;gap:4px;margin:12px 0}.tabs button[aria-selected=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}label{display:block;margin:8px 0 2px;color:var(--mute)}.progress{height:8px;background:var(--line);border-radius:4px;overflow:hidden}.progress>div{height:100%;background:var(--accent)}.login{max-width:340px;margin:12vh auto}.login input{width:100%}
