* { padding: 0; margin: 0; } .content { width: 100vw; height: 100vh; background-color: rgb(82, 84, 97); position: relative; .wrapper { width: 70%; height: 80%; border-radius: 20px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); background-image: linear-gradient( to right top, rgba(40, 42, 55, 1) 0%, rgba(40, 42, 55, 1) 20%, rgba(40, 42, 55, 0.9) 60%, rgba(40, 42, 55, 0.4) 100% ), url(../images/bg.jpg); background-size: cover; background-repeat: no-repeat; background-position: top; display: flex; flex-direction: row; align-items: center; padding: 80px; box-sizing: border-box; .form-wrapper { width: 100%; height: 50vh; position: relative; top: -10px; .login-form, .signup-form { position: absolute; transition: 0.5s; .tips { color: #fff; h1 { font-size: 45px; margin: 20px 0; font-family: "Newake", Times, serif; letter-spacing: 2px; } span { margin: 0 0 25px 0; font-family: "Century Gothic", Times, serif; } span:first-child { color: #d1d1d1; } span:last-child { color: rgb(29, 144, 245); cursor: pointer; } } .form-wrapper { .input-wrapper { position: relative; margin: 30px 0; transition: 0.5s; .inputs { width: 100%; height: 70px; display: block; border-radius: 18px; border: 0; background-color: rgb(52, 50, 69); color: #fff; padding: 20px 60px 0px 30px; box-sizing: border-box; outline: none; font-size: 15px; font-weight: 600; font-family: "Century Gothic", Times, serif; &:focus { border: 1px solid rgb(21, 139, 243); box-shadow: 0 0 1px 1px rgb(21, 139, 243); } } &::before { display: inline-block; width: 50px; height: 10px; color: rgb(113, 114, 119); position: absolute; top: 10px; left: 30px; white-space: nowrap; font-family: "Century Gothic", Times, serif; } &::after { content: ""; display: inline-block; width: 40px; height: 40px; position: absolute; top: 36px; right: 10px; background-size: 50%; background-repeat: no-repeat; z-index: 1; white-space: nowrap; } } .user { &::before { content: "Email"; } &::after { background-image: url(../images/email.png); } } .pwd { input { letter-spacing: 2px; } &::before { content: "Password"; } &::after { background-image: url(../images/password.png); } } .veri-code { opacity: 0; z-index: -1; position: relative; transition: 0.5s; .veri-code-input { padding-right: 200px; } .veri-code-tips { position: absolute; right: 20px; top: 36px; color: rgb(39, 150, 247); cursor: pointer; } &::before { content: "Verification Code"; } } } .form-btn { width: 100%; height: 60px; background-color: rgb(0, 129, 241); color: #fff; border-radius: 50px; border: 0; font-size: 20px; font-weight: 600; margin: 15px auto; cursor: pointer; font-family: "Century Gothic", Times, serif; } } .login-form { z-index: 1; opacity: 1; animation: loginAnimation 1s; animation-fill-mode: forwards; animation-timing-function: ease; .btn-wrapper { display: flex; transform: translate(0, -90px); .login-btn { flex: 1; margin-left: 10px; transition: 0.5s; &:hover { background-color: rgb(39, 150, 247); } } .other-login-btn { flex: 1; margin-right: 10px; transition: 0.5s; background-color: rgb(85, 91, 105); &:hover { background-color: rgb(101, 109, 126); } } } .form-wrapper { .other-login { transform: translate(0, -60%); .divider { width: 100%; margin: 20px 0; text-align: center; display: flex; align-items: center; justify-content: space-between; .line { display: inline-block; max-width: 45%; width: 45%; flex: 1; height: 1px; background-color: #fff; } .divider-text { vertical-align: middle; margin: 0px 20px; line-height: 0; display: inline-block; width: 50px; color: #fff; } } .other-login-wrapper { width: 100%; display: flex; justify-content: center; align-items: center; .other-login-item { border: 1px solid #fff; padding: 10px; text-align: center; border-radius: 10px; cursor: pointer; font-weight: 600; color: rgb(51, 49, 116); margin: 0 10px; img { width: 30px; height: 30px; vertical-align: middle; } span { vertical-align: middle; } &:hover { width: 80px; height: 50%; background-color: #ccc; border: 0; box-shadow: -20px 10px 32px 1px rgba(182, 183, 185, 0.37); } } } } } } .signup-form { opacity: 1; } } } } @keyframes loginAnimation { 0% { transform: translate(0, 100px); } 100% { transform: translate(0, 0px); } }