body{
    font-family: arial;
    color: #333;
}
h1{
    font-weight: normal;
    margin: 20px auto;
    text-align: center;
}
form{
    width: 500px;
    margin: 20px auto;
}
input{
    display: block;
    padding: 8px 16px;
    font-size: 2em;
    margin: 10px auto;
    width: 100%;
    box-sizing: border-box;
    border-radius: 10px;
    border: 3px solid #ccc;
    outline: none !important;
}

.valid {
    border: 3px solid #18ba02;
}

input + p {
    opacity: 0;
    height: 0;
} 

.invalid {
    border: 3px solid orangered;
}

input.invalid + p {
    opacity: 1;
    height: auto;
    margin-bottom: 1rem;
}