:root{color-scheme:dark;--bg:#07120e;--panel:#10231b;--panel2:#153229;--line:#254a3c;--text:#edf8f3;--muted:#9eb8ad;--green:#00a86b;--cyan:#42dfc5;--red:#ff536f;--amber:#ffcd4a}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at top left,#123226 0,var(--bg) 42%);color:var(--text);font:15px/1.5 system-ui,-apple-system,sans-serif;min-height:100vh}
header{height:72px;padding:0 32px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#081710e8;position:sticky;top:0;backdrop-filter:blur(10px);z-index:2}
.brand{font-size:22px;font-weight:800;color:white;text-decoration:none;letter-spacing:.03em}.brand span{color:var(--green)}
nav{display:flex;align-items:center;gap:18px}nav form{display:inline}a{color:var(--cyan)}
main{max-width:1500px;margin:auto;padding:30px 32px 60px}footer{text-align:center;color:var(--muted);padding:25px}
.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.page-head h1{margin:.25rem 0}.muted{color:var(--muted)}
.card{background:linear-gradient(145deg,var(--panel),#0d1f18);border:1px solid var(--line);border-radius:14px;padding:22px;margin-bottom:22px;box-shadow:0 15px 35px #0003}
.login{max-width:430px;margin:9vh auto}.form-card{max-width:850px}.error{background:#491c29;border:1px solid var(--red);padding:12px 15px;border-radius:9px;margin-bottom:16px}
.stats{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.stat{min-width:115px;background:var(--panel2);border:1px solid var(--line);padding:14px;border-radius:12px}.stat strong{font-size:23px;display:block}.stat span{color:var(--muted);text-transform:capitalize}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}th{text-transform:uppercase;color:var(--muted);font-size:12px;letter-spacing:.06em}.table-wrap{overflow:auto}
.badge{display:inline-block;padding:4px 9px;border-radius:99px;background:#244538;text-transform:capitalize;color:#a7e9cf}.badge.failed,.badge.rejected,.badge.partial_failed{background:#51202b;color:#ffafbe}.badge.rights_hold{background:#493c18;color:#ffe58a}.badge.synced,.badge.complete{background:#124a42;color:#8ff9e8}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid .card{min-width:0}
label{display:block;font-weight:650;margin:0 0 17px}input,select,textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#071711;color:var(--text);font:inherit}textarea{resize:vertical}
button,.button{display:inline-block;background:var(--green);color:#03120c;border:0;border-radius:8px;padding:11px 16px;font-weight:750;text-decoration:none;cursor:pointer}.link{background:none;color:var(--cyan);padding:0}
.button.secondary{background:var(--panel2);color:var(--text);border:1px solid var(--line)}.actions{display:flex;gap:10px;flex-wrap:wrap}.notice{background:#123d31;border:1px solid var(--green);padding:12px 15px;border-radius:9px;margin-bottom:16px}.danger{background:#6a2332;color:#fff}.danger-zone{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
label.check{display:flex;gap:10px;align-items:flex-start}.check input{width:auto;margin:.3rem 0 0}.check small,label small{color:var(--muted);font-weight:400}
dl{display:grid;grid-template-columns:140px 1fr;gap:10px}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.mono{font-family:ui-monospace,monospace;font-size:13px}.empty{padding:20px}
.live-progress{display:flex;align-items:center;gap:24px;background:linear-gradient(135deg,#10271e,#0a1913)}
.progress-ring{--progress-angle:0deg;width:112px;height:112px;flex:0 0 112px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle closest-side,#10231b 77%,transparent 79% 100%),conic-gradient(var(--cyan) var(--progress-angle),#23453a 0);box-shadow:0 0 28px #42dfc522}
.progress-ring span{font-size:24px;font-weight:800}.progress-copy h2{margin:.15rem 0}.progress-copy p{margin:.2rem 0}.progress-eyebrow{color:var(--cyan);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.job-state{display:inline-block;margin-top:8px;padding:3px 9px;border-radius:99px;background:#31493f;text-transform:capitalize}.job-state.running{background:#124a42;color:#8ff9e8}.job-state.failed{background:#51202b;color:#ffafbe}.job-state.complete{background:#164d2d;color:#b6f6ca}
.upload-list{display:grid;gap:12px}.upload-item{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,2fr) minmax(240px,1.4fr);gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:10px;background:#ffffff05}.upload-item progress{width:100%;height:14px;accent-color:var(--green)}.upload-item span{color:var(--muted);overflow-wrap:anywhere}.upload-item a{color:var(--cyan)}.error-text{color:var(--red)!important}
.quick-url-card{max-width:none}.quick-url-card input[type="url"]{font-size:17px;padding:15px}.quick-confirm{padding:13px;border:1px solid var(--line);border-radius:9px;background:#0a1b14}.quick-note{margin:20px 0 0;padding-top:16px;border-top:1px solid var(--line)}.quick-grid{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr)}.agent-card code{color:var(--cyan)}.agent-list{list-style:none;padding:0}.agent-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.agent-list span{color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:center}.inline-form{display:inline-block;margin-left:8px}.inline-form button{padding:6px 10px}.error-text{display:inline-block;max-width:520px;margin-top:6px}
@media(max-width:800px){header,main{padding-left:18px;padding-right:18px}.grid,.quick-grid{grid-template-columns:1fr}.page-head{gap:15px;flex-direction:column}nav span{display:none}.section-head,.agent-list li{align-items:flex-start;flex-direction:column}}
@media(max-width:800px){.upload-item{grid-template-columns:1fr}.upload-item progress{height:18px}}
@media(max-width:600px){.live-progress{align-items:flex-start}.progress-ring{width:86px;height:86px;flex-basis:86px}.progress-ring span{font-size:19px}}
