.membership-main{max-width:1040px;margin:auto;padding:64px 30px 80px}.membership-intro{max-width:680px;margin-bottom:42px}.membership-intro h1{font-size:clamp(32px,5vw,48px);font-weight:500;letter-spacing:-1.6px;margin:16px 0}.membership-intro p{font-size:17px;line-height:1.7;color:var(--muted)}
.plans{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:12px;overflow:hidden}.plan{padding:32px;display:flex;flex-direction:column;align-items:flex-start;background:var(--surface)}.plan+.plan{border-left:1px solid var(--line)}.plan-plus{background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.plan h2{font-size:22px;font-weight:500;margin:20px 0 0}.plan .plan-price{font-size:56px;line-height:1.1;letter-spacing:-2px;color:var(--text);margin:18px 0}.plan-price span{font-size:13px;letter-spacing:0;color:var(--muted)}.plan>p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}.plan ul{padding:0;list-style:none;margin:24px 0 32px;flex:1}.plan li{position:relative;padding:0 0 15px 22px;font-size:13px;line-height:1.6}.plan li:before{content:'✓';position:absolute;left:0;color:var(--accent)}.plan .button{min-height:44px;display:flex;align-items:center;gap:15px;justify-content:center;width:100%}.plan small{display:block;font-size:11px;line-height:1.6;color:var(--muted);margin-top:14px}.plan #plan-status{margin-top:15px;font-size:12px;color:var(--warning)}.plan-details{max-width:740px;margin:40px 0 0}.plan-details h2{font-weight:500;font-size:17px;margin:28px 0 10px}.plan-details p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}.billing-setting{padding:24px 0;border-bottom:1px solid var(--line)}.billing-setting h2{font-size:16px;font-weight:500;margin:0 0 10px}.billing-setting p{font-size:13px;line-height:1.7;color:var(--muted)}.billing-actions{display:flex;flex-wrap:wrap;gap:10px}.billing-actions .button{font-size:12px;min-height:40px}.membership-notice{padding:12px 0;font-size:12px;line-height:1.6;color:var(--muted)}.membership-notice a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.membership-main{padding:32px 18px 48px}.membership-intro{margin-bottom:28px}.membership-intro p{font-size:15px}.plans{grid-template-columns:1fr}.plan{padding:26px 22px}.plan+.plan{border-left:0;border-top:1px solid var(--line)}.plan .plan-price{font-size:46px}}
