/* public/style.css — agent-login 同款暗色基调 */
body{font:14px system-ui;margin:2rem;background:#111;color:#eee}
h1{font-size:1.2rem;margin:0}h2{font-size:1.05rem;margin:1.6rem 0 .6rem;color:#9cf}
header{display:flex;align-items:center;gap:1rem}header h1{margin-right:auto}
header button,header a{padding:.5rem 1rem;border-radius:4px;border:1px solid #555;background:#222;color:#eee;text-decoration:none;cursor:pointer}
table{border-collapse:collapse;width:100%;margin:.4rem 0}th,td{border:1px solid #333;padding:.4rem .5rem;text-align:left;vertical-align:middle}
th{color:#aaa;white-space:nowrap}
.badge{padding:2px 8px;border-radius:10px;white-space:nowrap}
.badge.queued{background:#444}.badge.dispatched{background:#235}.badge.downloading{background:#355}
.badge.uploading{background:#437}.badge.done{background:#163}.badge.failed{background:#a33}.badge.expired{background:#883}
.cards{display:flex;gap:1rem;flex-wrap:wrap}
.card{min-width:9em;border:1px solid #333;border-radius:8px;padding:.7rem 1rem;background:#181818}
.card b{display:block;font-size:1.5rem}.card span{color:#999}
.card.dead{opacity:.45}
.prog{background:#222;border:1px solid #333;border-radius:4px;height:10px;min-width:6em;overflow:hidden}
.prog>i{display:block;height:100%;background:#2a7}
.prog.done>i{background:#2a7}.prog.failed>i{background:#a33}
.card.login{max-width:320px;margin:4rem auto;display:flex;flex-direction:column;gap:1rem}
input,button,select,textarea{padding:.5rem;border-radius:4px;border:1px solid #555;background:#222;color:#eee}
input[type=number]{width:5em}
#task-form{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}
#task-form #f-url{flex:1;min-width:20em}
.err{color:#f88}.hint{color:#999;font-size:12.5px}
.badge.healthy{background:#163}.badge.unhealthy{background:#a33}.badge.unknown{background:#444}
.badge.unknown-codes{background:#883}
.badge.published{background:#163}.badge.failed{background:#a33}.badge.expired{background:#883}
.badge.conflicted{background:#865}.badge.running{background:#355}.badge.pending{background:#444}
.warn{color:#fc6;background:#443a18;border-radius:4px;padding:.3rem .6rem;margin:.3rem 0}
.hcard{border:1px solid #333;border-radius:8px;padding:.7rem 1rem;background:#181818;margin:.6rem 0}
.hhead{display:flex;align-items:center;gap:.8rem}.hhead b{font-size:1rem}
.hform{display:flex;gap:.6rem;flex-wrap:wrap;margin:.5rem 0}
.hform label{display:flex;flex-direction:column;gap:.2rem;font-size:12.5px;color:#999}
.hform textarea{flex:1;min-width:18em}
.hbtns{display:flex;gap:.6rem;margin:.4rem 0}
.hcard table{margin:.4rem 0 0}
.title-cell{max-width:24em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
dialog{background:#181818;color:#eee;border:1px solid #444;border-radius:8px;padding:1.2rem 1.5rem;max-width:36em}
dialog::backdrop{background:#0008}
pre{background:#111;border:1px solid #333;border-radius:6px;padding:.6rem .8rem;overflow:auto}
code{font:12.5px/1.55 ui-monospace,Menlo,Consolas,monospace;background:#222;border:1px solid #333;border-radius:4px;padding:0 .3em}
a{color:#9cf}
