*,*:after,*:before{box-sizing:inherit}html{box-sizing:border-box;font-size:62.5%}body{font-size:1.6em;letter-spacing:.01em;line-height:1.6;font-family:sans-serif;font-weight:400;background:#fff;color:#555;margin:0}a{color:#ff69b4;text-decoration:none;cursor:pointer}a:focus,a:hover{color:#ff69b4}h1,h2,h3,h4,h5,h6{font-weight:300;letter-spacing:-.1rem;margin-bottom:2rem;margin-top:0}h1{font-size:4.6rem;line-height:1.2}h2{font-size:3.6rem;line-height:1.25}h3{font-size:2.8rem;line-height:1.3}h4{font-size:2.2rem;letter-spacing:-.08rem;line-height:1.35}h5{font-size:1.8rem;letter-spacing:-.05rem;line-height:1.5}h6{font-size:1.6rem;letter-spacing:0;line-height:1.4}ul{margin:0}.align-center{text-align:center}.inline-block{display:inline-block}.flex{display:flex;justify-content:space-between;align-items:center}.flex-start{display:flex;justify-content:flex-start;align-items:center}.button,.pointer{cursor:pointer}.hidden{display:none}.nowrap{white-space:nowrap}.svg-inline--fa{cursor:pointer;-webkit-user-select:none;user-select:none}.button-link{background:none;border:none}.loading-display{margin:1rem auto}.loading-display,.dot-flashing-wrapper{display:flex;justify-content:center;align-items:center}.dot-flashing{position:relative;width:10px;height:10px;border-radius:50%;background-color:#00f;color:#00f;animation:dot-flashing 1s infinite linear alternate;animation-delay:.5s}.dot-flashing:before,.dot-flashing:after{content:"";display:inline-block;position:absolute;top:0}.dot-flashing:before{left:-15px;width:10px;height:10px;border-radius:50%;background-color:#00f;color:#00f;animation:dot-flashing 1s infinite alternate;animation-delay:0s}.dot-flashing:after{left:15px;width:10px;height:10px;border-radius:50%;background-color:#00f;color:#00f;animation:dot-flashing 1s infinite alternate;animation-delay:1s}@keyframes dot-flashing{0%{background-color:#00f}50%,to{background-color:#00f3}}.loading-display.loading-false>div{visibility:hidden}.layout{height:100vh;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;grid-template-areas:"header" "main" "footer"}.layout .layout-main{grid-area:main;display:grid;grid-template-rows:1fr;grid-template-columns:1fr minmax(0,600px) 1fr;overflow:hidden}.layout .layout-main>.layout-main-content{grid-area:1/1/1/4;overflow:auto}.layout .layout-main:not(.home)>.layout-main-content{padding:2rem}.layout .layout-header{grid-area:header}.layout .layout-footer{grid-area:footer}.layout-header,.layout-footer{height:6rem;padding:0 2rem;background:linear-gradient(90deg,#000,#666,#000);color:#fff}.layout-header{display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none}.layout-header .logo{margin:0;font-family:Zen Dots,sans-serif;text-transform:lowercase}.layout-header .logo a{text-decoration:none;color:#fff}.layout-header .svg-inline--fa{font-size:4rem;color:#fff}.layout-footer{display:flex;justify-content:center;align-items:center}.layout-menu.header,.layout-settings{position:fixed;top:6rem;width:100%;background:#eeeeeeb3;transition:transform .3s}.layout-menu.header.show,.layout-settings.show{transform:translate(0)}.layout-menu.header{left:0;transform:translate(-100%);height:calc(100% - 12rem);overflow-y:auto;z-index:1}.layout-menu.header a{display:block;padding:2rem;font-size:2rem;text-decoration:none;background:#333;color:#fff;-webkit-user-select:none;user-select:none}.layout-menu.header a:hover{background:#666}@media (min-width: 768px) and (orientation: landscape){.layout-menu.header{max-width:500px}}.layout-settings{right:0;transform:translate(100%);width:300px;height:calc(100% - 12rem);border:2px solid black;border-top:none;background:#fff}.layout-settings ul{direction:rtl;margin:1rem 0}.layout-settings .build-display{background:#000;color:#fff;padding:0 1rem;font-family:monospace;font-size:1.2rem;text-align:right}.game{display:flex;height:100%;-webkit-user-select:none;user-select:none;overflow:hidden}.game.fixed{width:900px;height:600px;margin:4rem auto}.game.hide-menu>main{width:100%}.game:not(.hide-menu)>main{width:calc(100% - 300px)}.game>main{background:gray}.game>main .game-grid{background:#000;width:100%;height:100%}.game>main .game-grid>.svg-root{background:#000;width:100%;height:100%}.game.hide-menu>aside{width:0px;overflow:hidden;padding:0}.game:not(.hide-menu)>aside{width:300px}.game>aside{background:#ffffe0;padding:1rem}.layout-footer>span,.layout-header .fa-bars{display:none}
