.mpd-member {
  --mpd-ink: var(--jonathan-color-ink, var(--wp--preset--color--contrast, #050505));
  --mpd-canvas: var(--jonathan-color-canvas, var(--wp--preset--color--base, #fafafa));
  --mpd-surface: var(--jonathan-color-surface, var(--wp--preset--color--base, #fff));
  --mpd-subtle: var(--jonathan-color-subtle, var(--wp--preset--color--accent-3, #e6e6e6));
  --mpd-rule: var(--jonathan-color-rule, color-mix(in srgb, var(--mpd-ink) 30%, var(--mpd-canvas)));
  --mpd-muted: var(--jonathan-color-muted, color-mix(in srgb, var(--mpd-ink) 65%, var(--mpd-canvas)));
  max-width: var(--wp--style--global--content-size, 645px);
  margin: var(--jonathan-space-6, 30px) auto;
  color: var(--mpd-ink);
  background: var(--mpd-canvas);
  font-family: var(--jonathan-font-sans, var(--wp--preset--font-family--manrope, Manrope, sans-serif));
  padding: 0;
  border: 0;
}
.wp-site-blocks:has(.mpd-member) main > .wp-block-group.alignfull { padding-block: var(--wp--preset--spacing--40, 30px) !important; }
.mpd-member *, .mpd-member button, .mpd-member input, .mpd-member select, .mpd-member textarea { box-sizing: border-box; border-radius: 0; }
.mpd-member-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--jonathan-horizontal-gutter, 15px); row-gap: var(--jonathan-space-4, 20px); }
.mpd-member-fields { border-block: 1px solid var(--mpd-rule); margin-top: var(--jonathan-space-4, 20px); padding-block: var(--jonathan-space-4, 20px); }
.mpd-member-grid > .mpd-member-zip-field { grid-column: 1 / -1; justify-self: center; width: calc((100% - var(--jonathan-horizontal-gutter, 15px)) / 2); }
.mpd-member-field-status { margin-inline-start: var(--jonathan-space-2, 10px); color: var(--mpd-muted); font-size: var(--jonathan-editorial-caption-font-size, 15px); line-height: var(--jonathan-editorial-caption-line-height, 20px); white-space: nowrap; }
.mpd-member #mpd-location-guidance { display: block; margin-top: var(--jonathan-space-2, 10px); color: var(--mpd-muted); font-size: var(--jonathan-editorial-caption-font-size, 15px); line-height: var(--jonathan-editorial-caption-line-height, 20px); text-align: center; }
.mpd-member-fields > #mpd-intro-count { margin-bottom: 0; }
.mpd-member label, .mpd-member legend { display: block; font-size: var(--wp--preset--font-size--large, 20px); line-height: var(--jonathan-form-label-height, 30px); font-weight: 400; margin: var(--jonathan-space-4, 20px) 0; }
.mpd-member-grid > label { margin: 0; min-width: 0; }
.mpd-member input:not([type=checkbox]):not([type=radio]):not([type=hidden]), .mpd-member select, .mpd-member textarea {
  display: block; width: 100%; min-width: 0;
  height: var(--jonathan-control-height, 50px);
  padding: 0 var(--jonathan-space-4, 20px);
  margin-top: var(--jonathan-form-label-gap, 5px);
  border: var(--jonathan-border-width, 1px) solid var(--mpd-rule);
  background: var(--mpd-surface); color: var(--mpd-ink);
  font-family: inherit; font-size: var(--jonathan-control-font-size, 15px);
  line-height: var(--jonathan-control-line-height, 20px); font-weight: 400;
}
.mpd-member textarea { min-height: var(--jonathan-form-textarea-height, 200px); padding-block: var(--jonathan-space-2, 10px); resize: vertical; }
.mpd-member .mpd-member-image-field { text-align: center; }
.mpd-member .mpd-member-image-field legend { margin: 0 auto var(--jonathan-space-2, 10px); }
.mpd-member-image-picker { position: relative; width: var(--jonathan-form-submit-width-wide, 215px); max-width: 100%; height: var(--jonathan-control-height, 50px); margin: 0 auto; }
.mpd-member-image-button { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; background: var(--mpd-ink); color: var(--mpd-canvas); font-size: var(--jonathan-control-font-size, 15px); line-height: var(--jonathan-control-line-height, 20px); }
.mpd-member .mpd-member-image-picker input[type=file] { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; margin: 0; padding: 0; border: 0; opacity: 0; cursor: pointer; }
.mpd-member-image-picker:hover .mpd-member-image-button { background: color-mix(in srgb, var(--mpd-ink) 85%, transparent); }
.mpd-member-image-picker:focus-within .mpd-member-image-button { outline: var(--jonathan-focus-ring-width, 2px) solid var(--mpd-ink); outline-offset: var(--jonathan-focus-ring-offset, 2px); }
.mpd-member-image-field #mpd-member-image-status { margin: var(--jonathan-space-2, 10px) 0; color: var(--mpd-muted); font-size: var(--jonathan-editorial-caption-font-size, 15px); overflow-wrap: anywhere; }
.mpd-member-image-field #mpd-member-image-help { margin: var(--jonathan-space-2, 10px) 0 0; color: var(--mpd-muted); font-size: var(--jonathan-editorial-caption-font-size, 15px); line-height: var(--jonathan-editorial-caption-line-height, 20px); }
.mpd-member button {
  display: inline-flex; align-items: center; justify-content: center;
  width: var(--jonathan-form-submit-width-wide, 215px); max-width: 100%;
  min-height: var(--jonathan-control-height, 50px);
  padding: var(--jonathan-control-text-padding-block, 5px) var(--jonathan-space-4, 20px);
  margin: var(--jonathan-space-4, 20px) 0;
  border: 0; background: var(--mpd-ink); color: var(--mpd-canvas);
  font-family: inherit; font-size: var(--jonathan-control-font-size, 15px);
  line-height: var(--jonathan-control-line-height, 20px); font-weight: 400; cursor: pointer;
}
.mpd-member button:hover:not(:disabled) { background: color-mix(in srgb, var(--mpd-ink) 85%, transparent); }
.mpd-member :is(input, select, textarea, button, summary):focus-visible { outline: var(--jonathan-focus-ring-width, 2px) solid var(--mpd-ink); outline-offset: var(--jonathan-focus-ring-offset, 2px); }
.mpd-member .mpd-member-check { display: flex; align-items: flex-start; gap: var(--jonathan-choice-row-gap, 10px); font-size: var(--jonathan-control-font-size, 15px); line-height: var(--jonathan-control-line-height, 20px); font-weight: 400; }
.mpd-member input:is([type=checkbox], [type=radio]) { flex: 0 0 var(--jonathan-choice-control-size, 20px); width: var(--jonathan-choice-control-size, 20px); height: var(--jonathan-choice-control-size, 20px); margin: 0; accent-color: var(--mpd-ink); }
.mpd-member fieldset { border: var(--jonathan-border-width, 1px) solid var(--mpd-rule); padding: var(--jonathan-space-4, 20px); margin: var(--jonathan-space-6, 30px) 0; min-width: 0; }
.mpd-member legend { padding: 0 var(--jonathan-space-2, 10px); }
.mpd-member fieldset > legend { margin-bottom: 0; }
.mpd-member fieldset > legend + p { margin-top: 0; }
.mpd-member fieldset:has(+ #discussion-emails) { margin-bottom: var(--jonathan-space-4, 20px); }
.mpd-member #discussion-emails { margin-top: var(--jonathan-space-4, 20px); }
.mpd-member .mpd-member-warning:last-child { margin-bottom: 0; }
.mpd-member-contact-options { display: flex; flex-direction: column; align-items: center; gap: var(--jonathan-space-2, 10px); border-block: 1px solid var(--mpd-rule); padding-block: var(--jonathan-space-3, 15px); margin-block: var(--jonathan-space-4, 20px); }
.mpd-member-form .mpd-member-contact-options > .mpd-member-check { justify-content: center; width: 100%; margin: 0; }
.mpd-member-digest-options { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--jonathan-space-2, 10px); }
.mpd-member .mpd-member-digest-options > .mpd-member-check { align-items: center; justify-content: center; margin: 0; white-space: nowrap; }
.mpd-member-notice { border-left: 4px solid var(--mpd-ink); padding: var(--jonathan-space-4, 20px); background: var(--mpd-subtle); }
.mpd-member-public h2, .mpd-member-location { text-align: center; }
.mpd-member-portrait { display: block; width: 180px; height: 180px; object-fit: cover; margin: 0 auto; }
.mpd-member-portrait--fallback { display: flex; align-items: center; justify-content: center; border: 1px solid var(--mpd-rule); background: var(--mpd-subtle); color: var(--mpd-ink); font-size: 50px; font-weight: 700; letter-spacing: .05em; }
.mpd-member-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid var(--mpd-rule); margin: var(--jonathan-space-6, 30px) 0; }
.mpd-member-stats > div { display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 0; padding: var(--jonathan-space-4, 20px) var(--jonathan-space-2, 10px); text-align: center; }
.mpd-member-stats > div + div { border-left: 1px solid var(--mpd-rule); }
.mpd-member-stats span, .mpd-member-stats small { font-size: var(--jonathan-editorial-caption-font-size, 15px); line-height: var(--jonathan-editorial-caption-line-height, 20px); }
.mpd-member-stats strong { font-size: clamp(20px, 4vw, 30px); line-height: 1.3; overflow-wrap: anywhere; }
.mpd-member-stats small { color: var(--mpd-muted); }
.mpd-member-introduction { overflow-wrap: anywhere; white-space: normal; }
.mpd-member-contact { border-top: 1px solid var(--mpd-rule); margin-top: var(--jonathan-space-6, 30px); padding-top: var(--jonathan-space-4, 20px); text-align: center; }
.mpd-member-contact button { margin-inline: auto; }
.mpd-member-contact button[hidden] { display: none; }
.mpd-member-contact-status:empty { display: none; }
.mpd-member-contact-results { border: 1px solid var(--mpd-rule); padding: var(--jonathan-space-4, 20px); overflow-wrap: anywhere; }
.mpd-member-contact-results p { margin: var(--jonathan-space-2, 10px) 0; }
.mpd-member-contact-results[hidden] { display: none; }
.mpd-member-activity { border-top: 1px solid var(--mpd-rule); margin-top: var(--jonathan-space-6, 30px); padding-top: var(--jonathan-space-4, 20px); }
.mpd-member-filters, .mpd-member-pages { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--jonathan-space-4, 20px); }
.mpd-member-filters a { padding: var(--jonathan-space-2, 10px); }
.mpd-member-filters a[aria-current=page] { background: var(--mpd-subtle); font-weight: 700; }
.mpd-member-result-count, .mpd-member-empty { text-align: center; }
.mpd-member-activity-list { list-style: none; margin: 0; padding: 0; }
.mpd-member-entry { border-top: 1px solid var(--mpd-rule); padding: var(--jonathan-space-4, 20px) 0; }
.mpd-member-entry :is(p) { margin: 0 0 var(--jonathan-space-4, 20px); }
.mpd-member-entry-meta, .mpd-member-entry-votes { color: var(--mpd-muted); font-size: var(--jonathan-editorial-caption-font-size, 15px); }
.mpd-member-entry-text { overflow-wrap: anywhere; }
.mpd-member-entry-actions { display: flex; flex-wrap: wrap; gap: var(--jonathan-space-4, 20px); }
.mpd-member details { border-top: 1px solid var(--mpd-rule); padding: var(--jonathan-space-4, 20px) 0; }
.mpd-member summary { cursor: pointer; }
.mpd-member .contact-conclusion { border-top: 1px solid var(--mpd-rule); margin-top: 0; padding-top: var(--jonathan-space-2, 10px); }
.mpd-member .contact-conclusion > h2 { margin-top: 0; }
.mpd-member label small, .mpd-member #mpd-intro-count { font-weight: 400; font-size: var(--jonathan-editorial-caption-font-size, 15px); line-height: var(--jonathan-editorial-caption-line-height, 20px); color: var(--mpd-muted); }
.mpd-member label small { display: block; margin-top: var(--jonathan-form-label-gap, 5px); }
.mpd-member label small:empty { display: none; }
@media (max-width: 540px) { .mpd-member-grid { grid-template-columns: 1fr; } .mpd-member-grid > .mpd-member-zip-field { width: 100%; } .mpd-member-digest-options { grid-template-columns: repeat(2, minmax(0, 1fr)); } .mpd-member button { width: var(--jonathan-form-submit-width-narrow, 220px); } }
@media (max-width: 540px) { .mpd-member-stats { grid-template-columns: 1fr; } .mpd-member-stats > div + div { border-left: 0; border-top: 1px solid var(--mpd-rule); } }
.mpd-member button:disabled { opacity: .6; cursor: wait; }
.mpd-member input::placeholder, .mpd-member textarea::placeholder { color: var(--mpd-muted); opacity: 1; text-align: left; }
/* Empty state hints match placeholders; selected states retain the text color. */
.mpd-member select[name=state]:has(option[value=""]:checked) { color: var(--mpd-muted); }
.mpd-member select[name=state] option { color: var(--mpd-ink); }
.mpd-member select[name=state] option[value=""] { color: var(--mpd-muted); }
.wp-site-blocks:has(.mpd-member) .wp-block-post-title,
.mpd-member label:not(.mpd-member-check),
.mpd-member legend,
.mpd-member fieldset > p:has(> a:only-child),
.mpd-member > p:has(> a:only-child) { text-align: center; }
.mpd-member legend { margin-inline: auto; }
.mpd-member input:not([type=checkbox]):not([type=radio]), .mpd-member select, .mpd-member textarea { text-align: center; }
.mpd-member form > button[type=submit] { display: flex; margin-inline: auto; text-align: center; }

/* Profile forms center their copy, field values, and contact choices together. */
.mpd-member:has(> .mpd-member-form),
.mpd-member-form :is(p, label, legend, small, input, select, textarea) { text-align: center; }
.mpd-member-form select { text-align-last: center; }
.mpd-member-form .mpd-member-check { justify-content: flex-start; text-align: left; }

/* Profile settings keep labels centered while entered field values align with their hints. */
.mpd-member .mpd-member-form--edit :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]), select, textarea) { text-align: left; }
.mpd-member .mpd-member-form--edit select { text-align-last: left; }

/* Empty State uses the same left alignment as the text-field hints. */
.mpd-member select[name=state]:has(option[value=""]:checked) { text-align: left; text-align-last: left; }
