.consent-group{display:grid;gap:13px;margin:2px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:#f8fbfc}
.consent-group legend{padding:0 7px;font-size:13px;font-weight:800;color:var(--ink)}
.consent-group .check-row{color:#435765}
.consent-group .check-row a{color:var(--accent2);font-weight:700}
.consent-group .check-row b{color:var(--danger);font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.optional-consent{background:#fff;border-style:dashed}
.optional-consent legend{color:var(--accent2)}
.account-required{margin-bottom:18px}

.legal-page{max-width:900px;margin:0 auto;line-height:1.72}
.legal-page h1{font-size:clamp(32px,5vw,46px);line-height:1.08;letter-spacing:-.035em;margin:12px 0 8px}
.legal-page h2{font-size:21px;margin:32px 0 8px}
.legal-page p{color:#435765;margin:0 0 14px}
.legal-page a{color:var(--accent2);font-weight:600}
.legal-page .legal-meta{font-size:12px;color:var(--muted);margin-bottom:26px}

.admin-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.member-control-note{margin-bottom:18px}
.member-control-table{min-width:1280px}
.member-control-table th:nth-child(1){width:180px}
.member-control-table th:nth-child(2){width:125px}
.member-control-table th:nth-child(3){width:280px}
.member-control-table th:nth-child(4){width:170px}
.member-control-table th:nth-child(5){width:105px}
.member-control-table th:nth-child(6){width:270px}
.member-status-suspended td{background:#fffafa}
.status-badge{display:inline-flex;align-items:center;width:max-content;margin-top:7px;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:800;line-height:1.1}
.status-badge.active{background:#eaf7f2;color:var(--success)}
.status-badge.suspended{background:#fff1f0;color:var(--danger)}
.status-badge.warning{background:#fff8df;color:#745c12}
.member-status-form{display:grid;gap:8px;min-width:230px}
.member-status-form label{display:grid;gap:5px}
.member-status-form label>span{font-size:11px;font-weight:700;color:var(--muted)}
.member-status-form textarea{width:100%;resize:vertical;padding:9px 10px;border:1px solid #cbd8de;border-radius:9px;font:inherit;line-height:1.4;background:#fff}
.member-status-form textarea:focus{outline:3px solid rgba(26,135,152,.14);border-color:var(--accent)}
.btn.small{padding:9px 12px;font-size:12px}
.protected-account{display:inline-flex;padding:7px 9px;border-radius:9px;background:var(--soft);color:var(--muted);font-size:11px;font-weight:700}
.suspension-reason{margin-bottom:8px;padding:8px;border-radius:8px;background:#fff1f0;color:#7e2f28;font-size:11px;line-height:1.45}
#registered-members{scroll-margin-top:96px}

@media(max-width:900px){.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.admin-stat-grid{grid-template-columns:1fr}.consent-group{padding:15px}.legal-page{padding:23px}.legal-page h2{font-size:19px}}
