* { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Arial', sans-serif; background: #0a0a0a; background-image: radial-gradient(circle at 20% 30%, rgba(255, 0, 0, 0.1) 0%, transparent 50%), radial-gradient(circle at 80% 70%, rgba(0, 0, 255, 0.1) 0%, transparent 50%), radial-gradient(circle at 50% 50%, rgba(128, 0, 128, 0.1) 0%, transparent 50%); color: #fff; min-height: 100vh; padding: 20px; position: relative; overflow-x: hidden; } body::before { content: ''; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-image: url("data:image/svg+xml,%3Csvg width='100' height='100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M50 20 Q60 10 70 20 Q80 30 70 40 Q60 50 50 40 Q40 50 30 40 Q20 30 30 20 Q40 10 50 20 Z' fill='%23ffffff' opacity='0.05'/%3E%3Ccircle cx='45' cy='30' r='3' fill='%23000000' opacity='0.3'/%3E%3Ccircle cx='55' cy='30' r='3' fill='%23000000' opacity='0.3'/%3E%3Cpath d='M50 40 Q45 45 50 50 Q55 45 50 40' fill='%23000000' opacity='0.2'/%3E%3C/svg%3E"); background-size: 200px 200px; background-repeat: repeat; pointer-events: none; z-index: 0; } body::after { content: ''; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: repeating-linear-gradient( 0deg, transparent, transparent 2px, rgba(255, 255, 255, 0.02) 2px, rgba(255, 255, 255, 0.02) 4px ); pointer-events: none; z-index: 0; } .main-wrapper { display: flex; justify-content: center; align-items: flex-start; gap: 30px; max-width: 1400px; margin: 0 auto; position: relative; z-index: 1; } .container { text-align: center; background: rgba(0, 0, 0, 0.7); padding: 30px; border-radius: 15px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.8), 0 0 50px rgba(255, 0, 0, 0.2); flex-shrink: 0; position: relative; z-index: 1; border: 2px solid rgba(255, 0, 0, 0.3); } h1 { font-size: 3em; margin-bottom: 20px; text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.5); color: #ffd700; } .game-info { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; padding: 10px 20px; background: rgba(0, 0, 0, 0.2); border-radius: 10px; gap: 15px; flex-wrap: wrap; } .score { font-size: 1.5em; font-weight: bold; } .level { font-size: 1.5em; font-weight: bold; color: #ffd700; } #status { font-size: 1.2em; color: #ffd700; } #gameCanvas { border: 3px solid #ffd700; border-radius: 10px; background: #000; display: block; margin: 0 auto; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); } .user-input-section { margin-bottom: 15px; display: flex; align-items: center; justify-content: center; gap: 10px; } .user-input-section label { font-size: 1.1em; font-weight: bold; } #username { padding: 8px 15px; font-size: 1em; border: 2px solid #ffd700; border-radius: 8px; background: rgba(0, 0, 0, 0.3); color: #fff; outline: none; max-width: 200px; } #username:focus { border-color: #ffed4e; box-shadow: 0 0 10px rgba(255, 215, 0, 0.5); } .instructions { margin-top: 20px; font-size: 1.1em; } .leaderboard-container { background: rgba(0, 0, 0, 0.7); padding: 25px; border-radius: 15px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.8), 0 0 50px rgba(255, 0, 0, 0.2); min-width: 300px; max-height: 700px; position: relative; z-index: 1; border: 2px solid rgba(255, 0, 0, 0.3); } .leaderboard-container h2 { color: #ffd700; text-align: center; margin-bottom: 20px; font-size: 2em; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); } #leaderboard { max-height: 600px; overflow-y: auto; } .leaderboard-item { background: rgba(255, 255, 255, 0.1); padding: 12px; margin-bottom: 10px; border-radius: 8px; display: flex; justify-content: space-between; align-items: center; border-left: 4px solid #ffd700; } .leaderboard-item.top { background: rgba(255, 215, 0, 0.2); border-left-color: #ffed4e; font-weight: bold; } .leaderboard-rank { font-size: 1.3em; font-weight: bold; color: #ffd700; min-width: 30px; } .leaderboard-name { flex: 1; text-align: left; margin-left: 15px; font-size: 1.1em; } .leaderboard-score { font-size: 1.2em; font-weight: bold; color: #ffd700; min-width: 80px; text-align: right; } .empty-leaderboard { text-align: center; color: #aaa; padding: 20px; font-style: italic; } #restartBtn { margin-top: 15px; padding: 12px 30px; font-size: 1.2em; background: #ffd700; color: #000; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; transition: background 0.3s; } #restartBtn:hover { background: #ffed4e; } #restartBtn:active { transform: scale(0.95); } footer { text-align: center; margin-top: 30px; padding: 20px; color: #ffd700; font-size: 1.1em; font-weight: bold; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); } @media (max-width: 1200px) { .main-wrapper { flex-direction: column; align-items: center; } .leaderboard-container { width: 100%; max-width: 600px; } } @media (max-width: 700px) { #gameCanvas { width: 100%; height: auto; } h1 { font-size: 2em; } .game-info { flex-direction: column; gap: 10px; } .user-input-section { flex-direction: column; gap: 8px; } }