.gtm-bsc-wrap { --bsc-ink: #0D1A2D; --bsc-navy: #1B3A6B; --bsc-navy-deep: #122649; --bsc-gold: #C9A84C; --bsc-gold-lt: #DFC070; --bsc-gold-dim: rgba(201, 168, 76, .13); --bsc-gold-rule: rgba(201, 168, 76, .28); --bsc-text-on-dark: rgba(255, 255, 255, .78); font-family: "DM Sans", sans-serif; background: var(--bsc-ink); color: rgb(255, 255, 255); border-radius: 4px; padding: 20px; box-sizing: border-box; -webkit-font-smoothing: antialiased; max-width: 100%; width: 100%; overflow: hidden; }
.gtm-bsc-wrap *, .gtm-bsc-wrap ::after, .gtm-bsc-wrap ::before { box-sizing: border-box; }
.gtm-bsc-card { background: rgba(255, 255, 255, 0.04); border: 1px solid var(--bsc-gold-rule); border-radius: 3px; padding: 28px; max-width: 100%; overflow: hidden; }
.gtm-bsc-section-title { font-family: "Cormorant Garamond", serif; font-size:1.25rem; font-weight: 600; color: rgb(255, 255, 255); margin: 0px 0px 16px; padding-bottom: 11px; border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.gtm-bsc-settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 28px; }
.gtm-bsc-fg { display: flex; flex-direction: column; gap: 6px; }
.gtm-bsc-fg > :is(label,.tool-group-caption) { letter-spacing: 0.05em; text-transform: uppercase; display: block; font-size:0.6875rem !important; font-weight: 500 !important; color: rgba(255, 255, 255, 0.5) !important; margin: 0px !important; padding: 0px !important; background: 0px 0px !important; border-width: medium !important; border-style: none !important; border-color: currentcolor !important; border-image: none !important; }
.gtm-bsc-hint { font-size:0.65625rem; color: rgba(255, 255, 255, 0.46); font-style: italic; line-height: 1.4; }
.gtm-bsc-seg { display: flex; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 2px; overflow: hidden; }
.gtm-bsc-seg-btn { flex: 1 1 0%; cursor: pointer; transition: 0.2s; touch-action: manipulation; background: 0px 0px !important; border-width: medium 1px medium medium !important; border-style: none solid none none !important; border-color: currentcolor rgba(255, 255, 255, 0.12) currentcolor currentcolor !important; border-image: none !important; padding: 9px 0px !important; font-family: "DM Sans", sans-serif !important; font-size:0.8125rem !important; font-weight: 500 !important; color: rgba(255, 255, 255, 0.45) !important; box-shadow: none !important; border-radius: 0px !important; }
.gtm-bsc-seg-btn:last-child { border-right-width: medium !important; border-right-style: none !important; border-right-color: currentcolor !important; }
.gtm-bsc-seg-btn.active { background: var(--bsc-navy) !important; color: rgb(255, 255, 255) !important; }
.gtm-bsc-seg-btn:hover:not(.active) { background: rgba(255, 255, 255, 0.05) !important; color: rgba(255, 255, 255, 0.7) !important; }
.gtm-bsc-input, .gtm-bsc-wrap input[type="number"], .gtm-bsc-wrap input[type="text"] { transition: border-color 0.2s; width: 100%; touch-action: manipulation; background: rgba(255, 255, 255, 0.1) !important; border: 1px solid rgba(255, 255, 255, 0.18) !important; border-radius: 2px !important; padding: 9px 12px !important; font-family: "DM Sans", sans-serif !important; font-size:1rem !important; color: rgb(255, 255, 255) !important; -webkit-text-fill-color: rgb(255, 255, 255) !important; outline: 0px !important; }
.gtm-bsc-input:focus, .gtm-bsc-wrap input[type="number"]:focus, .gtm-bsc-wrap input[type="text"]:focus { border-color: rgba(201, 168, 76, 0.65) !important; background: rgba(255, 255, 255, 0.13) !important; }
.gtm-bsc-wrap input::placeholder { color: rgba(255, 255, 255, 0.35) !important; -webkit-text-fill-color: rgba(255, 255, 255, 0.35) !important; }
.gtm-bsc-pills { display: flex; gap: 7px; flex-wrap: wrap; }
.gtm-bsc-pill { cursor: pointer; transition: 0.2s; touch-action: manipulation; background: 0px 0px !important; border: 1px solid rgba(255, 255, 255, 0.15) !important; border-radius: 2px !important; padding: 7px 13px !important; font-family: "DM Sans", sans-serif !important; font-size:0.78125rem !important; font-weight: 500 !important; color: rgba(255, 255, 255, 0.5) !important; box-shadow: none !important; }
.gtm-bsc-pill.active { background: var(--bsc-gold-dim) !important; border-color: var(--bsc-gold-rule) !important; color: var(--bsc-gold) !important; }
.gtm-bsc-pill:hover:not(.active) { border-color: rgba(255, 255, 255, 0.3) !important; color: rgba(255, 255, 255, 0.75) !important; }
.gtm-bsc-custom-row { display: none; margin-top: 10px; align-items: center; gap: 10px; }
.gtm-bsc-custom-row.visible { display: flex; }
.gtm-bsc-table-wrap { margin-bottom: 8px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 2px; width: 100%; max-width: 100%; overflow: hidden; }
.gtm-bsc-month-table { width: 100%; border-collapse: collapse; table-layout: fixed; max-width: 100%; }
.gtm-bsc-month-table colgroup col:first-child { width: 26%; }
.gtm-bsc-month-table colgroup col:nth-child(2) { width: 44%; }
.gtm-bsc-month-table colgroup col:nth-child(3) { width: 30%; }
.gtm-bsc-month-table thead th { font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; text-align: left; background: rgba(255, 255, 255, 0.04); border-bottom: 1px solid rgba(255, 255, 255, 0.08); overflow: hidden; white-space: nowrap; font-size:0.625rem !important; color: rgba(255, 255, 255, 0.4) !important; padding: 10px 8px !important; }
.gtm-bsc-month-table thead th:nth-child(2), .gtm-bsc-month-table thead th:nth-child(3) { text-align: right; }
.gtm-bsc-month-table tbody tr { border-bottom: 1px solid rgba(255, 255, 255, 0.05); transition: background 0.15s; }
.gtm-bsc-month-table tbody tr:last-child { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; }
.gtm-bsc-month-table tbody tr:hover { background: rgba(255, 255, 255, 0.03); }
.gtm-bsc-month-table td { vertical-align: middle; overflow: hidden; padding: 7px 8px !important; font-size:0.8125rem !important; color: rgba(255, 255, 255, 0.74) !important; }
.gtm-bsc-month-table td:first-child { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size:0.75rem !important; color: rgba(255, 255, 255, 0.6) !important; }
.gtm-bsc-month-table td.run-avg-cell { text-align: right; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size:0.75rem !important; color: rgba(255, 255, 255, 0.55) !important; }
.gtm-bsc-month-input { width: 100%; transition: border-color 0.2s, background 0.2s; text-align: right; display: block; touch-action: manipulation; background: rgba(255, 255, 255, 0.08) !important; border-width: medium medium 1px !important; border-style: none none solid !important; border-color: currentcolor currentcolor rgba(255, 255, 255, 0.2) !important; border-image: none !important; border-radius: 2px !important; padding: 5px 4px !important; font-family: "DM Sans", sans-serif !important; font-size:1rem !important; color: rgb(255, 255, 255) !important; -webkit-text-fill-color: rgb(255, 255, 255) !important; outline: 0px !important; }
.gtm-bsc-month-input:focus { border-bottom-color: rgba(201, 168, 76, 0.7) !important; background: rgba(255, 255, 255, 0.13) !important; }
.gtm-bsc-month-input::placeholder { color: rgba(255, 255, 255, 0.3) !important; -webkit-text-fill-color: rgba(255, 255, 255, 0.3) !important; }
.gtm-bsc-month-table tfoot td { font-weight: 600; border-top: 1px solid rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.03); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding: 10px 8px !important; font-size:0.75rem !important; color: rgba(255, 255, 255, 0.5) !important; }
.gtm-bsc-foot-total { font-family: "Cormorant Garamond", serif; text-align: right; font-size:1rem !important; color: rgb(255, 255, 255) !important; }
.gtm-bsc-prefill-row { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; flex-wrap: wrap; }
.gtm-bsc-prefill-label { font-size:0.6875rem; color: rgba(255, 255, 255, 0.35); white-space: nowrap; }
.gtm-bsc-prefill-btn { cursor: pointer; transition: 0.2s; touch-action: manipulation; background: 0px 0px !important; border: 1px solid rgba(255, 255, 255, 0.15) !important; border-radius: 2px !important; padding: 5px 10px !important; font-family: "DM Sans", sans-serif !important; font-size:0.71875rem !important; color: rgba(255, 255, 255, 0.5) !important; box-shadow: none !important; }
.gtm-bsc-prefill-btn:hover { border-color: var(--bsc-gold-rule) !important; color: var(--bsc-gold) !important; }
.gtm-bsc-calc-note { font-size:0.71875rem; color: rgba(255, 255, 255, 0.58); line-height: 1.6; margin-bottom: 18px; font-style: italic; }
.gtm-bsc-actions { display: flex; gap: 12px; margin-top: 20px; flex-wrap: wrap; }
.gtm-bsc-btn-calc { letter-spacing: 0.13em; text-transform: uppercase; cursor: pointer; transition: background 0.2s, transform 0.15s; touch-action: manipulation; background: var(--bsc-gold) !important; color: var(--bsc-ink) !important; border-width: medium !important; border-style: none !important; border-color: currentcolor !important; border-image: none !important; padding: 13px 28px !important; border-radius: 2px !important; font-family: "DM Sans", sans-serif !important; font-size:0.71875rem !important; font-weight: 700 !important; box-shadow: none !important; }
.gtm-bsc-btn-calc:hover { transform: translateY(-1px); background: var(--bsc-gold-lt) !important; }
.gtm-bsc-btn-reset { letter-spacing: 0.1em; text-transform: uppercase; cursor: pointer; transition: 0.2s; touch-action: manipulation; background: 0px 0px !important; border: 1px solid rgba(255, 255, 255, 0.18) !important; color: rgba(255, 255, 255, 0.5) !important; padding: 13px 20px !important; border-radius: 2px !important; font-family: "DM Sans", sans-serif !important; font-size:0.71875rem !important; box-shadow: none !important; }
.gtm-bsc-btn-reset:hover { border-color: rgba(255, 255, 255, 0.35) !important; color: rgba(255, 255, 255, 0.8) !important; }
.gtm-bsc-validation { display: none; background: rgba(252, 165, 165, 0.1); border: 1px solid rgba(252, 165, 165, 0.3); border-radius: 2px; padding: 12px 16px; font-size:0.8125rem; color: rgb(252, 165, 165); margin-top: 16px; line-height: 1.5; }
.gtm-bsc-results { margin-top: 36px; padding-top: 32px; border-top: 1px solid var(--bsc-gold-rule); display: none; }
.gtm-bsc-results-primary { background: var(--bsc-navy-deep); border: 1px solid var(--bsc-gold-rule); border-radius: 3px; padding: 28px 32px; margin-bottom: 24px; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 24px; }
.gtm-bsc-rp-label { font-size:0.65625rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255, 255, 255, 0.56); margin-bottom: 6px; }
.gtm-bsc-rp-value { font-family: "Cormorant Garamond", serif; font-size:2.25rem; font-weight: 600; color: rgb(255, 255, 255); line-height: 1; }
.gtm-bsc-rp-value.accent { color: var(--bsc-gold); }
.gtm-bsc-rp-sub { font-size:0.71875rem; color: rgba(255, 255, 255, 0.6); margin-top: 5px; line-height: 1.4; }
.gtm-bsc-scenario-wrap { width: 100%; max-width: 100%; overflow: hidden; }
.gtm-bsc-scenario-table { width: 100%; border-collapse: collapse; font-size:0.8125rem; margin-bottom: 20px; table-layout: fixed; max-width: 100%; }
.gtm-bsc-scenario-table th { font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; text-align: left; border-bottom: 1px solid rgba(255, 255, 255, 0.08); overflow: hidden; white-space: nowrap; font-size:0.625rem !important; color: rgba(255, 255, 255, 0.38) !important; padding: 9px 8px !important; }
.gtm-bsc-scenario-table td { border-bottom: 1px solid rgba(255, 255, 255, 0.05); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 10px 8px !important; color: var(--bsc-text-on-dark) !important; }
.gtm-bsc-scenario-table tr:last-child td { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; }
.gtm-bsc-scenario-table tr:hover td { background: rgba(255, 255, 255, 0.03); }
.gtm-bsc-disclaimer { font-size:0.6875rem; color: rgba(255, 255, 255, 0.54); line-height: 1.6; margin-top: 20px; padding: 14px 16px; border-left: 2px solid var(--bsc-gold-rule); font-style: italic; }
@media (max-width: 768px) {.gtm-bsc-wrap { padding: 16px 12px; }
.gtm-bsc-card { padding: 22px 16px; }
.gtm-bsc-settings-grid { grid-template-columns: 1fr; gap: 14px; }
.gtm-bsc-results-primary { grid-template-columns: 1fr 1fr; gap: 18px; padding: 22px 18px; }
.gtm-bsc-results-primary > div:last-child { grid-column: 1 / -1; border-top: 1px solid rgba(255, 255, 255, 0.07); padding-top: 16px; margin-top: 2px; }}
@media (max-width: 520px) {.gtm-bsc-wrap { padding: 10px 6px; }
.gtm-bsc-card { padding: 16px 10px; }
.gtm-bsc-section-title { font-size:1.125rem; }
.gtm-bsc-month-table colgroup col:first-child { width: 22%; }
.gtm-bsc-month-table colgroup col:nth-child(2) { width: 48%; }
.gtm-bsc-month-table colgroup col:nth-child(3) { width: 30%; }
.gtm-bsc-month-table thead th { letter-spacing: 0.02em; padding: 8px 5px !important; font-size:0.5625rem !important; }
.gtm-bsc-month-table td { padding: 6px 5px !important; }
.gtm-bsc-month-table td:first-child { font-size:0.6875rem !important; }
.gtm-bsc-month-table td.run-avg-cell { font-size:0.6875rem !important; }
.gtm-bsc-month-input { padding: 4px 3px !important; }
.gtm-bsc-month-table tfoot td { padding: 8px 5px !important; font-size:0.6875rem !important; }
.gtm-bsc-foot-total { font-size:0.875rem !important; }
.gtm-bsc-prefill-btn { font-size:0.6875rem !important; padding: 5px 8px !important; }
.gtm-bsc-results-primary { grid-template-columns: 1fr; gap: 14px; padding: 16px 14px; }
.gtm-bsc-results-primary > div:last-child { grid-column: auto; border-top: 1px solid rgba(255, 255, 255, 0.07); padding-top: 14px; }
.gtm-bsc-rp-value { font-size:1.75rem; }
.gtm-bsc-scenario-table th { padding: 8px 5px !important; font-size:0.5625rem !important; }
.gtm-bsc-scenario-table td { padding: 8px 5px !important; font-size:0.75rem !important; }
.gtm-bsc-actions { flex-direction: column; gap: 10px; }
.gtm-bsc-btn-calc, .gtm-bsc-btn-reset { width: 100% !important; text-align: center !important; padding: 14px 20px !important; }}
@media (max-width: 390px) {.gtm-bsc-wrap { padding: 8px 4px; }
.gtm-bsc-card { padding: 14px 8px; }
.gtm-bsc-month-table colgroup col:first-child { width: 20%; }
.gtm-bsc-month-table colgroup col:nth-child(2) { width: 50%; }
.gtm-bsc-month-table colgroup col:nth-child(3) { width: 30%; }
.gtm-bsc-month-table thead th { padding: 7px 4px !important; font-size:0.5rem !important; }
.gtm-bsc-month-table td { padding: 5px 4px !important; }
.gtm-bsc-month-table td:first-child { font-size:0.625rem !important; }
.gtm-bsc-month-table td.run-avg-cell { font-size:0.625rem !important; }
.gtm-bsc-month-input { padding: 3px 2px !important; }
.gtm-bsc-month-table tfoot td { padding: 7px 4px !important; font-size:0.625rem !important; }
.gtm-bsc-scenario-table th { padding: 7px 4px !important; font-size:0.5rem !important; }
.gtm-bsc-scenario-table td { padding: 7px 4px !important; font-size:0.6875rem !important; }}
@media (max-width: 340px) {.gtm-bsc-wrap { padding: 6px 4px; }
.gtm-bsc-card { padding: 12px 8px; }
.gtm-bsc-section-title { font-size:1rem; }
.gtm-bsc-month-table colgroup col:first-child { width: 18%; }
.gtm-bsc-month-table colgroup col:nth-child(2) { width: 52%; }
.gtm-bsc-month-table colgroup col:nth-child(3) { width: 30%; }
.gtm-bsc-month-table thead th { letter-spacing: 0px; padding: 6px 3px !important; font-size:0.5rem !important; }
.gtm-bsc-month-table td { padding: 5px 3px !important; }
.gtm-bsc-month-table td:first-child { font-size:0.625rem !important; }
.gtm-bsc-month-table td.run-avg-cell { font-size:0.625rem !important; }
.gtm-bsc-month-input { padding: 3px 2px !important; }
.gtm-bsc-month-table tfoot td { padding: 6px 3px !important; font-size:0.625rem !important; }
.gtm-bsc-foot-total { font-size:0.75rem !important; }
.gtm-bsc-seg-btn { font-size:0.75rem !important; }
.gtm-bsc-pill { padding: 6px 10px !important; font-size:0.6875rem !important; }
.gtm-bsc-prefill-btn { font-size:0.625rem !important; padding: 4px 6px !important; }
.gtm-bsc-calc-note { font-size:0.6875rem; }
.gtm-bsc-hint { font-size:0.625rem; }
.gtm-bsc-results-primary { padding: 14px 10px; gap: 12px; }
.gtm-bsc-rp-value { font-size:1.5rem; }
.gtm-bsc-rp-label { font-size:0.5625rem; }
.gtm-bsc-rp-sub { font-size:0.625rem; }
.gtm-bsc-scenario-table th { letter-spacing: 0px; padding: 6px 3px !important; font-size:0.5rem !important; }
.gtm-bsc-scenario-table td { padding: 6px 3px !important; font-size:0.6875rem !important; }
.gtm-bsc-btn-calc, .gtm-bsc-btn-reset { padding: 12px 14px !important; font-size:0.6875rem !important; }}
/* Presentation bridge for the preserved calculators. Formula scripts stay independent.
   The scoped specificity intentionally wins over the original inline-style exports. */
.legacy-tool[data-legacy-tool] :is(#gtm-dscr-1,#gtm-aqc-1,#gtm-adc-wrap,#gt-cema-2,.gtm-bsc-wrap,.gt-brc).tool-refresh {
  color:var(--ink)!important; background:transparent!important; padding:0!important;
  font-family:var(--sans)!important; font-size:1rem!important; line-height:1.6!important;
  --c-bg:#fffefa; --c-deep:#163743; --c-gold:#7a5f22; --c-gold-lt:#7a5f22;
  --c-w92:#0b202a; --c-w62:#526269; --c-w45:#526269; --c-w30:#7d867f;
  --c-w10:#d7dad3; --c-w07:#d7dad3; --c-w04:#f6f3ec; --c-gold-rule:#d7dad3;
  --f-body:var(--sans); --f-head:var(--serif);
  & * { font-family:var(--sans)!important; color:inherit!important; min-width:0; }
  & :is(.dscr-card,.aqc-card,.adc-card,.gtm-bsc-card,.c-card) { background:var(--white)!important; border:1px solid var(--line)!important; border-radius:18px!important; padding:clamp(18px,3vw,34px)!important; }
  & :is(.dscr-heading,.aqc-heading,.adc-heading,.c-title) { font-family:var(--serif)!important; font-size:clamp(1.625rem,3vw,2.25rem)!important; line-height:1.2!important; }
  & :is(.dscr-hero,.aqc-hero,.adc-hero) { margin:0 0 24px!important; }
  & :is(.dscr-sub,.aqc-sub,.adc-sub,.c-static-copy) { font-size:0.9375rem!important; line-height:1.7!important; color:var(--muted)!important; }
  & :is(.dscr-section-title,.aqc-section-title,.adc-section-title,.gtm-bsc-section-title) { font-family:var(--serif)!important; font-size:1.5rem!important; letter-spacing:-.02em!important; line-height:1.3!important; margin:24px 0 16px!important; padding-bottom:12px!important; border-bottom:1px solid var(--line)!important; }
  & .tool-form-fields > :first-child { margin-top:0!important; }
  & :is(label,.tool-group-caption,.dscr-fg label,.aqc-fg label,.gtm-bsc-label,.adc-term-label,.c-fg label) { font-size:0.875rem!important; line-height:1.5!important; text-transform:none!important; letter-spacing:0!important; font-weight:600!important; }
  & :is(input:not([type=checkbox]):not([type=range]),select) { background:#fff!important; color:var(--ink)!important; border:1.5px solid #7d867f!important; border-radius:8px!important; padding:11px 12px!important; min-height:48px!important; font:500 1rem/1.5 var(--sans)!important; max-width:100%!important; font-variant-numeric:tabular-nums!important; }
  & select { appearance:auto!important; background-image:none!important; padding-right:24px!important; }
  & option { color:var(--ink)!important; background:white!important; }
  & input::placeholder { color:#63726d!important; opacity:1!important; }
  & :is(input,select,button,a,summary,[role=switch]):focus-visible { outline:3px solid #325d52!important; outline-offset:3px!important; box-shadow:0 0 0 2px #fff!important; }
  & [aria-invalid=true] { border-color:#9d2b28!important; }
  & button { min-height:44px!important; padding:10px 16px!important; border-radius:8px!important; font-size:0.875rem!important; line-height:1.4!important; letter-spacing:0!important; text-transform:none!important; border:1px solid #7d867f!important; background:#fff!important; color:var(--ink)!important; }
  & button:hover { background:#e6efe9!important; }
  & button:disabled { opacity:.6!important; cursor:not-allowed!important; }
  & :is(.dscr-btn-calc,.aqc-btn-calc,.adc-btn-calc,.gtm-bsc-btn-calc,.c-btn-calc) { background:var(--ink)!important; color:var(--white)!important; border-color:var(--ink)!important; font-weight:650!important; padding:14px 20px!important; }
  & :is(.dscr-btn-calc,.aqc-btn-calc,.adc-btn-calc,.gtm-bsc-btn-calc,.c-btn-calc):hover { background:var(--navy)!important; }
  & button:is(.active,[aria-pressed=true]) { background:var(--navy)!important; color:var(--white)!important; border-color:var(--navy)!important; }
  & :is(.aqc-remove,.aqc-mc-remove,.adc-remove-btn) { width:44px!important; height:44px!important; flex:0 0 44px!important; padding:0!important; font-size:1.5rem!important; color:var(--ink)!important; border:1px solid #7d867f!important; }
  & :is(.hint,[class$="-hint"],[class$="-note"],.gtm-bsc-prefill-label,.gtm-bsc-calc-note,.aqc-note,.c-hint,.adc-sub) { font-size:0.875rem!important; line-height:1.6!important; color:var(--muted)!important; letter-spacing:0!important; }
  & :is(.dscr-validation,.aqc-validation,.gtm-bsc-validation,.tool-input-error,.c-errors) { color:#7b2424!important; background:#fff0ed!important; border-left:3px solid #9d2b28!important; border-radius:6px!important; padding:14px!important; font-size:0.9375rem!important; }
  & .tool-input-error[hidden] { display:none!important; }
  & :is(.aqc-mc-row,.adc-acct-card) { background:#f6f3ec!important; border:1px solid var(--line)!important; padding:16px!important; border-radius:12px!important; margin-bottom:14px!important; }
  & :is(.adc-acct-card-name,.adc-acct-label,.aqc-mc-label) { font-size:0.875rem!important; line-height:1.5!important; }
  & .adc-acct-card-top { gap:12px!important; margin-bottom:14px!important; align-items:start!important; }
  & .adc-acct-card-fields { display:grid!important; grid-template-columns:minmax(0,1fr) auto!important; gap:12px!important; align-items:center!important; }
  & .adc-acct-card-fields .adc-balance-input { grid-column:1/-1!important; width:100%!important; }
  & .adc-field-label { grid-column:1/-1!important; }
  & :is(.adc-usage-badge,.aqc-mc-discount) { color:#325d52!important; background:#e6efe9!important; border-color:#7d867f!important; font-size:0.875rem!important; }
  & .adc-acct-card-qi { font-size:1rem!important; overflow-wrap:anywhere!important; }
  & :is(.aqc-inputs-grid,.dscr-grid,.c-grid,.gtm-bsc-settings-grid) { gap:22px!important; }
  & :is(.adc-add-row,.aqc-acct-actions,.dscr-actions,.aqc-actions,.adc-actions,.gtm-bsc-actions,.c-actions) { gap:12px!important; margin-top:20px!important; flex-wrap:wrap!important; }
  & .adc-add-select { flex:1 1 240px!important; }
  & :is(.dscr-toggle-row,.c-assumptions) { border:1px solid var(--line)!important; padding:18px!important; border-radius:12px!important; background:#f6f3ec!important; }
  & :is(.dscr-toggle,.dscr-switch) { min-width:44px!important; }
  & .dscr-toggle-wrap { width:48px!important; height:44px!important; }
  & .dscr-toggle-track { inset:8px 0!important; background:#667b75!important; border:1px solid #325d52!important; border-radius:18px!important; }
  & .dscr-toggle-thumb { top:4px!important; left:4px!important; width:18px!important; height:18px!important; background:#fff!important; }
  & .dscr-toggle-wrap input:checked + .dscr-toggle-track { background:#325d52!important; }
  & .dscr-toggle-wrap input:checked ~ .dscr-toggle-track .dscr-toggle-thumb { transform:translateX(20px)!important; }
  & .dscr-toggle-wrap:has(input:focus-visible) { outline:3px solid #325d52!important; outline-offset:3px!important; border-radius:8px!important; }
  & .dscr-toggle-label { font-size:0.875rem!important; }
  & table { font-variant-numeric:tabular-nums!important; }
  & :is(th,td) { font-size:0.9375rem!important; line-height:1.5!important; letter-spacing:0!important; text-transform:none!important; padding:12px!important; border-color:var(--line)!important; }
  & thead th { background:#e6efe9!important; color:var(--ink)!important; white-space:normal!important; }
  & :is(.adc-table,.aqc-table) { table-layout:auto!important; min-width:680px!important; }
  & :is(.gtm-bsc-month-table,.gtm-bsc-scenario-table) { table-layout:auto!important; }
  & :is(.gtm-bsc-month-table,.gtm-bsc-scenario-table) col { width:auto!important; }
  & :is(.adc-table-wrap,.aqc-table-wrap,.gtm-bsc-table-wrap) { border:1px solid var(--line)!important; border-radius:10px!important; }
  & .tool-table-scroll { overflow-x:auto!important; max-width:100%!important; margin:20px 0!important; border:1px solid var(--line)!important; border-radius:10px!important; }
  & :is(.adc-scenario-table,.aqc-breakdown,.gtm-bsc-scenario-table) { min-width:560px!important; width:100%!important; table-layout:auto!important; }
  & :is(.adc-scenario-table,.aqc-breakdown,.gtm-bsc-scenario-table) td { white-space:nowrap!important; }
  & :is(.dscr-results,.aqc-results,.adc-results,.gtm-bsc-results,.c-results) { background:var(--navy)!important; color:var(--white)!important; border:0!important; padding:clamp(18px,3vw,30px)!important; margin-top:28px!important; border-radius:14px!important; scroll-margin-top:120px; }
  & [data-tool-result] * { color:inherit!important; }
  & [data-tool-result] :is(p,[class$="-sub"],[class$="-label"],[class$="-disclaimer"],.c-static-copy,.c-row-lbl,.aqc-test-detail) { font-size:0.875rem!important; line-height:1.6!important; color:#dce7e4!important; }
  & [data-tool-result] :is(.dscr-rs-value,.aqc-rs-value,.adc-rp-value,.gtm-bsc-rp-value) { font-family:var(--serif)!important; color:var(--gold)!important; font-size:clamp(1.875rem,3vw,2.625rem)!important; line-height:1.25!important; font-variant-numeric:tabular-nums!important; overflow-wrap:anywhere!important; letter-spacing:-.03em!important; }
  & [data-tool-result] :is(.dscr-rs-card,.aqc-rs-card,.gtm-bsc-results-primary,.adc-results-primary,.aqc-test-card,.c-panel) { background:#ffffff08!important; border:1px solid #5c797f!important; border-radius:10px!important; padding:18px!important; }
  & [data-tool-result] :is(.dscr-summary,.aqc-summary,.adc-results-primary,.gtm-bsc-results-primary) { gap:18px!important; }
  & [data-tool-result] :is(.adc-scenario-block,.c-panel-body,.c-panel-head) { padding:14px 0!important; }
  & [data-tool-result] .c-panel { margin-top:20px!important; }
  & [data-tool-result] .c-panel-title { font:500 1.5rem/1.3 var(--serif)!important; }
  & [data-tool-result] :is(th,td,.c-row) { border-color:#5c797f!important; }
  & [data-tool-result] thead th { background:#0b202a!important; color:var(--white)!important; }
  & [data-tool-result] .tool-table-scroll { border-color:#5c797f!important; }
  & [data-tool-result] .c-primary-result { margin:0 0 24px!important; padding-bottom:24px!important; border-bottom:1px solid #5c797f!important; }
  & [data-tool-result] .c-primary-result strong { display:block!important; font:500 clamp(1.875rem,3vw,2.75rem)/1.3 var(--serif)!important; color:var(--gold)!important; font-variant-numeric:tabular-nums!important; margin:12px 0!important; overflow-wrap:anywhere; }
  & [data-tool-result] .tool-edit-link { display:inline-block!important; margin-top:24px!important; min-height:44px!important; padding:10px 0!important; font-size:0.9375rem!important; font-weight:650!important; color:var(--white)!important; text-decoration:underline!important; }
  & [data-tool-result] :focus-visible { outline:3px solid var(--gold)!important; box-shadow:none!important; }
  & .tool-result-placeholder { border:1px solid #5c797f!important; border-radius:14px!important; padding:30px!important; background:var(--navy)!important; color:var(--white)!important; }
  & .tool-result-placeholder h2 { font:500 2.125rem/1.2 var(--serif)!important; margin:20px 0!important; }
  & .tool-result-placeholder p { font-size:0.9375rem!important; line-height:1.7!important; }
  & .tool-result-placeholder .tool-placeholder-note { border-top:1px solid #5c797f!important; margin-top:24px!important; padding-top:20px!important; color:#dce7e4!important; }
  & .tool-layout-split:has(.dscr-results.visible) .tool-result-placeholder { display:none; }
  & .c-disclaimer a { color:inherit!important; text-decoration:underline!important; }
  & .gt-brc-head { background:var(--navy)!important; color:var(--white)!important; }
  & .gt-brc-head * { color:var(--white)!important; }
  & :is(.gt-brc-card,.gt-brc-save) { background:var(--navy)!important; color:var(--white)!important; border-radius:14px!important; }
  & :is(.gt-brc-card,.gt-brc-save) * { color:var(--white)!important; }
  & :is(.gt-brc-card,.gt-brc-save) strong { color:var(--gold)!important; }
  & .gt-brc-pill { background:#e6efe9!important; color:var(--green)!important; }
  & :is(.gt-brc-glabel,.gt-brc-range) { font-size:0.875rem!important; }
  & .dscr-table-wrap { overflow-x:auto!important; }
  & .dscr-table { min-width:620px!important; table-layout:auto!important; }
  & .dscr-table thead th { width:auto!important; }
  & .dscr-table :is(th,td):last-child { white-space:nowrap!important; }
  & .dscr-table-wrap:focus-visible { outline:3px solid var(--gold)!important; outline-offset:3px!important; }
  & .gt-brc-blendseg.gt-brc-first { color:var(--white)!important; }
  & :is(.gt-brc-gnum,.gt-brc-blendseg,.gt-brc-blend h4) { font-size:0.8125rem!important; }
  & :is(.gt-brc-pill,.gt-brc-snote,.gt-brc-sl,.gt-brc-vtag,.gt-brc-disc,.gt-brc-badge,.gt-brc-eyebrow,.gt-brc-hint,.gt-brc-rangenote,.gt-brc-kicker,.aqc-rs-label,.adc-eyebrow) { font-size:0.8125rem!important; }
}
@media(min-width:1100px) {
 .legacy-tool[data-legacy-tool] #gtm-dscr-1.tool-refresh .tool-layout-split { display:grid!important; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)!important; gap:32px!important; align-items:start!important; }
 .legacy-tool[data-legacy-tool] #gtm-dscr-1.tool-refresh .dscr-results { margin-top:0!important; }
 .legacy-tool[data-legacy-tool] #gtm-dscr-1.tool-refresh .dscr-summary { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
 .legacy-tool[data-legacy-tool] #gtm-dscr-1.tool-refresh .dscr-grid.three-col { grid-template-columns:1fr!important; }
}
@media(max-width:650px) {
 .legacy-tool[data-legacy-tool] :is(#gtm-dscr-1,#gtm-aqc-1,#gtm-adc-wrap,#gt-cema-2,.gtm-bsc-wrap).tool-refresh {
  & :is(.dscr-grid,.dscr-grid.three-col,.aqc-inputs-grid,.gtm-bsc-settings-grid) { grid-template-columns:1fr!important; }
  & :is(.dscr-summary,.aqc-summary,.adc-results-primary,.gtm-bsc-results-primary) { display:grid!important; grid-template-columns:1fr!important; }
  & :is(.dscr-card,.aqc-card,.adc-card,.gtm-bsc-card,.c-card) { padding:18px!important; }
  & :is(.dscr-results,.aqc-results,.adc-results,.gtm-bsc-results,.c-results) { padding:18px!important; }
  & .tool-result-placeholder { margin-top:24px; padding:24px; }
  & .gtm-bsc-month-table :is(th,td) { padding:10px 4px!important; font-size:0.875rem!important; }
  & .gtm-bsc-month-table td.run-avg-cell { font-size:0.8125rem!important; overflow-wrap:anywhere!important; }
  & .gtm-bsc-month-input { min-width:100px!important; padding:10px 6px!important; }
  & .adc-add-row { display:flex!important; flex-direction:column!important; align-items:stretch!important; }
  & .adc-add-select { flex:auto!important; width:100%!important; }
 }
}
@media(prefers-reduced-motion:reduce) { .legacy-tool * { scroll-behavior:auto!important; } }

/* Focus and result-link colors follow the actual surface, not the tool family. */
.legacy-tool[data-legacy-tool] #gt-cema-2.tool-refresh button.c-toggle-btn:focus-visible {
 outline:3px solid #325d52!important; outline-offset:3px!important; box-shadow:0 0 0 2px #fff!important;
}
.legacy-tool[data-legacy-tool] .gt-brc.tool-refresh #blended-payment-results[data-tool-result] .tool-edit-link {
 color:#0b202a!important;
}
.legacy-tool[data-legacy-tool] .gt-brc.tool-refresh #blended-payment-results[data-tool-result] .tool-edit-link:focus-visible {
 outline:3px solid #325d52!important; outline-offset:3px!important; box-shadow:0 0 0 2px #fff!important;
}
.legacy-tool[data-legacy-tool] :is(#gtm-dscr-1,#gtm-aqc-1,.gt-brc).tool-refresh :is(.dscr-results,.aqc-results,.gt-brc-card,.gt-brc-save) :focus-visible {
 outline:3px solid #dfbd7d!important; outline-offset:3px!important; box-shadow:none!important;
}
#brc_weightedNote {font-size:0.875rem!important;line-height:1.5!important;max-width:48ch;}



/* Retest: immediate focus and reachable narrow tables. */
.legacy-tool[data-legacy-tool] #gt-cema-2.tool-refresh button.c-toggle-btn {transition:background-color .2s,color .2s!important}
.legacy-tool[data-legacy-tool] .tool-refresh :is(.gtm-bsc-table-wrap,.adc-table-wrap){overflow-x:auto!important;overscroll-behavior-x:contain}
.legacy-tool[data-legacy-tool] .tool-refresh :is(.gtm-bsc-table-wrap,.adc-table-wrap):focus-visible{outline:3px solid #325d52!important;outline-offset:3px!important}
.legacy-tool[data-legacy-tool] .tool-refresh :is(.gtm-bsc-table-wrap,.adc-table-wrap) table{min-width:100%}

.legacy-tool .tool-scroll-hint{display:none;font-size:.875rem;line-height:1.6;color:#526269;margin:0 0 12px}@media(max-width:600px){.legacy-tool .tool-scroll-hint{display:block}}

/* Explicit glyph colors are necessary in Blink/WebKit as well as computed color. */
.legacy-tool[data-legacy-tool="bank-statement-calculator"] .gtm-bsc-wrap.tool-refresh input:is([type="text"],[type="number"]){color:#0b202a!important;-webkit-text-fill-color:#0b202a!important;caret-color:#0b202a!important}
.legacy-tool[data-legacy-tool="bank-statement-calculator"] .gtm-bsc-wrap.tool-refresh input::placeholder{color:#65736e!important;-webkit-text-fill-color:#65736e!important;opacity:1}
/* Asset eligibility labels carry information, rather than decorative numbering. */
.legacy-tool[data-legacy-tool] .tool-refresh .aqc-mc-badge,
.legacy-tool[data-legacy-tool] .tool-refresh .aqc-mc-total-label { font-size: .8125rem!important; line-height: 1.5!important; }

/* Shared presentation for the remaining tools; audited formulas stay in their runtimes. */
.legacy-tool[data-legacy-tool] :is(#gtm-adc-wrap,.gtm-bsc-wrap,#gt-cema-2,.gt-brc).tool-refresh.family-calculator {
 & :is(.adc-card,.gtm-bsc-card,.c-card){border-radius:18px!important;border-color:#a8b8b2!important}
 & :is(.adc-results,.gtm-bsc-results,.c-results){background:#163743!important;border-radius:16px!important}
 & :is(.adc-results-primary,.gtm-bsc-results-primary){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}
 & .family-primary{grid-column:1/-1!important;background:#244b56!important;border:1px solid #78938b!important;border-radius:12px!important;padding:22px!important}
 & .family-primary :is(.adc-rp-value,.gtm-bsc-rp-value,.gt-brc-sv){font-size:clamp(2rem,4vw,2.875rem)!important;color:#fffefa!important;font-variant-numeric:tabular-nums!important;overflow-wrap:anywhere!important}
 & :is(.adc-rp-value,.gtm-bsc-rp-value){font-size:1.75rem!important;color:#fffefa!important;overflow-wrap:anywhere!important}
 & :is(.adc-rp-label,.gtm-bsc-rp-label){font-size:0.8125rem!important;color:#dce7e4!important;letter-spacing:.04em!important}
 & :is(.adc-rp-sub,.gtm-bsc-rp-sub,.gtm-bsc-disclaimer,.adc-disclaimer){font-size:0.875rem!important;line-height:1.6!important;color:#dce7e4!important}
 & :is(.gtm-bsc-disclaimer,.adc-disclaimer){font-style:normal!important;font-weight:400!important}
 & .family-result-detail{border-top:1px solid #78938b!important;margin-top:24px!important;padding-top:16px!important;color:#dce7e4!important}
 & .family-result-detail>summary{min-height:44px!important;cursor:pointer!important;font-size:1rem!important;font-weight:650!important;color:#fffefa!important;padding:8px 0!important}
 & .family-result-detail>p{font-size:0.875rem!important;line-height:1.6!important;margin:12px 0!important}
 & .family-table-hint{display:none!important}
 & .family-account-income{grid-column:1/-1!important;display:flex!important;justify-content:space-between!important;align-items:baseline!important;gap:12px!important}
 & .family-account-income>span{font-size:0.75rem!important;color:#30464d!important}
 & .family-account-income [data-card-qi]{font-size:1.0625rem!important;overflow-wrap:anywhere!important}
 & .family-result-detail summary:focus-visible{outline:3px solid #ddc683!important;outline-offset:3px!important}
 & :is(.adc-scenario-table,.gtm-bsc-scenario-table){min-width:580px!important;table-layout:auto!important}
 & :is(.adc-scenario-table,.gtm-bsc-scenario-table) :is(th,td){font-size:0.875rem!important;white-space:nowrap!important;padding:14px!important}
 & :is(input,select){font-size:1rem!important;min-height:48px!important}
 & :is(.gtm-bsc-hint,.gtm-bsc-rp-sub,.adc-hint,.adc-field-note){font-size:0.8125rem!important;line-height:1.5!important}
 & #adcTable tbody td{vertical-align:top!important;padding-block:16px!important}
 & #adcTable tbody td:nth-child(3), & #adcTable tbody td:nth-child(4){line-height:48px!important}
 & .gt-brc-card{border-radius:16px!important}
 & .gt-brc-card .family-primary{margin-top:20px!important}
 & .gt-brc-card .family-primary .gt-brc-sl{color:#dce7e4!important;font-size:0.875rem!important}
 & .gt-brc-card .family-primary .gt-brc-snote{color:#dce7e4!important}
 & :is(.gt-brc-hint,.gt-brc-snote,.gt-brc-disc){font-size:0.875rem!important;line-height:1.6!important}
}
@media(max-width:650px){
 .legacy-tool[data-legacy-tool] :is(#gtm-adc-wrap,.gtm-bsc-wrap,#gt-cema-2,.gt-brc).tool-refresh.family-calculator {
  & :is(.adc-results-primary,.gtm-bsc-results-primary){grid-template-columns:minmax(0,1fr)!important;padding:0!important;border:0!important;background:none!important}
  & .family-primary{grid-column:auto!important;padding:18px!important}
  & :is(.adc-rp-value,.gtm-bsc-rp-value){font-size:1.625rem!important}
  & .family-primary :is(.adc-rp-value,.gtm-bsc-rp-value,.gt-brc-sv){font-size:2rem!important}
  & .family-table-hint{display:block!important}
 }
}

.legacy-tool[data-legacy-tool="blended-payment-calculator"] .gt-brc.tool-refresh [hidden]{display:none!important}
/* Match the numeric-entry layout used by the other tools; override the original slider widths. */
.legacy-tool[data-legacy-tool="blended-payment-calculator"] #blended-payment-tool.gt-brc.tool-refresh.family-calculator {
 & .gt-brc-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;margin-bottom:30px}
 & .gt-brc-glabel{grid-column:1/-1;gap:12px;margin:0;font-weight:700}
 & .gt-brc-gnum{width:30px;height:30px;background:#183039!important;color:#fffefa!important}
 & .gt-brc-field{margin:0;min-width:0}
 & .gt-brc-flabel{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:10px}
 & .gt-brc-flabel>span:first-child{white-space:normal}
 & .gt-brc-fhelp{text-align:left;font-size:.875rem;line-height:1.5}
 & .gt-brc-inwrap input[type=number]{width:100%!important;padding:12px!important;color:#0b202a!important;-webkit-text-fill-color:#0b202a!important}
 & .gt-brc-inwrap.gt-brc-money input[type=number]{padding-left:32px!important}
 & .gt-brc-inwrap:is(.gt-brc-pct,.gt-brc-yr) input[type=number]{padding-right:44px!important}
 & input::placeholder{-webkit-text-fill-color:#65736e!important}
 & #brc_calculate{background:#13232b!important;color:#fffefa!important;border-color:#13232b!important;font-weight:650!important}
 & #brc_calculate:hover{background:#254e43!important}
 & .gt-brc-h{font-family:var(--serif)!important;font-size:clamp(1.6rem,3vw,2.25rem)!important}
 @media(max-width:650px){& .gt-brc-group{grid-template-columns:1fr}& .gt-brc-body{padding:20px}& .tool-entry-actions{gap:12px}}
}
.legacy-tool[data-legacy-tool="blended-payment-calculator"] .gt-brc-row{display:block!important}.legacy-tool[data-legacy-tool="blended-payment-calculator"] .gt-brc-inwrap{width:100%!important;max-width:none!important}.tool-entry-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-block:28px}.tool-entry-actions button{min-height:48px;padding:12px 18px;border:1px solid #7d867f;border-radius:8px;font:600 1rem/1.5 var(--sans)}.tool-entry-actions button:not(.button){background:#fffefa;color:#13232b}.gt-brc-entry-note,#brc_pending{margin-block:20px;font-size:1rem;line-height:1.65}.legacy-tool[data-legacy-tool="blended-payment-calculator"] input::placeholder{color:#65736e!important;opacity:1}
