:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172c24;background:#f5f8f6;font-synthesis:none;--green:#086b48;--muted:#58685f;--border:#dce5df}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0}
header{height:80px;padding:0 max(24px,calc((100vw - 1100px)/2));background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:inline-flex;align-items:center;gap:10px;color:#172c24;font-size:18px;font-weight:750;letter-spacing:-.03em;text-decoration:none;white-space:nowrap}
.brand img{display:block;width:40px;height:40px;object-fit:contain}
a{color:var(--green);text-underline-offset:3px}
.header-back{min-height:40px;padding:9px 15px;font-size:14px;white-space:nowrap}
main{max-width:790px;margin:54px auto 70px;padding:0 24px}
.page-title{margin-bottom:32px}
.eyebrow{font-size:11px;font-weight:750;letter-spacing:.14em;color:var(--green);margin:0 0 10px}
h1{font-size:clamp(30px,5vw,40px);letter-spacing:-.035em;margin:0 0 12px;line-height:1.1}
h2{font-size:21px;letter-spacing:-.025em;margin:0 0 14px;line-height:1.25}
p{font-size:15px;line-height:1.6;margin:0 0 16px}
.page-title>p:last-child,.muted{color:var(--muted)}
.card{background:white;border:1px solid var(--border);border-radius:14px;padding:28px;margin-bottom:22px}
.membership-card{border-top:3px solid var(--green)}
.card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.card-top h2{margin:0}
.badge{font-size:12px;font-weight:650;background:#e6f3eb;color:#205b3e;border-radius:5px;padding:5px 9px}
.plan-name{font-size:17px;font-weight:600;margin-bottom:6px}
.plan-price{font-size:28px;font-weight:650;letter-spacing:-.03em;margin-bottom:4px}
.account-email{border-top:1px solid var(--border);padding-top:17px;font-size:14px}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0 12px}
.button{font:inherit;font-size:14px;font-weight:600;min-height:44px;padding:11px 17px;border:1px solid transparent;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;line-height:1.35}
.primary{background:linear-gradient(135deg,#10B981 0%,#059669 100%);color:white}
.primary:hover{filter:brightness(.96)}
.quiet{background:white;color:#33473c;border-color:#cbd8ce}
.quiet:hover{background:#f3f7f4}
button:disabled{opacity:.55;cursor:wait}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d39a32;outline-offset:3px}
.small{font-size:13px}
.notice{background:#e9f0ec;border:1px solid var(--border);border-radius:7px;padding:12px 16px}
.error{color:#9d2929;background:#fff1f0;border-radius:7px;padding:12px 16px}
label{display:block;font-size:14px;font-weight:600;margin:20px 0 7px}
input,select,textarea{width:100%;background:white;color:inherit;border:1px solid #bdcdc1;border-radius:6px;padding:11px;font:inherit;font-size:15px}
textarea{resize:vertical;min-height:100px}
input{min-height:44px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
form>.button{margin-top:18px}
.text-button{font:inherit;font-size:14px;background:none;border:0;color:var(--green);padding:12px 0;cursor:pointer}
.privacy{padding:12px 4px}
.privacy h2{font-size:17px}
.privacy p{font-size:13px;max-width:610px;color:var(--muted)}
#cancellation:focus{outline:none}
@media(max-width:550px){header{height:68px;padding:0 20px}
.brand{font-size:15px;gap:6px}
.brand img{width:30px;height:30px}
.header-back{min-height:38px;padding:8px 12px;font-size:13px}
main{margin-top:32px;padding:0 18px}
.card{padding:22px 18px}
.field-row{grid-template-columns:1fr;gap:0}
.actions{align-items:stretch;flex-direction:column}
.actions .button{width:100%}
.card-top{align-items:flex-start}
.plan-price{font-size:26px}
}
@media(max-width:380px){.back-long{display:none}.brand span{font-size:14px}}
