.bfo-members{--bfo-accent:#1e73be;--bfo-ink:#1d2327;--bfo-muted:#5f6b76;--bfo-line:#e3e8ee;--bfo-soft:#f1f5f9;font-family:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--bfo-ink)}
.bfo-members *{box-sizing:border-box}
.bfo-members p{margin:0}
.bfo-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin:2rem 0 1.25rem;padding:1rem 0;border-top:1px solid var(--bfo-line);border-bottom:1px solid var(--bfo-line)}
.bfo-count{font-size:.95rem;color:var(--bfo-muted)}
.bfo-count strong{color:var(--bfo-ink);font-size:1.4rem;margin-right:.25rem}
.bfo-search{flex:1 1 16rem;max-width:22rem;position:relative}
.bfo-members .bfo-search input.bfo-q{width:100%!important;height:auto!important;padding:.7rem 1rem .7rem 2.6rem!important;text-indent:0!important;box-shadow:none;border:1px solid var(--bfo-line);border-radius:999px;font:inherit;font-size:.95rem;background:#fff;color:var(--bfo-ink);margin:0}
.bfo-search input:focus{outline:2px solid var(--bfo-accent);outline-offset:1px;border-color:transparent}
.bfo-members .bfo-search svg{position:absolute;z-index:1;left:1rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--bfo-muted);pointer-events:none}
.bfo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr));gap:.9rem;align-items:start}
.bfo-card{display:flex;flex-direction:column;gap:.75rem;padding:1.1rem;background:#fff;border:1px solid var(--bfo-line);border-radius:12px;transition:border-color .15s,box-shadow .15s,transform .15s}
.bfo-card:hover{border-color:var(--bfo-accent);box-shadow:0 6px 18px rgba(30,115,190,.10);transform:translateY(-2px)}
.bfo-card.is-hidden{display:none}
.bfo-card-head{display:flex;align-items:center;gap:.9rem;min-width:0}
.bfo-card-id{min-width:0;display:flex;flex-direction:column;gap:.15rem}
.bfo-photo{flex:none;width:3.75rem;height:3.75rem;border-radius:50%;object-fit:cover;background:var(--bfo-soft);margin:0!important;max-width:none}
img.bfo-photo{cursor:zoom-in}
.bfo-initials{display:flex;align-items:center;justify-content:center;color:var(--bfo-accent);font-weight:600;font-size:1.05rem;letter-spacing:.03em}
.bfo-members .bfo-name{font-family:inherit;font-size:1rem;font-weight:600;line-height:1.3;margin:0;padding:0;text-transform:none;letter-spacing:0;color:var(--bfo-ink)}
.bfo-mail,.bfo-web{font-size:.85rem;line-height:1.4;overflow-wrap:break-word;word-break:break-word}
.bfo-mail a,.bfo-web a{color:var(--bfo-accent);text-decoration:none}
.bfo-mail a:hover,.bfo-web a:hover{text-decoration:underline}
.bfo-bio{font-size:.9rem;line-height:1.6;color:var(--bfo-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.bfo-more{align-self:flex-start;background:none;border:0;padding:0;margin:0;font:inherit;font-size:.85rem;font-weight:600;color:var(--bfo-accent);cursor:pointer}
.bfo-more:hover{text-decoration:underline}
.bfo-more:focus-visible,.bfo-dialog-close:focus-visible,.bfo-cta-btn:focus-visible{outline:2px solid var(--bfo-accent);outline-offset:2px}
.bfo-empty{padding:1.5rem;text-align:center;color:var(--bfo-muted)}
.bfo-cta{margin-top:3rem;padding:2rem 2.25rem;border-radius:16px;background:var(--bfo-ink);color:#fff;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem}
.bfo-members .bfo-cta h3{color:#fff;margin:0 0 .35rem;padding:0}
.bfo-cta p{color:#c9d2da;max-width:52ch}
.bfo-cta-btn{background:var(--bfo-accent);color:#fff!important;border-radius:999px;padding:.8rem 1.6rem;font-weight:600;text-decoration:none!important;display:inline-block}
.bfo-cta-btn:hover{background:#fff;color:var(--bfo-ink)!important}
.bfo-dialog{border:0;border-radius:16px;padding:0;width:min(34rem,calc(100vw - 2rem));max-height:calc(100vh - 2rem);color:var(--bfo-ink);box-shadow:0 20px 60px rgba(0,0,0,.3)}
.bfo-dialog::backdrop{background:rgba(15,20,25,.6)}
.bfo-dialog-body{padding:1.75rem;display:flex;flex-direction:column;gap:1rem}
.bfo-dialog-body img{width:100%;max-height:60vh;object-fit:cover;border-radius:10px;display:block}
.bfo-dialog-body .bfo-bio{display:block;-webkit-line-clamp:unset;overflow:visible;white-space:pre-line;font-size:.95rem;color:var(--bfo-ink)}
.bfo-dialog-close{position:absolute;top:.6rem;right:.6rem;width:2.25rem;height:2.25rem;border-radius:50%;border:0;background:rgba(255,255,255,.9);font-size:1.5rem;line-height:1;cursor:pointer;color:var(--bfo-ink);z-index:1}
@media (max-width:600px){.bfo-cta{padding:1.5rem}.bfo-search{max-width:none}}
@media (prefers-reduced-motion:reduce){.bfo-card{transition:none}.bfo-card:hover{transform:none}}
