.account-page{min-height:100vh;background:#f2f4f0;color:#17352e}
.account-header{max-width:1440px;margin:auto}
.account-layout{max-width:1200px;margin:0 auto;padding:clamp(44px,8vw,106px) 6vw 86px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:clamp(40px,8vw,110px);align-items:center}
.account-intro .eyebrow{color:#477b66}
.account-intro h1{margin:22px 0 24px;font-size:clamp(3.4rem,7vw,6.6rem);line-height:.98;letter-spacing:-.065em;color:#153d35}
.account-intro h1 em{font-family:Georgia,serif;font-weight:400;color:#4e806a}
.account-intro>p{max-width:490px;font-size:1.2rem;line-height:1.6;color:#697970}
.account-points{display:grid;gap:18px;margin:38px 0;color:#26483e;font-weight:650}
.account-points span{display:flex;align-items:center;gap:14px}
.account-points i{font-style:normal;font-size:.78rem;color:#386c57;background:#e0ebdf;border-radius:14px;padding:12px 14px}
.account-intro .account-note{font-size:.88rem;color:#829087;max-width:420px}
.account-card{background:#fff;border:1px solid #e6eae4;border-radius:30px;padding:clamp(26px,4vw,44px);box-shadow:0 24px 70px #193a2718}
.account-card-head{display:flex;align-items:center;gap:12px;color:#789186;font-size:.72rem;font-weight:800;letter-spacing:.14em}
.account-mark{width:40px;height:40px;border-radius:14px;background:#d9fa67;color:#153d35;display:grid;place-items:center;font-size:1.35rem;font-weight:800}
.account-card h2{font-size:clamp(1.7rem,3vw,2.2rem);line-height:1.1;letter-spacing:-.04em;margin:23px 0 10px;color:#163c34}
.account-subtitle{color:#718078;line-height:1.55;font-size:.96rem;margin:0 0 24px}
.account-card form{display:grid;gap:10px}
.account-card label{font-size:.83rem;font-weight:700;color:#315b4a}
.account-card input{width:100%;border:1px solid #dbe3db;border-radius:14px;padding:15px 16px;font:inherit;color:#163c34;background:#fbfcfa;outline:none}
.account-card input:focus{border-color:#4c866c;box-shadow:0 0 0 3px #4c866c22}
.account-primary,.account-secondary{width:100%;justify-content:center;margin-top:8px;min-height:54px;border:0;cursor:pointer}
.account-primary{background:#d9fa67;color:#153d35}
.account-primary:hover{background:#c8ef4e}
.account-primary:disabled{opacity:.55;cursor:wait}
.account-secondary{background:#173d34;color:#fff}
.plan-cta{width:100%;margin-top:20px;min-height:46px;padding:0 12px;font-size:.79rem}
.account-legal{font-size:.76rem;line-height:1.55;color:#89958d;margin:22px 0 0}
.account-legal a,.account-footer a{color:#477b66}
.account-text-button{display:inline-flex;align-items:center;border:0;background:none;color:#477b66;padding:12px 0;font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}
.account-divider{height:1px;background:#e9eee8;margin:20px 0 25px}
.account-card h3{font-size:1.35rem;letter-spacing:-.025em;margin:0 0 9px;color:#163c34}
.web-plans{display:grid;gap:10px;margin:18px 0 8px}
.web-plan{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:15px 16px;border:1px solid #e4ebe3;border-radius:17px;background:#fbfcfa}
.web-plan-title{font-weight:750;color:#203f35}
.web-plan-price{font-size:.88rem;color:#728078;margin-top:4px}
.web-plan button{border:0;border-radius:12px;padding:10px 13px;background:#173d34;color:#fff;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}
.web-plan button:disabled{opacity:.45;cursor:not-allowed}
.plan-loading{color:#87938c;padding:12px 0;font-size:.9rem}
.account-message{min-height:1.4em;margin:14px 0 0;color:#477b66;font-size:.88rem;line-height:1.5}
.account-message.error{color:#a34435}
.recovery-notice{margin:14px 0 18px;padding:17px;border:1px solid #e7d19b;border-radius:16px;background:#fff9e9;color:#4c493d}
.recovery-notice strong{color:#4b432d}
.recovery-notice p{font-size:.83rem;line-height:1.45;color:#77715c}
.recovery-notice code{display:block;overflow-wrap:anywhere;padding:12px;border-radius:10px;background:#fff;font-size:.82rem;user-select:all}
.recovery-notice>div{display:flex;align-items:center;gap:12px;margin-top:6px}
.recovery-button{border:0;background:#173d34;color:#fff;padding:10px 14px;border-radius:11px;cursor:pointer}
.hidden{display:none!important}
.account-footer{max-width:1440px;margin:0 auto;padding-left:6vw;padding-right:6vw}
@media(max-width:820px){.account-layout{grid-template-columns:1fr;max-width:600px;padding-top:48px;gap:36px}.account-intro h1{font-size:clamp(3.4rem,15vw,5rem)}.account-intro>p{font-size:1.05rem}.account-points{margin:26px 0}.account-card{border-radius:24px}.account-footer{flex-wrap:wrap;gap:20px}}
@media(max-width:480px){.account-header nav{gap:14px}.account-header nav a{font-size:.78rem}.account-layout{padding-left:20px;padding-right:20px}.account-card{padding:24px 20px}.web-plan{padding:12px}.web-plan button{padding:10px}.account-footer .footer-links{flex-wrap:wrap;gap:12px}}
