:root{color-scheme:light dark;--bg:#0b1020;--card:#151c30;--text:#edf2ff;--muted:#9aa8c7;--brand:#7357ff;--bad:#ff627a;--ok:#35d18a}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#19244a,var(--bg) 45%);color:var(--text);font:15px system-ui,sans-serif;min-height:100vh}header,main{max-width:1100px;margin:auto;padding:24px}header,header nav{display:flex;align-items:center;justify-content:space-between;gap:10px}header nav form{margin:0}h1,h2{margin:0 0 18px}.card,.login{background:var(--card);border:1px solid #ffffff18;border-radius:18px;padding:24px;margin-bottom:20px;box-shadow:0 18px 50px #0003}.narrow{max-width:620px}.center{display:grid;place-items:center}.login{width:min(420px,calc(100% - 32px))}.login p,label,.muted{color:var(--muted)}label{display:grid;gap:7px;margin:12px 0}input,select,button,.button{font:inherit;border-radius:10px;border:1px solid #ffffff24;padding:12px;background:#0c1326;color:var(--text)}button,.button{display:inline-block;background:var(--brand);border:0;font-weight:700;cursor:pointer;text-decoration:none}.ghost{background:transparent;border:1px solid #ffffff24}.row,.status{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.status{grid-template-columns:repeat(4,1fr);margin-bottom:20px}.pill{background:var(--card);padding:14px;border-radius:12px}.pill b{display:block;margin-top:4px}.job{display:grid;grid-template-columns:2fr 1fr 2fr auto;gap:12px;align-items:center;padding:14px 0;border-top:1px solid #ffffff15}.job small{color:var(--muted);overflow-wrap:anywhere}.bar{height:7px;background:#ffffff18;border-radius:8px;overflow:hidden}.bar i{display:block;height:100%;background:var(--brand)}.actions{display:flex;gap:6px}.actions button{padding:7px;font-size:12px}.error{color:var(--bad)}.success{color:var(--ok)}#message,#password-message,#user-message{min-height:20px}.user-create{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end}.user-create label{margin:0}.user-list{margin-top:20px;border-top:1px solid #ffffff18}.user-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;padding:12px 4px;border-bottom:1px solid #ffffff12}.user-head{color:var(--muted)}@media(max-width:700px){header,main{padding:16px}.status{grid-template-columns:1fr 1fr}.job,.row,.user-create{grid-template-columns:1fr}.user-row{grid-template-columns:1fr}.user-head{display:none}}
