.fig-drag{outline:none}.fig-drag .fig-drag-focus{stroke:var(--ui-accent-ink);stroke-width:2.5;fill:none;opacity:0}.fig-drag[data-keyboard]:focus .fig-drag-focus{opacity:1}.fig-drag .fig-drag-ring{transition:r var(--ui-motion-fast, .2s) var(--ui-ease, ease),stroke-opacity var(--ui-motion-fast, .2s) var(--ui-ease, ease)}.fig-drag:hover .fig-drag-ring{stroke-opacity:1}@media(prefers-reduced-motion:reduce){.fig-drag .fig-drag-ring{transition:none}}.fig-drag .fig-drag-halo{opacity:.14;pointer-events:none;transform-box:fill-box;transform-origin:center;transition:transform var(--ui-motion-fast, .2s) var(--ui-ease, ease),opacity var(--ui-motion-fast, .2s) var(--ui-ease, ease)}.fig-drag:hover .fig-drag-halo,.fig-drag[data-keyboard]:focus .fig-drag-halo{opacity:.22;transform:scale(1.3)}.fig-drag .fig-drag-ring{transform-box:fill-box;transform-origin:center}.fig-drag:hover .fig-drag-ring,.fig-drag[data-keyboard]:focus .fig-drag-ring{transform:scale(1.15)}.fig-drag .fig-drag-pulse{pointer-events:none;transform-box:fill-box;transform-origin:center;opacity:0;animation:fig-drag-pulse 1.6s var(--ui-ease, ease-out) .4s 3 both}@keyframes fig-drag-pulse{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}@media(prefers-reduced-motion:reduce){.fig-drag .fig-drag-halo,.fig-drag .fig-drag-ring{transition:none}.fig-drag .fig-drag-pulse{display:none}}.fig-drag-hint{margin:0;max-height:28px;overflow:hidden;padding-top:4px;text-align:center;font-family:var(--ui-font-sans);font-size:13px;line-height:20px;color:var(--ui-ink-3);pointer-events:none;transition:opacity var(--ui-motion-fast, .2s) var(--ui-ease, ease),max-height var(--ui-motion-fast, .2s) var(--ui-ease, ease),padding var(--ui-motion-fast, .2s) var(--ui-ease, ease)}.fig-drag-hint[data-gone]{max-height:0;padding-top:0;opacity:0}@media(prefers-reduced-motion:reduce){.fig-drag-hint{transition:none}}.kit-cells{display:grid;grid-template-columns:repeat(var(--kit-cols),var(--kit-w));justify-content:center;row-gap:var(--kit-row-gap, 0px)}.kit-cells--flow{display:flex;flex-wrap:nowrap;justify-content:flex-start}.kit-cells--flow>.kit-cell{flex:none}.kit-cell{position:relative;box-sizing:border-box;width:var(--kit-w);height:var(--kit-h);margin:0;padding:0;display:flex;align-items:center;justify-content:center;border:var(--kit-bw) solid var(--kit-line);background:var(--ui-surface);color:var(--ui-ink);font-family:var(--ui-font-sans);font-size:var(--kit-fs, 15px);font-weight:600;font-variant-numeric:tabular-nums;line-height:1}.kit-cell--joined{margin-left:calc(var(--kit-bw) * -1)}.kit-cell--joined.kit-cell--rowstart{margin-left:0}.kit-cell--joined.kit-cell--gap{margin-left:4px}.kit-cell--pane{background:var(--ui-pane)}.kit-cell--hatch{background:repeating-linear-gradient(135deg,var(--ui-surface) 0 6px,var(--ui-pane) 6px 12px);color:var(--ui-ink-3)}.kit-cell--tint{background:color-mix(in oklab,var(--kit-tint) 9%,var(--ui-surface));border-color:color-mix(in oklab,var(--kit-tint) 50%,var(--ui-hair))}.kit-cell--dashed{border-style:dashed}.kit-cell--soft{background:var(--ui-accent-track)}.kit-cell--marked{box-shadow:inset 0 0 0 3px var(--ui-accent)}.kit-cell--pulse{animation:kit-beckon 1.6s ease-in-out infinite}.kit-cell--press{cursor:pointer}.kit-cell:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px;z-index:1}.kit-cell__index{position:absolute;top:100%;left:0;right:0;padding-top:2px;text-align:center;font-size:12px;font-weight:400;line-height:1.2;color:var(--ui-ink-3);pointer-events:none}.kit-cell__above{position:absolute;bottom:100%;left:-8px;right:-8px;padding-bottom:1px;text-align:center;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;color:var(--ui-ink-3);pointer-events:none}.kit-cell__below{position:absolute;top:calc(100% + 17px);left:-12px;right:-12px;text-align:center;font-size:13px;font-weight:600;line-height:1.2;white-space:nowrap;color:var(--ui-accent-ink);pointer-events:none}@keyframes kit-beckon{50%{box-shadow:inset 0 0 0 3px var(--ui-accent),0 0 0 4px var(--ui-accent-track)}}@media(prefers-reduced-motion:reduce){.kit-cell,.kit-cell--pulse{transition:none;animation:none}}.blog-note{display:block;padding:.9rem 0;border-top:1px solid var(--home-border);border-bottom:1px solid var(--home-border)}.blog-note-body{color:var(--home-text)}.blog-note-link{display:inline-flex;align-items:center;gap:.25rem;font-weight:600;color:var(--home-blue);text-decoration:none}.blog-note-link:hover{text-decoration:underline}.blog-src{font-size:.68em;line-height:0;margin-left:.1em;font-weight:700}.blog-src a{color:var(--home-blue);text-decoration:none;padding:0 .1em}.blog-src a:hover{text-decoration:underline}.blog-src-tail{white-space:nowrap}.blog-src-group{position:relative;font-size:.72em;line-height:0;margin-left:.08em;white-space:nowrap}.blog-src-group-mark{font:inherit;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--home-subtle);background:none;border:0;padding:.15em .2em;margin:-.15em -.05em;border-radius:3px;cursor:pointer;line-height:1}.blog-src-group-mark:hover,.blog-src-group-mark[aria-expanded=true]{color:var(--home-muted)}.blog-src-group-mark:focus-visible{color:var(--home-muted);outline:2px solid var(--home-blue);outline-offset:1px}.blog-src-popover{position:absolute;top:calc(100% + 1.1em);left:-.5rem;z-index:40;display:flex;flex-direction:column;gap:.35rem;width:-moz-max-content;width:max-content;max-width:min(24rem,calc(100vw - 16px));padding:.6rem .75rem;font-size:.8rem;font-weight:400;line-height:1.4;letter-spacing:normal;text-align:left;white-space:normal;color:var(--home-subtle);background:var(--home-card);border:1px solid var(--home-border);border-radius:8px;box-shadow:0 10px 28px #0f172a24}.blog-src-popover[hidden]{display:none}.blog-src-popover-row{display:grid;grid-template-columns:1.4rem 1fr;gap:.25rem}.blog-src-popover-num{font-weight:700;color:var(--home-subtle);text-decoration:none}.blog-src-popover-num:hover{color:var(--home-text)}.blog-src-popover-link{color:var(--home-text);text-decoration:none;border-bottom:1px solid var(--home-border);overflow-wrap:anywhere}.blog-src-popover-link:hover{border-bottom-color:var(--home-blue)}.blog-src-popover-date{white-space:nowrap}.blog-sources{margin-top:2.2rem;padding-top:.9rem;border-top:1px solid var(--home-border)}.blog-sources-summary{display:flex;flex-wrap:wrap;align-items:baseline;-moz-column-gap:.4rem;column-gap:.4rem;cursor:pointer;list-style:none;color:var(--home-subtle)}.blog-sources-summary::-webkit-details-marker{display:none}.blog-sources-summary:before{content:"";align-self:center;width:.38rem;height:.38rem;margin-right:.15rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .15s ease}.blog-sources[open]>.blog-sources-summary:before{transform:rotate(45deg)}.blog-sources-summary:hover .blog-sources-title,.blog-sources-summary:hover .blog-sources-count{color:var(--home-text)}.blog-sources-summary:focus-visible{outline:2px solid var(--home-blue);outline-offset:3px;border-radius:4px}.blog-sources-title,.blog-sources-count{display:inline;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--home-subtle);margin:0}.blog-sources-checked{font-size:.78rem;color:var(--home-subtle);opacity:.85}.blog-sources-list{list-style:none;margin:.6rem 0 0;padding:0;display:flex;flex-direction:column;gap:.2rem}.blog-sources-item{display:grid;grid-template-columns:1.8rem 1fr;gap:.3rem;font-size:.84rem;line-height:1.35;color:var(--home-subtle);padding:.1rem .35rem;margin:0 -.35rem;border-radius:4px}.blog-sources-item--flash{animation:blog-sources-flash 1.6s ease-out}@keyframes blog-sources-flash{0%,35%{background:var(--home-blue-soft)}to{background:transparent}}@media(prefers-reduced-motion:reduce){.blog-sources-summary:before{transition:none}.blog-sources-item--flash{animation:none;background:var(--home-blue-soft)}}.blog-sources-mark{font-weight:700;color:var(--home-blue)}.blog-sources-link{color:var(--home-text);text-decoration:none;border-bottom:1px solid var(--home-border)}.blog-sources-link:hover{border-bottom-color:var(--home-blue)}.blog-sources-date{white-space:nowrap}.blog-sources-note{margin:.6rem 0 0;font-size:.78rem;color:var(--home-subtle)}.epd-thresholds{--epd-bar-height: 1.7rem;display:flex;flex-direction:column}.epd-thresholds-title{margin-bottom:1.1rem}.epd-thresholds-above{position:relative;height:1.35rem;font-size:.8rem;line-height:1.2}.epd-thresholds-pass-label{position:absolute;bottom:.35rem;transform:translate(-50%);white-space:nowrap;font-weight:600;color:var(--home-text)}.epd-thresholds-total{position:absolute;right:0;bottom:.35rem;color:var(--home-subtle)}.epd-thresholds-track{position:relative}.epd-thresholds-bar{display:flex;height:var(--epd-bar-height);border-radius:8px;overflow:hidden;background:color-mix(in srgb,var(--home-border) 55%,transparent)}.epd-thresholds-segment{display:flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:0;background:var(--home-blue);box-shadow:inset -2px 0 0 var(--blog-figure-surface, var(--home-bg, #fff));color:var(--home-bg, #fff);font-size:.8rem;font-weight:600;line-height:1;transform:scaleX(0);transform-origin:left}.is-revealed .epd-thresholds-segment{animation:epd-threshold-grow .52s cubic-bezier(.22,.61,.36,1) forwards;animation-delay:calc(var(--epd-threshold-index, 0) * .11s)}@keyframes epd-threshold-grow{to{transform:scaleX(1)}}.epd-thresholds-gap{flex:0 0 auto;background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--home-orange) 45%,transparent) 0,color-mix(in srgb,var(--home-orange) 45%,transparent) 4px,color-mix(in srgb,var(--home-orange) 12%,transparent) 4px,color-mix(in srgb,var(--home-orange) 12%,transparent) 8px);opacity:0}.is-revealed .epd-thresholds-gap{animation:epd-threshold-appear .42s ease-out forwards;animation-delay:.9s}@keyframes epd-threshold-appear{to{opacity:1}}.epd-thresholds-mark{position:absolute;top:-.35rem;bottom:-.2rem;width:2px;margin-left:-1px;background:var(--home-text)}.epd-thresholds-below{display:flex;align-items:flex-start;margin-top:.4rem;font-size:.8rem;line-height:1.3}.epd-thresholds-sum-label{flex:0 0 auto;padding-right:.4rem;color:var(--home-muted)}.epd-thresholds-gap-label{flex:0 0 auto;text-align:center;white-space:nowrap;font-weight:600;color:var(--home-amber-strong, var(--home-orange))}.epd-thresholds-key{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.35rem 1.2rem;margin:1rem 0 0;padding:0;list-style:none;font-size:.85rem;line-height:1.35}.epd-thresholds-key-item{display:flex;align-items:baseline;gap:.5rem;min-width:0}.epd-thresholds-key-min{flex:0 0 1.4rem;text-align:right;font-weight:600;color:var(--home-blue)}.epd-thresholds-key-name{color:var(--home-text)}.epd-thresholds-key-value{color:var(--home-subtle);white-space:nowrap}@media(max-width:36rem){.epd-thresholds{--epd-bar-height: 1.55rem}.epd-thresholds-above,.epd-thresholds-below,.epd-thresholds-segment{font-size:.74rem}.epd-thresholds-key-item{flex-wrap:wrap;row-gap:0}.epd-thresholds-key-value{flex-basis:100%;padding-left:1.9rem}}@media(prefers-reduced-motion:reduce){.epd-thresholds-segment,.is-revealed .epd-thresholds-segment{animation:none;transform:scaleX(1)}.epd-thresholds-gap,.is-revealed .epd-thresholds-gap{animation:none;opacity:1}}.step-solution{margin:1.5rem 0}.step-solution__step{display:flex;gap:12px}.step-solution__rail{display:flex;flex:none;flex-direction:column;align-items:center}.step-solution__n{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--ui-hair);border-radius:999px;background:var(--ui-surface);color:var(--ui-accent-ink);font-family:var(--ui-font-sans);font-size:var(--ui-text-s);font-weight:var(--ui-weight-strong);line-height:1;transition:border-color var(--ui-motion-fast)}.step-solution__line{flex:1;width:1px;background:var(--ui-hair)}.step-solution__body{flex:1;min-width:0;padding-bottom:16px}.step-solution__step:not(:last-child) .step-solution__body{border-bottom:1px solid var(--ui-hair)}.step-solution__title{display:flex;align-items:center;gap:8px;width:100%;min-height:32px;text-align:left;color:var(--ui-ink);font-family:var(--ui-font-sans);font-size:var(--ui-text-m);font-weight:var(--ui-weight-strong);line-height:1.35;transition:color var(--ui-motion-fast)}.step-solution__title svg{flex:none;color:var(--ui-ink-3);transition:transform var(--ui-motion-fast)}.step-solution__title[aria-expanded=false] svg{transform:rotate(-90deg)}.step-solution__content{margin-top:8px;color:var(--ui-ink);line-height:1.625}.step-solution__content .katex-display{margin:.75rem 0}@media(hover:hover){.step-solution__step:has(button:hover) .step-solution__n{border-color:var(--ui-ink-3)}.step-solution__title:hover{color:var(--ui-accent-ink)}}.step-solution__n:focus-visible,.step-solution__title:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.step-solution__n,.step-solution__title,.step-solution__title svg{transition:none}}.formula-card{margin:1.5rem 0;border-top:1px solid var(--ui-hair);border-bottom:1px solid var(--ui-hair);color:var(--ui-ink)}.formula-card__title{padding-top:.875rem;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ui-accent-ink)}.formula-card__formula{padding:.75rem 0 1rem;text-align:center;overflow-x:auto}.formula-card__vars{width:100%;margin-bottom:.5rem;font-size:.875rem;border-top:1px solid var(--ui-hair)}.formula-card__vars tr+tr{border-top:1px solid var(--ui-hair)}.formula-card__vars td{padding:.4rem 0;vertical-align:baseline}.formula-card__symbol{width:3rem;padding-right:.75rem}.formula-card__name{min-width:7rem;color:var(--ui-ink-2)}.formula-card__unit{padding-left:.75rem;text-align:right;font-family:var(--font-mono, ui-monospace, monospace);font-size:.75rem;color:var(--ui-ink-3)}
