.bf-firm-records { min-width:0; }
.bf-firm-records>.bf-panel,.bf-firm-records>.bf-team-form { margin-bottom:18px; }
.bf-firm-row-name h3 { margin:0;font-size:15px;line-height:1.5;overflow-wrap:anywhere; }
.bf-team-form textarea { width:100%;min-height:100px;padding:12px;font-size:14px;font-weight:400; }
.bf-team-ack { display:flex;align-items:flex-start;gap:12px;min-height:44px;font-size:13px;line-height:1.6;margin-top:18px;cursor:pointer; }
.bf-firm-records .bf-panel-heading { gap:16px;flex-wrap:wrap; }
.bf-firm-records .bf-panel-heading>div { min-width:0;flex:1 1 230px;overflow-wrap:anywhere; }
.bf-firm-records .bf-panel-heading>.bf-button { flex:none; }
.bf-firm-records .bf-team-ack input { flex:none;width:20px;height:20px;min-height:20px;padding:0;margin:2px 0 0;accent-color:#d61f26; }
.bf-team-history li>div { min-width:0;flex:1 1 240px;overflow-wrap:anywhere; }
.bf-team-history p { margin:8px 0;font-size:13px;line-height:1.6; }
.bf-team-invitation { display:flex;flex-direction:column;gap:6px;padding:16px 0;border-top:1px solid #e7e8eb;font-size:13px;overflow-wrap:anywhere; }
.bf-firm-records *, .bf-firm-records *::before, .bf-firm-records *::after { box-sizing:border-box; }
.bf-firm-records h1 { overflow-wrap:anywhere; }
.bf-firm-records .bf-button { display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;text-align:center;line-height:1.3;white-space:normal; }
.bf-firm-records .bf-button svg { width:18px;height:18px;flex:none; }
body.bf-portal-page .bf-firm-records .bf-button-secondary { background:#fff!important;color:#2f3136!important;border:1px solid #d7dade!important;box-shadow:none!important; }
body.bf-portal-page .bf-firm-records .bf-button-secondary:hover { background:#f7f8fa!important;border-color:#aab0b8!important; }
.bf-firm-records .bf-button:focus-visible,.bf-firm-records a:focus-visible { outline:3px solid #d61f26;outline-offset:3px; }
.bf-firm-message { margin:16px 0;padding:14px 16px;border:1px solid #cdd9d1;border-radius:10px;background:#f0f6f2;color:#253c2c;line-height:1.6;overflow-wrap:anywhere; }
.bf-firm-message.is-error { background:#fff3f3;border-color:#eab7b9;color:#872027; }
.bf-firm-records .bf-firm-filters { margin-top:0;align-items:end;gap:12px; }
.bf-firm-filters label { flex:1 1 190px;min-width:0; }
.bf-firm-filters label:first-of-type { flex:3 1 250px; }
.bf-firm-records input,.bf-firm-records select { min-height:44px;padding:10px 12px;min-width:0;font-size:14px;font-weight:400; }
.bf-firm-results-label { padding:20px 0 12px;color:#616770;font-size:12px; }
.bf-firm-row { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:18px 0;border-top:1px solid #e7e8eb; }
.bf-firm-row-name { grid-column:1/-1;display:flex;align-items:center;gap:12px;min-width:0; }
.bf-firm-row-name>div { min-width:0; }
.bf-firm-row-name h2 { margin:0!important;font-size:15px!important;line-height:1.5!important;overflow-wrap:anywhere; }
.bf-firm-row-name h2 a { color:#2f3136; }
.bf-firm-row-name p { margin:4px 0 0!important;font-size:12px;color:#646971;overflow-wrap:anywhere; }
.bf-firm-symbol { display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex:none;border-radius:10px;color:#d61f26;background:#fff1f1; }
.bf-firm-symbol svg { width:22px;height:22px; }
.bf-firm-users { font-size:12px;color:#646971; }
.bf-firm-row>.bf-button { grid-column:2;grid-row:2/4; }
.bf-firm-row>.bf-badge { justify-self:start;white-space:normal; }
.bf-firm-pagination { display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:20px;font-size:12px; }
.bf-firm-pagination>div,.bf-firm-records .bf-form-actions { display:flex;flex-wrap:wrap;gap:12px; }
.bf-firm-form { margin-top:22px; }
.bf-firm-form fieldset { min-width:0;margin:0 0 22px;padding:20px;border:1px solid #e7e8eb; }
.bf-firm-form legend { width:auto;padding:0 8px;font-family:Poppins,Arial,sans-serif;font-size:17px;font-weight:600;color:#2f3136; }
.bf-firm-form .bf-form-grid { margin-top:0; }
.bf-firm-form .bf-field { min-width:0; }
.bf-firm-form .bf-field span { font-size:12px; }
.bf-firm-form .bf-field small { min-height:16px;line-height:1.5; }
.bf-firm-form input[readonly] { background:#f2f3f5;color:#565c65; }
.bf-firm-form fieldset>p { font-size:13px;color:#616770;margin:0 0 18px; }
.bf-firm-status-help { margin-top:16px;font-size:12px;line-height:1.65;color:#5b626c; }
.bf-firm-status-help p { margin:8px 0; }
.bf-firm-tabs { display:flex;gap:8px;flex-wrap:wrap;margin:20px 0;border-bottom:1px solid #e0e2e6; }
.bf-firm-tabs a { min-height:44px;display:flex;align-items:center;padding:10px 14px;color:#606670;font-size:13px;border-bottom:3px solid transparent; }
.bf-firm-tabs a[aria-current] { color:#bc1820;border-bottom-color:#d61f26;font-weight:600; }
.bf-firm-detail-grid { display:grid;gap:18px;grid-template-columns:minmax(0,1fr);margin-bottom:18px; }
.bf-firm-detail-grid .bf-panel { min-width:0; }
.bf-firm-detail-grid .bf-panel-heading { flex-wrap:wrap; }
.bf-firm-facts { margin:0; }
.bf-firm-facts>div { display:grid;gap:4px;padding:12px 0;border-bottom:1px solid #f0f1f3; }
.bf-firm-facts dt { color:#687079;font-size:12px;font-weight:400; }
.bf-firm-facts dd { margin:0;font-size:13px;color:#2f3136;overflow-wrap:anywhere; }
.bf-firm-muted { font-size:12px!important;color:#6c7078;margin-top:16px; }
.bf-firm-history { margin:0;padding:0;list-style:none; }
.bf-firm-history li { display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:14px 0;border-top:1px solid #e7e8eb;font-size:12px; }
.bf-firm-history li>span { display:flex;flex-direction:column;gap:4px; }
.bf-firm-history time { color:#626971; }
.bf-firm-records .bf-empty-state>svg { width:32px;height:32px;color:#d61f26; }
@media(min-width:760px) { .bf-firm-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(min-width:1100px) { .bf-firm-row { grid-template-columns:minmax(0,1fr) minmax(100px,150px) 100px auto; } .bf-firm-row-name { grid-column:auto; } .bf-firm-row>.bf-button { grid-column:auto;grid-row:auto; } }
@media(max-width:480px) { .bf-firm-form fieldset { padding:16px; } .bf-firm-records .bf-portal-section-heading { flex-wrap:wrap; } .bf-firm-records .bf-form-actions>.bf-button { flex:1 1 120px; } }

body.bf-portal-page .bf-team-form .bf-field textarea { min-height:100px!important; }
body.bf-portal-page .bf-firm-records .bf-team-filters { display:grid;grid-template-columns:minmax(0,1fr);gap:12px; }
body.bf-portal-page .bf-team-filters>label,body.bf-portal-page .bf-team-filters>.bf-button { min-width:0;width:auto; }
@media(min-width:760px) {
    body.bf-portal-page .bf-firm-records .bf-team-filters { grid-template-columns:minmax(0,1fr) 180px auto auto; }
    .bf-team-facts { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px; }
}
@media(min-width:1100px) { .bf-firm-row.bf-team-row { grid-template-columns:minmax(0,1fr) auto auto;gap:20px; } }

.bf-team-verify { margin-bottom:18px; }

.bf-invitation-requests>.bf-panel,.bf-invitation-requests>.bf-team-form { margin-bottom:18px; }
.bf-invite-filter { display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:end;margin-bottom:20px; }
.bf-invite-filter label { display:flex;flex-direction:column;gap:8px;min-width:0;font-size:12px; }
.bf-invite-filter select { width:100%;border:1px solid #d9dde3;border-radius:8px;background:#fff;color:#2f3136;font-family:Montserrat,Arial,sans-serif; }
.bf-invitation-requests .bf-badge { white-space:normal;max-width:220px;line-height:1.6; }
@media(min-width:760px) { .bf-invite-filter { grid-template-columns:minmax(200px,1fr) auto auto; } }

.bf-invite-firm-search { display:grid;gap:12px;align-items:center; }
@media(min-width:760px) { .bf-invite-firm-search { grid-template-columns:minmax(0,1fr) auto; } }
@media(min-width:1200px) { .bf-invitation-requests .bf-team-facts { grid-template-columns:repeat(4,minmax(0,1fr)); } }
