input[type="text"]:invalid,
input[type="number"]:invalid {
  background-color: #ffe6e6;
}
input[type="text"]:required,
input[type="number"]:required {
  border: 0.1em dotted red;
}

input[type="text"]:valid,
input[type="number"]:valid {
  border: 0.1em solid #777;
}