.member-page { padding: 160px 20px 80px; min-height: 80vh; background: #f8fafc; }
.member-card { max-width: 540px; margin: 0 auto; padding: 36px; border: 1px solid #e2e8f0; border-radius: 24px; background: #fff; box-shadow: 0 12px 36px #0f172a08; }
.member-card h1 { font-size: 1.8rem; text-align: center; margin: 0 0 18px; }
.member-description { color: #64748b; text-align: center; margin: 0 0 24px; line-height: 1.7; }
.member-card .btn-main, .member-actions a { display: flex; justify-content: center; align-items: center; width: 100%; padding: 15px; border-radius: 12px; text-decoration: none; box-sizing: border-box; }
.member-actions { display: grid; gap: 14px; }
.member-tabs { display: flex; gap: 8px; margin-bottom: 24px; }
.member-tabs a { flex: 1; padding: 12px 8px; border-radius: 10px; text-align: center; color: #475569; background: #f1f5f9; text-decoration: none; }
.member-tabs a[aria-current] { color: #c2410c; background: #fff4eb; font-weight: 700; }
.member-inline { display: flex; gap: 8px; }
.member-inline .form-input { min-width: 0; flex: 1; }
.member-secondary { flex-shrink: 0; border: 1px solid #fed7aa; background: #fff4eb; color: #c2410c; padding: 0 14px; border-radius: 12px; cursor: pointer; }
.member-card small { display: block; color: #64748b; margin-top: 6px; }
.member-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 24px; color: #64748b; }
.member-links a { color: #c2410c; }
.member-policy { margin: 20px 0; color: #475569; }
.member-policy summary { cursor: pointer; }
.member-policy h2 { font-size: 1rem; margin: 16px 0 8px; }
.member-policy pre { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 200px; overflow-y: auto; font: inherit; font-size: .85rem; padding: 12px; background: #f8fafc; }
.member-consent { display: flex; align-items: flex-start; gap: 8px; margin: 14px 0; font-size: .85rem; line-height: 1.6; }
.member-consent input { margin-top: 5px; accent-color: #ff6b00; }
@media (max-width: 600px) { .member-page { padding: 110px 14px 40px; } .member-card { padding: 24px 18px; } }
