@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#1e283a;background:#f5f7fb;font-synthesis:none;font-size:16px;--blue:#294ee8;--muted:#687287;--border:#e4e8f0}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}a{color:inherit}button,select,summary{cursor:pointer}header{height:86px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 max(5%,calc((100vw - 1240px)/2))}.brand{text-decoration:none;display:flex;align-items:center;gap:11px;font:800 24px Manrope,sans-serif;letter-spacing:-1px}.mark{display:inline-grid;place-items:center;background:var(--blue);color:#fff;border-radius:9px;width:34px;height:36px;font-size:24px}.brand-note{font:400 14px 'DM Sans',sans-serif;color:var(--muted);letter-spacing:0;margin-left:13px}.header-link{font-size:14px;text-decoration:none;color:#526077}.header-link span{margin-left:8px}main{max-width:1240px;margin:auto;padding:40px 0 0}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:700;color:var(--blue)}h1{font:750 38px/1.2 Manrope,sans-serif;letter-spacing:-1.5px;margin:10px 0}p{line-height:1.65;color:var(--muted);margin:8px 0}.intro p{font-size:16px}.year{border-left:1px solid #dce1eb;padding-left:22px;display:grid;gap:5px}.year span{font-size:13px;color:var(--muted)}.year strong{font:650 24px Manrope,sans-serif}.notice{background:#edf1ff;border:1px solid #dce3ff;color:#455781;display:flex;gap:12px;padding:14px 18px;border-radius:9px;font-size:14px;line-height:1.55;margin-bottom:26px}.notice strong{font-weight:650}.info{flex-shrink:0;border:1.5px solid #6480bc;border-radius:50%;width:18px;height:18px;display:grid;place-items:center;font-size:12px;margin-top:2px}.workspace{display:grid;grid-template-columns:1.12fr 1fr;gap:28px;align-items:start}.panel{background:#fff;border:1px solid var(--border);border-radius:13px;padding:26px;margin-bottom:20px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:23px}h2{font:700 18px/1.4 Manrope,sans-serif;letter-spacing:-.4px;margin:0}.step{color:#95a0b2;font:500 13px 'DM Sans',sans-serif;margin-right:13px}.subtle{font-size:12px;color:#7a8597;white-space:nowrap}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:14px;font-weight:500}input:not([type=checkbox]),select{width:100%;min-width:0;background:#fff;border:1px solid #d8dfea;border-radius:7px;color:#263247;min-height:45px;padding:10px 12px;margin-top:8px;outline:none}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #294ee815}input[type=number]{appearance:textfield;-moz-appearance:textfield}input::-webkit-inner-spin-button{appearance:none}.money{position:relative}.money span{position:absolute;left:13px;top:21px;color:#95a0b2}.money input{padding-left:30px!important;font-variant-numeric:tabular-nums}.field-note{font-size:12px;line-height:1.6;color:#7b8597;margin:10px 0 19px}.income-row{border-bottom:1px solid #edf0f6;padding-bottom:10px;margin-bottom:18px}.income-entry{display:grid;grid-template-columns:1.1fr .9fr 26px;align-items:end;gap:13px}.income-entry select{font-size:14px}.remove{background:none;border:0;color:#97a0af;font-size:23px;height:45px;padding:0}.remove:hover{color:#b02c43}.owner{margin-top:9px;max-width:170px}.owner select{min-height:30px;font-size:12px;padding:4px 8px;margin:0}.income-row .field-note{margin-bottom:0}.add-button{width:100%;padding:11px;border:1px dashed #b9c7ef;border-radius:7px;background:#f9faff;color:var(--blue);font-weight:550;font-size:14px}.add-button span{font-size:20px;vertical-align:-1px;margin-right:5px}.add-button:hover{background:#edf1ff}.income-total{display:flex;justify-content:space-between;margin-top:21px;font-size:14px}.income-total strong{font-variant-numeric:tabular-nums}.locality{margin-top:18px}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-top:1px solid var(--border);margin-top:12px}.toggle-row input{width:34px;height:19px;accent-color:var(--blue);cursor:pointer}.deduction-note{font-size:13px;background:#f5f7fb;padding:12px;border-radius:7px;color:#65718a;line-height:1.7}.advanced{margin-top:20px}.advanced label{margin-top:16px}summary{font-size:14px;font-weight:600;padding:5px 0;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px}summary:after{content:'+';font-size:21px;font-weight:400;color:#7c88a0}details[open]>summary:after{content:'−'}summary::-webkit-details-marker{display:none}.result-card{background:#142442;color:#fff;border-radius:14px;padding:29px 30px;margin-bottom:20px;box-shadow:0 8px 25px #182d5110}.result-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;letter-spacing:1.2px;color:#aebed7;font-weight:600}.estimate-tag{font-size:11px;border:1px solid #41506d;padding:4px 7px;border-radius:4px;letter-spacing:0;color:#c4cfe2}.periods{display:inline-flex;border:1px solid #35445f;border-radius:7px;padding:3px;margin-top:25px;background:#101d35}.periods button{border:0;background:transparent;color:#aebdd4;font-size:12px;padding:7px 14px;border-radius:4px}.periods .active{background:#344561;color:white;box-shadow:0 1px 3px #0002}.main-number{font:600 clamp(38px,4.3vw,61px)/1.2 Manrope,sans-serif;letter-spacing:-2.5px;margin-top:16px;font-variant-numeric:tabular-nums}.main-number small{font:400 16px 'DM Sans',sans-serif;color:#96a8c7;letter-spacing:0;margin-left:9px}.result-caption{font-size:12px;color:#a4b3cc;margin-top:5px}.bar{height:10px;border-radius:8px;display:flex;overflow:hidden;gap:3px;margin-top:29px;background:#273754}.bar div{height:100%}.bar-label{display:flex;justify-content:space-between;font-size:12px;color:#acbbd2;margin-top:12px}.bar-label b{color:#dae3f2;font-weight:500;margin-left:4px}.bar-label i{display:inline-block;width:7px;height:7px;background:#79d2d6;border-radius:2px;margin-right:7px}.result-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #34425d;margin-top:26px;padding-top:23px;gap:16px}.result-stats>div{display:grid;gap:9px}.result-stats>div+div{padding-left:24px;border-left:1px solid #34425d}.result-stats span{font-size:12px;color:#a9b8d0}.result-stats strong{font:600 25px Manrope,sans-serif;letter-spacing:-.7px}.breakdown .section-head{margin-bottom:16px}.line{display:flex;justify-content:space-between;gap:15px;padding:10px 0;font-size:14px}.line strong{font-weight:550;font-variant-numeric:tabular-nums}.line .dot{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:10px}.line.total{border-top:1px solid var(--border);margin-top:8px;padding-top:17px;font-weight:600}.marginal{background:#f6f8fc;border-radius:8px;padding:15px;margin:20px 0}.marginal>span{font-size:12px;color:var(--muted)}.marginal>div{font-size:13px;margin-top:8px}.marginal strong{font-size:16px}.marginal div span{margin:0 9px;color:#9da7b8}.marginal div .state-marginal{margin:0;color:inherit}.marginal em{font-style:normal}.marginal p{font-size:12px;margin:8px 0 0}.bracket-label{margin-top:15px}.table-wrap{overflow:auto}table{width:100%;font-size:12px;border-collapse:collapse;margin-top:15px}th,td{text-align:right;padding:9px 3px;border-bottom:1px solid #edf0f5}th:first-child,td:first-child{text-align:left}th{font-weight:500;color:var(--muted)}.warnings{font-size:12px;line-height:1.6;color:#856840}.warnings p{color:inherit;background:#fff8eb;padding:12px 15px;border:1px solid #f0e3c8;border-radius:8px}.privacy{font-size:12px;text-align:center;color:#7e899c;padding:10px 0 20px}.methodology{display:grid;grid-template-columns:.9fr 1.5fr;gap:70px;border-top:1px solid #dde3ee;padding:42px 0 35px;margin-top:30px}.methodology h2{font-size:23px;margin-top:9px}.methodology p{font-size:14px}.method-content details{padding:13px 0;border-bottom:1px solid #e0e5ee}.method-content details:first-child{padding-top:0}.method-content summary{font-size:15px}.method-content ul{padding-left:20px;font-size:14px;line-height:2}.method-content a{color:#3858b5}footer{border-top:1px solid #dde3ee;display:flex;gap:23px;padding:24px 0;color:#8892a4;font-size:12px}.brand-small{font-weight:750;color:#65718a}footer a{margin-left:auto;text-decoration:none}#input-errors{color:#a73535;background:#fff1f1;padding:12px;margin-top:18px;font-size:14px;border-radius:7px}[hidden]{display:none!important}button:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #92abff;outline-offset:3px}.form-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;padding:0 4px 20px;font-size:14px}.form-actions label{display:flex;align-items:center;gap:10px;font-weight:500;cursor:pointer}.form-actions input{width:34px;height:19px;margin:0;accent-color:var(--blue);cursor:pointer}.text-button{background:none;border:0;padding:6px 0;color:var(--blue);font-weight:550;font-size:14px}.text-button:hover{text-decoration:underline}@media(min-width:1450px){main{padding-top:47px}}@media(max-width:1320px){main{margin:0 5%}}@media(max-width:900px){.workspace{gap:18px;grid-template-columns:1fr 1fr}.panel{padding:19px}.result-card{padding:23px}.income-entry{grid-template-columns:1fr .8fr 20px;gap:8px}.grid2{gap:12px}.subtle{display:none}.methodology{gap:35px}.brand-note{margin-left:0}.result-top{font-size:9px;letter-spacing:.6px}.result-stats span{font-size:11px}}@media(max-width:700px){header{height:70px}.brand-note{display:none}.brand{font-size:21px}.header-link{font-size:12px}main{padding-top:28px}.intro{gap:20px}h1{font-size:31px}.intro p{font-size:14px}.notice{font-size:12px;padding:12px}.workspace{grid-template-columns:1fr}.result-card{padding:27px}.main-number{font-size:52px}.methodology{grid-template-columns:1fr;gap:24px;margin-top:15px}.panel{padding:23px}.result-top{font-size:10px}.result-stats span{font-size:12px}.year{padding-left:15px}.year strong{font-size:21px}footer{flex-wrap:wrap;gap:15px}.grid2{gap:13px}}@media(prefers-reduced-motion:no-preference){button{transition:background .16s}html{scroll-behavior:smooth}}

.year{font-size:13px;color:var(--muted);min-width:190px}.year select{font-size:14px;background:#fff;color:#273247;margin:0}.year label{margin:0}@media(max-width:700px){.intro{align-items:flex-start;flex-wrap:wrap}.year{min-width:180px;border-left:0;padding-left:0}}
