:root{--icon-save:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1maWxlLWRvd24gcHJldmlldy1pY29uIj48cGF0aCBkPSJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiIvPjxwYXRoIGQ9Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1Ii8+PHBhdGggZD0iTTEyIDE4di02Ii8+PHBhdGggZD0ibTkgMTUgMyAzIDMtMyIvPjwvc3ZnPg==");--icon-load:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1maWxlLXVwIHByZXZpZXctaWNvbiI+PHBhdGggZD0iTTYgMjJhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA0LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2MTJhMiAyIDAgMCAxLTIgMnoiLz48cGF0aCBkPSJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSIvPjxwYXRoIGQ9Ik0xMiAxMnY2Ii8+PHBhdGggZD0ibTE1IDE1LTMtMy0zIDMiLz48L3N2Zz4=");--icon-export:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1maWxlLWNvZGUgcHJldmlldy1pY29uIj48cGF0aCBkPSJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiIvPjxwYXRoIGQ9Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1Ii8+PHBhdGggZD0iTTEwIDEyLjUgOCAxNWwyIDIuNSIvPjxwYXRoIGQ9Im0xNCAxMi41IDIgMi41LTIgMi41Ii8+PC9zdmc+");--icon-reset:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1yb3RhdGUtY2N3IHByZXZpZXctaWNvbiI+PHBhdGggZD0iTTMgMTJhOSA5IDAgMSAwIDktOSA5Ljc1IDkuNzUgMCAwIDAtNi43NCAyLjc0TDMgOCIvPjxwYXRoIGQ9Ik0zIDN2NWg1Ii8+PC9zdmc+");--icon-light:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1zdW4gcHJldmlldy1pY29uIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI0Ii8+PHBhdGggZD0iTTEyIDJ2MiIvPjxwYXRoIGQ9Ik0xMiAyMHYyIi8+PHBhdGggZD0ibTQuOTMgNC45MyAxLjQxIDEuNDEiLz48cGF0aCBkPSJtMTcuNjYgMTcuNjYgMS40MSAxLjQxIi8+PHBhdGggZD0iTTIgMTJoMiIvPjxwYXRoIGQ9Ik0yMCAxMmgyIi8+PHBhdGggZD0ibTYuMzQgMTcuNjYtMS40MSAxLjQxIi8+PHBhdGggZD0ibTE5LjA3IDQuOTMtMS40MSAxLjQxIi8+PC9zdmc+");--icon-dark:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1tb29uIHByZXZpZXctaWNvbiI+PHBhdGggZD0iTTIwLjk4NSAxMi40ODZhOSA5IDAgMSAxLTkuNDczLTkuNDcyYy40MDUtLjAyMi42MTcuNDYuNDAyLjgwM2E2IDYgMCAwIDAgOC4yNjggOC4yNjhjLjM0NC0uMjE1LjgyNS0uMDA0LjgwMy40MDEiLz48L3N2Zz4=");--icon-source:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1nbG9iZS1jb2RlIHByZXZpZXctaWNvbiI+PHBhdGggZD0iTTE1LjUgMTAgMTMgNy41IDE1LjUgNSIvPjxwYXRoIGQ9Ik0xNS44NjEgMTRBMTQuNSAxNC41IDAgMDExMiAyMmExNC40OCAxNC40OCAwIDAxMC0yMCAxMCAxMCAwIDEwOS44ODggMTEuNSIvPjxwYXRoIGQ9Ik0xOS41IDUgMjIgNy41IDE5LjUgMTAiLz48cGF0aCBkPSJNMiAxMmg4LjUiLz48L3N2Zz4=");--icon-npm:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1wYWNrYWdlIHByZXZpZXctaWNvbiI+PHBhdGggZD0iTTExIDIxLjczYTIgMiAwIDAgMCAyIDBsNy00QTIgMiAwIDAgMCAyMSAxNlY4YTIgMiAwIDAgMC0xLTEuNzNsLTctNGEyIDIgMCAwIDAtMiAwbC03IDRBMiAyIDAgMCAwIDMgOHY4YTIgMiAwIDAgMCAxIDEuNzN6Ii8+PHBhdGggZD0iTTEyIDIyVjEyIi8+PHBvbHlsaW5lIHBvaW50cz0iMy4yOSA3IDEyIDEyIDIwLjcxIDciLz48cGF0aCBkPSJtNy41IDQuMjcgOSA1LjE1Ii8+PC9zdmc+")}body,html{height:100%;width:100%;margin:0}html[data-theme=light]{--imml2-background:var(--imml2-background-light);--imml2-text:var(--imml2-text-light);--imml2-text-inverse:var(--imml2-text-dark);--imml2-accent:var(--imml2-accent-light)}html[data-theme=dark]{--imml2-background:var(--imml2-background-dark);--imml2-text:var(--imml2-text-dark);--imml2-text-inverse:var(--imml2-text-light);--imml2-accent:var(--imml2-accent-dark)}main{width:100vw;min-height:100%;max-height:100%;box-sizing:border-box;overflow-x:hidden;overflow-y:hidden}#loading{position:absolute;z-index:10;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#000;transition:transform .5s}#loading.done{transform:translateY(-100%)}#loading .logo{padding:16px;background:#fff}img.logo{height:16px;image-rendering:pixelated}nav{height:48px;padding:0 16px;background:#000;color:#fff;display:flex;align-items:center}nav .flex{flex-grow:1}nav .space{width:24px}nav a,nav button{all:initial;cursor:pointer}nav .logo{filter:invert();margin-right:32px}#app{position:fixed;width:100%;height:calc(100% - 48px);flex-grow:1;display:flex;flex-direction:row}#editor{width:50%}#site{width:50%;overflow:auto}#site p.error{font-family:monospace;background:#8b0000;color:#fff;margin:1em;padding:1em 2em}.icon{margin:0 8px;background-position:center;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}nav .icon{filter:invert()}.icon.save{background-image:var(--icon-save)}.icon.load{background-image:var(--icon-load)}.icon.export{background-image:var(--icon-export)}.icon.reset{background-image:var(--icon-reset)}[data-theme=light] button.theme{background-image:var(--icon-dark)}[data-theme=dark] button.theme{background-image:var(--icon-light)}.icon.source{background-image:var(--icon-source)}.icon.npm{background-image:var(--icon-npm)}#imml2 a.portal:not(.inline){display:block}#imml2 .pages>.page,#imml2 .pages>.page:target~.page:last-child{display:none}#imml2 .pages>.page:target,#imml2 .pages>:last-child{display:block}#imml2 .pages>:last-child .breadcrumbs{visibility:hidden}:root{--imml2-text-light:#333333;--imml2-text-dark:#eeeeee;--imml2-background-light:#ffffff;--imml2-background-dark:#121212;--imml2-accent-light:dodgerblue;--imml2-accent-dark:dodgerblue}:root{--imml2-background:var(--imml2-background-light);--imml2-text:var(--imml2-text-light);--imml2-text-inverse:var(--imml2-text-dark);--imml2-accent:var(--imml2-accent-light)}@media (prefers-color-scheme:dark){:root{--imml2-background:var(--imml2-background-dark);--imml2-text:var(--imml2-text-dark);--imml2-text-inverse:var(--imml2-text-light);--imml2-accent:var(--imml2-accent-dark)}}body,html{height:100%;width:100%;margin:0}body{font-family:sans-serif;min-height:100%;color:var(--imml2-text);background:var(--imml2-background)}.pages{margin:0 auto;max-width:600px;padding-left:1em;padding-right:1em}.pages .page{padding-top:2em;padding-bottom:10em}.page .breadcrumbs{font-family:monospace;text-transform:uppercase;font-size:small}p{line-height:22px}a{width:fit-content;color:var(--imml2-accent);border-bottom:1px dotted var(--imml2-accent);text-decoration:none}hr{border-style:solid;border-bottom:1px;margin-top:1em;margin-bottom:1em}blockquote{border-left:.5em solid var(--imml2-text-inverse);padding:0 1em}blockquote p{font-style:italic}code{background:var(--imml2-text-inverse);border-radius:.25em;padding:0 .25em;font-family:monospace;display:inline-block}pre code{padding:.5em .5em}pre{overflow-x:auto}img{max-width:100%}table{margin-top:.25em;border-collapse:collapse;width:100%}thead{text-align:left;font-weight:700}thead tr{border-bottom:1px solid}tr{border-bottom:1px dashed}td,th{padding:4px}