Hola Dan tratando de explicar lo que ocurre podríamos decir lo siguiente.
La clase login definida con .login tiene un posicionamiento absoluto respecto a su contenedor. Cuando existe el div con id cuerpos, el contenedor del div con class login es el otro div
Cuando no existe el div con id cuerpos, el contenedor del div con class login es el body
Al tener definido para cuerpos un posicionamiento absoluto con un desplazamiento hacia arriba con margin-top de -350px, el div con class login queda oculto fuera de la pantalla (digamos que queda dentro de la parte desplazada).
En este código se ve cómo aparece el div que estaba oculto (anulando algunas reglas css):
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Tienda de Videojuegos</title>
<style type="text/css">
body {
background-color: black;
font-family: 'Lucida Console';
font-size: 25px;
}
#cuerpos{
position: absolute;
top:10%;
left:49%;
width:500px;
/*margin-left:-500px;*/
height:1300px;
/*margin-top:-350px;*/
border:1px solid #808080;
padding:5px;
background-color:#0B0B61;
}
.login{
width:300px;
height:80px;
background-color:red;
border: 5px solid;
border-color: aliceblue;
/*margin-left: 680px;*/
/*position:absolute;*/
}
</style>
</head>
<body>
<div id="cuerpos">
<div class="login"> Probando
</div>
</div>
</body>
</html>
Realmente el problema está en tu forma de definir estilos en este ejemplo, ya que aparentemente estás haciendo cosas un tanto confusas o difíciles de entender, como desplazar a la derecha usando left:49%; y luego desplazar a la izquierda usando margin-left:-500px; esto no parece "razonable"
Saludos cordiales