:root{--navy:#00446a;--blue:#0084d3;--green:#168359;--red:#b53b32;--ink:#353e44;--muted:#687782;--paper:#fff;--background:#fff;--soft:#f4f8fb;--stripe:#f7fafc;--line:#d8e0e6;--note:#e8f2fd;--good:#eaf6ef;--danger:#fbeae7;--input-border:#bdcbd4;--space:4px;--small:12px;--body:14px;--label:12px;--title:clamp(24px,2.8vw,32px);color-scheme:light}
[data-theme=dark]{--navy:#9bcfec;--blue:#63bcf3;--green:#6ed6aa;--red:#ffa197;--ink:#e1e9ef;--muted:#a5b6c3;--paper:#142432;--background:#0c1924;--soft:#172b3b;--stripe:#172938;--line:#324958;--note:#17354c;--good:#133b31;--danger:#4a282b;--input-border:#506573;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px;-webkit-text-size-adjust:100%}body{margin:0;background:var(--background);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:var(--body);line-height:1.55}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}a{color:var(--blue);text-underline-offset:3px}button:focus-visible,a:focus-visible,summary:focus-visible,.table-scroll:focus-visible{outline:3px solid var(--blue);outline-offset:3px}input:focus,select:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:var(--blue)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3,button,label,.brand{font-family:Montserrat,Arial,sans-serif}h2,h3{color:var(--navy)}h2{font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}h3{font-size:var(--small);font-weight:700}p+p{margin-top:12px}.site-header{height:76px;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{height:100%;max-width:1248px;margin:auto;padding:0 24px;display:flex;align-items:center;gap:32px}.brand{color:var(--navy);text-decoration:none;display:flex;align-items:center;gap:12px;font-size:19px;font-weight:700;letter-spacing:2px}.brand svg{width:31px;height:36px}.brand small{display:block;font-size:9px;letter-spacing:3.2px;font-weight:600;line-height:1.4}.header-inner nav{display:flex;gap:28px;margin-left:auto}.header-inner nav a{font-size:13px;color:var(--navy);text-decoration:none}.header-inner nav a:hover{text-decoration:underline}.theme-button{color:var(--navy);border:1px solid var(--line);border-radius:6px;background:var(--paper);width:36px;height:36px;font-size:22px;line-height:1}.skip{position:fixed;top:-100px;left:12px;z-index:10;padding:12px;background:var(--paper)}.skip:focus{top:12px}main{max-width:1248px;margin:auto;padding:32px 24px 0}.intro{border-bottom:3px solid var(--navy);padding-bottom:20px;margin-bottom:24px}.eyebrow{font-family:Montserrat,Arial,sans-serif;font-size:var(--small);font-weight:600;color:var(--blue);letter-spacing:1.7px;margin-bottom:8px}.eyebrow span{color:var(--muted);padding:0 8px}h1{font-size:var(--title);color:var(--navy);font-weight:800;line-height:1.2;letter-spacing:-.6px}.intro p{max-width:930px;color:var(--muted);margin-top:12px}.input-panel{background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:20px;margin-bottom:32px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.text-button{border:0;background:none;color:var(--navy);font-size:var(--small);padding:0;text-decoration:underline;text-underline-offset:3px}.strategy{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--navy);border-radius:8px;overflow:hidden;margin-bottom:20px}.strategy button{border:0;border-right:1px solid var(--navy);padding:12px 8px;background:var(--paper);font-size:var(--small);font-weight:600;color:var(--navy);line-height:1.5}.strategy button:last-child{border-right:0}.strategy button[aria-pressed=true],.small-strategy button[aria-pressed=true]{background:#00446a;color:#fff}.strategy button:hover:not([aria-pressed=true]),.outline-button:hover{background:var(--note)}.input-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.field{display:flex;flex-direction:column;min-width:0}.field label{display:block;font-size:var(--label);font-weight:500;text-transform:uppercase;letter-spacing:.1px;margin-bottom:8px;line-height:1.4}.hint{display:block;text-transform:none;color:var(--muted);font-family:Inter,Arial,sans-serif;font-size:var(--small);font-weight:400;letter-spacing:0;margin-top:3px;min-height:18px}.field input,.field select{margin-top:auto;width:100%;height:40px;padding:8px 10px;border:1px solid var(--input-border);border-radius:6px;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:14px;min-width:0}.field [aria-invalid=true]{border-color:var(--red);outline-color:var(--red)}.checks{display:flex;flex-wrap:wrap;gap:14px 24px;border-top:1px dashed var(--line);padding-top:16px;margin-top:16px}.checks label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:var(--small);font-weight:500;text-transform:uppercase;line-height:1.4}.checks input{height:16px;width:16px;accent-color:#00446a;margin:0;flex-shrink:0}.input-note{font-size:var(--small);color:var(--muted);margin-top:16px;line-height:1.5}.extra-fields{margin-top:20px;padding-top:16px;border-top:1px dashed var(--line)}.extra-fields h3{letter-spacing:.5px;text-transform:uppercase;margin-bottom:12px}.extra-fields h3 span{font-family:Inter,Arial,sans-serif;font-weight:400;text-transform:none;letter-spacing:0;margin-left:8px;color:var(--muted)}.annual-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px}.annual-grid label{text-align:center}.annual-grid input{text-align:center;padding:8px 4px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}#errors{color:var(--red);background:var(--danger);border-left:3px solid var(--red);padding:12px;margin-top:16px;font-size:13px}#errors ul{padding-left:20px;margin:0}.muted{font-size:var(--small);color:var(--muted)}.reference-section{margin-bottom:32px}.reference-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.reference-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--paper)}.card-heading{background:var(--soft);padding:14px 16px;border-bottom:1px solid var(--line)}.card-heading h3{text-transform:uppercase;letter-spacing:1px}.card-heading p{font-size:var(--small);color:var(--muted);margin-top:3px}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th{background:#00446a;color:#fff;font-family:Montserrat,Arial,sans-serif;font-size:var(--small);text-align:left;font-weight:600;line-height:1.25;padding:10px 12px}td{padding:10px 12px;border-bottom:1px solid var(--line);font-size:var(--small)}tbody tr:nth-child(even){background:var(--stripe)}tbody tr:last-child td{border-bottom:0}.reference-table th{text-transform:uppercase;font-size:10px;letter-spacing:.4px}.reference-table td:first-child{white-space:nowrap}.reference-table:not(.irmaa-table) td:first-child{font-weight:700;color:var(--navy);width:70px}.reference-table .deduction-row{background:var(--good)}.reference-table .deduction-row td:first-child{color:var(--green)}.bracket-highlight td:first-child{box-shadow:inset 3px 0 0 var(--blue)}.cliff td:first-child{box-shadow:inset 3px 0 0 var(--red)}.irmaa-table th:not(:first-child),.irmaa-table td:not(:first-child){text-align:right;white-space:nowrap}.irmaa-table td:first-child{white-space:normal}.tag{display:inline-block;background:var(--note);color:var(--blue);font-size:9px;letter-spacing:.3px;font-weight:600;text-transform:uppercase;padding:2px 5px;border-radius:3px;vertical-align:1px;margin-left:5px}.tag.red{background:var(--danger);color:var(--red)}.note{background:var(--note);border-left:4px solid var(--blue);border-radius:0 8px 8px 0;padding:16px 18px;font-size:13px;line-height:1.7}.note strong{color:var(--navy)}.source-note{font-size:var(--small);color:var(--muted);line-height:1.6;margin-top:12px}.source-note a{color:var(--navy)}.actions{display:flex;gap:8px}.outline-button{font-size:var(--small);font-weight:600;border:1px solid var(--navy);border-radius:6px;color:var(--navy);padding:8px 12px;background:var(--paper)}.result-caption{color:var(--muted);font-size:var(--small);margin:-6px 0 16px}.result-caption>span{margin:0 3px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric{background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:20px}.metric h3{color:var(--muted);font-size:var(--small);letter-spacing:1px;text-transform:uppercase}.metric p{font-family:Montserrat,Arial,sans-serif;font-size:clamp(24px,2.5vw,30px);color:var(--navy);font-weight:800;letter-spacing:-.5px;margin:6px 0}.metric span{font-size:var(--small);color:var(--muted);display:block}.metric.primary{background:#00446a;border-color:#00446a}.metric.primary h3{color:#b5d2e5}.metric.primary p{color:#fff}.metric.primary span{color:#c2dcea}.chart-card{border:1px solid var(--line);border-radius:10px;padding:20px 16px 8px;margin-bottom:20px;background:var(--paper)}.chart-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.chart-heading h3{font-family:Inter,Arial,sans-serif;font-weight:600;font-size:13px}.legend{display:flex;flex-wrap:wrap;gap:20px;font-size:var(--small);color:var(--muted)}.legend span{display:flex;align-items:center;gap:7px}.legend i{display:inline-block;width:9px;height:9px;border-radius:50%}.navy-dot{background:var(--navy)}.green-dot{background:var(--green)}.chart-holder{height:245px;position:relative;margin-top:8px}canvas{display:block;width:100%;height:100%}.table-heading{margin-bottom:12px}.table-heading h3{text-transform:uppercase;font-size:var(--small);letter-spacing:.8px}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:9px;margin-bottom:20px;background:var(--paper)}.schedule{min-width:1050px}.schedule th{text-align:right;text-transform:uppercase;font-size:9px;letter-spacing:.2px;padding:12px 7px}.schedule td{text-align:right;white-space:nowrap;padding:9px 7px}.schedule th:nth-child(-n+2),.schedule td:nth-child(-n+2){text-align:center}.schedule tbody td:nth-child(-n+2){color:var(--muted)}.schedule tfoot td{font-weight:700;background:var(--soft);border-top:2px solid var(--navy)}.schedule tfoot td:first-child{text-align:left}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.schedule .flagged{background:var(--danger)}.observations{margin-bottom:32px}.observations h3{text-transform:uppercase;letter-spacing:1.3px;margin-bottom:10px}.observations p+p{margin-top:8px}.small-strategy{display:flex;border:1px solid var(--navy);border-radius:6px;overflow:hidden}.small-strategy button{font-size:var(--small);padding:8px 12px;border:0;background:var(--paper);color:var(--navy)}.small-strategy button+button{border-left:1px solid var(--navy)}.comparison-details{margin:16px 0 24px}.comparison-details summary{color:var(--navy);cursor:pointer;padding:8px 0;font-size:13px}.comparison-table{min-width:650px}.comparison-table td,.comparison-table th{text-align:right}.comparison-table th:first-child{text-align:left}.assumptions{border-top:1px solid var(--line);padding-top:24px;margin-top:32px;color:var(--muted);font-size:var(--small);line-height:1.7}.assumptions h2{margin-bottom:12px}footer{border-top:1px solid var(--line);padding:24px 0;margin-top:28px;display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:var(--small)}footer span:first-child{font-family:Montserrat,Arial,sans-serif;font-weight:600;letter-spacing:1px}.empty{border:2px dashed var(--line);padding:36px 20px;text-align:center;color:var(--muted);border-radius:10px}#share-box{padding:16px;border:1px solid var(--line);border-radius:8px;margin-bottom:20px;background:var(--soft)}#share-box label{font-size:var(--small);display:block;margin-bottom:8px}#share-url{width:100%;padding:10px;border:1px solid var(--input-border);border-radius:4px;background:var(--paper);color:var(--ink);font-size:var(--small)}#share-status{font-size:var(--small);color:var(--muted);display:block;margin-top:6px}.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}
/* Use the same image assets, proportions, and theme variants as the main site. */
.brand{flex-shrink:0}
.brand img{height:34px;width:auto}
.brand img.brand-word-img{height:30px;width:auto;display:block}
.brand img.brand-word-dark{display:none}
[data-theme="dark"] .brand img.brand-word-light{display:none}
[data-theme="dark"] .brand img.brand-word-dark{display:block}
@media(min-width:761px) and (max-width:1050px){.input-grid{gap:14px 12px}.hint{font-size:11px}.field label{font-size:11px}.reference-table td{padding:9px 8px}.tag{font-size:8px}.metric{padding:16px}.header-inner{gap:20px}}
@media(max-width:760px){.site-header{height:66px}.header-inner{padding:0 20px}.header-inner nav{display:none}.theme-button{margin-left:auto}main{padding:24px 16px 0}.intro{padding-bottom:20px}.input-panel{padding:16px}.input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.reference-grid{grid-template-columns:1fr}.metrics{gap:10px}.metric{padding:14px}.metric h3{font-size:10px}.metric p{font-size:22px}.metric span{font-size:11px}.annual-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.three{grid-template-columns:1fr}.strategy button{font-size:11px}.reference-table td{font-size:12px}.checks{gap:14px}.extra-fields h3 span{display:block;margin:4px 0 0}.chart-holder{height:225px}.section-heading{gap:10px}footer{flex-direction:column;gap:6px}}
@media(max-width:440px){.brand{font-size:17px}.eyebrow{font-size:10px;letter-spacing:1px}.intro p{font-size:13px}.strategy{grid-template-columns:1fr}.strategy button{border-right:0;border-bottom:1px solid var(--line);padding:10px;font-size:12px}.strategy button:last-child{border-bottom:0}.input-grid{grid-template-columns:1fr}.field label{margin-bottom:6px}.field input,.field select{height:42px;font-size:16px}.checks label{font-size:11px}.metrics{grid-template-columns:1fr}.metric{padding:16px}.metric h3{font-size:12px}.metric p{font-size:28px}.metric span{font-size:12px}.annual-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.annual-grid .field label{font-size:11px}.reference-table td{padding:10px 8px;font-size:11px}.tag{display:table;margin:4px 0 0;font-size:8px}.reference-table:not(.irmaa-table) td:first-child{width:50px}.irmaa-table th{padding:10px 8px}.note{padding:14px}.actions{width:100%}.actions button{flex:1}.chart-heading{gap:8px}.chart-card{padding:16px 8px 4px}.chart-holder{height:220px}.result-caption{margin-top:0}.table-heading .muted{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.site-header,.strategy,.actions,.theme-button,.text-button,#share-box{display:none!important}body{background:#fff;color:#222}main{max-width:none;padding:0}.input-panel{break-inside:avoid}.table-scroll{overflow:visible}.schedule{min-width:0}.schedule th{font-size:7px}.schedule td{font-size:8px;padding:6px 3px}.reference-grid{grid-template-columns:1fr 1fr}.metrics{grid-template-columns:repeat(3,1fr)}}
html[data-embedded] .site-header,html[data-embedded] main>footer,html[data-embedded] .skip{display:none}
html[data-embedded] body{background:transparent}
html[data-embedded] main{max-width:none;padding:0}
html[data-embedded] .intro{padding-top:4px}
html[data-embedded]{scroll-padding-top:16px;background:var(--embed-background,var(--background))}
