:root{color-scheme:light;--bg: #f6f7f9;--card: #ffffff;--ink: #1a202c;--muted: #64748b;--line: #e2e8f0;--accent: #2563eb;--ok: #16a34a;--warn: #d97706;--bad: #dc2626}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.muted{color:var(--muted)}.small{font-size:12px}.error{color:var(--bad)}button{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:8px 14px;font-size:14px;cursor:pointer}button:disabled{opacity:.5;cursor:default}button.link{background:none;color:var(--accent);padding:0;font-size:12px;text-decoration:underline}.gate{min-height:100vh;display:flex;align-items:center;justify-content:center}.gate-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:32px;width:320px;text-align:center}.gate-card h1{margin:0 0 4px}.gate-card form{display:flex;flex-direction:column;gap:10px;margin-top:16px}.gate-card input{padding:10px;border:1px solid var(--line);border-radius:6px;font-size:14px}.shell{max-width:1100px;margin:0 auto;padding:24px}header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px}.panel{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.panel-head h2{margin:0;font-size:18px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:8px 10px;border-top:1px solid var(--line);vertical-align:top}thead th{border-top:none;color:var(--muted);font-weight:600;font-size:12px}.pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;text-transform:capitalize}.pill-queued{background:#f1f5f9;color:var(--muted)}.pill-running{background:#fef3c7;color:var(--warn)}.pill-succeeded{background:#dcfce7;color:var(--ok)}.pill-failed{background:#fee2e2;color:var(--bad)}.pill-cancelled{background:#f1f5f9;color:var(--muted)}.bar{width:120px;height:6px;border-radius:3px;background:var(--line);overflow:hidden;margin-bottom:2px}.bar-fill{height:100%;background:var(--accent);transition:width .4s}.nav{display:flex;gap:14px;align-items:baseline}.nav .link{font-size:14px;text-decoration:none;color:var(--muted)}.nav .link.active{color:var(--accent);font-weight:600}.crumbs{display:flex;gap:12px;align-items:center;margin-bottom:12px}.crumbs h1{margin:0;font-size:22px}.steps{display:flex;gap:6px;margin-bottom:14px;flex-wrap:wrap}.step{padding:4px 12px;border-radius:999px;font-size:12px;background:var(--card);border:1px solid var(--line);color:var(--muted)}.step.done{border-color:var(--ok);color:var(--ok)}.step.active{background:var(--accent);border-color:var(--accent);color:#fff}.inline-form{display:flex;gap:8px;margin-bottom:14px}.inline-form input,.controls input,.controls select,select{padding:8px 10px;border:1px solid var(--line);border-radius:6px;font-size:14px;background:#fff}.inline-form input{flex:1}.stats{display:flex;gap:10px;margin-bottom:12px;flex-wrap:wrap}.stat{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 16px;min-width:96px}.stat.clickable{cursor:pointer}.stat.clickable:hover{border-color:var(--accent)}.stat-value{font-size:20px;font-weight:700}.stat.ok .stat-value{color:var(--ok)}.stat.warn .stat-value{color:var(--warn)}.stat.bad .stat-value{color:var(--bad)}.stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.grid-controls .controls{display:flex;gap:8px}.grid-controls .controls input{width:220px}table.grid td{font-size:13px}.thumb-cell{width:52px}.thumb{width:44px;height:44px;object-fit:cover;border-radius:6px;border:1px solid var(--line);display:block}.noimg{width:44px;height:44px;border-radius:6px;background:repeating-linear-gradient(45deg,#f1f5f9,#f1f5f9 6px,#e2e8f0 6px,#e2e8f0 12px);border:1px solid var(--line)}.name-cell{max-width:260px}.pager{display:flex;gap:16px;align-items:center;justify-content:center;padding-top:12px}.orphan-strip{display:flex;gap:10px;flex-wrap:wrap}.orphan-card{display:flex;flex-direction:column;gap:4px;align-items:center;text-decoration:none;color:var(--ink);width:90px}.orphan-card img{width:80px;height:80px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
