/* MVN onboarding + member profile editing — UI/UX phase */
.mvn-registration-card-v3{width:min(980px,100%);max-width:980px;padding:0;overflow:hidden}
.mvn-registration-page-v3 .page-head{margin-bottom:18px}
.mvn-registration-page-v3 .page-head h1{font-size:clamp(27px,3vw,36px);letter-spacing:-.035em}
.mvn-registration-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:18px}
.mvn-registration-intro p{max-width:650px;margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.65}
.mvn-registration-shell{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(6,45,40,.07)}
.mvn-registration-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-bottom:1px solid var(--line);background:#f8fbfa}
.mvn-registration-step{position:relative;min-height:48px;display:flex;align-items:center;gap:9px;min-width:0;padding:13px 12px;border:0;border-inline-end:1px solid var(--line);background:transparent;color:#6b7e79;text-align:left;cursor:pointer}
.rtl .mvn-registration-step{text-align:right}
.mvn-registration-step:last-child{border-inline-end:0}
.mvn-registration-step b{display:grid;place-items:center;flex:0 0 auto;width:27px;height:27px;border:1px solid #cfe0da;border-radius:50%;background:#fff;color:#176856;font-size:11px}
.mvn-registration-step span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800}
.mvn-registration-step.is-active{color:#073b32;background:#fff}
.mvn-registration-step.is-active:after{content:'';position:absolute;left:12px;right:12px;bottom:-1px;height:2px;background:#176856}
.mvn-registration-step.is-active b,.mvn-registration-step.is-complete b{color:#fff;background:#176856;border-color:#176856}
.mvn-registration-panel{padding:24px}
.mvn-registration-panel[hidden]{display:none!important}
.mvn-step-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.mvn-step-heading>div:first-child{display:flex;gap:12px;align-items:flex-start}
.mvn-step-number{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:#e8f3ef;color:#0a4a3e;font-size:10px;font-weight:900}
.mvn-step-heading h2{margin:0;font-size:18px;letter-spacing:-.02em}
.mvn-step-heading p{max-width:640px;margin:4px 0 0;color:#6b7e79;font-size:10px;line-height:1.55}
.mvn-step-required{color:#8a6a25;font-size:10px;font-weight:800;white-space:nowrap}
.mvn-registration-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.mvn-registration-fields .field{min-width:0}
.mvn-registration-fields .field.full{grid-column:1/-1}
.mvn-registration-fields label>span,.mvn-registration-fields .field>label{display:block;margin-bottom:6px;color:#2b413a;font-size:10px;font-weight:800}
.mvn-registration-fields input,.mvn-registration-fields select{min-height:44px}
.mvn-registration-fields small{display:block;margin-top:5px;color:#74857f;font-size:10px;line-height:1.5}
.mvn-field-note{padding:9px 11px;border:1px solid #dbe9e4;border-radius:9px;background:#f7fbf9;color:#5c7069;font-size:11px;line-height:1.55}
.mvn-registration-file{padding:13px;border:1px dashed #bfd5cd;border-radius:11px;background:#fbfdfc}
.mvn-registration-skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.mvn-registration-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 24px;border-top:1px solid var(--line);background:#fbfdfc}
.mvn-registration-actions>div{display:flex;gap:8px}
.mvn-registration-actions .btn{min-width:112px}
.mvn-registration-submit{display:inline-flex}
.mvn-registration-shell.is-enhanced .mvn-registration-submit{display:none}
.mvn-registration-shell.is-enhanced .mvn-registration-submit.is-visible{display:inline-flex}
.mvn-registration-review{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.mvn-registration-review>div{padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fbfdfc;min-width:0}
.mvn-registration-review span,.mvn-registration-review strong{display:block}
.mvn-registration-review span{color:#74857f;font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:800}
.mvn-registration-review strong{margin-top:4px;overflow-wrap:anywhere;font-size:10px}
.mvn-review-files{grid-column:1/-1}
.mvn-registration-consent{display:flex;gap:9px;margin-top:16px;padding:12px;border:1px solid #dbe8e3;border-radius:10px;background:#f8fbfa;color:#465b54;font-size:11px;line-height:1.55}
.mvn-registration-consent input{width:20px;height:20px;min-width:20px;flex:0 0 auto;margin-top:0}
.mvn-registration-followup-note{margin:10px 0 0;color:#74857f;font-size:10px;text-align:center}
.mvn-step-error{display:none;margin-top:8px;color:#9a251c;font-size:11px;font-weight:700}
.mvn-step-error.is-visible{display:block}
.mvn-registration-panel :invalid[data-step-touched=true]{border-color:#cf7770;box-shadow:0 0 0 3px rgba(180,35,24,.08)}
.mvn-phone-preview-strong{color:#176856!important;font-weight:800}

/* Auth page sizing for the longer registration workflow. */
.auth-panel:has(.mvn-registration-card-v3){align-items:start;padding-block:28px}
.auth-card.mvn-registration-card-v3>.inline{padding:16px 20px 0}
.auth-card.mvn-registration-card-v3>.alert{margin:12px 20px 0}
.auth-card.mvn-registration-card-v3>.auth-powered{margin:18px 20px 20px}
.auth-card.mvn-registration-card-v3>.mvn-registration-page-v3{padding:18px 20px 0}

/* Volunteer profile editor */
.mvn-profile-editor-v3{display:block}
.mvn-profile-editor-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:19px 21px;border:1px solid var(--mvn-v3-border);border-radius:var(--mvn-v3-radius-lg);background:var(--mvn-v3-surface);box-shadow:var(--mvn-v3-shadow-sm)}
.mvn-profile-editor-identity{display:flex;align-items:center;gap:14px;min-width:0}
.mvn-profile-editor-identity .avatar,.mvn-profile-editor-identity .mvn-avatar-fallback{width:66px;height:66px;border-radius:17px;flex:0 0 auto}
.mvn-profile-editor-identity h1{margin:2px 0 4px;font-size:clamp(24px,3vw,33px);letter-spacing:-.04em}
.mvn-profile-editor-identity p{margin:0;color:var(--mvn-v3-muted);font-size:10px}
.mvn-profile-editor-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.mvn-profile-editor-meta span{padding:4px 7px;border:1px solid var(--mvn-v3-border);border-radius:7px;background:var(--mvn-v3-surface-soft);color:var(--mvn-v3-muted);font-size:10px}
.mvn-profile-readiness{display:flex;align-items:center;gap:12px;min-width:220px}
.mvn-profile-readiness-ring{display:grid;place-items:center;width:58px;height:58px;border:6px solid var(--mvn-v3-primary-100);border-radius:50%;background:var(--mvn-v3-surface);color:var(--mvn-v3-primary-900);font-size:15px;font-weight:900}
.mvn-profile-readiness strong,.mvn-profile-readiness span{display:block}
.mvn-profile-readiness strong{font-size:10px}
.mvn-profile-readiness span{margin-top:2px;color:var(--mvn-v3-muted);font-size:10px}
.mvn-profile-editor-nav{position:sticky;top:var(--mvn-v3-topbar);z-index:14;display:flex;gap:3px;margin-top:12px;padding:5px;border:1px solid var(--mvn-v3-border);border-radius:11px;background:color-mix(in srgb,var(--mvn-v3-surface) 96%,transparent);backdrop-filter:blur(12px);overflow-x:auto}
.mvn-profile-editor-nav a{flex:0 0 auto;padding:7px 10px;border-radius:7px;color:var(--mvn-v3-muted);font-size:11px;font-weight:800;text-decoration:none}
.mvn-profile-editor-nav a:hover{color:var(--mvn-v3-primary-800);background:var(--mvn-v3-primary-50)}
.mvn-profile-editor-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.55fr);gap:14px;align-items:start;margin-top:14px}
.mvn-profile-form-v3{display:grid;gap:13px;min-width:0}
.mvn-profile-edit-section{scroll-margin-top:calc(var(--mvn-v3-topbar) + 58px);padding:18px}
.mvn-profile-edit-section-head{display:flex;align-items:flex-start;gap:11px;margin-bottom:15px}
.mvn-profile-edit-section-head>span{display:grid;place-items:center;width:31px;height:31px;flex:0 0 auto;border-radius:9px;background:var(--mvn-v3-primary-100);color:var(--mvn-v3-primary-900);font-size:11px;font-weight:900}
.mvn-profile-edit-section-head h2{margin:0;font-size:15px}
.mvn-profile-edit-section-head p{margin:3px 0 0;color:var(--mvn-v3-muted);font-size:11px;line-height:1.5}
.mvn-profile-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mvn-profile-field-grid .field.full{grid-column:1/-1}
.mvn-profile-skill-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mvn-profile-picture-control{display:flex;align-items:center;gap:12px;padding:11px;border:1px dashed var(--mvn-v3-border-strong);border-radius:10px;background:var(--mvn-v3-surface-soft)}
.mvn-profile-picture-control .avatar,.mvn-profile-picture-control .mvn-avatar-fallback{width:45px;height:45px;border-radius:11px;flex:0 0 auto}
.mvn-profile-picture-control .field{flex:1;min-width:0}
.mvn-profile-savebar{position:sticky;bottom:14px;z-index:16;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 13px;border:1px solid var(--mvn-v3-border-strong);border-radius:11px;background:color-mix(in srgb,var(--mvn-v3-surface) 96%,transparent);box-shadow:var(--mvn-v3-shadow-md);backdrop-filter:blur(14px)}
.mvn-profile-savebar strong,.mvn-profile-savebar small{display:block}
.mvn-profile-savebar strong{font-size:10px}.mvn-profile-savebar small{margin-top:2px;color:var(--mvn-v3-muted);font-size:10px}
.mvn-profile-editor-side{position:sticky;top:calc(var(--mvn-v3-topbar) + 48px);display:grid;gap:10px}
.mvn-profile-side-card{padding:15px}
.mvn-profile-side-card h3{margin:0 0 5px;font-size:13px}
.mvn-profile-side-card p{margin:0;color:var(--mvn-v3-muted);font-size:10px;line-height:1.55}
.mvn-profile-checklist{display:grid;gap:6px;margin-top:12px}
.mvn-profile-checklist div{display:flex;align-items:center;gap:7px;color:var(--mvn-v3-muted);font-size:10px}
.mvn-profile-checklist i{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--mvn-v3-warning-soft);color:var(--mvn-v3-warning);font-style:normal;font-size:10px;font-weight:900}
.mvn-profile-checklist .done i{background:var(--mvn-v3-success-soft);color:var(--mvn-v3-success)}
.mvn-profile-checklist .done{color:var(--mvn-v3-text-soft)}
.mvn-profile-utility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.mvn-profile-utility-card{padding:17px;min-width:0}
.mvn-profile-utility-card .section-title{margin-bottom:8px}
.mvn-profile-utility-card .section-title h2{font-size:15px}
.mvn-profile-utility-card .section-title p{margin:3px 0 0;color:var(--mvn-v3-muted);font-size:10px}
.mvn-profile-inline-list{display:grid;gap:6px;margin-top:10px}
.mvn-profile-inline-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--mvn-v3-border)}
.mvn-profile-inline-item:last-child{border-bottom:0}
.mvn-profile-inline-item strong,.mvn-profile-inline-item small{display:block}
.mvn-profile-inline-item strong{font-size:10px}.mvn-profile-inline-item small{margin-top:2px;color:var(--mvn-v3-muted);font-size:10px}
.mvn-profile-utility-form{margin-top:12px;padding-top:12px;border-top:1px solid var(--mvn-v3-border)}
.mvn-profile-utility-form .form-grid{gap:9px}
.mvn-profile-utility-form .field label{font-size:11px}
.mvn-profile-utility-form .btn{margin-top:2px}
.mvn-profile-unavailable-block{margin-top:17px;padding-top:15px;border-top:1px solid var(--mvn-v3-border)}

html[data-mvn-theme="dark"] .mvn-registration-shell,html[data-mvn-theme="dark"] .mvn-registration-panel,html[data-mvn-theme="dark"] .mvn-registration-step.is-active,html[data-mvn-theme="dark"] .mvn-registration-actions{background:#182522;color:#e8f3ef;border-color:#32443f}
html[data-mvn-theme="dark"] .mvn-registration-progress,html[data-mvn-theme="dark"] .mvn-registration-review>div,html[data-mvn-theme="dark"] .mvn-registration-file,html[data-mvn-theme="dark"] .mvn-field-note,html[data-mvn-theme="dark"] .mvn-registration-consent{background:#1d2b27;border-color:#32443f;color:#c8d8d3}
html[data-mvn-theme="dark"] .mvn-registration-step{color:#a8bbb5;border-color:#32443f}

@media(max-width:1050px){
 .mvn-profile-editor-layout{grid-template-columns:1fr}.mvn-profile-editor-side{position:static;grid-template-columns:1fr 1fr}.mvn-profile-readiness{min-width:0}
}
@media(max-width:820px){
 .mvn-registration-progress{grid-template-columns:repeat(5,1fr)}.mvn-registration-step{justify-content:center;padding:11px 5px}.mvn-registration-step span{display:none}.mvn-registration-fields{grid-template-columns:1fr}.mvn-registration-skill-grid{grid-template-columns:1fr}.mvn-registration-review{grid-template-columns:1fr}.mvn-review-files{grid-column:auto}
 .mvn-profile-editor-hero{align-items:flex-start;flex-direction:column}.mvn-profile-readiness{width:100%}.mvn-profile-editor-side{grid-template-columns:1fr}.mvn-profile-utility-grid{grid-template-columns:1fr}.mvn-profile-editor-nav{top:62px}
}
@media(max-width:600px){
 .auth-card.mvn-registration-card-v3>.inline{padding:13px 14px 0}.auth-card.mvn-registration-card-v3>.alert{margin:10px 14px 0}.auth-card.mvn-registration-card-v3>.auth-powered{margin:16px 14px}.auth-card.mvn-registration-card-v3>.mvn-registration-page-v3{padding:14px 14px 0}
 .mvn-registration-intro{flex-direction:column}.mvn-registration-shell{border-radius:13px}.mvn-registration-panel{padding:17px 14px}.mvn-registration-actions{padding:12px 14px;align-items:stretch;flex-direction:column}.mvn-registration-actions>div{display:grid;grid-template-columns:1fr 1fr}.mvn-registration-actions .btn{width:100%;min-width:0}.mvn-step-heading{flex-direction:column;gap:8px}.mvn-step-required{white-space:normal}
 .mvn-profile-editor-hero{padding:15px}.mvn-profile-editor-identity{align-items:flex-start}.mvn-profile-editor-identity .avatar,.mvn-profile-editor-identity .mvn-avatar-fallback{width:55px;height:55px}.mvn-profile-readiness{align-items:center}.mvn-profile-edit-section{padding:14px}.mvn-profile-field-grid,.mvn-profile-skill-row{grid-template-columns:1fr}.mvn-profile-savebar{bottom:72px;align-items:stretch;flex-direction:column}.mvn-profile-savebar .btn{width:100%}.mvn-profile-picture-control{align-items:flex-start;flex-direction:column}.mvn-profile-utility-card{padding:14px}
}

/* Production accessibility hardening — larger touch targets without changing layout hierarchy. */
.mvn-login-links a,.auth-card.narrow>p>a{display:inline-flex;align-items:center;min-height:44px;padding-block:8px}
.check{min-height:44px;align-items:center}
.check input{width:20px;height:20px;min-width:20px;margin-top:0}

/* Production touch-target normalization. */
.auth-card input:not([type="checkbox"]):not([type="radio"]),
.auth-card select,
.auth-card textarea,
.auth-card .btn,
.mvn-registration-actions .btn {
    min-height: 44px;
}

/* 2026-10-09: Registration readability and keyboard accessibility corrections. */
.mvn-registration-step span{font-size:12px}
.mvn-registration-fields label>span,
.mvn-registration-fields .field>label{font-size:12px;line-height:1.4}
.mvn-registration-fields small{font-size:12px;line-height:1.55;color:#52665e}
.mvn-registration-review span{font-size:11px;color:#52665e}
.mvn-registration-review strong{font-size:13px;line-height:1.5}
.mvn-registration-consent{font-size:12px;line-height:1.6}
.mvn-registration-followup-note{font-size:12px;color:#52665e}
.mvn-registration-step:focus-visible,
.mvn-registration-fields :is(input,select,textarea):focus-visible,
.mvn-registration-actions .btn:focus-visible,
.mvn-profile-editor-nav a:focus-visible{
    outline:3px solid #1c8068;
    outline-offset:3px;
}
html[data-mvn-theme="dark"] .mvn-registration-fields label>span,
html[data-mvn-theme="dark"] .mvn-registration-fields .field>label,
html[data-mvn-theme="dark"] .mvn-registration-review strong{color:#ebf5f1}
html[data-mvn-theme="dark"] .mvn-registration-fields small,
html[data-mvn-theme="dark"] .mvn-registration-review span,
html[data-mvn-theme="dark"] .mvn-registration-followup-note{color:#c9dcd4}
html[data-mvn-theme="dark"] .mvn-registration-step:focus-visible,
html[data-mvn-theme="dark"] .mvn-registration-fields :is(input,select,textarea):focus-visible,
html[data-mvn-theme="dark"] .mvn-registration-actions .btn:focus-visible{
    outline-color:#a4e7d0;
}

/* 2026-10-09: Profile editing readability and touch target adjustments. */
.mvn-profile-editor-identity p,
.mvn-profile-edit-section-head p,
.mvn-profile-side-card p,
.mvn-profile-utility-card .section-title p,
.mvn-profile-inline-item small,
.mvn-profile-readiness span,
.mvn-profile-savebar small{font-size:12px;line-height:1.55}
.mvn-profile-readiness strong,
.mvn-profile-checklist div,
.mvn-profile-inline-item strong,
.mvn-profile-savebar strong{font-size:12px;line-height:1.4}
.mvn-profile-editor-nav a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  font-size:12px;
  white-space:nowrap;
}
.mvn-profile-side-card h3{font-size:15px}
.mvn-profile-utility-card .section-title h2{font-size:16px}

/* Mobile wizard step captions remain accessible to screen readers. */
@media (max-width:820px){
 .mvn-registration-step span{
  display:block;
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip-path:inset(50%);
  white-space:nowrap;
 }
}
