.prose .lf{margin-block:var(--s-6)}.prose .lf-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.prose .lf svg{display:block;width:100%;min-width:40rem;height:auto}.prose .lf--compact svg{min-width:0;max-width:25rem;margin-inline:auto}.prose .lf figcaption{margin-top:var(--s-2);font-family:var(--f-body);font-size:var(--fs-xs);line-height:1.5;letter-spacing:var(--ls-ko);word-break:keep-all;color:var(--c-ink-3)}.lf-box{fill:var(--c-bg);stroke:var(--c-ink-2);stroke-width:.5}.lf-box--key{fill:var(--c-figure-key);stroke:var(--c-figure-key);stroke-width:.5}.lf-chip{fill:none;stroke:var(--c-ink-2);stroke-width:.5}.lf-group{fill:none;stroke:var(--c-ink-3);stroke-width:1;stroke-dasharray:1 3;stroke-linecap:round}.lf-t{font-family:var(--f-body);font-size:13px;font-weight:600;fill:var(--c-ink)}.lf-t-sm{font-family:var(--f-body);font-size:12px;fill:var(--c-ink-2)}.lf-t--on,.lf-t-sm--on{fill:var(--c-bg)}.lf-m{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;fill:var(--c-ink-3)}.lf-m.lf-m--on{fill:var(--c-bg)}.lf-line{fill:none;stroke:var(--c-ink-2);stroke-width:1}.lf-line--key{fill:none;stroke:var(--c-ink);stroke-width:1}.lf-dash{fill:none;stroke:var(--c-ink-3);stroke-width:1;stroke-dasharray:1 3;stroke-linecap:round}.lf-fill{fill:var(--c-ink)}.prose .lf-bars{display:grid;gap:var(--s-3);margin-block:var(--s-5)}.prose .lf-bar{display:grid;grid-template-columns:10rem 1fr 4.5rem;align-items:center;gap:var(--s-3)}.prose .lf-bar__name{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--c-ink-2)}.prose .lf-bar__track{height:20px;background:var(--c-bg-2);border:var(--border)}.prose .lf-bar__fill{height:100%;min-width:3px;background:var(--c-ink-3)}.prose .lf-bar__fill--key{background:var(--c-ink)}.prose .lf-bar__val{font-family:var(--f-mono);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;text-align:right;color:var(--c-ink)}@media(max-width:560px){.prose .lf-bar{grid-template-columns:7.5rem 1fr 3.5rem;gap:var(--s-2)}}.prose .lf-steps fieldset{display:flex;flex-wrap:wrap;gap:var(--s-2);margin:0 0 var(--s-3);padding:0;border:0}.prose .lf-steps legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.prose .lf-steps input{position:absolute;opacity:0;pointer-events:none}.prose .lf-steps label{padding:var(--s-1) var(--s-3);border:.5px solid var(--c-ink-2);border-radius:var(--r-sm);font-family:var(--f-body);font-size:var(--fs-xs);color:var(--c-ink-2);cursor:pointer}.prose .lf-steps input:checked+label{background:var(--c-ink);border-color:var(--c-ink);color:var(--c-bg)}.prose .lf-steps input:focus-visible+label{outline:1px solid var(--c-ink);outline-offset:2px}.prose .lf-step-text{display:none;margin-top:var(--s-3)}.prose .lf-step-text strong{display:block;margin-bottom:var(--s-1)}.prose .lf-step-text p{margin:0}.lf-steps g[data-s] rect,.lf-steps g[data-s] text{transition:fill var(--t) var(--ease),stroke var(--t) var(--ease)}.lf-steps:has(input[value="1"]:checked) g[data-s~="1"] rect{stroke:var(--c-ink);stroke-width:1}.lf-steps:has(input[value="1"]:checked) g[data-k~="1"] rect{fill:var(--c-ink);stroke:var(--c-ink)}.lf-steps:has(input[value="1"]:checked) g[data-k~="1"] text{fill:var(--c-bg)}.lf-steps:has(input[value="1"]:checked) [data-e~="1"]{stroke:var(--c-ink);stroke-width:2}.prose .lf-steps:has(input[value="1"]:checked) .lf-step-text[data-step="1"]{display:block}.lf-steps:has(input[value="2"]:checked) g[data-s~="2"] rect{stroke:var(--c-ink);stroke-width:1}.lf-steps:has(input[value="2"]:checked) g[data-k~="2"] rect{fill:var(--c-ink);stroke:var(--c-ink)}.lf-steps:has(input[value="2"]:checked) g[data-k~="2"] text{fill:var(--c-bg)}.lf-steps:has(input[value="2"]:checked) [data-e~="2"]{stroke:var(--c-ink);stroke-width:2}.prose .lf-steps:has(input[value="2"]:checked) .lf-step-text[data-step="2"]{display:block}.lf-steps:has(input[value="3"]:checked) g[data-s~="3"] rect{stroke:var(--c-ink);stroke-width:1}.lf-steps:has(input[value="3"]:checked) g[data-k~="3"] rect{fill:var(--c-ink);stroke:var(--c-ink)}.lf-steps:has(input[value="3"]:checked) g[data-k~="3"] text{fill:var(--c-bg)}.lf-steps:has(input[value="3"]:checked) [data-e~="3"]{stroke:var(--c-ink);stroke-width:2}.prose .lf-steps:has(input[value="3"]:checked) .lf-step-text[data-step="3"]{display:block}.lf-steps:has(input[value="4"]:checked) g[data-s~="4"] rect{stroke:var(--c-ink);stroke-width:1}.lf-steps:has(input[value="4"]:checked) g[data-k~="4"] rect{fill:var(--c-ink);stroke:var(--c-ink)}.lf-steps:has(input[value="4"]:checked) g[data-k~="4"] text{fill:var(--c-bg)}.lf-steps:has(input[value="4"]:checked) [data-e~="4"]{stroke:var(--c-ink);stroke-width:2}.prose .lf-steps:has(input[value="4"]:checked) .lf-step-text[data-step="4"]{display:block}.lf-steps:has(input[value="5"]:checked) g[data-s~="5"] rect{stroke:var(--c-ink);stroke-width:1}.lf-steps:has(input[value="5"]:checked) g[data-k~="5"] rect{fill:var(--c-ink);stroke:var(--c-ink)}.lf-steps:has(input[value="5"]:checked) g[data-k~="5"] text{fill:var(--c-bg)}.lf-steps:has(input[value="5"]:checked) [data-e~="5"]{stroke:var(--c-ink);stroke-width:2}.prose .lf-steps:has(input[value="5"]:checked) .lf-step-text[data-step="5"]{display:block}.lf-steps:has(input[value="6"]:checked) g[data-s~="6"] rect{stroke:var(--c-ink);stroke-width:1}.lf-steps:has(input[value="6"]:checked) g[data-k~="6"] rect{fill:var(--c-ink);stroke:var(--c-ink)}.lf-steps:has(input[value="6"]:checked) g[data-k~="6"] text{fill:var(--c-bg)}.lf-steps:has(input[value="6"]:checked) [data-e~="6"]{stroke:var(--c-ink);stroke-width:2}.prose .lf-steps:has(input[value="6"]:checked) .lf-step-text[data-step="6"]{display:block}
