.onboarding-view{background:radial-gradient(circle at 50% 0,#f3e7ee,#f8f4f2 45%,#efe9e6);padding:28px 18px 55px}.onboarding-shell{max-width:590px;min-height:calc(100vh - 135px);padding:22px 34px 36px;border-radius:34px;box-shadow:0 28px 80px #40263921;display:flex;flex-direction:column}.onboarding-shell>.progress{height:7px;background:#eee5e9;margin:0 0 10px}.onboarding-shell>.progress span{background:linear-gradient(90deg,#733c60,#a96589);transition:width .45s}.onboarding-shell>#onboardingBack{align-self:flex-start}.onboarding-shell>#onboardingStep{flex:1;display:flex}.step{width:100%;padding:8px 12px 0;display:flex;flex-direction:column;text-align:center}.onboarding-brand{display:flex;align-items:center;justify-content:center;gap:9px;margin:0 auto 18px;color:#392438;font:700 20px "Cormorant Garamond",serif}.onboarding-brand img{width:35px;height:35px}.step-count{color:#8b5676;background:#f4e9ef;border-radius:99px;padding:6px 10px;align-self:center}.step h2{font-family:"DM Sans",sans-serif;font-size:clamp(31px,5vw,43px);line-height:1.12;letter-spacing:-.035em;max-width:490px;margin:18px auto 10px;color:#302332}.step>p{max-width:440px;margin:0 auto;color:#756b73}.choice-grid{grid-template-columns:1fr;margin:30px 0 12px;gap:12px}.choice{min-height:78px;border:2px solid #eee7eb;border-radius:20px;padding:17px 20px;display:flex;align-items:center;gap:15px;box-shadow:0 7px 22px #3d233509;transition:.2s}.choice:hover{transform:translateY(-2px);border-color:#c7a5b9;background:#fff}.choice.selected{border-color:#7c4566;background:#f7edf3}.choice>span:not(.choice-symbol){flex:1}.choice i{opacity:0;width:24px;height:24px;border-radius:50%;background:#75405f;color:#fff;font-style:normal;text-align:center;line-height:24px}.choice.selected i{opacity:1}.choice-symbol{width:52px;height:52px;border-radius:16px;background:#f1e4eb;display:grid;place-items:center;color:#75405f;font-size:25px}.visual-choices{grid-template-columns:1fr 1fr}.visual-choices .choice{min-height:155px;flex-direction:column;justify-content:center;text-align:center}.visual-choices .choice-symbol{width:68px;height:68px;border-radius:50%;font-size:34px}.onboarding-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:34px 0}.onboarding-fields label,.onboarding-photo{font-weight:700;text-align:left}.onboarding-fields input,.onboarding-input input,.onboarding-photo select{width:100%;margin-top:8px;border:2px solid #eee7eb;background:#f9f6f7;border-radius:18px;padding:17px;font:inherit;outline:0}.onboarding-fields input:focus,.onboarding-input input:focus,.onboarding-photo select:focus{border-color:#7c4566;background:#fff}.onboarding-input{margin:42px auto 20px;width:min(100%,450px)}.onboarding-input input{font-size:19px}.onboarding-photo{margin:30px auto 10px;width:min(100%,430px);text-align:center}.onboarding-photo>label{border:2px dashed #c8a9ba;border-radius:25px;padding:28px;display:flex;flex-direction:column;align-items:center;gap:7px;cursor:pointer;background:#fcf9fa}.onboarding-photo>input{position:absolute;opacity:0;pointer-events:none}.photo-placeholder{width:90px;height:90px;border-radius:50%;display:grid;place-items:center;background:#efe1e9;color:#75405f;font-size:40px;margin-bottom:7px}.onboarding-photo small{color:#847881;font-weight:400}.onboarding-photo select{margin-top:14px}.onboarding-finish{margin:auto;padding:34px 10px}.onboarding-finish>span{display:grid;place-items:center;width:100px;height:100px;border-radius:50%;background:linear-gradient(145deg,#74405f,#a96789);color:#fff;font-size:45px;margin:0 auto 22px;box-shadow:0 18px 40px #75405f3d}.onboarding-finish h3{font-size:30px}.onboarding-finish p{color:#756b73}.step-footer{margin-top:auto;padding-top:24px;display:flex;align-items:center;justify-content:flex-end;gap:14px}.step-footer .button.primary{min-width:170px;background:#75405f;border-color:#75405f;box-shadow:0 12px 30px #75405f38}
.onboarding-input input[type="date"]{display:block;min-width:0;min-height:62px;margin-inline:auto;text-align:center;color:#302332}.onboarding-input input[type="date"]::-webkit-date-and-time-value{min-height:24px;margin:0;text-align:center}.onboarding-input input[type="date"]::-webkit-calendar-picker-indicator{margin:0}
@media(max-width:620px){.onboarding-view{padding:0;background:#fff}.onboarding-shell{min-height:calc(100vh - 78px);border-radius:0;box-shadow:none;padding:18px 18px 28px}.step{padding-left:2px;padding-right:2px}.onboarding-fields{grid-template-columns:1fr}.visual-choices{grid-template-columns:1fr 1fr}.onboarding-input{width:100%;max-width:340px;margin:34px auto 18px;padding:0 4px}.onboarding-input input[type="date"]{width:100%;max-width:100%;padding:16px 14px;font-size:17px}.step-footer{position:sticky;bottom:0;background:linear-gradient(transparent,#fff 18%);padding-top:28px}.step-footer .button.primary{flex:1}.step h2{font-size:32px}}
.profile-avatar{overflow:hidden}.profile-avatar img{width:100%;height:100%;object-fit:cover}.photo-placeholder{overflow:hidden}
.guided-profile-form{max-width:820px;margin:0 auto}.guided-profile-form fieldset[hidden]{display:none}.guided-profile-form fieldset{min-height:360px;padding:38px}.guided-profile-form fieldset legend{font-family:"DM Sans",sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:.14em;color:#8b5676}.profile-editor-progress{height:7px;border-radius:99px;background:#eadfe5;overflow:hidden;margin-bottom:22px}.profile-editor-progress span{display:block;height:100%;background:linear-gradient(90deg,#733c60,#a96589);transition:width .35s}.guided-profile-form .editor-actions{max-width:820px}.guided-profile-form .editor-actions #profileSaveStatus{margin-left:auto}.guided-profile-form .editor-actions .back-link{white-space:nowrap}
.notification-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.notification-button:hover{border-color:#9b607c;background:#f7edf3;color:#75405f}
.gender-symbol{width:96px!important;height:96px!important;background:linear-gradient(145deg,#f4e8ef,#eadbe4)!important}.gender-symbol svg{width:76px;height:76px;fill:none;stroke:#75405f;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.gender-symbol.woman{background:linear-gradient(145deg,#f7e8ec,#ead8df)!important}.gender-symbol.man{background:linear-gradient(145deg,#e8edf5,#dde5f0)!important}
.onboarding-fields select{width:100%;margin-top:8px;border:2px solid #eee7eb;background:#f9f6f7;border-radius:18px;padding:17px;font:inherit;outline:0}.onboarding-fields select:focus{border-color:#7c4566;background:#fff}
.hero-photo-card{width:min(420px,82vw);padding:14px;border-radius:220px 220px 30px 30px;background:#fff}.hero-photo-card .profile-photo{height:530px;border-radius:205px 205px 22px 22px;background:#dccbd2}.hero-photo-card .profile-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-photo-card+.note-one{top:115px;left:-18px}.hero-photo-card~.note-two{right:-20px;bottom:105px}.hero-photo-card .mini-badge{margin-top:430px;margin-left:255px}
@media(max-width:520px){.hero-photo-card .profile-photo{height:410px}.hero-photo-card .mini-badge{margin-top:330px;margin-left:175px}}
@media(max-width:680px){.guided-profile-form fieldset{min-height:0;padding:26px 18px}.guided-profile-form .editor-actions{flex-direction:row;align-items:center}.guided-profile-form .editor-actions #profileSaveStatus{display:none}.guided-profile-form .editor-actions .button{width:auto;flex:1}}

/* Keep Safari's intrinsically wide date control inside the profile card. */
.guided-profile-form fieldset,.guided-profile-form .form-grid,.guided-profile-form label{min-inline-size:0}
.guided-profile-form input[type="date"]{display:block;inline-size:100%;min-inline-size:0;max-inline-size:100%;-webkit-appearance:none;appearance:none}
.guided-profile-form input[type="date"]::-webkit-date-and-time-value{min-inline-size:0;margin:0;text-align:left}
.toast{pointer-events:none}

.onboarding-birth-date{display:grid;grid-template-columns:1.25fr .75fr 1fr;gap:10px;width:min(100%,470px);margin:38px auto 20px;text-align:left}
.onboarding-birth-date label{display:grid;min-width:0;gap:8px;color:#302332;font-size:12px;font-weight:700}
.onboarding-birth-date select{width:100%;min-width:0;padding:16px 12px;border:2px solid #eee7eb;border-radius:18px;background:#f9f6f7;color:#302332;font:inherit;font-size:15px;outline:0}
.onboarding-birth-date select:focus{border-color:#7c4566;background:#fff}

@media(max-width:620px){
  body.member-app[data-active-view="onboarding"],body.member-app[data-active-view="profile-editor"],body.member-app[data-active-view="photos"],body.member-app[data-active-view="verification"],body.member-app[data-active-view="privacy-center"],body.member-app[data-active-view="settings"],body.member-app[data-active-view="family"],body.member-app[data-active-view="notifications"]{padding-bottom:0}
  body.member-app:has(#onboarding.active) #onboarding{min-height:calc(100dvh - 64px);padding-bottom:env(safe-area-inset-bottom)}
  .onboarding-shell{min-height:calc(100dvh - 64px);padding:12px max(18px,env(safe-area-inset-left)) calc(14px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-right))}
  .onboarding-shell>.progress{margin-bottom:2px}
  .onboarding-shell>#onboardingBack{min-height:40px;padding:7px 0}
  .onboarding-shell>#onboardingStep{min-height:0}
  .step{min-height:0;padding-top:0;padding-bottom:0}
  .onboarding-brand{margin-bottom:10px}
  .step h2{margin:14px auto 8px}
  .step>p{font-size:14px;line-height:1.5}
  .onboarding-birth-date{grid-template-columns:1.25fr .75fr 1fr;gap:8px;width:100%;margin:30px auto 18px}
  .onboarding-birth-date select{padding:15px 9px;font-size:14px}
  .step-footer{z-index:5;bottom:0;margin-top:auto;padding:24px 0 max(4px,env(safe-area-inset-bottom));background:linear-gradient(transparent,#fff 22%)}
  .step-footer .button.primary{min-width:0}
  .step-footer .button.primary:disabled{cursor:not-allowed;opacity:.46;box-shadow:none}
  .step-photo .onboarding-brand{margin-bottom:7px}
  .step-photo h2{margin-top:12px}
  .step-photo .onboarding-photo{width:100%;margin:18px auto 4px}
  .step-photo .onboarding-photo>label{padding:18px 14px;border-radius:22px}
  .step-photo .photo-placeholder{width:76px;height:76px;margin-bottom:3px;font-size:34px}
  .step-photo .onboarding-photo select{margin-top:10px;padding:14px}
  .step-photo .onboarding-photo .form-error{min-height:10px}
  .step-photo .step-footer{display:grid;grid-template-columns:auto minmax(0,1fr);width:100%;gap:10px}
  .step-photo .step-footer #skipPhoto{min-height:48px;padding:10px 2px;white-space:nowrap}
  .step-photo .step-footer .button.primary{width:100%;padding-inline:12px}
  .profile-editor-view .editor-heading>.back-link{display:block;margin-bottom:12px}
  .profile-editor-view .editor-heading>.eyebrow{display:block}
  .guided-profile-form .editor-actions{bottom:max(10px,env(safe-area-inset-bottom))}
}

@media(max-width:360px){
  .onboarding-birth-date{grid-template-columns:1fr 1fr}
  .onboarding-birth-date label:last-child{grid-column:1/-1}
  .step-photo .step-footer{grid-template-columns:1fr}
  .step-photo .step-footer #skipPhoto{order:2}
}

@media(max-width:620px) and (max-height:720px){
  .step-photo .onboarding-brand{display:none}
  .step-photo h2{font-size:28px}
  .step-photo>p{font-size:12px}
  .step-photo .onboarding-photo{margin-top:12px}
  .step-photo .onboarding-photo>label{padding:13px}
  .step-photo .photo-placeholder{width:64px;height:64px}
  .step-photo .step-footer{padding-top:14px}
}
.security-shell{max-width:900px}.security-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}.security-card{display:grid;align-content:start;gap:16px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:24px}.security-card h3,.security-card p{margin:0}.security-card p,.security-card small{color:var(--muted);line-height:1.6}.security-card label{display:grid;gap:8px;font-size:13px;font-weight:700}.security-card input{width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:12px;background:var(--paper);font:inherit;outline:0}.security-card input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(31,92,78,.1)}.security-card .button{justify-self:start}.security-symbol{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--sage);color:var(--green);font-size:24px;font-weight:800}@media(max-width:720px){.security-grid{grid-template-columns:1fr}.security-card{padding:24px 20px}.security-card .button{width:100%}}
