/* Portal-only finishing rules. Theme selectors must not restyle portal controls. */
body.bf-portal-page .bf-portal-shell .bf-workspace-search-trigger{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:44px;min-height:44px;height:44px;width:auto;margin:0;padding:10px 14px;border:1px solid #dce0e6!important;border-radius:8px;background:#f7f8fa!important;color:#454b55!important;font:500 13px/1.4 Montserrat,Arial,sans-serif!important;box-shadow:none;text-transform:none;letter-spacing:0;white-space:nowrap}
body.bf-portal-page .bf-portal-shell .bf-workspace-search-trigger:hover{background:#fff1f2!important;border-color:#d61f26!important;color:#a71922!important}
body.bf-portal-page .bf-workspace-search-trigger svg{width:18px;height:18px;flex:0 0 18px}
body.bf-portal-page .bf-workspace-search{width:min(600px,calc(100% - 32px));padding:24px;border-radius:14px}
body.bf-portal-page .bf-workspace-search h2{font:600 20px/1.4 Poppins,Arial,sans-serif!important;margin:0 0 6px!important;color:#2f3136!important}
body.bf-portal-page .bf-workspace-search input[type=search]{font:400 14px/1.5 Montserrat,Arial,sans-serif!important;min-height:48px!important;margin:4px 0 0;padding:12px 14px!important;color:#2f3136!important;background:#f7f8fa!important;border:1px solid #aeb4bc!important;border-radius:8px!important}
body.bf-portal-page .bf-workspace-search-heading{margin-bottom:14px;align-items:flex-start}
body.bf-portal-page .bf-workspace-search-results{max-height:48dvh;overflow:auto;overscroll-behavior:contain;padding:0 3px 3px 0;margin-top:8px}
body.bf-portal-page .bf-workspace-search-heading p{margin:0;font-size:12px;color:#555d68}
body.bf-portal-page .bf-workspace-search-results nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
body.bf-portal-page .bf-workspace-search-results a{min-width:0;font-size:13px;line-height:1.45;padding:12px;background:#f7f8fa;color:#2f3136!important;border:1px solid transparent}
body.bf-portal-page .bf-workspace-search-results a:hover{background:#fff1f2;border-color:#eac6c9}
body.bf-portal-page .bf-workspace-search .bf-icon-button{color:#454b55!important;background:#f7f8fa!important;border:1px solid #dce0e6!important}
body.bf-portal-page .bf-portal-shell .bf-sidebar-profile,body.bf-portal-page .bf-portal-shell .bf-sidebar-profile strong{color:#fff!important}
body.bf-portal-page .bf-sidebar-profile small{font-size:11px;line-height:1.5;margin-top:2px}
body.bf-portal-page .bf-sidebar-profile strong{font-size:12px;line-height:1.5}
body.bf-portal-page .bf-sidebar-profile:hover{background:#30343b;border-radius:8px}
body.bf-portal-page .bf-overview-banner p{color:#fff!important;font-size:12px}
body.bf-portal-page .bf-portal-main .bf-subcard{padding:18px!important;min-width:0;box-sizing:border-box}
body.bf-portal-page .bf-portal-main .bf-stat-card{padding:18px!important;min-width:0;box-sizing:border-box}
body.bf-portal-page .bf-subcard>:last-child{margin-bottom:0}
body.bf-portal-page .bf-account-hint{color:#555d68!important}
body.bf-portal-page .bf-status-pill{background:#eef1f5;color:#454b55;border:1px solid #dce0e6;font-size:11px;line-height:1.5}
body.bf-portal-page :is(.bf-portal-hero,.bf-panel-dark,.bf-overview-banner) .bf-status-pill{background:#ffffff14;color:#fff;border-color:#ffffff55}
body.bf-portal-page .bf-portal-shell .bf-button{font-size:12px!important;line-height:1.45!important;min-height:44px;justify-content:center;align-items:center;text-align:center}
body.bf-portal-page .bf-portal-shell .bf-button:hover,body.bf-portal-page .bf-portal-shell .bf-button:focus-visible{background:#b71920!important;color:#fff!important}
body.bf-portal-page .bf-portal-shell .bf-button.bf-button-ghost,body.bf-portal-page .bf-portal-shell .bf-button.bf-button-secondary{color:#2f3136!important;background:#fff!important;border:1px solid #cbd0d6!important}
body.bf-portal-page .bf-portal-shell .bf-button.bf-button-ghost:hover,body.bf-portal-page .bf-portal-shell .bf-button.bf-button-secondary:hover,body.bf-portal-page .bf-portal-shell .bf-button.bf-button-ghost:focus-visible,body.bf-portal-page .bf-portal-shell .bf-button.bf-button-secondary:focus-visible{color:#a71922!important;background:#fff1f2!important;border-color:#b71920!important}
body.bf-portal-page .bf-portal-shell :is(.bf-portal-hero,.bf-panel-dark,.bf-overview-banner) .bf-button.bf-button-ghost{color:#fff!important;background:transparent!important;border-color:#ffffff88!important}
body.bf-portal-page .bf-portal-shell :is(.bf-portal-hero,.bf-panel-dark,.bf-overview-banner) .bf-button.bf-button-ghost:hover{background:#ffffff!important;color:#2f3136!important}
body.bf-portal-page .bf-portal-shell .bf-button:disabled{opacity:1;color:#626873!important;background:#e7e8eb!important;border-color:#d7dbe1!important;cursor:not-allowed}
body.bf-portal-page .bf-icon-button{color:#555d68!important}
body.bf-portal-page .bf-icon-button:hover{color:#a71922!important}
@media(max-width:767px){body.bf-portal-page .bf-portal-shell .bf-workspace-search-trigger{padding:10px;width:44px}body.bf-portal-page .bf-workspace-search-trigger span{display:none}body.bf-portal-page .bf-workspace-search{padding:18px;width:calc(100% - 24px)}body.bf-portal-page .bf-workspace-search-results nav{grid-template-columns:minmax(0,1fr)}body.bf-portal-page .bf-portal-main .bf-subcard{padding:16px!important}}

body.bf-portal-page .bf-workspace-search h3{font:600 12px/1.5 Montserrat,Arial,sans-serif!important;color:#555d68!important;margin:12px 0 8px!important;letter-spacing:0;text-transform:none}
body.bf-portal-page .bf-account-gate .bf-account-hint{color:#e7e8eb!important}

/* Shared card rhythm: outer separation belongs to the card, not its last child. */
body.bf-portal-page .bf-portal-main > .bf-panel:not(:last-child){margin-bottom:20px}
body.bf-portal-page .bf-portal-main .bf-panel > :last-child{margin-bottom:0}
body.bf-portal-page .bf-portal-main .bf-panel-heading > div > p:last-child{margin-bottom:0}
body.bf-portal-page .bf-portal-main .bf-panel > .bf-panel-heading:only-child{align-items:center}
body.bf-portal-page .bf-portal-main .bf-stat-icon{display:grid;place-items:center;flex-shrink:0;margin:0;padding:0;color:var(--bf-red);line-height:1;box-sizing:border-box}
body.bf-portal-page .bf-portal-main :is(.bf-stat-icon,.bf-mini-icon,.bf-icon-button) > svg{display:block;margin:0;flex-shrink:0}
body.bf-portal-page .bf-portal-main .bf-stat-card > div{min-width:0;overflow-wrap:anywhere}
@media(max-width:559px){body.bf-portal-page .bf-portal-main > .bf-panel:not(:last-child){margin-bottom:16px}body.bf-portal-page .bf-portal-main .bf-panel-heading{flex-wrap:wrap}body.bf-portal-page .bf-portal-main .bf-panel-heading > div{min-width:0;flex:1 1 180px}}
@media(max-width:479px){body.bf-portal-page .bf-portal-main .bf-stat-grid{grid-template-columns:minmax(0,1fr)}}

/* Shared portal typography. Explicit label sizing prevents Elementor kit overrides. */
body.bf-portal-page :is(.bf-portal-shell,.bf-account-gate,.bf-portal-login) label {
    font-family:Montserrat,Arial,sans-serif!important;
    font-size:12px!important; line-height:1.5!important; font-weight:500;
}
body.bf-portal-page :is(.bf-portal-shell,.bf-account-gate,.bf-portal-login) label > span {
    font-family:inherit!important; font-size:inherit!important; line-height:inherit!important;
}
body.bf-portal-page .bf-account-form .bf-account-check {
    display:flex; align-items:center; gap:10px; min-height:44px;
    margin:8px 0 0; font-weight:400;
}
body.bf-portal-page .bf-account-form .bf-account-check > span {
    min-width:0; overflow-wrap:anywhere;
}
body.bf-portal-page .bf-portal-shell .bf-account-page .bf-account-form > label {
    line-height:1.5!important;
}
body.bf-portal-page #bf-main :is(h1,h2,h3,h4,h5,h6) {
    font-family:Poppins,Montserrat,Arial,sans-serif!important;
    overflow-wrap:anywhere;
}
body.bf-portal-page #bf-main h1 {font-size:24px!important;line-height:1.35!important;font-weight:700!important}
body.bf-portal-page #bf-main h2 {font-size:15px!important;line-height:1.45!important;font-weight:600!important}
body.bf-portal-page #bf-main :is(h3,h4,h5,h6) {font-size:13px!important;line-height:1.5!important;font-weight:600!important}
body.bf-portal-page #bf-main summary {font-family:Montserrat,Arial,sans-serif!important;font-size:13px!important;line-height:1.5!important}
body.bf-portal-page #bf-main .bf-account-form input:not([type=checkbox]):not([type=hidden]):not([type=submit]) {
    min-height:44px; height:44px; padding:9px 11px!important;
    font:500 12px/1.5 Montserrat,Arial,sans-serif!important;
}

/* Scheduled finance changes share the dashboard spacing and type scale. */
.bf-rate-form{display:grid;gap:18px;margin-block:20px}
.bf-rate-targets{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;margin-block:16px}
.bf-rate-targets .bf-subcard{min-width:0;padding:20px;margin:0}
.bf-rate-check{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.55}
.bf-rate-check input{flex:0 0 18px;width:18px;height:18px;margin:2px 0 0}
.bf-rate-form>.bf-button{justify-self:start;min-height:44px}
@media(max-width:600px){.bf-rate-form>.bf-button{width:100%;white-space:normal}.bf-rate-targets .bf-subcard{padding:18px}}
.bf-journey{margin-block:0!important}
.bf-journey>summary{cursor:pointer;font-weight:600;color:#2f3136;min-height:24px}
.bf-journey>p{margin-block:14px 0;max-width:90ch}
.bf-journey-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0!important;margin:18px 0!important;counter-reset:journey}
.bf-journey-steps>li{counter-increment:journey;min-width:0;margin:0!important}
.bf-journey-steps a{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:10px;row-gap:5px;border:1px solid #e0e3e8;border-radius:10px;padding:15px;height:100%;text-decoration:none!important;background:#fff;color:#2f3136}
.bf-journey-steps a:before{content:counter(journey);display:grid;place-items:center;grid-row:1/3;width:28px;height:28px;border-radius:8px;background:#fcecef;color:#a31822;font-weight:600}
.bf-journey-steps a:focus-visible{outline:2px solid #d61f26;outline-offset:3px}
.bf-journey-steps strong{font-size:13px;line-height:1.45}
.bf-journey-steps span{font-size:12px;line-height:1.65;color:#58606b}
@media(max-width:900px){.bf-journey-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.bf-journey-steps{grid-template-columns:minmax(0,1fr);gap:10px}.bf-journey-steps a{padding:14px}}

/* Separate audience-labelled review actions with comfortable touch spacing. */
body.bf-portal-page #bf-main .bf-application-staff-actions > details {margin-top:14px;padding:16px;background:#f7f8fa;border:1px solid #e0e3e8;border-radius:10px}
body.bf-portal-page #bf-main .bf-application-staff-actions summary {min-height:28px;display:flex;align-items:center;cursor:pointer;color:#2f3136;font-weight:600}
body.bf-portal-page #bf-main .bf-application-staff-actions summary:before {content:'+';margin-right:10px;color:#a71922;font-size:18px}
body.bf-portal-page #bf-main .bf-application-staff-actions details[open] > summary:before {content:'-'}
body.bf-portal-page #bf-main .bf-application-staff-actions summary:focus-visible {outline:2px solid #d61f26;outline-offset:4px}
body.bf-portal-page #bf-main .bf-application-staff-actions .bf-review-form {border-top:1px solid #e0e3e8;margin-top:14px;padding-top:16px;gap:14px}
body.bf-portal-page #bf-main .bf-application-staff-actions .bf-field {color:#2f3136!important;gap:8px}
body.bf-portal-page #bf-main .bf-application-staff-actions .bf-field small {color:#555d68!important;font-size:12px;line-height:1.6}
body.bf-portal-page #bf-main .bf-application-staff-actions textarea {background:#fff!important;color:#2f3136!important;min-height:110px;width:100%;box-sizing:border-box}
body.bf-portal-page #bf-main .bf-application-staff-actions .bf-form-actions {margin:0;padding:0}
@media(max-width:600px){body.bf-portal-page #bf-main .bf-application-staff-actions > details{padding:14px}body.bf-portal-page #bf-main .bf-application-staff-actions .bf-button{width:100%;white-space:normal}}

/* One readable matter route, with consistent spacing on small screens. */
.bf-matter-journey{margin:0 0 24px;min-width:0;color:#2f3136}
.bf-matter-next{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;background:#fff;border:1px solid #dedfe4;border-radius:14px;margin-bottom:14px}
.bf-matter-next>div{min-width:0}.bf-matter-next h2{font:600 19px/1.4 Poppins,sans-serif;margin:4px 0 8px;color:#2f3136}.bf-matter-next p{margin:0;max-width:76ch;font-size:13px;line-height:1.7;color:#505760}.bf-matter-next .bf-eyebrow{color:#d61f26;font-size:11px;font-weight:600}
.bf-matter-next>.bf-button{flex:none;text-align:center;min-height:44px;align-items:center;justify-content:center}
.bf-matter-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.bf-matter-step{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff;border:1px solid #dedfe4;border-radius:12px;text-decoration:none;color:#2f3136;min-width:0}
.bf-matter-step:hover,.bf-matter-step:focus-visible{border-color:#d61f26;outline:2px solid transparent}.bf-matter-step.is-current{border-color:#d61f26;box-shadow:inset 3px 0 0 #d61f26}
.bf-matter-step>span:last-child{min-width:0}.bf-matter-step strong{display:block;font:600 14px/1.5 Poppins,sans-serif;color:#2f3136}.bf-matter-step small{display:block;margin-top:5px;font:400 12px/1.6 Montserrat,sans-serif;color:#535963;overflow-wrap:anywhere}
.bf-matter-step-icon{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:10px;background:#fff0f1;color:#d61f26}.bf-matter-step-icon svg{display:block;width:18px;height:18px}
.bf-matter-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:12px}.bf-matter-links a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;font-weight:600;color:#99333a;text-underline-offset:3px}
.bf-matter-details{margin:0 0 20px}.bf-matter-details>summary{padding:16px 20px;background:#fff;border:1px solid #dedfe4;border-radius:12px;cursor:pointer;font:600 15px/1.5 Poppins,sans-serif;color:#2f3136}.bf-matter-details[open]>summary{margin-bottom:14px}
.bf-support-services{padding:0;margin:16px 0 0;list-style:none}.bf-support-services li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-top:1px solid #e7e8eb}
@media(max-width:900px){.bf-matter-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.bf-matter-next{align-items:flex-start;flex-direction:column}.bf-matter-next>.bf-button{align-self:flex-start}}
@media(max-width:540px){.bf-matter-next{padding:18px;gap:16px}.bf-matter-next h2{font-size:17px}.bf-matter-next>.bf-button{width:100%}.bf-matter-steps{grid-template-columns:minmax(0,1fr);gap:10px}.bf-matter-step{padding:16px}.bf-matter-links{flex-direction:column;gap:0}.bf-matter-journey{margin-bottom:20px}}

body.bf-portal-page #bf-main .bf-setup-email-form{max-width:360px;margin-top:16px}body.bf-portal-page #bf-main .bf-setup-prompt h3{margin-top:20px;margin-bottom:8px}

/* Setup stays in one clearly spaced sequence on phones and desktops. */
body.bf-portal-page #bf-main .bf-account-onboarding{max-width:880px;margin-inline:0}
body.bf-portal-page #bf-main .bf-setup-milestones{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0;margin:20px 0;list-style:none}
body.bf-portal-page #bf-main .bf-setup-milestones li{display:flex;align-items:center;gap:10px;padding:14px;margin:0;min-width:0;border:1px solid #dedfe4;border-radius:10px;background:#fff;color:#2f3136;font-size:12px;line-height:1.5}
body.bf-portal-page #bf-main .bf-setup-milestones li>span:last-child{min-width:0;overflow-wrap:anywhere}
body.bf-portal-page #bf-main .bf-setup-milestones small{display:block;font-size:11px;color:#5c626a;margin-top:4px}
body.bf-portal-page #bf-main .bf-setup-step-icon{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:8px;color:#a51925;background:#fcedef}
body.bf-portal-page #bf-main .bf-setup-step-icon svg{display:block;width:16px;height:16px}
body.bf-portal-page #bf-main .bf-setup-milestones .is-done .bf-setup-step-icon{background:#e8f3ed;color:#17633d}
body.bf-portal-page #bf-main .bf-setup-next{margin-top:20px;padding:24px}
body.bf-portal-page #bf-main .bf-setup-finish-form{margin-top:22px}
body.bf-portal-page #bf-main .bf-setup-finish-form .bf-account-check{display:flex;align-items:flex-start;gap:10px;margin-bottom:18px}
body.bf-portal-page #bf-main .bf-setup-finish-form .bf-account-check input{flex:0 0 20px;width:20px;height:20px;margin:2px 0 0}
body.bf-portal-page #bf-main .bf-setup-replace-codes{padding-top:18px;margin-top:20px;border-top:1px solid #e0e3e8}
body.bf-portal-page #bf-main .bf-setup-replace-codes summary{cursor:pointer;font-size:13px;font-weight:600;line-height:1.6;padding-block:8px}
@media(max-width:900px){body.bf-portal-page #bf-main .bf-setup-milestones{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){body.bf-portal-page #bf-main .bf-setup-milestones{grid-template-columns:minmax(0,1fr);gap:10px}body.bf-portal-page #bf-main .bf-setup-next{padding:18px}body.bf-portal-page #bf-main .bf-account-onboarding .bf-button{width:100%;white-space:normal}}

/* Grid spacing is the single outer rhythm for personal setup management. */
body.bf-portal-page #bf-main .bf-first-accounts>*,body.bf-portal-page #bf-main .bf-first-accounts>.bf-portal-section-heading{margin-block:0}
body.bf-portal-page #bf-main .bf-first-accounts{align-content:start;gap:20px}
/* Contract details share the portal's spacing and type scale, including repeating rows. */
.bf-field-settings{grid-column:1/-1;min-width:0;margin:0;padding:18px;border:1px solid #e0e3e8;border-radius:12px}
.bf-field-settings legend,.bf-repeat-row legend{font-size:14px;font-weight:600;padding:0 6px;color:#2f3136}
.bf-field-settings[hidden],.bf-contract-field-form [hidden]{display:none!important}
.bf-column-definition{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid #e7e8eb;margin-bottom:14px}
.bf-column-definition .bf-checkbox{grid-column:1/-1}
.bf-field-workspace{display:block!important;min-width:0;padding:18px!important}
.bf-field-workspace+.bf-field-workspace{margin-top:14px}
.bf-field-workspace .bf-contract-field-label{margin-bottom:12px}
.bf-field-workspace .bf-contract-field-label label{display:block;font-size:14px;font-weight:600;line-height:1.5;color:#2f3136}
.bf-field-workspace .bf-contract-field-label span{display:block;font-size:12px;margin-top:3px}
.bf-contract-field-input{min-width:0}
.bf-contract-field-input>input,.bf-contract-field-input>select,.bf-contract-field-input>textarea{width:100%;box-sizing:border-box;min-height:44px}
.bf-field-workspace-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}
.bf-repeat-rows{display:grid;gap:14px;min-width:0}
.bf-repeat-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0;margin:0;padding:16px;border:1px solid #e0e3e8;border-radius:10px;background:#f8f9fb}
.bf-repeat-row>.bf-checkbox{grid-column:1/-1}
.bf-repeat-row input,.bf-repeat-row textarea,.bf-repeat-row select{box-sizing:border-box;width:100%;min-width:0}
.bf-repeat-row input[type=checkbox]{width:18px}
.bf-conditional-note{display:flex;flex-wrap:wrap;gap:8px 16px;padding:14px 18px;border:1px dashed #cbd0d5;border-radius:10px;font-size:13px}
@media(max-width:600px){.bf-field-settings,.bf-field-workspace{padding:14px!important}.bf-repeat-row{grid-template-columns:1fr;padding:12px}.bf-column-definition{grid-template-columns:1fr}.bf-field-workspace-footer{flex-wrap:wrap}.bf-field-workspace-footer .bf-button{min-height:44px}}

.bf-wording-tools{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.bf-wording-tools [role=status]{flex-basis:100%;font-size:13px}

/* Task guidance follows the shared business layout and stays readable on phones. */
.bf-business-guides{display:grid;gap:18px;min-width:0}
.bf-business-guides .bf-portal-section-heading,.bf-business-guides .bf-panel{margin:0!important}
.bf-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}
.bf-business-guides .bf-guide-card{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;padding:20px!important;text-decoration:none;color:#2f3136;background:#fff;align-items:start}
.bf-guide-card h2,.bf-guide-help h2{font-size:16px;line-height:1.4;margin:0 0 7px!important;color:#2f3136}
.bf-guide-card p,.bf-guide-help p{font-size:13px;line-height:1.65;margin:0!important;color:#525861;overflow-wrap:anywhere}
.bf-guide-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;background:#fff0f1;color:#d61f26}
.bf-guide-icon svg{display:block;width:20px;height:20px;margin:0;flex:none}
.bf-guide-read{display:flex;align-items:center;gap:7px;margin-top:12px;color:#b51420;font-size:13px;font-weight:600;min-height:24px}
.bf-guide-card:focus-visible{outline:3px solid #d61f26;outline-offset:3px}
.bf-business-guide{max-width:900px;padding:24px!important}
.bf-business-guide h2{font-size:17px;margin:0 0 18px!important;color:#2f3136}
.bf-business-guide ol{display:grid;gap:16px;padding:0 0 0 26px;margin:0!important;list-style:decimal outside;color:#2f3136}
.bf-business-guide li{padding:0 0 0 6px;font-size:14px;line-height:1.75;overflow-wrap:anywhere}
.bf-business-guide li::marker{color:#b51420;font-weight:600}
.bf-business-guide .bf-form-actions{margin-top:24px!important}
.bf-guide-help{padding:20px!important}.bf-guide-help .bf-text-link{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;color:#b51420}
@media(max-width:650px){.bf-business-guides{gap:16px}.bf-guide-grid{grid-template-columns:1fr;gap:14px}.bf-business-guides .bf-guide-card{padding:16px!important;gap:12px}.bf-business-guide,.bf-guide-help{padding:18px!important}.bf-business-guide ol{padding-left:22px}.bf-business-guide .bf-form-actions .bf-button{width:100%}}
.bf-comms-matter-context{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px!important;padding:18px!important}.bf-comms-matter-context h2{font-size:16px;margin:0 0 6px!important}.bf-comms-matter-context p{font-size:13px;margin:0!important}.bf-comms-matter-context .bf-form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0!important}.bf-comms-matter-context .bf-text-link{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:650px){.bf-comms-matter-context{display:grid;grid-template-columns:minmax(0,1fr);padding:16px!important}.bf-comms-matter-context .bf-form-actions{justify-content:flex-start}}

/* Separate a group of cards from the next full-width form. */
body.bf-portal-page .bf-portal-main > .bf-portal-columns:not(:last-child){margin-bottom:20px}
body.bf-portal-page .bf-portal-main > .bf-form-actions + .bf-portal-section-heading{margin-top:16px}
@media(max-width:559px){body.bf-portal-page .bf-portal-main > .bf-portal-columns:not(:last-child){margin-bottom:16px}}

/* Completed contracts lead with their filed copies; saved wording stays readable. */
body.bf-portal-page #bf-main .bf-contract-saved-details{margin:20px 0 0;border:1px solid #dedfe4;border-radius:12px;padding:0 18px;min-width:0}
body.bf-portal-page #bf-main .bf-contract-saved-details>summary{padding:16px 0;min-height:44px;box-sizing:border-box;font:600 14px/1.5 Poppins,sans-serif;color:#2f3136;cursor:pointer}
body.bf-portal-page #bf-main .bf-contract-readable-preview{margin:14px 0;padding:18px;background:#fff;border:1px solid #dedfe4;border-radius:10px;color:#2f3136;font:400 13px/1.7 Montserrat,sans-serif;max-height:480px;overflow:auto;overflow-wrap:anywhere;white-space:normal}
body.bf-portal-page #bf-main .bf-contract-readable-preview h2{font-size:18px;line-height:1.45;margin:16px 0 10px}
body.bf-portal-page #bf-main .bf-contract-readable-preview h3,body.bf-portal-page #bf-main .bf-contract-readable-preview h4{font-size:15px;line-height:1.5;margin:14px 0 8px}
body.bf-portal-page #bf-main .bf-contract-readable-preview p{margin:0 0 12px}
body.bf-portal-page #bf-main .bf-contract-readable-preview table{width:100%;min-width:0;border-collapse:collapse;font-size:12px;table-layout:fixed}
body.bf-portal-page #bf-main .bf-contract-readable-preview td,body.bf-portal-page #bf-main .bf-contract-readable-preview th{padding:10px;border:1px solid #dedfe4;white-space:normal;overflow-wrap:anywhere}
@media(max-width:599px){body.bf-portal-page #bf-main .bf-contract-saved-details{padding:0 14px}body.bf-portal-page #bf-main .bf-contract-readable-preview{padding:14px}}

/* Finance cards must shrink around their own scrollable table at phone widths. */
body.bf-portal-page #bf-main .bf-finance-workspace{display:grid;gap:16px;min-width:0}
body.bf-portal-page #bf-main .bf-finance-workspace>section{margin:0;min-width:0}
body.bf-portal-page #bf-main .bf-finance-workspace .bf-portal-section-heading{display:flex;align-items:flex-start;gap:16px}
body.bf-portal-page #bf-main .bf-finance-workspace .bf-portal-section-heading .bf-form-actions{margin:0;gap:10px;justify-content:flex-start;max-width:100%;min-width:0}
body.bf-portal-page #bf-main .bf-finance-workspace .bf-portal-columns{grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}
body.bf-portal-page #bf-main .bf-finance-workspace .bf-panel{min-width:0}
body.bf-portal-page #bf-main .bf-finance-workspace>.bf-panel{display:grid;gap:16px}
body.bf-portal-page #bf-main .bf-finance-workspace>.bf-panel>.bf-subcard,
body.bf-portal-page #bf-main .bf-finance-workspace>.bf-panel>.bf-readonly-grid,
body.bf-portal-page #bf-main .bf-finance-workspace>.bf-panel>.bf-form-actions{margin:0!important;min-width:0}
body.bf-portal-page #bf-main .bf-finance-workspace .bf-readonly-grid{grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}
body.bf-portal-page #bf-main .bf-finance-workspace .bf-form-grid{grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}
body.bf-portal-page #bf-main .bf-finance-workspace .bf-field,
body.bf-portal-page #bf-main .bf-finance-workspace .bf-table-wrap{min-width:0;max-width:100%}
body.bf-portal-page #bf-main .bf-finance-workspace .bf-field input,
body.bf-portal-page #bf-main .bf-finance-workspace .bf-field select{min-width:0;max-width:100%;box-sizing:border-box}
@media(min-width:700px){body.bf-portal-page #bf-main .bf-finance-workspace .bf-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){body.bf-portal-page #bf-main .bf-finance-workspace .bf-portal-columns{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}body.bf-portal-page #bf-main .bf-finance-workspace .bf-readonly-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:799px){body.bf-portal-page #bf-main .bf-finance-workspace .bf-portal-section-heading{flex-direction:column;align-items:stretch}body.bf-portal-page #bf-main .bf-finance-workspace .bf-portal-section-heading .bf-button{white-space:normal;max-width:100%;min-height:44px}}
