.programming-diagram:where(.astro-25kyhbby){--border:color-mix(in srgb,var(--sl-color-accent) 34%,var(--sl-color-gray-5));--panel:color-mix(in srgb,var(--sl-color-bg) 91%,var(--sl-color-accent-low));border:1px solid var(--border);background:color-mix(in srgb,var(--sl-color-bg-nav) 86%,var(--sl-color-accent-low));border-radius:1rem;margin:1.75rem 0 2.15rem;padding:clamp(1rem,3vw,1.5rem);overflow-x:auto}.programming-diagram:where(.astro-25kyhbby):focus-visible{outline:3px solid var(--sl-color-accent-high);outline-offset:3px}figcaption:where(.astro-25kyhbby){color:var(--sl-color-white);text-align:center;margin-bottom:1.15rem;font-weight:750;line-height:1.35}strong:where(.astro-25kyhbby),small:where(.astro-25kyhbby){display:block}small:where(.astro-25kyhbby){color:var(--sl-color-gray-2);font-size:.76rem;line-height:1.35}em:where(.astro-25kyhbby){color:var(--sl-color-accent-high);letter-spacing:.065em;text-transform:uppercase;font-size:.66rem;font-style:normal;font-weight:800;display:block}.node:where(.astro-25kyhbby),.lane:where(.astro-25kyhbby),.branches:where(.astro-25kyhbby)>div:where(.astro-25kyhbby),.function-box:where(.astro-25kyhbby),.returns:where(.astro-25kyhbby)>div:where(.astro-25kyhbby),.milestones:where(.astro-25kyhbby) li:where(.astro-25kyhbby),.cells:where(.astro-25kyhbby)>div:where(.astro-25kyhbby),.argc:where(.astro-25kyhbby),.argv:where(.astro-25kyhbby){border:1px solid var(--border);background:var(--panel);border-radius:.75rem}.node:where(.astro-25kyhbby){text-align:center;min-width:7.4rem;padding:.78rem}.flow:where(.astro-25kyhbby){justify-content:center;align-items:center;gap:.5rem;min-width:max-content;display:flex}.arrow:where(.astro-25kyhbby){background:var(--sl-color-accent-high);width:1.1rem;height:2px;position:relative}.arrow:where(.astro-25kyhbby):after{border-top:2px solid var(--sl-color-accent-high);border-right:2px solid var(--sl-color-accent-high);content:"";width:.42rem;height:.42rem;position:absolute;top:50%;right:0;transform:translateY(-50%)rotate(45deg)}.down:where(.astro-25kyhbby){background:var(--sl-color-accent-high);width:2px;height:.85rem;margin-inline:auto;display:block;position:relative}.module-map:where(.astro-25kyhbby){max-width:42rem;margin-inline:auto}.lane:where(.astro-25kyhbby){border-left-width:3px;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.8rem;display:grid}.lane:where(.astro-25kyhbby) i:where(.astro-25kyhbby),.milestones:where(.astro-25kyhbby) i:where(.astro-25kyhbby){background:var(--sl-color-accent);width:1.5rem;height:1.5rem;color:var(--sl-color-black);border-radius:50%;place-items:center;font-size:.72rem;font-style:normal;font-weight:850;display:grid}.lane:where(.astro-25kyhbby) b:where(.astro-25kyhbby){background:color-mix(in srgb,var(--sl-color-accent) 20%,transparent);border-radius:999px;padding:.3rem .55rem;font-size:.7rem}.lane:where(.astro-25kyhbby).python{border-left-color:#9b87dc}.lane:where(.astro-25kyhbby).c{border-left-color:#d89c5b}.lane:where(.astro-25kyhbby).investigate{border-left-color:#5eb6a5}.core:where(.astro-25kyhbby){gap:.35rem;display:grid}.core:where(.astro-25kyhbby) .node:where(.astro-25kyhbby){min-width:10rem}.state:where(.astro-25kyhbby){border-color:#9b87dc}.external:where(.astro-25kyhbby){border-style:dashed}.check:where(.astro-25kyhbby){border-color:#d89c5b}.result:where(.astro-25kyhbby){border-color:var(--sl-color-accent)}.control-map:where(.astro-25kyhbby){max-width:36rem;margin-inline:auto}.decision:where(.astro-25kyhbby){border-radius:2rem;max-width:13rem;margin-inline:auto}.branches:where(.astro-25kyhbby){grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0;display:grid}.branches:where(.astro-25kyhbby)>div:where(.astro-25kyhbby){text-align:center;padding:.8rem}.branches:where(.astro-25kyhbby) b:where(.astro-25kyhbby){background:color-mix(in srgb,var(--sl-color-accent) 24%,transparent);border-radius:999px;margin-bottom:.3rem;padding:.1rem .45rem;font-size:.68rem;display:inline-block}.loop:where(.astro-25kyhbby),.pointer:where(.astro-25kyhbby){background:color-mix(in srgb,var(--sl-color-accent-low) 44%,transparent);color:var(--sl-color-gray-2);border-radius:.6rem;margin:.7rem 0 0;padding:.65rem;font-size:.76rem;line-height:1.45}.function-box:where(.astro-25kyhbby){text-align:center;border-width:2px;min-width:13rem;padding:.9rem}.returns:where(.astro-25kyhbby){gap:.4rem;display:grid}.returns:where(.astro-25kyhbby)>div:where(.astro-25kyhbby){min-width:8rem;padding:.55rem .7rem}.returns:where(.astro-25kyhbby) .exception:where(.astro-25kyhbby){border-color:#d57362}.milestones:where(.astro-25kyhbby){grid-template-columns:repeat(5,minmax(7rem,1fr));gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.diagram-python-lab:where(.astro-25kyhbby) .milestones:where(.astro-25kyhbby),.diagram-c-memory-lab:where(.astro-25kyhbby) .milestones:where(.astro-25kyhbby){grid-template-columns:repeat(4,minmax(7rem,1fr))}.milestones:where(.astro-25kyhbby) li:where(.astro-25kyhbby){text-align:center;padding:.75rem}.milestones:where(.astro-25kyhbby) i:where(.astro-25kyhbby){margin:0 auto .4rem}.build-flow:where(.astro-25kyhbby) .node:where(.astro-25kyhbby){min-width:6.8rem}.build-flow:where(.astro-25kyhbby) em:where(.astro-25kyhbby){font-family:var(--__sl-font-mono)}.arguments-map:where(.astro-25kyhbby){max-width:38rem;margin-inline:auto}.command:where(.astro-25kyhbby){border:1px dashed var(--border);background:var(--sl-color-bg);text-align:center;border-radius:.65rem;padding:.75rem}.argument-layout:where(.astro-25kyhbby){grid-template-columns:9rem 1fr;gap:.65rem;display:grid}.argc:where(.astro-25kyhbby),.argv:where(.astro-25kyhbby){padding:.75rem}.argc:where(.astro-25kyhbby){text-align:center;align-content:center;display:grid}.argv:where(.astro-25kyhbby)>div:where(.astro-25kyhbby){grid-template-columns:1fr auto 1.5fr;align-items:center;gap:.45rem;padding:.28rem 0;display:grid}.argv:where(.astro-25kyhbby) b:where(.astro-25kyhbby){color:var(--sl-color-accent-high)}.cells:where(.astro-25kyhbby){grid-template-columns:repeat(6,minmax(7rem,1fr));min-width:45rem;display:grid}.cells:where(.astro-25kyhbby)>div:where(.astro-25kyhbby){text-align:center;border-radius:0;padding:.7rem .45rem}.cells:where(.astro-25kyhbby)>div:where(.astro-25kyhbby):first-child{border-radius:.7rem 0 0 .7rem}.cells:where(.astro-25kyhbby)>div:where(.astro-25kyhbby):last-child{border-radius:0 .7rem .7rem 0}.cells:where(.astro-25kyhbby) .boundary:where(.astro-25kyhbby){border-style:dashed;border-color:#d57362}.pointer:where(.astro-25kyhbby){width:max-content;max-width:100%;margin-left:.8rem}[data-theme=light] figcaption:where(.astro-25kyhbby){color:var(--sl-color-white)}@container lesson (width<=45rem){.milestones:where(.astro-25kyhbby){min-width:36rem}}@container lesson (width<=36rem){.programming-diagram:where(.astro-25kyhbby){overflow-x:visible}.flow:where(.astro-25kyhbby){min-width:0;display:grid}.arrow:where(.astro-25kyhbby){width:2px;height:1rem;margin-inline:auto}.arrow:where(.astro-25kyhbby):after{top:auto;bottom:0;right:50%;transform:translate(50%)rotate(135deg)}.lane:where(.astro-25kyhbby){grid-template-columns:auto 1fr}.lane:where(.astro-25kyhbby) b:where(.astro-25kyhbby){grid-column:2;justify-self:start}.branches:where(.astro-25kyhbby){grid-template-columns:1fr}.returns:where(.astro-25kyhbby){grid-template-columns:1fr 1fr}.milestones:where(.astro-25kyhbby),.diagram-python-lab:where(.astro-25kyhbby) .milestones:where(.astro-25kyhbby),.diagram-c-memory-lab:where(.astro-25kyhbby) .milestones:where(.astro-25kyhbby){grid-template-columns:1fr;min-width:0}.argument-layout:where(.astro-25kyhbby){grid-template-columns:1fr}.argc:where(.astro-25kyhbby){min-height:4rem}.cells:where(.astro-25kyhbby){grid-template-columns:repeat(2,1fr);min-width:0}.cells:where(.astro-25kyhbby)>div:where(.astro-25kyhbby),.cells:where(.astro-25kyhbby)>div:where(.astro-25kyhbby):first-child,.cells:where(.astro-25kyhbby)>div:where(.astro-25kyhbby):last-child{border-radius:.55rem}}
