* { margin: 0; padding: 0; box-sizing: border-box; touch-action: none; }
html, body { 
    width: 100%; height: 100%; 
    background: #000; overflow: hidden; 
    position: fixed; /* Evita rebote en iPhone */
}

#game-container {
    width: 100vw; height: 100vh;
    position: relative; overflow: hidden;
}

canvas {
    width: 100%; height: 100%;
    display: block; background: #000;
}

.overlay {
    position: absolute; inset: 0;
    background: radial-gradient(circle, #111 0%, #000 100%);
    display: flex; flex-direction: column;
    justify-content: center; align-items: center;
    z-index: 100; padding: 20px; text-align: center;
}

.hidden { display: none !important; }

.neon { 
    color: #0ff; text-shadow: 0 0 10px #0ff; 
    font-size: clamp(1.2rem, 8vw, 2.5rem); 
    margin-bottom: 30px; 
}

input {
    background: #222; border: 2px solid #f0f; color: #fff;
    padding: 12px; margin: 8px; font-family: 'Press Start 2P';
    width: 90%; max-width: 320px; font-size: 10px;
}

button {
    background: #f0f; color: #fff; border: none;
    padding: 15px 25px; margin: 10px;
    font-family: 'Press Start 2P'; cursor: pointer;
    box-shadow: 4px 4px 0 #0ff; font-size: 12px;
    width: 90%; max-width: 320px;
}

button:active { transform: translate(2px, 2px); box-shadow: 2px 2px 0 #0ff; }