:root{color-scheme: light;--ground: #EEF0EC;--surface: #FFFFFF;--sunk: #E3E7E1;--ink: #12161C;--ink-2: #3F473D;--muted: #566053;--line: #C6CCC2;--line-strong: #7D8779;--signal: #FFC400;--signal-press: #E6AF00;--error: #B3261E;--error-bg: #FCEAE8;--focus: #12161C;--block: #12161C;--block-2: #2A3038;--edge: #12161C;--on-signal: #12161C;--on-ink: #FFFFFF;--on-ink-2: #C9D0C6;--font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 72px;--gutter: 16px;--t-result: 3rem;--t-h1: 1.875rem;--t-h2: 1.5rem;--t-h3: 1.1875rem;--t-body: 1.0625rem}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){color-scheme: dark;--ground: #101412;--surface: #181D1A;--sunk: #20261F;--ink: #E9EDE6;--ink-2: #C2CBBE;--muted: #A1AC9D;--line: #2F372F;--line-strong: #707C6B;--signal: #FFC400;--signal-press: #E6AF00;--error: #FFB4AB;--error-bg: #3A1B18;--focus: #E9EDE6;--block: #070A09;--block-2: #1F2521;--edge: #707C6B;--on-signal: #12161C;--on-ink: #FFFFFF;--on-ink-2: #C9D0C6}}:root[data-theme="dark"]{color-scheme: dark;--ground: #101412;--surface: #181D1A;--sunk: #20261F;--ink: #E9EDE6;--ink-2: #C2CBBE;--muted: #A1AC9D;--line: #2F372F;--line-strong: #707C6B;--signal: #FFC400;--signal-press: #E6AF00;--error: #FFB4AB;--error-bg: #3A1B18;--focus: #E9EDE6;--block: #070A09;--block-2: #1F2521;--edge: #707C6B;--on-signal: #12161C;--on-ink: #FFFFFF;--on-ink-2: #C9D0C6}@media (min-width: 700px){:root{--gutter: 24px}}@media (min-width: 1000px){:root{--gutter: 32px;--t-result: 4.25rem;--t-h1: 2.75rem;--t-h2: 1.875rem;--t-h3: 1.25rem;--t-body: 1.125rem}}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;scrollbar-color: var(--line-strong) var(--ground)}::selection{background: var(--signal);color: var(--on-signal)}input{caret-color: var(--ink)}body{margin: 0;background: var(--ground);color: var(--ink);font: 400 var(--t-body)/1.6 var(--font);font-variant-numeric: tabular-nums lining-nums;display: flex;flex-direction: column;min-height: 100vh}main{flex: 1;padding-top: var(--s-4);padding-bottom: var(--s-7);width: 100%}.wrap{max-width: 1120px;margin: 0 auto;padding-left: var(--gutter);padding-right: var(--gutter)}a{color: var(--ink);text-decoration: underline;text-underline-offset: 2px;text-decoration-thickness: 1px}a:hover{text-decoration-thickness: 2px}:focus-visible{outline: 2px solid var(--focus);outline-offset: 1px;box-shadow: 0 0 0 4px var(--signal)}.skip{position: absolute;left: -999px;top: 0;background: var(--signal);color: var(--on-signal);padding: var(--s-3) var(--s-4);z-index: 10;font-weight: 700}.skip:focus{left: var(--s-2);top: var(--s-2)}h1{font-size: var(--t-h1);font-weight: 800;line-height: 1.1;letter-spacing: -0.02em;margin: var(--s-4) 0 var(--s-3);max-width: 22ch}h2{font-size: var(--t-h2);font-weight: 750;line-height: 1.2;margin: var(--s-7) 0 var(--s-4)}h1,h2,h3{text-wrap: balance}.prose p,.tool-content p,.lead{text-wrap: pretty}h3{font-size: var(--t-h3);font-weight: 700;line-height: 1.3;margin: var(--s-5) 0 var(--s-2)}p{margin: 0 0 var(--s-5)}.lead{font-size: var(--t-body);color: var(--ink-2);max-width: 60ch;margin-bottom: var(--s-5)}.label{font-size: .8125rem;font-weight: 700;text-transform: uppercase;letter-spacing: .06em;line-height: 1.2;margin: 0}small,.small{font-size: .875rem}.site-header{border-bottom: 1px solid var(--line);background: var(--ground)}.site-header__in{display: grid;grid-template-columns: 1fr auto;grid-template-areas: "brand toggle" "nav nav";align-items: center;column-gap: var(--s-4)}.site-header__tools{display: contents}.brand{grid-area: brand}.theme-toggle{grid-area: toggle}.site-header nav{grid-area: nav}@media (min-width: 700px){.site-header__in{grid-template-columns: auto 1fr auto;grid-template-areas: "brand nav toggle";column-gap: var(--s-5)}.site-header nav{justify-self: end}}.brand{display: inline-flex;align-items: center;min-height: 56px;color: var(--ink);text-decoration: none;font-weight: 500;font-size: 1.25rem;letter-spacing: -0.01em}.brand b{font-weight: 800}.brand__dash{width: 14px;height: 4px;background: var(--signal);margin: 0 2px 0 4px;border-radius: 1px}.brand__io{color: var(--muted);font-weight: 500}.nav{list-style: none;margin: 0;padding: 0 0 var(--s-1);display: flex;flex-wrap: wrap;gap: 0 var(--s-4)}.nav a{display: inline-flex;align-items: center;min-height: 44px;font-size: 1rem;font-weight: 500}.nav a[aria-current]{font-weight: 800;text-decoration-thickness: 2px}@media (min-width: 700px){.nav{padding: 0;gap: 0 var(--s-5)}}.site-footer{background: var(--block);color: var(--on-ink);padding: var(--s-7) 0 var(--s-5);margin-top: var(--s-4)}.site-footer a{color: var(--on-ink)}.foot-cols{display: grid;gap: var(--s-6)}@media (max-width: 699px){.foot-cols{grid-template-columns: 1fr 1fr;gap: var(--s-5) var(--s-4)}.foot-cols>div:first-child{grid-column: 1 / -1}.foot-cols>div:first-child ul{display: grid;grid-template-columns: 1fr 1fr;column-gap: var(--s-4)}}@media (min-width: 700px){.foot-cols{grid-template-columns: 2fr 1fr 1fr}.foot-cols>div:first-child ul{columns: 2;column-gap: var(--s-5)}.foot-cols li{break-inside: avoid}}.site-footer h2{font-size: .8125rem;text-transform: uppercase;letter-spacing: .06em;font-weight: 700;margin: 0 0 var(--s-2);color: var(--on-ink-2)}.site-footer ul{list-style: none;margin: 0;padding: 0}.site-footer li a{display: inline-flex;align-items: center;min-height: 44px;font-size: 1rem}.foot-note,.site-footer p{font-size: .875rem;color: var(--on-ink-2);margin: var(--s-6) 0 var(--s-2);max-width: 60ch}.copy{margin-top: var(--s-3) !important}.dash{height: 3px;background: repeating-linear-gradient(90deg,var(--signal) 0 12px,transparent 12px 20px)}.dash--foot{margin-top: var(--s-5);opacity: 1}img,video,svg,iframe,canvas{max-width: 100%;height: auto}figure{margin: 0 0 var(--s-5);max-width: 68ch}figure img{display: block;border-radius: 6px}figcaption{font-size: .875rem;color: var(--muted);margin-top: var(--s-2);line-height: 1.45}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) img{filter: brightness(.88)}}:root[data-theme="dark"] img{filter: brightness(.88)}.theme-toggle{display: inline-flex;align-items: center;justify-content: center;min-width: 44px;min-height: 44px;padding: 0;background: none;color: var(--ink);border: 1.5px solid var(--line-strong);border-radius: 6px;cursor: pointer;transition: background-color .12s}.theme-toggle:hover{background: var(--sunk)}.theme-toggle svg{width: 20px;height: 20px;fill: none;stroke: currentColor;stroke-width: 2;stroke-linecap: round}.theme-toggle .i-sun{display: none}:root[data-theme="dark"] .theme-toggle .i-sun{display: block}:root[data-theme="dark"] .theme-toggle .i-moon{display: none}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .theme-toggle .i-sun{display: block}:root:not([data-theme="light"]) .theme-toggle .i-moon{display: none}}.crumbs{font-size: .875rem;color: var(--muted)}.crumbs ol{list-style: none;margin: 0;padding: 0;display: flex;flex-wrap: wrap}.crumbs li + li::before{content: "›";margin: 0 var(--s-2)}.crumbs a{display: inline-block;padding: var(--s-2) 0;color: var(--muted)}.crumbs li:last-child{color: var(--ink-2)}.meta{font-size: .875rem;color: var(--muted);margin-bottom: var(--s-5)}.tool{display: grid;grid-template-columns: minmax(0,1fr);gap: var(--s-5);align-items: start}.tool__form,.tool__result{min-width: 0}@media (min-width: 700px) and (max-width: 999px){.tool__form,.tool__result{max-width: 560px}}@media (min-width: 1000px){.tool{grid-template-columns: minmax(0,440px) minmax(0,1fr);gap: var(--s-6)}.tool__result{position: sticky;top: var(--s-5)}}.card{background: var(--surface);border: 1px solid var(--line);border-radius: 6px;padding: var(--s-4)}.field{margin-bottom: 20px}.field label,.field .lab{display: block;font-size: .875rem;font-weight: 600;margin-bottom: var(--s-2)}.inp{position: relative}.inp input,.inp select,.field select{width: 100%;height: 48px;font: 500 1rem/1.4 var(--font);font-variant-numeric: tabular-nums;color: var(--ink);background: var(--surface);border: 1.5px solid var(--line-strong);border-radius: 6px;padding: 0 var(--s-3)}.inp input:hover,.field select:hover{border-color: var(--ink)}.inp input.has-unit{padding-right: 64px}.unit{position: absolute;right: var(--s-3);top: 0;height: 48px;display: flex;align-items: center;color: var(--muted);font-size: .875rem;pointer-events: none}.field select{appearance: auto}input[aria-invalid="true"]{border: 2px solid var(--error)}.hint{font-size: .875rem;color: var(--muted);margin: var(--s-2) 0 0;line-height: 1.45}.check{display: flex;align-items: center;gap: var(--s-3);min-height: 48px;margin-bottom: 20px;font-size: 1rem;font-weight: 500}.check input{width: 24px;height: 24px;accent-color: var(--ink);margin: 0;flex: none}.check label{margin: 0;font-size: 1rem;font-weight: 500}.opts{border-top: 1px solid var(--line);margin: 0 0 var(--s-3);padding-top: var(--s-1)}.opts>summary{min-height: 48px;display: flex;align-items: center;justify-content: space-between;cursor: pointer;font-weight: 700;list-style: none}.opts>summary::-webkit-details-marker{display: none}.opts>summary::after,.faq summary::after{content: "+";font-size: 1.5rem;font-weight: 500;line-height: 1}.opts[open]>summary::after,.faq details[open]>summary::after{content: "−"}.opts>.field:first-of-type,.opts>.check:first-of-type{margin-top: var(--s-2)}.actions{display: flex;flex-direction: column;align-items: stretch;gap: var(--s-3)}.actions .btn{flex: none;white-space: nowrap}.btn{min-height: 48px;width: 100%;padding: 0 var(--s-5);font: 700 1rem/1.4 var(--font);color: var(--on-signal);background: var(--signal);border: 2px solid var(--on-signal);border-radius: 6px;cursor: pointer;transition: background-color .12s}.btn:hover{background: var(--signal-press)}.btn:active{background: var(--signal-press);transform: translateY(1px)}@media (min-width: 700px){.actions{flex-direction: row;align-items: center;gap: var(--s-3)}.actions .btn{flex: 0 0 auto}.btn{width: auto}}.linkbtn{min-height: 48px;padding: 0 var(--s-5);background: none;border: 2px solid var(--ink);border-radius: 6px;font: 700 1rem/1.4 var(--font);color: var(--ink);cursor: pointer;transition: background-color .12s}.linkbtn:hover{background: var(--sunk)}.note{font-size: .875rem;color: var(--muted);margin: var(--s-4) 0 0}.err{margin-top: var(--s-4);padding: var(--s-3) var(--s-4);background: var(--error-bg);color: var(--error);border: 1px solid var(--error);border-radius: 6px;font-weight: 600}.err[hidden],.prompt[hidden],.result[hidden],[hidden]{display: none !important}.prompt{margin-top: var(--s-4);padding: var(--s-4);background: var(--sunk);border-radius: 6px;color: var(--ink-2);font-size: 1rem}.tool__result{min-height: 300px}.tool__result>.err:first-child,.tool__result>.prompt:first-child{margin-top: 0}fieldset.grp{border: 0;border-top: 1px solid var(--line);margin: 0 0 var(--s-3);padding: var(--s-3) 0 0;min-width: 0}fieldset.grp legend{font-size: var(--t-h3);font-weight: 700;line-height: 1.3;padding: 0 var(--s-2) 0 0;margin-bottom: var(--s-2)}.result{background: var(--block);color: var(--on-ink);border: 2px solid var(--edge);border-radius: 6px;padding: var(--s-5)}.result .label{color: var(--on-ink-2);padding-bottom: var(--s-3)}.result .dash{margin-bottom: var(--s-4)}.big{display: flex;flex-wrap: wrap;align-items: baseline;gap: 0 var(--s-2);margin: 0 0 var(--s-4);line-height: 1}.big output{font-size: var(--t-result);font-weight: 800;letter-spacing: -0.02em;color: var(--on-ink);overflow-wrap: anywhere}.big .cur,.big .per{font-size: 1.5rem;color: var(--on-ink-2);font-weight: 500}.sub{margin: 0}.sub>div{display: flex;justify-content: space-between;gap: var(--s-4);padding: var(--s-3) 0;border-top: 1px solid rgba(255,255,255,.25)}.sub dt{color: var(--on-ink-2);font-size: 1rem}.sub dd{margin: 0;font-weight: 700;text-align: right;font-size: 1.0625rem}.sub .u{font-weight: 400;color: var(--on-ink-2);font-size: .875rem}.result .t,.result .prov{font-size: .875rem;color: var(--on-ink-2);margin: var(--s-3) 0 0;line-height: 1.45}.result .t:empty{display: none}.result .tablewrap{margin-top: var(--s-4)}.result table{background: transparent;color: var(--on-ink)}.result caption,.result th,.result td{color: var(--on-ink);border-color: rgba(255,255,255,.25)}.result thead th{background: var(--block-2)}.result th:first-child,.result td:first-child{background: var(--block)}.result thead th:first-child{background: var(--block-2)}.tool-content{margin-top: var(--s-6)}.prose{max-width: 68ch}.tool-content>:not(.listing){max-width: 68ch}.prose h2,.tool-content h2,.listing h2{position: relative;padding-top: var(--s-4)}.prose h2::before,.tool-content h2::before,.listing h2::before{content: "";position: absolute;top: 0;left: 0;width: 24px;height: 3px;background: var(--signal)}.prose ul,.prose ol,.tool-content ul,.tool-content ol{padding-left: 24px;margin: 0 0 var(--s-5)}.prose li,.tool-content li{margin-bottom: var(--s-2)}.prose ul.rows,.tool-content ul.rows{padding-left: 0;margin: 0}.prose ul.rows li,.tool-content ul.rows li{margin-bottom: 0}.prose figure img{width: 100%;aspect-ratio: 4 / 3;object-fit: cover;object-position: 50% 32%}@media (min-width: 700px){.prose figure img{aspect-ratio: 16 / 9;object-position: 50% 34%}}.tablewrap{scrollbar-width: auto;scrollbar-color: var(--line-strong) var(--sunk)}.tablewrap table:has(th:nth-child(4)){min-width: 34rem}.tablewrap caption,.tool__result caption{white-space: normal;overflow-wrap: anywhere}.result .tablewrap td:nth-child(2){white-space: normal}#res-label:focus-visible{outline-offset: 4px}.tablewrap td:nth-child(2){white-space: nowrap}.tablewrap td{vertical-align: top}.example{background: var(--sunk);border: 1px solid var(--line-strong);border-radius: 6px;padding: var(--s-4);margin: 0 0 var(--s-5)}.example>:last-child{margin-bottom: 0}.example h3{margin-top: 0}.formula{position: relative;font-size: 1.0625rem;font-weight: 600;line-height: 1.7;background: var(--surface);border: 1px solid var(--line);padding: var(--s-5) var(--s-4) var(--s-4);border-radius: 6px;overflow-wrap: break-word;text-wrap: balance;overflow-x: auto}.formula::before{content: "";position: absolute;top: 0;left: var(--s-4);width: 24px;height: 3px;background: var(--signal)}.keyanswer{background: var(--surface);border: 1px solid var(--line);border-radius: 6px;padding: var(--s-4);position: relative;margin-bottom: var(--s-5);padding-top: var(--s-5);max-width: 68ch}.keyanswer::before{content: "";position: absolute;top: 0;left: var(--s-4);width: 24px;height: 3px;background: var(--signal)}.keyanswer p{margin: 0;font-weight: 500}.tablewrap{overflow-x: auto;margin: 0 0 var(--s-5);max-width: 100%}table{border-collapse: collapse;width: 100%;background: var(--surface);font-size: 1rem}caption{text-align: left;font-weight: 700;padding: 0 0 var(--s-2)}th,td{padding: var(--s-2) var(--s-3);border-bottom: 1px solid var(--line);text-align: right}th:first-child,td:first-child{text-align: left;position: sticky;left: 0;background: var(--surface)}thead th:first-child{background: var(--sunk)}thead th{background: var(--sunk);font-size: .8125rem;text-transform: uppercase;letter-spacing: .06em}tbody th{font-weight: 600}.steps{list-style: none;padding: 0 !important;display: grid;gap: var(--s-4);counter-reset: s}.steps li{counter-increment: s;padding-left: 40px;position: relative;margin: 0}.steps li::before{content: counter(s);position: absolute;left: 0;top: 0;width: 28px;height: 28px;background: var(--ink);color: var(--ground);border-radius: 4px;font-weight: 800;text-align: center;line-height: 28px;font-size: .9375rem}.faq details{border-top: 1px solid var(--line)}.faq details:last-child{border-bottom: 1px solid var(--line)}.faq summary{min-height: 48px;display: flex;align-items: center;justify-content: space-between;gap: var(--s-4);cursor: pointer;font-weight: 700;list-style: none;padding: var(--s-2) 0}.faq summary::-webkit-details-marker{display: none}.faq details>p{max-width: 68ch}.faq{margin-bottom: var(--s-5)}.listing{margin-top: var(--s-7);max-width: 1120px}.listing h2{margin-top: 0}.rows{list-style: none;margin: 0;padding: 0}.row{display: grid;grid-template-columns: 1fr auto;gap: 0 var(--s-4);padding: var(--s-4) 0;border-top: 1px solid var(--line);text-decoration: none;min-height: 48px}.row__t{grid-column: 1;font-size: var(--t-h3);font-weight: 700;line-height: 1.3}.row__d{grid-column: 1;color: var(--ink-2);font-size: 1rem;line-height: 1.45;margin-top: 2px}.row__a{grid-column: 2;grid-row: 1 / span 2;align-self: center;font-size: 1.25rem;transition: transform .12s}.row:hover .row__t,.row:focus-visible .row__t{text-decoration: underline}.row:hover .row__a,.row:focus-visible .row__a{transform: translateX(4px)}@media (min-width: 700px){.rows{display: grid;grid-template-columns: 1fr 1fr;column-gap: var(--s-6)}}.more{margin-top: var(--s-4);font-weight: 500}.article{display: grid;grid-template-columns: minmax(0,1fr);gap: 0 var(--s-6)}.toc{margin-bottom: var(--s-5);max-width: 68ch}.toc--m{background: var(--surface);border: 1px solid var(--line);border-radius: 6px;padding: 0 var(--s-4)}.toc--m ol{padding: var(--s-1) var(--s-4) var(--s-2) 28px}.toc--m summary{min-height: 48px;display: flex;align-items: center;justify-content: space-between;font-weight: 700;cursor: pointer;list-style: none}.toc--m summary::-webkit-details-marker{display: none}.toc--m summary::after{content: "+";font-size: 1.5rem;font-weight: 500;line-height: 1}.toc--m[open] summary::after{content: "−"}.toc ol{margin: 0 0 var(--s-3);padding-left: 24px}.toc li{margin-bottom: var(--s-1)}.toc--d{display: none}@media (min-width: 1100px){}@media (min-width: 1600px){.toc--m{display: none}.toc--d{display: block;position: absolute;left: -232px;top: 0;width: 200px}.article__main{position: relative}}.article__main{max-width: 680px;min-width: 0}.article .prose{max-width: 68ch}.article h1{max-width: none}.slot:empty{display: none}.slot{margin: var(--s-6) 0;background: var(--sunk);border-radius: 6px;padding: var(--s-3)}.slot::before{content: attr(data-label);display: block;font-size: .8125rem;color: var(--muted);margin-bottom: var(--s-2)}.slot--rail,.slot[data-slot="ad-rail"]{display: none}@media (min-width: 1280px){.slot[data-slot="ad-rail"]:not(:empty){display: block;position: sticky;top: var(--s-5)}}@media print{:root,:root[data-theme="dark"]{--ground: #fff;--surface: #fff;--sunk: #fff;--ink: #000;--ink-2: #000;--muted: #000;--line: #999;--line-strong: #000;--block: #fff;--block-2: #eee;--on-ink: #000;--on-ink-2: #000}.theme-toggle{display: none}img{filter: none !important}}@media (prefers-reduced-motion: reduce){.row__a,.btn{transition: none}.btn:active{transform: none}.row:hover .row__a,.row:focus-visible .row__a{transform: none}}noscript .err{display: block !important}