:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#172033;background:#f4f7fb;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body{max-width:100%}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}.page-shell{width:min(1100px,calc(100% - 32px));margin:0 auto;padding:32px 0 48px}.intro{max-width:680px;margin-bottom:24px}.eyebrow{margin:0 0 8px;color:#2358d3;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}h1{margin:0;font-size:clamp(1.75rem,5vw,2.75rem);line-height:1.15;letter-spacing:-.04em}.intro>p:last-child{margin:10px 0 0;color:#59657a;line-height:1.5}.simulator-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:24px;align-items:stretch}.panel{min-width:0;background:#fff;border:1px solid #dfe5ef;border-radius:18px;box-shadow:0 12px 32px #273a5d14;padding:24px}h2{margin:0 0 16px;font-size:1.25rem}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.field{min-width:0;margin-bottom:16px}.form-panel>.field:last-child{margin-bottom:0}.field label,legend{display:block;margin-bottom:8px;font-size:.9rem;font-weight:700}.input-wrap{position:relative}.input-wrap input{width:100%;min-width:0;min-height:48px;padding:10px 48px 10px 12px;color:#172033;background:#fff;border:1px solid #7b879a;border-radius:9px;font-variant-numeric:tabular-nums}.input-wrap input:focus{border-color:#2358d3}.input-wrap input[aria-invalid=true]{border-color:#bc2d3b}.input-wrap span{position:absolute;top:50%;right:13px;color:#667187;transform:translateY(-50%);pointer-events:none}.field-error{margin:6px 0 0;color:#a51f2d;font-size:.8rem}.euribor-status{margin:0;color:#59657a;font-size:.82rem;line-height:1.5}.euribor-error{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;color:#7d3540}.euribor-error button{flex:none;width:auto;min-height:44px;padding:8px 12px}fieldset{min-width:0;margin:0 0 16px;padding:0;border:0}.type-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.type-option{display:flex;min-height:48px;gap:9px;align-items:center;padding:10px 12px;border:1px solid #7b879a;border-radius:9px;cursor:pointer}.type-option:hover{border-color:#2358d3;background:#f4f7ff}.type-option:has(input:focus-visible){outline:3px solid #2358d3;outline-offset:3px}.type-option:has(input:focus-visible) input:focus-visible{outline:none}.type-option input{accent-color:#2358d3;width:18px;height:18px;margin:0;flex:none}.type-option.selected{color:#1749b4;background:#eef3ff;border-color:#2358d3;font-weight:700}.rate-fields{grid-template-columns:1fr 1fr}button{width:100%;min-height:50px;color:#fff;background:#2358d3;border:0;border-radius:9px;font-weight:800;cursor:pointer}button:hover{background:#1948b4}:focus-visible{outline:3px solid #2358d3;outline-offset:3px}button:focus-visible{outline:3px solid #172033;outline-offset:3px}.form-note{margin:14px 0 0;color:#59657a;font-size:.82rem;line-height:1.5}.results-panel{display:flex;flex-direction:column}.primary-result{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;align-items:center;padding:10px;color:#fff;background:#193a83;border-radius:13px}.primary-result span{color:#dbe5ff}.primary-result strong{grid-column:2;margin:0;font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.result-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:12px 0 0}.result-row{min-width:0;padding:2px 0}.result-row dt{color:#59657a;font-size:.8rem}.result-row dd{margin:3px 0 0;font-weight:750;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.result-row.emphasized dt,.result-row.emphasized dd{color:#172033;font-weight:800}.empty-result{padding:16px;color:#7d3540;background:#fff4f4;border-radius:9px;line-height:1.5}.empty-result p{margin:0}.empty-result p+p{margin-top:8px}.variable-note{margin:10px 0 0;color:#59657a;font-size:.82rem;line-height:1.5}.shared-notice{margin:-14px 0 24px;padding:11px 14px;color:#28533d;background:#eaf7ef;border:1px solid #bce3ca;border-radius:9px;font-size:.9rem}.add-button{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:center;margin-top:16px;padding:12px 14px}.add-button span{font-size:.82rem;white-space:nowrap}button:disabled,button[aria-disabled=true]{color:#4d596d;background:#d9dee7;cursor:not-allowed}.limit-note{margin:9px 0 0;color:#59657a;font-size:.82rem;line-height:1.5}.comparison-feedback{margin:12px 0 0;color:#28533d;font-size:.9rem;line-height:1.5}.comparison-feedback:empty{margin:0}.comparison-section{min-width:0;margin-top:28px;padding:24px;background:#fff;border:1px solid #dfe5ef;border-radius:18px;box-shadow:0 12px 32px #273a5d14}.comparison-heading{display:flex;justify-content:space-between;align-items:start;gap:20px}.comparison-heading h2{margin-bottom:0}.comparison-heading>span{flex:none;padding:7px 11px;color:#1749b4;background:#eef3ff;border-radius:999px;font-size:.85rem;font-weight:800}.comparison-help{margin:10px 0 16px;color:#59657a;line-height:1.5}.scroll-hint{display:none;margin:0 0 10px;color:#59657a;font-size:.82rem}.comparison-scroll{max-width:100%;overflow-x:auto;border:1px solid #7b879a;border-radius:10px;-webkit-overflow-scrolling:touch}.comparison-scroll table{width:100%;border-collapse:separate;border-spacing:0;text-align:left}.comparison-scroll caption{padding:12px;color:#59657a;background:#f8fafc;text-align:left;font-size:.85rem}.comparison-scroll th,.comparison-scroll td{min-width:180px;padding:14px 16px;border-bottom:1px solid #e7ebf2;vertical-align:top}.comparison-scroll th:first-child{position:sticky;left:0;z-index:1;min-width:148px;width:148px;color:#59657a;background:#f8fafc;border-right:1px solid #bdc7d7}.comparison-scroll thead th{color:#172033;background:#f8fafc;font-size:.88rem}.comparison-scroll td{font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.comparison-scroll tr:hover td{background:#f4f7ff}.comparison-scroll tr:hover th:first-child{background:#eef3ff}.comparison-scroll .payment-row td{color:#1749b4;font-size:1.22rem;font-weight:850}.secondary-row th,.secondary-row td{font-size:.88rem}.secondary-start th,.secondary-start td{border-top:2px solid #bdc7d7}.comparison-scroll .secondary-row td{color:#59657a}.comparison-scroll .secondary-row:last-child td{white-space:normal}.actions-row th,.actions-row td{border-bottom:0}.table-button{display:block;width:auto;min-height:44px;margin:0 0 8px;padding:8px 12px;font-size:.875rem}.table-button.remove{color:#9c2430;background:#fff;border:1px solid #a85a64}.table-button.remove:hover{background:#fff3f4}.share-feedback{min-height:24px;margin-top:14px;color:#4d596d;font-size:.88rem}.copy-field{margin-top:8px}.copy-field label{display:block;margin-bottom:8px;font-weight:700}.copy-field input{width:100%;min-height:48px;padding:9px 12px;color:#172033;background:#fff;border:1px solid #7b879a;border-radius:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.privacy-footer{width:min(1100px,calc(100% - 32px));margin:0 auto;color:#59657a;font-size:.875rem}.privacy-footer p{margin:4px 0 0}.privacy-link{width:auto;min-height:44px;padding:8px 0;color:#1749b4;background:transparent;border-radius:3px;font-size:.875rem;font-weight:650;text-decoration:underline;text-underline-offset:3px}.privacy-link:hover{color:#172033;background:transparent}.consent-banner{position:fixed;bottom:calc(8px + env(safe-area-inset-bottom,0px));left:max(8px,env(safe-area-inset-left,0px));right:max(8px,env(safe-area-inset-right,0px));z-index:10;display:grid;gap:8px;width:min(1100px,calc(100% - 16px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));max-height:min(70svh,calc(100svh - 16px - env(safe-area-inset-bottom,0px)));margin:0 auto;padding:12px;overflow-y:auto;color:#172033;background:#fff;border:1px solid #7b879a;border-radius:12px;box-shadow:0 4px 20px #17203329}.consent-copy{min-width:0}.consent-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:8px}.consent-banner h2{margin:0;font-size:.875rem;line-height:1.4}.consent-banner p{margin:0;color:#59657a;font-size:.875rem;line-height:1.4}.consent-more{flex:none;width:auto;min-height:44px;padding:4px 2px;color:#1749b4;background:transparent;border-radius:3px;font-size:.8125rem;font-weight:650;text-decoration:underline;text-underline-offset:3px}.consent-more:hover{color:#172033;background:transparent}.consent-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-self:center}.consent-actions button{min-width:0;min-height:44px;padding:8px 6px;overflow-wrap:anywhere;font-size:.875rem;font-weight:700}.consent-details{min-width:0;padding-top:8px;border-top:1px solid #dfe5ef}.consent-details p+p{margin-top:8px}@media(min-width:760px){.consent-banner{grid-template-columns:minmax(0,1fr) 292px;column-gap:20px}.consent-heading{justify-content:flex-start;column-gap:16px}.consent-details{grid-column:1 / -1}}@media(max-width:1100px){.scroll-hint{display:block}}@media(max-width:900px){.page-shell{width:min(100% - 24px,600px);padding:20px 0 40px}.intro{margin-bottom:16px}.simulator-layout{grid-template-columns:1fr;gap:14px}.panel{padding:16px;border-radius:14px}.field{margin-bottom:12px}.field label,legend{margin-bottom:6px}.input-wrap input{padding-left:10px;padding-right:30px;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.input-wrap input::-webkit-inner-spin-button,.input-wrap input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-wrap span{right:10px}#termYears{padding-right:50px}.comparison-section{margin-top:24px;padding:16px 0 16px 16px;border-radius:14px}.comparison-heading,.comparison-help,.scroll-hint{margin-right:16px}.comparison-scroll{border-right:0;border-radius:10px 0 0 10px}.comparison-scroll th,.comparison-scroll td{min-width:180px;padding:12px}.comparison-scroll th:first-child{min-width:116px;width:116px;max-width:116px}}@media(max-width:359px){.field-grid:not(.rate-fields){grid-template-columns:1fr}.add-button{justify-content:center}}.amortization-section{margin-top:24px}.amortization-section summary{min-height:44px;padding:10px 0;cursor:pointer;font-weight:800}.amortization-section summary span{margin-left:12px;color:#59657a;font-weight:400}.amortization-toolbar{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:end;justify-content:space-between;margin-top:16px}.amortization-toolbar fieldset{margin:0}.amortization-downloads{display:flex;flex-wrap:wrap;gap:10px}.amortization-downloads button{width:auto;min-height:48px;padding:10px 14px;font-size:.875rem}.amortization-scroll{max-height:520px;overflow:auto;border:1px solid #7b879a;border-radius:10px;margin-top:16px}.amortization-scroll table{width:100%;border-spacing:0;font-size:.875rem}.amortization-scroll caption{padding:12px;color:#59657a;text-align:left}.amortization-scroll th,.amortization-scroll td{padding:12px;border-bottom:1px solid #e7ebf2;white-space:nowrap}.amortization-scroll thead th{position:sticky;top:0;background:#f8fafc;z-index:1;text-align:right}.amortization-scroll th{text-align:left}.amortization-scroll tbody th{background:#f8fafc}.amortization-scroll td{text-align:right;font-variant-numeric:tabular-nums}.amortization-info{position:relative;width:fit-content}.amortization-info [role=tooltip]{position:absolute;top:100%;left:0;z-index:3;width:min(420px,calc(100vw - 64px));padding:14px;background:#fff;border:1px solid #7b879a;border-radius:9px;box-shadow:0 4px 16px #17203333;font-size:.875rem;line-height:1.5}.contribution-inputs{display:grid;grid-template-columns:minmax(0,1fr) 88px}.contribution-inputs .field{margin-bottom:0}.contribution-inputs .field:first-child input{border-radius:9px 0 0 9px}.contribution-inputs .field:last-child input{border-radius:0 9px 9px 0;border-left-width:0;padding-right:25px;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.contribution-inputs .field:last-child input:focus{border-left-width:1px}.contribution-inputs .field:last-child label{overflow:hidden;white-space:nowrap;text-indent:-9999px}.contribution-inputs input::-webkit-inner-spin-button,.contribution-inputs input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.contribution-inputs input:disabled{background:#f1f3f6}.contribution-field{margin-bottom:16px}.contribution-label{position:relative;width:fit-content}.contribution-help-trigger{width:auto;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;font-size:.9rem;font-weight:700;display:block;margin-bottom:8px;text-decoration:underline dotted;text-underline-offset:3px;cursor:help}.contribution-help-trigger:hover{background:transparent}.contribution-label [role=tooltip]{position:absolute;top:100%;left:0;z-index:3;width:250px;max-width:calc(100vw - 64px);padding:12px;background:#fff;color:#172033;border:1px solid #7b879a;border-radius:9px;box-shadow:0 4px 16px #17203333;font-size:.875rem;line-height:1.5}@media(max-width:900px){.contribution-field{margin-bottom:12px}.contribution-help-trigger{margin-bottom:6px}}@media(max-width:600px){.field-grid:not(.rate-fields){grid-template-columns:1fr}}.mortgage-type legend{padding:0}.mortgage-type .type-options{gap:6px}.mortgage-type .type-option{gap:4px;padding:10px 6px;font-size:.875rem}.results-panel .form-note{margin:8px 0 10px;font-size:.75rem}.results-panel .add-button{min-height:44px;margin-top:auto;padding:10px 12px}
