.ill{--ill-ground:var(--color-fd-background);--ill-ease:cubic-bezier(.4, 0, .2, 1);--ill-fg:var(--color-fd-foreground);--ill-muted:var(--color-fd-muted-foreground);--ill-primary:var(--color-fd-primary);--ill-rule:color-mix(in srgb, var(--color-fd-foreground) 20%, var(--ill-ground));--ill-faint:color-mix(in srgb, var(--color-fd-foreground) 13%, var(--ill-ground));--ill-surface:color-mix(in srgb, var(--color-fd-card) 70%, var(--ill-ground));--ill-sage:color-mix(in srgb, var(--n10-sage) 18%, var(--ill-ground));--ill-sage-strong:color-mix(in srgb, var(--n10-sage) 34%, var(--ill-ground));--ill-sage-line:color-mix(in srgb, var(--n10-sage) 68%, var(--ill-fg));--ill-sand:color-mix(in srgb, var(--n10-sand) 20%, var(--ill-ground));--ill-sand-strong:color-mix(in srgb, var(--n10-sand) 38%, var(--ill-ground));--ill-sand-line:color-mix(in srgb, var(--n10-sand) 60%, var(--ill-fg));--ill-mix:color-mix(in srgb, var(--n10-mix) 34%, var(--ill-ground));--ill-mix-line:color-mix(in srgb, var(--n10-mix) 80%, var(--ill-fg));width:100%;position:relative;container-type:inline-size}.dark .ill{--ill-sage:color-mix(in srgb, var(--n10-sage) 14%, var(--ill-ground));--ill-sage-strong:color-mix(in srgb, var(--n10-sage) 26%, var(--ill-ground));--ill-sand:color-mix(in srgb, var(--n10-sand) 12%, var(--ill-ground));--ill-sand-strong:color-mix(in srgb, var(--n10-sand) 24%, var(--ill-ground));--ill-mix:color-mix(in srgb, var(--n10-mix) 30%, var(--ill-ground));--ill-faint:color-mix(in srgb, var(--color-fd-foreground) 17%, var(--ill-ground))}.review-chapter .ill{--ill-ground:color-mix(in srgb, var(--n10-sage) 7%, var(--color-fd-background))}.ill>svg{width:100%;height:100%;font-family:var(--font-sans);display:block;overflow:visible}.ill svg :is(path,rect,line,polyline,polygon,circle):not(.n10-logo *){vector-effect:non-scaling-stroke}.ill .o{stroke-width:1.5px}.ill .o2{stroke-width:1px}.ill .grid{fill:none;stroke:var(--color-fd-border);stroke-width:1px}.ill .frame{fill:none;stroke:var(--ill-rule);stroke-width:1px}.ill .surface{fill:var(--ill-surface);stroke:var(--ill-rule)}.ill .ground{fill:var(--ill-ground);stroke:var(--ill-rule)}.ill .sage{fill:var(--ill-sage);stroke:var(--ill-sage-line)}.ill .sage-strong{fill:var(--ill-sage-strong);stroke:var(--ill-sage-line)}.ill .sand{fill:var(--ill-sand);stroke:var(--ill-sand-line)}.ill .sand-strong{fill:var(--ill-sand-strong);stroke:var(--ill-sand-line)}.ill .mix{fill:var(--ill-mix);stroke:var(--ill-mix-line)}.ill .solid-sage{fill:var(--n10-sage)}.ill .solid-sand{fill:var(--n10-sand)}.ill .solid-mix{fill:var(--n10-mix)}.ill .focus{stroke:var(--ill-primary)}.ill .no-stroke{stroke:none}.ill .bar{fill:var(--ill-faint)}.ill .bar-strong{fill:var(--ill-rule)}.ill .wire{fill:none;stroke:var(--ill-muted);stroke-width:1.5px}.ill .wire-primary{fill:none;stroke:var(--ill-primary);stroke-width:1.5px}.ill .wire-dash{stroke-dasharray:4 4}.ill .head{fill:var(--ill-muted)}.ill .head-primary,.ill .btn{fill:var(--ill-primary)}.ill .pointer{fill:var(--ill-fg);stroke:var(--ill-ground);stroke-width:1px;stroke-linejoin:round}.ill .tick{fill:none;stroke:var(--ill-primary);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.ill .tick-on{stroke:var(--color-fd-primary-foreground)}.ill>svg{--t1n:23;--t2n:13.3}@container (min-width:460px){.ill>svg{--t1n:17;--t2n:14}}@container (min-width:620px){.ill>svg{--t1n:13.3;--t2n:11.5}}.ill text{fill:var(--ill-fg)}.ill .t1{font-size:calc(var(--t1n) / var(--fit,1) * 1px);letter-spacing:-.01em;font-weight:500}.ill .t2{font-size:calc(var(--t2n) / var(--fit,1) * 1px);fill:var(--ill-muted)}.ill .mono{font-family:var(--font-mono);letter-spacing:0}.ill .muted{fill:var(--ill-muted)}.ill .on-primary{fill:var(--color-fd-primary-foreground)}@container (max-width:459px){.ill .t2,.ill .desk{display:none}}@container (min-width:460px){.ill .phone{display:none}}.ill .gone{opacity:0}.ill[data-anim=ready] *,.ill[data-vis="0"] *{animation-play-state:paused!important}.ill :is(g,text,rect,path,polygon,polyline):not(.n10-logo *){transform-box:fill-box;transform-origin:50%}.ill g.ill-art{transform-box:view-box;transform-origin:0 0;transition:opacity .45s var(--ill-ease)}.ill[data-fade] .ill-art{opacity:0}
.ill[data-ill=mesh]{--iso-top:var(--ill-surface);--iso-left:color-mix(in srgb, var(--ill-fg) 7%, var(--ill-ground));--iso-right:color-mix(in srgb, var(--ill-fg) 14%, var(--ill-ground));--iso-inset:color-mix(in srgb, var(--ill-fg) 24%, var(--ill-ground));--iso-line:color-mix(in srgb, var(--ill-fg) 34%, var(--ill-ground))}.dark .ill[data-ill=mesh]{--iso-top:color-mix(in srgb, var(--ill-fg) 16%, var(--ill-ground));--iso-left:color-mix(in srgb, var(--ill-fg) 8%, var(--ill-ground));--iso-right:color-mix(in srgb, var(--ill-fg) 3%, var(--ill-ground));--iso-inset:color-mix(in srgb, black 40%, var(--ill-ground));--iso-line:color-mix(in srgb, var(--ill-fg) 30%, var(--ill-ground))}.n10-frame .ill[data-ill=mesh]{--ill-ground:var(--color-fd-card)}.ill[data-ill=mesh] .grid{opacity:.7}.ill[data-ill=mesh] .n10-iso-face{stroke:var(--iso-line);stroke-width:1px}.ill[data-ill=mesh] .n10-iso-face--top{fill:var(--iso-top)}.ill[data-ill=mesh] .n10-iso-face--left{fill:var(--iso-left)}.ill[data-ill=mesh] .n10-iso-face--right{fill:var(--iso-right)}.ill[data-ill=mesh] .n10-iso-inset{fill:var(--iso-inset)}.ill[data-ill=mesh] .n10-iso-screen{fill:var(--ill-ground);stroke:var(--iso-line);stroke-width:1px}.ill[data-ill=mesh] :is(.n10-iso-shadow,.n10-iso-code){display:none}.ill[data-ill=mesh] .n10-iso-led{fill:var(--n10-sage);animation:none}.ill[data-ill=mesh] .band-sage{fill:var(--ill-sage)}.ill[data-ill=mesh] .band-sand{fill:var(--ill-sand)}.ill[data-ill=mesh] :is(.lane-sage,.lane-sand){fill:none;stroke-linejoin:round}.ill[data-ill=mesh] .lane-sage{stroke:var(--ill-sage-line)}.ill[data-ill=mesh] .lane-sand{stroke:var(--ill-sand-line)}.ill[data-ill=mesh] .relay--top{fill:color-mix(in srgb, var(--n10-sand) 22%, var(--iso-top))}.ill[data-ill=mesh] .relay--left{fill:color-mix(in srgb, var(--n10-sand) 22%, var(--iso-left))}.ill[data-ill=mesh] .relay--right{fill:color-mix(in srgb, var(--n10-sand) 22%, var(--iso-right))}.ill[data-ill=mesh] .relay-on{fill:none;stroke:var(--n10-sand);stroke-width:2px;vector-effect:non-scaling-stroke;transform-box:fill-box;transform-origin:50%}.ill[data-ill=mesh] .ts-dot{fill:var(--ill-fg)}.ill[data-ill=mesh] .ts-dot--dim{fill-opacity:.4}.ill[data-ill=mesh] :is(.screen-prompt,.screen-out){fill:none;stroke-width:2px;stroke-linecap:round}.ill[data-ill=mesh] .screen-prompt{stroke:var(--ill-sand-line)}.ill[data-ill=mesh] .screen-out{stroke:var(--ill-sage-line)}
