#gt-cema-2, #gt-cema-2 *, #gt-cema-2 ::after, #gt-cema-2 ::before { box-sizing: border-box; }
#gt-cema-2 { --c-bg: #0d1a2d; --c-deep: #122649; --c-gold: #c9a84c; --c-gold-lt: #dfc070; --c-gold-dim: rgba(201, 168, 76, .13); --c-gold-rule: rgba(201, 168, 76, .28); --c-w92: rgba(255, 255, 255, .98); --c-w62: rgba(255, 255, 255, .84); --c-w45: rgba(255, 255, 255, .70); --c-w30: rgba(255, 255, 255, .48); --c-w10: rgba(255, 255, 255, .18); --c-w07: rgba(255, 255, 255, .12); --c-w04: rgba(255, 255, 255, .07); --c-green: #6ee7b7; --c-yellow: #fcd34d; --c-red: #fca5a5; --f-body: 'DM Sans',sans-serif; --f-head: 'Cormorant Garamond',serif; font-size:0.875rem; line-height: 1.6; font-family: var(--f-body) !important; background: var(--c-bg) !important; color: var(--c-w92) !important; border-radius: 4px !important; }
#gt-cema-2 .c-card { background: var(--c-w04) !important; border: 1px solid var(--c-gold-rule) !important; border-radius: 3px !important; padding: 28px !important; }
#gt-cema-2 .c-head { margin-bottom: 18px !important; }
#gt-cema-2 .c-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0px !important; margin: -1px !important; overflow: hidden !important; clip: rect(0px, 0px, 0px, 0px) !important; white-space: nowrap !important; border: 0px !important; }
#gt-cema-2 .c-title { margin: 0px !important; font-family: var(--f-head) !important; font-size:2.125rem !important; font-weight: 600 !important; color: rgb(255, 255, 255) !important; line-height: 1.05 !important; }
#gt-cema-2 .c-toggle-wrap { display: flex !important; gap: 0px !important; margin-bottom: 24px !important; border: 1px solid var(--c-w10) !important; border-radius: 2px !important; overflow: hidden !important; width: fit-content !important; }
#gt-cema-2 .c-toggle-btn { padding: 11px 24px !important; font-family: var(--f-body) !important; font-size:0.71875rem !important; font-weight: 700 !important; letter-spacing: 0.13em !important; text-transform: uppercase !important; border-top-width: medium !important; border-bottom-width: medium !important; border-left-width: medium !important; border-top-style: none !important; border-bottom-style: none !important; border-left-style: none !important; border-top-color: currentcolor !important; border-bottom-color: currentcolor !important; border-left-color: currentcolor !important; border-image: none !important; border-right: 1px solid var(--c-w10) !important; cursor: pointer !important; background: var(--c-w04) !important; color: var(--c-w62) !important; transition: 0.2s !important; outline: 0px !important; }
#gt-cema-2 .c-toggle-btn:last-child { border-right-width: medium !important; border-right-style: none !important; border-right-color: currentcolor !important; }
#gt-cema-2 .c-toggle-btn.active { background: var(--c-gold-dim) !important; color: var(--c-gold) !important; }
#gt-cema-2 .c-toggle-btn:hover:not(.active) { background: rgba(255, 255, 255, 0.09) !important; color: var(--c-w92) !important; }
#gt-cema-2 .c-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 16px !important; margin-bottom: 20px !important; }
#gt-cema-2 .c-full { grid-column: 1 / -1 !important; }
#gt-cema-2 .c-fg { display: flex !important; flex-direction: column !important; gap: 5px !important; }
#gt-cema-2 .c-fg label { font-size:0.6875rem !important; font-weight: 600 !important; letter-spacing: 0.06em !important; color: var(--c-w62) !important; text-transform: uppercase !important; }
#gt-cema-2 .c-hint { font-size:0.6875rem !important; color: var(--c-w62) !important; font-style: normal !important; line-height: 1.45 !important; }
#gt-cema-2 .c-input, #gt-cema-2 .c-select { background: rgba(255, 255, 255, 0.12) !important; border: 1px solid rgba(255, 255, 255, 0.22) !important; border-radius: 2px !important; padding: 10px 13px !important; font-family: var(--f-body) !important; font-size:0.9375rem !important; color: rgb(255, 255, 255) !important; outline: 0px !important; transition: border-color 0.2s !important; width: 100% !important; appearance: none !important; }
#gt-cema-2 .c-select { background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNSIgaGVpZ2h0PSIyNSIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2U9IiM5OTkiPjxwYXRoIGQ9Ik02IDlsNiA2IDYtNiIvPjwvc3ZnPg==") !important; background-repeat: no-repeat !important; background-position: calc(100% - 8px) 50% !important; background-size: 18px auto !important; padding-right: 36px !important; cursor: pointer !important; }
#gt-cema-2 .c-select option { background: rgb(18, 38, 73); color: rgb(255, 255, 255); }
#gt-cema-2 .c-input:focus, #gt-cema-2 .c-select:focus { border-color: rgba(201, 168, 76, 0.72) !important; background: rgba(255, 255, 255, 0.16) !important; }
#gt-cema-2 .c-input::placeholder { color: rgba(255, 255, 255, 0.44) !important; }
#gt-cema-2 .c-input[aria-invalid="true"], #gt-cema-2 .c-select[aria-invalid="true"] { border-color: rgba(252, 165, 165, 0.8) !important; background: rgba(252, 165, 165, 0.08) !important; }
#gt-cema-2 .c-btn-calc:focus-visible, #gt-cema-2 .c-btn-reset:focus-visible, #gt-cema-2 .c-input:focus-visible, #gt-cema-2 .c-select:focus-visible, #gt-cema-2 .c-toggle-btn:focus-visible { outline: 2px solid var(--c-gold-lt) !important; outline-offset: 2px !important; }
#gt-cema-2 .c-fdiv { grid-column: 1 / -1 !important; border-right-width: medium !important; border-bottom-width: medium !important; border-left-width: medium !important; border-right-style: none !important; border-bottom-style: none !important; border-left-style: none !important; border-right-color: currentcolor !important; border-bottom-color: currentcolor !important; border-left-color: currentcolor !important; border-image: none !important; border-top: 1px solid var(--c-w10) !important; margin: 4px 0px 14px !important; }
#gt-cema-2 .c-fsub { grid-column: 1 / -1 !important; font-size:0.625rem !important; font-weight: 700 !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; color: var(--c-gold) !important; display: block !important; }
#gt-cema-2 .c-range-box { background: rgba(255, 255, 255, 0.05) !important; border: 1px solid var(--c-w10) !important; border-radius: 2px !important; padding: 14px 14px 12px !important; }
#gt-cema-2 .c-actions { display: flex !important; gap: 12px !important; margin-top: 6px !important; flex-wrap: wrap !important; }
#gt-cema-2 .c-btn-calc { background: var(--c-gold) !important; color: rgb(13, 26, 45) !important; border-width: medium !important; border-style: none !important; border-color: currentcolor !important; border-image: none !important; padding: 13px 30px !important; border-radius: 2px !important; font-family: var(--f-body) !important; font-size:0.71875rem !important; font-weight: 700 !important; letter-spacing: 0.13em !important; text-transform: uppercase !important; cursor: pointer !important; transition: background 0.2s, transform 0.12s !important; }
#gt-cema-2 .c-btn-calc:hover { background: var(--c-gold-lt) !important; transform: translateY(-1px) !important; }
#gt-cema-2 .c-btn-reset { background: 0px 0px !important; border: 1px solid var(--c-w30) !important; color: var(--c-w62) !important; padding: 13px 20px !important; border-radius: 2px !important; font-family: var(--f-body) !important; font-size:0.71875rem !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; cursor: pointer !important; transition: 0.2s !important; }
#gt-cema-2 .c-btn-reset:hover { border-color: var(--c-w62) !important; color: var(--c-w92) !important; }
#gt-cema-2 .c-results { margin-top: 32px !important; padding-top: 28px !important; border-top: 1px solid var(--c-gold-rule) !important; display: none !important; }
#gt-cema-2 .c-results.visible { display: block !important; }
#gt-cema-2 .c-notice { padding: 11px 16px !important; border-radius: 2px !important; font-size:0.8125rem !important; line-height: 1.55 !important; margin-bottom: 14px !important; }
#gt-cema-2 .c-notice-info { background: rgba(110, 231, 183, 0.08) !important; border-left: 3px solid var(--c-green) !important; color: var(--c-green) !important; }
#gt-cema-2 .c-errors { display: none !important; padding: 12px 16px !important; border-radius: 2px !important; font-size:0.8125rem !important; line-height: 1.55 !important; margin: 0px 0px 16px !important; background: rgba(252, 165, 165, 0.08) !important; border-left: 3px solid var(--c-red) !important; color: var(--c-red) !important; }
#gt-cema-2 .c-errors.visible { display: block !important; }
#gt-cema-2 .c-errors p { margin: 0px 0px 6px !important; }
#gt-cema-2 .c-errors ul { margin: 0px !important; padding-left: 18px !important; }
#gt-cema-2 .c-errors li + li { margin-top: 4px !important; }
#gt-cema-2 .c-party-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 14px !important; margin-bottom: 14px !important; }
#gt-cema-2 .c-panel { background: var(--c-w04) !important; border: 1px solid var(--c-w10) !important; border-radius: 3px !important; overflow: hidden !important; }
#gt-cema-2 .c-panel-head { padding: 10px 16px !important; border-bottom: 1px solid var(--c-w07) !important; background: rgba(255, 255, 255, 0.03) !important; }
#gt-cema-2 .c-panel-tag { font-size:0.59375rem !important; font-weight: 700 !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; color: var(--c-w45) !important; display: block !important; margin-bottom: 2px !important; }
#gt-cema-2 .c-panel-title { font-family: var(--f-head) !important; font-size:1rem !important; font-weight: 600 !important; color: rgb(255, 255, 255) !important; display: block !important; }
#gt-cema-2 .c-panel-body { padding: 10px 16px !important; }
#gt-cema-2 .c-row { display: flex !important; justify-content: space-between !important; align-items: baseline !important; gap: 8px !important; padding: 7px 0px !important; border-bottom: 1px solid var(--c-w07) !important; font-size:0.8125rem !important; }
#gt-cema-2 .c-row:last-child { border-bottom-width: medium !important; border-bottom-style: none !important; border-bottom-color: currentcolor !important; }
#gt-cema-2 .c-row-lbl { color: rgba(255, 255, 255, 0.65) !important; flex: 1 1 0% !important; line-height: 1.35 !important; }
#gt-cema-2 .c-row-sub { display: block !important; font-size:0.71875rem !important; color: var(--c-w62) !important; font-style: normal !important; }
#gt-cema-2 .c-row-val { font-weight: 600 !important; color: var(--c-w92) !important; white-space: nowrap !important; text-align: right !important; }
#gt-cema-2 .c-row.is-savings .c-row-lbl, #gt-cema-2 .c-row.is-savings .c-row-val { color: var(--c-gold) !important; font-weight: 700 !important; }
#gt-cema-2 .c-summary { background: var(--c-w04) !important; border: 1px solid var(--c-w07) !important; border-radius: 2px !important; padding: 13px 16px !important; margin-bottom: 14px !important; }
#gt-cema-2 .c-fee { display: flex !important; gap: 10px !important; background: var(--c-w04) !important; border: 1px solid var(--c-w07) !important; border-radius: 2px !important; padding: 11px 14px !important; font-size:0.75rem !important; color: var(--c-w62) !important; margin: 0px 0px 14px !important; line-height: 1.5 !important; }
#gt-cema-2 .c-fee-icon { flex-shrink: 0 !important; color: var(--c-gold) !important; }
#gt-cema-2 .c-hero { background: linear-gradient(135deg, rgb(13, 26, 45) 0px, rgb(18, 38, 73) 100%) !important; border: 1px solid var(--c-gold-rule) !important; border-radius: 3px !important; padding: 24px 26px !important; text-align: center !important; margin: 14px 0px !important; }
#gt-cema-2 .c-hero-eye { font-size:0.59375rem !important; font-weight: 700 !important; letter-spacing: 0.18em !important; text-transform: uppercase !important; color: var(--c-w45) !important; display: block !important; margin-bottom: 10px !important; }
#gt-cema-2 .c-hero-amt { font-size:2.625rem !important; font-weight: 800 !important; color: var(--c-gold) !important; letter-spacing: -0.5px !important; line-height: 1 !important; display: block !important; margin-bottom: 10px !important; }
#gt-cema-2 .c-hero-sub { font-size:0.75rem !important; color: var(--c-w62) !important; line-height: 1.6 !important; display: block !important; }
#gt-cema-2 .c-disclaimer { font-size:0.75rem !important; color: var(--c-w62) !important; line-height: 1.65 !important; margin-top: 18px !important; padding: 12px 16px !important; border-left: 2px solid var(--c-gold-rule) !important; font-style: normal !important; display: block !important; }
#gt-cema-2 .c-row-lbl { color: rgba(255, 255, 255, 0.65) !important; }
#gt-cema-2 .c-fee { color: rgba(255, 255, 255, 0.82) !important; }
#gt-cema-2 .c-disclaimer { color: rgba(255, 255, 255, 0.74) !important; font-size:0.75rem !important; }
#gt-cema-2 .c-hint { color: rgba(255, 255, 255, 0.76) !important; }
#gt-cema-2 .c-range-box { background: rgba(255, 255, 255, 0.08) !important; }
#gt-cema-2 .c-static-head { margin: 0px 0px 6px !important; font-size:0.75rem !important; font-weight: 700 !important; letter-spacing: 0.06em !important; text-transform: uppercase !important; color: var(--c-w62) !important; }
#gt-cema-2 .c-static-copy { margin: 0px !important; font-size:0.78125rem !important; color: rgba(255, 255, 255, 0.78) !important; line-height: 1.65 !important; }
#gt-cema-2 .c-buyer-lead { background: rgba(255, 255, 255, 0.04) !important; border-top-color:  !important; border-top-style:  !important; border-top-width:  !important; border-right-color:  !important; border-right-style:  !important; border-right-width:  !important; border-bottom-color:  !important; border-bottom-style:  !important; border-bottom-width:  !important; border-image-source:  !important; border-image-slice:  !important; border-image-width:  !important; border-image-outset:  !important; border-image-repeat:  !important; border-left: 3px solid var(--c-gold) !important; border-radius: 0px 2px 2px 0px !important; padding: 12px 14px !important; margin: 0px 0px 14px !important; font-size:0.8125rem !important; color: var(--c-w92) !important; line-height: 1.6 !important; }
#gt-cema-2 .c-buyer-lead strong { color: var(--c-gold) !important; }
@media (max-width: 900px) {#gt-cema-2 .c-grid { grid-template-columns: 1fr !important; }
#gt-cema-2 .c-party-grid { grid-template-columns: 1fr !important; }
#gt-cema-2 .c-toggle-wrap { width: 100% !important; }
#gt-cema-2 .c-toggle-btn { flex: 1 1 0px !important; }
#gt-cema-2 .c-actions { flex-direction: column !important; }
#gt-cema-2 .c-btn-calc, #gt-cema-2 .c-btn-reset { width: 100% !important; }}
@media (max-width: 767px) {#gt-cema-2 .c-card { padding: 20px 16px !important; }
#gt-cema-2 .c-title { font-size:1.75rem !important; }
#gt-cema-2 .c-grid { grid-template-columns: 1fr !important; }
#gt-cema-2 .c-party-grid { grid-template-columns: 1fr !important; }
#gt-cema-2 .c-toggle-wrap { width: 100% !important; }
#gt-cema-2 .c-toggle-btn { flex: 1 1 0px !important; padding: 10px 14px !important; font-size:0.65625rem !important; }
#gt-cema-2 .c-actions { flex-direction: column !important; }
#gt-cema-2 .c-btn-calc, #gt-cema-2 .c-btn-reset { width: 100% !important; }
#gt-cema-2 .c-row { flex-direction: column !important; align-items: flex-start !important; }
#gt-cema-2 .c-row-sub { margin-top: 2px !important; }
#gt-cema-2 .c-row-val { white-space: normal !important; text-align: left !important; }
#gt-cema-2 .c-hero-amt { font-size:2rem !important; }
#gt-cema-2 .c-hero-sub { font-size:0.8125rem !important; }}#gt-cema-2 [hidden] { display:none !important; }
#gt-cema-2 .c-assumptions { margin:24px 0; padding:20px; border:1px solid var(--c-gold-rule); }
#gt-cema-2 .c-assumptions summary { cursor:pointer; font-size:1.0625rem; font-weight:700; }
#gt-cema-2 .c-assumptions p { color:var(--c-w62); }
#gt-cema-2 .c-check { display:flex; gap:12px; align-items:flex-start; margin:14px 0; font-size:0.875rem; text-transform:none; letter-spacing:normal; }
#gt-cema-2 .c-check input { width:20px; height:20px; flex:none; accent-color:#c9a84c; }
#gt-cema-2 .c-disclaimer a { color:#dfc070; text-decoration:underline; }
#gt-cema-2 .c-toggle-btn:focus-visible,#gt-cema-2 button:focus-visible,#gt-cema-2 summary:focus-visible { outline:3px solid #dfc070 !important; outline-offset:3px; }

/* 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}
