.rail.svelte-1xo05kg{width:min(13rem, calc((100vw - var(--article-width)) / 2 - 3rem));box-sizing:border-box;z-index:40;scrollbar-width:thin;scrollbar-color:#bd93f947 transparent;pointer-events:none;opacity:0;flex-direction:column;align-items:flex-end;gap:4px;max-height:calc(100dvh - 96px);padding:0 6px 0 0;transition:opacity .4s;display:flex;position:fixed;top:50%;right:20px;overflow-y:auto;transform:translateY(-50%)}.rail.show.svelte-1xo05kg{opacity:1;pointer-events:auto}.stops.svelte-1xo05kg{flex-direction:column;flex:none;align-items:flex-end;gap:4px;width:100%;min-width:0;padding:10px 0;display:flex;position:relative}.spine.svelte-1xo05kg{background:linear-gradient(#0000,#bd93f947 18% 82%,#0000);width:1px;position:absolute;top:0;bottom:0;right:5px}.j.svelte-1xo05kg{color:#bd93f973;flex-shrink:0;grid-template-columns:minmax(0,1fr) 11px;align-items:center;gap:12px;width:100%;min-height:42px;padding:8px 0;text-decoration:none;transition:color .25s;display:grid;position:relative}.j.svelte-1xo05kg:hover,.j.svelte-1xo05kg:focus-visible{color:#fff;outline:none}.j.on.svelte-1xo05kg{color:var(--yellow)}.mk.svelte-1xo05kg{flex:none;transition:filter .3s}.j.on.svelte-1xo05kg .mk:where(.svelte-1xo05kg){filter:drop-shadow(0 0 5px #f5e6638c)}.lab.svelte-1xo05kg{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;white-space:normal;overflow-wrap:anywhere;text-wrap:balance;text-align:right;opacity:0;min-width:0;font-size:.58rem;line-height:1.5;transition:opacity .28s,transform .28s cubic-bezier(.3,.8,.3,1);transform:translate(6px)}.j.on.svelte-1xo05kg .lab:where(.svelte-1xo05kg),.rail.open.svelte-1xo05kg .lab:where(.svelte-1xo05kg){opacity:1;transform:none}.rail.open.svelte-1xo05kg .j:where(.svelte-1xo05kg):not(.on) .lab:where(.svelte-1xo05kg){color:#ffffff8c}@media (width<80rem){.rail.svelte-1xo05kg{display:none}}@media (prefers-reduced-motion:reduce){.rail.svelte-1xo05kg,.lab.svelte-1xo05kg{transition:none}}@media print{.rail.svelte-1xo05kg{display:none}}.mh.svelte-138hjmk{border-radius:var(--graph-cell-radius);background:#0c0c15;border:1px solid #ffffff12;flex-direction:column;padding:3rem 2rem 1.4rem;display:flex}.mh-stage.svelte-138hjmk{justify-content:center;align-items:center;height:26.8rem;display:flex}.mh-scene.svelte-138hjmk{width:100%;height:23.6rem;font-family:var(--mono,monospace);position:relative}.mh-toprow.svelte-138hjmk{justify-content:center;align-items:center;gap:0;display:flex;position:absolute;top:1.2rem;left:0;right:0}.mh-model.svelte-138hjmk{z-index:2;color:var(--green,#50fa7b);border:1px solid rgb(var(--green-rgb) / .7);border-radius:var(--graph-cell-radius);background:#101a1b;flex-direction:column;align-items:center;gap:.1rem;padding:.6rem 2rem .5rem;font-size:1.05rem;font-weight:700;display:flex;position:relative}.mh-model.svelte-138hjmk small:where(.svelte-138hjmk){letter-spacing:.06em;color:rgb(var(--green-rgb) / .7);font-size:.68rem;font-weight:600}.mh-tk.svelte-138hjmk{z-index:2;color:#ffffffc7;border-radius:var(--graph-cell-radius);background:#10101a;border:1px solid #ffffff4d;padding:.55rem 1rem;font-size:.82rem;position:relative}.mh-flow.svelte-138hjmk{flex:0 0 3.7rem;height:7px;position:relative}.mh-flow.svelte-138hjmk:before{content:"";background:#ffffff59;height:1px;position:absolute;top:3px;left:0;right:7px}.mh-flow.svelte-138hjmk:after{content:"";clip-path:polygon(0 0,100% 50%,0 100%);background:#ffffff59;width:7px;height:7px;position:absolute;top:0;right:0}.mh-boundary.svelte-138hjmk{border-top:1px dashed #ffffff24;transition:border-color .5s;position:absolute;top:7.4rem;left:0;right:0}.mh-boundary.in.svelte-138hjmk{border-color:#ffffff52}.mh-side.svelte-138hjmk{letter-spacing:.14em;text-transform:uppercase;color:#fff3;font-size:.68rem;transition:color .5s;position:absolute;right:.2rem}.mh-side.above.svelte-138hjmk{top:6.05rem}.mh-side.below.svelte-138hjmk{top:7.85rem}.mh-side.in.svelte-138hjmk{color:#ffffff80}.mh-wire.svelte-138hjmk{background:rgb(var(--yellow-rgb) / .5);width:1px;height:6.75rem;margin-left:-.5px;transition:transform .55s;position:absolute;top:3.85rem;transform:scaleY(0)}.mh-wire.up.svelte-138hjmk{transform-origin:bottom}.mh-wire.down.svelte-138hjmk{transform-origin:top}.mh-wire.in.svelte-138hjmk{transform:scaleY(1)}.mh-wire.up.svelte-138hjmk:after{content:"";border-bottom:6px solid rgb(var(--yellow-rgb) / .7);border-left:4px solid #0000;border-right:4px solid #0000;position:absolute;top:-1px;left:-3.5px}.mh-wire.down.svelte-138hjmk:after{content:"";border-top:6px solid rgb(var(--yellow-rgb) / .7);border-left:4px solid #0000;border-right:4px solid #0000;position:absolute;bottom:-1px;left:-3.5px}.mh-token-track.svelte-138hjmk{z-index:1;pointer-events:none;width:100%;position:absolute;top:0;left:0;overflow:hidden}.mh-token.svelte-138hjmk{background:var(--yellow,#f5e663);offset-anchor:50% 50%;offset-rotate:0deg;offset-distance:0%;opacity:0;border-radius:50%;width:7px;height:7px;position:absolute;top:0;left:0}.mh-scene.run.svelte-138hjmk .mh-token:where(.svelte-138hjmk){opacity:1;animation:11s cubic-bezier(.45,0,.25,1) .5s infinite svelte-138hjmk-mh-loop}@keyframes svelte-138hjmk-mh-loop{0%{offset-distance:0%}30%,48%{offset-distance:var(--model-stop)}78%,94%{offset-distance:var(--harness-stop)}to{offset-distance:100%}}.mh-frame.svelte-138hjmk{border-radius:var(--graph-cell-radius);background:#f5e66303;border:1px dashed #f5e66347;height:6.4rem;transition:border-color .5s,background .5s;position:absolute;top:10.6rem;left:6%;right:6%}.mh-frame.in.svelte-138hjmk{background:#f5e66308;border-style:solid;border-color:#f5e663a6}.mh-fk.svelte-138hjmk{letter-spacing:.2em;text-transform:uppercase;color:#f5e66359;font-size:1rem;font-weight:700;transition:color .5s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mh-frame.in.svelte-138hjmk .mh-fk:where(.svelte-138hjmk){color:var(--yellow,#f5e663)}.mh-ports.svelte-138hjmk{justify-content:space-around;display:flex;position:absolute;top:17rem;left:6%;right:6%}.mh-world.svelte-138hjmk{flex-direction:column;align-items:center;display:flex}.mh-arm.svelte-138hjmk{transform-origin:top;width:1px;height:2.1rem;transition:transform .45s ease var(--d,0s);background:#f5e6638c;transform:scaleY(0)}.mh-arm.grown.svelte-138hjmk{transform:scaleY(1)}.mh-wk.svelte-138hjmk{border-radius:var(--graph-cell-radius);color:#ffffff59;transition:color .4s ease var(--d,0s), border-color .4s ease var(--d,0s);background:#10101a;border:1px dashed #ffffff29;padding:.45rem 1.1rem;font-size:.84rem}.mh-world.in.svelte-138hjmk .mh-wk:where(.svelte-138hjmk){color:#ffffffd9;border-style:solid;border-color:#ffffff4d}.mh-agentbox.svelte-138hjmk{border-radius:var(--graph-cell-radius);opacity:0;border:1px solid #bd93f966;transition:opacity .55s;position:absolute;inset:-.6rem}.mh-agentbox.in.svelte-138hjmk{opacity:1}.mh-agent.svelte-138hjmk{letter-spacing:.24em;text-transform:uppercase;color:var(--purple,#bd93f9);opacity:0;z-index:3;background:#0c0c15;padding:0 .7rem;font-size:.9rem;font-weight:800;transition:opacity .45s .15s,transform .45s .15s;position:absolute;top:-1.55rem;left:50%;transform:translate(-50%,6px)}.mh-agent.in.svelte-138hjmk{opacity:1;transform:translate(-50%)}.mh-chrome.svelte-138hjmk{border-top:1px solid #ffffff14;flex-direction:column;gap:1rem;width:100%;margin-top:1.6rem;padding-top:1.4rem;display:flex;position:relative}@media (width<=40rem){.mh-tk.svelte-138hjmk{padding:.4rem .6rem;font-size:.66rem}.mh-model.svelte-138hjmk{padding:.5rem 1.2rem}.mh-wire.svelte-138hjmk,.mh-token.svelte-138hjmk{display:none}}@media (prefers-reduced-motion:reduce){.mh-boundary.svelte-138hjmk,.mh-side.svelte-138hjmk,.mh-wire.svelte-138hjmk,.mh-frame.svelte-138hjmk,.mh-fk.svelte-138hjmk,.mh-arm.svelte-138hjmk,.mh-wk.svelte-138hjmk,.mh-agentbox.svelte-138hjmk,.mh-agent.svelte-138hjmk{transition:none!important}.mh-scene.run.svelte-138hjmk .mh-token:where(.svelte-138hjmk),.mh-token.svelte-138hjmk{opacity:0;animation:none!important}}.smh.svelte-1jkxz73{border-radius:var(--graph-cell-radius);background:#0c0c15;border:1px solid #ffffff12;flex-direction:column;padding:2.6rem 3rem 1.4rem;display:flex}.smh-stage.svelte-1jkxz73{align-items:flex-start;height:22.4rem;display:flex}.smh-scene.svelte-1jkxz73{grid-template-columns:1fr 1fr;gap:2rem;width:100%;display:grid;position:relative}.smh-chip.svelte-1jkxz73{z-index:2;text-align:center;width:6.8rem;font-family:var(--mono,monospace);color:var(--purple,#bd93f9);border:1px solid rgb(var(--purple-rgb) / .5);border-radius:var(--graph-cell-radius);background:#16122a;padding:.5rem 0;font-size:.88rem;font-weight:700;transition:left .8s cubic-bezier(.4,0,.2,1);position:absolute;top:6.36rem;left:calc(25% - 3.9rem)}.smh-chip.right.svelte-1jkxz73{left:calc(75% - 2.9rem)}.smh-chip.right.landed.svelte-1jkxz73{animation:.4s cubic-bezier(.22,1,.36,1) svelte-1jkxz73-smh-settle}@keyframes svelte-1jkxz73-smh-settle{0%{transform:scale(.94)}}.smh-card.svelte-1jkxz73{border-radius:var(--graph-cell-radius);background:#10101a;border:1px solid #ffffff29;flex-direction:column;gap:.7rem;padding:1.4rem 1.5rem 1.2rem;transition:border-color .5s,opacity .5s;display:flex}.smh-card.tab.empty.svelte-1jkxz73{opacity:.45}.smh-card.code.svelte-1jkxz73{opacity:.55}.smh-card.code.live.svelte-1jkxz73{opacity:1;border-color:#f5e6638c}.smh-bar.svelte-1jkxz73{border-radius:var(--graph-cell-radius);height:1.6rem;font-family:var(--mono,monospace);background:#ffffff0d;align-items:center;gap:.4rem;padding:0 .6rem;font-size:.7rem;display:flex}.smh-bar.browser.svelte-1jkxz73 i:where(.svelte-1jkxz73){background:#ffffff38;border-radius:50%;width:.5rem;height:.5rem}.smh-url.svelte-1jkxz73{border-radius:var(--graph-cell-radius);color:#ffffff73;background:#00000059;flex:1;margin-left:.5rem;padding:.12rem .6rem}.smh-bar.term.svelte-1jkxz73{background:#00000073}.smh-prompt.svelte-1jkxz73{color:#f5e663cc}.smh-ck.svelte-1jkxz73{font-family:var(--mono,monospace);color:#fff;font-size:.95rem}.smh-socket.svelte-1jkxz73{border-radius:var(--graph-cell-radius);border:1px dashed #ffffff38;height:3.4rem}.smh-caps.svelte-1jkxz73{flex-wrap:wrap;gap:.55rem;margin-top:.3rem;display:flex}.smh-cap.svelte-1jkxz73{font-family:var(--mono,monospace);border:1px solid rgb(var(--purple-rgb) / .24);border-radius:var(--graph-cell-radius);color:#ffffff61;background:rgb(var(--purple-rgb) / .025);transition:color .4s ease var(--d,0s), border-color .4s ease var(--d,0s), background .4s ease var(--d,0s);align-items:center;gap:.48rem;padding:.52rem .7rem;font-size:.75rem;font-weight:560;display:inline-flex}.smh-cap-glyph.svelte-1jkxz73{color:var(--purple,#bd93f9);opacity:.45}.smh-cap.lit.svelte-1jkxz73{color:#fffffff0;border-color:rgb(var(--purple-rgb) / .5);background:rgb(var(--purple-rgb) / .07)}.smh-tally.svelte-1jkxz73{font-family:var(--mono,monospace);color:#fff6;margin-top:auto;padding-top:.6rem;font-size:.74rem;transition:color .4s .5s}.smh-tally.on.svelte-1jkxz73{color:#f5e663e6}.smh-chrome.svelte-1jkxz73{border-top:1px solid #ffffff14;flex-direction:column;gap:1rem;width:100%;margin-top:1.6rem;padding-top:1.4rem;display:flex;position:relative}@media (width<=40rem){.smh-stage.svelte-1jkxz73{height:auto;min-height:30rem}.smh-scene.svelte-1jkxz73{grid-template-columns:1fr}.smh-chip.svelte-1jkxz73{display:none}.smh-card.code.svelte-1jkxz73{opacity:1}}@media (prefers-reduced-motion:reduce){.smh-chip.svelte-1jkxz73,.smh-card.svelte-1jkxz73,.smh-cap.svelte-1jkxz73,.smh-tally.svelte-1jkxz73{transition:none!important}.smh-chip.right.landed.svelte-1jkxz73{animation:none}}.visual-figure.svelte-v16yq9{--green-rgb:80 250 123}svg.svelte-535ati{color:#bd93f9;flex:none;display:block;overflow:visible}path.svelte-535ati{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.secondary.svelte-535ati{opacity:.4}.gold.svelte-535ati{stroke:#f2de90}.author-byline.svelte-1tefcj7{align-items:center;gap:.65rem;min-width:0;display:inline-flex}img.svelte-1tefcj7{object-fit:cover;border-radius:50%;flex:0 0 32px;width:32px;height:32px;display:block}.author-name.svelte-1tefcj7{white-space:nowrap;line-height:1.5}.blog-end-matter.svelte-1w2xiv{--text:#ffffffe6;--muted:#ffffff8c;--faint:#ffffff5c;--panel:#0a0a0f9e;--hair:#ffffff14;--hair-p:#bd93f92e;--purple:#bd93f9;--yellow:#f5e663;--sans:"Course Sans", system-ui, sans-serif;--mono:"Course Mono", monospace;font-family:var(--sans);font-synthesis:weight style small-caps;-webkit-font-smoothing:antialiased;color:var(--text);background:#07070a;flex-direction:column;gap:16px;width:100%;margin-top:3.5rem;font-size:1rem;font-weight:400;line-height:1.5;display:flex;container:blog-cards/inline-size}h2.svelte-1w2xiv,h3.svelte-1w2xiv,p.svelte-1w2xiv,ul.svelte-1w2xiv{margin:0;padding:0}h2.svelte-1w2xiv,h3.svelte-1w2xiv{font-size:inherit;font-weight:inherit;font-family:var(--mono)}input.svelte-1w2xiv,button.svelte-1w2xiv{font:inherit;letter-spacing:inherit}input.svelte-1w2xiv::placeholder{opacity:1;color:color-mix(in oklab, currentColor 50%, transparent)}.panel.svelte-1w2xiv{border:1px solid var(--hair);background:var(--panel);padding:34px 36px;position:relative}.btn.svelte-1w2xiv{letter-spacing:.06em;cursor:pointer;white-space:nowrap;color:#bd93f9;background:#bd93f90f;border:1px solid #bd93f933;border-radius:3px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-family:Course Mono,monospace;font-size:.72rem;font-weight:600;line-height:1rem;text-decoration:none;transition:all .3s;display:inline-flex}.btn.svelte-1w2xiv:hover{transform:scale(1.02)}.smark.svelte-1w2xiv{font-weight:500;font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--faint);align-items:center;gap:13px;margin-top:0;margin-bottom:26px;font-size:.64rem;display:flex}.smark.svelte-1w2xiv svg{color:var(--purple);flex-shrink:0}.smark.svelte-1w2xiv .rule:where(.svelte-1w2xiv){background:linear-gradient(90deg, var(--hair-p), transparent);flex:1;height:1px}.twoup.svelte-1w2xiv{grid-template-columns:minmax(0,1fr);align-items:start;padding:6px 0 4px;display:grid}.twoup.svelte-1w2xiv>:where(.svelte-1w2xiv){min-width:0}.h2.svelte-1w2xiv{color:#fff;letter-spacing:-.01em;margin:14px 0 18px;font-family:Course Mono,monospace;font-size:1.75rem;font-weight:700;line-height:1.22}.h2.svelte-1w2xiv .ac:where(.svelte-1w2xiv){color:var(--yellow)}.ptxt.svelte-1w2xiv{color:var(--muted);max-width:none;font-size:1.04rem;line-height:1.62}.ptxt.svelte-1w2xiv+.ptxt:where(.svelte-1w2xiv){margin-top:18px}.premise-cta.svelte-1w2xiv{margin-top:0}.course-introduction-grid.svelte-1w2xiv{gap:24px}.course-inclusions.svelte-1w2xiv{border:1px solid var(--hair-p);background:#0c0c1447;padding:18px 20px}.course-inclusions.svelte-1w2xiv h3:where(.svelte-1w2xiv){font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:.6rem;font-weight:500}.course-inclusions.svelte-1w2xiv ul:where(.svelte-1w2xiv){grid-template-columns:repeat(3,minmax(0,1fr));column-gap:18px;margin:0;padding:0;list-style:none;display:grid}.course-inclusions.svelte-1w2xiv li:where(.svelte-1w2xiv){border-top:1px solid var(--hair);min-height:44px;font-family:var(--mono);color:var(--text);grid-template-columns:14px minmax(0,1fr);align-items:center;gap:9px;padding:10px 0;font-size:.76rem;line-height:1.45;display:grid}.course-inclusions.svelte-1w2xiv svg{color:var(--purple);flex-shrink:0}.course-availability.svelte-1w2xiv{border:1px solid var(--hair-p);font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--yellow);align-items:center;gap:8px;padding:6px 11px;font-size:.62rem;display:inline-flex}.course-availability.svelte-1w2xiv:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.signup-panel.svelte-1w2xiv .smark:where(.svelte-1w2xiv){margin-top:0;font-weight:500}.mlwrap.svelte-1w2xiv{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.mlwrap.svelte-1w2xiv>div:where(.svelte-1w2xiv){min-width:0}.mlheading.svelte-1w2xiv{margin-top:0;font-size:clamp(1.4rem,2.2vw,1.75rem)}.mlwrap.svelte-1w2xiv .ptxt:where(.svelte-1w2xiv){max-width:none;margin:0;line-height:1.65}.mlpromise.svelte-1w2xiv{color:#cbb5e8;max-width:none;margin:18px 0 0;font-size:.85rem;line-height:1.65}.mlform.svelte-1w2xiv{grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:12px;display:grid}.mlsubmit.svelte-1w2xiv{justify-content:center;width:100%;min-height:50px;margin-top:0;padding-inline:18px}.mlfield.svelte-1w2xiv{flex-direction:column;gap:10px;min-width:0;display:flex}.mlfield.svelte-1w2xiv span:where(.svelte-1w2xiv){font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--faint);font-size:.58rem}.mlfield.svelte-1w2xiv input:where(.svelte-1w2xiv){min-height:50px;font-family:var(--mono);color:#fff;background:#07070a99;border:1px solid #bd93f933;border-radius:3px;outline:none;width:100%;min-width:0;padding:.86rem .9rem;font-size:.82rem;transition:border-color .2s}.mlfield.svelte-1w2xiv input:where(.svelte-1w2xiv):focus{border-color:var(--purple)}.mltrap.svelte-1w2xiv{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}@container blog-cards (width<=680px){.course-inclusions.svelte-1w2xiv ul:where(.svelte-1w2xiv){grid-template-columns:repeat(2,minmax(0,1fr))}}@container blog-cards (width<=520px){.panel.svelte-1w2xiv{padding:28px 24px}.mlform.svelte-1w2xiv{grid-template-columns:minmax(0,1fr);row-gap:14px}.course-inclusions.svelte-1w2xiv{padding:16px}}@container blog-cards (width<=400px){.course-inclusions.svelte-1w2xiv ul:where(.svelte-1w2xiv){grid-template-columns:minmax(0,1fr)}}.signup-error.svelte-1w2xiv,.signup-success.svelte-1w2xiv{grid-column:1/-1;margin:16px 0 0;font-size:.8rem;line-height:1.6}.signup-error.svelte-1w2xiv{color:#ffb86c}.signup-success.svelte-1w2xiv{color:#cbb5e8}.mlcaptcha.svelte-1w2xiv{grid-column:1/-1}.btn.svelte-1w2xiv:disabled{cursor:wait;opacity:.5}@media (prefers-reduced-motion:reduce){.btn.svelte-1w2xiv{transition:none}.btn.svelte-1w2xiv:hover{transform:none}}@media print{.mlform.svelte-1w2xiv{display:none}}@font-face{font-family:Course Sans;src:url(../../../fonts/inter-400-latin.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Course Sans;src:url(../../../fonts/inter-600-latin.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Course Sans;src:url(../../../fonts/inter-700-latin.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Course Mono;src:url(../../../fonts/outline-lab/geist-mono-500-clean.woff2)format("woff2");font-weight:500;font-display:swap}.blog-lesson .lesson-head h1{text-wrap:balance}.blog-lesson .visual-figure{margin:2rem 0}.blog-lesson .vf-caption{opacity:.6;gap:.6rem;margin-top:.5rem;font-size:.78rem;display:flex}.blog-lesson .vf-num{font-family:var(--mono,monospace);color:var(--purple,#bd93f9)}.blog-lesson .graph-example{font:400 .85rem var(--sans);color:#ffffffb3;flex-wrap:wrap;align-items:center;gap:.75rem;margin:0 0 1rem;display:flex}.blog-lesson .graph-example select{color:inherit;font:inherit;background:#0b0b0d;border:1px solid #fff3;border-radius:3px;padding:.4rem .6rem}.blog-lesson{z-index:1;--sans:"Course Sans", sans-serif;--mono:"Course Mono", monospace;--purple:#bd93f9;--yellow:#f5e663;--article-width:56rem;color:#ffffffe6;min-height:100vh;font-family:var(--sans);background:#07070a;position:relative}.blog-lesson .article-toolbar{min-height:64px;font:500 .85rem var(--mono);background:#0b0b10;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 2rem;display:flex}.blog-lesson .article-toolbar>a{color:var(--purple);text-decoration:none}.blog-lesson .article-toolbar>span{color:#8e8796;font-size:.75rem}.blog-lesson .article-toolbar>div{gap:.5rem;display:flex}.blog-lesson .article-toolbar button,.blog-lesson .exit-focus{color:#d6c5ea;font:500 .8rem var(--mono);cursor:pointer;background:#121019;border:1px solid #3b3047;border-radius:3px;padding:.6rem .8rem}.blog-lesson a:focus-visible,.blog-lesson button:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}.blog-lesson .exit-focus{z-index:20;opacity:.15;position:fixed;bottom:1rem;right:1rem}.blog-lesson .exit-focus:hover,.blog-lesson .exit-focus:focus-visible{opacity:1}.blog-lesson .article-contents{background:#15111c;border:1px solid #544061;padding:1rem}.blog-lesson .article-contents a{color:#d2cadc;gap:.8rem;padding:.55rem .4rem;font-size:.95rem;text-decoration:none;display:flex}.blog-lesson .article-contents a:hover{color:var(--yellow)}.blog-lesson .article-contents span{font:500 .85rem var(--mono);color:var(--purple)}.blog-lesson .lesson-page{max-width:var(--article-width);margin:0 auto;padding:2.25rem 1.25rem 5rem}.blog-lesson .lesson-head{border-bottom:1px solid #ffffff14;margin-bottom:2.2rem;padding-bottom:1.4rem}.blog-lesson .lh-identity{align-items:center;gap:.85rem;margin-bottom:1rem;display:flex}.blog-lesson .lh-mark{flex:0 0 2rem;width:2rem;height:2rem;display:block}.blog-lesson .lh-mark svg{width:100%;height:100%}.blog-lesson .lh-module{font:500 .72rem/1.6 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#a39baa}.blog-lesson h1{font:600 clamp(1.7rem, 3.5vw, 2.4rem)/1.13 var(--sans);letter-spacing:-.03em;color:#fffffff0;margin:0}.blog-lesson .lesson-deck{font:400 1.1rem/1.8 var(--sans);color:#a7a1b2;max-width:760px;margin:1.4rem 0 1rem}.blog-lesson .byline{font:500 .75rem var(--mono);color:#88828f}.blog-lesson .course-prose{font:400 1.13rem/1.85 var(--sans);color:#ffffffbf}.blog-lesson .course-prose .visual code{color:var(--yellow);font:500 .88em/1.6 var(--mono);overflow-wrap:anywhere;background:#1e1e2e;border:1px solid #bd93f926;border-radius:4px;padding:.15em .4em}.blog-lesson .course-prose .visual pre{font:500 .88rem/1.65 var(--mono);background:#0d0d14;border:1px solid #bd93f926;border-radius:4px;margin:1.6rem 0 2rem;padding:1.25rem;overflow:auto}.blog-lesson .course-prose .visual pre code{white-space:pre;color:#c8c1d2;font-size:inherit;overflow-wrap:normal;background:0 0;border:0;padding:0}.blog-lesson .md-section{margin:2.9rem 0 0;scroll-margin-top:2rem}.blog-lesson .md-sec-head{align-items:center;gap:14px;margin-bottom:2.6rem;display:flex}.blog-lesson .ms-num{font:500 .95rem var(--mono);letter-spacing:.08em;color:var(--yellow);flex-shrink:0}.blog-lesson .md-sec-head h2{font:500 .88rem/1.5 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--purple);max-width:86%;margin:0}.blog-lesson .ms-rule{background:#ffffff14;flex:1;min-width:1.5rem;height:1px}.blog-lesson .article-footer{color:#88828f;border-top:1px solid #292331;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.5rem;font-size:.8rem;display:flex}.blog-lesson .article-footer a{color:var(--purple);text-decoration:none}.blog-lesson .course-prose .visual h3{font:500 1.18rem/1.4 var(--mono);color:#f0f0f4;margin:.6rem 0 1rem}.blog-lesson .course-prose .visual p{margin:.5rem 0 1rem}.blog-lesson .course-prose .visual code{font-size:.85rem}.blog-lesson .course-prose .visual strong{font-weight:500}.blog-lesson .course-prose .visual .stop h3{color:var(--yellow);font-size:clamp(1.2rem,3vw,2rem)}.blog-lesson .course-prose .visual .trace-proposal h3{color:var(--purple)}.blog-lesson .course-prose .visual .download{color:var(--purple);text-decoration:none}@media (width<=700px){.blog-lesson .article-toolbar{padding:.7rem 1rem}.blog-lesson .article-toolbar>span{display:none}.blog-lesson .lesson-page{padding-top:1.25rem}.blog-lesson .lh-mark{flex-basis:1.5rem;width:1.5rem;height:1.5rem}.blog-lesson .lh-identity{gap:.6rem;margin-bottom:1.1rem}.blog-lesson .lh-module{letter-spacing:.06em;font-size:.65rem}.blog-lesson .course-prose{font-size:1.04rem}.blog-lesson .md-sec-head h2{letter-spacing:.1em;font-size:.8rem}.blog-lesson .ms-rule{display:none}}@media print{.blog-lesson .article-toolbar,.blog-lesson .article-contents,.blog-lesson .exit-focus,.blog-lesson .article-footer{display:none}.blog-lesson .lesson-page{max-width:none}.blog-lesson .visual{break-inside:avoid}}.blog-lesson .lesson-markdown{--bg-card:#16161f;--purple-light:#d4b8fc;--grey:#3d3d47;--grey-lt:#5a5a66;--cyan:#8be9fd;--green:#50fa7b;--pink:#ff79c6;--orange:#ffb86c;--red:#f55;--text:#ffffffe6;--text-muted:#ffffff80;overflow-wrap:break-word;max-width:100%}.blog-lesson .lesson-markdown ul{list-style:none}.blog-lesson .lesson-markdown h3{color:#90909a;font-family:var(--mono);margin:1.75rem 0 .5rem;font-size:1.2rem;font-weight:600;line-height:1.4}.blog-lesson .lesson-markdown h4{color:var(--text-muted);font-family:var(--mono);margin:1.25rem 0 .5rem;font-size:1.05rem;font-weight:600}.blog-lesson .lesson-markdown p{margin:0 0 1.4rem}.blog-lesson .lesson-markdown strong{color:var(--text);font-weight:600}.blog-lesson .lesson-markdown em{color:var(--yellow);font-style:italic}.blog-lesson .lesson-markdown a{color:var(--purple);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .15s}.blog-lesson .lesson-markdown a:hover{border-bottom-color:var(--purple)}.blog-lesson .lesson-markdown code{color:var(--yellow);font-family:var(--mono);background:#1e1e2e;border:1px solid #bd93f926;border-radius:4px;padding:.15em .4em;font-size:.88em}.blog-lesson .lesson-markdown pre{background:#0d0d14;border:1px solid #bd93f926;border-radius:4px;margin:1.25rem 0;padding:1.25rem;line-height:1.55;overflow-x:auto}.blog-lesson .lesson-markdown pre code{color:#ffffffb3;background:0 0;border:none;padding:0;font-size:.85rem}.blog-lesson .lesson-markdown blockquote{border-left:3px solid var(--purple);background:#bd93f90d;border-radius:0 6px 6px 0;margin:1.25rem 0;padding:.75rem 1.25rem}.blog-lesson .lesson-markdown blockquote p{color:#fff9;margin:0}.blog-lesson .lesson-markdown ul,.blog-lesson .lesson-markdown ol{margin:.75rem 0 1.1rem;padding-left:1.75rem}.blog-lesson .lesson-markdown li{margin:.35rem 0;line-height:1.65;position:relative}.blog-lesson .lesson-markdown ul:not(.lr-list)>li:not(.lede){padding-left:1.15rem}.blog-lesson .lesson-markdown ul:not(.lr-list)>li:not(.lede):before{content:"•";color:var(--grey-lt,#5a5a66);font-size:1.1em;line-height:1.65;position:absolute;top:0;left:0}.blog-lesson .lesson-markdown ol{list-style-type:decimal}.blog-lesson .lesson-markdown ol>li::marker{color:var(--grey-lt,#5a5a66)}.blog-lesson .lesson-markdown li>ul,.blog-lesson .lesson-markdown li>ol{margin:.25rem 0}.blog-lesson .lesson-markdown table{border-collapse:collapse;width:100%;margin:1.25rem 0;font-size:.92rem;display:block;overflow-x:auto}.blog-lesson .lesson-markdown thead{border-bottom:2px solid var(--grey)}.blog-lesson .lesson-markdown th{color:var(--yellow);font-family:var(--mono);text-align:left;white-space:nowrap;padding:.65rem 1rem;font-weight:600}.blog-lesson .lesson-markdown td{color:#ffffffb3;border-bottom:1px solid #bd93f91a;padding:.55rem 1rem}.blog-lesson .lesson-markdown tr:nth-child(2n) td{background:#16161f80}.blog-lesson .lesson-markdown tr:hover td{background:#bd93f90a}.blog-lesson .lesson-markdown hr{border:none;border-top:1px solid var(--grey);margin:2rem 0}.blog-lesson .lesson-markdown figure.diagram{text-align:center;margin:1.5rem 0}.blog-lesson .lesson-markdown figure.diagram img{background:var(--bg-card);border:1px solid #bd93f926;border-radius:4px;max-width:100%;height:auto;padding:1rem}.blog-lesson .lesson-markdown figure.diagram figcaption{color:var(--text-muted);font-family:var(--mono);margin-top:.5rem;font-size:.82rem;font-style:italic}.blog-lesson .lesson-markdown .co-pullquote{--co:var(--purple);text-align:center;background:0 0;border:none;margin:2rem 0;padding:1.3rem 2rem}.blog-lesson .lesson-markdown .co-pullquote .callout-body p{font-family:var(--mono);color:#fff;font-size:1.3rem;font-weight:600;line-height:1.45}.blog-lesson .lesson-markdown .co-pullquote .callout-body p:before{content:"";background:var(--purple);width:36px;height:2px;margin:0 auto 1rem;display:block}.blog-lesson .lesson-markdown .callout{--co-accent:var(--purple);--co-rgb:189 147 249;border:1px solid rgb(var(--co-rgb) / .22);background:linear-gradient(135deg, rgb(var(--co-rgb) / .05), transparent 55%), #16161fc7;-webkit-backdrop-filter:blur(6px);border-radius:4px;margin:1.9rem 0;overflow:hidden}.blog-lesson .lesson-markdown .callout-head{color:var(--co-accent);align-items:center;gap:.6rem;padding:.7rem 1.1rem 0;display:flex}.blog-lesson .lesson-markdown .callout-icon{flex-shrink:0;width:17px;height:17px;display:inline-flex}.blog-lesson .lesson-markdown .callout-icon svg{width:100%;height:100%}.blog-lesson .lesson-markdown .callout-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;font-size:.74rem;font-weight:700}.blog-lesson .lesson-markdown .callout-body{padding:.5rem 1.2rem .95rem;font-size:1.02rem;line-height:1.7}.blog-lesson .lesson-markdown .callout-body>:first-child{margin-top:0}.blog-lesson .lesson-markdown .callout-body>:last-child{margin-bottom:0}.blog-lesson .lesson-markdown .callout-body p{color:#ffffffd1;margin:0 0 .7rem}.blog-lesson .lesson-markdown .co-key .callout-body{font-size:1.12rem}.blog-lesson .lesson-markdown .co-key .callout-body p{color:#ffffffe6}.blog-lesson .lesson-markdown .co-key{background:linear-gradient(135deg, rgb(var(--co-rgb) / .07), transparent 60%), #16161f9e;border-color:rgb(var(--co-rgb) / .32);-webkit-backdrop-filter:blur(14px)saturate(1.15);box-shadow:inset 0 0 34px rgb(var(--co-rgb) / .05);--co-accent:var(--yellow);--co-rgb:245 230 99}.blog-lesson .lesson-markdown .co-info{--co-accent:var(--cyan);--co-rgb:139 233 253}.blog-lesson .lesson-markdown .co-warning{--co-accent:var(--orange);--co-rgb:255 184 108}.blog-lesson .lesson-markdown .co-danger{--co-accent:var(--red);--co-rgb:255 85 85}.blog-lesson .lesson-markdown .co-scope{--co-accent:var(--grey-lt);--co-rgb:255 255 255}.blog-lesson .lesson-markdown .co-definition{--co-accent:var(--purple);--co-rgb:189 147 249}.blog-lesson .lesson-markdown .co-principle{--co-accent:var(--purple-light);--co-rgb:212 184 252}.blog-lesson .lesson-markdown .co-example,.blog-lesson .lesson-markdown .co-success{--co-accent:var(--green);--co-rgb:80 250 123}.blog-lesson .lesson-markdown .co-quote{--co-accent:var(--pink);--co-rgb:255 121 198}.blog-lesson .lesson-markdown .co-lab{--co-accent:var(--yellow);--co-rgb:245 230 99}.blog-lesson .lesson-markdown .co-scope{border-style:dashed}.blog-lesson .lesson-markdown .co-scope .callout-body p{color:#ffffff9e}.blog-lesson .lesson-markdown .table-wrap{background:var(--bg-card);border:1px solid #bd93f929;border-radius:3px;margin:1.4rem 0;overflow-x:auto}.blog-lesson .lesson-markdown .table-wrap table{border:none;width:100%;margin:0;display:table}.blog-lesson .lesson-markdown .table-wrap th{background:#bd93f90f;border-bottom:1px solid #bd93f933}.blog-lesson .lesson-markdown .table-wrap.cols-2 td:first-child{color:var(--text);font-weight:600;font-family:var(--mono);white-space:nowrap;font-size:.86rem}:is(.blog-lesson .lesson-markdown ul:has(li.lede),.blog-lesson .lesson-markdown ol:has(li.lede)){margin:1.1rem 0 1.4rem;padding-left:0}.blog-lesson .lesson-markdown li.lede{border-left:2px solid var(--grey);margin:0 0 1.15rem;padding:.05rem 0 .05rem 1.1rem;list-style:none;transition:border-color .18s}.blog-lesson .lesson-markdown li.lede:last-child{margin-bottom:.3rem}.blog-lesson .lesson-markdown li.lede:hover{border-left-color:var(--purple)}.blog-lesson .lesson-markdown .lede-term{color:var(--text);margin-bottom:.28rem;font-weight:600;line-height:1.45;display:block}.blog-lesson .lesson-markdown li.lede>p{margin:0}.blog-lesson .lesson-markdown .co-pullquote{border:none;border-left:3px solid var(--purple);background:0 0;border-radius:0;margin:2.2rem 0;padding:.2rem 0 .2rem 1.5rem}.blog-lesson .lesson-markdown .co-pullquote .callout-head{display:none}.blog-lesson .lesson-markdown .co-pullquote .callout-body{font-family:var(--sans);color:#ffffffe6;padding:0;font-size:1.5rem;font-style:italic;font-weight:300;line-height:1.45}.blog-lesson .lesson-markdown .co-pullquote .callout-body p{color:#ffffffe6;font-size:inherit}.blog-lesson .lesson-markdown .lesson-refs{border-top:1px solid #ffffff14;margin:2.6rem 0 0;padding-top:1.4rem}.blog-lesson .lesson-markdown .lr-head{cursor:pointer;width:fit-content;font-family:var(--mono,monospace);text-transform:uppercase;letter-spacing:.18em;color:#fff6;align-items:center;gap:.55rem;font-size:.7rem;list-style:none;transition:color .2s;display:flex}.blog-lesson .lesson-markdown .lr-head::-webkit-details-marker{display:none}.blog-lesson .lesson-markdown .lr-head:hover{color:#ffffffb8}.blog-lesson .lesson-markdown .lr-chev{color:var(--purple,#bd93f9);transition:transform .2s}.blog-lesson .lesson-markdown .lesson-refs[open] .lr-chev{transform:rotate(90deg)}.blog-lesson .lesson-markdown .lr-count{letter-spacing:.1em;color:#ffffff4d;font-size:.66rem}.blog-lesson .lesson-markdown .lesson-refs[open] .lr-list{margin-top:.9rem}.blog-lesson .lesson-markdown .lesson-refs:not([open]) .lr-list{display:none}.blog-lesson .lesson-markdown .lr-list{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.blog-lesson .lesson-markdown .lr-list li{color:#fff9;padding-left:1.05rem;font-size:.95rem;line-height:1.55;position:relative}.blog-lesson .lesson-markdown .lr-list li:before{content:"∗";color:var(--yellow,#f5e663);font-size:1.15em;line-height:1.55;position:absolute;top:0;left:0}.blog-lesson .lesson-markdown .lr-list a{color:var(--purple,#bd93f9);text-decoration:none}.blog-lesson .lesson-markdown .lr-list a:hover{text-decoration:underline}.blog-lesson .codeblock{--text-muted:#ffffff80;--purple-light:#d4b8fc;--green:#50fa7b}.blog-lesson .course-prose .codeblock pre{background:#0d0d14;border:1px solid #bd93f926;border-radius:4px;margin:1.25rem 0;padding:1.25rem;line-height:1.55;overflow-x:auto}.blog-lesson .course-prose .codeblock pre code{color:#ffffffb3;background:0 0;border:none;padding:0;font-size:.85rem}.blog-lesson .course-prose .codeblock{background:#0d0d14;border:1px solid #bd93f92e;border-radius:8px;margin:1.4rem 0;overflow:hidden}.blog-lesson .course-prose .cb-head{background:#bd93f90f;border-bottom:1px solid #bd93f924;justify-content:space-between;align-items:center;padding:.4rem .85rem;display:flex}.blog-lesson .course-prose .cb-lang{font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.7rem;font-weight:600}.blog-lesson .course-prose .cb-copy{font-family:var(--mono);color:var(--purple-light);cursor:pointer;background:0 0;border:1px solid #bd93f940;border-radius:5px;padding:.15rem .55rem;font-size:.7rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.blog-lesson .course-prose .cb-copy:hover{color:#fff;background:#bd93f924}.blog-lesson .course-prose .cb-copy.copied{color:var(--green);border-color:var(--green)}.blog-lesson .course-prose .codeblock pre{font-family:var(--mono);font-size:inherit;font-weight:inherit;background:0 0;border:none;border-radius:0;margin:0;line-height:1.55}.blog-lesson .course-prose .codeblock pre code{font-weight:inherit;line-height:inherit}.blog-lesson .codeblock .hljs-keyword,.blog-lesson .codeblock .hljs-selector-tag,.blog-lesson .codeblock .hljs-literal,.blog-lesson .codeblock .hljs-section,.blog-lesson .codeblock .hljs-deletion{color:#ff79c6}.blog-lesson .codeblock .hljs-string,.blog-lesson .codeblock .hljs-regexp,.blog-lesson .codeblock .hljs-addition{color:#f1fa8c}.blog-lesson .codeblock .hljs-number,.blog-lesson .codeblock .hljs-symbol,.blog-lesson .codeblock .hljs-bullet,.blog-lesson .codeblock .hljs-meta{color:#bd93f9}.blog-lesson .codeblock .hljs-title,.blog-lesson .codeblock .hljs-name,.blog-lesson .codeblock .hljs-built_in{color:#50fa7b}.blog-lesson .codeblock .hljs-attr,.blog-lesson .codeblock .hljs-attribute,.blog-lesson .codeblock .hljs-variable,.blog-lesson .codeblock .hljs-template-variable,.blog-lesson .codeblock .hljs-type,.blog-lesson .codeblock .hljs-class{color:#8be9fd}.blog-lesson .codeblock .hljs-comment,.blog-lesson .codeblock .hljs-quote{color:#6272a4;font-style:italic}.blog-lesson .codeblock .hljs-emphasis{font-style:italic}.blog-lesson .codeblock .hljs-strong{font-weight:700}.article-tools.svelte-18vfhzc{font:500 .75rem/1.5 var(--mono);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.article-tools.svelte-18vfhzc a:where(.svelte-18vfhzc),.article-tools.svelte-18vfhzc button:where(.svelte-18vfhzc){color:var(--purple);text-decoration:none}.article-tools.svelte-18vfhzc button:where(.svelte-18vfhzc){cursor:pointer;background:#121019;border:1px solid #3b3047;padding:.45rem .65rem}.article-contents.svelte-18vfhzc{background:#121019;border:1px solid #3b3047;gap:.55rem;margin:-1rem 0 2rem;padding:1rem;display:grid}.article-contents.svelte-18vfhzc a:where(.svelte-18vfhzc){color:#d2cadc;font:500 .85rem/1.5 var(--mono);gap:.7rem;text-decoration:none;display:flex}.article-contents.svelte-18vfhzc a:where(.svelte-18vfhzc):hover{color:var(--yellow)}.article-contents.svelte-18vfhzc span:where(.svelte-18vfhzc){color:var(--purple)}.lesson-head.svelte-18vfhzc h1:where(.svelte-18vfhzc)+.byline:where(.svelte-18vfhzc){margin-top:1.4rem}.article-video.svelte-18vfhzc{margin:0 0 3rem}.video-frame.svelte-18vfhzc{aspect-ratio:16/9;background:#0b0b0d;border:1px solid #bd93f933;border-radius:3px;position:relative;overflow:hidden}.video-frame.svelte-18vfhzc iframe:where(.svelte-18vfhzc){border:0;width:100%;height:100%;display:block}.video-placeholder.svelte-18vfhzc{height:100%;color:var(--muted);font:500 .85rem/1.5 var(--mono);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.video-placeholder.svelte-18vfhzc p:where(.svelte-18vfhzc){margin:0}figcaption.svelte-18vfhzc{text-align:right;font:500 .85rem/1.5 var(--mono);margin-top:.65rem}figcaption.svelte-18vfhzc a:where(.svelte-18vfhzc){color:var(--purple);text-decoration:none}figcaption.svelte-18vfhzc a:where(.svelte-18vfhzc):hover{text-decoration:underline}.lesson-banner.svelte-18vfhzc{border:1px solid #ffffff1a;border-radius:3px;width:100%;height:auto;margin:3.2rem 0 0;display:block}@media (width>=80rem){.article-tools.svelte-18vfhzc button:where(.svelte-18vfhzc){display:none}}
