/*//////////////////////////////////////////*/
/* Animations */
/*//////////////////////////////////////////*/

/* Cover pulse animation */

@keyframes cover_pulse {
	0% { transform:scale(1); }
    50% { transform:scale(1.1); }
    100% { transform:scale(1); }
}

/* Loading animation */

@keyframes loading {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

/*//////////////////////////////////////////*/
/* Links */
/*//////////////////////////////////////////*/

a{
	color:inherit;
	text-decoration:none;
	transition:all 200ms linear;
}
a:hover{
	color:inherit;
	text-decoration:none;
}

.fullsize{
    width:100%;
    height: 100%;
    top:0;
    left:0;
    right:0;
    bottom:0;
}

/*//////////////////////////////////////////*/
/* Texts */
/*//////////////////////////////////////////*/

.txt_12_18{
    font-size: 12px;
    line-height: 18px;
}
.txt_16_24{
    font-size: 16px;
    line-height: 24px;
}
.txt_18_26{
    font-size: 18px;
    line-height: 26px;
}
.txt_36_44{
    font-size: 36px;
    line-height: 44px;
}
.txt_ac{
    text-align: center;
}
.txt_ar{
    text-align: right;
}

/*//////////////////////////////////////////*/
/* Images */
/*//////////////////////////////////////////*/

.img_cover{
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}
.img_contain{
	background-repeat:no-repeat;
	background-position:center center;
	background-size:contain;
}

/*//////////////////////////////////////////*/
/* Blocks */
/*//////////////////////////////////////////*/

.left{
	float:left;
}
.right{
	float:right;
}
.clear{
	clear:both;
	float:none;
}
.clear_after:after{
	visibility: hidden;
	display: block;
	font-size: 0;
	content: ' ';
	clear: both;
	height: 0;
}
.hide_me{
	display:none !important;
}

/*//////////////////////////////////////////*/
/* Shadows */
/*//////////////////////////////////////////*/

.shd_1{
    box-shadow: 0 10px 30px 0 rgba(17, 38, 146, 0.05);
}
.shd_2{
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

/*//////////////////////////////////////////*/
/* Radius */
/*//////////////////////////////////////////*/

.rds_5{
    border-radius: 5px;
}
.rds_10{
    border-radius: 10px;
}
.rds_15{
    border-radius: 15px;
}
.rds_25{
    border-radius: 25px;
}

/*//////////////////////////////////////////*/
/* Margins */
/*//////////////////////////////////////////*/

.mb_15{
    margin-bottom: 15px;
}
.mb_30{
    margin-bottom: 30px;
}
.mb_60{
    margin-bottom: 60px;
}

/*//////////////////////////////////////////*/
/* Forms */
/*//////////////////////////////////////////*/

.input{
    color:#717a8f;
	font-size:16px;
    font-family: 'Inter', sans-serif;
	font-weight:400;
}
.input.pass{
    font-family: 'Password' !important;
    letter-spacing: 2px;
}

/* Notices */

form .notice{
    color:#ffffff;
    padding:5px 10px;
}
form .notice.error{
    background:#c03221;
}
form .notice.info{
    background:#1aa053;
}

/* Button */

.bttn{
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    cursor:pointer;
    text-transform: uppercase;
    font-weight: 700;
    height:50px;
    font-size:14px;
    color:#ffffff;
    background: #3a57e8;
    padding:0 25px;
    font-family: 'Inter', sans-serif;
    border:0;
    position: relative;
    overflow: hidden;
    transition:all 200ms linear;
}
.bttn:hover{
    color:#ffffff;
}
.bttn:active{
    top:1px;
}
.bttn:before{
    content: '';
    width:100%;
    height:100%;
    position: absolute;
    top:0;
    left:0;
    background: rgba(0, 0, 0, 0.1);
    opacity: 0;
    transition:all 200ms linear;
}
.bttn:hover:before{
    opacity: 1;
}

/* Button disabled */

.bttn:disabled,
.bttn[disabled]{
    cursor:not-allowed;
    top:0;
    background: #adb5bd;
}

/* Pin code */

.pin_code{
    display: block;
    font-size:0;
    position: relative;
    margin-left:-10px;
    margin-right:-10px;
    white-space: nowrap;
}
.pin_code input{
    display: inline-block;
    width:60px;
    height:60px;
    border-radius: 30px;
    text-align: center;
    font-size:30px; 
    margin:0 10px;
    font-family: 'Password' !important;
    border: 1px solid #adb5bd;
    transition:all 200ms linear;
}
.pin_code input::-webkit-outer-spin-button,
.pin_code input::-webkit-inner-spin-button{
    -moz-appearance:textfield;
    -webkit-appearance: none;
}
.pin_code input[type=number]{
    -moz-appearance:textfield;
    -webkit-appearance: none;
}
.pin_code input:focus{
    border: 1px solid #3a57e8;
}
.pin_code.denied input{
    background: #c03221;
    border: 1px solid #c03221;
    color:#ffffff;
}
.pin_code.allowed input{
    background: #1aa053;
    border: 1px solid #1aa053;
    color:#ffffff;
}
@media (max-width:599px) {
    .pin_code input{
        width:50px;
        height:50px;
        font-size:24px;
    }
}

/* Pin code change */

.pin_change input.error{
    border: 1px solid #c03221 !important;
    filter: drop-shadow(0 0 10px rgba(192, 50, 33, 0.2));
}
.pin_change input.success{
    border: 1px solid #1aa053 !important;
    filter: drop-shadow(0 0 10px rgba(26, 160, 83, 0.2));
}

/* Label field */

.lbl_fld{
    display: block;
    position: relative;
    padding-top: 5px;
}
.lbl_fld.lbl_half{
    width:calc(50% - 15px);
}
.lbl_fld strong{
    display: inline-block;
    height: 20px;
    line-height: 20px;
    font-size: 12px;
    text-transform: uppercase;
    position: absolute;
    top: -5px;
    left: 10px;
    padding: 0 5px;
    z-index: 10;
    background: #ffffff;
    white-space: nowrap;
    border-radius: 3px;
}
.lbl_fld .fld_wrap{
    position: relative;
    z-index: 5;
}
.lbl_fld .fld_wrap .fld{
    display: block;
    width: 100%;
    max-width: 100%;
    height:50px;
    padding:0 10px;
    border: 1px solid #e7ebfc;
    position: relative;
    transition:all 300ms linear;
    -webkit-box-shadow: 0 0 0 30px white inset !important;
    box-shadow: 0 0 0 30px white inset !important;
}
.lbl_fld .fld_wrap .fld:hover{
    border: 1px solid #adb5bd;
}
.lbl_fld .fld_wrap .fld:focus{
    border: 1px solid #3a57e8;
}
.lbl_fld span{
    display: block;
    margin-top: 5px;
    font-size:12px;
    line-height: 18px;
    color: #adb5bd;
    transition:all 200ms linear;
}
.lbl_fld:hover span{
    color: #717a8f;
}

/* Label field with icon */

.lbl_fld .fld_wrap.icn i{
    display:block;
    width:40px;
    height:40px;
    line-height:40px;
    text-align:center;
    position: absolute;
    top:5px;
    right:5px;
    background: #ffffff;
    z-index: 10;
}
.lbl_fld .fld_wrap.icn .fld{
    padding-right: 50px;
    z-index: 5;
}

/* Form separator */

.form_sep{
    position:relative;
}
.form_sep strong{
    font-weight: 700;
}

/*//////////////////////////////////////////*/
/* Pagination */
/*//////////////////////////////////////////*/

.pagination{
	height:50px;
	line-height:50px;
	font-weight:700;
	position:relative;
	margin-right:-10px;
	margin-left:-10px;
}
.pagination_empty{
    font-size: 12px;
    text-transform: uppercase;
    color: #adb5bd;
}
.pagination .list,
.pagination .number{
	display:inline-block;
}
.pagination .number{
	position:relative;
	margin-left:10px;
	width:50px;
	padding:0;
	background:#e7ebfc;
	color:#3a57e8;
}
.pagination .number.mobile{
	margin:0 10px;
	vertical-align: middle;
}
.pagination .number:hover{
	color:#ffffff;
	background:#3a57e8;
}
.pagination .number:active{
	top:1px;
}
.pagination .number.current{
	color:#ffffff;
	background:#3a57e8;
}
.pagination .number i{
	font-size:14px;
}
.pagination .dd_nav{
    width:200px;
	background:#e7ebfc;
	font-weight:700;
	height:50px;
	line-height:50px;
	border:0;
	padding:0 15px;
	cursor:pointer;
	vertical-align: middle;
}

/*//////////////////////////////////////////*/
/* Filters */
/*//////////////////////////////////////////*/

.filters{
    padding:15px 7.5px;
    display:flex;
    flex-direction: row;
    justify-content: space-between;
    overflow: auto;
}
.filters ul{
    display: inline-block;
    font-size:0;
    white-space: nowrap;
    padding:0 7.5px;
}
.filters ul li{
    display: inline-block;
    height:40px;
    line-height:40px;
    border: 1px solid #e7ebfc;
    border-right: 0;
}
.filters ul li:first-child{
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}
.filters ul li:last-child{
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    border-right: 1px solid #e7ebfc;
}
.filters ul li a,
.filters ul li span{
    display: block;
    font-size:14px;
    white-space: nowrap;
}
.filters ul li a{

}
.filters ul li span{
    padding:0 15px;
    cursor:pointer;
}
.filters ul li span select{
    padding:0;
    margin:0;
    border:0;
    height:38px;
    font-size:14px;
    color: #717a8f;
    font-family: 'Inter', sans-serif;
    cursor:pointer;
    vertical-align: top;
}

/*//////////////////////////////////////////*/
/* Tables */
/*//////////////////////////////////////////*/

.table{
    position: relative;
    overflow-x: auto;
}
.table table{
    min-width:100%;
    border-collapse: collapse;
    overflow: hidden;
    border-bottom: 1px solid #e7ebfc;
}
.table table thead{
    /* background: #000; */
}
.table table tr{
    border-top: 1px solid #e7ebfc;
}
.table table tbody tr:hover{
    background: #f6f8ff;
}
.table table th{
    padding:15px;
    text-align: left;
    font-weight: 400;
    color: #adb5bd;
    font-size: 14px;
    text-transform: uppercase;
}
.table table td{
    padding:15px;
}
.table table tfoot{
    font-size: 12px;
    text-transform: uppercase;
    color: #adb5bd;
}

/*//////////////////////////////////////////*/
/* Cards */
/*//////////////////////////////////////////*/

.card{
    background: #ffffff;
    padding-bottom: 1px;
}
.card .card_inner{
    padding:30px;
    position: relative;
}
@media (max-width:599px) {
    .card .card_inner{
        padding:15px;
    }
}
.card .card_title{
    position: relative;
    padding:30px;
    border-bottom: 1px solid #e7ebfc;
}
.card .card_title strong{
    display:block;
    font-weight: 700;
    font-size: 18px;
}
.card .card_title p{
    display:block;
    padding-top:5px;
}
.card .card_sep{
    display:block;
    height:1px;
    background: #e7ebfc;
}

/*//////////////////////////////////////////*/
/* Products table */
/*//////////////////////////////////////////*/

.table table.pdoructs_table{
    width:100%;
    min-width:900px;
}
.table table.pdoructs_table thead th:nth-child(1){
    width:40%;
}
.table table.pdoructs_table thead th:nth-child(2){
    width:15%;
}
.table table.pdoructs_table thead th:nth-child(3){
    width:15%;
}
.table table.pdoructs_table thead th:nth-child(4){
    width:15%;
}
.table table.pdoructs_table thead th:nth-child(4){
    width:15%;
}
.table table.pdoructs_table td.title{
    position: relative;
    padding-left:80px;
}
.table table.pdoructs_table td.title .image{
    display: block;
    width:50px;
    height:50px;
    background: #adb5bd;
    position: absolute;
    top:calc(50% - 25px);
    left:15px;
}
.table table.pdoructs_table td.title .image img{
    display: block;
    width:50px;
    height:50px;
}
.table table.pdoructs_table td.title strong{
    display: block;
    font-weight: 700;
}
.table table.pdoructs_table td.title span{
    display: inline-block;
    padding-right:10px;
}
.table table.pdoructs_table td.movement span{
    display: block;
    font-size: 12px;
    text-transform: uppercase;
    color:#adb5bd;
}
.table table.pdoructs_table td.movement i{
    display: block;
    padding:5px 0 6px;
}
.table table.pdoructs_table td.actions a{
    display: inline-block;
    width:40px;
    height:40px;
    line-height:40px;
    background: #e7ebfc;
    color:#3a57e8;
}
.table table.pdoructs_table td.actions a:hover{
    background: #3a57e8;
    color:#ffffff;
}

/*//////////////////////////////////////////*/
/* Deals list */
/*//////////////////////////////////////////*/

.deals_list .select{
    display: block;
    font-size: 0;
}
.deals_list .select li{
    display:inline-block;
    width:25%;
}
.deals_list .select li a{
    display: block;
    font-size: 12px;
    line-height: 30px;
    text-transform: uppercase;
    color: #adb5bd;
}
.deals_list .select li a.active{
    background: #e7ebfc;
    color: #3a57e8;
}
.deals_list .list{
    position: relative;
}
.deals_list .list .deal{
    padding-left: 50px;
    position: relative;
}
.deals_list .list .deal:before{
    content:'';
    position: absolute;
    top:0;
    left:14px;
    bottom:-30px;
    width:2px;
    background: #e7ebfc;
}
.deals_list .list .deal .icon{
    width:30px;
    height:30px;
    line-height:30px;
    font-size: 14px;
    background: #e7ebfc;
    color: #ffffff;
    position: absolute;
    top:-2px;
    left:0;
    transition:all 200ms linear;
}
.deals_list .list .deal:hover .icon{
    background: #3a57e8;
    color: #ffffff;
}
.deals_list .list .deal h2{
    display:block;
    position: relative;
    font-weight: 700;
}
.deals_list .list .deal .source{
    padding-top:0;
}
.deals_list .list .deal .source span{
    display: inline-block;
    margin-right:10px;
    color: #adb5bd;
}
.deals_list .list .deal .source span.author{
    cursor:help;
}
.deals_list .list .deal .details{
    padding-top:10px;
}
