:root{--cream:#fcf9f4;--green:#1e4a34;--green-light:#eff5ef;--ink:#21372b;--muted:#667168;--line:#dce2d9;--white:#fffefb;--red:#a43236;--red-light:#fff1f0;--neutral:#f2f1eb;--radius:16px;color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);line-height:1.5}button,input,select{font:inherit}button,summary,select,input[type=checkbox]{cursor:pointer}a{color:var(--green);text-underline-offset:3px}button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #b99842;outline-offset:3px}button{min-height:44px}h1,h2,p{margin:0}h2{font-size:1.0625rem;line-height:1.35;letter-spacing:-.015em}strong,td,dd{font-variant-numeric:tabular-nums}::selection{background:#cde3cf} [hidden]{display:none!important}
.page-header,.workspace,.page-footer{max-width:1280px;margin-inline:auto;padding-inline:40px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:40px;padding-bottom:32px}.eyebrow{font-size:.75rem;font-weight:650;letter-spacing:.12em;color:var(--muted);margin-bottom:12px}h1{font-size:clamp(1.8rem,3.3vw,2.375rem);font-weight:620;line-height:1.18;letter-spacing:-.045em}h1 span{color:var(--green)}.intro{color:var(--muted);margin-top:12px}.reset-button{display:inline-flex;align-items:center;gap:9px;flex-shrink:0;padding:10px 15px;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--green);font-size:.875rem;font-weight:550;transition:background .15s}.reset-button:hover{background:var(--green-light)}.reset-button span{font-size:1.35rem;line-height:1}.workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}.inputs,.results{min-width:0}.inputs{display:grid;gap:18px}.input-section{border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:var(--white)}.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:21px}.section-number{font-size:.75rem;font-weight:650;color:var(--green);border:1px solid #d4dfd1;border-radius:6px;display:grid;place-items:center;min-width:29px;height:29px;background:var(--green-light)}.section-note{margin-left:auto;font-size:.75rem;color:var(--muted);white-space:nowrap}.fields{display:grid;gap:18px}.two-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.field{min-width:0}label{display:block;font-size:.875rem;font-weight:560;margin-bottom:7px}input[type=text],select{width:100%;min-width:0;height:46px;background:#fff;border:1px solid #ccd5ca;color:var(--ink);border-radius:8px;padding:10px 12px;font-size:1rem;transition:border-color .15s}input[type=text]{cursor:text}input:hover,select:hover{border-color:#8d9e8d}select{padding-right:30px}input::placeholder{color:#93998f;font-weight:400}.amount-input{position:relative}.amount-input input{padding-right:37px;font-variant-numeric:tabular-nums}.amount-input>span{position:absolute;right:13px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;font-size:.875rem}.help{color:var(--muted);font-size:.8125rem;line-height:1.5;margin-top:8px}.field-error{color:var(--red);font-size:.8125rem;margin-top:5px}.field-error:empty{display:none}input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--red);background:#fff9f8}.rate-strip{display:flex;gap:24px;justify-content:space-between;margin-top:18px;margin-bottom:20px;background:var(--green-light);border-radius:8px;padding:12px 15px}.rate-strip div{display:flex;flex-direction:column;gap:3px}.rate-strip span{font-size:.75rem;color:var(--muted)}.rate-strip strong{font-size:1.0625rem;font-weight:650;color:var(--green)}.checkbox-field{display:flex;align-items:flex-start;gap:10px;font-size:.875rem;line-height:1.45;margin:0;font-weight:500}.checkbox-field input{width:19px;height:19px;accent-color:var(--green);flex-shrink:0;margin:1px 0 0}.checkbox-help{margin-left:29px;font-size:.75rem}.input-section>.field+.fields{margin-top:18px}.inline-calculation{display:grid;grid-template-columns:1fr auto;margin-top:18px;padding:13px 15px;border-radius:8px;background:var(--neutral);font-size:.875rem;gap:2px 8px}.inline-calculation strong{color:var(--green);font-size:1rem}.inline-calculation small{grid-column:1/-1;color:var(--muted);font-size:.75rem}.cost-note{margin-top:17px;padding-top:15px;border-top:1px solid var(--line);font-size:.8125rem;color:var(--muted)}.bonus-section{border-color:#9bac99;background:#f8fbf6}.large-input input{height:53px;font-size:1.25rem;font-weight:600}.bonus-feedback,.cofi-feedback{margin-top:14px;border-radius:8px;padding:11px 13px;font-size:.875rem;line-height:1.5}.success{background:var(--green-light);color:var(--green)}.failure{background:var(--red-light);color:var(--red)}.neutral{background:var(--neutral);color:var(--muted)}.bonus-feedback strong,.cofi-feedback strong{display:block;font-size:.8125rem;letter-spacing:.015em;margin-bottom:3px}.results{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--white)}.maximum-panel{padding:25px 26px 19px;background:var(--green);color:var(--cream)}.maximum-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.maximum-heading h2{font-size:.9375rem;font-weight:500}.live-label{font-size:.625rem;letter-spacing:.1em;color:#c6d8c7;text-align:right;white-space:nowrap}.maximum-value{font-size:clamp(2.2rem,4.7vw,3.5rem);font-weight:570;letter-spacing:-.045em;line-height:1.2;margin:17px 0 10px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.maximum-value span{font-weight:400;font-size:.7em}.maximum-caption{font-size:.875rem;color:#e1e9dd;line-height:1.5}.maximum-note{border-top:1px solid #537159;padding-top:12px;margin-top:18px;font-size:.75rem;color:#c6d8c7}.result-section{padding:23px 26px;border-bottom:1px solid var(--line)}.result-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.small-label{font-size:.625rem;color:var(--muted);letter-spacing:.09em;font-weight:650;white-space:nowrap}.limits{display:grid;gap:6px}.limit-row{display:grid;grid-template-columns:23px 1fr auto;align-items:center;gap:9px;font-size:.875rem;padding:10px 9px;border-radius:7px;margin-inline:-9px}.limit-row .letter{font-size:.6875rem;color:var(--muted);font-weight:650}.limit-row strong{font-size:.9375rem;text-align:right;white-space:nowrap}.limit-row.is-limiting{background:var(--green-light);color:var(--green)}.is-limiting .letter{color:var(--green)}.table-wrap{width:100%;overflow-x:auto;scrollbar-width:thin}.cost-table{width:100%;border-collapse:collapse;font-size:.8125rem}.cost-table th,.cost-table td{padding:10px 4px;text-align:right;border-bottom:1px solid #e9ece4;white-space:nowrap}.cost-table th:first-child{padding-left:0;text-align:left}.cost-table th:last-child,.cost-table td:last-child{padding-right:0}.cost-table thead th{font-size:.6875rem;color:var(--muted);font-weight:500;padding-top:0}.cost-table tbody th{font-weight:450}.cost-table td:nth-child(3){color:var(--green);font-weight:620}.cost-table td:nth-child(4){color:var(--muted)}.cost-table .total-row th,.cost-table .total-row td{font-weight:650;border-bottom:0;padding-top:12px}.salary-row{display:flex;justify-content:space-between;gap:12px;font-size:.8125rem;background:var(--neutral);border-radius:6px;padding:10px 11px;margin-top:12px;color:var(--muted)}.salary-row strong{color:var(--ink);white-space:nowrap}.adjustments{border-left:3px solid #a7ac92;background:#f7f7f0;padding:10px 12px;font-size:.8125rem;line-height:1.5;margin-top:13px;color:#59644f}.adjustments p+p{margin-top:8px}.explanation{font-size:.8125rem;margin-top:15px;color:var(--muted)}summary{width:fit-content;color:var(--green);min-height:30px;line-height:1.6}.explanation p{margin-top:9px}.cofinancing-numbers{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:16px}.cofinancing-numbers div{display:flex;flex-direction:column;gap:4px}.cofinancing-numbers span{font-size:.8125rem;color:var(--muted)}.cofinancing-numbers strong{font-size:1.8rem;letter-spacing:-.045em;font-weight:600}.cofinancing-numbers div:nth-child(2) strong{color:var(--green)}.cofinancing-numbers .is-failure{color:var(--red)!important}.cofi-meter{height:7px;background:#e8ece3;border-radius:5px;position:relative;margin:14px 0 21px}.cofi-fill{display:block;width:0%;max-width:100%;height:100%;background:var(--green);border-radius:5px;transition:width .2s}.cofi-fill.is-failure{background:var(--red)}.cofi-marker{position:absolute;width:2px;height:15px;top:-4px;left:0;background:#838b70;border-radius:1px}.financial-rows{margin:0;display:grid;gap:9px}.financial-rows>div{display:flex;justify-content:space-between;gap:16px;font-size:.8125rem;color:var(--muted)}.financial-rows dt{margin:0}.financial-rows dd{margin:0;color:var(--ink);white-space:nowrap;text-align:right}.financial-rows .emphasis-row{font-size:.875rem;color:var(--ink);font-weight:600;border-top:1px solid #e9ece4;margin-top:3px;padding-top:12px}.cofi-suggestion{font-size:.8125rem;color:var(--muted);margin-top:12px;line-height:1.55}.cofi-suggestion p+p{margin-top:8px}.compatible-limit{display:flex;flex-direction:column;gap:7px;border:1px solid #cddccc;border-radius:9px;background:#f6f9f3;padding:13px 15px;margin-top:18px}.compatible-limit span{font-size:.8125rem;color:var(--muted);max-width:360px}.compatible-limit strong{font-size:1.25rem;color:var(--green);line-height:1.3;font-weight:630;font-variant-numeric:tabular-nums}.annual-note{font-size:.8125rem;color:var(--muted);margin-top:17px;line-height:1.55}.annual-note strong{color:#465849;font-weight:600}.diagnostic{display:flex;align-items:flex-start;gap:13px;padding:21px 26px;line-height:1.5}.diagnostic-icon{width:23px;height:23px;flex-shrink:0;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:.875rem;margin-top:1px}.diagnostic h2{font-size:.875rem;font-weight:650;letter-spacing:.015em}.diagnostic p{font-size:.8125rem;margin-top:4px}.page-footer{padding-top:27px;padding-bottom:32px;color:var(--muted);font-size:.75rem;display:flex;justify-content:space-between;align-items:flex-start;gap:28px}.page-footer>p{text-align:right;flex-shrink:0;line-height:1.6;max-width:340px}.sources{max-width:720px}.sources summary{font-size:.8125rem}.sources-content{font-size:.8125rem;line-height:1.6;margin-top:11px}.sources-content p+p{margin-top:11px}.sources-content ul{padding-left:18px;margin-top:12px}.sources-content li+li{margin-top:5px}.noscript{padding:20px;color:var(--red)}
@media(min-width:1600px){.page-header,.workspace,.page-footer{max-width:1360px}.workspace{gap:32px}.input-section{padding:27px}.result-section{padding:25px 29px}.maximum-panel{padding:28px 29px 22px}}
@media(max-width:1020px){.page-header,.workspace,.page-footer{padding-inline:24px}.workspace{gap:20px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.input-section{padding:20px}.result-section,.maximum-panel,.diagnostic{padding-inline:20px}.two-fields{gap:14px}.live-label{display:none}.rate-strip{gap:12px;padding-inline:12px}.maximum-value{font-size:2.7rem}.cost-table{font-size:.75rem}.cost-table th,.cost-table td{padding-inline:3px}.section-heading{gap:9px}.section-note{font-size:.6875rem}.page-footer{flex-direction:column;gap:12px}.page-footer>p{text-align:left;max-width:none}}
@media(max-width:800px){.workspace{grid-template-columns:1fr}.page-header{align-items:flex-start;padding-top:26px;padding-bottom:24px}.heading{min-width:0}.page-header{flex-wrap:wrap;gap:18px}.reset-button{font-size:.8125rem;padding:8px 13px}.input-section{padding:22px}.results{margin-top:3px}.maximum-panel,.result-section,.diagnostic{padding-inline:24px}.maximum-heading h2{font-size:1rem}.maximum-value{font-size:3.2rem}.live-label{display:inline}.cost-table{font-size:.875rem}.cost-table thead th{font-size:.75rem}.page-footer{padding-top:23px}.intro{font-size:.9375rem}}
@media(max-width:440px){.page-header,.workspace,.page-footer{padding-inline:16px}.page-header{padding-top:23px}.eyebrow{font-size:.625rem;letter-spacing:.09em}h1{font-size:1.85rem}.input-section{padding:18px}.section-heading{margin-bottom:17px}h2{font-size:1rem}.section-number{min-width:26px;height:26px}.section-note{font-size:.6875rem}.two-fields{gap:14px;grid-template-columns:1fr}.fields{row-gap:15px}.rate-strip{margin-top:15px;gap:10px}.checkbox-field{font-size:.875rem}.checkbox-help{font-size:.75rem}.maximum-panel,.result-section,.diagnostic{padding-inline:19px}.maximum-value{font-size:3rem}.live-label{display:none}.limit-row{font-size:.8125rem;grid-template-columns:18px 1fr auto;gap:6px}.limit-row strong{font-size:.875rem}.cost-table{font-size:.75rem}.cost-table thead th{font-size:.625rem}.cost-table td,.cost-table th{padding-inline:3px}.salary-row{font-size:.75rem}.financial-rows>div{font-size:.75rem;gap:10px}.cofinancing-numbers strong{font-size:1.7rem}.section-note{margin-left:auto}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.salary-field{grid-column:1/-1;margin-top:1px;padding-top:17px;border-top:1px solid var(--line)}.salary-field .amount-input{max-width:260px}.salary-action{margin-top:13px}.secondary-link{display:inline-block;font-size:.875rem;font-weight:550;text-decoration:underline;text-underline-offset:3px;line-height:1.5;color:var(--green)}.secondary-link[aria-disabled=true]{color:var(--muted);text-decoration:none;cursor:default}.salary-action .help{margin-top:4px;font-size:.75rem}.salary-guide{margin-top:13px;font-size:.8125rem}.salary-guide summary{font-size:.8125rem;font-weight:500}.salary-steps{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:15px}.salary-steps li{display:flex;gap:12px;align-items:flex-start}.step-number{display:grid;place-items:center;flex-shrink:0;width:24px;height:24px;background:var(--green-light);color:var(--green);border:1px solid #d4dfd1;border-radius:50%;font-size:.75rem;font-weight:600}.salary-steps strong{font-size:.8125rem;font-weight:600}.salary-steps p{font-size:.8125rem;color:var(--muted);margin-top:3px;line-height:1.5}.cofi-formulas{display:grid;gap:12px;border-left:2px solid #cddccc;padding:2px 0 2px 13px;margin-top:22px}.cofi-formulas h3{margin:0 0 3px;font-size:.75rem;color:var(--green);letter-spacing:.025em;font-weight:650;text-transform:uppercase}.cofi-formulas p{font-size:.8125rem;line-height:1.5;color:var(--muted)}.cofi-formulas .formula-values{font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--ink);margin-top:4px;overflow-wrap:anywhere}.summary-body,.result-interpretation{padding:23px 26px}.summary-rows{gap:11px}.summary-rows>div{font-size:.875rem}.summary-rows .emphasis-row{padding-top:11px;margin-top:1px}.summary-shortfall{margin-top:16px;padding:12px 13px;border-radius:8px;background:var(--red-light);color:var(--red)}.summary-shortfall>p:first-child{display:flex;flex-direction:column;gap:5px;font-size:.8125rem}.summary-shortfall strong{font-size:1.125rem;font-variant-numeric:tabular-nums}.summary-shortfall .help{font-size:.75rem;color:var(--red);margin-top:7px}.diagnostic .diagnostic-label{font-size:.75rem;margin:0 0 3px;letter-spacing:.06em;font-weight:500}.result-interpretation{border-top:1px solid var(--line);padding-top:18px}.result-interpretation h3{margin:0 0 7px;font-size:.875rem;font-weight:600;color:var(--ink)}.result-interpretation p{font-size:.8125rem;line-height:1.6;color:var(--muted)}
@media(min-width:1600px){.summary-body,.result-interpretation{padding-inline:29px}}
@media(max-width:1020px){.summary-body,.result-interpretation{padding-inline:20px}.summary-rows>div{font-size:.8125rem}}
@media(max-width:800px){.summary-body,.result-interpretation{padding-inline:24px}.summary-rows>div{font-size:.875rem}}
@media(max-width:440px){.summary-body,.result-interpretation{padding-inline:19px}.summary-rows>div{font-size:.8125rem}.salary-field .amount-input{max-width:none}.cofi-formulas{padding-left:11px}}
@media print{.reset-button{display:none}.page-header{padding-top:10px}.workspace{grid-template-columns:1fr 1fr;gap:15px}.input-section,.result-section{break-inside:avoid}.page-footer{display:none}body{background:#fff}}
