:root{color-scheme:dark}
body{font-family:system-ui,sans-serif;background:#0f1115;color:#e6e8ec;margin:0;padding:24px;max-width:860px;margin-inline:auto}
h1{font-size:1.4rem}h1 span{color:#8b93a3;font-weight:400;font-size:.95rem}
.card{background:#171a21;border:1px solid #262b36;border-radius:12px;padding:16px;margin:16px 0}
table{width:100%;border-collapse:collapse;font-size:.92rem}
th,td{text-align:left;padding:10px 8px;border-bottom:1px solid #262b36;word-break:break-all}
th{color:#8b93a3;font-weight:600;font-size:.8rem;text-transform:uppercase}
code{background:#0f1115;padding:3px 8px;border-radius:6px;font-size:.88rem}
button{background:#2f6fed;border:0;color:#fff;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:.9rem}
button.ghost{background:#262b36}
button.danger{background:#a02a2a}
button:hover{filter:brightness(1.12)}
button:disabled{opacity:.5;cursor:default}
input{width:100%;box-sizing:border-box;background:#0f1115;border:1px solid #2f3542;color:#e6e8ec;padding:10px;border-radius:8px;font-size:.92rem;margin:6px 0}
.row{display:flex;gap:10px;flex-wrap:wrap}.row>div{flex:1;min-width:200px}
label{font-size:.82rem;color:#8b93a3}
.empty{color:#8b93a3;padding:12px 0}
#login{max-width:360px;margin:12vh auto}
.err{color:#ff7b7b;font-size:.85rem;min-height:1.2em}
.ok{color:#7bff9e;font-size:.85rem;min-height:1.2em}
.topbar{display:flex;justify-content:space-between;align-items:center}
.hint{color:#8b93a3;font-size:.82rem;line-height:1.5}
.newaddr{background:#0f1115;border:1px dashed #2f6fed;border-radius:8px;padding:12px;margin-top:10px}
