a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,button,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,input,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:initial}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}#root,.App,body,html{overflow:hidden;overflow-x:hidden;overscroll-behavior-x:none;touch-action:pan-y;position:absolute;left:0;top:0;right:0;bottom:0}#root,.App,body,html{background-color:#000}.App.dropping{background-color:#111}.Body,.BodyV{position:absolute;inset:0;margin:auto;aspect-ratio:1280/704;width:auto;height:auto;max-width:100%;max-height:100%;z-index:10}.App.scanlines .Body .inner:after,.Body .inner{position:absolute;left:0;top:0;right:0;bottom:0}.App.scanlines .Body .inner:after{content:"";pointer-events:none;z-index:50;background-image:linear-gradient(180deg,rgba(0,0,0,.28) 0,rgba(0,0,0,.28) 50%,transparent 0,transparent);background-size:100% 4px;background-repeat:repeat}.App.scanlines-fine .Body .inner:after{background-size:100% 2px}.App.scanlines-fine .Body .inner:after,.App.scanlines-wide .Body .inner:after{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;z-index:50;background-image:linear-gradient(180deg,rgba(0,0,0,.28) 0,rgba(0,0,0,.28) 50%,transparent 0,transparent);background-repeat:repeat}.App.scanlines-wide .Body .inner:after{background-size:100% 6px}.App.started.scanlines-fine .Body .inner:after,.App.started.scanlines-wide .Body .inner:after,.App.started.scanlines .Body .inner:after{position:fixed;left:0;top:0;right:0;bottom:0}.BodyV{pointer-events:none}@media (min-aspect-ratio:3/1){.App.keyboard .Body .inner{position:absolute;left:50%;top:50%;width:75vw;height:56.25vw;transform:translate(-50%,-70%)}}.App canvas{width:100%;height:100%;cursor:none;visibility:hidden}.App canvas.hud,.App canvas.world{image-rendering:auto}.App canvas.hud{position:absolute;left:0;top:0;width:100%;height:100%;transform:none;pointer-events:none;z-index:40}.App.started canvas{visibility:visible}.App .keyboard{position:absolute;pointer-events:auto;background:transparent;color:transparent;border:none;outline:none;z-index:100;display:none;cursor:none}.App .keyboard::selection{background:transparent;color:transparent}.App.keyboard .keyboard{display:block}.App .error,.App .loading,.App .start{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.App .error,.App .start{max-width:90%;max-height:90%;overflow-y:auto;pointer-events:auto}.App .start{border:1px solid #888;padding:12px;color:#fff;font-size:18px;text-align:center;background:#000}.App .start p{margin:10px 0}.App .start .startButton{display:block;margin-left:auto;margin-right:auto;border:1px solid #fff;background:#000;font-size:2em;padding:4px 18px;cursor:pointer;margin-top:6px;width:8em}.App .start .startButton:hover{background-color:#111}.App .start .saveList{border:1px solid #fff;text-align:left}.App .start .saveList li{padding:0 6px}.App .start .saveList li .info{color:#888;margin-left:6px}.App .start .saveList li .btnRemove{color:#800}.App .start .saveList li .btnRemove:hover{color:red}.App .start .saveList li .btnRemove{float:right;cursor:pointer;margin:0 4px}.App .start .saveList li .btnDownload{color:#888}.App .start .saveList li .btnDownload:hover{color:#fff}.App .start .saveList li .btnDownload{float:right;cursor:pointer;margin:0 4px}.App .start .saveList li:hover{background-color:#444}.App .error{display:block;border:1px solid #800;background:#300;padding:12px;color:#f33;font-size:18px;text-align:center}.App .error:hover{text-decoration:none}.App .error .header{font-weight:700;font-size:1.2em;margin-bottom:.3em}.App .error .body{font-family:monospace}.App .error .footer{margin-top:.5em;font-size:.8em}.App .loading{color:#888;font-size:32px;text-align:center;width:75%}.App .loading .progressBar{display:block;position:absolute;margin-top:16px;width:100%;height:40px;border:2px solid #888}.App .loading .progressBar span{position:absolute;left:3px;top:3px;bottom:3px;right:3px}.App .loading .progressBar span span{position:absolute;left:0;top:0;bottom:0;background-color:#888}.App .link,.App a{display:inline-block;color:#7070ff;text-decoration:none}.App .link:hover,.App a:hover{text-decoration:underline}.App .link,.App a{cursor:pointer}.App .touch-ui{display:none;pointer-events:none;position:absolute;top:0;bottom:0;width:25vh;z-index:60}.App .touch-ui .touch-button{position:absolute;left:50%;background-color:#444;transform:translate(-50%,-50%);pointer-events:auto}.App .touch-ui .touch-button.active{background-color:#fff}.App .touch-ui .touch-button{-webkit-mask-size:100% 100%;mask-size:100% 100%}.App .touch-ui .touch-button-0{top:15vh}.App .touch-ui .touch-button-1{top:35vh}.App .touch-ui .touch-button-2{top:55vh}.App .touch-ui .touch-button-3{top:70vh;left:5vw}.App .touch-ui .touch-button-4{top:70vh;left:11vw}.App .touch-ui .touch-button-5{top:85vh;left:5vw}.App .touch-ui .touch-button-6{top:85vh;left:11vw}.App .touch-ui.touch-mods{left:0}.App .touch-ui.touch-mods .touch-button{width:15vh;height:15vh;border-radius:10vh}.App .touch-ui.touch-mods .touch-button-0{-webkit-mask-image:url(/static/media/move.929662bf.svg);mask-image:url(/static/media/move.929662bf.svg)}.App .touch-ui.touch-mods .touch-button-1{-webkit-mask-image:url(/static/media/rmb.32efdf49.svg);mask-image:url(/static/media/rmb.32efdf49.svg)}.App .touch-ui.touch-mods .touch-button-2{-webkit-mask-image:url(/static/media/shift.41ff50a3.svg);mask-image:url(/static/media/shift.41ff50a3.svg)}.App .touch-ui.touch-mods .touch-button-3{-webkit-mask-image:url(/static/media/f5.bab75548.svg);mask-image:url(/static/media/f5.bab75548.svg)}.App .touch-ui.touch-mods .touch-button-4{-webkit-mask-image:url(/static/media/f6.e1aa3b74.svg);mask-image:url(/static/media/f6.e1aa3b74.svg)}.App .touch-ui.touch-belt{right:0}.App .touch-ui.touch-belt .touch-button{width:12vh;height:12vh;font-size:1vh;border-radius:20%;overflow:hidden;background-color:#000;border:2px solid #444}.App .touch-ui.touch-belt .touch-button canvas{position:absolute;left:5%;top:5%;width:90%;height:90%}.App .touch-ui.touch-belt .touch-button:after{content:"";position:absolute;left:0;top:0;right:0;bottom:0;border-radius:20%;box-shadow:inset 0 0 1em 1.5em #000}.App .touch-ui.fkeys-left{left:0;top:auto;bottom:0;height:35vh}.App .touch-ui.fkeys-left .touch-button{width:15vh;height:15vh;position:absolute;left:50%;background-color:#444;transform:translate(-50%,-50%);pointer-events:auto}.App .touch-ui.fkeys-left .touch-button.active{background-color:#fff}.App .touch-ui.fkeys-left .touch-button{-webkit-mask-size:100% 100%;mask-size:100% 100%}.App .touch-ui.fkeys-left .touch-button-3{top:0;transform:translate(-50%);-webkit-mask-image:url(/static/media/f5.bab75548.svg);mask-image:url(/static/media/f5.bab75548.svg)}.App .touch-ui.fkeys-left .touch-button-4{top:60%;-webkit-mask-image:url(/static/media/f6.e1aa3b74.svg);mask-image:url(/static/media/f6.e1aa3b74.svg)}.App .touch-ui.fkeys-right{left:auto;top:auto;right:0;bottom:0;height:35vh}.App .touch-ui.fkeys-right .touch-button{width:15vh;height:15vh;position:absolute;left:50%;background-color:#444;transform:translate(-50%,-50%);pointer-events:auto}.App .touch-ui.fkeys-right .touch-button.active{background-color:#fff}.App .touch-ui.fkeys-right .touch-button{-webkit-mask-size:100% 100%;mask-size:100% 100%}.App .touch-ui.fkeys-right .touch-button-5{top:0;transform:translate(-50%);-webkit-mask-image:url(/static/media/f7.0982d30d.svg);mask-image:url(/static/media/f7.0982d30d.svg)}.App .touch-ui.fkeys-right .touch-button-6{top:60%;-webkit-mask-image:url(/static/media/f8.46a49f13.svg);mask-image:url(/static/media/f8.46a49f13.svg)}.App.touch .touch-ui{display:block}.App.touch.keyboard .touch-ui{display:none}@media (max-aspect-ratio:11/6){.App .touch-ui{width:calc(50vw - 66.66667vh)}}@media (max-aspect-ratio:26/15){.App .touch-ui{width:20vh}}@media (min-aspect-ratio:4/3) and (max-aspect-ratio:11/6){.App.touch .Body,.App.touch .BodyV{left:14vh;right:14vh;width:auto}.App.touch .Body .inner{left:50%;top:50%;right:auto;bottom:auto;width:min(100vw - 28vh,133.3333333333vh);height:min(75vw - 21vh,100vh);transform:translate(-50%,-50%)}.App.touch .touch-ui{width:14vh}.App.touch .touch-ui .touch-button{width:10vh;height:10vh}.App.touch .touch-ui.touch-mods .touch-button{width:12vh;height:12vh;border-radius:6vh}}@media (max-aspect-ratio:4/3){.App .touch-ui{width:auto;height:20vw}.App .touch-ui .touch-button{top:55%}.App .touch-ui .touch-button-0{left:16.7vw}.App .touch-ui .touch-button-1{left:50vw}.App .touch-ui .touch-button-2{left:83.3vw}.App .touch-ui.touch-mods{top:auto;right:0}.App .touch-ui.touch-mods .touch-button{width:20vw;height:20vw;border-radius:10vw}.App .touch-ui.touch-belt{bottom:auto;left:0}.App .touch-ui.touch-belt .touch-button{width:14vw;height:14vw;font-size:1vw}.App .touch-ui.fkeys-left{left:0;bottom:15vh;width:50%;height:12vh}.App .touch-ui.fkeys-left .touch-button{height:12vh;width:12vh}.App .touch-ui.fkeys-left .touch-button-3{left:25%}.App .touch-ui.fkeys-left .touch-button-4{top:50%;left:75%}.App .touch-ui.fkeys-right{left:auto;right:0;bottom:15vh;width:50%;height:12vh}.App .touch-ui.fkeys-right .touch-button{height:12vh;width:12vh}.App .touch-ui.fkeys-right .touch-button-5{left:25%}.App .touch-ui.fkeys-right .touch-button-6{top:50%;left:75%}}@media (max-aspect-ratio:20/23){.App .touch-ui{height:calc(50vh - 37.5vw)}}@media (max-aspect-ratio:4/5){.App .touch-ui{height:35vw}}.recovery-link{position:fixed;left:8px;bottom:6px;z-index:60;color:#8a713f;font-size:13px;cursor:pointer;opacity:.8}.recovery-link:hover{color:#c8a05a;opacity:1}body.loadscreen .App .touch-ui,body.loadscreen .App canvas.hud{display:none}.recovery-alert,.recovery-alert *,.recovery-link,.recovery-modal,.recovery-modal *{cursor:var(--hw-cursor,auto)}.recovery-alert,.recovery-alert *,.recovery-link,.recovery-link *,.recovery-modal,.recovery-modal *{cursor:var(--hw-cursor,auto)!important}.recovery-modal{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.72);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.recovery-panel{background:#141110;border:1px solid #3a2418;box-shadow:0 12px 48px rgba(0,0,0,.8);padding:22px 26px;width:min(440px,100vw - 48px);color:#bdb3a4;font-size:14px}.recovery-panel h3{margin:0 0 6px;color:#c8a05a;font-weight:400;letter-spacing:.06em}.recovery-panel .rec-hint{margin:0 0 14px;color:#8d8577;font-size:12.5px;line-height:1.45}.recovery-panel .rec-keyrow{display:flex;grid-gap:8px;gap:8px}.recovery-panel .rec-keyrow code,.recovery-panel .rec-keyrow input{flex:1 1;background:#0c0a09;border:1px solid #3a2418;color:#e0d6c4;font:13px monospace;padding:8px 10px;letter-spacing:.04em;min-width:0;overflow-wrap:anywhere}.recovery-panel .rec-keyrow input{outline:none}.recovery-panel .rec-keyrow input:focus{border-color:#c8a05a}.recovery-panel .rec-keyrow button{background:#241a10;border:1px solid #3a2418;color:#c8a05a;padding:8px 14px;cursor:pointer;font:inherit;white-space:nowrap}.recovery-panel .rec-keyrow button:hover{border-color:#c8a05a}.recovery-panel .rec-keyrow button:disabled{opacity:.45;cursor:default}.recovery-panel .rec-divider{margin:16px 0 10px;color:#6d6558;font-size:11px;letter-spacing:.12em;text-transform:uppercase;display:flex;align-items:center;grid-gap:10px;gap:10px}.recovery-panel .rec-divider:after,.recovery-panel .rec-divider:before{content:"";flex:1 1;height:1px;background:#2a1c12}.recovery-panel .rec-msg{margin:10px 0 0;font-size:13px;color:#9fb98a}.recovery-panel .rec-msg.err{color:#c86a5a}.recovery-panel .rec-close{margin-top:16px;background:none;border:1px solid #3a2418;color:#8d8577;padding:6px 16px;cursor:pointer;font:inherit}.recovery-panel .rec-close:hover{color:#c8a05a;border-color:#c8a05a}.recovery-alert{position:fixed;top:10px;left:50%;transform:translateX(-50%);z-index:210;background:#2a1210;border:1px solid #c86a5a;color:#e8b0a4;padding:8px 14px;font-size:13px}.recovery-alert .rec-x{margin-left:12px;cursor:pointer;color:#c86a5a;font-size:16px}.hw-cursor-dom{position:fixed;left:0;top:0;pointer-events:none;z-index:150;image-rendering:pixelated}body.hwcur .App canvas.world{cursor:auto}
/*# sourceMappingURL=main.df83268c.chunk.css.map */