.loan-planner{--loan-line:#d4ddd7;--loan-accent:#126346;--loan-surface:#fff;display:grid;grid-gap:20px;gap:20px;min-width:0}.loan-planner .panel{padding:24px;min-width:0;overflow-wrap:anywhere}.loan-guide p,.loan-lead p{line-height:1.75;max-width:95ch}.loan-privacy{font-size:.9rem}.loan-form fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}.loan-form legend{font-size:1.15rem;font-weight:700;margin-bottom:14px}.loan-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.loan-fields label{display:flex;flex-direction:column;gap:8px;min-width:0}.loan-fields label>span{min-height:2.7em;font-weight:600}.loan-fields input{min-width:0;width:100%;min-height:46px;font-size:1rem}.loan-fields small{opacity:.75;font-size:.75rem}.loan-toggle{display:flex;align-items:center;gap:10px;font-weight:700;margin:0 0 20px}.loan-toggle input{width:20px;height:20px}.loan-actions{display:flex;gap:12px;flex-wrap:wrap}.loan-actions button{min-height:44px}.loan-error{color:#b42318;font-weight:600}.loan-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.loan-cards h3{color:var(--loan-accent);margin-top:0}.loan-cards dl{margin:0}.loan-cards dl>div{padding:12px 0;border-bottom:1px solid var(--loan-line)}.loan-cards dt{font-size:.85rem;line-height:1.5}.loan-cards dd{font-size:1.35rem;font-weight:700;margin:5px 0 0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.loan-cards .loan-saving{border-bottom:0}.loan-break-even{margin-bottom:0}.loan-schedule select{display:block;min-height:44px;margin-top:8px;max-width:100%}.loan-scroll{overflow:auto;max-height:440px;overscroll-behavior:contain}.loan-scroll table{width:100%;border-collapse:collapse;min-width:560px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.loan-scroll td,.loan-scroll th{text-align:end;padding:12px;border-bottom:1px solid var(--loan-line);white-space:nowrap}.loan-scroll thead th{position:-webkit-sticky;position:sticky;top:0;background:var(--loan-surface)}.loan-scroll th:first-child{text-align:start}.loan-planner :focus-visible{outline:3px solid #639fff;outline-offset:3px}.loan-guide a{color:var(--loan-accent);text-decoration:underline}[data-theme=dark] .loan-planner{--loan-line:#344458;--loan-accent:#80d6b0;--loan-surface:#142035}[data-theme=dark] .loan-error{color:#ffb4ab}@media(max-width:900px){.loan-cards{grid-template-columns:1fr}.loan-cards dl{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 15px;gap:0 15px}}@media(max-width:600px){.loan-fields{grid-template-columns:1fr}.loan-fields label>span{min-height:0}.loan-planner .panel{padding:18px}.loan-cards dl{grid-template-columns:1fr}.loan-cards dd{font-size:1.25rem}}.loan-unit{display:flex;gap:12px;align-items:center;margin-bottom:24px}.loan-unit select{min-height:44px}.loan-planner input,.loan-planner select{color:inherit;background:var(--loan-surface);border:1px solid var(--loan-line)}.loan-prepayment-chart{margin:20px 0;min-width:0;max-width:100%;overflow-wrap:anywhere}.loan-prepayment-chart>label{display:flex;flex-direction:column;gap:6px;max-width:100%}.loan-prepayment-chart svg{display:block;width:100%;height:auto;max-width:100%;overflow:hidden}.loan-prepayment-chart figcaption dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.loan-prepayment-chart dd{margin:5px 0}.loan-chart-axis,.loan-prepayment-chart dd{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.loan-chart-axis{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.loan-chart-line-a{stroke:var(--loan-accent)}.loan-chart-line-b{stroke:#315b9d}.loan-chart-marker-a{fill:var(--loan-accent)}.loan-chart-marker-b{fill:#315b9d}[data-theme=dark] .loan-chart-line-b{stroke:#9ac7ff}[data-theme=dark] .loan-chart-marker-b{fill:#9ac7ff}@media(max-width:600px){.loan-prepayment-chart figcaption dl{grid-template-columns:1fr}}@media(forced-colors:active){.loan-chart-line-a,.loan-chart-line-b{stroke:CanvasText}.loan-chart-marker-a,.loan-chart-marker-b{fill:CanvasText}}.loan-presets{margin-block:24px;padding-block:16px;border-block:1px solid var(--loan-line);min-width:0;overflow-wrap:anywhere}.loan-presets form{display:grid;grid-gap:12px;gap:12px}.loan-presets label{display:flex;flex-direction:column;gap:6px}.loan-presets input{min-width:0;width:100%;min-height:44px}.loan-presets ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.loan-presets li{min-width:0;padding:12px;border:1px solid var(--loan-line)}@media(max-width:600px){.loan-presets ul{grid-template-columns:1fr}}.loan-preset-files{margin-block:20px;padding-block:16px;border-block:1px solid var(--loan-line);min-width:0;overflow-wrap:anywhere}.loan-preset-files fieldset{min-width:0;margin-block:12px}.loan-preset-files label.loan-file-choice{display:flex;flex-direction:row;align-items:center;gap:10px;margin-block:8px}.loan-file-choice input[type=checkbox]{width:20px;min-height:20px;height:20px;flex-shrink:0}.loan-preset-files input[type=file]{max-width:100%}.loan-preset-files details{margin-block:12px;min-width:0}.loan-preset-files dd{-webkit-margin-start:0;margin-inline-start:0;overflow-wrap:anywhere}.loan-preset-compare{margin-block:20px;padding-block:16px;border-block:1px solid var(--loan-line);min-width:0;overflow-wrap:anywhere}.loan-preset-compare-choices,.loan-preset-compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.loan-preset-compare-differences>section,.loan-preset-compare-grid>section{min-width:0;padding:12px;border:1px solid var(--loan-line);border-radius:8px}.loan-preset-compare-differences{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.loan-preset-compare select{width:100%;max-width:100%;min-height:44px}.loan-preset-compare h6{font-size:inherit;margin-block:12px}.loan-preset-compare dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:8px;gap:8px}.loan-preset-compare dd{-webkit-margin-start:0;margin-inline-start:0;overflow-wrap:anywhere}.loan-preset-compare [tabindex="-1"]:focus{outline:2px solid currentColor;outline-offset:4px}@media(max-width:700px){.loan-preset-compare-choices,.loan-preset-compare-differences,.loan-preset-compare-grid{grid-template-columns:minmax(0,1fr)}}.loan-month-budget{margin-block:20px;padding-block:16px;border-block:1px solid var(--loan-line);min-width:0;overflow-wrap:anywhere}.loan-month-budget input{width:100%;max-width:320px;min-height:44px}.loan-budget-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.loan-budget-cards>section{min-width:0;border:1px solid var(--loan-line);border-radius:8px;padding:12px}.loan-budget-cards h5{font-size:inherit}.loan-budget-cards dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:8px;gap:8px}.loan-budget-cards dd{-webkit-margin-start:0;margin-inline-start:0;overflow-wrap:anywhere}.loan-budget-cards dd bdi{white-space:normal;overflow-wrap:anywhere}.loan-budget-table{min-width:550px}.loan-month-budget [tabindex="-1"]:focus{outline:2px solid currentColor;outline-offset:4px}@media(max-width:850px){.loan-budget-cards{grid-template-columns:minmax(0,1fr)}}.loan-budget-shortfall-control{display:flex;align-items:center;gap:8px;min-height:44px}.loan-month-budget .loan-budget-shortfall-control input{width:20px;max-width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:0;accent-color:var(--loan-accent)}.loan-target{margin-top:32px}#loan-comparison,#loan-target{scroll-margin-top:100px}.loan-target p{line-height:1.75}.loan-target-mode{display:grid;grid-gap:10px;gap:10px;margin-bottom:20px;font-weight:600}.loan-target-mode select{width:100%;max-width:100%;min-width:0;min-height:46px;font:inherit}.loan-target-results dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px;gap:20px;margin:0}.loan-target-results dl>div{border-top:1px solid var(--loan-line);padding-top:14px;min-width:0}.loan-target-results dt{font-size:.9rem;line-height:1.5}.loan-target-results dd{margin:6px 0 0;font-size:1.4rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.loan-target-jump{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 20px}.loan-target-jump a{padding:10px 14px;border:1px solid;border-radius:8px;text-decoration:underline}.loan-comparison-anchor{scroll-margin-top:100px}@media(max-width:600px){.loan-target-results dl{grid-template-columns:1fr}.loan-target-mode select{font-size:.85rem}#loan-comparison,#loan-target{scroll-margin-top:160px}}