:root{--c-bg: #ffffff;--c-bg-soft: #f6f7f9;--c-bg-sunken: #eef0f4;--c-text: #14181f;--c-text-soft: #5a6472;--c-text-muted: #808a99;--c-border: #dde1e8;--c-border-strong: #c3cad6;--c-accent: #0f7b5f;--c-accent-soft: #e6f4ef;--c-negative: #b3261e;--c-negative-soft: #fdeceb;--c-warn: #8a5a00;--c-warn-soft: #fff4dc;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, "Noto Sans", sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--fs-1: .8125rem;--fs-2: .9375rem;--fs-3: 1.0625rem;--fs-4: 1.375rem;--fs-5: 1.875rem;--fs-6: 2.5rem;--s-1: .25rem;--s-2: .5rem;--s-3: .75rem;--s-4: 1rem;--s-5: 1.5rem;--s-6: 2rem;--s-7: 3rem;--s-8: 4rem;--radius: 10px;--radius-sm: 6px;--shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .1);--wrap: 1120px;--measure: 68ch}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--c-bg);color:var(--c-text);font-family:var(--font-sans);font-size:var(--fs-3);line-height:1.6;text-rendering:optimizeLegibility}img,svg{max-width:100%;height:auto}a{color:var(--c-accent);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--c-accent);outline-offset:2px;border-radius:3px}h1,h2,h3{line-height:1.25;letter-spacing:-.015em;margin:0 0 var(--s-3)}h1{font-size:var(--fs-5)}h2{font-size:var(--fs-4);margin-top:var(--s-7)}h3{font-size:var(--fs-3);margin-top:var(--s-5)}p,ul,ol{margin:0 0 var(--s-4)}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--s-4)}.site-header{border-bottom:1px solid var(--c-border);background:var(--c-bg)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);min-height:60px}.brand{display:inline-flex;align-items:baseline;gap:var(--s-2);font-weight:700;font-size:var(--fs-4);color:var(--c-text);text-decoration:none;letter-spacing:-.02em}.brand__mark{color:var(--c-accent)}.site-nav{display:flex;gap:var(--s-5);font-size:var(--fs-2)}.site-nav a{color:var(--c-text-soft);text-decoration:none}.site-nav a:hover{color:var(--c-text)}@media(max-width:560px){.site-header__inner{flex-wrap:wrap;padding-block:var(--s-2)}.site-nav{gap:var(--s-4);font-size:var(--fs-1)}.tool-grid li .updated{margin:var(--s-2) 0 0}}.site-footer{margin-top:var(--s-8);border-top:1px solid var(--c-border);background:var(--c-bg-soft);padding-block:var(--s-6);font-size:var(--fs-1);color:var(--c-text-soft)}.site-footer__links{display:flex;flex-wrap:wrap;gap:var(--s-4);margin-bottom:var(--s-4)}.site-footer__links a{color:var(--c-text-soft)}.disclaimer{max-width:var(--measure);color:var(--c-text-muted);line-height:1.55}.hero{padding-block:var(--s-6) var(--s-5)}.hero__tagline{max-width:60ch;color:var(--c-text-soft);font-size:var(--fs-3)}.hero__meta{margin:var(--s-2) 0 0;font-size:var(--fs-1);color:var(--c-text-muted)}.sources{font-size:var(--fs-2)}.sources li+li{margin-top:var(--s-2)}.crumbs ol{display:flex;flex-wrap:wrap;gap:var(--s-2);list-style:none;margin:0;padding:var(--s-4) 0 0;font-size:var(--fs-1);color:var(--c-text-muted)}.crumbs li+li:before{content:"/";margin-right:var(--s-2);color:var(--c-border-strong)}.crumbs a{color:var(--c-text-soft)}.calc{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-6);margin-block:var(--s-6)}@media(min-width:900px){.calc{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start}}.calc__form{display:grid;gap:var(--s-5);padding:var(--s-5);border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-bg);box-shadow:var(--shadow)}.calc__group{border:0;margin:0;padding:0}.calc__group legend{font-size:var(--fs-1);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-text-muted);margin-bottom:var(--s-3)}.calc__fields{display:grid;gap:var(--s-4)}.calc__actions{display:flex;flex-wrap:wrap;gap:var(--s-3)}.field{display:grid;gap:var(--s-1)}.field label{font-size:var(--fs-2);font-weight:600}.field__control{display:flex;align-items:center;border:1px solid var(--c-border-strong);border-radius:var(--radius-sm);background:var(--c-bg);overflow:hidden}.field__control:focus-within{border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-soft)}.field__control input,.field__control select{flex:1;min-width:0;border:0;padding:.55rem .65rem;font:inherit;font-size:var(--fs-3);font-variant-numeric:tabular-nums;background:transparent;color:inherit}.field__control input:focus,.field__control select:focus{outline:none}.field__suffix{padding-inline:.6rem;color:var(--c-text-muted);font-size:var(--fs-1);border-left:1px solid var(--c-border)}.field__help{margin:0;font-size:var(--fs-1);color:var(--c-text-muted)}.btn{appearance:none;border:1px solid var(--c-border-strong);background:var(--c-bg);color:var(--c-text);font:inherit;font-size:var(--fs-2);font-weight:600;padding:.55rem 1rem;border-radius:var(--radius-sm);cursor:pointer}.btn:hover{background:var(--c-bg-soft)}.btn--primary{background:var(--c-accent);border-color:var(--c-accent);color:#fff}.btn--primary:hover{background:#0c6550}.results{display:grid;gap:var(--s-5);min-height:320px}.results__headline{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--s-4)}.card{padding:var(--s-4);border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-bg-soft)}.card--lg{padding:var(--s-5);background:var(--c-accent-soft);border-color:#bfe3d6}.card__label{display:block;font-size:var(--fs-1);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-text-soft)}.card__value{display:block;margin-top:var(--s-2);font-size:var(--fs-6);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--c-text)}.card__hint{display:block;margin-top:var(--s-2);font-size:var(--fs-1);color:var(--c-text-muted)}.results__breakdown{margin:0;border:1px solid var(--c-border);border-radius:var(--radius);overflow:hidden}.results__breakdown .row{display:flex;justify-content:space-between;gap:var(--s-4);padding:.6rem var(--s-4);font-size:var(--fs-2)}.results__breakdown .row:nth-child(odd){background:var(--c-bg-soft)}.results__breakdown dt{color:var(--c-text-soft)}.results__breakdown .row__hint{display:block;margin-top:2px;font-size:var(--fs-1);color:var(--c-text-muted)}.results__breakdown dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}.results__notes{margin:0;padding:var(--s-4) var(--s-4) var(--s-4) var(--s-6);border-radius:var(--radius);background:var(--c-warn-soft);color:var(--c-warn);font-size:var(--fs-2)}.results__notes li+li{margin-top:var(--s-2)}.wf{margin:0;padding:var(--s-4);border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-bg)}.wf__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-4)}.wf__caption{font-size:var(--fs-2);font-weight:600}.wf__toggle{display:inline-flex;overflow:hidden;border:1px solid var(--c-border-strong);border-radius:var(--radius-sm)}.wf__period{appearance:none;border:0;background:var(--c-bg);color:var(--c-text-soft);font:inherit;font-size:var(--fs-1);padding:.35rem .7rem;cursor:pointer}.wf__period[aria-pressed=true]{background:var(--c-accent);color:#fff}.wf__rows{display:grid;gap:var(--s-3);list-style:none;margin:0;padding:0}.wf__row{display:grid;grid-template-columns:9.5rem minmax(0,1fr) 6rem;gap:var(--s-3);align-items:center}.wf__label{font-size:var(--fs-1);color:var(--c-text-soft)}.wf__row--total .wf__label,.wf__row--subtotal .wf__label{font-weight:600;color:var(--c-text)}.wf__track{position:relative;height:14px;border-radius:999px;background:var(--c-bg-sunken)}.wf__zero{position:absolute;top:-3px;bottom:-3px;width:1px;background:var(--c-border-strong)}.wf__bar{position:absolute;top:0;bottom:0;min-width:2px;border-radius:999px;background:var(--c-accent)}.wf__bar--subtotal{background:var(--c-text-soft)}.wf__bar--delta{background:#5aa38c}.wf__bar--neg{background:var(--c-negative)}.wf__value{font-size:var(--fs-1);font-weight:600;font-variant-numeric:tabular-nums;text-align:right}@media(max-width:560px){.wf__row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label value" "track track";row-gap:var(--s-1)}.wf__label{grid-area:label}.wf__track{grid-area:track}.wf__value{grid-area:value}}.l2-disclaimer{margin:0 0 var(--s-5);padding:var(--s-4);border-left:4px solid var(--c-warn);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--c-warn-soft);color:var(--c-warn);font-size:1rem;line-height:1.55}.table-block{margin:0}.table-scroll{overflow-x:auto;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-bg)}.table-scroll table{width:100%;border-collapse:collapse;font-size:var(--fs-2);font-variant-numeric:tabular-nums}.table-scroll caption{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--c-border);background:var(--c-bg-soft);text-align:left;font-size:var(--fs-2);font-weight:600}.table-scroll th,.table-scroll td{padding:.5rem .65rem;border-bottom:1px solid var(--c-border);text-align:right;white-space:nowrap}.table-scroll th:first-child,.table-scroll td:first-child,.table-scroll th[scope=row]{text-align:left}.table-scroll thead th{font-size:var(--fs-1);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-text-muted)}.table-scroll tbody tr:last-child td{border-bottom:0}.table-scroll td.is-current{background:var(--c-accent-soft);font-weight:700}.table-note{margin-top:var(--s-2);font-size:var(--fs-1);color:var(--c-text-muted)}@media print{.site-header,.site-footer,.ad-slot,.calc__form,.calc__actions,.related,.faq,.crumbs{display:none!important}.wrap{max-width:none;padding:0}.calc{display:block}.table-scroll{overflow:visible;border:0}.table-scroll table{font-size:9pt}.card{break-inside:avoid}a{color:inherit;text-decoration:none}}.prose{max-width:var(--measure);margin-block:var(--s-6)}.prose h2{margin-top:var(--s-7)}.prose table{width:100%;border-collapse:collapse;margin-block:var(--s-5);font-size:var(--fs-2)}.prose th,.prose td{border-bottom:1px solid var(--c-border);padding:.5rem .65rem;text-align:left}.prose th{font-size:var(--fs-1);text-transform:uppercase;letter-spacing:.05em;color:var(--c-text-muted)}.prose code{font-family:var(--font-mono);font-size:.9em;background:var(--c-bg-sunken);padding:.1em .35em;border-radius:4px}.prose pre{background:var(--c-bg-sunken);padding:var(--s-4);border-radius:var(--radius);overflow-x:auto}.prose pre code{background:none;padding:0}.formula{font-family:var(--font-mono);font-size:var(--fs-2);background:var(--c-bg-sunken);border-left:3px solid var(--c-accent);padding:var(--s-3) var(--s-4);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin-block:var(--s-4);overflow-x:auto}.ad-slot{display:grid;place-items:center;border:1px dashed var(--c-border-strong);border-radius:var(--radius);background:var(--c-bg-soft);color:var(--c-text-muted);font-size:var(--fs-1);text-transform:uppercase;letter-spacing:.08em;min-height:280px;margin-block:var(--s-6)}.ad-slot--sidebar{min-height:600px}.ad-slot--anchor{min-height:50px;margin-block:var(--s-4)}.faq{max-width:var(--measure);margin-block:var(--s-7)}.faq__item{border-bottom:1px solid var(--c-border);padding-block:var(--s-3)}.faq__item summary{cursor:pointer;font-weight:600;font-size:var(--fs-3)}.faq__item p{margin:var(--s-3) 0 0;color:var(--c-text-soft)}.related{margin-block:var(--s-7)}.related ul{display:grid;gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));list-style:none;padding:0}.related li a{display:block;padding:var(--s-4);border:1px solid var(--c-border);border-radius:var(--radius);text-decoration:none;color:var(--c-text)}.related li a:hover{border-color:var(--c-accent);background:var(--c-accent-soft)}.related li span{display:block;font-size:var(--fs-1);color:var(--c-text-muted);margin-top:var(--s-1)}.tool-grid{display:grid;gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));list-style:none;padding:0;margin-block:var(--s-5) var(--s-7)}.tool-grid a{display:block;height:100%;padding:var(--s-5);border:1px solid var(--c-border);border-radius:var(--radius);text-decoration:none;color:var(--c-text);background:var(--c-bg);transition:border-color .12s ease,transform .12s ease}.tool-grid a:hover{border-color:var(--c-accent);transform:translateY(-1px)}.tool-grid strong{display:block;font-size:var(--fs-3);margin-bottom:var(--s-2)}.tool-grid span{color:var(--c-text-soft);font-size:var(--fs-2)}.tool-grid li .updated{margin:var(--s-2) 0 0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.updated{font-size:var(--fs-1);color:var(--c-text-muted);margin-top:var(--s-5)}
