.cer-accounts,.cer-account-controls{max-width:420px;margin:0 auto;text-align:center}
.cer-accounts h2{font-size:28px;line-height:1.25;margin:0 auto 26px}
.cer-account-tabs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 auto 24px}
.cer-account-tabs .btn[aria-pressed=true]{background:var(--accent);color:#f3edf9;border-color:var(--accent)}
.cer-account-form{max-width:360px;margin:0 auto}
.cer-account-form .field-label{margin-top:20px;margin-bottom:7px}
.cer-account-form input[type=text],.cer-account-form input[type=email],.cer-account-form input[type=password]{display:block;width:100%;max-width:100%;min-height:44px;padding:12px 16px;border:1px solid var(--control,var(--line));border-radius:22px;background:#b2aeb9;color:var(--ink);text-align:center;box-shadow:inset 0 2px 2px #30203d18}
.cer-account-form input[type=password]{font:inherit;letter-spacing:.03em}
.cer-account-form .btn[type=submit]{margin:24px auto 0}
.cer-account-help{font-size:11px;line-height:1.5;margin:7px auto 0;max-width:330px}
.cer-account-status{font-size:13px;line-height:1.5;margin:16px auto;min-height:1.5em;overflow-wrap:anywhere;color:var(--ink)}
.cer-account-summary{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin:0 auto 20px;overflow-wrap:anywhere}
.cer-account-summary .tag{margin:0}
.cer-password-settings{margin:20px auto;padding:18px 0;max-width:360px}
.cer-password-settings summary{font-size:13px}
.cer-account-signout{margin:10px auto 25px}
.cer-account-methods{margin:0 auto 18px;max-width:360px}
.cer-google-signin{width:100%;min-height:44px;justify-content:center}
.cer-account-separator{font-size:11px;letter-spacing:.06em;margin:20px auto}
.cer-recovery-link{margin:4px auto 12px;font-size:12px;min-height:44px}
.cer-recovery-heading{font-size:20px;font-weight:500;line-height:1.3;margin:0 auto 16px}
.cer-recovery-copy{font-size:13px;line-height:1.6;max-width:360px;margin:16px auto;overflow-wrap:anywhere}
.cer-recovery-settings .cer-account-status{margin-bottom:8px}
.cer-recovery-actions{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin:24px auto 0}
.cer-recovery-actions .btn[type=submit]{margin:0}
.cer-recovery-saved{max-width:360px;margin:22px auto;padding:22px 18px;border:1px solid var(--accent);border-radius:24px;background:#7000ef08}
.cer-recovery-saved h3{font-size:20px;line-height:1.35;font-weight:500;margin:0 auto 16px}
.cer-recovery-code{display:block;width:100%;box-sizing:border-box;margin:20px auto 12px;padding:17px 12px;border:1px solid var(--control,var(--line));border-radius:16px;background:#b2aeb9;color:var(--ink);font:600 15px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.025em;white-space:pre-wrap;overflow-wrap:anywhere;user-select:all;cursor:text}
.cer-account-form .cer-recovery-input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.03em}
.cer-recovery-ack{display:flex;align-items:flex-start;gap:10px;text-align:left;font-size:13px;line-height:1.55;margin:22px auto}
.cer-recovery-ack input{width:19px;height:19px;flex:0 0 19px;margin:2px 0 0;accent-color:var(--accent)}
.cer-recovery-saved .btn{min-height:44px}
.cer-recovery-code:focus-visible,.cer-recovery-ack input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.cer-accounts [hidden],.cer-account-controls [hidden]{display:none!important}
.cer-accounts-with-plans{max-width:680px}
.cer-plans{max-width:680px;margin:30px auto 38px;text-align:center}
.cer-plans h2{font-size:25px;line-height:1.25;margin:0 0 22px}
.cer-plan-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0;padding:0;border:0;min-width:0}
.cer-plan{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0;padding:24px 20px;border:1px solid #56069a55;border-radius:28px;background:#b4a9bc22;color:var(--ink);text-align:center;transition:background-color .18s,border-color .18s}
label.cer-plan{cursor:pointer}
.cer-plan.is-selected,.cer-plan.is-current{border-color:var(--accent);background:#7000ef0b}
.cer-plan input[type=radio]{width:20px;height:20px;margin:0 0 4px;accent-color:var(--accent)}
.cer-plan:focus-within{outline:2px solid var(--accent);outline-offset:4px}
.cer-plan-title{font-size:20px;font-weight:500;line-height:1.3;letter-spacing:0;margin:0}
.cer-plan-price{font-size:32px;line-height:1.2;margin:3px 0 6px;letter-spacing:-.025em;color:var(--violet-text,var(--accent))}
.cer-plan-interval{font-size:13px;letter-spacing:0;white-space:nowrap}
.cer-plan-feature{font-size:14px;line-height:1.5;margin:0;overflow-wrap:anywhere}
.cer-plan-current{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.cer-plan-note{font-size:12px;line-height:1.6;max-width:560px;margin:18px auto 0}
.membership-preview{max-width:560px;margin:30px auto;padding:20px 0}
.membership-preview h2{font-size:26px}
.membership-preview .btn{margin-top:12px}
@media(max-width:560px){.cer-plan-options{grid-template-columns:1fr;gap:14px}.cer-plan{padding:22px 18px}.cer-plans{max-width:390px;margin:26px auto 30px}.cer-plan-price{font-size:30px}.cer-plan-feature{font-size:14px}}
@media(prefers-reduced-motion:reduce){.cer-plan{transition:none}}
@media(max-width:520px){.cer-accounts h2{font-size:24px}.cer-account-tabs{gap:8px}.cer-account-form{width:100%}.cer-account-help{font-size:10px}}
