.member-wrap { max-width: 900px; margin: 0 auto; padding: 2rem; }
.member-card {
  background: var(--white);
  border: 1px solid var(--mist);
  border-radius: var(--radius);
  padding: 1.5rem;
  margin-bottom: 1rem;
}
.member-card h2 { margin: 0 0 1rem; font-size: 1.1rem; }
.stat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem; }
.stat { background: var(--paper); border-radius: 8px; padding: 0.85rem; }
.stat .label { font-size: 0.8rem; color: var(--stone); }
.stat .value { font-size: 1.15rem; font-weight: 700; margin-top: 0.15rem; word-break: break-all; }
.server-list {
  margin: 0 0 1rem;
  padding: 0.85rem 1rem;
  background: var(--paper);
  border: 1px solid var(--mist);
  border-radius: 8px;
  font-size: 0.95rem;
}
.server-list .server-row + .server-row { margin-top: 0.5rem; }
.cred-box {
  font-family: ui-monospace, Consolas, monospace;
  background: #0B1F2E;
  color: #CFE8E6;
  padding: 1rem;
  border-radius: 8px;
  font-size: 0.9rem;
}
.field { margin-bottom: 1rem; }
.field label { display: block; font-weight: 600; margin-bottom: 0.35rem; font-size: 0.9rem; }
.field input { width: 100%; padding: 0.6rem 0.75rem; border: 1px solid var(--mist); border-radius: 8px; font-size: 1rem; }
.err { color: #9b1c2e; font-size: 0.9rem; }
.ok { color: #0d6b4d; font-size: 0.9rem; }
.auth-page { width: 100%; max-width: 520px; margin: 3rem auto; padding: 0 1rem; box-sizing: border-box; }
.auth-page .member-card { width: 100%; }
.turnstile-wrap { margin: 0.75rem 0 0.25rem; min-height: 0; }
