body { background-color: #1a1a1a; color: #e0e0e0; font-family: 'Courier New', Courier, monospace; overflow: hidden; margin: 0; padding: 0; } #bg-container { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: -2; overflow: hidden; transition: transform 0.2s ease-out; } .floating-emoji { position: absolute; user-select: none; opacity: 0; animation-iteration-count: infinite; animation-timing-function: linear; } @keyframes float-top-to-bottom { 0% { transform: translateY(-10vh) rotate(0deg); opacity: 0; } 10%, 90% { opacity: 0.7; } 100% { transform: translateY(110vh) rotate(360deg); opacity: 0; } } @keyframes float-bottom-to-top { 0% { transform: translateY(110vh) rotate(0deg); opacity: 0; } 10%, 90% { opacity: 0.7; } 100% { transform: translateY(-10vh) rotate(360deg); opacity: 0; } } @keyframes float-left-to-right { 0% { transform: translateX(-10vw) rotate(0deg); opacity: 0; } 10%, 90% { opacity: 0.7; } 100% { transform: translateX(110vw) rotate(360deg); opacity: 0; } } @keyframes float-right-to-left { 0% { transform: translateX(110vw) rotate(0deg); opacity: 0; } 10%, 90% { opacity: 0.7; } 100% { transform: translateX(-10vw) rotate(360deg); opacity: 0; } } .text-fragment { position: absolute; font-size: 24px; color: rgba(255, 0, 255, 0.4); opacity: 0; animation: float-fragment 15s linear infinite, fade-in-out 15s linear infinite; user-select: none; } @keyframes float-fragment { 0% { transform: translate(0, 0) rotate(0deg); } 25% { transform: translate(20px, 40px) rotate(15deg); } 50% { transform: translate(-30px, -10px) rotate(-10deg); } 75% { transform: translate(10px, -30px) rotate(5deg); } 100% { transform: translate(0, 0) rotate(0deg); } } @keyframes fade-in-out { 0%, 100% { opacity: 0; } 10%, 90% { opacity: 0.4; } } .screen-crack { position: absolute; width: 200px; height: 200px; background-image: url('data:image/svg+xml;utf8,'); opacity: 0; animation: flicker-crack 25s steps(1, end) infinite; } @keyframes flicker-crack { 0%, 100% { opacity: 0; } 50% { opacity: 0.3; } 51% { opacity: 0; } 75% { opacity: 0.2; } 76% { opacity: 0; } }