@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;500&display=swap');

:root {
    --primary: #5352ed;
    --white-color: #ffffff;
    --light-color: #e6e6ed;
    --grey-color: #a4b0be;
    --dark-color: #2f3542;
}

* {
    margin: 0;
    padding: 0;
}

*,
::before,
::after {
    box-sizing: border-box;
}

#a-tag {
    text-decoration: none;
    color: inherit;
}

/* remove #blue tap on mobile */
#a-tag,
button,
input {
    -webkit-tap-highlight-color: transparent;
}

ul {
    list-style: none;
}

h1,
h2 {
    font-weight: 600;
    line-height: normal;
}

h1 {
    font-size: 2.5em;
}

h2 {
    font-size: 2em;
}


body {
    font-family: 'Nunito';
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8;
    color: var(--dark-color);
    background-color: #f1f2f6;
}


input::placeholder {
    font-family: 'Nunito';
    color: var(--grey-color);
}


.container {
    max-width: 1000px;
    width: 100%;
    padding: 0 0px;
    margin: 0 auto;
}


.site {
    height: 100%;
    display: flex;
    justify-content: center;
    padding: 20px 0;
}


.theform {
    position: relative;
    background-color: var(--white-color);
    padding: 50px 30px;
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    box-shadow: rgb(149 157 165 / 20%) 0 8px 24px;
    overflow: hidden;
}


nav ul {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

nav ul li:last-child {
    /* font-size: 12px; */
}

nav ul li:last-child #a-tag {
    color: var(--primary);
    font-weight: 500;
}

nav ul li:last-child #a-tag:hover {
    text-decoration: underline;
}

.heading h2 {
    font-size: 42px;
    margin-top: 50px;
}

form {
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin-top: 30px;
}

form>p {
    position: relative;
    height: 46px;

}

form p input {
    font-family: inherit;
    width: 100%;
    height: 100%;
    outline: 0;
    padding: 0 30px;
    line-height: 40px;
    border-width: 0 0 2px;
    border-style: solid;
    border-color: var(--light-color);
}

form p i {
    position: absolute;
    left: 0;
    top: 23px;
    line-height: 1;
    margin-top: -10px;
    color: var(--grey-color);
}

form p i.el-icon-view {
    left: auto;
    right: 0;
    color: var(--dark-color);
    cursor: pointer;
}

form .actions {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 10px;
    margin-top: 20px;
}

form .actions label {
    width: 100%;
    position: relative;
    overflow: hidden;
}

form .actions label input {
    width: 100%;
    background-color: var(--primary);
    color: var(--white-color);
    font-weight: 600;
    border: 0;
    border-radius: 25px;
    line-height: 46px;
    cursor: pointer;
}

form .actions label i {
    position: absolute;
    top: 5px;
    right: 5px;
    width: 36px;
    height: 36px;
    padding: 10px;
    line-height: 1;
    border-radius: 50%;
    background-color: rgb(255 255 255 / 25%);
    color: var(--white-color);
    cursor: pointer;
    transform: translateX(50px);
    visibility: hidden;
    transition: transform .3s, visibility .3s;
}

form .actions label:hover i {
    transform: translateX(0);
    visibility: inherit;

}

.theform .play {
    position: relative;
    min-height: 300px;
    transform: translateX(18%) rotateX(-180deg) scale(0.65) rotate(70deg);
    z-index: 1;
}

.theform .play .wrapper {
    position: relative;
    width: 100%;
    height: 100%;
}

.theform .play .card {
    position: absolute;
    width: 350px;
    height: 500px;
    border-radius: 30px;
}

.play .card.one {
    background-color: #6675ff;
    transform: rotate(290deg) translate3d(20%, 35%, 0) skewY(-20deg);
}

.play .card.two {
    background-color: #5599ff;
    transform: rotate(318deg) translate3d(60%, 8%, 0) scale(1.1);
}

.play .card.three {
    background-color: #5191f2;
    transform: rotate(335deg) translate3d(100%, -20%, 0);
}

.play .card.four {
    background-color: #dddcfb;
    transform: rotate(-15deg) translate3d(45%, 105%, 0) scale(0.8);
}

.play .card.five {
    background-color: #191947;
    transform: rotate(283deg) translate3d(-150%, 50%, 0);
}

/* animation */
.signin,
.signin-show .signup {
    visibility: hidden;
    opacity: 0;
    height: 0;
}

.signin-show .signin,
.signup-show .signup {
    visibility: visible;
    opacity: 1;
    height: auto;
    transition: visibility .7s .3s, opacity .7s .3s;
}

.signin-show .signin {
    animation: signinswipe 1s .3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.signin-show .signin.img1 {
    animation: signinswipe 0.1s .3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.img1 {
    width: 260px;
    position: absolute;
    /* top: 50px; */
    right: 100px;
    z-index: 1;
}

.img2 {
    width: 260px;
    position: absolute;
    /* top: 50px; */
    left: 100px;
    z-index: 1;
}

@keyframes signinswipe {
    from {
        transform: translate3d(-20%, 0, 0);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.signup-show .signup {
    animation: signupswipe 1s .3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

@keyframes signupswipe {
    from {
        transform: translate3d(20%, 0, 0);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}


/* animation for mobile */
.signin-show .play {
    animation: signinplaymobile 0.8s both;
}

@keyframes signinplaymobile {
    0% {
        transform: translateX(18%) rotateX(-180) scale(0.65) rotate(70deg)
    }

    50% {
        transform: translateX(0) rotateX(0) scale(5) rotate(138deg)
    }

    100% {
        transform: translateX(0) rotateX(-180deg) scale(0.65) rotate(70deg)
    }
}

.signup-show .play {
    animation: signupplaymobile 0.8s both;
}

@keyframes signupplaymobile {
    0% {
        transform: translateX(-50%) skewY(20deg)
    }

    50% {
        transform: translateX(0) rotateX(0) scale(5) rotate(138deg) skewY(40deg)
    }

    100% {
        transform: translateX(18%) rotateX(-180deg) scale(0.65) rotate(70deg)
    }
}

@media screen and (min-width:768px) {
    .theform {
        padding: 50px 0;
        flex-direction: row;
    }

    .theform>div {
        flex: 1 0 50%;
    }

    .signup {
        padding: 0 5% 0 13%;
    }

    .signin {
        padding: 0 13% 0 5%;
    }

    .signin {
        height: auto;
    }

    .theform .play {
        position: absolute;
        top: 0;
        bottom: 0;
        width: 50%;
        z-index: 1;
        transform: translateX(100%);
    }

    .signin-show .play {
        animation: signinplay 0.8s both;
    }

    @keyframes signinplay {
        0% {
            transform: translateX(100%) skewY(20deg)
        }

        50% {
            transform: translateX(25%) scale(10) skewY(40deg) rotateY(180deg)
        }

        100% {
            transform: translateX(0) rotateY(180deg)
        }
    }

    .signup-show .play {
        animation: signupplay 0.8s both;
    }

    @keyframes signupplay {
        0% {
            transform: translateX(-50%) skewY(80deg)
        }

        50% {
            transform: translateX(0) scale(10) skewY(80deg)
        }

        100% {
            transform: translateX(100%)
        }
    }
}

@media screen and (min-width:992px) {
    form .actions {
        flex-direction: row;
        justify-content: space-between;
    }

    form .actions label {
        max-width: 180px;
    }
}