html, body { margin: 0; padding: 0; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; background: rgb(51, 51, 51); overflow: hidden; white-space: nowrap; color: white; font-family: arial; } #root { background: rgb(31, 31, 31); position: relative; margin: 0; padding: 0; width: 100%; max-height: 100%; aspect-ratio: 16/9; overflow: hidden; } #root div { transform: translate(-50%, -50%); position: absolute; } .cloud-particle { border-radius: 50%; background: rgb(255, 255, 255); animation-name: cloud; animation-iteration-count: infinite; animation-direction: alternate; } .shooting-pad { background: url('../img/shooting-pad.svg') no-repeat; background-size: 100%; animation-iteration-count: 10; animation-duration: 200ms; } .bullet { background: yellow; width: 1px !important; } .raindrop { background: cyan; width: 1px !important; } .result { left: 50%; top: 50%; font-size: 108px; } .result:after { content: 'Press any key to continue'; position: absolute; font-size: 48px; width: fit-content; top: 85%; left: 50%; transform: translate(-50%); } #lives { position: absolute; top: 15px; left: 15px; font-size: 32px; } #lives:before { content: '❤ '; color: red; } @keyframes cloud { from { transform: translate(-50%) scale(1.2); opacity: 0.7; } to { transform: translate(-50%) scale(0.2); opacity: 0.1; } } @keyframes blink { 0% { opacity: 1; } 1% { opacity: 0; } 50% { opacity: 0; } 51% { opacity: 1; } 100% { opacity: 1; } }