html,
body {
font-family: Roboto, sans-serif;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
font-weight: 400;
margin: 0;
padding: 0;
height: 100%;
width: 100%;
}
.container {
padding-top: 10%;
margin: auto;
padding-bottom: -20%;
display: flex;
justify-content: center;
width: 100%;
flex-direction: column;
}
.spacer {
flex: 1;
}
#check-wrapper {
display: none;
margin-bottom: 10px;
}
.pure-material-button-contained {
position: relative;
display: inline-block;
box-sizing: border-box;
border: none;
border-radius: 4px;
padding: 0 16px;
min-width: 64px;
width: 100%;
height: 36px;
vertical-align: middle;
text-align: center;
text-overflow: ellipsis;
color: rgb(var(--pure-material-onprimary-rgb, 255, 255, 255));
background-color: rgb(var(--pure-material-primary-rgb, 3, 169, 244));
box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
font-family: var(
--pure-material-font,
"Roboto",
"Segoe UI",
BlinkMacSystemFont,
system-ui,
-apple-system
);
font-size: 16px;
font-weight: 600;
line-height: 36px;
overflow: hidden;
outline: none;
cursor: pointer;
transition: box-shadow 0.2s;
margin: 5px 0;
}
.pure-material-button-contained::-moz-focus-inner {
border: none;
}
/* Overlay */
.pure-material-button-contained::before {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
background-color: rgb(var(--pure-material-onprimary-rgb, 255, 255, 255));
opacity: 0;
transition: opacity 0.2s;
}
/* Ripple */
.pure-material-button-contained::after {
content: "";
position: absolute;
left: 50%;
top: 50%;
border-radius: 50%;
padding: 50%;
width: 32px; /* Safari */
height: 32px; /* Safari */
background-color: rgb(var(--pure-material-onprimary-rgb, 255, 255, 255));
opacity: 0;
transform: translate(-50%, -50%) scale(1);
transition: opacity 1s, transform 0.5s;
}
/* Hover, Focus */
.pure-material-button-contained:hover,
.pure-material-button-contained:focus {
box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);
}
.pure-material-button-contained:hover::before {
opacity: 0.08;
}
.pure-material-button-contained:focus::before {
opacity: 0.24;
}
.pure-material-button-contained:hover:focus::before {
opacity: 0.3;
}
/* Active */
.pure-material-button-contained:active {
box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);
}
.pure-material-button-contained:active::after {
opacity: 0.32;
transform: translate(-50%, -50%) scale(0);
transition: transform 0s;
}
/* Disabled */
.pure-material-button-contained:disabled {
color: rgba(var(--pure-material-onsurface-rgb, 0, 0, 0), 0.38);
background-color: rgba(var(--pure-material-onsurface-rgb, 0, 0, 0), 0.12);
box-shadow: none;
cursor: initial;
}
.pure-material-button-contained:disabled::before {
opacity: 0;
}
.pure-material-button-contained:disabled::after {
opacity: 0;
}
.grey {
color: grey;
}
.content {
margin: 0 auto;
}
.header {
font-size: 1.96em;
font-weight: 300;
}
.center {
display: flex;
align-items: center;
justify-content: center;
width: 320px;
margin: auto;
}
.vertical-center {
display: flex;
align-items: center;
justify-content: center;
height: 100vh;
}
p {
padding-top: 20px;
margin-left: 2px;
width: 320px;
}
.header img {
margin-right: 16px;
}
.group {
position: relative;
margin: 10px 0;
}
input {
background: none;
font-size: 18px;
padding: 10px 0 10px 0;
display: block;
width: 320px;
border: none;
border-radius: 0;
border-bottom: 1px solid #d5d5d5;
}
input:focus {
outline: none;
}
input:focus ~ label,
input:valid ~ label {
top: -14px;
font-size: 12px;
color: #03a9f4;
}
input:focus ~ .bar:before {
width: 320px;
}
input:not(:focus)::placeholder {
color: transparent;
}
label {
color: #d5d5d5;
font-size: 16px;
font-weight: normal;
position: absolute;
pointer-events: none;
left: 5px;
top: 10px;
transition: 300ms ease all;
}
.bar {
position: relative;
display: block;
width: 320px;
}
.bar:before {
content: "";
height: 2px;
width: 0;
bottom: 0;
position: absolute;
background: #03a9f4;
transition: 300ms ease all;
left: 0;
}
.valid-feedback {
display: none;
width: 100%;
margin-top: .25rem;
font-size: .875em;
color: #198754;
}
.invalid-feedback {
display: none;
width: 100%;
margin-top: .25rem;
font-size: .875em;
color: #dc3545;
}
.is-valid ~ .valid-feedback, :valid ~ .valid-feedback {
display: block;
}
.is-invalid ~ .invalid-feedback, :invalid ~ .invalid-feedback {
display: block;
}