.member-approval { margin-top:24px; padding:24px; border:1px solid #343d50; border-radius:16px; background:#171d29; color:#eef2fa; }
.member-approval h2 { font-size:23px; line-height:1.4; margin:12px 0; }
.member-approval p { line-height:1.7; color:#acb8ce; font-size:14px; }
.account-eyebrow { font-size:12px; letter-spacing:.12em; color:#96b6ff; font-weight:700; }
.approval-code { display:block; font-size:40px; letter-spacing:.16em; margin:24px 0; color:#fff; }
.secondary-action { width:100%; min-height:48px; padding:12px; margin-top:10px; border:1px solid #3b4963; border-radius:9px; background:#202a3c; color:#dae6ff; font:inherit; cursor:pointer; }
.member-approval[hidden], #memberPasswordForm[hidden], #memberLoginForm[hidden] { display:none !important; }
.member-accounts { max-width:1040px; }
.member-accounts .account-card { border:1px solid var(--border,#334155); background:var(--panel,#171f2c); border-radius:14px; padding:24px; margin-top:18px; }
.member-accounts h3 { margin:0 0 12px; font-size:20px; }
.member-accounts p { line-height:1.7; color:var(--muted,#9faec4); }
.member-accounts form { display:flex; gap:10px; flex-wrap:wrap; margin:18px 0; }
.member-accounts input[type=search] { flex:1; min-width:160px; padding:13px; border:1px solid #45536b; border-radius:8px; background:transparent; color:inherit; }
.member-accounts button { min-height:42px; border:1px solid #45536b; border-radius:8px; padding:9px 14px; color:inherit; background:var(--surface,#25334a); cursor:pointer; }
.member-accounts button:disabled { opacity:.45; cursor:default; }
.member-accounts .account-row { padding:18px 0; border-top:1px solid #3b475b55; }
.member-accounts .account-row strong { display:block; font-size:17px; }
.member-accounts .account-row p { margin:6px 0; }
.member-accounts .account-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:12px; }
.member-accounts .account-actions label { display:flex; align-items:center; gap:8px; width:100%; }
.member-accounts .account-code { color:#76a4ff; font-size:22px; letter-spacing:.12em; }
.member-accounts .account-qr { display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.member-accounts [data-member-qr] { width:170px; height:170px; background:white; border:10px solid white; border-radius:8px; }
.member-accounts a { color:#84afff; }
.member-accounts [hidden] { display:none!important; }
@media(max-width:600px) { .member-accounts .account-card { padding:18px; } .member-approval { padding:20px; } }
