:root{--brand-from:#b57cff;--brand-to:#6fa8ff;--bg:#0b0b10;--bg-elevated:#14141c;--bg-card:#191922;--border:#2a2a36;--text:#d6d6e0;--text-muted:#8a8a98;--success:#6fdc8c;--error:#e8737c;--warning:#f5b544;--rank-admin-from:#ff5f6d;--rank-admin-to:#ffc371}*{box-sizing:border-box}body,html{padding:0;margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:inherit}.brand{font-weight:800;letter-spacing:.02em;background:linear-gradient(90deg,var(--brand-from),var(--brand-to));-webkit-background-clip:text;background-clip:text;color:transparent}.shell{max-width:960px;margin:0 auto;padding:24px 16px 64px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 0 32px;border-bottom:1px solid var(--border);margin-bottom:32px}.topbar-title{font-size:1.4rem}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:20px 24px;box-shadow:0 8px 24px rgb(0 0 0/.25)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px}.stat-label{color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.stat-value{font-size:1.6rem;font-weight:700;margin-top:4px}.button{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:10px;border:none;cursor:pointer;font-weight:600;text-decoration:none;background:linear-gradient(90deg,var(--brand-from),var(--brand-to));color:#0b0b10}.button.secondary{color:var(--text);border:1px solid var(--border)}.badge,.button.secondary{background:var(--bg-elevated)}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.8rem;font-weight:600;border:1px solid var(--border)}.badge.ok{color:var(--success);border-color:var(--success)}.badge.warn{color:var(--warning);border-color:var(--warning)}.badge.critical{color:var(--error);border-color:var(--error)}.form-row{display:flex;gap:12px;flex-wrap:wrap}.input{flex:1 1;min-width:200px;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);font-size:1rem;font-family:inherit}.input.input-code{letter-spacing:.08em;text-transform:uppercase}select.input{text-transform:none}.message{margin-top:12px;font-size:.95rem}.message.error{color:var(--error)}.muted{color:var(--text-muted)}