Mockup login con HTML y CSS

Mockup para un login

Hoy tenia ganas de hacer alguna cosa sencilla y de paso entrenar un poco HTML y CSS, no todo va ser programación.

En esta ocasión estoy haciendo unas pruebas de HTML y CSS para una pantalla de login. Prueba ver el resultado final desde aquí.

<!DOCTYPE html>
<html lang="es">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Mockup</title>
  <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
  <style>
    body {
      font-family: 'Roboto', sans-serif;
    }
    #login {
      box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.4);
      max-width: 320px;
      min-width: 320px;
      width: 320px;
      max-height: 409px;
      min-height: 409px;
      height: 409px;
      margin: 0 auto;
    }
    #login img {
      left: calc(50% - 130px);
      position: relative;
      width: 260px;
      top: 10px;
    }
    .form > div {
      margin: 20px auto;
      text-align: center;
      color: #00bfd6;
      font-size: 23px;
      font-weight: bold;
    }
    .form form div {
      text-align: center;
      margin: 15px;
    }
    .form form div input {
      width: 100%;
      border-bottom: 1px solid #ff9300;
      border-top: 0;
      border-left: 0;
      border-right: 0;
    }
    .form form {
      width: calc(100% - 40px);
      left: 20px;
      position: relative;
    }

    * { box-sizing:border-box; }

.group {
  position:relative;
  margin-bottom:45px;
}

input {
  font-size:20px;
  padding:10px 10px 10px 5px;
  display:block;
  width:300px;
  border:none;
  border-bottom:1px solid #757575;
}

input:focus {
  outline:none;
}

label {
  color: #ff9300;
    font-size: 14px;
    font-weight: normal;
    position: absolute;
    pointer-events: none;
    left: 5px;
    top: 20px;
  transition:0.2s ease all;
  -moz-transition:0.2s ease all;
  -webkit-transition:0.2s ease all;
}

input:focus ~ label, input:valid ~ label {
  top: -5px;
    font-size: 11px;
    color: #FF9300;
    font-weight: bold;
}

.bar {
  position:relative;
  display:block;
}

.bar:before, .bar:after {
  content:'';
  height:2px;
  width:0;
  bottom:1px;
  position:absolute;
  background:#FF9300;
  transition:0.2s ease all;
  -moz-transition:0.2s ease all;
  -webkit-transition:0.2s ease all;
}

.bar:before {
  left:50%;
}

.bar:after {
  right:50%;
}

input:focus ~ .bar:before, input:focus ~ .bar:after {
  width:50%;
}

.highlight {
  position:absolute;
  height:60%;
  width:100px;
  top:25%;
  left:0;
  pointer-events:none;
  opacity:0.5;
}

input:focus ~ .highlight {
  -webkit-animation:inputHighlighter 0.3s ease;
  -moz-animation:inputHighlighter 0.3s ease;
  animation:inputHighlighter 0.3s ease;
}
form .button button {
    right: 0;
    position: absolute;
    border: 0;
    width: 50%;
    padding: 10px;
    box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
    background-color: #00bfd6;
    color: #ffffff;
    font-weight: bold;
    border-radius: 3px;
}
form .button .group {
    margin: 0;
}


@-webkit-keyframes inputHighlighter {
    from { background:#ffffff; }
  to 	{ width:0; background:transparent; }
}
@-moz-keyframes inputHighlighter {
    from { background:#ffffff; }
  to 	{ width:0; background:transparent; }
}
@keyframes inputHighlighter {
    from { background:#ffffff; }
  to 	{ width:0; background:transparent; }
}
  </style>
</head>
<body>
  <main>
    <div id="login">
      <div class="logotipo">
        <img src="../assets/logo.webp" alt="Logotipo">
      </div>
      <div class="form">
        <div>Registro estación Platzi</div>
        <form>
          <div class="group">
            <input type="text" required>
            <span class="highlight"></span>
            <span class="bar"></span>
            <label>Nombre</label>
          </div>
          <div class="group">
            <input type="text" required>
            <span class="highlight"></span>
            <span class="bar"></span>
            <label>Apellido</label>
          </div>
          <div class="group">
            <input type="text" required>
            <span class="highlight"></span>
            <span class="bar"></span>
            <label>Cargo</label>
          </div>
          <div class="button">
            <div class="group">
              <button>ENVIAR</button>
            </div>
          </div>
        </form>
      </div>
    </div>
  </main>
</body>
</html>