@import"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/atom-one-dark.min.css";@import"https://fonts.googleapis.com/css2?family=Red+Hat+Text:ital,wght@0,300..700;1,300..700&display=swap";@import"https://fonts.googleapis.com/css2?family=Fira+Code:ital,wght@0,300..700;1,300..700&display=swap";:root{--bg-color: #e9e9e9ff;--fg-color: white;--div-border-radius: 25px;--button-border-radius: 100vw;--button-border: 1px solid #00000099;--inner-margin: 10px;--box-shadow: rgba(0, 0, 0, .24) 0px 3px 5px}body{margin:0;padding:0;background-color:var(--bg-color);font-family:Red Hat Text,monospace}button{width:fit-content;padding:.5rem 1rem;border:var(--button-border);border-radius:var(--div-border-radius);background:none;cursor:pointer;font-family:inherit}img{display:flex;margin:auto;max-width:100%}code{font-family:Fira Code,monospace;font-size:85%}.button-type-1{transition:.3s}.button-type-1:hover{color:#fff;background-color:#000}.button-type-2{border:none;background-color:var(--bg-color);box-shadow:var(--box-shadow);transition:.3s}.button-type-2:hover{background-color:#000;color:#fff}.button-type-3{width:100%;text-align:start;border-radius:5px;background-color:var(--bg-color)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{border-radius:100vw;background:var(--fg-color);border:var(--button-border);margin-block:16px}::-webkit-scrollbar-thumb{border-radius:100vw;background:var(--bg-color);border:var(--button-border)}#app{display:flex;position:fixed;width:100vw;height:100vh;box-sizing:border-box;overflow:hidden;padding:var(--inner-margin)}#app.dragover:after{outline:4px dashed #007acc;outline-offset:-4px;content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999}#theory-tab{display:flex;flex-direction:column;width:25%;max-width:25%;padding:30px;margin:var(--inner-margin);background-color:var(--fg-color);border-radius:var(--div-border-radius);box-shadow:var(--box-shadow)}#tab-title-editor{height:7em;margin-bottom:5px}.tab-editor{resize:none;display:none;flex-direction:column;overflow:auto;height:100%;border-radius:5px;font-family:inherit;font-size:inherit;font-weight:inherit;padding:.25em;box-shadow:var(--box-shadow);outline:none}.tab-editor:focus{border-color:#000}.tab-editor-active{display:flex}#tab-content{display:flex;flex-direction:column;overflow:auto;padding-right:1em;height:100%;overflow-wrap:break-word}#tab-content h1{margin:.67em 0;font-weight:600;padding-bottom:.3em;font-size:2em;border-bottom:1px solid #d1d9e0b3}#tab-content h2{font-weight:600;padding-bottom:.3em;font-size:1.5em;border-bottom:1px solid #d1d9e0b3}#tab-content h3{font-weight:600;font-size:1.25em}#tab-content h4{font-weight:600;font-size:1em}#tab-content h5{font-weight:600;font-size:.875em}#tab-content h6{font-weight:600;font-size:.85em;color:#59636e}#tab-content blockquote{margin:0;padding:0 1em;color:#59636e;border-left:.25em solid #d1d9e0;display:block;margin-block-start:1em;margin-block-end:1em}#tab-content pre code{border-radius:6px}#tab-content hr{border-bottom:1px solid #d1d9e0b3;color:#d1d9e0b3;width:100%;height:.25em;padding:0;margin:0;background-color:#d1d9e0;box-sizing:border-box}#tab-content table{border-spacing:0;border-collapse:collapse;display:block;width:max-content;max-width:100%;border-color:gray}#tab-content thead{display:table-header-group;vertical-align:middle;border-color:inherit}#tab-content table th{font-weight:600}#tab-content table tr{background-color:#fff;border-top:1px solid #d1d9e0b3}#tab-content table th,#tab-content table td{padding:6px 13px;border:1px solid #d1d9e0}#tab-content tbody{display:table-row-group;vertical-align:middle;border-color:inherit}.hide-button-edit-mode{display:none}#project-buttons{display:flex;justify-content:flex-end;margin-top:30px;gap:10px}#project-buttons button{padding:.25rem .75rem}#editor-tab{flex:1;display:grid;grid-template-rows:45% 55%}#editor-panel{display:flex;flex-direction:column;position:relative;overflow:auto;margin:var(--inner-margin);background-color:var(--fg-color);border-radius:var(--div-border-radius);box-shadow:var(--box-shadow)}#editor-buttons{display:flex;background:var(--fg-color);padding:10px 10px 10px 40px;border-radius:var(--div-border-radius) var(--div-border-radius) 0 0}#editor-buttons button{border:var(--button-border);border-color:transparent}#editor-buttons button.active{border:var(--button-border);border-radius:var(--button-border-radius)}#shader-controls{display:flex;flex-direction:column;width:fit-content;height:fit-content;position:absolute;margin:20px 40px;bottom:0;right:0;z-index:1}#code-panel{overflow:auto;height:100%;border-radius:0 0 var(--div-border-radius) var(--div-border-radius)}#vertex-shader-view,#fragment-shader-view{display:none;height:100%}#geometry{display:none;padding:20px}.active-tab{display:block!important}#gfx-panel{display:flex;flex-direction:row;height:100%}#view-panel{flex:1;display:flex;padding:0;margin:var(--inner-margin);border-radius:var(--div-border-radius);box-shadow:var(--box-shadow)}#canvas{flex:1;display:block;max-width:100%;max-height:100%;border-radius:inherit}#textures-panel{display:grid;gap:8px;max-width:fit-content;flex:1;margin:var(--inner-margin)}.tex-actions{display:flex;gap:5px;margin:10px 15px 10px auto}.tex-btn{padding:.25rem .5rem}.tex-slot{display:flex;align-items:flex-end;background-size:cover;background-image:none;background-position:center;background-repeat:no-repeat;background-color:var(--fg-color);border-radius:var(--div-border-radius);box-shadow:var(--box-shadow)}.tex-label{align-self:flex-start;padding:.25rem 1.25rem;background-color:var(--fg-color);border:inherit;border-top:0;border-radius:inherit;border-top-right-radius:0;border-bottom-left-radius:0;box-shadow:var(--box-shadow)}.tex-slot.dragover{outline:2px dashed #007acc;outline-offset:-2px}.cm-editor *{font-family:Fira Code,monospace;font-size:.95em}.cm-editor{height:100%}.cm-gutter.cm-lineNumbers{color:#000}.cm-gutterElement{text-align:right!important}.dropdown{display:none;padding:10px}.dropdown-show{display:flex;flex-direction:column;gap:20px}.vec-components{display:flex;gap:8px}.cam-components{display:flex;flex-direction:column;width:fit-content;gap:4px}.vec-component label{display:flex;gap:5px}.vec-component input{max-width:50px;margin-left:auto;border-radius:3px;border:1px solid black}.vec-component input::-webkit-inner-spin-button{margin:0;display:none}
