html {

}

body {
	height: 100%;
	overflow: hidden;
}

#main_container {
	height: 100%;
}

.main_content {
	height: 100%;
}

.main_content > div {
	height: 100%;
	/*height: calc(100vh - 80px);*/
}

.admin-header {
	background-color: #DDD;
	border-bottom: 1px solid #999;
}
.admin-header .header-logo {
	width: 200px;
	height: 44px;
	cursor: pointer;
	font-size: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	-webkit-touch-callout: none; /* iOS Safari */
	-webkit-user-select: none; /* Safari */
	-khtml-user-select: none; /* Konqueror HTML */
	-moz-user-select: none; /* Old versions of Firefox */
	-ms-user-select: none; /* Internet Explorer/Edge */
	user-select: none; /* Non-prefixed version, currently
	supported by Chrome, Edge, Opera and Firefox */
	color: #333;
}

.admin-menu {
	flex-shrink: 0;
	z-index: 100;
	border-right: 1px solid #999;
}

.admin-menu .menu-list {
	background-color: #e1e5ed;
	min-width: 200px;
	width: auto;
	height: 100%;
}

.admin-menu .group {
	font-weight: 700;
	padding: 3px 15px;
	color: #333;
	background-color: #528bff;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.admin-menu .group.home {
	/*background-color: #4dccff;*/
	background-color: #DDD;
	/*border-top: 1px solid #333;*/
}

.admin-menu .item {
	padding: 3px 15px;
	color: #333;
	background-color: #9ab5f5;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.admin-menu .item:hover {
	background-color: #8aa3de;
}

.admin-menu .item span.visited {
	font-size: 10px;
}

.admin-menu .menu-list .user-info {
	margin: 10px 0px;
	padding: 5px;
	overflow: hidden;
}

.main_content .footer {
	height: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.main_content #main-div {
	/*flex-grow: 1;*/
	height: calc(100vh - 60px - 25px);
	background-color: #FFF;
	/*overflow: auto;*/
	overflow: auto;
}

@media only screen and (max-width: 576px) {

	html.lock {
		overflow: hidden;
	}

	body {
		overflow: auto;
	}

	body.lock {
		overflow: hidden;
	}

	.admin-menu {
		display: none;
		position: fixed;
		width: 100%;
		height: 100vh;
		transition: background-color 0.3s;
		background-color: transparent;
	}

	.admin-menu.visible {
		display: flex;
	}

	.admin-menu.show {
		background-color: rgba(0,0,0,0.5);
	}

	.admin-menu .menu-list {
		transition: 0.3s;
		transform: translateX(-200px);
	}

	.admin-menu.show .menu-list{
		transform: translateX(0px);
	}

	.main_content #main-div {
		height: auto;
	}

	.footer {
		font-size: 12px;
	}

}