* {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
} 

input, textarea, div.alert *, tbody tr td * {
	-webkit-touch-callout: text !important;
	-webkit-user-select: text !important;
	-khtml-user-select: text !important;
	-moz-user-select: text !important;
	-ms-user-select: text !important;
	user-select: text !important;
}

body {
	padding-top: 60px;
	padding-bottom: 60px;
}

body.withLog {
	padding-bottom: 190px;
}

textarea { 
	resize: none; 
}

table.table-centered th, 
table.table-centered td { 
	text-align: center; 
}

table.table-centered .text-left {
	text-align: left;
}

table.table-centered .text-right {
	text-align: right;
}

a, a:hover, a:active, a:focus {
	outline: 0 !important;
}

a.accordion-toggle {
	text-decoration: none !important;
}

a.static:hover {
	text-decoration: none !important;
	text-underline: none !important;
	color: auto !important;
}

a.noanchor,
li[role='menuitem'] a,
a[role='menuitem'] {
	cursor: pointer;
}

button.action-button {
	min-width: 224px;
}

.dropdown-menu a[role='menuitem'] {
	padding-left: 2.5em !important;
}

.toolbar {
    margin-left: -15px;
    margin-right: -15px;
    border-bottom: 1px solid #CCC;
    padding-bottom: 6px;
    padding-left: 10px;

    background: -webkit-linear-gradient(white, white, white, #EEE);
    background: -o-linear-gradient(white, white, white, #EEE);
    background: -moz-linear-gradient(white, white, white, #EEE);
    background: linear-gradient(white, white, white, #EEE);
}

.toolbar .breadcrumb {
	padding: 0 !important;
	margin-bottom: 0 !important;
	background-color: inherit !important;
}

.actionbar {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-top: .5em !important;
	padding-bottom: .5em !important;
}

.actions ul[role="menu"] {
	max-height: calc(100vh - 175px); 
	overflow: auto;
	background: -webkit-linear-gradient(white, white, white, white, white, white, white, white, #EEE); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(white, white, white, white, white, white, white, white, #EEE); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(white, white, white, white, white, white, white, white, #EEE); /* For Firefox 3.6 to 15 */
    background: linear-gradient(white, white, white, white, white, white, white, white, #EEE); /* Standard syntax */
}

.shadow-light {
	 -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075) !important; 
	 box-shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075) !important;
}

.shadow-medium {
	 -webkit-box-shadow: inset 0 2px 0 rgba(255,255,255,.30), 0 2px 6px rgba(0,0,0,.225) !important; 
	 box-shadow: inset 0 2px 0 rgba(255,255,255,.30), 0 2px 6px rgba(0,0,0,.225) !important;
}

.shadow-dark {
	 -webkit-box-shadow: inset 0 4px 0 rgba(255,255,255,.45), 0 4px 9px rgba(0,0,0,.45) !important; 
	 box-shadow: inset 0 4px 0 rgba(255,255,255,.45), 0 4px 9px rgba(0,0,0,.45) !important;
}

.page-footer {
	border-top: 1px solid;
	border-top-color: inherit;
	width: 100%;
	display: inline-block;
	padding-top: 1em;
}

.subheader {
	font-size: 60%;
	margin-top: .8em;
	margin-left: .2em;
	display: inline-block;
}

.section-summary {
	margin-top: .6em !important;
	padding-top: 1em !important;
	padding-bottom: 1em !important;
}

.ellipsis { width: 100%; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.masterTable { min-height: 400px !important; }

.footer { opacity: 0.8; }
.footer:hover { opacity: 1.0; }

.log {
	position: fixed;
	bottom: 50px;
	left: 0;
	
	width: 100%;
	height: 128px;
	
	z-index: 1000;
	
	background-color: rgba(0, 0, 0, .5);
	
	padding: 0 .2em;
	padding-top: 20px;
	padding-right: 0px;
	
	overflow: hidden;
}

.log *, .selectable { 
	-webkit-touch-callout: text;
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

.glasspane { 
	position: fixed;
	top: 0;
	left: 0;
	
	width: 100%;
	height: 100%;
	
	z-index: 10000000000;
	
	cursor: wait;
	
	background-color: rgba(255, 255, 255, .5);
}	

.glasspane .message {
	position: fixed;
	
	width: 192px;
	left: calc(50% - 96px);
}

.page-header {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

.adjusting .ui-select-choices,
.adjusting .ui-select-bootstrap > .ui-select-choices  {
	bottom: auto;
	top: 100%;
}

/* See: https://github.com/angular-ui/ui-select/issues/1575 */
.ui-select-fix.ui-select-container input.ui-select-search,
.ui-select-container:not(.ui-select-multiple) input.ui-select-search {
	width: 100% !important;
}

/* Personal addition to avoid that disabled selects become thinner */
.ui-select-container.ui-select-disabled {
	min-height: 31px !important;
}

.ui-select-toggle {
	margin-top: 1px;
}

.ui-select-match-text > span {
    width: 80%;
    overflow: hidden;
    text-overflow: ellipsis;
    position: absolute;
}

.ui-select-placeholder, .ui-select-match-text {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 40px;
}

.ui-select-bootstrap>.ui-select-choices, 
.ui-select-bootstrap>.ui-select-no-choice {
	/** Temporarily removed */
	/*width: 100% !important;*/
}

.form-group.select-container {
	width: 100%;
}

.form-group.select-container .form-control,
.form-group .form-control {
	width: 100%;
}

.form-group.select-container .ui-select-match-text,
.form-group .ui-select-match-text {
	max-width: calc(100% - 38px);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	display: inline-block;
}

.filtersRow .smallSelect,
.filtersRow .largeSelect,
.filtersRow .largerSelect,
.filtersRow .largestSelect { 
	width: 100% !important; 
	min-height: 30px !important;
} 

.filtersRow .formGroup { 
	vertical-align: top !important; 
	height: 100% !important; 
}

@media(min-width: 768px) {
	.filtersRow .form-group { min-height: 30px; }
	.filtersRow .smallSelect { width: 144px !important; min-height: inherit; }
	.filtersRow .largeSelect { width: 192px !important; min-height: inherit; }
	.filtersRow .largerSelect { width: 256px !important; min-height: inherit; }
	.filtersRow .largestSelect { width: 320px !important; min-height: inherit; }
	 
	.filtersRow + .smallSelect,
	.filtersRow + .largeSelect,
	.filtersRow + .largerSelect,
	.filtersRow + .largestSelect {
		margin-top: 20px; 
	}
	
	.filtersRow .form-group {
		vertical-align: top !important;
	}
}	

/** See: http://blog.craigsworks.com/bootstrap-3-disabled-dropdown-links/ */

.dropdown-menu > .disabled,
.list-group > .disabled {
	cursor: not-allowed !important; 
}
 
.dropdown-menu > .disabled > a,
.list-group > .disabled > a {
	pointer-events: none;
}

.table-responsive .ui-select-choices {
  top: 100%;
  bottom: auto;
}

.log .title { 
	position: absolute;
	top: 0;
	left: 0;
	width: calc(100% - 5px);
	margin-left: .2em;
}

.log .close {
	position: absolute;
	top: 0px;
	right: 16px;
	margin-top: .2em;
	margin-right: .3em;
	opacity: 1.0 !important;
	
	display: none;
}

.log .title * {
	display: inline-block;
	text-align: left;
	width: 100%;
}

.log:hover {
	padding-top: 0px;
	
	background-color: rgba(0, 0, 0, 1);
}

.log:hover .close {
	display: inline-block;
}

.log:hover .title { 
	display: none; 
}

.log .logContainer {
	height: 128px;
	overflow: hidden;
}

.log:hover .logContainer {
	overflow: auto !important;
}

.userId {
	display: inline-block !important;
	width: 100%;
}

h2.actions {
	margin-top: 0px;
	margin-bottom: 0px;
}

h2 small {
	vertical-align: 2px;
}

div.page-header.header {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

div.page-header.section {
	margin-top: 0px !important;
}

ul.pagination {
	margin-bottom: 0 !important;
}

/** Overrides of other (library-specific) styles */

.leaflet-top, .leaflet-bottom {
	z-index: 1 !important;
}

.popover {
	max-width: 400px !important; /* optional max width */
	width: intrinsic; /* Safari/WebKit uses a non-standard name */
	width: -moz-max-content; /* Firefox/Gecko */
	width: -webkit-max-content; /* Chrome */
}

.childNumber {
	min-width: 48px;
}