:root{--sbd-ui-ink:#203c35;--sbd-ui-muted:#526b61;--sbd-ui-border:#ccdcd4;--sbd-ui-surface:#fff;--sbd-ui-accent:#28674e;--sbd-ui-radius:12px;--sbd-ui-space:20px;--sbd-ui-focus:#9c6b19}
/* Shared interaction treatment, scoped to plugin interfaces. */
:where(.sbd-owner-portal,.sbd-page-studio-editor,.sbd-directory,.sbd-profile-setup,.sbd-workspace) :where(input,textarea,select){scroll-margin-block:100px;accent-color:var(--sbd-ui-accent)}
:where(.sbd-owner-portal,.sbd-page-studio-editor,.sbd-directory,.sbd-profile-setup,.sbd-workspace) :focus-visible{outline:3px solid var(--sbd-ui-focus);outline-offset:3px}
:where(.sbd-owner-portal,.sbd-page-studio-editor) :where(button,a.sbd-button){border-radius:8px;min-height:40px}
.sbd-member-focus{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;margin:20px 0;padding:24px;border:1px solid var(--sbd-ui-border);border-radius:var(--sbd-ui-radius);background:var(--sbd-surface,#fff)}.sbd-member-focus h2{font-size:clamp(22px,3vw,30px);line-height:1.2;margin:8px 0}.sbd-member-focus__actions{display:flex;flex-wrap:wrap;gap:10px;align-content:center}.sbd-member-focus__facts{display:flex;flex-wrap:wrap;gap:14px;color:var(--sbd-ui-muted)}.sbd-member-focus__actions a{display:inline-flex;align-items:center;padding:10px 16px;border:1px solid var(--sbd-ui-border);border-radius:8px;text-decoration:none}.sbd-member-focus__actions a:first-child{background:var(--sbd-ui-accent);color:#fff}.sbd-owner-workspace__tabs{scroll-margin-top:20px}
@media(max-width:782px){.sbd-workspace-hero,.sbd-ui-panel{padding:20px}.sbd-workspace h1{font-size:25px}.sbd-member-focus{grid-template-columns:minmax(0,1fr);padding:20px}.sbd-setup-stepper button{flex:1 1 calc(50% - 8px);padding:10px}.sbd-owner-workspace__tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:8px}.sbd-owner-workspace__tab{flex:0 0 auto}.sbd-setup-savebar{position:static}}
@media(prefers-reduced-motion:reduce){.sbd-workspace *, .sbd-setup-stepper *{scroll-behavior:auto!important;transition:none!important}}

/* Stable logo canvas; retain profile-selected backdrop colors. */
.sbd-profile__logo-wrap,.sbd-page-studio__logo-wrap{box-sizing:border-box;display:grid;place-items:center;padding:12px;border-radius:12px;overflow:hidden}
.sbd-profile__logo-wrap img,.sbd-page-studio__logo-wrap img{display:block;object-fit:contain!important;max-width:100%!important;max-height:100%!important;margin:0}
.sbd-page-studio__logo-wrap{background:var(--sbd-surface,#fff);width:148px;height:108px}
.sbd-page-studio__logo-wrap .sbd-page-studio__logo{width:124px!important;height:84px!important}
.sbd-profile__logo-wrap img{width:100%;height:100%}
@media(max-width:782px){.sbd-filter-toggle,.sbd-filter-submit button{min-height:44px}.sbd-filter-options label,.sbd-owner-portal input:not([type=checkbox]):not([type=hidden]),.sbd-owner-portal select{min-height:44px}.sbd-owner-profile__sticky-actions{position:static}}

.sbd-member-focus .sbd-ui-status{display:inline-block;padding:5px 10px;border-radius:999px;background:#e6f1eb;color:#21583f;font-size:12px;font-weight:650;line-height:1.4}.sbd-member-focus h2,.sbd-member-focus a{overflow-wrap:anywhere}.sbd-member-focus__actions{min-width:0}
/* A shortcode may sit in a narrow theme column on an otherwise wide screen. */
.sbd-directory{container-type:inline-size;container-name:sbd-directory}
@container sbd-directory (max-width:900px){
 .sbd-grid.sbd-grid--columns-3:not(.sbd-directory-layout--list),.sbd-grid.sbd-grid--columns-4:not(.sbd-directory-layout--list),.sbd-grid.sbd-grid--columns-5:not(.sbd-directory-layout--list),.sbd-grid.sbd-grid--columns-6:not(.sbd-directory-layout--list){grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container sbd-directory (max-width:600px){
 .sbd-grid.sbd-grid--columns-2:not(.sbd-directory-layout--list),.sbd-grid.sbd-grid--columns-3:not(.sbd-directory-layout--list),.sbd-grid.sbd-grid--columns-4:not(.sbd-directory-layout--list),.sbd-grid.sbd-grid--columns-5:not(.sbd-directory-layout--list),.sbd-grid.sbd-grid--columns-6:not(.sbd-directory-layout--list){grid-template-columns:minmax(0,1fr)}
}

/* Member access: a quiet, shared visual language for sign-in and signup. */
.sbd-owner-portal--logged-out,
.sbd-member-signup--clean {
 --sbd-access-ink: #12384d;
 --sbd-access-muted: #526875;
 --sbd-access-line: #cbdde6;
 --sbd-access-accent: #176b91;
 color: var(--sbd-access-ink);
 font-size: 16px;
 line-height: 1.6;
}
.sbd-owner-portal--logged-out {
 width: 100%;
 max-width: 480px;
 margin: clamp(16px, 4vw, 56px) auto;
 gap: 20px;
}
.sbd-owner-portal--logged-out .sbd-owner-portal__signin {
 padding: clamp(24px, 5vw, 40px);
 border: 1px solid var(--sbd-access-line);
 border-radius: 20px;
 background: #fff;
 box-shadow: 0 16px 48px #12384d09;
}
.sbd-member-access__header { margin-bottom: 28px; }
.sbd-member-access__header h2 {
 margin: 10px 0 12px;
 color: var(--sbd-access-ink);
 font-size: clamp(28px, 4vw, 36px);
 line-height: 1.15;
 letter-spacing: -.035em;
}
.sbd-member-access__header p { margin: 0; color: var(--sbd-access-muted); }
.sbd-owner-portal--logged-out .sbd-section-kicker,
.sbd-member-signup--clean .sbd-section-kicker {
 color: var(--sbd-access-accent) !important;
 font-size: 11px;
 font-weight: 700;
 letter-spacing: .12em;
 text-transform: uppercase;
 overflow-wrap: anywhere;
}
.sbd-owner-portal__signin form { display: grid; gap: 18px; }
.sbd-owner-portal__signin form p { margin: 0; }
.sbd-owner-portal__signin .login-username,
.sbd-owner-portal__signin .login-password { display: grid; gap: 7px; }
.sbd-owner-portal__signin label { font-size: 14px; font-weight: 600; }
.sbd-owner-portal__signin input[type=text],
.sbd-owner-portal__signin input[type=password],
.sbd-member-signup--clean input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),
.sbd-member-signup--clean select,
.sbd-member-signup--clean textarea {
 box-sizing: border-box;
 width: 100%;
 min-width: 0;
 min-height: 48px;
 padding: 11px 13px;
 border: 1px solid #b5cbd6;
 border-radius: 8px;
 background: #fff;
 color: var(--sbd-access-ink);
 box-shadow: none;
 font: inherit;
 font-size: 16px;
 line-height: 1.5;
}
.sbd-owner-portal__signin .login-remember label { display: flex; align-items: center; gap: 9px; font-weight: 400; }
.sbd-owner-portal__signin input[type=checkbox],
.sbd-member-signup--clean input[type=checkbox],
.sbd-member-signup--clean input[type=radio] { width: 18px; height: 18px; min-height: 18px; margin: 3px 0; accent-color: var(--sbd-access-accent); flex-shrink: 0; }
.sbd-owner-portal__signin input[type=submit],
.sbd-member-signup--clean .sbd-button,
.sbd-member-signup--clean .login-submit input {
 display: inline-flex;
 justify-content: center;
 width: 100%;
 min-height: 50px;
 padding: 12px 20px;
 border: 1px solid var(--sbd-access-accent);
 border-radius: 8px;
 background: var(--sbd-access-accent);
 color: #fff;
 box-shadow: none;
 font: inherit;
 font-weight: 650;
 text-transform: none;
 letter-spacing: 0;
 cursor: pointer;
}
.sbd-owner-portal__signin input[type=submit]:hover,
.sbd-member-signup--clean .sbd-button:not(:disabled):hover,
.sbd-member-signup--clean .login-submit input:hover { background: #12384d; border-color: #12384d; transform: none; }
.sbd-member-signup--clean .sbd-button:disabled { opacity: .55; cursor: not-allowed; }
.sbd-owner-portal--logged-out a,
.sbd-member-signup--clean a { color: var(--sbd-access-accent); text-underline-offset: 3px; }
.sbd-member-access__recovery { margin: 18px 0 0; text-align: center; font-size: 14px; }
.sbd-member-access__join { display: grid; gap: 4px; margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--sbd-access-line); text-align: center; font-size: 14px; }
.sbd-member-access__join > span { color: var(--sbd-access-muted); }
.sbd-member-access__join a { font-weight: 650; }
.sbd-member-access__support { margin: 0; text-align: center; font-size: 13px; }
.sbd-owner-portal--logged-out :focus-visible,
.sbd-member-signup--clean :focus-visible { outline: 3px solid #9c6b19; outline-offset: 3px; }
.sbd-member-signup--clean { max-width: 860px; gap: 24px; margin: 24px auto 56px; }
.sbd-member-signup--clean .sbd-member-signup__header {
 gap: 12px;
 padding: 12px 0 8px;
 border: 0;
 border-radius: 0;
 background: none;
 box-shadow: none;
 color: var(--sbd-access-ink);
}
.sbd-member-signup--clean .sbd-member-signup__header h2 { max-width: 720px; color: var(--sbd-access-ink); font-size: clamp(30px, 4.5vw, 46px); line-height: 1.12; letter-spacing: -.04em; font-weight: 650; }
.sbd-member-signup--clean .sbd-member-signup__header p:last-child { max-width: 620px; color: var(--sbd-access-muted); font-size: 16px; line-height: 1.7; }
.sbd-member-signup--clean .sbd-member-signup__form { gap: 24px; }
.sbd-member-signup--clean .sbd-member-signup__panel,
.sbd-member-signup--clean fieldset[data-sbd-signup-tier-choice] {
 gap: 20px;
 padding: clamp(22px, 4vw, 36px);
 border: 1px solid var(--sbd-access-line);
 border-radius: 14px;
 box-shadow: none;
 background: #fff;
}
.sbd-member-signup--clean .sbd-member-signup__panel h3,
.sbd-member-signup--clean [data-sbd-signup-tier-choice] > legend { color: var(--sbd-access-ink); font-size: 20px; line-height: 1.3; font-weight: 650; letter-spacing: -.02em; }
.sbd-member-signup--clean .sbd-member-signup__panel p,
.sbd-member-signup--clean .description { color: var(--sbd-access-muted); font-size: 14px; line-height: 1.6; }
.sbd-member-signup--clean .sbd-owner-form__grid { grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); gap: 22px; }
.sbd-member-signup--clean .sbd-owner-form__grid label { gap: 8px; color: var(--sbd-access-ink); font-size: 14px; font-weight: 600; }
.sbd-member-signup--clean .sbd-member-signup__password-field { grid-column: 1 / -1; }
.sbd-member-signup--clean [data-sbd-password-toggle] { border-color: #b5cbd6; color: var(--sbd-access-accent); background: #f1f5f8; font-weight: 600; }
.sbd-member-signup--clean .sbd-member-signup__login-disclosure { border: 1px solid var(--sbd-access-line); border-radius: 10px; background: #f5f8fa; box-shadow: none; }
.sbd-member-signup--clean .sbd-member-signup__login-disclosure > summary { color: var(--sbd-access-accent); font-size: 14px; font-weight: 600; }
.sbd-member-signup--clean .sbd-member-signup__login { padding: 24px; background: #fff; }
.sbd-member-signup--clean .sbd-member-signup__login form { width: 100%; max-width: 100%; }
.sbd-member-signup--clean .sbd-member-signup__login .login-remember label { display: flex; align-items: center; gap: 8px; }
.sbd-member-signup--clean .sbd-member-signup__tier-disclosure { border: 1px solid var(--sbd-access-line); border-radius: 14px; background: #fff; box-shadow: none; }
.sbd-member-signup--clean .sbd-member-signup__tier-disclosure > summary { display: flex; align-items: center; justify-content: space-between; justify-self: stretch; box-sizing: border-box; width: 100%; min-height: 52px; margin: 0; padding: 14px 24px; border: 0; border-radius: 14px; color: var(--sbd-access-accent); background: none; font-size: 14px; font-weight: 600; cursor: pointer; }
.sbd-member-signup--clean .sbd-member-signup__tier-disclosure > summary::after { content: '+'; font-size: 20px; }
.sbd-member-signup--clean .sbd-member-signup__tier-disclosure[open] > summary::after { content: '−'; }
.sbd-member-signup--clean .sbd-member-signup__tier-disclosure > .sbd-member-signup__panel { border: 0; border-top: 1px solid var(--sbd-access-line); border-radius: 0 0 14px 14px; }
.sbd-member-signup--clean .sbd-member-signup__login-disclosure > summary::after { color: var(--sbd-access-accent); }
.sbd-member-signup--clean .sbd-member-signup__password-field > label input { border-radius: 8px 0 0 8px; }
.sbd-member-signup--clean .sbd-member-signup__tiers { grid-template-columns: repeat(auto-fit, minmax(min(210px, 100%), 1fr)); gap: 12px; }
.sbd-member-signup--clean .sbd-member-signup__tier { padding: 20px 16px; border-color: var(--sbd-access-line); border-radius: 10px; background: #fff; box-shadow: none; }
.sbd-member-signup--clean .sbd-member-signup__tier:hover { border-color: var(--sbd-access-accent); transform: none; }
.sbd-member-signup--clean .sbd-member-signup__tier.is-selected,
.sbd-member-signup--clean .sbd-member-signup__tier:has(input:checked) { border-color: var(--sbd-access-accent); background: #eaf3f8; box-shadow: 0 0 0 1px var(--sbd-access-accent); }
.sbd-member-signup--clean .sbd-member-signup__tier strong { color: var(--sbd-access-ink); font-size: 17px; font-weight: 650; }
.sbd-member-signup--clean .sbd-member-signup__tier em { color: var(--sbd-access-accent); font-size: 19px; font-weight: 650; }
.sbd-member-signup--clean .sbd-member-signup__tier small { color: var(--sbd-access-muted); font-size: 13px; line-height: 1.6; }
.sbd-member-signup--clean .sbd-member-signup__benefits { padding-top: 10px; margin-top: 8px; border-top: 1px solid var(--sbd-access-line); }
.sbd-member-signup--clean .sbd-member-signup__benefits small { display: flex; gap: 8px; }
.sbd-member-signup--clean .sbd-member-signup__benefits small > span { display: inline; color: var(--sbd-access-accent); }
.sbd-member-signup--clean [data-sbd-signup-selection-summary] { margin: 0; padding: 20px 24px; border: 1px solid #98bfce; border-radius: 12px; background: #eaf3f8; }
.sbd-member-signup--clean [data-sbd-signup-selection-summary] > * { margin: 0; }
.sbd-member-signup--clean [data-sbd-signup-selection-summary] { gap: 6px; }
.sbd-member-signup--clean [data-sbd-signup-selected-name] { color: var(--sbd-access-ink); font-size: 20px; font-weight: 650; }
.sbd-member-signup--clean [data-sbd-signup-selected-price] { color: var(--sbd-access-accent); font-weight: 600; }
.sbd-member-signup--clean .sbd-member-signup__review { background: #f5f8fa; }
.sbd-member-signup--clean .sbd-member-signup__terms { font-size: 14px; font-weight: 400; line-height: 1.7; }
.sbd-member-signup--clean .sbd-member-signup__assurance { padding: 0; border: 0; background: none; }
.sbd-member-signup--clean .sbd-member-signup__assurance p { font-size: 13px; }
.sbd-member-signup--clean input[readonly] { background: #f1f5f8 !important; }
.sbd-member-signup--clean [aria-invalid=true] { border-color: #a52f3b !important; }
@media (max-width: 600px) {
 .sbd-member-signup--clean .sbd-owner-form__grid { grid-template-columns: minmax(0, 1fr); }
 .sbd-member-signup--clean .sbd-member-signup__tiers { grid-template-columns: minmax(0, 1fr); }
 .sbd-member-signup--clean .sbd-member-signup__panel { padding: 22px 18px; }
 .sbd-member-signup--clean .sbd-member-signup__header { padding-inline: 4px; }
}
