/*******************************************************
* Forms
*******************************************************/
form
{
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}

label
{
	display: block;
}

input:not([type=checkbox]):not([type=radio]),
textarea,
.select-placeholder
{
	width: 100%;
	display: block;
	margin: 10px 0;
	padding: 8px 8px;
	font-size: 1.05em;
	font-family: inherit;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	transition: all .2s;
	-webkit-transition: all .2s;
	-o-transition: all .2s;
}

.form__control
{
	text-align: center;
	margin-top: 10px;
}

/*******************************************************
* Buttons
*******************************************************/
button, 
.button
{
	margin: 10px 5px;
	display: inline-block;
	padding: 10px 26px;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	cursor: pointer;
	border: 2px solid transparent;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	transition: background-color .2s, border-color .2s;
	-webkit-transition: background-color .2s, border-color .2s;
	-o-transition: background-color .2s, border-color .2s;
	outline: none;
}

button.btn_small,
.button.btn_small
{
	font-size: 0.8em;
	padding: 5px 15px;
	color: #5ca3e7;
	background-color: #fff;
	border-color: #5ca3e7;
}
button.btn_small:hover:not([disabled]),
.button.btn_small:hover
{
	color: #fff;
	background-color: #5ca3e7;
	border-color: #5ca3e7;
}

button.btn_standart,
.button.btn_standart
{
	padding: 10px 30px;
	color: #5ca3e7;
	background-color: #ececec;
	border-color: #5ca3e7;
}
button.btn_standart:hover:not([disabled]),
.button.btn_standart:hover
{
	color: #fff;
	background-color: #5ca3e7;
}

button.btn_big,
.button.btn_big
{
	font-size: 1.2em;
	padding: 8px 60px;
	color: #fff;
	background-color: #5ca3e7;
}
button.btn_big:hover:not([disabled]),
.button.btn_big:hover
{
	color: #5ca3e7;
	background-color: #fff;
	border-color: #5ca3e7;
}

button[disabled]
{
	color: #fff;
	background-color: #d5d5d5;
	cursor: default;
}

button:active:not([disabled])
{
	background-color: #2579bf !important;
}

/*******************************************************
* Checkboxes and Radios
*******************************************************/
input[type=checkbox][readonly] + label,
input[type=text][readonly]
{
    opacity: 0.5;
}

input[type=checkbox], 
input[type=radio]
{
	/*position: absolute;*/
	opacity: 0;
}
input[type=checkbox] + label, 
input[type=radio] + label
{
	/*border: 1px solid #000;*/
	cursor: pointer;
	position: relative;
	/*padding: 0 5px 5px 60px;*/
	/*padding: 0 0 0 0px; /*padding: 0 5px 5px 20px;*/
	display: inline;
	/*line-height: 30px;*/
}

/*************************
* Checkbox-only TICK style
*************************/
input[type=checkbox].checkbox_tick + label:before
{
	content: '';
	position: absolute;
	/*top: 0px;*/
	/*left: 20px;*/
	left: -20px; /*left: -8px;*/ /*left: -10px;*/
	width: 18px; /*width: 20px;*/
	height: 18px; /*height: 20px;*/
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
input[type=checkbox].checkbox_tick:not(checked) + label:after /*marker here*/
{
	content: '';
	position: absolute;
	top: 1px;
	/*left: 28px;*/
	left: -12px; /*left: -1px;*/
	width: 4px;
	height: 10px;
	transform: rotate(45deg);
	border: solid;
	border-width: 0 2px 2px 0;
	opacity: 0;
	transition: opacity .2s;
	-webkit-transition: opacity .2s;
	-o-transition: opacity .2s;
}
input[type=checkbox].checkbox_tick:checked + label:after
{
	opacity: 1;
}

/*************************
* Checkbox-only SLIDE style
*************************/
input.checkbox_slide[type=checkbox]:not(checked) + label:before
{
	content: '';
	position: absolute;
	top: -4px;
	left: 0;
	width: 50px;
	height: 20px;
	background: #CDD1DA;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
input.checkbox_slide[type=checkbox]:not(checked) + label:after
{
	content: '';
	position: absolute;
	top: 1px;
	left: 4px;
	width: 18px;
	height: 12px;
	background: #FFF;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	transition: left .2s, background-color .2s;
	-webkit-transition: left .2s, background-color .2s;
	-o-transition: left .2s, background-color .2s;
}
input.checkbox_slide[type=checkbox]:checked + label:before
{
    background-color: #5BD8EA;
}
input.checkbox_slide[type=checkbox]:checked + label:after
{
	left: 30px;
	/*background-color: #E01D42;*/
}


/*radio*/
input[type=radio]:not(checked) + label:before
{
	content: '';
	position: absolute;
	top: -3px;
	/*left: 20px;*/
	left: -20px;
	width: 18px;
	height: 18px;
	border: 1px solid #CDD1DA;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}
input[type=radio]:not(checked) + label:after /*marker here*/
{
	content: '';
	position: absolute;
	top: 1px;
	/*left: 26px;*/
	left: -16px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	opacity: 0;
	transition: opacity .2s;
	-webkit-transition: opacity .2s;
	-o-transition: opacity .2s;
}
input[type=radio]:checked + label:before
{ }
input[type=radio]:checked + label:after
{
	opacity: 1;
}

/*disabled*/
input[type=radio]:disabled + label:before
{
	background-color: #f8f8f8;
}
input[type=radio]:disabled + label
{
	color: #cfcfcf;
}
input[type=checkbox]:disabled + label
{
	color: #cfcfcf;
}

/*******************************************************
* Grouping elements
*******************************************************/
.inline-group
{
	position: relative;
}
.inline-group > *
{
	display: inline-block !important;
	width: auto !important;
	height: 40px;
	vertical-align: middle;
}
.inline-group > *:hover
{
	z-index: 2;
}
/*sticking elements together*/
.inline-group > *:not(:first-child)
{
	margin-left: -40px;
}

/*Border elements group*/
.elem-group
{
	display: block;
	padding: 10px;
	border: 1px dashed #c2c2c2;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

/*************************
* Thematic forms
*************************/

#form_subcribe input
{
	background-color: transparent;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}
#form_subcribe input[type=email]
{
	padding-right: 40px;
}

#form_manage
{
	max-width: 400px; 
	margin: auto;
}

#form_manage
{
	padding: 20px;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	box-shadow: 0 0 10px 2px rgba(0,0,0,.2);
}

#form_contragent input:nth-child(1)
{
    width: 300px;
    margin: 0;
    display: inline-block;
}
#form_contragent input:nth-child(2)
{
    width: 150px;
    margin: 0;
    display: inline-block;
}

#form_employee
{
    /*margin: auto;*/
    max-width: 600px; 
}
#form_employee td
{   
    padding: 0 5px;
    width: 300px;
}

#form_employee td.role-list span
{
	font-size: 1.4em;
    font-weight: bold;
    color: #d3d3d3;
}

#form_employee .nav-tabs 
{
    padding-bottom: 20px;
}
#form_employee .nav-tabs li a
{
    padding: 5px 10px;
}
#form_employee table.sub
{
    margin-left: 30px
}
#form_employee table.sub td:first-child
{
    width: 200px;
}

#user_customization
{
    color: #ccc;
    font-weight: bold;
}
#user_customization input[type=text],
#user_customization select
{
    width: 200px;
    height: 2em;
    margin: 5px;
    padding: 0 3px;
}

/*************************
* Forms color themes
*************************/
.form_light input,
.form_light textarea,
.form_light .select-placeholder
{
	border: 1px solid rgb(232, 232, 232);
	background-color: rgba(0,0,0,.01);
}

.form_light input[type=checkbox] + label:before,
.form_light input[type=radio] + label:before
{
	border: 1px solid rgb(232, 232, 232);
	background-color: rgba(255,255,255,1);
}
.form_light input:focus,
.form_light button:focus,
.form_light textarea:focus,
.form_light .select-placeholder:hover,
.form_light input[type=checkbox]:focus + label:before, 
.form_light input[type=radio]:focus + label:before
{
	border-color: rgb(208, 208, 208);
	outline: none;
	box-shadow: 0 0 5px 1px rgba(0,0,0,.2);
	-webkit-box-shadow: 0 0 5px 1px rgba(0,0,0,.2);
	-moz-box-shadow: 0 0 5px 1px rgba(0,0,0,.2);
}

 /*markers here*/
.form_light input[type=checkbox]:not(checked) + label:after
{
	border-color: #7fc143;
}
.form_light input[type=radio]:not(checked) + label:after
{
	background-color: #7fc143;
}

/*select*/
.form_light .select-placeholder:hover:after
{
	background-color: #cfcfcf;
	color: #fff;
}
.form_light .select-container > ul
{
	background-color: #F9FCFE;
	color: #4d4d4d;
}
.form_light .select-container li[data-value]:hover
{
	background: #F1F4F7;
}
.form_light .select-container li._selected
{
	background: rgba(0,0,0,.05);
	/*color: #fff;*/
	border-top: 1px dotted #000;
	border-bottom: 1px dotted #000;
}

/*************************
* Linear loading animation
*************************/
.linear-loading
{
	background-size:25px 25px;
	background-image: linear-gradient(-45deg, #ccc 25%, #eee 25%, #eee 50%, #ccc 50%, #ccc 75%, #eee 75%);
	animation: linear-loading-animation 1s linear infinite;
	color: #000;
}
@keyframes linear-loading-animation {
	0% { background-position: 0 ; }
	100% { background-position: 25px ; }
}

/*************************
* Icon for input
*************************/
.icon-addon 
{
	position: relative;
	/*display: inline-block;*/
}
.icon-addon i
{
	color: #CCC;
}

.icon-addon.ialeft input
{
	padding-left: 30px;
}
.icon-addon.ialeft i
{
	position: absolute;
	left: 10px;
	top: 45%;
	padding: 10px 0;
}

.icon-addon.iaright input
{
	padding-right: 30px;
}
.icon-addon.iaright i
{
	position: absolute;
	right: 10px;
	padding: 10px 0;
}