body{overscroll-behavior-y:contain;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#222;margin:0;font-family:Roboto Mono,monospace;overflow:hidden}#root,canvas{z-index:0;-webkit-touch-callout:none;width:100%;height:100vh;position:absolute;top:0;left:0}.nav{z-index:100;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem;display:flex;position:fixed;top:0;left:0;right:0}.nav-title{color:#fff;text-shadow:0 2px 10px #000c;letter-spacing:.05em;text-transform:lowercase;margin:0;font-family:Roboto Mono,monospace;font-size:1.5rem;font-weight:400}.nav-subtitle{color:#ccc;text-transform:lowercase;margin:0;font-family:Roboto Mono,monospace;font-size:.9rem;font-weight:300}.nav-links{color:#fff;flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.nav-links a{text-transform:lowercase;color:#ccc;cursor:pointer;align-items:center;min-height:44px;padding:.5rem .75rem;font-family:Roboto Mono,monospace;font-size:.75rem;text-decoration:underline;transition:all .2s;display:inline-flex}.nav-links a:hover{color:#000;background:#fff}.footer{z-index:100;flex-direction:column;align-items:center;gap:.75rem;padding-bottom:1rem;display:flex;position:fixed;bottom:0;left:0;right:0}.footer-links{flex-direction:row;align-items:center;gap:.5em;display:flex}.footer-link{text-transform:lowercase;color:#ccc;cursor:pointer;align-items:center;min-height:44px;padding:.2rem .75rem;font-family:Roboto Mono,monospace;font-size:.75rem;text-decoration:none;transition:color .2s;display:inline-flex}.footer-link:hover{color:#fff}.loading-container{z-index:5;background-color:#222;justify-content:center;align-items:center;width:100%;height:100vh;transition:opacity .5s;display:flex;position:absolute;top:0;left:0}.loading-container.hidden{opacity:0}.spinner{border:6px solid #ffffff1a;border-top-color:#fff;border-radius:50%;width:60px;height:60px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=769px){.nav{flex-direction:row;justify-content:space-between;align-items:center;padding:2rem 3rem}.nav-title{font-size:2rem}.nav-subtitle{font-size:1.1rem}.nav-links{flex-wrap:nowrap;gap:1rem}.nav-links a{min-height:auto;padding:0;font-size:1rem}.footer{flex-direction:row;justify-content:flex-end;padding:2rem 3rem}.footer-links{flex-direction:row;gap:2rem}.footer-link{min-height:auto;padding:0;font-size:.9rem}}
