@import url('https://fonts.googleapis.com/css2?family=Press+Start+2P'); .game-title-text { font-size: 32px; } * { box-sizing: border-box; touch-action: manipulation; user-select: none; -webkit-user-select: none; -webkit-touch-callout: none; } html { height: 100%; overflow: hidden; } body { font-family: 'Press Start 2P', cursive; width: 100%; height: 100%; margin: 0px auto; font-size: 1.5em; background-color: #301d27; color: #eee; } @media (max-width: 700px), (max-height: 820px) { body { font-size: 0.75em; } } canvas { image-rendering: optimizeSpeed; image-rendering: crisp-edges; image-rendering: -moz-crisp-edges; image-rendering: -o-crisp-edges; image-rendering: -webkit-optimize-contrast; -ms-interpolation-mode: nearest-neighbor; image-rendering: pixelated; } a { color: #e77; } a:hover { color: #faa; text-decoration: none; } .nes-container.is-rounded.is-dark { border-image-slice: 9 9 9 9 fill; border-image-source: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAphgAAKYYBIuzfjAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAABgSURBVEiJY2AYBQQAIzGK/v///x+rZkZGgvqZSHURqYDmFrDgkkAOFikpZYJqcAXX0A8iFG8REyy4wLNndxGGIgXX0A+iUQsIApxlCTEpClfKQQbDOIiQwcgurkcBQQAARlMedugABy8AAAAASUVORK5CYII='); background-color: transparent; border-image-repeat: stretch; } .nes-container.is-fake-rounded.is-dark::after { background: none; } .screen { height: 100%; width: 100%; display: none; flex-direction: column; position: absolute; justify-content: center; align-items: center; } .modal { position: absolute; top: 0px; left: 0px; bottom: 0px; right: 0px; width: 100%; height: 100%; background-color: #422835; } #title { background-image: url(./../images/HeroBanner.png); background-size: cover; animation: 20s para infinite ease; } @keyframes para { 0% { background-position: 0px 0%; } 50% { background-position: 0px 80px; } 100% { background-position: 0px 0px; } } #plate { display: flex; animation: 2s plate-fade; opacity: 0; } #plate > div { display: flex; justify-content: center; align-items: center; text-align: left; padding: 40px; border-radius: 5px; } @keyframes plate-fade { 0% { opacity: 0; } 25% { opacity: 0; } 50% { opacity: 1; } 75% { opacity: 1; } 100% { opacity: 0; } } #plate > div > * + * { margin-left: 32px; margin-right: 0px; } @media (max-width: 700px), (max-height: 820px) { #plate > div { flex-direction: column; text-align: center; } #plate > div > * + * { margin-left: 0px; margin-right: 0px; margin-top: 16px; } } #game-title { margin-bottom: 0px; width: 900px; max-width: 98%; } @media (min-width: 700px) and (max-height: 820px) { #game-title { width: 900px; max-width: 98%; max-height: 35vh; } } @media (max-height: 600px) { #game-title { width: 500px; } } .game-title-animation { animation: 2s zoomInDown; } /* https://github.com/animate-css/animate.css/blob/master/animate.css */ @keyframes zoomInDown { 0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } 60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } } #options { text-align: center; justify-content: center; max-width: 90%; } #logo { width: 100px; } #menu { width: 400px; max-width: 100%; margin-bottom: 64px; padding: 32px; } #menu label { margin-left: -1em; padding-top: 0.5em; padding-bottom: 0.5em; } .modal > * { max-width: 90%; width: 400px; margin: 50px; text-align: center; } @media (max-width: 700px), (max-height: 820px) { .modal > * { margin: 10px; } } #instructions div > p { text-align: left; } #settings div > p { text-align: left; } #credits ul { list-style: "> "; padding-left: 2em; text-align: left; } #credits ul li { margin: 0.5em 0px; } .sprite { display: block; width: 8px; height: 8px; image-rendering: optimizeSpeed; image-rendering: crisp-edges; image-rendering: -moz-crisp-edges; image-rendering: -o-crisp-edges; image-rendering: -webkit-optimize-contrast; -ms-interpolation-mode: nearest-neighbor; image-rendering: pixelated; transform: scale(8); background-image: url("./../images/16x16DungeonTileset.png"); margin: 80px auto; } .free { position: absolute; transform: none; } .tomb { background-position: -72px -56px; } .empty { background-position: -8px -48px; } #play { width: 400px; max-width: 90%; } #win { background: url(./../images/01coin.gif); background-size: 20%; } #hud { position: absolute; bottom: 0px; width: 600px; max-width: 100%; display: flex; justify-content: space-evenly; padding: 24px; } #message { position: absolute; top: 24px; flex-direction: column; } #message .haut { color: #C01256; } #message .miss { color: #FFB570; } @media (max-width: 750px) { #inventory { bottom: 72px; } #hud { width: 100%; } } @media (max-width: 1024px) { #arrows > * { bottom: 72px; } } .fade-in { animation: fade-in 0.8s; display: flex; } @keyframes fade-in { from{opacity:0} to{opacity:1} } .hide { display: none; } .show { display: flex; } .fade-out { display: flex; opacity: 1; animation: fade-out 3s forwards; } @keyframes fade-out { from{opacity:1; display: flex;} 50%{opacity:1; display: flex;} to{opacity:0; display: none;} }