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; }