body {
	background-color: #e5e5e5;
}

main > .container {
	padding: 70px 15px 20px;
}

main > .container .breadcrumb {
	padding: 0px;
	font-size: 0.8rem;
	margin-bottom: 0.8rem;
	background: none;
}

.navbar-brand {
	padding: 0px;
}

.navbar-brand img {
	max-height: 38px;
}

.footer {
	background-color: #fff;
	font-size: .7em;
	height: 40px;
	border-top: 1px solid #ccc;
	padding: 12px 0px;
}

.footer > .container {
	padding-right: 15px;
	padding-left: 15px;
}

.grid-view th {
	white-space: nowrap;
}

/* generic components */
.card-body.border-bottom-2 {
	border-bottom: 2px solid #dee2e6;
}

.card-body.search-form-container {
	background-color: rgba(0,0,0,.03);
	border-color: #dee2e6;
}

/* generic components */
.card-body.border-top-2 {
	border-top: 2px solid #dee2e6;
}

/* login page */
.login-page {
	align-items: center;
	justify-content: center;
	height: 80vh;
}

.login-page .login-box {
	width: 450px;
	margin: 10px;
}

.login-page .login-box .login-box-msg {
	text-align: center;
}

.login-page .container-logo {
	display: flex;
	justify-content: center;
	margin: 40px 0px;
}

.login-page .container-logo img {
	max-height: 130px;
}

/* error page */
.error-page {
	margin: 20px auto 0;
	width: 550px;
	height: 140px;
	display: flex;
}

.error-page > .error-icon {
	display: flex;
	padding-right: 20px;
	justify-content: center;
	align-items: center;
	font-size: 100px;
}

.error-page > .error-content {
	display: flex;
	flex: 1;
	justify-content: center;
	flex-direction: column;
}

.error-page > .error-content > h2 {
	text-transform: uppercase;
}

/* table style */
.table-striped tbody tr:nth-of-type(odd) {
	background-color: #4388cc21;
}

/* navbar */
.navbar-nav .nav-item-user-label {
	display: flex;
	flex: 1;
	justify-content: end;
	font-size: 14px;
}

.navbar-nav .nav-item-user-label .nav-link {
	pointer-events: none;
	padding: 0px 15px;
	border-right: 2px solid;
	border-radius: 0px;
	margin-right: 10px;
}

.navbar-nav .nav-item-user-label .nav-link .label-user-info {
	display: flex;
	padding: 0px;
	align-items: flex-end;
	flex-flow: column;
	height: 100%;
	justify-content: center;
}

.navbar-nav .nav-item-user-label .nav-link .label-user-info strong {
	text-transform: uppercase;
	line-height: 18px;
}

.navbar-nav .nav-item-user-label .nav-link .label-user-info em {
	font-style: normal;
	line-height: 18px;
}

.navbar-nav .nav-item-logout-label .nav-link {
	font-size: 26px;
	padding: 0px 0px 0px 5px;
}

@media (max-width: 575.98px) {
	main > .container .breadcrumb {
		display: none;
	}

	.login-page {
		height: auto;
	}

	.login-page .login-box {
		width: 100%;
	}

	/* error page */
	.error-page {
		margin: 0px auto 0;
		width: 100%;
		flex-direction: column;
	}

	.error-page > .error-icon {
		margin: 20px 0px;
	}

	.error-page > .error-content {
		align-items: center;
		text-align: center;
		padding: 0rem 2.5rem;
	}
}

@media (min-width: 768px) {
	.navbar-expand-md .navbar-nav {
		width: 100%;
	}
}

@media(max-width:767px) {
	.navbar-nav {
		margin-top: 10px;
	}

	.navbar-nav .nav-link.active {
		padding: 0.5rem 1rem;
	}

	.navbar-nav .nav-item-user-label {
		justify-content: flex-start;
		border-top: 1px solid rgba(255,255,255,.5);
		margin-top: 10px;
		font-size: inherit;
		padding: 0px;
	}

	.navbar-nav .nav-item-user-label .nav-link {
		pointer-events: auto;
		border-right: none;
		padding: 0.5rem 0;
		margin-right: 0px;
	}

	.navbar-nav .nav-item-logout-label {
		display: none;
	}

	.navbar-nav .nav-item-user-label .nav-link .label-user-info {
		display: block;
	}
}

@media (min-width: 576px) and (max-width: 767px) {

	main > .container {
		padding: 70px 0px 20px;
	}

}