:root{color-scheme:light;--ink:#182332;--muted:#657183;--line:#e0e5eb;--blue:#2155e8;--navy:#182b50;--orange:#ed9749;--purple:#a5b4d2;--pension:#5d8c7d;--loan:#b59bc4}*{box-sizing:border-box}body{margin:0;background:#f4f6f9;color:var(--ink);font:14px/1.55 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--blue);text-underline-offset:3px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}:focus-visible{outline:3px solid #ed9749;outline-offset:3px}.site-header{height:70px;background:white;border-bottom:1px solid var(--line)}.header-inner{max-width:1260px;margin:auto;padding:0 32px;height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--navy);font-weight:800;font-size:25px;letter-spacing:-1.1px}.brand-mark{display:grid;grid-template-columns:repeat(2,6px);gap:3px;transform:rotate(-8deg);background:var(--blue);padding:9px;border-radius:5px}.brand-mark i{height:6px;background:white}.brand-mark i:last-child{background:#91adff}.main-nav{display:flex;align-items:center;height:100%;gap:30px}.main-nav a{display:flex;align-items:center;height:100%;color:var(--muted);text-decoration:none;font-size:13px}.main-nav a.active{border-bottom:3px solid var(--blue);color:var(--ink);font-weight:700}.header-note{color:var(--muted);font-size:12px}.header-note::before{content:'●';color:#4c8c69;margin-right:8px;font-size:8px}main{max-width:1260px;margin:auto;padding:30px 32px 50px}.tool-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.eyebrow{font-size:10px;letter-spacing:1.4px;font-weight:700;color:var(--muted);margin:0 0 10px}.eyebrow span{margin:0 9px;color:#a9b3c2}h1{font-size:32px;letter-spacing:-1.1px;line-height:1.2;margin:0 0 8px;font-weight:750}.tool-heading p:last-child{margin:0;color:var(--muted);font-size:14px}.tax-year{display:flex;gap:8px;align-items:center;font-size:12px;font-weight:700;border:1px solid var(--line);background:white;padding:9px 12px;border-radius:4px}.tax-year>span:last-child{color:var(--muted);font-weight:400}.status-dot{width:6px;height:6px;border-radius:50%;background:#45846a}.workspace{display:grid;grid-template-columns:310px minmax(0,1fr);background:white;border:1px solid #d8dfe8;border-radius:7px;box-shadow:0 3px 8px #172b4d04;overflow:hidden}.input-pane{background:#fafbfc;padding:26px;border-right:1px solid var(--line)}.pane-heading{display:flex;align-items:center;gap:9px}.pane-heading h2{font-size:14px;margin:0;letter-spacing:0;font-weight:700}.step-number{font:10px/1.6 ui-monospace,monospace;color:#8190a4;border:1px solid #dce2eb;padding:1px 5px;border-radius:3px}.input-pane .pane-heading{margin-bottom:24px}label{display:block;font-size:12px;font-weight:700;margin-bottom:7px}.salary-field{display:flex;align-items:center;gap:9px;background:white;border:1px solid #aebaca;border-radius:4px;padding:10px 12px}.salary-field:focus-within{border-color:var(--blue);box-shadow:0 0 0 2px #2155e81a}.salary-field>span{font-size:22px;color:#758095}.salary-field input{border:0;outline:0;width:100%;min-width:0;font-size:28px;letter-spacing:-.8px;font-weight:600;color:var(--ink);background:transparent;font-variant-numeric:tabular-nums}.hint{font-size:10px;color:var(--muted);margin:7px 0 12px;line-height:1.5}.presets{display:flex;gap:6px;margin-top:12px}.presets button{flex:1;background:white;color:#58677c;border:1px solid var(--line);font-size:11px;padding:6px 4px;border-radius:3px}.presets button[aria-pressed=true]{border-color:#b4c7ff;background:#eef3ff;color:var(--blue)}.calculate{width:100%;display:flex;justify-content:space-between;align-items:center;padding:11px 13px;border:1px solid var(--blue);border-radius:4px;background:var(--blue);color:white;font-size:12px;font-weight:700}.calculate:hover{background:#1645c7}.error{color:#ae2727;font-size:12px;margin:10px 0}.error:empty{margin:12px 0 0}.settings{margin:22px 0 0}.settings>div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding:9px 0;font-size:11px}.settings span{color:var(--muted)}.settings strong{font-weight:600}.scope-note{padding-top:17px;font-size:11px}.scope-note strong{font-size:11px;font-weight:700}.scope-note p{color:var(--muted);margin:6px 0 0;line-height:1.6}.local-note{font-size:10px;color:#7b8796;display:flex;gap:7px;align-items:center;margin:18px 0 0}.local-note svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.3}.output-pane{padding:26px 32px 22px;min-width:0}.output-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.period-switch{display:flex;border:1px solid var(--line);border-radius:4px;padding:3px;gap:2px}.period-switch button{padding:5px 11px;font-size:11px;border:0;background:transparent;border-radius:2px;color:var(--muted)}.period-switch button[aria-pressed=true]{background:var(--navy);color:white}.result-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px 0 25px}.result-context{font-size:11px;color:var(--muted);margin:0 0 8px}.result-figure{display:flex;align-items:baseline;gap:9px;white-space:nowrap}.result-amount{font-size:clamp(35px,4.6vw,62px);line-height:1.1;letter-spacing:-2.8px;font-weight:600;font-variant-numeric:tabular-nums}.result-figure>span:last-child:not(.result-amount){color:#7c8798;font-size:12px}.annual-summary{font-size:11px;color:var(--muted);margin:11px 0 0}.annual-summary strong{color:#334963;font-weight:600}.retained{width:104px;height:104px;flex:0 0 104px;position:relative}.retained svg{width:100%;height:100%;transform:rotate(-90deg)}.retained circle{fill:none;stroke-width:6}.ring-track{stroke:#edf1f6}#retained-ring{stroke:var(--blue);stroke-linecap:round}.retained>div{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;flex-direction:column}.retained strong{font-size:21px;letter-spacing:-.7px;font-variant-numeric:tabular-nums}.retained span{font-size:10px;color:var(--muted)}.allocation{display:flex;width:100%;height:12px;gap:2px;overflow:hidden;border-radius:2px;background:#edf1f6}.allocation>span{height:100%;min-width:0}.net{background:var(--blue)}.tax{background:var(--orange)}.ni{background:var(--purple)}.pension{background:var(--pension)}.loan{background:var(--loan)}.gross{background:#d8e0ec}.allocation-key{display:flex;gap:19px;flex-wrap:wrap;margin:12px 0 27px;color:var(--muted);font-size:10px}.allocation-key>span{display:flex;align-items:center;gap:5px}.dot{display:inline-block;width:6px;height:6px;border-radius:1px;flex:0 0 6px}.breakdown table{border-collapse:collapse;width:100%;table-layout:fixed;font-variant-numeric:tabular-nums}.breakdown caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.breakdown th,.breakdown td{border-bottom:1px solid var(--line);padding:13px 9px;text-align:right;font-size:12px;white-space:nowrap}.breakdown th:first-child{text-align:left;padding-left:0;width:34%;font-weight:400}.breakdown th .dot{margin-right:8px}.breakdown thead th{font-size:10px;font-weight:400;color:#7b8797;padding-top:0;padding-bottom:10px}.breakdown tbody td{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.breakdown .selected-period{background:#f4f7ff;color:#183d99}.breakdown .row-net th,.breakdown .row-net td{font-weight:700;border-top:2px solid #ccd5e3;border-bottom:0;padding-top:17px;padding-bottom:17px}.breakdown .row-net th{color:var(--blue)}.result-footnote{display:flex;gap:10px;margin-top:17px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted)}.result-footnote p{font-size:10px;line-height:1.65;margin:0;max-width:540px}.result-footnote strong{font-weight:600;color:#526279}.estimate-mark{font-size:19px;color:#8c99ac;line-height:1}.tool-underbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:10px;color:#7f8a99;padding:13px 0}.tool-underbar a{color:#5a6a82;text-decoration:none}.reference{margin-top:27px;padding-top:24px;border-top:1px solid var(--line);display:grid;grid-template-columns:310px minmax(0,1fr)}.reference-title h2{font-size:15px;margin:0 0 6px;letter-spacing:-.3px}.reference-title p{font-size:11px;color:var(--muted);margin:0}.reference-items details{border-bottom:1px solid var(--line)}.reference-items summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;padding:13px 0;font-size:12px;font-weight:600}.reference-items summary::-webkit-details-marker{display:none}.reference-items summary>span{font-size:18px;color:#7c8b9f;font-weight:400}.reference-items details[open] summary>span{transform:rotate(45deg)}.detail-body{padding:0 20px 16px 0;font-size:12px;color:var(--muted)}.detail-body p{margin:9px 0}.detail-body li{margin-bottom:7px}.detail-body .small{font-size:11px}.site-footer{border-top:1px solid var(--line);background:white}.footer-inner{max-width:1260px;margin:auto;padding:23px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#8a94a2;font-size:10px}.footer-inner nav{display:flex;gap:20px}.footer-inner a{color:#647186;text-decoration:none}.footer-name{font-weight:700;color:#53637c}.prose{max-width:740px;margin:20px auto 50px}.prose h1{margin-bottom:30px}.prose h2{font-size:19px;margin-top:30px}.prose p,.prose li{font-size:14px;color:var(--muted);line-height:1.8}.skip{position:absolute;left:12px;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.empty-amount{font-size:60px;margin:55px 0 10px;color:#b0bbca}#empty-result>p:last-child{color:var(--muted);font-size:12px}.nojs{font-size:12px;color:var(--muted)}.advertisement{border-top:1px solid var(--line);margin-top:30px;min-height:130px;text-align:center}.advertisement>span{display:block;font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#9aa3b0;padding:10px}.pension-controls,.loan-controls{border-top:1px solid var(--line);margin-top:17px;padding-top:16px}.field-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.field-title label{margin:0}.optional{font-size:9px;color:var(--muted)}select,.contribution-input input{width:100%;background:white;color:var(--ink);border:1px solid #c7d0de;padding:9px 10px;border-radius:3px;font-size:12px}.contribution-input{display:grid;grid-template-columns:1fr 90px;gap:7px;margin-top:9px}.check-field{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:400;margin-top:10px}.check-field input{accent-color:var(--blue);width:14px;height:14px;margin:0}.pension-detail,.relief-note{font-size:11px;color:var(--muted);padding:12px 0 0}.pension-detail{margin:0}.relief-note{margin-top:15px;padding:12px 14px;background:#f5f7fb;border-left:2px solid #a0b5e1}.relief-note p{margin:4px 0}.relief-note strong{color:var(--navy)}@media(min-width:761px){.input-pane{font-size:12px}}@media(max-width:1050px){.header-note{display:none}.workspace{grid-template-columns:280px minmax(0,1fr)}.input-pane{padding:22px}.output-pane{padding:22px}.retained{width:82px;height:82px;flex-basis:82px}.retained strong{font-size:17px}.result-amount{font-size:45px}.result-figure{gap:6px}.result-figure>span:last-child:not(.result-amount){font-size:10px}.reference{grid-template-columns:280px minmax(0,1fr)}}@media(max-width:760px){.site-header{height:60px}.header-inner{padding:0 18px}.brand{font-size:23px}.main-nav{gap:17px}.main-nav a{font-size:11px}.main-nav a:last-child{display:none}main{padding:23px 16px 35px}.tool-heading{align-items:flex-start;gap:10px;margin-bottom:20px}.tool-heading h1{font-size:25px;max-width:260px;letter-spacing:-.8px}.tool-heading p:last-child{font-size:12px}.eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:9px}.tax-year{font-size:10px;white-space:nowrap;padding:6px 8px;margin-top:2px}.tax-year>span:last-child{display:none}.tax-year .status-dot{display:none}.workspace{grid-template-columns:1fr}.input-pane{padding:20px;border-right:0;border-bottom:1px solid var(--line)}.input-pane .pane-heading{margin-bottom:17px}.salary-field{padding:9px 12px}.salary-field input{font-size:26px}.presets{margin-bottom:12px}.presets button{font-size:11px;padding:6px}.calculate{padding:11px 12px}.settings,.scope-note{display:none}.local-note{margin-top:12px}.output-pane{padding:20px 18px}.output-toolbar{gap:8px}.pane-heading h2{font-size:12px}.period-switch button{padding:5px 8px;font-size:10px}.step-number{font-size:9px;padding:0 4px}.result-top{padding:24px 0 22px;gap:10px}.result-amount{font-size:42px;letter-spacing:-1.7px}.result-figure{display:block}.result-figure>span:last-child:not(.result-amount){font-size:10px;margin-left:6px}.retained{width:74px;height:74px;flex-basis:74px}.retained strong{font-size:16px}.retained span{font-size:9px}.result-context{font-size:10px}.annual-summary{font-size:10px;max-width:220px;line-height:1.7}.allocation-key{font-size:9px;gap:12px;margin:10px 0 22px}.allocation{height:9px}.breakdown th,.breakdown td{font-size:11px;padding:12px 8px}.breakdown th:first-child{width:58%}.breakdown td[data-period]:not(.selected-period),.breakdown thead th[data-period]:not(.selected-period){display:none}.breakdown .selected-period{width:42%}.result-footnote p{font-size:10px}.tool-underbar{font-size:9px;gap:6px}.reference{grid-template-columns:1fr;margin-top:20px;padding-top:20px;gap:15px}.reference-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.reference-title h2{font-size:13px}.reference-title p{font-size:10px}.reference-items summary{font-size:11px}.detail-body{font-size:11px}.footer-inner{padding:20px 18px;flex-wrap:wrap;gap:12px;font-size:9px}.footer-inner nav{gap:16px}.footer-inner>span:last-child{display:none}.pension-controls,.loan-controls{margin-top:14px;padding-top:13px}.prose{margin:12px 0}.prose h1{font-size:28px}.prose p,.prose li{font-size:13px}}@media(max-width:360px){.result-amount{font-size:36px}.retained{width:65px;height:65px;flex-basis:65px}.output-toolbar{flex-wrap:wrap}.tool-heading h1{font-size:22px}.main-nav{gap:12px}.result-figure>span:last-child:not(.result-amount){margin-left:0}.reference-title p{display:none}}@media print{.site-header,.site-footer,.calculate,.presets,.advertisement{display:none}body{background:white}main{max-width:none;padding:0}.workspace{grid-template-columns:250px 1fr;box-shadow:none}.reference{display:block}.reference-items details{break-inside:avoid}.breakdown td[data-period],.breakdown thead th[data-period]{display:table-cell!important}.breakdown th:first-child{width:34%}.result-top{break-inside:avoid}}

.contribution-label{margin-top:11px;font-size:10px}.mobile-summary{display:none}@media(max-width:760px){body{padding-bottom:66px}.mobile-summary{position:fixed;z-index:5;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--navy);color:white;text-decoration:none;padding:11px 20px calc(11px + env(safe-area-inset-bottom));box-shadow:0 -2px 12px #14244815}.mobile-summary>span:first-child{font-size:10px}.mobile-summary small{display:block;color:#a9b7d1;font-size:9px}.mobile-summary strong{font-size:24px;letter-spacing:-.7px;margin-left:auto;font-variant-numeric:tabular-nums}.mobile-summary>span:last-child{color:#b0c5ff}}@media print{.mobile-summary{display:none}}
.presets{display:grid;grid-template-columns:1fr 1fr;gap:7px}.preset{position:relative;min-width:0}.presets button{width:100%;text-align:left;padding:8px 10px}.presets button span,.presets button strong{display:block}.presets button strong{font-size:14px;margin-top:2px;font-variant-numeric:tabular-nums}.benchmark-tip{display:none;position:absolute;z-index:5;top:100%;left:0;width:240px;padding:12px;background:var(--navy);color:white;border-radius:4px;font-size:12px;box-shadow:0 4px 12px #18233226}.preset:nth-child(even) .benchmark-tip{left:auto;right:0}.preset:hover .benchmark-tip,.preset:focus-within .benchmark-tip{display:block}.preset.tip-dismissed .benchmark-tip{display:none}#selected-benchmark{margin-bottom:0}
.tools-nav{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 25px;padding-bottom:15px;border-bottom:1px solid var(--line)}.tools-nav a{padding:7px 11px;font-size:12px;text-decoration:none;color:var(--muted);border-radius:4px}.tools-nav a:hover{background:#e8edf5}.tools-nav a[aria-current=page]{background:var(--navy);color:white}.tool-field{margin-bottom:18px}.tool-field select{width:100%;background:white;border:1px solid #bdc7d5;border-radius:4px;padding:10px;color:var(--ink);font-size:12px}.tool-input{display:flex;align-items:center;gap:8px;background:white;border:1px solid #bdc7d5;border-radius:4px;padding:9px 11px}.tool-input span{color:var(--muted)}.tool-input input{border:0;outline:none;min-width:0;width:100%;font-size:20px;background:transparent;color:var(--ink);font-variant-numeric:tabular-nums}.tool-input:focus-within{outline:2px solid var(--blue)}.tool-breakdown{margin-top:30px}.tool-breakdown th:first-child{width:70%;white-space:normal}.tool-result-note{font-size:12px;color:var(--muted);margin-top:24px}.tool-workspace .result-amount{font-size:clamp(34px,4.6vw,58px)}@media(max-width:600px){.tools-nav{gap:2px;margin-bottom:20px}.tools-nav a{font-size:11px;padding:6px 7px}.tool-breakdown th:first-child{width:65%}.tool-breakdown td{font-size:11px}.tool-heading h1{font-size:27px}}
.benchmark-tip{pointer-events:none}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--muted);margin:0 0 18px}.breadcrumbs a{color:var(--muted)}.calculator-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.calculator-directory>a{position:relative;background:white;border:1px solid var(--line);border-radius:6px;padding:24px;text-decoration:none;color:var(--ink)}.calculator-directory>a:hover{border-color:var(--blue)}.calculator-directory h2{font-size:18px;margin:0 0 10px}.calculator-directory p{font-size:13px;color:var(--muted);margin:0 0 20px}.calculator-directory>a>span{color:var(--blue)}.directory-note{font-size:13px;color:var(--muted);margin-top:25px}@media(max-width:800px){.calculator-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.calculator-directory{grid-template-columns:1fr}}

/* Expanded directory and locally rendered projections. */
.directory-jumps{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 36px}.directory-jumps a{border:1px solid var(--line);border-radius:4px;padding:8px 12px;font-size:.85rem;text-decoration:none}.directory-group{margin:32px 0;scroll-margin-top:24px}.directory-group>h2{font-size:1.2rem;margin:0 0 14px}.calculator-directory h3{font-size:1rem;margin:0 0 10px}.projection-chart{margin:28px 0 20px}.projection-chart figcaption{font-size:.9rem;font-weight:650}.projection-chart svg{display:block;width:100%;height:auto;margin:12px 0}.projection-chart text{font-family:inherit;font-size:11px;fill:currentColor}.chart-grid{stroke:#cdd6d0;stroke-width:1}.chart-line{fill:none;stroke-width:2.5;stroke:#17694b}.chart-line-1{stroke:#9b580c;stroke-dasharray:7 4}.chart-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:.8rem}.chart-legend span:before{content:'';display:inline-block;width:20px;border-top:3px solid #17694b;margin-right:6px;vertical-align:middle}.chart-legend .legend-1:before{border-color:#9b580c;border-top-style:dashed}.chart-values{font-size:.8rem;margin-top:12px}.chart-values summary{cursor:pointer;padding:8px 0}.chart-table{max-height:240px;overflow:auto}.chart-table table{width:100%;border-collapse:collapse}.chart-table th,.chart-table td{text-align:right;padding:6px}.chart-table th:first-child{text-align:left}.tool-workspace .result-amount{overflow-wrap:anywhere;font-size:clamp(1.8rem,4vw,3.5rem)}.tool-breakdown td{overflow-wrap:anywhere}.tool-breakdown th{min-width:0}
