*,*:after,*:before{box-sizing:border-box}:root{font-size:12px;--color-text: #d5cbb2;--color-bg: #000;--color-link: #a9161b;--color-link-hover: #d5cbb2;--page-padding: 1.5rem}body{margin:0;color:var(--color-text);background-color:var(--color-bg);font-family:Helvetica Neue,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}canvas{position:fixed;top:0;left:0;width:100%;height:100%}@media(scripting:enabled){.loading:before,.loading:after{content:"";position:fixed;z-index:10000}.loading:before{top:0;left:0;width:100%;height:100%;background:var(--color-bg)}.loading:after{top:50%;left:50%;width:100px;height:1px;margin:0 0 0 -50px;background:var(--color-link);animation:loaderAnim 1.5s ease-in-out infinite alternate forwards}}@keyframes loaderAnim{0%{transform:scaleX(0);transform-origin:0% 50%}50%{transform:scaleX(1);transform-origin:0% 50%}50.1%{transform:scaleX(1);transform-origin:100% 50%}to{transform:scaleX(0);transform-origin:100% 50%}}a{text-decoration:none;color:var(--color-link);outline:none;cursor:pointer}a:hover{text-decoration:underline;color:var(--color-link-hover)}a:focus{outline:none;background:#d3d3d3}a:focus:not(:focus-visible){background:transparent}a:focus:focus-visible{outline:2px solid red;background:transparent}.frame{padding:3rem var(--page-padding) 0;display:grid;z-index:1000;position:relative;grid-row-gap:1rem;grid-column-gap:2rem;pointer-events:none;justify-items:start;grid-template-columns:auto auto auto 1fr;grid-template-areas:"title title title title" "back archive github ..." "demos demos demos demos" "tags tags tags tags" "sponsor sponsor sponsor sponsor"}.frame #cdawrap{justify-self:start;grid-area:sponsor}.frame a,.frame button{pointer-events:auto}.frame .frame__title{grid-area:title;font-size:inherit;margin:0}.frame .frame__back{grid-area:back;justify-self:start}.frame .frame__archive{grid-area:archive;justify-self:start}.frame .frame__github{grid-area:github}.frame .frame__tags{grid-area:tags;display:flex;flex-wrap:wrap;gap:1rem}.frame .frame__demos{grid-area:demos;display:flex;flex-wrap:wrap;gap:1rem}@media screen and (min-width:53em){.frame{padding:var(--page-padding);height:100%;position:fixed;top:0;left:0;width:100%;grid-template-columns:auto auto auto auto 1fr;grid-template-rows:auto auto;align-content:space-between;grid-template-areas:"title back github archive demos" "tags tags tags sponsor sponsor"}.frame .frame__tags{align-self:end}.frame .frame__demos,.frame #cdawrap{justify-self:end;text-align:right;max-width:300px}}.content{padding:var(--page-padding);display:flex;flex-direction:column;width:100vw;position:relative}@media screen and (min-width:53em){.content{min-height:100vh;justify-content:center;align-items:center}}@font-face{font-family:Cinzel;src:url(/lab/webgl/1/fonts/Cinzel/Cinzel-Regular.ttf) format("truetype");font-weight:400;font-style:normal}#control-ui-container{position:fixed;bottom:200px;z-index:9999;width:100%;left:50%;display:flex;align-items:center;justify-content:center;gap:24px;transform:translate(-50%);--e33-color: #d5cbb2}.E33-button{font-family:Cinzel,serif;padding:12px 30px;cursor:pointer;background-color:#000000b3;color:var(--e33-color);border:none;position:relative;clip-path:polygon(0% 50%,15px 0%,calc(100% - 15px) 0%,100% 50%,calc(100% - 15px) 100%,15px 100%);transition:transform .15s ease-out .05s;font-size:2rem;transition:opacity .15s ease-out .05s}.E33-button.disabled{opacity:.4;cursor:default}.E33-button:before{content:"";position:absolute;inset:0;background:var(--e33-color);--borderSize: 1px;clip-path:polygon(0% 50%,15px 0%,calc(100% - 15px) 0%,100% 50%,calc(100% - 15px) 100%,15px 100%,0% 50%,var(--borderSize) 50%,15.5px calc(100% - var(--borderSize)),calc(100% - 15.5px) calc(100% - var(--borderSize)),calc(100% - var(--borderSize)) 50%,calc(100% - 15.5px) var(--borderSize),15.5px var(--borderSize),var(--borderSize) 50%);z-index:-1}
