/* Member profile: shrink-safe native date fields and grouped contact details. */
.profile-page{max-width:860px;margin:0 auto}.profile-page .profile-intro{margin-bottom:25px}.profile-page .profile-intro h1{font-size:29px;font-weight:500;line-height:1.45;margin:10px 0}.profile-page .profile-intro>p:last-child{font-size:12px;line-height:1.8;color:#9eb8a5}.profile-redesign{max-width:none;padding:29px 32px 25px!important;border-radius:23px;border:1px solid #d1ddc9;background:linear-gradient(155deg,#fffef7,#f5f8ef);box-shadow:0 14px 40px #001b181a}.profile-form-title{display:flex;align-items:center;gap:13px;padding-bottom:23px;margin-bottom:24px;border-bottom:1px solid #e0e7d9}.profile-title-icon{width:44px;height:44px;border-radius:14px;background:#e7efdf;display:grid;place-items:center;color:#255a3e}.profile-title-icon svg{width:23px;height:23px}.profile-form-title h2{font-size:20px;font-weight:600;letter-spacing:.5px}.profile-form-title p{font-size:8px;letter-spacing:1.8px;color:#8b987e;margin-top:5px}.profile-redesign fieldset{padding:0;margin:0;border:0;min-inline-size:0}.profile-redesign legend{display:block;padding:0;margin:0 0 17px;font-size:11px;font-weight:600;letter-spacing:1px;color:#859376}.profile-redesign .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 23px}.profile-redesign label{min-inline-size:0;max-inline-size:100%;position:relative;font-size:12px;color:#516951;line-height:1.5}.profile-redesign input{box-sizing:border-box;inline-size:100%;min-inline-size:0;max-inline-size:100%;font-size:16px;min-height:51px;border:1px solid #dce4d3;border-radius:12px;background:#fffefa;padding:12px 14px;margin-top:8px;box-shadow:0 1px 2px #193d1f03;line-height:1.4;color:#214c35}.profile-redesign input:focus{border-color:#69936d;outline:2px solid #69936d22;outline-offset:1px}.profile-redesign input:disabled{background:#f0f3e9;color:#7e917c;border-color:#e6ebdf;opacity:1;-webkit-text-fill-color:#7e917c}.profile-redesign input[type=date]{display:block;-webkit-appearance:none;appearance:none;overflow:visible}.profile-redesign input[type=date]::-webkit-date-and-time-value{min-inline-size:0;max-inline-size:100%;text-align:left}.profile-redesign input[type=date]::-webkit-datetime-edit{min-inline-size:0;padding:0}.profile-readonly{float:right;border:1px solid #dce4d3;border-radius:20px;padding:0 7px;font-size:9px;line-height:17px;color:#88967d}.profile-basics label:first-child{grid-column:1/-1}.profile-more{margin-top:24px;border:1px solid #dce5d4;border-radius:14px;background:#f5f8ef;overflow:hidden}.profile-more summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 18px;cursor:pointer;list-style:none;min-height:66px;touch-action:manipulation}.profile-more summary::-webkit-details-marker{display:none}.profile-more summary::after{content:'+';font-size:24px;font-weight:300;color:#55754e;line-height:1}.profile-more[open] summary::after{content:'−'}.profile-more summary strong{display:block;font-size:12px;color:#2d563a;font-weight:500}.profile-more summary small{display:block;font-size:10px;color:#8b987f;margin-top:5px;line-height:1.6}.profile-more>.form-grid{padding:0 18px 21px}.profile-more[open] summary{margin-bottom:5px}.profile-save{margin-top:25px;padding-top:21px;border-top:1px solid #e0e7d9;display:flex;flex-direction:column;gap:10px;align-items:stretch}.profile-save .primary-button{border-radius:13px;min-height:51px;font-size:14px;font-weight:500;letter-spacing:.5px;background:#104d35;box-shadow:0 4px 12px #16483313}.profile-save>p{margin:0;text-align:center;font-size:10px;color:#92a088;line-height:1.6}
@media(max-width:700px){.profile-page .profile-intro{margin-bottom:23px}.profile-page .profile-intro h1{font-size:26px;margin:8px 0 9px}.profile-page .profile-intro>p:last-child{font-size:11px}.profile-redesign{padding:23px 21px 20px!important;border-radius:21px}.profile-form-title{padding-bottom:20px;margin-bottom:20px;gap:12px}.profile-form-title h2{font-size:18px}.profile-form-title p{font-size:7px;letter-spacing:1.4px}.profile-title-icon{width:40px;height:40px;border-radius:12px}.profile-redesign .form-grid{grid-template-columns:minmax(0,1fr);gap:17px}.profile-redesign input{min-height:50px}.profile-redesign legend{margin-bottom:15px;font-size:10px}.profile-more{margin-top:21px}.profile-more summary{padding:16px}.profile-more>.form-grid{padding:0 16px 18px}.profile-save{margin-top:21px;padding-top:19px}.profile-save .primary-button{min-height:51px}}



@media(max-width:700px){.profile-form-title{padding-bottom:17px;margin-bottom:17px}.profile-redesign legend{margin-bottom:12px}.profile-redesign .form-grid{gap:15px}.profile-more{margin-top:19px}.profile-save{margin-top:19px;padding-top:17px}}



/* Keep an empty native birthday field discoverable on iOS; never mask a value. */
.profile-birthday{display:block;position:relative;min-inline-size:0;max-inline-size:100%;margin-top:8px}
.profile-birthday input[type=date]{margin-top:0;padding-right:45px}
.profile-birthday input[type=date]::-webkit-calendar-picker-indicator{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;margin:0;padding:0;opacity:0;cursor:pointer}
.profile-birthday-prompt{display:none;position:absolute;inset:0 45px 0 14px;align-items:center;color:#85947f;font-size:14px;pointer-events:none;white-space:nowrap}
.profile-birthday-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#6a8567;pointer-events:none}
.profile-birthday[data-empty=true]:not(:focus-within) .profile-birthday-prompt{display:flex}
.profile-birthday[data-empty=true]:not(:focus-within) input[type=date]{color:transparent}
.profile-birthday[data-empty=true]:not(:focus-within) input[type=date]::-webkit-date-and-time-value{color:transparent}
.profile-birthday[data-empty=true]:not(:focus-within) input[type=date]::-webkit-datetime-edit{color:transparent}

.profile-optional{font-size:10px;color:#8a987f;font-weight:400;margin-left:8px;letter-spacing:0}
.profile-more summary strong .profile-optional{display:inline;margin-top:0}
.profile-optional-note{padding:0 18px;margin:0 0 17px;font-size:11px;line-height:1.7;color:#7a8d70}
.profile-save .profile-save-status{font-size:12px;line-height:1.7;text-align:left;border-radius:10px;padding:10px 12px;background:#edf2e7;color:#496343}
.profile-save .profile-save-status[data-state=success]{background:#e4f1e7;color:#1c6542}
.profile-save .profile-save-status[data-state=error]{background:#fff1e8;color:#9a4b28}
.profile-redesign input:disabled:not([name=phone]){opacity:.7}

/* Selected improvements1/3: readable labels and a single profile heading. */
.profile-form-title h1{font-size:22px;line-height:1.4;font-weight:600;margin:0;letter-spacing:.3px}
.profile-redesign label{font-size:14px}.profile-redesign legend{font-size:12px;color:#617752}
.profile-optional{font-size:11px;color:#6f8264}.profile-more summary strong{font-size:14px}.profile-more summary small{font-size:12px;color:#74866c}.profile-optional-note{font-size:12px}.profile-save>p{font-size:12px;color:#73856c}
@media(max-width:700px){.profile-form-title h1{font-size:21px}.profile-more summary{min-height:74px}.profile-more summary small{font-size:11px}.profile-save .primary-button{font-size:15px}.profile-save>p{font-size:11px}}
