*{box-sizing:border-box}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,sans-serif;margin:0;background:#0b0b0c;color:#e6e6e6}
a{color:#9ad}a:hover{color:#bde}input,button{width:100%;padding:10px;margin:6px 0;background:#17181b;color:#e6e6e6;border:1px solid #333;border-radius:8px}
button{cursor:pointer}button.danger{background:#3a0c0c;border-color:#611}.container{max-width:920px;margin:0 auto;padding:24px}
.container.small{max-width:420px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 0}.brand a{color:#fff;text-decoration:none;font-weight:700}
nav a{margin-left:14px;color:#ddd}.alert{padding:10px 12px;border-radius:8px;margin:12px 0}.alert.error{background:#441b1b;border:1px solid #822}
.alert.success{background:#1b4420;border:1px solid #282}.panel{background:#141519;border:1px solid #2a2c33;border-radius:12px;padding:16px;margin:18px 0}
.grid{display:grid;grid-template-columns:1fr 1fr; gap:12px}.grid.small{grid-template-columns:1fr}.grid label{align-self:end;color:#bbb}
table{width:100%;border-collapse:collapse;margin-top:10px}th,td{border-bottom:1px solid #2a2c33;padding:8px;vertical-align:top}th{background:#111}
.ellipsis{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}footer{margin:24px 0 8px;color:#888;font-size:12px}
