:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}html,body{margin:0;height:100%}*{box-sizing:border-box}.page{min-height:100vh}.app{height:100vh}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.splash-page{display:grid;place-content:center;background-color:#4898b1}.splash-page a{color:inherit;text-decoration:inherit}.splash-page__title{font-size:10em;color:#fff}.splash-page__cta{opacity:0;animation:fadeIn 3s;animation-delay:1s;animation-fill-mode:forwards;font-size:4em;text-align:center}.app-graph{position:relative;width:100%;height:100%;background:#4898b1}.app-graph svg{position:absolute;width:100%;height:100%;top:0;left:0}.app-graph svg path{filter:drop-shadow(0 0 5px rgba(0,0,0,.4))}.app-graph__nodes .app-node{position:absolute}.app-node{min-width:220px;padding-top:.5rem;background:white;color:#555;box-shadow:0 0 2em #0003;border-radius:2px;-webkit-user-select:none;user-select:none}.app-node--selected{outline:2px solid #f80}.app-node__header{padding-left:.5rem;padding-right:.5rem;display:flex;font-weight:600}.app-node__separator{padding-left:1px;padding-right:1px}.app-node__params--output{text-align:right}.app-node__actions{opacity:0;transition:opacity .2s}.app-node:hover .app-node__actions{opacity:1}.app-node-action{background:transparent;border:none;filter:brightness(0);transition:transform .2s}.app-node-action:hover{transform:scale(1.1)}.app-param{position:relative;display:flex;flex-direction:row;gap:1em;padding-left:.5rem;padding-right:.5rem}.app-param:hover,.app-param:hover .app-param__connector-target{background:#ccc}.app-param__name,.app-param__input{width:5em}.app-param--output{flex-direction:row-reverse}.app-param__input{flex:1;min-width:0}.app-param__input input,.app-param__input select{width:100%;max-width:100%}.app-param__connector{position:absolute;top:50%;width:32px;height:32px;display:grid;place-content:center}.app-param__connector:hover .app-param__connector-target{transform:scale(1.25)}.app-param__connector-target{width:.75rem;height:.75rem;border-radius:2rem;background:white;transition:transform .15s}.app-param--output .app-param__connector{right:0;transform:translate(50%,-50%)}.app-param--input .app-param__connector{left:0;transform:translate(-50%,-50%)}.app-option--selected{background:red}.console-input textarea{display:block;width:100%;resize:none;font:inherit;opacity:.8;transition:opacity .2s ease-out}.console-input--focused textarea{opacity:1}.console-input__hints{position:absolute;bottom:100%;left:0;width:100%}.console-input__hints .app-select{display:flex;flex-direction:column-reverse}.console-input__error{position:absolute;bottom:100%;left:0;width:100%;padding:.25em;color:#ce2727;font-weight:700;background:white;border:1px solid #ff6b6b;font-size:.85em}.help-button{position:absolute;top:.5em;left:.5em;display:grid;place-content:center;width:1.5em;height:1.5em;border:1.5px solid currentColor;border-radius:50%;color:#fff;font-weight:600;text-decoration:none;transition:background .15s}.help-button:hover{background:rgba(255,255,255,.15)}.midi-learn-button{position:absolute;top:.5em;right:.5em;display:grid;place-content:center;width:2.25em;height:2.25em;background:transparent;border:none;border-radius:50%;color:#fff;cursor:pointer;transition:background .15s}.midi-learn-button:hover{background:rgba(255,255,255,.15)}.midi-learn-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-content:center;background:rgba(0,0,0,.5)}.midi-learn-modal__box{display:flex;flex-direction:column;align-items:center;gap:.5em;padding:2em 3em;background:white;color:#555;border-radius:4px;box-shadow:0 0 2em #0006;text-align:center}.midi-learn-modal__title{font-weight:600;font-size:1.1em}.graph-page{height:100vh;position:relative}.graph-page__header{color:#fff;position:absolute;top:.5em;left:0;width:100%;text-align:center;font-weight:500}.graph-page .console-input{position:absolute;bottom:1em;left:50%;width:80%;max-width:22cm;transform:translate(-50%)}.docs-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:grid;place-items:center;padding:2em 1em;background:rgba(0,0,0,.5)}.docs-overlay__panel{display:flex;flex-direction:column;width:100%;max-width:52em;height:100%;background:white;color:#333;border-radius:4px;box-shadow:0 0 2em #0006;overflow:hidden}.docs-overlay__nav{display:flex;align-items:center;gap:1.5em;padding:.75em 1.5em;background:#4898b1;font-weight:500}.docs-overlay__nav a{color:#ffffffbf;text-decoration:none}.docs-overlay__nav a:hover,.docs-overlay__nav a.active{color:#fff}.docs-overlay__nav a.active{text-decoration:underline;text-underline-offset:.3em}.docs-overlay__close{margin-left:auto;padding:0 .25em;background:transparent;border:none;color:#fff;font-size:1.5em;line-height:1;cursor:pointer}.docs-overlay__scroll{flex:1;overflow-y:auto}.docs-overlay__content{padding:1em 2.5em 3em}.docs-overlay__content a{color:#39798d}.docs-overlay__content h1,.docs-overlay__content h2,.docs-overlay__content h3{line-height:1.25}.docs-overlay__content h2{margin-top:2em;padding-bottom:.3em;border-bottom:1px solid #e4e4e4}.docs-overlay__content img{max-width:100%}.docs-overlay__content code,.docs-overlay__content kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875em}.docs-overlay__content :not(pre)>code{padding:.15em .35em;background:#f0f0f0;border-radius:3px}.docs-overlay__content pre{padding:1em;background:#f5f5f5;border-radius:4px;overflow-x:auto}.docs-overlay__content .docs-snippet{position:relative}.docs-overlay__content .docs-snippet pre{padding-right:6em}.docs-overlay__content .docs-snippet__load{position:absolute;top:.6em;right:.6em;padding:.2em .7em;background:#4898b1;border:none;border-radius:3px;color:#fff;font:inherit;font-size:.8em;font-weight:500;cursor:pointer;opacity:.75;transition:opacity .15s}.docs-overlay__content .docs-snippet__load:hover{opacity:1}.docs-overlay__content kbd{padding:.1em .4em;border:1px solid #ccc;border-bottom-width:2px;border-radius:3px}.docs-overlay__content table{border-collapse:collapse}.docs-overlay__content th,.docs-overlay__content td{padding:.4em .75em;border:1px solid #ddd;text-align:left;vertical-align:top}.docs-overlay__content th{background:#f5f5f5}
