@keyframes lights {
  0% {
    color: hsl(0, 0%, 100%);
    text-shadow:
      0 0 1em hsla(208, 100%, 50%, 0.2),
      0 0 0.125em hsla(208, 100%, 60%, 0.3),
      -1em -0.125em 0.5em hsla(180, 100%, 60%, 0),
      1em 0.125em 0.5em hsla(200, 100%, 60%, 0);
  }
  
  30% { 
    color: hsl(0, 0%, 100%);
    text-shadow:
      0 0 1em hsla(208, 100%, 50%, 0.5),
      0 0 0.125em hsla(208, 100%, 60%, 0.5),
      -0.5em -0.125em 0.25em hsla(180, 100%, 60%, 0.2),
      0.5em 0.125em 0.25em hsla(200, 100%, 60%, 0.4);
  }
  
  40% { 
    color: hsl(0, 0%, 100%);
    text-shadow:
      0 0 1em hsla(208, 100%, 50%, 0.5),
      0 0 0.125em hsla(208, 100%, 90%, 0.5),
      -0.25em -0.125em 0.125em hsla(180, 100%, 60%, 0.2),
      0.25em 0.125em 0.125em hsla(200, 100%, 60%, 0.4);
  }
  
  70% {
    color: hsl(0, 0%, 100%);
    text-shadow:
      0 0 1em hsla(208, 100%, 50%, 0.5),
      0 0 0.125em hsla(208, 100%, 60%, 0.5),
      0.5em -0.125em 0.25em hsla(180, 100%, 60%, 0.2),
      -0.5em 0.125em 0.25em hsla(200, 100%, 60%, 0.4);
  }
  
  100% {
    color: hsl(0, 0%, 100%);
    text-shadow:
      0 0 1em hsla(208, 100%, 50%, 0.2),
      0 0 0.125em hsla(208, 100%, 60%, 0.3),
      1em -0.125em 0.5em hsla(180, 100%, 60%, 0),
      -1em 0.125em 0.5em hsla(200, 100%, 60%, 0);
  }
  
}
* {
   font-family: Arial, Helvetica, sans-serif;
   font-size: 16px;
   box-sizing: border-box;
   text-decoration: none;
}
body {
	background: linear-gradient(to right, #1787b3 0%, #265fa8 100%);
	margin: 0;
	padding: 100px 100px;
	text-decoration: none;
}
h1 {
	margin: 0 0 5px 0;
	letter-spacing: 0.2em;
	font: normal 3.8em Georgia, serif;
	color: #ffffff;
}

#container {
   display: grid;
   grid:
      'header' 100px
      'main' 1fr
      / 1fr;
   text-decoration: none;
   border-radius: 20px;
   height: 100%;
   min-width: 400px;
   min-height: 270px;
   color: #FFF;
}


header {
   display: grid;
   grid-area: header;
   margin: 0;
   padding: 0px;
   text-align: center;
   align-content: center;
   align-items: center;
   border-radius: 20px 20px 0 0;
}

header h1 {
	margin: 0 0 5px 0;
	letter-spacing: 0.2em;
	font: normal 3.8em Georgia, serif;
	font-weight: bold;
	color: #ffffff;
	animation: lights 5s 500ms linear infinite;
}

main {
   margin: 0;
   padding: 0px;
   grid-area: main;
   color: #000000;
   text-align: left;
   border-radius: 0 0 20px 20px;
}
.login {
  	width: 400px;
  	background-color: #ffffff;
  	box-shadow: 0 0 9px 0 rgba(0, 0, 0, 0.3);
	border-radius: 20px 20px 20px 20px;
  	margin: 100px auto;
}
.login h1 {
  	text-align: center;
  	color: #5b6574;
  	font-size: 24px;
  	padding: 20px 0 20px 0;
  	border-bottom: 1px solid #dee0e4;
}
.login form {
  	display: flex;
  	flex-wrap: wrap;
  	justify-content: center;
  	padding-top: 20px;
}
.login form label {
  	display: flex;
  	justify-content: center;
  	align-items: center;
  	width: 50px;
  	height: 50px;
	font-size: 25px;
  	background-color: #3274d6;
  	color: #ffffff;
}
.login form input[type="password"], .login form input[type="text"] {
  	width: 310px;
  	height: 50px;
  	border: 1px solid #dee0e4;
	font-size: 18px;
  	margin-bottom: 20px;
  	padding: 0 15px;
}
.login form input[type="submit"] {
  	width: 100%;
  	padding: 12px 25px;
 	margin-top: 20px;
  	background-color: #3274d6;
  	border: 0;
  	cursor: pointer;
  	font-weight: bold;
	font-size: 20px;
  	color: #ffffff;
	border: 1px solid;
  	transition: background-color 0.2s;
	border-radius: 0 0 20px 20px;
}
.login form input[type="submit"]:hover {
	background-color: #2868c7;
  	transition: background-color 0.2s;
	border-radius: 0 0 20px 20px;
}
.register {
  	width: 400px;
  	background-color: #ffffff;
  	box-shadow: 0 0 9px 0 rgba(0, 0, 0, 0.3);
	border-radius: 20px 20px 20px 20px;
  	margin: 100px auto;
}
.register h1 {
  	text-align: center;
  	color: #5b6574;
  	font-size: 24px;
  	padding: 20px 0 20px 0;
  	border-bottom: 1px solid #dee0e4;
}
.register form {
  	display: flex;
  	flex-wrap: wrap;
  	justify-content: center;
  	padding-top: 20px;
}
.register form label {
  	display: flex;
  	justify-content: center;
  	align-items: center;
  	width: 50px;
 	height: 50px;
	font-size: 25px;
  	background-color: #3274d6;
  	color: #ffffff;
}
.register form input[type="password"], .register form input[type="text"], .register form input[type="email"] {
  	width: 310px;
  	height: 50px;
  	border: 1px solid #dee0e4;
	font-size: 18px;
  	margin-bottom: 20px;
  	padding: 0 15px;
}
.register form input[type="submit"] {
  	width: 100%;
  	padding: 12px 25px;
  	margin-top: 20px;
  	background-color: #3274d6;
 	border: 0;
  	cursor: pointer;
  	font-weight: bold;
  	color: #ffffff;
	border: 1px solid;
  	transition: background-color 0.2s;
	border-radius: 0 0 20px 20px;
}
.register form input[type="submit"]:hover {
	background-color: #2868c7;
  	transition: background-color 0.2s;
	border-radius: 0 0 20px 20px;
}