:root{--ink:#17322d;--green:#174e40;--mint:#dfede6;--lime:#d7e88e;--paper:#f5f6f2;--line:#dce2db;--muted:#606e65}*{box-sizing:border-box}body{margin:0;background:var(--paper);font:15px/1.5 Arial,Helvetica,sans-serif;color:var(--ink)}header{max-width:1360px;margin:auto;padding:25px 48px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:18px;color:var(--ink);text-decoration:none;font-size:26px;letter-spacing:1px;font-weight:800}.brand img{height:53px;width:70px;object-fit:contain}.brand small{display:block;font-size:8px;letter-spacing:1.8px;font-weight:500}sup{font-size:.45em;vertical-align:super}.back{color:var(--green);text-decoration:none;font-size:13px}main{max-width:1360px;margin:auto;padding:0 48px}.intro{padding:49px 0 38px;max-width:820px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--green)}h1{font-family:Georgia,'Times New Roman',serif;font-size:52px;line-height:1.1;letter-spacing:-1.6px;font-weight:400;margin:16px 0 18px}.intro p{font-size:16px;color:var(--muted);max-width:640px;line-height:1.65}h2,h3,p{margin-top:0}h2{font-size:19px;line-height:1.3}h3{font-size:16px;margin-bottom:14px}.workspace{display:grid;grid-template-columns:330px minmax(0,1fr);gap:30px;align-items:start}.input-card,.panel{border:1px solid var(--line);border-radius:14px;padding:24px;background:#fff;margin-bottom:18px}.section-title{display:flex;gap:11px;align-items:center;margin-bottom:20px}.section-title h2{margin:0}.step{border:1px solid #bfcfc2;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;color:var(--green);font-size:10px;font-weight:700}label{display:block;font-size:12px;font-weight:700;margin:14px 0 7px}label span{font-size:10px;font-weight:400;color:var(--muted)}label>span{float:right}input,select{width:100%;border:1px solid #cbd5cd;border-radius:7px;font:15px Arial;color:var(--ink);background:#fff;padding:12px;min-height:44px}input:focus,select:focus{outline:none}input:focus-visible,select:focus-visible{outline:1px solid #8b948f;outline-offset:1px}button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid #8b948f;outline-offset:2px}input::placeholder{color:#929994;opacity:1}.affix{display:flex;align-items:center;border:1px solid #cbd5cd;border-radius:7px;background:#fff;padding:0 12px;gap:4px}.affix input{border:0;padding:12px 0;min-width:0;background:transparent}.affix span{color:var(--muted);font-size:13px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hint{font-size:11px;line-height:1.6;color:var(--muted);margin:10px 0 0}.extras{background:#edf3ed;border-color:#c6d5c7}.extras details{margin-top:22px;border-top:1px solid #cedbce;padding-top:15px}summary{cursor:pointer;font-size:12px;font-weight:700}button{cursor:pointer;font:600 12px Arial;border-radius:7px;padding:12px 16px;min-height:42px}.primary{background:var(--green);color:#fff;border:1px solid var(--green)}.primary:hover{background:#236751}.secondary{background:#fff;color:var(--green);border:1px solid #c1cec3}.secondary:hover{background:#edf3ed}.calculate{width:100%;display:flex;justify-content:space-between}.text-button{background:none;border:0;color:var(--green);display:block;padding:12px 0}.privacy{font-size:10px;color:var(--muted);max-width:250px}.results-top{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:5px 0 13px}.results-top h2{margin:9px 0 10px;font-size:18px}.results-top>span{font-size:10px;text-align:right;max-width:145px;color:var(--muted);padding-top:4px}.savings-card{border-radius:14px;background:var(--green);padding:28px 30px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:#fff}.savings-card p{font-size:12px;color:#d3e4d6;margin-bottom:4px}.savings-card strong{display:block;font-size:43px;font-family:Georgia,serif;font-weight:400;letter-spacing:-1px}.savings-card #savingsDetail{font-size:11px;margin-top:9px;color:var(--lime)}.time-saved{border-left:1px solid #4c7765;padding-left:26px;max-width:235px}.time-saved span{display:block;font-size:11px;color:#d3e4d6}.time-saved strong{font-family:Arial;font-size:23px;font-weight:500;letter-spacing:-.5px;margin:9px 0}.metrics{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px;padding:24px 0}.metrics>div{padding-left:16px;border-left:1px solid #d3dcd3}.metrics>div:first-child{padding-left:0;border-left:0}.metrics span,.metrics small{font-size:10px;color:var(--muted);display:block}.metrics strong{display:block;font-size:23px;font-weight:500;margin:6px 0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.panel-heading h3{margin-bottom:0}.legend{display:flex;gap:14px;font-size:10px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:5px}.legend i{width:15px;height:3px;display:inline-block;background:var(--green)}.legend .gray{background:#9cab9e}.chart-panel{padding-bottom:15px}#chart svg{width:100%;height:auto;display:block}.chart-footer{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);padding-top:9px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:right;font-size:12px;font-variant-numeric:tabular-nums}th{font-size:10px;color:var(--muted);font-weight:500;padding:10px 6px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:11px 6px;border-bottom:1px solid #edf0ea;white-space:nowrap}th:first-child,td:first-child{text-align:left}#comparison td:last-child{font-weight:600;color:var(--green)}#comparison td:first-child{font-size:12px}.goal-panel{background:#e8eee4;display:grid;grid-template-columns:1.3fr 1fr;gap:10px 24px}.goal-panel h3{margin:10px 0}.goal-panel label{margin-top:0}.goal-input{display:flex;gap:8px}.goal-input input{min-width:55px;max-width:80px}.goal-input button{white-space:nowrap}#goalResult{grid-column:1/-1;font-size:12px}#applyGoal{padding-bottom:0;grid-column:1/-1;text-align:left}.export-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0 10px}.export-row h3{margin:0 0 5px}.export-row p{font-size:11px;color:var(--muted);margin:0}.export-buttons{display:flex;gap:8px;flex-shrink:0}.schedule-panel{margin-top:22px}.schedule-panel select{max-width:150px;font-size:12px;padding:8px}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:15px}.pagination span{font-size:10px;color:var(--muted)}button:disabled{opacity:.45;cursor:default}.method{padding:10px 0 28px;color:var(--muted)}.method p{font-size:12px;margin-top:14px}.method summary{color:var(--ink)}footer{border-top:1px solid var(--line);margin-top:35px;padding:28px 0 42px;font-size:11px;color:var(--muted)}footer p{margin:6px 0}.footer-brand{font-size:21px;color:var(--ink);font-weight:700;letter-spacing:1px;margin-bottom:14px}footer a{color:var(--green);margin-right:18px}footer>div:last-child{margin-top:18px}#error{background:#fae9e2;color:#872b16;padding:15px;font-size:12px;border-radius:8px;margin-bottom:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}.stale{opacity:.55}.stale button{pointer-events:none}
@media(max-width:1080px){header,main{padding-left:26px;padding-right:26px}.workspace{grid-template-columns:295px minmax(0,1fr);gap:20px}.savings-card{padding:24px}.savings-card strong{font-size:35px}.time-saved{padding-left:18px}.time-saved strong{font-size:19px}.metrics strong{font-size:19px}.goal-panel{display:block}.goal-panel form{margin-top:20px}.export-row{align-items:start;flex-direction:column}.results-top>span{display:none}}
@media(max-width:760px){header{padding:18px 20px}.brand{font-size:20px;gap:10px}.brand img{height:40px;width:48px}.brand small{font-size:6px}.back{font-size:10px;max-width:75px;text-align:right}main{padding:0 20px}.intro{padding:30px 0 22px}h1{font-size:38px;letter-spacing:-1px}.intro p{font-size:14px}.workspace{display:block}.input-card{padding:20px}aside{margin-bottom:30px}.privacy{max-width:none}.results-top>span{display:block}.savings-card{padding:23px 20px}.savings-card strong{font-size:34px}.time-saved strong{font-size:19px}.metrics{gap:9px}.metrics strong{font-size:18px}.metrics>div{padding-left:10px}.panel{padding:20px 16px}.legend{gap:8px;font-size:9px}.panel-heading h3{font-size:14px}.export-row{padding-top:12px}.export-buttons{width:100%}.export-buttons button{flex:1}.schedule-panel select{max-width:120px}.results-top h2{font-size:17px}}
.affix input:focus-visible{outline:none}.affix:focus-within{border-color:#8b948f}

.metrics{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:20px}.metrics>div:nth-child(3){border-left:0;padding-left:0}.roi-summary{border-top:1px solid var(--line);padding:16px 0 22px}.roi-summary>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.roi-summary span{font-size:12px;font-weight:700}.roi-summary small{font-weight:400;color:var(--muted)}.roi-summary strong{font-size:24px;color:var(--green)}.roi-summary p{margin:6px 0 0;font-size:11px;color:var(--muted)}.goal-panel{grid-template-columns:1fr}.goal-input{align-items:center;flex-wrap:wrap}.goal-input button{font-weight:800}.goal-input output{font-size:22px;font-weight:800;color:var(--green);margin-left:6px}.goal-panel #goalResult{font-size:13px}.goal-panel #applyGoal{font-weight:800}

.brand img.bankability-logo{width:320px;height:auto;max-width:100%}.footer-brand img{width:260px;height:auto}@media(max-width:760px){.brand img.bankability-logo{width:235px;height:auto}.schedule-panel select{max-width:170px}}

header{position:relative;justify-content:center}.back{position:absolute;right:48px}.intro{max-width:none;text-align:center}.intro p{margin-left:auto;margin-right:auto}.intro h1{font-size:44px}.existing-loan{border-bottom:1px solid #cdd8cd;padding-bottom:15px;margin-bottom:18px}.check-label{display:flex;align-items:center;gap:9px;line-height:1.5;margin:0}.check-label input{width:17px;height:17px;min-height:0;flex-shrink:0;accent-color:#174e40}.loan-progress{font-size:12px;line-height:1.6;background:#e8eee4;border-radius:8px;padding:15px;margin:0 0 18px}@media(max-width:760px){header{flex-direction:column;gap:12px}.back{position:static;max-width:none}.intro h1{font-size:34px}.goal-input input{flex-basis:100%;max-width:none}}
