.app{
	box-sizing: border-box;
	min-height: 100vh;
	padding-bottom:40px;
}

.login h3{
	margin-top:35px;
	margin-bottom:27px;
}

.demo-msg{
	margin-top: 25px;
}

.test-environment-notice{
	background:#f7a5a5;
	color:#930000;
	text-align: center;
	padding:5px;
	display: none;
}

.test .test-environment-notice{
	display: block;
}

textarea{
	min-height:75px;
}

dt{
	text-align:left !important;
	margin-top:4px;
}

h4{
	margin-top:30px;
}

h4.search-title{
	margin: 20px 40px 20px 5px;
}

h5{
	margin-left: 0;
}

pre{
	white-space: normal;
}

.term ol,
.term ul {
	padding-left: 20px;
}

.term ol li,
.term ul li {
	padding-left: 5px;
}

/* workaround for a rendering issue in chrome, see #646 */
.clearfix::after {
	height: 1px;
}

/* button toolbar */
.btn-toolbar.pull-right{
	text-align: right;
}
.btn-toolbar.pull-right .btn{
	float:none;
}

/* navbar */
.container{
	position:relative;
}

.navbar .active{
	background-color:#158CBA;
}

a{
	cursor: pointer;
}

.navbar .badge,
.nav-tabs .badge{
	margin-bottom: 2px;
	margin-left: 3px;
}

/* modals */
#modal{
	display: inline;
	text-align: left;
}
.modal-body h4{
	margin-left:5px;
	margin-top:25px;
}

.modal-body h4:first-of-type{
	margin-top:10px;
}

.modal-body div.checkbox{
	margin-left:6px;
	margin-bottom:30px;
	padding-top:0 !important;
}

.modal-footer .btn{
	float:none;
}

.modal-footer{
	text-align: right;
}

/* tabs */
.nav-tabs{
	margin-bottom:20px;
}

/* tables */
.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td{
	padding: 8px 28px 8px 8px;
}

table.table thead.two-rows-header tr th{
	vertical-align:top !important;
}

table.table tbody tr{
	cursor: pointer;
}

table.table.no-pointer tbody tr{
	cursor: auto;
}

table.table.table-striped{
	border-collapse:separate;
}

/*
tr:last-child td {
	border-bottom: 1px solid #ddd;
}
*/

/* inputs */
.has-error .form-control, .has-error.form-control, .has-error .rw-widget{
	border-color:red;
}
.has-error .control-label, .has-error.control-label{
	color:#e60000;
}

.form-group.has-error .Select-control, .form-group.has-error .datepicker__input-container input{
	border-color:red !important;
}

.Select-menu-outer{
	z-index:1000 !important;
}

input::-ms-clear {
	display: none;
}

/* form labels */
.form-horizontal .control-label{
	text-align:left !important;
	padding-left:20px;
}

/* inline forms */
.form-inline .form-group label{
	margin-right:20px;
	font-weight: 400;
	font-size: 16px;
}

.form-inline .form-group{
	margin-right: 20px;
}

.form-inline .rdt{
	display: inline-block;
}

/* notifications */
.notifications {
	position: fixed;
	left:20px;
	bottom:20px;
	right:20px;
	z-index:10000;
}

.notifications .alert {
	float: right;
	clear: both;
}

.notification-enter{
	max-height:0 !important;
	opacity: 0.01;
	transform: translateX(-25%);
	transition: 500ms ease-in;
}

.notification-enter.notification-enter-active{
	max-height:20em !important;
	transform: translateX(0);
	opacity:1;
}

.notification-leave{
	max-height:20em !important;
	transition: 300ms ease-in;
	transform: translateX(0);
	opacity:1;
}

.notification-leave.notification-leave-active{
	max-height:0 !important;
	transform: translateX(25%);
	opacity:0.01;
}

/* labels */
.label{
	font-size:100%;
}

/* alerts */
.alert.alert-info{
	color: #777;
	background-color: #f8f8f8;
	border-color: #e7e7e7;
}

.read-only .container{
	max-width: 768px;
	margin:auto;
}

/* print */
@media print{
	.btn,.nav-tabs{
		display: none;
	}

	a{
		text-decoration: none !important;
	}
	a[href]:after {
	content: "" !important;
	}
}

/* responsive design modifications */
@media (min-width: 768px){
	dt{
		margin-top:0;
		margin-left:4px;
	}

	.navbar-collapse{
		padding-left:0px;
	}

	.navbar .active{
		border-bottom:4px solid #127BA3;
		margin-bottom:-4px;
	}

	.container.login{
		max-width:420px;
		border:1px solid #e7e7e7;
		border-radius:5px;
		padding:30px 20px 27px 20px;
		background:white;
	}

	.container.demo-msg{
		max-width:420px;
		padding:30px 20px 27px 20px;
	}

	.container.demo-msg h4{
		margin-top: 12px;
		margin-bottom: 15px;
	}

	.app.login{
		background:#f8f8f8;
		display:inline-block;
		min-width:100vw;
	}

	.container.login{
		margin-top:60px;
	}

	.login h3{
		margin-top:0;
	}

	h4.search-title{
		margin: 100px 40px 20px 5px;
	}

	h5{
		margin-left: 3px;
	}
}

@media (max-width: 785px){
	.btn-toolbar.pull-right *{
		display: block !important;
		clear:both !important;
		float:right !important;
		margin-bottom: 10px !important;
	}
	.btn-toolbar.pull-right *:last-child{
		margin-bottom: 0px !important;
	}
}
