*{margin:0}body{background:#edf6ff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;max-width:100vw;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app{position:absolute;min-width:100vw;max-width:100vw;top:0;left:0}.grid-row{display:flex;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.grid-pencil{cursor:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAABDlJREFUSEud1H1ME2ccB/Dnrr3n+sprocECYc5tMkAY4EKBAgNa/5gMieFF3ZL5sulM3HDxD+Y2xyZuuv9QtyVzYMwSk413MJLBAS2lIUJQSs2SGYUVlDkHukGv5e7a3vIQDytUKfSvNs/d7/P7fZ+nDwYAAFqtdpNIJIpG330/Xq+X1mg01xsaGjzL1wL9jaHiOI7/AQDAI8KCaX3Gq5zw8uT9WfD7rfHx6RmHbmRkxBloUd/nsOzs7EKe57vV4SHshRN7YYhStrT+c0cf+Gvc7B68g9+4N8PkrQdZBFShyta6L/bLfYvbbt8F3/z4K//d7oeYdRLnaik4uh5kEXj3Ld0ve4t1Yah12227+/zlDmaj2o3FxwDYPUQvnN7pVAxP4GwtRVrXiqwADn51nj6zD5OHKvDFqMw2lmvqc7hrSpxSAflnjs8dHBx0BbInTwEolqs9Tc6qcvhkIwAA/TaWa+6b52tKXHBoAmfPUqQ1UASdotfz0uN/eyU2PKRz4AZfkYd7ijNJ8fLuzDdZrsk4D2qKXcTQhIg9S8GAEAwdz6JtucNZLzLJB3JZ0YlWqaO8QCHRJcEVSL+NdbcY58HJHS4xQmopaJ1ZJS4EgLS0NFm0CvZ/pOeS0uM88Hiz1LXbEERkxBN+J2nsc3hP7XCSCDlHwdEHc3zes/ZkERAQTThpOmpgk9PiPMTxFilbmq/EdImQ8BdXY6/DfarEKb2GJukmbbPzXp0/ZAnwnaRSz21JjfMSn7dJuJ15SlyXCEXLEbTxDb0OZqPKC25xSfikfXrs30ez+cuRp4AlJII0fWxgk1+L9RCftcm4ikIllrF5ZVxV9bRLHp2Nb99ziBwym5i2y5duYjiW1dnZyQgNrQCW4lKRA5V6NjE9zkN80ixjyvIVYl3Sk0m+v8I4H0qyyDd3vSdiGQZc+LqaTiQIsdE+McRBqBcQvwBCDAaDXIo7jEcKmC1bX+Dhpy0SV+kbSgKdrnPtC65HkgxJ0Z4PMFS87vSXC+XqKFGGJpowT00yP4yODM/QtAHF9Uzg8TUuVQVhpmPb2BQUV1WzzKFQkiJ5bA65fdf7OCpef+YkVxapBqi4EEuf/U/mJ+t1S3tPT8FzAQGJCMIsHxayCaNTYs6hMhBFbx+CqPjFb2vcpRGRvG9xAakeMD0YvHc3c1VAiAsC2hSzKWHzgWPV8sedM2WRatxfcfROZU/X33fm/ksJCBAmCQ0LNxZXvJNyresqVx61AWb6xOJ7jOvGRueMU/b61q6uowEDAhIcHGwujNIkHExJlfi7TVHxXvtEYztF7UfrawKWNl6mMB5J35qi3aCBvkj9mHWOso83dVDUvuf+D1a757VarVQll/ceTk1PzdbELCL+iq9rAgFHSIRMceXlsNDEeZbl79OOljaKOgwA4H0bXHNEy6fLycl5yePx0BaLZdrf5P8Dynj/0Ul3UdwAAAAASUVORK5CYII=),auto}.grid-eraser{cursor:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAoFJREFUSEutlctPU0EUh3+nL/CWokhiG0OlsLCpicSVJm6JxeIjca1xpSYuUFowcUEEaUx8QEl8BYkbJEYTNSYYH7UrAxv/AN0ZcKWikdqHpfeRMb2X2+fc20Kc5Z2Z7zvnzJm5BIPBJt/2w0L3ADgBGqFw34zRWrPvxJtkU++OAHgJwF6cZxShSN/URiU1gnX4CwBNNbBNSCoEbOTZANpdt7hw3bZBSVHAhufG8CszCvc2wNNmXokNSFRBEc6YBi4I6knAhigcitU7E2KRx6P4nRqDDtd3/CcJsbMzIkS51C3lITUgSQS6rwQP744aZULszAMGSTHO1ESy2O1Fwt9VSP5SNCBM8CCUfviBtSx8Mi8lR6LDS82FoahfqDkTWvqWYR3T7z/blr/vMbWUSarhZhJVAEbnfTefn8BqNlhPsniwRy2L4WAYHg8Ik/p8UdC10znNBufmsZo+ZrR5qaMT94NBCG7JvKSEyLhfUJ+VCoF6JwZn47xMCvCJnn4VLHjkhiU1Ap7ki9eH2N5QRdSNSdg5rkCVXJx9g2Q2xIPrpmqJmLZCyRG27JD1JT8NBYUVC7c/zj9x7zc8k/JyiSkr0l8dcLQocPlEQHvllk0FhRXhuPwqn7QeNTtVcipgf61wuDQ4aXDFQux4XYEmkeL5pI3bwlkR+JECPNsZdu1b0yNXGOFU1C88bUhgJNHhggPwtBa7S2KE0wU4t03NSlGdSTIHrEkaXB0EtHZKA9cPOO6WLtpKxmPLO/94vZQzvz3arGG5CGhul2/Eeu2Xyzncn349UTguv84nrdqtW4+8uU25Eztku1C9d1MCNZOE/EhMWU5aCIp9q3Qt1tt0lRfYPyyxMtKI0R/wAAAAAElFTkSuQmCC),auto}.grid-block{cursor:not-allowed}.grid-progress{cursor:progress}.logo{position:absolute;top:10px;left:10px;width:100px;text-align:center}.emoji-animation{position:absolute;font-size:28px;top:16px;left:110px;animation-name:bounce;animation-timing-function:cubic-bezier(.28,.84,.42,1);animation-duration:2s;animation-iteration-count:infinite;transform-origin:bottom}.gear{animation:spin 2s linear infinite}.logo-mobile,.logo{background:linear-gradient(to right,rgb(0,80,209) 10%,#ae00ff 30%,#ff00f2 50%,rgb(0,151,197) 70%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:color-change 15s linear infinite}@keyframes spin{0%{transform:rotate(0)}50%{transform:rotate(180deg)}to{transform:rotate(360deg)}}@keyframes color-change{to{background-position:300%}}@keyframes bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(1.1,.9) translateY(0)}30%{transform:scale(.9,1.1) translateY(-15px)}50%{transform:scale(1.05,.95) translateY(0)}57%{transform:scale(1) translateY(-7px)}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}.node{width:30px;height:30px;background:rgb(209,246,255)}.node-finish{background-color:#000c!important;position:relative;z-index:2}.node-finish:after{content:"\1f3e0"!important;font-size:20px!important;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)!important;z-index:10}.node-start{background-color:#000c!important;position:relative}.node-start:after{content:"\1f6b6"!important;font-size:20px!important;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scaleX(-1)!important;z-index:10}.node-visited{animation-name:visitedAnimation;animation-duration:1.5s;animation-timing-function:ease-out;animation-delay:0;animation-direction:alternate;animation-iteration-count:1;animation-fill-mode:forwards;animation-play-state:running}@keyframes visitedAnimation{0%{transform:scale(1);background-color:#000042bf}50%{background-color:#1168d9bf}75%{transform:scale(1);background-color:#00d99fbf}to{transform:scale(1);background-color:#00bedabf}}.node-wall{background-color:#0c3547}.node-shortest-path{background-color:#84d9e5;position:relative}.node-shortest-path:after{content:"\1f463";font-size:16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);animation:footstepAppear .5s ease-in-out;z-index:5}.node-shortest-path[data-direction=right]:after{transform:translate(-50%,-50%) rotate(90deg)}.node-shortest-path[data-direction=down]:after{transform:translate(-50%,-50%) rotate(180deg)}.node-shortest-path[data-direction=left]:after{transform:translate(-50%,-50%) rotate(-90deg)}.node-shortest-path[data-direction=up]:after{transform:translate(-50%,-50%) rotate(0)}@keyframes footstepAppear{0%{opacity:0;scale:0}to{opacity:1;scale:1}}
