.flowchart{position:absolute;overflow:auto;top:0;bottom:0;left:0;right:0;cursor:grab;-webkit-user-select:none;user-select:none;scrollbar-width:none;-ms-overflow-style:none}.flowchart::-webkit-scrollbar{-webkit-appearance:none;width:0;height:0}.flowchart.panning{cursor:grabbing}.flowchart .loader{position:fixed;top:0;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;z-index:10;pointer-events:none;background:rgb(var(--background-color));transition:opacity .25s var(--transition-timing),visibility .25s var(--transition-timing),left .25s var(--transition-timing)}.flowchart .loader.panel-visible{left:var(--panel-width)}.flowchart .loader.hidden{opacity:0;visibility:hidden}@media (max-width: 600px){.flowchart .loader.panel-visible{left:0}}.flowchart .spinner{width:40px;height:40px;border:3px solid rgba(99,33,29,.2);border-top-color:#63211d;border-radius:50%;animation:flowchart-spin .8s linear infinite}@keyframes flowchart-spin{to{transform:rotate(360deg)}}.flowchart svg{opacity:0;visibility:hidden;margin:50vh 50vw;transition:opacity .25s var(--transition-timing),visibility .25s var(--transition-timing)}.flowchart svg.ready{opacity:1;visibility:visible}.flowchart svg g[id^=n-]{opacity:0;pointer-events:none}.flowchart svg g[id^=n-]:hover{cursor:pointer}.flowchart svg g[id^=n-][id$="0"],.flowchart svg g[id^=n-][id$="1"],.flowchart svg g[id^=n-][id$="2"],.flowchart svg g[id^=n-][id$="3"],.flowchart svg g[id^=n-][id$="4"],.flowchart svg g[id^=n-][id$="5"],.flowchart svg g[id^=n-][id$="6"],.flowchart svg g[id^=n-][id$="7"],.flowchart svg g[id^=n-][id$="8"],.flowchart svg g[id^=n-][id$="9"]{pointer-events:all}.flowchart svg g[id^=n-][data-state=teased]:not(.flower-default){cursor:pointer}.flowchart svg g[id^=n-][data-state=teased]:not(.replaced-out):not(.flower-default)>path{display:none}.flowchart svg g[id^=n-][data-state=teased]:not(.replaced-out):not(.flower-default)>[id^=Shape]{filter:none}.flowchart svg g[id^=n-][data-state=teased]:not(.replaced-out):not(.flower-default)>[id^=Shape] path,.flowchart svg g[id^=n-][data-state=teased]:not(.replaced-out):not(.flower-default)>[id^=Shape] circle,.flowchart svg g[id^=n-][data-state=teased]:not(.replaced-out):not(.flower-default)>[id^=Shape] ellipse{fill:#523535}.flowchart svg g[id^=n-][data-state=teased]:not(.replaced-out):not(.flower-default)>rect{fill:#523535}.flowchart svg g[id^=n-][data-state=teased]:not(.replaced-out),.flowchart svg g[id^=n-][data-state=revealed]:not(.replaced-out),.flowchart svg g[id^=n-][data-state=next]:not(.replaced-out),.flowchart svg g[id^=n-][data-state=current]:not(.replaced-out),.flowchart svg g[id^=n-].replaced-in{opacity:1}.flowchart svg g[id^=n-].flower-default:not(.replaced-out){opacity:1;cursor:pointer}.flowchart svg g[id^=n-].flower-default:not(.flower-visited):not(.replaced-out) .flower-text-glyph{display:none}.flowchart svg g[id^=n-].flower-default:not(.flower-visited):not(.replaced-out) .flower-shape{fill:#523535}.flowchart svg g[id^=n-][id=n-057] .flower-shape{stroke:#fff;stroke-width:10}.flowchart svg g[id^=n-].pulse{animation:pulse .6s 1 backwards ease-in-out}.flowchart svg [id^=e-]{opacity:0;pointer-events:none}.flowchart svg [id^=e-][data-state=teased]:not(.replaced-out){opacity:.2}.flowchart svg [id^=e-][data-state=revealed]:not(.replaced-out),.flowchart svg [id^=e-][data-state=next]:not(.replaced-out),.flowchart svg [id^=e-].replaced-in{opacity:1}.flowchart svg [id^=e-][data-state=next][stroke]:not(.replaced-out){stroke:#f5c518}.flowchart svg [id^=e-][data-state=next][fill]:not([fill=none]):not(.replaced-out){fill:#f5c518}@keyframes pulse{0%,50%,to{opacity:1}25%,75%{opacity:.35}}.bottom-controls{position:fixed;z-index:50;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;transition:left .25s var(--transition-timing)}.bottom-controls.panel-visible{left:calc(50% + var(--panel-width) / 2)}.zoom-controls{display:flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 12px #0000001a;font-family:inherit;font-size:13px;color:rgb(var(--text-color))}.zoom-controls .zoom-btn{width:32px;height:32px;padding:0;border:none;border-radius:50%;background:transparent;color:inherit;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.zoom-controls .zoom-btn:hover{background:rgba(0,0,0,.06)}.zoom-controls .zoom-btn.fit{font-size:14px}.zoom-controls .zoom-readout{min-width:48px;text-align:center;font-variant-numeric:tabular-nums;user-select:none}.zoom-controls .zoom-slider{-webkit-appearance:none;appearance:none;width:140px;height:4px;border-radius:2px;background:rgba(0,0,0,.15);outline:none;cursor:pointer}.zoom-controls .zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#63211D;cursor:pointer;border:none}.zoom-controls .zoom-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#63211D;cursor:pointer;border:none}.reveal-all-btn{height:40px;padding:0 16px;appearance:none;border:none;border-radius:999px;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 12px #0000001a;color:rgb(var(--text-color));font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s ease}.reveal-all-btn:hover{background:rgb(255,255,255)}.next-steps-btn{height:40px;padding:0 16px;appearance:none;border:none;border-radius:999px;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 12px #0000001a;color:rgb(var(--text-color));font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s ease}.next-steps-btn:hover{background:rgb(255,255,255)}.help-btn{width:40px;height:40px;padding:0;appearance:none;border:none;border-radius:50%;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 12px #0000001a;color:rgb(var(--text-color));font-family:inherit;font-size:18px;font-weight:600;line-height:1;cursor:pointer;transition:background .15s ease}.help-btn:hover{background:rgb(255,255,255)}@media (max-width: 600px){.bottom-controls.panel-visible{left:50%}}[data-v-4526107f]:root{--background-color: 238,238,238;--intro-background-color: 255,255,255;--text-color: 51,51,51;--accent-color: 51,51,51;--invert-filter: none;--transition-duration: .1s;--transition-duration-long: .3s;--transition-timing: ease-in-out}button[data-v-4526107f]{width:64px;height:64px;padding:0;appearance:none;border:2px solid transparent;border-radius:100%;background-size:32px;background-position:center;background-repeat:no-repeat;background-color:rgba(var(--text-color),.5);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;transition-property:opacity,visibility,border,background-color,transform,box-shadow;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-timing)}button[data-v-4526107f]:hover{transform:scale(1.0625)}button.highlighted[data-v-4526107f]{background-color:rgb(var(--accent-color))}button.disabled[data-v-4526107f]{border-color:rgba(var(--text-color),.15);background-color:rgba(var(--background-color),.65);cursor:not-allowed;filter:var(--invert-filter)}button.disabled[data-v-4526107f]:hover{transform:none;cursor:not-allowed}button.icon-play[data-v-4526107f]{background-image:url(./play-66cbf002.svg)}button.icon-pause[data-v-4526107f]{background-image:url(./pause-aa877d86.svg)}button.icon-return[data-v-4526107f]{background-image:url(./return-e5180312.svg)}button.icon-jump[data-v-4526107f]{background-image:url(./jump-cc4fd614.svg);transition-property:opacity,visibility,border,background,transform,box-shadow}button.icon-jump.disabled[data-v-4526107f]{background-image:url(./jump-disabled-9bd3efd9.svg)}.controls.dark-scheme button.icon-jump.disabled[data-v-4526107f]{background-image:url(./jump-disabled-light-27b8e4df.svg)}button.icon-info[data-v-4526107f]{background-image:url(./info-763ee7ca.svg)}button.icon-buffering[data-v-4526107f]{background-image:url(./loading-ccbbdef1.svg);animation:spin-4526107f .75s infinite}@keyframes spin-4526107f{0%,12.4999%{transform:rotate(0)}12.5%,24.9999%{transform:rotate(45deg)}25%,37.4999%{transform:rotate(90deg)}37.5%,49.9999%{transform:rotate(135deg)}50%,62.4999%{transform:rotate(180deg)}62.5%,74.9999%{transform:rotate(225deg)}75%,87.4999%{transform:rotate(270deg)}87.5%,to{transform:rotate(315deg)}}:root{--panel-width: 416px}button.open{position:absolute;top:16px;left:16px;box-shadow:0 0 0 2px rgb(var(--background-color))}.intro{position:absolute;z-index:100;overflow:hidden;top:0;bottom:0;left:0;width:0;color:rgb(var(--text-color));background:rgb(var(--intro-background-color));transition:width var(--transition-duration-long) var(--transition-timing)}.intro.visible{width:var(--panel-width)}.intro.visible:after{opacity:1}.intro.visible .inner>*,.intro.visible .inner .instructions *:not(.reset){opacity:1}.intro *::selection{color:#fff;background:rgb(var(--accent-color))}.intro .outer{position:absolute;overflow-y:auto;top:0;bottom:0;left:0;right:0}.intro .inner{position:relative;width:var(--panel-width);padding:24px 28px 128px;box-sizing:border-box}.intro .inner>*,.intro .inner .instructions *:not(.reset){opacity:0;transition:opacity var(--transition-duration-long) var(--transition-timing)}.intro h1{max-width:332px;margin:0;font-size:30px;font-weight:600;line-height:110%;text-wrap:balance}.intro h2{margin:10px 0 20px;font-size:20px;font-weight:400;line-height:120%;text-wrap:balance}.intro .description{margin-top:40px}.intro h3{margin:24px 0 -1px;font-size:15px;font-weight:600;line-height:120%;letter-spacing:.01em;text-transform:uppercase}.intro p{margin:10px 0;line-height:140%}.intro p strong{display:block;margin:6px 0 0}.intro p.attribution{margin-top:24px;color:rgba(var(--text-color),.5)}.intro p.attribution a{text-decoration-color:rgba(var(--accent-color),.25)}.intro a{color:inherit;text-decoration-color:rgba(var(--accent-color),.6);text-decoration-thickness:2px;text-underline-offset:2px;transition:color var(--transition-duration) var(--transition-timing)}.intro a:hover{color:rgb(var(--accent-color))}.intro .reset{display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;margin:36px -12px 0;padding:24px 24px 28px;text-align:center;text-wrap:balance;line-height:1.25;border-radius:8px;background:linear-gradient(to top,rgba(var(--text-color),.1),rgba(var(--text-color),.1)),linear-gradient(to top,rgba(var(--background-color),.65),rgba(var(--background-color),.65))}.intro .reset button{display:block;margin:12px auto 2px;padding:8px 16px;appearance:none;font-weight:600;border:none;border-radius:64px;color:#fff;background:rgb(var(--accent-color));cursor:pointer;transition:opacity var(--transition-duration-long) var(--transition-timing),transform var(--transition-duration) var(--transition-timing)!important}.intro .reset button:hover{transform:scale(1.0625)}.intro button.close{position:absolute;opacity:0;top:12px;right:12px;width:32px;height:32px;padding:0;appearance:none;border:none;border-radius:100%;background-position:center;background-image:url(./close-58006529.svg);background-color:rgba(var(--text-color),.5);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;transition-property:opacity,transform,box-shadow;transition-duration:var(--transition-duration-long),var(--transition-duration),var(--transition-duration);transition-timing-function:var(--transition-timing)}.intro button.close:hover{transform:scale(1.125)}.intro.visible button.close{opacity:1}.intro *:focus-visible{position:relative;background:rgb(var(--intro-background-color));box-shadow:0 0 0 2px rgb(var(--intro-background-color)),0 0 0 4px rgb(var(--text-color))!important}@media (max-width: 600px){.intro.visible,.intro .inner{width:100vw}}.howto{position:fixed;z-index:90;top:120px;left:50%;transform:translate(-50%);width:340px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:20px 20px 18px;border-radius:16px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 6px 28px #00000029;font-family:inherit;color:rgb(var(--text-color));transition:left .25s var(--transition-timing)}.howto.panel-visible{left:calc(50% + var(--panel-width) / 2)}.howto-close{position:absolute;top:8px;right:8px;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:transparent;color:rgba(var(--text-color),.6);font-size:20px;line-height:1;cursor:pointer}.howto-close:hover{background:rgba(0,0,0,.06);color:rgb(var(--text-color))}.howto-title{margin:0 0 8px;padding-right:24px;font-size:17px;font-weight:600}.howto-copy{margin:0 0 14px;font-size:14px;line-height:1.45;color:rgba(var(--text-color),.85)}.howto-demo{position:relative;width:100%;aspect-ratio:16/9;margin-bottom:16px;border-radius:10px;overflow:hidden;background:rgba(var(--text-color),.05)}.demo-node{position:absolute;top:50%;left:50%;width:128px;height:62px;margin:-31px 0 0 -64px;border-radius:0;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;gap:9px;padding:0 16px;animation:demo-node-reveal 4.5s linear infinite}.demo-line{height:7px;border-radius:0;background:rgb(var(--accent-color));opacity:0;animation:demo-line-in 4.5s linear infinite}.demo-line--1{width:82%}.demo-line--2{width:58%}.demo-ripple{position:absolute;top:50%;left:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:rgba(var(--accent-color),.35);opacity:0;transform:scale(0);animation:demo-ripple 4.5s linear infinite}.demo-cursor{position:absolute;top:50%;left:50%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));animation:demo-cursor-move 4.5s linear infinite}@keyframes demo-node-reveal{0%,44%{background:#37302d;box-shadow:inset 0 0 0 1px #00000026}52%,88%{background:#fff;box-shadow:0 2px 10px #0000001f,inset 0 0 0 1.5px rgba(var(--accent-color),.35)}96%,to{background:#37302d;box-shadow:inset 0 0 0 1px #00000026}}@keyframes demo-line-in{0%,48%{opacity:0}58%,88%{opacity:1}96%,to{opacity:0}}@keyframes demo-ripple{0%,42%{opacity:0;transform:scale(0)}45%{opacity:.5;transform:scale(.3)}62%{opacity:0;transform:scale(1.9)}to{opacity:0;transform:scale(1.9)}}@keyframes demo-cursor-move{0%{transform:translate(52px,34px) scale(1);opacity:0}10%{transform:translate(52px,34px) scale(1);opacity:1}38%{transform:translate(6px,4px) scale(1);opacity:1}44%{transform:translate(6px,4px) scale(.82);opacity:1}50%{transform:translate(6px,4px) scale(1);opacity:1}82%{transform:translate(6px,4px) scale(1);opacity:1}92%{transform:translate(52px,34px) scale(1);opacity:0}to{transform:translate(52px,34px) scale(1);opacity:0}}@media (prefers-reduced-motion: reduce){.demo-node,.demo-line,.demo-ripple,.demo-cursor{animation:none}.demo-node{background:#fff;box-shadow:0 2px 10px #0000001f,inset 0 0 0 1.5px rgba(var(--accent-color),.35)}.demo-line{opacity:1}.demo-cursor{transform:translate(6px,4px);opacity:1}.demo-ripple{opacity:0}}.howto-got-it{display:block;width:100%;height:38px;appearance:none;border:none;border-radius:999px;background:rgb(var(--accent-color));color:#fff;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:transform var(--transition-duration) var(--transition-timing)}.howto-got-it:hover{transform:scale(1.02)}.howto-fade-enter-active,.howto-fade-leave-active{transition:opacity .25s var(--transition-timing),transform .25s var(--transition-timing)}.howto-fade-enter-from,.howto-fade-leave-to{opacity:0;transform:translate(-50%) translateY(-8px)}@media (max-width: 600px){.howto.panel-visible{left:50%}}.end-panel{position:fixed;z-index:90;top:120px;left:50%;transform:translate(-50%);width:340px;max-width:calc(100vw - 32px);max-height:calc(100vh - 152px);overflow-y:auto;box-sizing:border-box;padding:22px 24px 20px;border-radius:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 6px 28px #00000029;color:rgb(var(--text-color));transition:left .25s var(--transition-timing)}.end-panel.panel-visible{left:calc(50% + var(--panel-width) / 2)}.end-close{position:absolute;top:10px;right:10px;width:30px;height:30px;padding:0;border:none;border-radius:50%;background:transparent;color:rgba(var(--text-color),.6);font-size:22px;line-height:1;cursor:pointer}.end-close:hover{background:rgba(var(--text-color),.08);color:rgb(var(--text-color))}.end-title{margin:0 0 8px;padding-right:28px;font-size:20px;font-weight:600;line-height:115%;text-wrap:balance}.end-intro{margin:0 0 18px;font-size:14px;line-height:1.5;color:rgba(var(--text-color),.85)}.end-section{margin-bottom:18px}.end-section ul{margin:0;padding:0;list-style:none}.end-section li+li{margin-top:8px}.end-section a{display:inline-block;font-size:15px;color:rgb(var(--accent-color));text-decoration-color:rgba(var(--accent-color),.4);text-decoration-thickness:2px;text-underline-offset:2px;transition:color var(--transition-duration) var(--transition-timing)}.end-section a:hover{color:rgb(var(--text-color))}.end-continue{display:block;width:100%;height:40px;margin-top:4px;appearance:none;border:none;border-radius:999px;background:rgb(var(--accent-color));color:#fff;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:transform var(--transition-duration) var(--transition-timing)}.end-continue:hover{transform:scale(1.02)}.end-fade-enter-active,.end-fade-leave-active{transition:opacity .25s var(--transition-timing),transform .25s var(--transition-timing)}.end-fade-enter-from,.end-fade-leave-to{opacity:0;transform:translate(-50%) translateY(-8px)}@media (max-width: 600px){.end-panel.panel-visible{left:50%}}/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}@font-face{font-family:IBM Plex Sans;src:url(./IBMPlexSans-Regular-ecfc5b17.woff2) format("woff2"),url(./IBMPlexSans-Regular-82ab74c4.woff) format("woff");font-weight:400;font-style:normal}@font-face{font-family:IBM Plex Sans;src:url(./IBMPlexSans-SemiBold-bd900ecb.woff2) format("woff2"),url(./IBMPlexSans-SemiBold-1f6cadd5.woff) format("woff");font-weight:600;font-style:normal}:root{--background-color: 238,238,238;--intro-background-color: 255,255,255;--text-color: 51,51,51;--accent-color: 51,51,51;--invert-filter: none;--transition-duration: .1s;--transition-duration-long: .3s;--transition-timing: ease-in-out}body{width:100%;height:100%;overflow:hidden;background:rgb(var(--background-color))}#app{display:contents;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;color:rgb(var(--text-color));-webkit-tap-highlight-color:rgba(0,0,0,0)}*:focus{outline:none}*:focus-visible{box-shadow:0 0 0 2px rgb(var(--background-color)),0 0 0 4px rgb(var(--text-color))!important}
