.line-figure{gap:var(--sp-12);justify-items:center;margin:0;display:grid}.line-figure svg{block-size:auto;inline-size:100%;max-inline-size:520px;display:block;overflow:visible}.line-figure.is-full svg{max-inline-size:640px}.line-figure figcaption{text-align:center;border-block-start:var(--bw) dashed var(--border-dash);color:var(--ink-muted);justify-self:stretch;padding-block-start:var(--sp-12)}.line-figure.not-found-visual{inline-size:100%;max-inline-size:40rem;margin-inline:auto}.line-figure path,.line-figure circle{vector-effect:non-scaling-stroke}.lf-floor{fill:var(--surface-tint);stroke:var(--border-dash);stroke-width:1px;stroke-dasharray:var(--sp-4) var(--sp-4)}.lf-front,.lf-side,.lf-top,.lf-slab-front,.lf-slab-side,.lf-slab-top,.lf-body,.lf-fin,.lf-cloud,.lf-bubble,.lf-page,.lf-pen,.lf-plug,.lf-socket,.lf-cup,.lf-globe{stroke:var(--ink);stroke-width:1.25px;stroke-linejoin:round}.lf-front,.lf-body,.lf-cloud,.lf-bubble,.lf-page,.lf-pen,.lf-plug,.lf-socket,.lf-globe{fill:var(--surface)}.lf-side,.lf-slab-side,.lf-fin,.lf-cup{fill:var(--surface-sunken)}.lf-top,.lf-slab-top,.lf-slab-front{fill:var(--surface-tint)}.lf-slab-top{stroke:var(--border-dash);stroke-dasharray:var(--sp-4) var(--sp-4)}.lf-unit,.lf-grat,.lf-spine{fill:none;stroke:var(--line);stroke-width:1px}.lf-vent{stroke:var(--border-dash);stroke-width:1px}.lf-led,.lf-dot{fill:var(--line)}.lf-led.is-live,.lf-pin,.lf-typing,.lf-seg,.lf-window,.lf-mic{fill:var(--accent)}.lf-led.is-alarm{fill:var(--danger)}.lf-window,.lf-mic{fill:var(--surface);stroke:var(--accent);stroke-width:1.5px}.lf-dim,.lf-dim-tick{stroke:var(--accent);stroke-width:1px}.lf-dim,.lf-fold,.lf-trail-base{stroke-dasharray:var(--sp-4) var(--sp-4)}.lf-arc,.lf-cable,.lf-band,.lf-ink,.lf-trail-base,.lf-fold,.lf-needle,.lf-dial,.lf-flap,.lf-hatch,.lf-pad,.lf-coin,.lf-prompt,.lf-text,.lf-spark{fill:none}.lf-arc{stroke:var(--accent);stroke-width:1px}.lf-cable,.lf-band{stroke:var(--ink);stroke-width:1.25px;stroke-linecap:round}.lf-hatch,.lf-pad,.lf-flap,.lf-dial{stroke:var(--ink);stroke-width:1px}.lf-pad{fill:var(--accent-soft);stroke:var(--accent)}.lf-trail-base,.lf-fold{stroke:var(--border-dash);stroke-width:1px}.lf-coin{fill:var(--surface);stroke:var(--accent);stroke-width:1.25px}.lf-seg{stroke:none}.lf-needle{stroke:var(--accent-ink);stroke-width:1.5px;stroke-linecap:round}.lf-prompt{stroke:var(--accent);stroke-width:1.25px}.lf-text{stroke:var(--line);stroke-width:2px;stroke-linecap:round}.lf-text.is-out{stroke:var(--border-dash)}.lf-cursor{fill:var(--accent)}.lf-flame{fill:none;stroke:var(--accent);stroke-width:1.25px;stroke-linejoin:round}.lf-ink{stroke:var(--accent);stroke-width:1.5px;stroke-linecap:round}.lf-spark{stroke:var(--accent);stroke-width:1.25px;stroke-linecap:round}.lf-run,.lf-trail{fill:none;stroke:var(--accent);stroke-width:2.4px;stroke-linecap:round;stroke-dasharray:6 100;stroke-dashoffset:6px}.lf-led.is-live,.lf-pin,.lf-typing,.lf-seg,.lf-cursor,.lf-run,.lf-trail{filter:drop-shadow(0 0 var(--glow-r) var(--glow-ok))}.lf-led.is-alarm,.lf-spark{filter:drop-shadow(0 0 var(--glow-r) var(--glow-bad))}@media (prefers-reduced-motion:no-preference){.lf-s{--gap:calc(var(--p,0) * 1%)}.lf-trail{stroke-dasharray:3 7;stroke-dashoffset:0;stroke-width:1.5px}@supports (animation-timeline:view()){.line-figure[data-visual]{view-timeline:--fig block}.line-figure[data-visual]:not([data-draw]) .lf-s{animation:linear both lf-in;animation-timeline:--fig;animation-range:entry var(--gap) entry calc(var(--gap) + 50%)}.line-figure[data-visual]:not([data-draw]) .lf-s.lf-d{animation-name:lf-stroke}.line-figure[data-visual]:not([data-draw]) .lf-caption{animation:linear both lf-in;animation-timeline:--fig;animation-range:entry 50%}}.line-figure[data-draw] .lf-s{animation:lf-in calc(var(--dur-draw) / 2) var(--ease-out) calc(var(--p,0) / 50 * var(--dur-draw) / 2) both}.line-figure[data-draw] .lf-s.lf-d{animation-name:lf-stroke}.line-figure[data-draw] .lf-caption{animation:lf-in calc(var(--dur-draw) / 2) var(--ease-out) calc(var(--dur-draw) / 2) both}.line-figure[data-draw=pending] .lf-s,.line-figure[data-draw=pending] .lf-caption{animation-play-state:paused}.line-figure[data-idle] .lf-l.lf-led.is-live,.line-figure[data-idle] .lf-l.lf-pin{animation:lf-blink calc(var(--dur-idle) / 3) var(--ease-in-out) infinite;animation-delay:calc(var(--dur-idle) / 3 * var(--k,0))}.line-figure[data-idle] .lf-l.lf-led.is-alarm,.line-figure[data-idle] .lf-l.lf-spark{animation:lf-blink var(--dur-blink) steps(1, end) infinite}.line-figure[data-idle] .lf-l.lf-run{animation:lf-run var(--dur-idle) var(--ease-in-out) infinite;animation-delay:calc(var(--dur-idle) * var(--k,0))}.line-figure[data-idle] .lf-l.lf-trail{animation:lf-trail var(--dur-blink) var(--ease-linear) infinite}.line-figure[data-idle] .lf-l.lf-flame{animation:lf-blink calc(var(--dur-blink) / 2) steps(2, end) infinite}.line-figure[data-idle] .lf-l.lf-cursor{animation:lf-cursor var(--dur-blink) steps(1, end) infinite}.line-figure[data-idle] .lf-l.lf-typing,.line-figure[data-idle] .lf-l.lf-seg,.line-figure[data-idle] .lf-l.lf-coin{animation:lf-step calc(var(--dur-idle) / 2) var(--ease-in-out) infinite;animation-delay:calc(var(--dur-idle) / 2 * var(--k,0))}.line-figure[data-idle] .lf-l.lf-ink{stroke-dasharray:100 100;animation:lf-draw var(--dur-idle) var(--ease-in-out) infinite}.line-figure[data-idle]:not([data-run]) .lf-l{animation-play-state:paused}}@media (prefers-reduced-motion:reduce){.lf-run,.lf-trail{display:none}}@keyframes lf-in{0%{opacity:0;translate:0 var(--sp-8)}to{opacity:1;translate:0}}@keyframes lf-stroke{0%{stroke-dasharray:100;stroke-dashoffset:100px;opacity:0}15%{opacity:1}99%{stroke-dasharray:100;stroke-dashoffset:0;opacity:1}to{stroke-dasharray:none;stroke-dashoffset:0;opacity:1}}@keyframes lf-blink{0%,to{opacity:1}50%{opacity:.2}}@keyframes lf-cursor{50%{opacity:0}}@keyframes lf-step{0%,to{opacity:.25}30%{opacity:1}60%{opacity:.25}}@keyframes lf-run{0%{stroke-dashoffset:6px;opacity:0}10%{opacity:1}90%{opacity:1}to{stroke-dashoffset:-100px;opacity:0}}@keyframes lf-trail{to{stroke-dashoffset:10px}}@keyframes lf-draw{0%{stroke-dashoffset:100px;opacity:1}60%{stroke-dashoffset:0;opacity:1}85%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}@media (forced-colors:active){.line-figure svg *{forced-color-adjust:auto}}.section-split{gap:var(--sp-48);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;margin-block-end:var(--sp-48);display:grid}.section-split .section-head{margin-block-end:0}@media (width<=1023px){.section-split{gap:var(--sp-32);grid-template-columns:minmax(0,1fr)}}.meter-demo{gap:var(--sp-8);padding:var(--sp-16) var(--sp-24);border:var(--bw) solid var(--border);border-radius:var(--r-site-card);background:var(--surface-tint);margin-block-end:var(--sp-32);display:grid}.meter-readout{font:var(--weight-strong) var(--text-xl) / var(--leading-tight) var(--font-num);color:var(--ink)}.meter-bar{block-size:var(--sp-4);border-radius:var(--r-full);background:var(--border);display:block;overflow:hidden}.meter-bar>span{background:var(--accent);block-size:100%;transition:inline-size var(--dur-micro) var(--ease-linear);display:block}.faq-search{align-items:center;gap:var(--sp-12);max-inline-size:28rem;min-block-size:var(--control-h);padding-inline:var(--sp-16);border:var(--bw) solid var(--border);border-radius:var(--r-site-control);background:var(--surface);color:var(--ink-muted);margin-block-end:var(--sp-24);display:flex}.faq-search.is-typing{border-color:var(--accent);color:var(--ink)}.faq-search-glyph{inline-size:var(--sp-12);block-size:var(--sp-12);border:var(--bw) solid currentColor;border-radius:50%;flex-shrink:0}.faq details.is-hit{background:var(--accent-soft);border-radius:var(--r-site-control)}.faq details{transition:background var(--dur-medium) var(--ease-out)}@media (prefers-reduced-motion:reduce){.meter-bar>span,.faq details{transition:none}}.article-cover .line-figure{padding-block:var(--sp-24)}
