/* Promoter pages (2026-10-22, promoter access phase 1). Mobile first. */
.pm{max-width:520px;margin:40px auto;padding:0 16px;box-sizing:border-box;color:var(--text,#F4F1EA)}
.pm *{box-sizing:border-box}
.pm-card{padding:24px;border-radius:16px;background:var(--surface,#121215);border:1px solid var(--card-border,rgba(255,255,255,0.08));display:flex;flex-direction:column;gap:18px}
.pm-title{margin:0;font-size:1.6rem;line-height:1.2}
.pm-text{margin:0;color:var(--text-muted,#B8B3AA);line-height:1.5}
.pm-form{display:flex;flex-direction:column;gap:14px;margin:0}
.pm-label{display:flex;flex-direction:column;gap:6px;font-size:.92rem;color:var(--text-muted,#C9C9CF)}
.pm-input{min-height:48px;padding:0 14px;border-radius:10px;border:1px solid rgba(255,255,255,0.18);background:rgba(0,0,0,0.35);color:var(--text,#F4F1EA);font:inherit;font-size:16px;width:100%}
.pm-input:focus{outline:2px solid var(--accent,#E2B13C);outline-offset:1px}
.pm-check{display:flex;align-items:flex-start;gap:10px;min-height:44px;font-size:.92rem;color:var(--text-muted,#C9C9CF);line-height:1.4}
.pm-check input{width:22px;height:22px;margin:0;flex:0 0 22px;accent-color:var(--accent,#E2B13C)}
.pm-error{color:#FF8C8C;font-size:.88rem}
.pm-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border:0;border-radius:12px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;background:var(--accent,#E2B13C);color:var(--on-accent,#141414);width:100%}
.pm-btn--ghost{background:transparent;border:1px solid rgba(255,255,255,0.22);color:var(--text,#F4F1EA)}
.pm-status{padding:16px;border-radius:12px;display:flex;flex-direction:column;gap:6px;line-height:1.5}
.pm-status--ok{background:rgba(64,190,120,0.12);border:1px solid rgba(64,190,120,0.35)}
.pm-status--err{background:rgba(255,107,107,0.10);border:1px solid rgba(255,107,107,0.35)}
.pm-status strong{font-size:1.05rem}
.pm-flash{padding:12px 14px;border-radius:10px;background:rgba(255,107,107,0.10);border:1px solid rgba(255,107,107,0.35)}
.pm-small{font-size:.85rem;color:var(--text-muted,#A1A1AA);margin:0}
.pm-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
@media (max-width:640px){.pm{margin:20px auto}.pm-card{padding:18px}.pm-title{font-size:1.4rem}}
