:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1d2926;background:#f5f6f2}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:#153d32;color:white}.brand{display:flex;align-items:center;gap:12px;font-weight:750;letter-spacing:-.02em}.mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#d9ed9b;color:#153d32;font-size:25px}.header-note{font-size:12px;color:#bed5ca}main{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 72px);background:linear-gradient(to right,#fff 0 250px,transparent 250px)}aside{align-self:stretch;padding:34px 18px;border-right:1px solid #e3e9e1;background:#fff}.side-head{display:flex;justify-content:space-between;align-items:center;padding:0 10px}.side-head h2{margin:4px 0 22px;font-size:23px;letter-spacing:-.04em}small{font-size:10px;letter-spacing:.14em;font-weight:800;color:#648474}.icon{border:0;background:#e4f0d3;color:#245444;border-radius:9px;width:32px;height:32px;font-size:23px;line-height:1}.property{width:100%;text-align:left;border:0;background:transparent;border-radius:10px;padding:13px 12px;margin-bottom:5px;color:#40544b}.property strong,.property span{display:block}.property strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.property span{font-size:11px;color:#85938a;margin-top:4px}.property.active{background:#eaf2df;color:#163e31}.aside-note{font-size:11px;line-height:1.5;color:#8b9b91;padding:16px 12px}.content{align-self:stretch;padding:35px clamp(20px,4vw,58px);max-width:1600px;width:100%;margin:0 auto}.topline{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:30px}.topline h1{font-size:36px;letter-spacing:-.05em;margin:7px 0}.topline p{color:#718078;font-size:14px;margin:0}.actions{display:flex;gap:8px}button:not(.icon):not(.property){border:1px solid #cfdcd0;background:#fff;color:#245142;border-radius:9px;padding:9px 13px;font-size:12px;font-weight:700}.layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:22px;align-items:start}.editor,.results{display:grid;gap:17px}.panel{background:#fff;border:1px solid #e4e9e2;border-radius:15px;padding:22px;box-shadow:0 6px 20px #153d3207}.panel h3{margin:0 0 18px;font-size:15px;letter-spacing:-.02em}.hint{font-size:11px;color:#8b9b91;margin:-10px 0 19px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.field label{display:block;font-size:11px;font-weight:700;color:#65786b;margin-bottom:6px}.field input{width:100%;border:1px solid #dce5dc;background:#fbfcfa;border-radius:8px;padding:10px 11px;color:#1d352a;outline:none}.field input:focus{border-color:#579272;box-shadow:0 0 0 3px #dbefdf}.hero{background:#173f32;color:white;border-radius:16px;padding:25px 26px}.hero-label{font-size:10px;letter-spacing:.14em;font-weight:800;color:#b3d3be}.hero-value{font-size:39px;letter-spacing:-.06em;font-weight:760;margin:8px 0}.hero-sub{font-size:11px;color:#bcd1c4}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.metric{background:#fff;border:1px solid #e4e9e2;border-radius:13px;padding:17px}.metric span{display:block;font-size:10px;font-weight:700;color:#789085;margin-bottom:8px}.metric strong{font-size:21px;letter-spacing:-.04em}.metric em{display:block;font-style:normal;font-size:10px;color:#91a097;margin-top:5px}.row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #edf0e9;font-size:12px}.row:last-child{border:0;font-weight:800}.row span:first-child{color:#708076}.definition{padding:11px 0;border-bottom:1px solid #edf0e9}.definition:last-child{border:0}.definition strong{font-size:11px}.definition p{color:#819087;font-size:10px;line-height:1.5;margin:4px 0 0}@media(max-width:760px){main{grid-template-columns:1fr;background:transparent}aside{border-right:0;border-bottom:1px solid #e3e9e1;padding:16px}.side-head h2{margin-bottom:8px}.aside-note{display:none}#property-list{display:flex;overflow:auto;gap:5px}.property{min-width:150px}.layout{grid-template-columns:1fr}.content{padding:25px 18px}}@media(max-width:530px){header{padding:0 17px}.header-note{display:none}.topline{display:block}.actions{margin-top:18px}.topline h1{font-size:30px}.fields{grid-template-columns:1fr 1fr}.hero-value{font-size:34px}}
[hidden]{display:none!important}.compare-nav{display:block;width:100%;text-align:left;margin:0 0 13px;border:1px solid #dce9d7;background:#f4f8ef;color:#27523d;border-radius:10px;padding:12px 13px;font-size:12px;font-weight:750}.compare-nav.active{background:#dceacb;border-color:#bfdaa8}.compare-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px}.compare-heading h1{font-size:36px;letter-spacing:-.05em;margin:7px 0}.compare-heading p{color:#718078;font-size:14px;margin:0}.compare-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.compare-actions label{font-size:11px;font-weight:700;color:#677d6e}.compare-actions select{border:1px solid #cfdcd0;background:#fff;color:#245142;border-radius:9px;padding:9px 10px;font:inherit;font-size:12px}.comparison-panel{background:#fff;border:1px solid #e4e9e2;border-radius:15px;overflow:hidden;box-shadow:0 6px 20px #153d3207}.comparison-scroll{overflow:auto;max-width:100%}.comparison-panel table{border-collapse:separate;border-spacing:0;width:100%;min-width:1150px;font-size:12px;white-space:nowrap}.comparison-panel th,.comparison-panel td{padding:16px 14px;text-align:right;border-bottom:1px solid #edf0e9}.comparison-panel thead th{background:#edf3e7;color:#587263;font-size:10px;letter-spacing:.03em;font-weight:800;position:sticky;top:0}.comparison-panel th:first-child{text-align:left;position:sticky;left:0;z-index:1;min-width:180px}.comparison-panel thead th:first-child{z-index:2}.comparison-panel tbody th{background:#fff}.comparison-panel tbody tr:hover td,.comparison-panel tbody tr:hover th{background:#f8faf5}.comparison-panel tbody tr:last-child td,.comparison-panel tbody tr:last-child th{border-bottom:0}.compare-property{border:0!important;background:none!important;color:#1f5941!important;font-size:12px!important;font-weight:750!important;padding:0!important;text-align:left;text-decoration:underline;text-decoration-color:#bad3c2;text-underline-offset:3px}.caution{color:#b04d35;font-weight:750}.compare-note{font-size:11px;color:#89998d;line-height:1.5;margin-top:13px}@media(max-width:900px){.compare-heading{align-items:start;flex-direction:column}}@media(max-width:530px){.compare-heading h1{font-size:30px}.compare-actions{align-items:flex-start}}
button#compare-nav{display:block;width:100%;text-align:left;margin:0 0 13px;border:1px solid #dce9d7;background:#f4f8ef;color:#27523d;border-radius:10px;padding:12px 13px;font-size:12px;font-weight:750}button#compare-nav.active{background:#dceacb;border-color:#bfdaa8}

.transfer-actions{display:flex;gap:6px;flex-wrap:wrap;padding:10px 2px}.transfer-actions button{padding:7px 9px!important;font-size:10px!important}.transfer-actions input[hidden]{display:none}

.income-panel{border-color:#bfd9b5;background:linear-gradient(145deg,#f3f9ed,#fff 75%);box-shadow:0 8px 28px #2b694012}.income-panel h3{font-size:19px;color:#184a35;margin-bottom:6px}.income-hint,.income-note{font-size:11px;line-height:1.5;color:#567462}.income-hint{margin:0 0 18px}.income-note{margin:12px 0}.income-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}.income-summary div{background:#e6f2d9;border-radius:10px;padding:13px}.income-summary span,.income-summary strong{display:block}.income-summary span{font-size:10px;color:#52775b;font-weight:700}.income-summary strong{font-size:22px;color:#214b35;margin-top:5px}.financing-mode{border:0;padding:0;margin:0 0 17px;display:flex;flex-wrap:wrap;gap:8px}.financing-mode legend{font-size:11px;font-weight:700;color:#65786b;margin-bottom:7px}.financing-mode label{font-size:11px;font-weight:700;color:#315641;background:#eff5eb;padding:8px 10px;border-radius:8px;cursor:pointer}.financing-mode input{accent-color:#2e7351}.field.computed input{background:#eef2ed;color:#557367;cursor:default}.mortgage-reference{display:grid;grid-template-columns:1fr auto;gap:4px 12px;border-top:1px solid #dce5dc;margin-top:20px;padding-top:16px}.mortgage-reference span{font-size:12px;font-weight:700;color:#315641}.mortgage-reference output{font-size:16px;font-weight:800;color:#214b35}.mortgage-reference small{grid-column:1/-1;letter-spacing:0;text-transform:none;font-size:10px;line-height:1.4;color:#7a8a7d}@media(max-width:530px){.income-summary{grid-template-columns:1fr 1fr}}

.expense-group{border-top:1px solid #e7eee5;padding-top:16px;margin-top:16px}.expense-group h4{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 5px;font-size:13px;color:#244936}.expense-group output{font-size:15px;color:#204c36}.expense-group p{font-size:10px;line-height:1.5;color:#788b7d;margin:0 0 13px}.expense-total{display:flex;justify-content:space-between;gap:12px;padding-top:18px;margin-top:18px;border-top:2px solid #b9d0bc;font-size:12px;font-weight:750;color:#214b35}.expense-total strong{font-size:17px}

.deal-strength{background:#fff;border:1px solid #dfe8dd;border-radius:15px;padding:20px 22px;box-shadow:0 6px 20px #153d3207}.strength-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.strength-top h3{margin:0;font-size:16px;color:#244936}.strength-top p{font-size:11px;color:#829087;margin:5px 0 0}.strength-top>strong{font-size:15px;padding:7px 11px;border-radius:20px}.strength-poor{background:#f9e5df;color:#a54932}.strength-fair{background:#fff1d5;color:#8b641d}.strength-good{background:#e8f1d8;color:#526f27}.strength-strong{background:#d9eee1;color:#225d3c}.strength-scale{height:12px;margin-top:17px;border-radius:99px;background:linear-gradient(90deg,#d46a56 0%,#e4b34e 37%,#9cbf5b 69%,#42865c 100%);position:relative;overflow:visible}.strength-fill{height:100%;width:0;border-radius:99px;background:#1d2926;opacity:.24}.strength-marker{position:absolute;top:50%;left:0;width:17px;height:17px;transform:translate(-50%,-50%);border:3px solid #fff;background:#173f32;border-radius:50%;box-shadow:0 1px 5px #183d32a0}.strength-labels{display:flex;justify-content:space-between;font-size:9px;font-weight:700;color:#78877c;margin-top:8px}.strength-note{font-size:10px;line-height:1.5;color:#87938a;margin:13px 0 0}

button#undo,button#redo{padding:9px 11px}button#undo:disabled,button#redo:disabled{opacity:.45;cursor:not-allowed;background:#f0f2ef;color:#77867c}

.site-footer{margin-top:52px;background:#153d32;color:#eef5ee}.footer-inner{max-width:1150px;margin:0 auto;padding:38px 28px 22px}.footer-main{display:grid;grid-template-columns:minmax(230px,.85fr) minmax(0,1.15fr);gap:56px;align-items:start}.footer-kicker{font-size:10px;font-weight:800;letter-spacing:.16em;color:#c3dba2}.footer-intro h2{max-width:340px;margin:11px 0 10px;font-size:23px;line-height:1.2;letter-spacing:-.035em;color:#fff}.footer-intro p,.footer-block p{margin:0;color:#c2d4c9;font-size:12px;line-height:1.7}.footer-details{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-top:5px}.footer-block h3{margin:0 0 9px;font-size:12px;color:#d9ed9b}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:32px;padding-top:16px;border-top:1px solid #ffffff26}.footer-bottom p,.footer-bottom span{margin:0;color:#b7cbc0;font-size:10px;line-height:1.5}.footer-meta{display:flex;align-items:center;gap:18px;white-space:nowrap}@media(max-width:760px){.footer-main{grid-template-columns:1fr;gap:26px}.footer-intro h2{max-width:none}.footer-details{gap:22px}}@media(max-width:530px){.footer-inner{padding:30px 20px 18px}.footer-details{grid-template-columns:1fr;gap:18px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:8px;margin-top:24px}.footer-meta{align-items:flex-start;flex-direction:column;gap:6px;white-space:normal}}

.brand-icon{width:36px;height:36px;object-fit:cover;border-radius:10px}

.live-results{position:sticky;top:8px;z-index:20;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 16px;padding:10px 12px;border:1px solid #d9e5d7;border-radius:13px;background:rgba(255,255,255,.96);box-shadow:0 5px 18px #153d3212;backdrop-filter:blur(10px)}
.live-results>div{min-width:0;padding:3px 9px;border-right:1px solid #e8eee6}
.live-results>div:last-child{border-right:0}
.live-results span,.live-results strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.live-results span{font-size:9px;font-weight:750;letter-spacing:.04em;text-transform:uppercase;color:#718579}
.live-results strong{margin-top:4px;font-size:16px;letter-spacing:-.03em;color:#214b35}
.live-results>div:first-child strong{color:#173f32}
@media(max-width:530px){.live-results{grid-template-columns:repeat(6,minmax(88px,1fr));gap:0;margin-left:-7px;margin-right:-7px;padding:8px 6px;overflow-x:auto}.live-results>div{padding:3px 7px}.live-results strong{font-size:14px}}

.definitions-bottom{margin-top:22px}

.definitions-bottom{padding:0;overflow:hidden}
.definitions-bottom>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;list-style:none;cursor:pointer;padding:18px 22px}
.definitions-bottom>summary::-webkit-details-marker{display:none}
.definitions-heading strong,.definitions-heading>span{display:block}
.definitions-heading strong{font-size:15px;color:#244936}
.definitions-heading>span{margin-top:5px;font-size:11px;line-height:1.4;color:#788b7d}
.definitions-toggle{flex:none;border:1px solid #d6e2d5;border-radius:8px;background:#f4f8f1;color:#315943;padding:8px 10px;font-size:11px;font-weight:750}
.definitions-toggle .hide-label,details[open].definitions-bottom .definitions-toggle .show-label{display:none}
details[open].definitions-bottom .definitions-toggle .hide-label{display:inline}
.definitions-bottom>#definitions{padding:0 22px 16px}
.definitions-bottom .definition:first-child{border-top:1px solid #edf0e9}
@media(max-width:530px){.definitions-bottom>summary{align-items:flex-start;padding:16px}.definitions-bottom>#definitions{padding:0 16px 14px}.definitions-toggle{padding:7px 8px;font-size:10px}.definitions-heading>span{max-width:245px}}

.header-tools{display:flex;align-items:center;gap:14px}.header-tools #install-app{border:1px solid #b8d0be;background:#f7fbf2;color:#214b35;border-radius:8px;padding:8px 11px;font-size:11px;font-weight:750}.header-tools #install-app[hidden]{display:none}
@media(max-width:530px){.header-tools{gap:8px}.header-tools #install-app{padding:7px 8px;font-size:10px}}

/* Destructive actions must remain distinct from disabled controls. */
button.danger-button:not(:disabled){color:#9c3024;background:#fff5f2;border-color:#d6a298;opacity:1;cursor:pointer}
button.danger-button:not(:disabled):hover{color:#7e2117;background:#fce6df;border-color:#ba6456}
button.danger-button:not(:disabled):active{background:#f5d2c8;border-color:#a54335}
button.danger-button:focus-visible{outline:3px solid #b34231;outline-offset:3px}
