.profile-card { max-width: 430px; margin: 12px auto; color: var(--mp-text); }
.profile-card .mypage-avatar { margin-bottom: 18px; }
.profile-card h1 { margin: 0 0 12px; font-size: 1.4rem; line-height: 1.45; }
.profile-card p { margin: 0 0 24px; color: var(--mp-muted); line-height: 1.7; }
.profile-card label { display: block; margin-bottom: 8px; font-weight: 700; }
.view.mypage .profile-card input[type="text"] {
    box-sizing: border-box; width: 100%; min-height: 48px; padding: 11px 13px;
    border: 1px solid var(--mp-line); border-radius: 9px; background: var(--mp-bg);
    color: var(--mp-text); font: inherit;
}
.profile-card input:focus-visible { outline: 2px solid var(--mp-accent); outline-offset: 2px; }
.profile-card small { display: block; margin-top: 9px; color: var(--mp-muted); font-size: .83rem; line-height: 1.7; }
.view.mypage .profile-save {
    display: block; width: 100%; min-height: 48px; margin-top: 24px; padding: 11px;
    border: 0; border-radius: 9px; background: var(--mp-accent-dark); color: var(--mp-bg);
    font: inherit; font-weight: 700; cursor: pointer;
}
.profile-save:disabled { opacity: .5; cursor: default; }
.profile-save:focus-visible, .profile-back:focus-visible { outline: 2px solid var(--mp-accent); outline-offset: 3px; }
.profile-back { display: block; margin: 16px 0; text-align: center; color: var(--mp-accent-dark); }
.profile-card .profile-error { padding: 12px; border: 1px solid #bd5353; border-radius: 9px; color: var(--mp-text); }
.profile-card .profile-records { margin-top: 24px; text-align: center; }
.profile-notice { margin: 0 0 16px; padding: 12px; border-radius: 9px; background: var(--mp-soft); color: var(--mp-text); }
