@import"https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap";.wasm-demo-container{width:100%;display:flex;justify-content:center;align-items:center;padding:calc(var(--global-space) * 2) 0}#glcanvas{display:block;width:100%;max-width:1000px;height:800px;background:#000;border:1px solid var(--secondary-color)}@media (max-width: 768px){#glcanvas{height:400px}.wasm-demo-container{padding:var(--global-space) 0}}:root{--primary-color: #42A9EE;--secondary-color: #C3C3C3;--font-color: #EEEEEE;--background-color: #1C1C1C;--global-font-size: 16px;--global-line-height: 1.6em;--global-space: 10px;--page-width: 60em;--font-stack: "Roboto Mono", Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif}*{box-sizing:border-box}html{font-family:var(--font-stack);font-size:var(--global-font-size);color:var(--font-color);line-height:var(--global-line-height)}body{margin:0;padding:0;background-color:var(--background-color);min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column;background-color:var(--background-color)}.container{max-width:var(--page-width);margin:0 auto;padding:calc(var(--global-space) * 2);width:100%;flex:1}.description{margin-bottom:calc(var(--global-space) * 2);padding:calc(var(--global-space) * 1.5);border-left:3px solid var(--primary-color);background-color:#42a9ee0d}.description p{margin:0;color:var(--font-color);line-height:var(--global-line-height)}.blog-post{color:var(--font-color)}.post-header{margin-bottom:calc(var(--global-space) * 3);padding-bottom:calc(var(--global-space) * 2);border-bottom:1px dashed var(--secondary-color)}.post-header h1{color:var(--primary-color);font-size:1.8rem;margin:0 0 var(--global-space) 0;line-height:1.3}.post-meta{color:var(--secondary-color);font-size:.9rem;margin:0}.intro{margin-bottom:calc(var(--global-space) * 3);padding:calc(var(--global-space) * 1.5);border-left:3px solid var(--primary-color);background-color:#42a9ee0d}.intro p{margin:0 0 var(--global-space) 0}.intro p:last-child{margin-bottom:0}.demo-section{margin-bottom:calc(var(--global-space) * 4)}.demo-section h2{color:var(--primary-color)}.demo-instructions{color:var(--secondary-color);margin-bottom:var(--global-space)}.demo-instructions .key{background-color:#ffffff1a;padding:2px 8px;border-radius:3px;border:1px solid var(--secondary-color)}.concept{margin-bottom:calc(var(--global-space) * 4);padding-bottom:calc(var(--global-space) * 2);border-bottom:1px dashed rgba(195,195,195,.3)}.concept:last-of-type{border-bottom:none}.concept h2{color:var(--primary-color);font-size:1.4rem;margin:0 0 calc(var(--global-space) * 2) 0}.concept h3{color:var(--secondary-color);font-size:1rem;margin:calc(var(--global-space) * 2) 0 var(--global-space) 0}pre{background-color:#0000004d;border:1px solid rgba(195,195,195,.2);padding:calc(var(--global-space) * 1.5);overflow-x:auto;margin:var(--global-space) 0;border-radius:0}pre code{color:var(--font-color);font-family:var(--font-stack);font-size:.9rem;line-height:1.5}code{background-color:#0000004d;padding:2px 6px;font-family:var(--font-stack);color:var(--primary-color);font-size:.9em}pre code{background:none;padding:0;color:var(--font-color)}blockquote{margin:var(--global-space) 0;padding:var(--global-space) calc(var(--global-space) * 1.5);border-left:3px solid var(--secondary-color);background-color:#c3c3c30d;font-style:italic;color:var(--secondary-color)}blockquote p{margin:0}ul,ol{margin:var(--global-space) 0;padding-left:calc(var(--global-space) * 2.5)}li{margin-bottom:calc(var(--global-space) * .5)}table{width:100%;border-collapse:collapse;margin:var(--global-space) 0;font-size:.9rem}th,td{padding:calc(var(--global-space) * .8);text-align:left;border:1px solid rgba(195,195,195,.3)}th{background-color:#42a9ee1a;color:var(--primary-color)}td{background-color:#0003}.positive{color:#4caf50;font-weight:700}.neutral{color:#ffc107;font-weight:700}.negative{color:#f44336;font-weight:700}a{color:var(--primary-color);text-decoration:none}a:hover{text-decoration:underline}.post-footer{margin-top:calc(var(--global-space) * 4);padding-top:calc(var(--global-space) * 2);border-top:1px dashed var(--secondary-color);color:var(--secondary-color);font-size:.9rem}.post-footer p{margin:0}em{color:var(--primary-color);font-style:italic}strong{color:var(--font-color);font-weight:700}@media (max-width: 768px){.container{padding:var(--global-space)}.description{padding:var(--global-space);margin-bottom:var(--global-space)}.post-header h1{font-size:1.4rem}.concept h2{font-size:1.2rem}pre{padding:var(--global-space);font-size:.8rem}table{font-size:.8rem}th,td{padding:calc(var(--global-space) * .5)}}*{margin:0;padding:0;box-sizing:border-box}#root{width:100%;min-height:100vh}
