html, body {
  height: 100%;
}
header .row {
	background: darkcyan;
	padding: 10px;
	text-align:center;
	position: relative;
	font-size: 20px;
}
.wrapper, body {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.main, main {
  flex: 1 0 auto;
}

header div {
	text-align: left;
}

header span a {
	color: #FFF;
	text-decoration: none;
}

header .logout {
	text-align: right;
}

header span a:hover,
header span a:focus {
	color: #FFF;
	text-decoration: none;
}

header i {
	color: #FFF;
}

footer {
	background: darkcyan;
  	flex: 0 0 auto;
	padding: 0px;
}

footer .container {
	width: 100%;
	padding: 10px 0px;
}

main#login {
	background: #e7e7ff;
}
header {
	width: 100%;
	box-sizing: content-box;
}

header .one-head {
	text-align: left;
}

header .one-head a {
	text-decoration: none;
	color: #FFF;
}

.item {
	display: inline-block;
	margin: 15px;
	width: 120;
	height: 120px;
	text-align: center;
}

.footable {
	margin-bottom: 15px;
}
.footable input, .footable button {
	height: 35px;
	margin: 0px;
}
.footable>thead>tr:nth-of-type(2) {
	#background: #4b4b7d;
	background: #666699;
	color: #eeeeee;
}
.footable>tbody>tr:nth-of-type(odd) {
	background-color: #e7e7ff;
}

.btn-primary {
    color: #fff;
    background-color: #008080;
    border-color: #2e6da4;
}

.pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover {
	z-index: 3;
	cursor: default;
	color: #fff;
	background: #666699;
	border-color: #673AB7;
}

.pagination>li>a, .pagination>li>span {
    position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    color: #666699;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #ddd;
}
i.fa {
    display: inline-block;
    width: 20px;
    height: 11px;
    text-align: center;
    cursor: pointer;
}

.btn-primary {
	color: #fff;
	background: #666699;
	border-color: #77778e
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
	background: #7f7fbd;
	border-color: #9990a9;
}

td button.btn.btn-default {
    height: 25px;
}

.footable>tbody>tr>td,
.footable>tbody>tr>th,
.footable>tfoot>tr>td,
.footable>tfoot>tr>th,
.footable>thead>tr>td,
.footable>thead>tr>th {
	padding: 3px 10px;
	vertical-align: middle;
}
.footable>thead>tr>th>form {
	margin: 0px;
}

.footable-last-visible {
	text-align: center !important;
}

.footable-editing {
	min-width: 60px;
}

.tab-pane {
	background: #ecf5f5;
}

.nav-tabs > li > a {
	background: #FBFBFB;
	border: 2px solid #e8e8e8;
	border-radius: 0px 10px 0px 0px;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover {
	border: 2px solid #e8e8e8;
	border-radius: 0px 10px 0px 0px;
	border-bottom: 0px solid #FFF;
}

.nav-tabs > li > a:hover {
	border: 2px solid #e8e8e8;
	border-bottom: 0px;
	border-radius: 0px 10px 0px 0px;
	background: #FFF;
}

.nav-tabs > li > a {
	border: 2px solid #e8e8e8;
	border-bottom: 0px solid #e8e8e8;
	border-radius: 0px 10px 0px 0px;
}

.tab-nav > li.active > a::after { 
	content: "";
	background: #FFF
}

.tab-card > .tab-content {
	background: #FFF;
}

input.btn.btn-success:hover {
	background-color: #47a447;
	border-color: #398439;
}

.button_enter {
	background: #666699;
}

.button_enter:hover {
	background: #7f7fbd;
}

.dropdown-menu input, .dropdown-menu input {
	margin: 4px 0 0;
	height: auto;
}

i.fa.fa-small {
	width: 10px;
	height: 10px;
}

label.col-form-label {
    padding: 0px 10px;
}

table.footable>tbody>tr>td,table.footable>tbody>tr>th{
	font-size: 12px;
	height: 30px;
}

table.table {
	background: #FFF;
}

div.modal-header.modal-success {
	background-color: #47a447;
	color: #FFF;
}

div.modal-header.modal-danger {
	background-color: #d43f3a;
	color: #FFFFFF;
}

div.modal-header.modal-warning {
	background-color: #d58512;
	color: #FFFFFF;
}

div.modal-header.modal-info {
	color: #FFFFFF;
	background-color: #4da5df;
}

div[role="alert"] {
	z-index: 2000 !important;
}

table.schedule th {
	text-align: center;
}

.hidding {
	display: none;
}

.fa-1 {
	font-size: 1em !important;
	width: auto !important;
	height: auto !important;
}

.fa-1-5 {
	font-size: 1.5em !important;
	width: auto !important;
	height: auto !important;
}

.fa-2 {
	font-size: 2em !important;
	width: auto !important;
	height: auto !important;
}

.fa-3 {
	font-size: 3em !important;
	width: auto !important;
	height: auto !important;
}

.fa-4 {
	font-size: 4em !important;
	width: auto !important;
	height: auto !important;
}

.fa-5 {
	font-size: 5em !important;
	width: auto !important;
	height: auto !important;
}

.fa-menu {
	transform: translateY(-50%);
	position: relative;
	top: 50%;
	color: #434343;
}

.none {
	display: none;
}

.table {
    font-size: 14px;
}

table tr.first-on-line, table.table-bordered-custom {
	border-top: 2px solid #ddd;
}

table.table-bordered-custom {
	border-bottom: 2px solid #ddd;
}

/* КАЛЕНДАРЬ */
#calendar .quarter {
	text-align: center;
	margin: 30px 0px 0px;
	background: #e7e7ff;
	padding: 5px 0px;
}

#calendar h2 {
	font-size: 25px;
}

#calendar .prev-month, #calendar .next-month {
    opacity: .1;
}

#calendar table {
	margin: 0px auto;
	cursor: default;
}

#calendar td, #calendar th {
	display: table-cell;
	vertical-align: inherit;
	padding: 3px;    
	font-size: 20px;
	font-weight: 600;
}

#calendar th {
	font-size: 16px;
	text-align: center;
	font-family: monospace;
}

#calendar td {
	border: 1px solid #c5c5c5;
	background: #f6f6f6;
	text-align: center;
	width: 35px;
	height: 35px;
}

#calendar td:hover:not(.next-month):not(.prev-month) {
	background: #a8a8a8;
	cursor: pointer;
}

#calendar caption {
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.2em;
	color: black;
	font-size: 25px;
}

#calendar .holiday {
	color: #D00;
}

#calendar .state-holiday {
	color: white;
	background: #D00;
}

#calendar .shortened {
	color: #0A0;
}

#calendar .active-day {
	background: #DD0 !important;
	font-weight: bold;
}

#calendar #context-menu {
	list-style: none;
	list-style-position: inside;
	position: absolute;
	display: none;
	top: 0px;
	left: 0px;
	margin: 0px;
	padding: 0px;
	background: #f0f0f0;
	border: 1px solid #353535;
	-moz-box-shadow: -5px 2px 10px rgba(0,0,0,0.5); /* Для Firefox */
	-webkit-box-shadow: -5px 2px 10px rgba(0,0,0,0.5); /* Для Safari и Chrome */
	box-shadow: -5px 2px 10px rgba(0,0,0,0.5);
}

#calendar #context-menu li {  
	border-bottom: 1px solid #353535;
	width: 200px;
	padding: 2px 10px;
	font-size: 14px;
	font-weight: bold;
}

#calendar #context-menu li:hover {
	background: #a8a8a8;
	cursor: pointer;
}

.blue_bg {
	background: #3498db;
}

.grey_bg {
	background: #b0f538;
}

.purple_bg {
	background: #ae65d0;
}

.orange_bg {
	background: #ffb521;
}

.green_bg {
	background: #55a649;
}

.red_bg {
	background: #e07689;
}

.aqua_bg {
	background: #7bd4b6;
}

a.empty:hover {
	text-decoration: none;
}

.next, .prev {
	font-size: 16px;
	cursor: pointer;
}

.good {
	background: #9adc9a;
	border-bottom: 1px solid #aaa;
}

.bad {
	background: #dc9a9a;
	border-bottom: 1px solid #aaa;
}

.closed {
	opacity: 0.3;
	cursor: default !important;
}

.right {
	float: right;
}

input[type=checkbox].form-check-input {
		width: 20px;
    height: 20px;
		padding: 6px 12px;
}

main a:hover {
	text-decoration: none;
}

.item:hover {
	opacity: 0.8;
}

/*ПРЕЛОАДЕР*/
.preloader {
	position: fixed;
	width: 100vw;
	height: 100vh;
	z-index: 1001;
	background: rgba(125,125,125,0.5);
	top: 0px;
	left: 0px;
}

.preloader img {
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
	top: 50%;
	width: 15vw;
}

.wide {
	overflow-x: auto;
}

.big {
	font-size: 14px;
	font-weight: bold;
}

.print {
	display:none;
}

.autocomplite {
	position: absolute;
	background: white;
	border: 1px solid #cccccc;
	z-index: 1;
	padding: 4px 0px;
}

.autocomplite div {
	padding: 2px 10px;
	border-bottom: 1px solid #cccccc;
}

.autocomplite div:last-of-type {
	border-bottom: 0px solid #cccccc;
}

.autocomplite div:hover {
	background: #eaeaea;
	cursor: pointer;
}

table .primary {
	background: #669;
	color: #FFF;
}

.major_table table thead tr {
  background: #666699;
  color: #eeeeee;
}

.major_table table thead tr th {
  height: 40px;
  display: table-cell;
}

.major_table table tbody tr td {
  display: table-cell;
  min-width: 80px;
}

.major_table .footable-page-link {
  cursor: pointer;
}

.major_table .paging li span {
  width: 50px;
}

.major_table .search {
  background: #666699;
  color: #eeeeee;
}

.limit-div {
  position: absolute;
  top: 2px;
  right: 18%;
  width: 15%;
}

.tablesaw-columntoggle-btnwrap {
  position: absolute !important;
  top: 2px;
  right: 10px;
}

.top_plank {
  position: absolute;
  top: 52px;
  left: 10px;
}

table tr.lock td {
  background: #eaeaea !important
}

@media print {
	.print {
		display:table-cell;
	}
	.wide {
		overflow-x: unset;
	}
	header, footer, title, button {
		display: none !important;
	}
	.noprint, .fa-check, .fa-close {
		display: none !important;
	}
	table {
		width: 100% !important;
	}
}