:root{--ink:#29413b;--muted:#71837d;--sage:#729988;--sage-dark:#4e7868;--line:rgba(69,101,91,.18)}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;background:radial-gradient(circle at 16% 14%,rgba(255,227,169,.62),transparent 31%),radial-gradient(circle at 83% 18%,rgba(182,220,193,.5),transparent 30%),linear-gradient(145deg,#f7f1e8,#edf4ee 48%,#e3eee9)}.onboarding-page{min-height:100vh;display:grid;place-items:center;padding:28px 16px}.onboarding-card{width:min(100%,680px);padding:clamp(30px,6vw,58px);border:1px solid rgba(255,255,255,.9);border-radius:36px;background:rgba(255,255,255,.9);box-shadow:0 28px 80px rgba(54,82,72,.16)}.onboarding-card--welcome{max-width:760px}.eyebrow{margin:0 0 10px;color:var(--sage-dark);font-size:12px;font-weight:800;letter-spacing:.25em}.onboarding-card h1{margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(30px,6vw,48px);font-weight:500}.lead{color:var(--muted);line-height:1.9;margin:18px 0 30px}.onboarding-points{display:grid;gap:8px;margin:28px 0}.onboarding-points p{margin:0;padding:14px 16px;border-radius:16px;background:#f5f8f4}.primary-button{width:100%;min-height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border:0;border-radius:18px;color:#fff;background:linear-gradient(135deg,var(--sage),var(--sage-dark));font:inherit;font-weight:800;text-decoration:none;cursor:pointer}.primary-button:disabled{opacity:.6}.sub-link{text-align:center;margin:24px 0 0;color:var(--muted);font-size:13px}.sub-link a,.legal-link{color:var(--sage-dark);font-weight:700;text-underline-offset:3px}.onboarding-form{display:grid;gap:19px}.onboarding-form>label:not(.check-row){display:grid;gap:8px;font-size:14px;font-weight:700}.onboarding-form input:not([type=checkbox]){min-height:52px;padding:0 15px;border:1px solid var(--line);border-radius:15px;background:#fff;font:inherit;font-size:16px}.onboarding-form small{color:var(--muted);font-weight:400}.agreement-box{padding:20px;border-radius:20px;background:#f5f8f4}.agreement-box h2{margin:0 0 8px;font-size:18px}.agreement-box p{color:var(--muted);font-size:13px;line-height:1.7}.legal-item{padding:12px 0;border-top:1px solid var(--line)}.legal-item:first-child{border-top:0}.legal-item strong{display:block;margin-bottom:5px}.legal-item p{margin:0}.check-row{display:flex;gap:10px;align-items:flex-start;line-height:1.6;font-size:14px}.check-row input{margin-top:4px}.form-message{min-height:24px;margin:0;color:var(--muted);font-size:13px}.form-message[data-state=error]{color:#a45151}.form-message[data-state=success]{color:var(--sage-dark)}@media(max-width:560px){.onboarding-card{padding:30px 22px;border-radius:26px}}
.setup-card{width:min(100%,820px)}.setup-progress{height:9px;overflow:hidden;margin:24px 0 8px;border-radius:999px;background:#e5ebe6}.setup-progress>div{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#82a58f,#e6bb62);transition:width .25s ease}.setup-progress-label{margin:0 0 24px;text-align:right;color:var(--muted);font-size:12px}.setup-steps{display:grid;gap:14px}.setup-step{display:grid;grid-template-columns:54px 1fr;gap:15px;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff}.setup-step.is-done{background:#f1f7f1}.setup-step__icon{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:#f2f6f1;font-size:24px}.setup-step__number{margin:0;color:var(--sage-dark);font-size:10px;font-weight:800;letter-spacing:.14em}.setup-step h2{margin:3px 0 5px;font-size:18px}.setup-step__body>p:not(.setup-step__number){margin:0;color:var(--muted);font-size:13px;line-height:1.7}.setup-step__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.setup-step__actions a,.setup-step__actions button{min-height:36px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--sage-dark);font:inherit;font-size:12px;font-weight:700;text-decoration:none;cursor:pointer}.setup-step__actions button[data-done]{background:var(--sage-dark);color:#fff;border-color:var(--sage-dark)}.setup-footer{margin-top:24px;text-align:center}.setup-footer a{color:var(--muted);font-size:13px}@media(max-width:560px){.setup-step{grid-template-columns:42px 1fr;padding:16px}.setup-step__icon{width:40px;height:40px;font-size:20px}}
.setup-next{display:grid;gap:8px;margin:0 0 22px;padding:20px 22px;border:1px solid rgba(114,153,136,.24);border-radius:20px;background:linear-gradient(135deg,rgba(238,246,240,.94),rgba(255,248,230,.8))}.setup-next p{margin:0;color:var(--sage-dark);font-size:10px;font-weight:800;letter-spacing:.16em}.setup-next strong{font-size:18px}.setup-next span{color:var(--muted);font-size:13px;line-height:1.7}.setup-next a{justify-self:start;margin-top:4px;padding:9px 14px;border-radius:999px;background:var(--sage-dark);color:#fff;font-size:12px;font-weight:800;text-decoration:none}.setup-next a b{margin-left:8px}.setup-next__notice{color:#9a7042;line-height:1.6}

/* Keep referral greetings readable without changing the referral transport. */
#referral-notice{white-space:pre-line;line-height:1.8}
.email-confirmation{padding:22px;border:2px solid var(--sage);border-radius:20px;background:#f1f7f1;line-height:1.8;scroll-margin:20px}
.email-confirmation[hidden]{display:none}
.email-confirmation h2{margin:0 0 14px;color:var(--sage-dark);font-size:clamp(24px,5vw,30px);line-height:1.5}
.email-confirmation p{margin:10px 0;font-size:16px}
.email-confirmation__address{font-weight:800;overflow-wrap:anywhere}
.onboarding-form>label small{line-height:1.6}
.onboarding-form input:not([type=checkbox]){min-width:0;width:100%}
@media(max-width:560px){.email-confirmation{padding:18px}}
