/*//////////////////////////////////////////*/
/* Variables */
/*//////////////////////////////////////////*/

:root {
    --white_1: #ffffff;

    --gray_1: #f5f7fe;
    --gray_2: #717a8f;
    --gray_3: #adb5bd;
    --gray_4: #6c757d;

    --test_1: #3a57e8;
    --test_2: #e7ebfc;
    --test_3: #00c3f9;
    --test_4: #f6f8ff;

    --add_1: #c03221;
    --add_2: #1aa053;
}

/*//////////////////////////////////////////*/
/* Fonts */
/*//////////////////////////////////////////*/

@font-face {
    font-family: 'Password';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/password.ttf');
}

/*//////////////////////////////////////////*/
/* Core elements */
/*//////////////////////////////////////////*/

html{
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;

	-ms-text-size-adjust:100%;
	-webkit-text-size-adjust:100%;
	-webkit-overflow-scrolling:touch;
}
body{
	color:#717a8f;
	font-size:16px;
    font-family: 'Inter', sans-serif;
    background: #f5f7fe;
	font-weight:400;
	min-width:360px;
    overflow: auto;
    min-height: 100vh;
	overflow-x:hidden;
	position:relative;
    direction: ltr;
}

/*//////////////////////////////////////////*/
/* Wrapper */
/*//////////////////////////////////////////*/

.wrapper{
    position: relative;
    overflow: hidden;
    padding-left: 260px;
    background: #f5f7fe;
    z-index: 10;
}
@media (max-width:999px) {
    .wrapper{
        padding-left: 0;
    }
}
.wrapper.ready{
	transition:all 300ms linear;
}
.wrapper:before,
.wrapper:after{
    content:'';
}
.wrapper:before{
    position: absolute;
    width:140%;
    height:140%;
    padding:20%;
    top:-20%;
    left:-20%;
    background: #f5f7fe;
    z-index: 999999;
    transition:all 700ms linear;
}
.wrapper:after{
    position: fixed;
    width:60px;
    height:60px;
    top:calc(50% - 30px);
    left:calc(50% - 30px);
    z-index: 999999;
    border-radius: 30px;
    border: 2px solid #3a57e8;
    border-top: 2px solid transparent;
	animation: loading 600ms linear infinite;
}
.wrapper.ready:before,
.wrapper.ready:after{
	opacity: 0;
    z-index: -1;
}
.wrapper.blur{
	filter: blur(4px);
}
.wrapper.full{
	padding-left: 0;
}

/*//////////////////////////////////////////*/
/* Navbar */
/*//////////////////////////////////////////*/

.navbar{
    position: relative;
    padding:0 45px;
    z-index: 110;
    background-color: #ffffff;
}
@media (max-width:599px) {
    .navbar{
        border-bottom:1px solid #f5f7fe;
    }
}
@media (max-width:999px) {
    .navbar{
        padding:0 15px;
    }
}
.navbar .inner{
    height:60px;
    display: flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
    justify-content: space-between;
}
.navbar .inner .toggle_navmenu{
    width:30px;
    height:30px;
    line-height:30px;
    font-size:20px;
    margin-right:15px;
}
.navbar .inner .toggle_navmenu i:last-of-type,
.navbar .inner .toggle_navmenu.open i:first-of-type{
    display: none;
}
.navbar .inner .toggle_navmenu.open i:last-of-type{
    display: block;
}
@media (min-width:1000px) {
    .navbar .inner .toggle_navmenu{
        display: none;
    }
}
.navbar .inner .logo{
    display: block;
    margin-right:20px;
}
@media (max-width:599px) {
    .navbar .inner .logo{
        display: none;
    }
}
.navbar .inner .logo img{
    display: block;
    width:140px;
    height:30px;
}
.navbar .inner .search{
    position: relative;
    width:400px;
    margin-right: 10px;
}
@media (max-width:799px) {
    .navbar .inner .search{
        flex: 1;
    }
}
.navbar .inner .search input{
    width:100%;
    height:40px;
    border:1px solid #e7ebfc;
    padding:0 10px 0 40px;
    transition:all 300ms linear;
}
.navbar .inner .search input:focus{
    border:1px solid #3a57e8;
}
.navbar .inner .search i{
    position: absolute;
    top:0;
    left:0;
    width:40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
}
.navbar .inner .controls{
    display:block;
    font-size:0;
    white-space: nowrap;
    margin: 0 -10px 0 auto;
}
.navbar .inner .controls li{
    display:inline-block;
}
.navbar .inner .controls li a{
    display:block;
    width:40px;
    height:30px;
    line-height:30px;
    font-size:24px;
    color:#3a57e8;
    opacity: 0.6;
}
.navbar .inner .controls li a:hover{
    opacity: 1;
}

/*//////////////////////////////////////////*/
/* Navmenu */
/*//////////////////////////////////////////*/

.navmenu{
    position:fixed;
    top:0;
    left:0;
    bottom:0;
    width:260px;
    height:100%;
    padding-top:60px;
    background: #ffffff;
    z-index: 100;
    transition:all 300ms linear;
}
@media (max-width:999px) {
    .navmenu{
        left:-260px;
    }
}
@media (max-width:599px) {
    .navmenu{
        width:100%;
        left:-100%;
    }
}
.navmenu.open{
    left:0;
}
.navmenu .logo{
    display: block;
    width:140px;
    height:30px;
    position: absolute;
    top:15px;
    left:15px;
}
.navmenu .logo img{
    display: block;
    width:140px;
    height:30px;
}
.navmenu .inner{
    max-width: 260px;
    overflow: auto;
    position: relative;
    max-height: calc(100vh - 60px);
    border-top:1px solid #f5f7fe;
}
@media (max-width:599px) {
    .navmenu .inner{
        border-top:0;
    }
}
.navmenu .inner ul{
    display: block;
    padding:0 15px;
}
.navmenu .inner ul li{
    display: block;
    height:40px;
    line-height:40px;
}
.navmenu .inner ul li a{
    display: block;
}
.navmenu .inner ul li.title{
    color:#adb5bd;
}
.navmenu .inner ul li.link a{
    position: relative;
    color:#6c757d;
    padding-left:50px;
}
.navmenu .inner ul li.link a:hover{
    background: #e7ebfc;
    color:#3a57e8;
}
.navmenu .inner ul li.link a i{
    position: absolute;
    top:0;
    left:10px;
    width:30px;
    height:40px;
    text-align: center;
    opacity:0.6;
}
.navmenu .inner ul li.sub a{
    padding-left:50px;
}
.navmenu .inner ul li.sub a:hover{
    color:#3a57e8;
}
.navmenu .inner ul li.sep{
    height:1px;
    margin:20px 0;
    background: linear-gradient(90deg, transparent, rgba(58, 87, 232, 0.2), transparent);
}

/*//////////////////////////////////////////*/
/* Cover */
/*//////////////////////////////////////////*/

.cover{
    border-radius: 0 0 30px 30px;
    padding:60px 45px 120px;
    margin-bottom: -60px;
    position: relative;
    z-index: 5;
    overflow: hidden;
    color: #ffffff;
}
@media (max-width:999px) {
    .cover{
        padding:60px 15px 120px;
    }
}
.cover .bg{
    position: absolute;
    z-index: 5;
	animation: cover_pulse 40000ms linear infinite 4000ms;
}
.cover .bg.cover_bg_1{
    background-image: url('https://cdn.wallpaperhub.app/cloudcache/1/b/5/8/e/f/1b58ef6e3d36a42e01992accf5c52d6eea244353.jpg');
}
.cover .bg.cover_bg_2{
    background-image: url('https://img5.goodfon.ru/wallpaper/nbig/2/e1/texture-wallpaper-abstract.jpg');
}
.cover .action{
    display:inline-block;
    height:44px;
    line-height:44px;
    padding:0 15px;
    background: rgba(255, 255, 255, 0.2);
}
.cover .action:hover{
    background: rgba(255, 255, 255, 0.4);
}
@media (max-width:599px) {
    .cover .action span{
        display:none;
    }
}

/*//////////////////////////////////////////*/
/* Content */
/*//////////////////////////////////////////*/

.content{
    position: relative;
    padding:0 45px;
    z-index: 10;
}
@media (max-width:999px) {
    .content{
        padding:0 15px;
    }
}

/*//////////////////////////////////////////*/
/* Footer nav */
/*//////////////////////////////////////////*/

.navfooter{
    padding:30px 45px 60px;
    color: #adb5bd;
}

/*//////////////////////////////////////////*/
/* Point auth */
/*//////////////////////////////////////////*/

.point_auth{
    display: flex;
    flex-direction: row;
    align-items: center;
    position: relative;
    min-height:100vh;
    padding:60px;
}
@media (max-width:599px) {
    .point_auth{
        padding:60px 0;
    }
}
.point_auth:before{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top:0;
    left:0;
    background: rgba(0, 0, 0, 0.5);
}
.point_auth .logo{
    display: flex;
    flex-direction: row;
    align-items: center;
    position: relative;
    height:100%;
}
.point_auth .logo img{
    display: block;
    width: 280px;
    max-width:100%;
    height: auto;
}
.point_auth form{
    background: #ffffff;
    padding: 60px;
    margin:60px 0;
}
@media (max-width:999px) {
    .point_auth form{
        padding: 30px;
    }
}
.point_auth form h1{
    font-weight: 700;
}

/*//////////////////////////////////////////*/
/* Empty */
/*//////////////////////////////////////////*/

.empty{
	padding:120px 30px;
    max-width:500px;
    margin-left: auto;
    margin-right: auto;
}
.empty strong{
	display: block;
}
.empty p{
	display: block;
}
