/* Focused UX enhancements kept separate from the legacy presentation bundle. */
.sbd-filter-more { width: 100%; margin-top: 12px; }
.sbd-filter-more > summary { display: inline-flex; min-height: 42px; align-items: center; cursor: pointer; font-weight: 700; }
.sbd-filter-submit { display: flex; flex-wrap: wrap; gap: 12px 18px; align-items: center; margin-top: 14px; }
.sbd-filter-submit > span { color: var(--sbd-muted, #64748b); font-size: .925rem; }
.sbd-filter-sort { margin-left: auto; }
.sbd-card__rating { white-space: nowrap; }
.sbd-card__badges .sbd-badge:nth-of-type(n+4) { display: none; }
.sbd-directory-disclosure { margin: 10px 0 24px; padding: 10px 12px; border-left: 3px solid currentColor; color: var(--sbd-muted, #64748b); font-size: .875rem; }
[data-sbd-results-heading]:focus { outline: 0; }
@media (max-width: 900px) {
	.sbd-filter-submit .sbd-button { width: 100%; }
	.sbd-filter-sort { margin-left: 0; }
}

/* Plain-language chamber member profile builder. */
.sbd-owner-wizard { padding: clamp(18px, 3vw, 34px); border: 1px solid #dbe3ee; border-radius: 22px; background: #f7f9fc; box-shadow: 0 18px 50px rgba(15, 23, 42, .08); }
.sbd-owner-wizard__header { display: flex; justify-content: space-between; gap: 24px; align-items: flex-start; margin-bottom: 22px; }
.sbd-owner-wizard__header h3 { margin: 4px 0 6px; font-size: clamp(1.55rem, 3vw, 2.25rem); }
.sbd-owner-wizard__header p { margin: 0; color: #64748b; }
.sbd-owner-wizard__header [data-sbd-owner-save-status] { flex: 0 0 auto; padding: 7px 11px; border-radius: 999px; color: #166534; background: #dcfce7; font-size: .82rem; font-weight: 700; }
.sbd-owner-wizard__steps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin-bottom: 22px; }
.sbd-owner-wizard__steps button { display: grid; gap: 6px; justify-items: center; min-height: 72px; padding: 9px; border: 1px solid #dbe3ee; border-radius: 12px; color: #475569; background: #fff; cursor: pointer; font: inherit; font-size: .78rem; font-weight: 700; text-align: center; }
.sbd-owner-wizard__steps button span { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 50%; background: #e2e8f0; }
.sbd-owner-wizard__steps button.is-active { border-color: var(--sbd-accent, #2563eb); color: #0f172a; box-shadow: 0 0 0 2px color-mix(in srgb, var(--sbd-accent, #2563eb) 16%, transparent); }
.sbd-owner-wizard__steps button.is-active span { color: #fff; background: var(--sbd-accent, #2563eb); }
.sbd-owner-wizard__workspace { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(260px, .75fr); gap: 22px; align-items: start; }
.sbd-owner-wizard__panels, .sbd-owner-preview { padding: clamp(18px, 3vw, 28px); border: 1px solid #dbe3ee; border-radius: 16px; background: #fff; }
.sbd-owner-wizard__panels section > h4 { margin: 0 0 6px; font-size: 1.35rem; }
.sbd-owner-wizard__panels section > p { margin: 0 0 22px; color: #64748b; }
.sbd-owner-wizard label > span small { display: block; margin-top: 3px; color: #64748b; font-size: .78rem; font-weight: 400; }
.sbd-owner-wizard input, .sbd-owner-wizard select, .sbd-owner-wizard textarea { border-color: #cbd5e1; border-radius: 9px; background: #fff; }
.sbd-owner-wizard input:focus, .sbd-owner-wizard select:focus, .sbd-owner-wizard textarea:focus { border-color: var(--sbd-accent, #2563eb); box-shadow: 0 0 0 3px rgba(37, 99, 235, .14); outline: 0; }
.sbd-character-count { align-self: flex-end; color: #64748b; }
.sbd-owner-wizard__footer { display: flex; justify-content: flex-end; gap: 10px; margin-top: 24px; padding-top: 18px; border-top: 1px solid #e2e8f0; }
.sbd-owner-preview { position: sticky; top: 24px; }
.sbd-owner-preview > span { display: block; margin-bottom: 10px; color: #64748b; font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.sbd-owner-preview__card { overflow: hidden; padding: 18px; border: 1px solid #dbe3ee; border-radius: 14px; box-shadow: 0 12px 28px rgba(15, 23, 42, .09); }
.sbd-owner-preview__image { display: grid; width: 64px; height: 64px; margin-bottom: 16px; place-items: center; border-radius: 14px; color: #fff; background: linear-gradient(135deg, var(--sbd-accent, #2563eb), #0f766e); font-size: 1.8rem; font-weight: 800; }
.sbd-owner-preview__image.has-image { background-color: #fff; background-position: center; background-repeat: no-repeat; background-size: contain; }
.sbd-owner-preview__card small { color: #64748b; }
.sbd-owner-preview__card h4 { margin: 4px 0 8px; font-size: 1.25rem; }
.sbd-owner-preview__card p { min-height: 3em; color: #475569; }
[data-sbd-owner-checklist] ul { display: grid; gap: 9px; padding: 0; list-style: none; }
[data-sbd-owner-checklist] li { padding: 10px 12px; border-radius: 8px; color: #991b1b; background: #fef2f2; }
[data-sbd-owner-checklist] li.is-complete { color: #166534; background: #f0fdf4; }
.sbd-owner-change-note { margin: 0 0 20px; padding: 14px 16px; border-left: 4px solid #d97706; border-radius: 8px; background: #fffbeb; }
.sbd-owner-change-note p { margin: 5px 0 0; }
@media (max-width: 900px) { .sbd-owner-wizard__workspace { grid-template-columns: 1fr; } .sbd-owner-preview { position: static; } }
@media (max-width: 640px) { .sbd-owner-wizard__header { display: grid; } .sbd-owner-wizard__steps { display: flex; overflow-x: auto; padding-bottom: 6px; } .sbd-owner-wizard__steps button { min-width: 108px; } .sbd-owner-wizard__footer { position: sticky; bottom: 0; margin-inline: -18px; padding: 12px 18px; background: #fff; box-shadow: 0 -8px 20px rgba(15,23,42,.08); } }
.sbd-search__form label, .sbd-filter-bar__search { position: relative; }
.sbd-search-suggestions { position: absolute; z-index: 30; top: calc(100% + 4px); left: 0; width: min(440px, 92vw); overflow: hidden; border: 1px solid #cbd5e1; border-radius: 12px; background: #fff; box-shadow: 0 18px 38px rgba(15,23,42,.16); }
.sbd-search-suggestions a { display: grid; gap: 1px; padding: 10px 13px; color: #0f172a; text-decoration: none; }
.sbd-search-suggestions a + a { border-top: 1px solid #e2e8f0; }
.sbd-search-suggestions a:hover, .sbd-search-suggestions a:focus { background: #eff6ff; outline: 0; }
.sbd-search-suggestions small { color: #64748b; font-size: .72rem; text-transform: uppercase; }
.sbd-saved-searches { padding: 20px; border: 1px solid #dbe3ee; border-radius: 16px; background: #fff; }
.sbd-saved-searches [data-sbd-saved-search-output] p { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.sbd-saved-searches [data-sbd-saved-search-output] button { border: 0; color: #b91c1c; background: none; cursor: pointer; }
