:root{--font-sans:"Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--page:#fbfbfc;--surface:#fff;--surface-muted:#f4f7fb;--surface-blue:#edf3ff;--ink:#172033;--ink-muted:#637086;--ink-faint:#8692a3;--rule:#e0e6ef;--rule-strong:#c8d2df;--navy:#172a46;--blue:#315fd0;--blue-hover:#234aa9;--blue-wash:#e7efff;--teal:#087b72;--amber:#a7652a;--error:#a83c39;--chart-observed:#2f6fb0;--chart-fitted:#b64f1c;--page-max:1280px;--gutter:clamp(20px, 4vw, 52px);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius:8px;--shadow-raised:0 1px 2px #1720330a, 0 16px 36px -28px #315fd073}*{box-sizing:border-box}html{background:var(--page);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;min-width:320px}body{min-width:320px;color:var(--ink);background:var(--page);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:14px;font-weight:500;line-height:1.62}button,input,select{font:inherit}h1,h2,h3,p,dl,dd{margin:0}h1,h2,h3{color:var(--ink);letter-spacing:-.045em;text-wrap:balance;font-weight:700;line-height:1.14}a{color:var(--blue);text-underline-offset:.2em;font-weight:650;text-decoration-thickness:1px}a:hover{color:var(--blue-hover);text-decoration-thickness:2px}::selection{background:var(--blue-wash)}:focus-visible{outline-offset:3px;outline:3px solid #315fd059}.skip-link{z-index:10;top:var(--space-3);left:var(--space-3);padding:var(--space-2) var(--space-3);color:#fff;background:var(--navy);border-radius:4px;font-size:12px;font-weight:700;text-decoration:none;transition:transform .15s;position:fixed;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.app-shell{min-height:100vh}.app-header{border-bottom:1px solid var(--rule);background:#fffffff0}.header-frame,.app-main{width:min(100%, var(--page-max));padding-inline:var(--gutter);margin-inline:auto}.header-frame{gap:var(--space-2) var(--space-5);min-height:64px;padding-block:var(--space-2);grid-template-columns:auto 1fr;align-items:center;display:grid}.brand{color:var(--ink);letter-spacing:.055em;text-transform:uppercase;grid-column:1;align-items:center;gap:9px;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.brand:hover{color:var(--ink)}.brand:before{border:2px solid var(--blue);content:"";width:9px;height:9px;box-shadow:0 0 0 3px var(--blue-wash);border-radius:50%}.brand .badge{border:1px solid var(--rule-strong);color:var(--ink-muted);letter-spacing:.08em;border-radius:3px;padding:2px 6px;font-size:8px;font-weight:750}.tagline{color:var(--ink-muted);letter-spacing:.02em;grid-column:1/-1;font-size:10px;font-weight:600}nav.tabs{justify-content:flex-end;gap:var(--space-4);scrollbar-width:none;grid-area:1/2;display:flex;overflow-x:auto}nav.tabs::-webkit-scrollbar{display:none}nav.tabs a{min-height:40px;color:var(--ink-muted);letter-spacing:.01em;white-space:nowrap;border-bottom:2px solid #0000;align-items:center;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}nav.tabs a:hover{color:var(--ink)}nav.tabs a.active{border-bottom-color:var(--blue);color:var(--ink)}.source-link{color:var(--ink-muted);white-space:nowrap;font-size:10px;font-weight:650;text-decoration:none;display:none}.app-main{padding-top:clamp(32px,5vw,64px);padding-bottom:84px}.site-footer{border-top:1px solid var(--rule);background:var(--surface-muted)}.site-footer__inner{width:min(100%, var(--page-max));justify-content:space-between;gap:var(--space-3) var(--space-6);padding:var(--space-6) var(--gutter);color:var(--ink-muted);flex-wrap:wrap;margin-inline:auto;font-size:10px;display:flex}.site-footer__inner>p{max-width:58ch}.site-footer nav{gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.site-footer a{font-size:10px}.workspace{gap:var(--space-10);align-items:start;display:grid}.workspace-view,.view,.methodology{min-width:0}.context-panel{gap:var(--space-5);padding:var(--space-5);border:1px solid var(--rule);border-radius:var(--radius);background:linear-gradient(145deg, var(--surface) 0%, var(--surface-blue) 160%);box-shadow:var(--shadow-raised);display:grid}.context-panel__header{gap:var(--space-2);display:grid}.context-panel__header>p{color:var(--ink-muted);font-size:12px;line-height:1.58}.context-panel__note{padding-top:var(--space-3);border-top:1px solid var(--rule);color:var(--ink-faint);font-size:10px;line-height:1.45}.eyebrow{color:var(--ink-muted);letter-spacing:.11em;text-transform:uppercase;font-size:9px;font-weight:800;line-height:1.25;display:block}.field{min-width:0;color:var(--ink-muted);letter-spacing:.09em;text-transform:uppercase;gap:7px;font-size:9px;font-weight:800;line-height:1.25;display:grid}.field-hint{min-height:1.25em;color:var(--ink-muted);letter-spacing:0;text-transform:none;font-size:8px;font-weight:600;line-height:1.35}select,input{border:1px solid var(--rule-strong);width:100%;min-height:42px;color:var(--ink);background:var(--surface);letter-spacing:0;text-transform:none;border-radius:5px;outline:none;padding:8px 10px;font-size:12px;font-weight:650;transition:border-color .15s,box-shadow .15s}select{cursor:pointer}select:hover,input:hover{border-color:#9daec4}select:focus,input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #315fd026}input:disabled{cursor:not-allowed;color:var(--ink-faint);background:var(--surface-muted)}.view{gap:var(--space-8);display:grid}.view-header{gap:var(--space-3);max-width:660px;display:grid}.view-title{letter-spacing:-.065em;font-size:clamp(2rem,2.7vw,3rem);font-weight:750}.view-lede{max-width:630px;color:var(--ink-muted);font-size:14px;line-height:1.7}.loading,.error{margin:0;font-size:12px;font-weight:650}.loading{color:var(--ink-muted)}.error{color:var(--error)}.metric-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));display:grid}.metric{align-content:start;gap:var(--space-1);min-width:0;padding-top:var(--space-3);border-top:1px solid var(--rule);display:grid}.metric--primary{border-top:2px solid var(--blue)}.metric dt{color:var(--ink-muted);font-size:10px;font-weight:700;line-height:1.4}.metric__value{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.055em;overflow-wrap:anywhere;font-size:clamp(1.35rem,2vw,1.85rem);font-weight:750;line-height:1.15}.unit{color:var(--ink-muted);letter-spacing:-.01em;font-size:11px;font-weight:650}.note{max-width:760px;padding:var(--space-3) var(--space-4);border-left:2px solid var(--rule-strong);color:var(--ink-muted);background:var(--surface-muted);font-size:11px;line-height:1.65}.data-section{gap:var(--space-4);display:grid}.data-section__heading,.chart-section__heading,.calculator-panel__heading,.result-section__heading,.evidence-section__heading{justify-content:space-between;align-items:end;gap:var(--space-3) var(--space-5);flex-wrap:wrap;display:flex}.data-section__heading h2,.chart-section__heading h2,.calculator-panel__heading h2,.result-section__heading h2,.evidence-section__heading h2{margin-top:3px;font-size:18px}.data-section__heading>p,.chart-section__heading>p,.calculator-panel__heading>p,.result-section__heading>p{color:var(--ink-muted);font-size:10px;font-weight:650}.table-wrap{border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule);overflow:hidden}.scroll{scrollbar-color:#b4c0cf transparent;scrollbar-width:thin;max-height:min(61vh,640px);overflow:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:11px}th,td{border-bottom:1px solid var(--rule);text-align:right;white-space:nowrap;padding:10px 12px}th{z-index:1;color:var(--ink-muted);background:var(--surface);letter-spacing:.08em;text-transform:uppercase;font-size:8.5px;font-weight:800;position:sticky;top:0}th:first-child,td:first-child{text-align:left}tbody tr{transition:background-color .12s}tbody tr:nth-child(2n){background:#f4f7fb9e}tbody tr:hover{background:var(--blue-wash)}tbody tr:last-child td{border-bottom:0}.kv{table-layout:fixed}.kv td{text-align:left;white-space:normal;word-break:break-word;padding-block:10px}.kv th{z-index:auto;width:56%;color:var(--ink-muted);letter-spacing:0;text-align:left;text-transform:none;white-space:normal;word-break:break-word;background:0 0;padding-block:10px;font-size:10.5px;font-weight:600;position:static}.kv td:first-child{width:56%;color:var(--ink-muted);font-size:10.5px;font-weight:600}.kv td:last-child{color:var(--ink);font-size:11px;font-weight:750}.detail-table{margin-top:var(--space-5)}.detail-note{margin-top:var(--space-3)}.muted{color:var(--ink-muted);font-size:11px;line-height:1.65}.chart-section{padding:var(--space-5);border:1px solid var(--rule);border-radius:var(--radius);background:linear-gradient(145deg, var(--surface) 0%, var(--surface-blue) 190%);box-shadow:var(--shadow-raised)}.chart-legend{gap:var(--space-2) var(--space-5);margin:var(--space-5) 0 var(--space-3);flex-wrap:wrap;display:flex}.chart-legend .item{color:var(--ink-muted);align-items:center;gap:7px;font-size:10px;font-weight:650;display:inline-flex}.chart-legend .swatch{border-radius:9px;width:18px;height:2px}.swatch--observed{background:var(--chart-observed)}.swatch--fitted{background:repeating-linear-gradient(90deg, var(--chart-fitted) 0 8px, transparent 8px 12px)}.chart-frame{padding-top:var(--space-2);position:relative}.chart-card svg,.chart-section svg{width:min(100%,800px);max-width:100%;height:auto;display:block;overflow:visible}.chart-tooltip{z-index:2;color:#fff;background:var(--navy);box-shadow:var(--shadow-raised);pointer-events:none;white-space:nowrap;border:1px solid #fff3;border-radius:5px;padding:8px 10px;font-size:10px;font-weight:550;line-height:1.55;position:absolute;transform:translate(-50%,-110%)}.chart-tooltip .row{align-items:center;gap:6px;display:flex}.chart-tooltip .dot{border-radius:50%;flex:none;width:6px;height:6px}.dot--observed,.curve-point--observed{background:var(--chart-observed);fill:var(--chart-observed)}.dot--fitted,.curve-point--fitted{background:var(--chart-fitted);fill:var(--chart-fitted)}.curve-line--observed{stroke:var(--chart-observed)}.curve-line--fitted{stroke:var(--chart-fitted);stroke-dasharray:6 4}.curve-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.calculator-panel,.result-section{padding:var(--space-6);border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-raised)}.calculator-panel{background:linear-gradient(145deg, var(--surface) 0%, var(--surface-blue) 180%)}.calculator-panel form{margin-top:var(--space-6)}.controls{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;display:grid}.sum-field{grid-column:span 2}.primary-button{min-height:42px;padding:8px var(--space-4);border:1px solid var(--blue);color:#fff;background:var(--blue);cursor:pointer;border-radius:5px;font-size:11px;font-weight:750;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .15s;box-shadow:0 8px 16px -12px #315fd0d9}.primary-button:hover:not(:disabled){border-color:var(--blue-hover);background:var(--blue-hover);transform:translateY(-1px);box-shadow:0 12px 20px -14px #315fd0f2}.primary-button:disabled{cursor:default;opacity:.55}.result-section{gap:var(--space-5);display:grid}.premium-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.methodology{gap:var(--space-10);display:grid}.methodology__intro{align-content:start;gap:var(--space-3);display:grid}.methodology__links{gap:var(--space-2);margin-top:var(--space-3);font-size:11px;display:grid}.methodology__body{gap:var(--space-8);min-width:0;display:grid}.method-block{gap:var(--space-3);padding-top:var(--space-5);border-top:1px solid var(--rule);display:grid}.method-block h2{max-width:630px;font-size:clamp(1.2rem,1.8vw,1.45rem)}.method-block>p:last-child{max-width:700px;color:var(--ink-muted);font-size:12px;line-height:1.75}.method-block--limit{border-top-color:var(--amber)}.evidence-section{gap:var(--space-5);padding-top:var(--space-8);border-top:1px solid var(--rule-strong);display:grid}.evidence-grid{gap:var(--space-6);display:grid}.evidence-grid h3{margin-bottom:var(--space-2);font-size:13px}.evidence-card{min-width:0}.validation-list{margin-top:var(--space-3);border-top:1px solid var(--rule-strong);gap:0;display:grid}.validation-row{gap:var(--space-3);padding-block:var(--space-3);border-bottom:1px solid var(--rule);display:grid}.validation-row__population{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.validation-row__population p{color:var(--ink);font-size:11px;font-weight:700}.validation-row__population span{color:var(--ink-muted);font-size:10px}.validation-row dl{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.validation-row dl>div{min-width:0}.validation-row dt{color:var(--ink-muted);letter-spacing:.04em;text-transform:uppercase;font-size:8px;font-weight:750;line-height:1.3}.validation-row dd{color:var(--ink);font-variant-numeric:tabular-nums;font-size:11px;font-weight:750}.policy{gap:var(--space-10);display:grid}.policy__intro,.policy__body{align-content:start;gap:var(--space-3);min-width:0;display:grid}.policy__body{gap:var(--space-8)}.policy-block{gap:var(--space-3);padding-top:var(--space-5);border-top:1px solid var(--rule);display:grid}.policy-block h2{max-width:670px;font-size:clamp(1.2rem,1.8vw,1.45rem)}.policy-block>p:last-child{max-width:700px;color:var(--ink-muted);font-size:12px;line-height:1.75}.policy-block--notice{border-top-color:var(--amber)}@media (width>=60rem){.header-frame{gap:var(--space-5);grid-template-columns:minmax(165px,1.8fr) minmax(220px,3fr) auto minmax(105px,1.2fr)}.brand,.tagline,nav.tabs,.source-link{grid-row:1}.brand{grid-column:1}.tagline{grid-column:2;font-size:10px}nav.tabs{grid-column:3;justify-content:flex-start}.source-link{grid-column:4;justify-self:end;display:block}.workspace{grid-template-columns:minmax(210px,4fr) minmax(0,8fr);column-gap:clamp(32px,5vw,72px)}.context-panel{top:var(--space-6);position:sticky}.methodology{grid-template-columns:minmax(220px,4fr) minmax(0,8fr);column-gap:clamp(32px,5vw,72px)}.methodology__intro{top:var(--space-6);position:sticky}.policy{grid-template-columns:minmax(13.75rem,4fr) minmax(0,8fr);column-gap:clamp(32px,7vw,8rem)}.policy__intro{top:var(--space-6);align-self:start;position:sticky}.validation-row{align-items:center;column-gap:var(--space-5);grid-template-columns:minmax(7.5rem,.95fr) minmax(0,2fr)}.validation-row__population{gap:.125rem;display:grid}.evidence-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr)}}@media (width<=760px){.header-frame{gap:var(--space-1) var(--space-4)}nav.tabs{justify-content:flex-start;gap:var(--space-4);margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);grid-area:3/1/auto/-1}.tagline{text-align:right;grid-area:1/2;justify-self:end;max-width:24ch}.app-main{padding-top:var(--space-8);padding-bottom:var(--space-12)}.workspace,.methodology,.policy{gap:var(--space-8)}.context-panel,.calculator-panel,.result-section,.chart-section{padding:var(--space-4)}.view{gap:var(--space-6)}.view-title{font-size:clamp(1.8rem,8vw,2.35rem)}.metric-grid,.curve-metrics,.premium-metrics{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.controls{grid-template-columns:repeat(2,minmax(0,1fr))}.product-field,.sum-field,.primary-button{grid-column:span 2}th,td{padding:9px 10px}.chart-frame{margin-inline:-4px}.site-footer__inner{display:grid}}@media (width<=420px){.metric-grid,.curve-metrics,.premium-metrics,.controls{grid-template-columns:1fr}.age-field,.product-field,.term-field,.interest-field,.sum-field,.primary-button{grid-column:auto}.brand .badge{display:none}.tagline{max-width:20ch;font-size:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
