.prozon-directory{width:100%;container-type:inline-size;color:var(--color-text);font-family:var(--font-body);
  font-weight: var(--weight-body, inherit);font-size:var(--size-body)}
.prozon-directory,.prozon-directory *{box-sizing:border-box}.prozon-directory [hidden]{display:none!important}
.prozon-directory__inner{width:calc(100% - 1rem);max-width:none;margin:0 auto}
.prozon-directory__card{width:100%;padding:1.25rem;border:1px solid var(--color-card-border);border-radius:var(--radius-card);background:var(--color-panel-bg,var(--color-card-bg));box-shadow:var(--shadow-card)}
.prozon-directory__header{margin:0 0 var(--spacing)}
.prozon-directory__eyebrow{margin:0 0 .35rem;color:var(--color-eyebrow);font-family:var(--font-eyebrow);font-size:var(--size-eyebrow);font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.prozon-directory__title{margin:0 0 .35rem;color:var(--color-title);font-family:var(--font-title);
  font-weight: var(--weight-title, inherit);font-size:var(--size-title);line-height:1.05}
.prozon-directory__intro,.prozon-directory__empty,.prozon-directory__no-results{margin:0;color:var(--color-text);font-family:var(--font-body);
  font-weight: var(--weight-body, inherit);font-size:var(--size-body)}
.prozon-directory__tools{margin:0 0 .75rem}.prozon-directory__search-label{display:block;margin:0 0 .35rem;color:var(--color-subtitle);font-family:var(--font-subtitle);font-size:var(--size-subtitle);font-weight:700}
.prozon-directory__search{width:100%;min-height:44px;padding:.65rem .85rem;border:1px solid var(--color-input-border);border-radius:var(--radius-button);background:var(--color-input-bg);color:var(--color-input-text);font-family:var(--font-body);
  font-weight: var(--weight-body, inherit);font-size:var(--size-body);outline:none}
.prozon-directory__search:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-focus) 25%,transparent)}
.prozon-directory__category-panel{margin:0 0 .85rem;border-bottom:1px solid var(--color-card-border)}
.prozon-directory__filter-toggle,.prozon-directory__group-tabs button,.prozon-directory__category-links button{min-height:2.35rem;padding:.35rem .8rem;border:1px solid var(--color-button-border);border-radius:var(--radius-button);background:var(--color-button-bg);color:var(--color-button-text);font-family:var(--font-button);font-size:var(--size-button);font-weight:700;cursor:pointer}
.prozon-directory__filter-toggle{display:none;width:100%;justify-content:space-between;align-items:center;margin-bottom:.5rem}
.prozon-directory__filter-body{padding:0 0 .65rem}.prozon-directory__group-tabs,.prozon-directory__category-links{display:flex;flex-wrap:wrap;gap:.45rem}.prozon-directory__group-tabs button.is-active,.prozon-directory__category-links button.is-active,.prozon-directory__group-tabs button:hover,.prozon-directory__category-links button:hover{background:var(--color-cta-bg);color:var(--color-cta-text);border-color:var(--color-cta-border)}
.prozon-directory__group-tabs button span,.prozon-directory__category-links button span{opacity:.75;font-size:.86em}.prozon-directory__category-tray{padding:.65rem 0 0}.prozon-directory__category-list-heading{margin:0 0 .45rem;color:var(--color-subtitle);font-family:var(--font-subtitle);font-size:var(--size-subtitle);font-weight:700}
.prozon-directory__result-count{margin:0 0 .85rem;color:var(--color-text);font-family:var(--font-text-small);font-size:var(--size-text-small);font-weight:700}
.prozon-directory__no-results{margin-top:1rem;padding:.85rem;border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-accent) 10%,var(--color-card-bg))}
@media(max-width:900px){.prozon-directory__inner{width:calc(100% - .5rem)}.prozon-directory__card{padding:.85rem}.prozon-directory__filter-toggle{display:flex}.prozon-directory__group-tabs,.prozon-directory__category-links{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.25rem}.prozon-directory__group-tabs button,.prozon-directory__category-links button{white-space:nowrap}}

/* Directory member self-service entry point: quiet utility, not a CTA. */
.prozon-directory__member-update { margin: -.35rem 0 1rem; text-align: right; }
.prozon-directory__member-update a { color: var(--color-link); font-family: var(--font-button); font-size: var(--size-text-small); font-weight: 700; text-decoration: underline; text-underline-offset: .15em; }
.prozon-directory__member-update a:hover { color: var(--color-link-hover); }
.prozon-directory__member-update a:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 3px; border-radius: .2rem; }


/* Edit-mode convenience setup for the Directory-wide fallback logo. */
.prozon-directory__setup{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:.75rem 1rem;align-items:center;margin:0 0 1rem;padding:.85rem;border:1px solid var(--color-card-border);border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-accent) 8%,var(--color-card-bg))}
.prozon-directory__setup-title{margin:0 0 .2rem;color:var(--color-subtitle);font-family:var(--font-subtitle);font-size:var(--size-subtitle);font-weight:700}
.prozon-directory__setup-help,.prozon-directory__setup-message,.prozon-directory__setup-error{margin:.2rem 0 0;color:var(--color-text);font-family:var(--font-text-small);
  font-weight: var(--weight-text-small, inherit);font-size:var(--size-text-small)}
.prozon-directory__setup-error{font-weight:700}.prozon-directory__setup-logo img,.prozon-directory__setup-empty{display:grid;place-items:center;width:92px;height:92px;object-fit:contain;border:1px solid var(--color-card-border);border-radius:var(--radius-card);background:var(--color-card-bg);color:var(--color-text);font-family:var(--font-text-small);font-size:var(--size-text-small);font-weight:700}
.prozon-directory__setup-form{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.prozon-directory__setup-form input[type=file]{max-width:100%;color:var(--color-input-text);font-family:var(--font-body);
  font-weight: var(--weight-body, inherit);font-size:var(--size-body)}
.prozon-directory__setup-form button{min-height:2.35rem;padding:.4rem .8rem;border:1px solid var(--color-button-border);border-radius:var(--radius-button);background:var(--color-button-bg);color:var(--color-button-text);font-family:var(--font-button);font-size:var(--size-button);font-weight:700;cursor:pointer}.prozon-directory__setup-form button:hover{background:var(--color-cta-bg);color:var(--color-cta-text);border-color:var(--color-cta-border)}
@media(max-width:600px){.prozon-directory__setup{grid-template-columns:1fr}.prozon-directory__setup-logo{grid-row:2}.prozon-directory__setup-form{grid-column:1}}

/* Shared outer container background: separate from internal cards/panels. */
.prozon-directory { background-color: var(--color-prozon-bg, transparent); }

/* Shared container/card hierarchy: outer theme background remains visible around the complete content card. */
.prozon-directory { background-color: var(--color-prozon-bg, transparent); padding: clamp(8px, calc(var(--spacing, 16px) * .75), 18px); box-sizing: border-box; }
.prozon-directory__inner { width:100%; max-width:none; }

/* Color-balance refinement: consistent visible container surround.
   This inset changes only the Prozon interior, never Site Editor placement. */
.prozon-directory { padding: clamp(12px, var(--spacing, 16px), 22px); }
