@font-face {
    font-family: Behdad;
    src: url('../font/Behdad-Regular.ttf') format('truetype');
}

h1 {
    font-family: Behdad, sans-serif;
}

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-family: Behdad, sans-serif;
}

body {
    min-height: 100vh;
    background: #c8c8c8;
    color: #6a6f8c;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 30px;
}

.clearfix:after,
.clearfix:before {
    content: '';
    display: table
}

.clearfix:after {
    clear: both;
    display: block
}

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

a:hover {
    color: #fff;
}

.login-wrap {
    background: url(../img/back.jpg) no-repeat center;
    background-size: cover;
    box-shadow: 0 12px 15px 0 rgba(0, 0, 0, .24), 0 17px 50px 0 rgba(0, 0, 0, .19);
    border-radius: 10px;
    overflow: hidden;
}

.login-html {
    padding: 40px;
    background: rgba(40, 57, 101, .9);
}

form {
    min-width: 230px;
}

.login-html .sign-in-htm,
.login-html .sign-up-htm {
    backface-visibility: hidden;
    transition: all .4s linear;
}

.login-html .sign-in,
.login-html .sign-up,
.login-form .group .check {
    display: none;
}

.login-html .tab,
.login-form .group .label,
.login-form .group .button {
    text-transform: uppercase;
}

.login-html .tab {
    font-size: 22px;
    margin-right: 15px;
    padding-bottom: 5px;
    margin: 0 15px 10px 0;
    display: inline-block;
    border-bottom: 2px solid transparent;
}

.login-html .sign-in:checked+.tab,
.login-html .sign-up:checked+.tab {
    color: #fff;
    border-color: #1161ee;
}

.login-form {
    position: relative;
    perspective: 1000px;
    transform-style: preserve-3d;
}

.login-form .group {
    margin-bottom: 15px;
}

.login-form .group .label,
.login-form .group .input,
.login-form .group .button {
    width: 100%;
    color: #fff;
    display: block;
}

.login-form .group .input,
.login-form .group .button {
    border: none;
    padding: 15px 20px;
    border-radius: 25px;
    background: rgba(255, 255, 255, .1);
}

.login-form .group input[data-type="password"] {
    -webkit-text-security: circle;
}

.login-form .group .label {
    color: #aaa;
    font-size: 12px;
    margin-bottom: 3px;
}

.login-form .group .button {
    background: #1161ee;
}

.login-form .group label .icon {
    width: 15px;
    height: 15px;
    border-radius: 2px;
    position: relative;
    display: inline-block;
    background: rgba(255, 255, 255, .1);
}

.login-form .group label .icon:before,
.login-form .group label .icon:after {
    content: '';
    width: 10px;
    height: 2px;
    background: #fff;
    position: absolute;
    transition: all .2s ease-in-out 0s;
}

.login-form .group label .icon:before {
    left: 3px;
    width: 5px;
    bottom: 6px;
    transform: scale(0) rotate(0);
}

.login-form .group label .icon:after {
    top: 6px;
    right: 0;
    transform: scale(0) rotate(0);
}

.login-form .group .check:checked+label {
    color: #fff;
}

.login-form .group .check:checked+label .icon {
    background: #1161ee;
}

.login-form .group .check:checked+label .icon:before {
    transform: scale(1) rotate(45deg);
}

.login-form .group .check:checked+label .icon:after {
    transform: scale(1) rotate(-45deg);
}

.login-html .sign-in:checked+.tab+.sign-up+.tab+.login-form .sign-in-htm {
    transform: rotate(0);
}

.login-html .sign-up:checked+.tab+.login-form .sign-up-htm {
    transform: rotate(0);
}

.hr {
    height: 2px;
    margin: 40px 0 30px 0;
    background: rgba(255, 255, 255, .2);
}

.foot-lnk {
    text-align: center;
}

.error {
    max-width: 220px;
    padding: 10px;
    color: red;
    background-color: rgba(246, 10, 10, 0.2);
    border: 2px solid red;
    border-radius: 15px;
    margin: 10px 0;
}

@media screen and (min-width: 768px) {
    form {
        min-width: 500px;
    }

    .error {
        max-width: 500px;
    }
}

input[type='submit'] {
    cursor: pointer;
}

.login-form .group .input ~ span {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    padding: 5px;
    position: absolute;
    left: 5px;
    cursor: pointer;
    transform: translatey(-42px);
    background: rgba(40, 57, 101, .9);
}