/* SAF Member Directory 0.6.x — "Update your listing" form. Builds on directory.css tokens. */
.saf-mde { max-width: 860px; margin: 0 auto; padding: var(--space-6) var(--space-4) var(--space-12); font-family: var(--font-sans); color: var(--ink); }
.saf-mde__h1 { font-size: clamp(1.6rem, 3vw, 2.1rem); line-height: 1.2; margin: 0 0 var(--space-4); color: var(--ink); }
.saf-mde__lead { font-size: 1.05rem; line-height: 1.55; margin: 0 0 var(--space-4); }
.saf-mde__muted { color: var(--ink-muted); font-size: .95rem; }
.saf-mde__form { display: grid; gap: var(--space-6); }
.saf-mde__group { border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface); padding: var(--space-6); margin: 0; min-width: 0; }
.saf-mde__group > legend, .saf-mde__h { font-weight: 700; font-size: 1.1rem; padding: 0 var(--space-2); margin-left: calc(-1 * var(--space-2)); }
.saf-mde__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.saf-mde__field { display: flex; flex-direction: column; gap: var(--space-1); margin: 0 0 var(--space-4); min-width: 0; }
.saf-mde__grid .saf-mde__field { margin: 0; }
.saf-mde__field--wide { grid-column: 1 / -1; }
.saf-mde__field > label, .saf-mde__label { font-weight: 600; font-size: .95rem; display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.saf-mde__input { width: 100%; box-sizing: border-box; min-height: 44px; padding: 10px 12px; font: inherit; font-size: 1rem; color: var(--ink); background: var(--surface); border: 1px solid var(--border-strong); border-radius: var(--radius-sm); }
.saf-mde__textarea { min-height: 140px; resize: vertical; line-height: 1.5; }
.saf-mde__input:focus-visible, .saf-mde__file:focus-visible + *, .saf-mde__pick:focus-visible, .saf-mde__check input:focus-visible { outline: 3px solid var(--action-blue); outline-offset: 2px; }
.saf-mde__input[aria-invalid="true"] { border-color: #b3261e; box-shadow: 0 0 0 1px #b3261e; }
.saf-mde__hint { margin: 0; font-size: .875rem; color: var(--ink-muted); }
.saf-mde__error { margin: 0; font-size: .9rem; color: #b3261e; font-weight: 600; }
.saf-mde__check { display: flex; align-items: flex-start; gap: var(--space-2); margin-top: var(--space-2); }
.saf-mde__check input { width: 20px; height: 20px; margin: 2px 0 0; flex: none; }
.saf-mde__tag { display: inline-block; font-size: .72rem; font-weight: 700; letter-spacing: .02em; text-transform: uppercase; padding: 2px 8px; border-radius: var(--radius-pill); }
.saf-mde__tag--live { background: #e6f4ea; color: #1e6b34; }
.saf-mde__tag--review { background: #fff4e5; color: #8a4b00; }
.saf-mde__logo-row { display: flex; gap: var(--space-4); align-items: flex-start; flex-wrap: wrap; }
.saf-mde__logo-box { width: 140px; height: 104px; flex: none; border: 1px solid var(--border); border-radius: var(--radius-sm); background: var(--surface-sunken); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.saf-mde__logo-box img { max-width: 100%; max-height: 100%; object-fit: contain; }
.saf-mde__logo-none { color: var(--ink-muted); font-size: .85rem; }
.saf-mde__file { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; }
.saf-mde__file:focus-visible + .saf-mde__hint, .saf-mde__file-btn:focus-within { outline: 3px solid var(--action-blue); }
.saf-mde__file-btn { cursor: pointer; margin-bottom: var(--space-2); }
.saf-mde__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; }
.saf-mde__notice { border-radius: var(--radius-md); padding: var(--space-4) var(--space-6); margin: 0 0 var(--space-6); border: 1px solid; }
.saf-mde__notice p { margin: 0 0 var(--space-2); } .saf-mde__notice p:last-child { margin: 0; }
.saf-mde__notice ul { margin: var(--space-2) 0 0; padding-left: 1.25em; }
.saf-mde__notice--ok { background: #e6f4ea; border-color: #9fd3ad; }
.saf-mde__notice--info { background: #eaf2fb; border-color: #a9c7ea; }
.saf-mde__notice--warn { background: var(--saf-md-banner, #fff0e8); border-color: #f0c2a8; }
.saf-mde__notice--err { background: #fdecea; border-color: #f1b0aa; }
.saf-mde__picker { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); }
.saf-mde__pick { display: flex; justify-content: space-between; gap: var(--space-4); align-items: center; padding: var(--space-4) var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface); color: var(--ink); text-decoration: none; min-height: 44px; }
.saf-mde__pick:hover { border-color: var(--action-blue); }
.saf-mde__pick-name { font-weight: 700; }
.saf-mde__pick-role { color: var(--ink-muted); font-size: .9rem; }
@media (max-width: 640px) {
  .saf-mde__grid { grid-template-columns: 1fr; }
  .saf-mde__group { padding: var(--space-4); }
  .saf-mde__actions .saf-md__btn { width: 100%; justify-content: center; }
  .saf-mde__pick { flex-direction: column; align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) { .saf-mde * { transition: none !important; } }

/* 0.6.1: sign-in card (signed-out visitors) + routed layout (form served as the directory page). */
.saf-mde__card { background: var(--surface, #fff); border: 1px solid var(--border, #DCE4EC); border-radius: var(--radius-md, 12px); padding: var(--space-8, 32px) var(--space-6, 24px); box-shadow: 0 1px 2px rgba(8, 36, 72, .06); max-width: 640px; }
.saf-mde__card-title { font-size: 1.35rem; line-height: 1.3; margin: 0 0 var(--space-3, 12px); padding: 0; color: var(--ink, #082448); }
.saf-mde__card .saf-mde__actions { margin: 0 0 var(--space-4, 16px); }
.saf-mde__signin-btn { min-width: 160px; justify-content: center; }
.saf-mde__card .saf-mde__muted { margin: 0; }
.saf-mde-wrap { max-width: 880px; }
body.saf-md-update-listing-page #main-content .container::before { display: none; }
body.saf-md-update-listing-page #main-content .container { padding-top: 0; }
body.saf-md-update-listing-page #left-area { width: 100%; padding: 0; float: none; }
body.saf-md-update-listing-routed .et_pb_section:has(.saf-mde-wrap) { padding-top: 0; }
