/* Main style customizations */
body {
	font-family: 'Noto Sans', sans-serif;
}

.content-text {
	font-size: 0.85rem;
}

.responsive-button {
    white-space: normal;
}

.timeago-contextual {
	font-style: italic;
	font-size: 0.8em;
}

a.discrete-link {
	color: inherit !important;
	transition: all 0.3s !important;
}

a.discrete-link:hover {
	color: #337ab7 !important;
	text-decoration: none !important;
}

a.discrete-link:focus {
	color: #ab2230 !important;
	text-decoration: none !important;
}

.card {
	border: 2px solid;
	border-color: #d6d6d6;
	border-radius: 0;
}

.card-header {
	background-color: #e5e5e5;
}

.card-body {
	flex-grow: 0;
}

.content-text .invalid-feedback {
	font-size: 95%;
}

.fullscreen {
	z-index: 9999;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	overflow: auto;
 }

 .form-check-input.is-valid ~ .form-check-label,
 .was-validated .form-check-input:valid ~ .form-check-label {
    color: inherit;
}

.text-strike-through {
	text-decoration: line-through;
}

button.disabled {
	pointer-events: none;
}

.embedded .hide-when-embedded {
	display: none;
}
body.embedded.fixed-nav {
	padding-top: 0;
}
.embedded .content-wrapper {
	margin-left: 0;
}

iframe {
	border: 0;
}

/* Hide the default up/down arrow buttons for number inputs because we use our own buttons in numberpicker */
input[type='number'] {
	-moz-appearance: textfield;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none;
}

/* Navigation style customizations */
#mainNav {
	background-color: #e5e5e5 !important;
	border-bottom: 2px solid !important;
	border-color: #d6d6d6 !important;
}

.navbar-sidenav {
	overflow-x: hidden;
	overflow-y: overlay;
	border-top: 2px solid !important;
}

.navbar-sidenav,
.sidenav-second-level {
	background-color: #e5e5e5 !important;
	border-right: 2px solid !important;
	border-color: #d6d6d6 !important;
}

.navbar-nav .dropdown-menu {
	background-color: #e5e5e5 !important;
	border: 0;
	border-radius: 0;
}

.navbar-nav .dropdown-divider {
	border-top: 2px solid !important;
	border-color: #d6d6d6 !important;
}

.sidenav-toggler {
	background-color: #d6d6d6 !important;
	border-right: 2px solid !important;
	border-color: #d6d6d6 !important;
}

.navbar-sidenav > li,
.sidenav-second-level > li {
	transition: all 0.3s !important;
}

.navbar-sidenav > li:hover,
.sidenav-second-level > li:hover,
.navbar-nav .dropdown-item:hover {
	box-shadow: inset 5px 0 0 #337ab7 !important;
	background-color: #d6d6d6 !important;
}

.navbar-sidenav > li > a:focus,
.sidenav-second-level > li > a:focus,
.navbar-nav .dropdown-item:focus {
	box-shadow: inset 5px 0 0 #ab2230 !important;
	background-color: #d6d6d6 !important;
}

.active-page {
	box-shadow: inset 5px 0 0 #ab2230 !important;
	background-color: #d6d6d6 !important;
}

.navbar-brand {
	margin-right: 0;
}

.cursor-link {
	cursor: pointer;
}

.cursor-busy {
	cursor: wait;
}

.expandable-text .collapse, .module .collapsing {
  height: 2.4rem;
}

.expandable-text .collapse {
  position: relative;
  display: block;
  overflow: hidden;
}

.expandable-text .collapse:before {
  position: absolute;
  right: 0;
  bottom: 0;
}

.expandable-text .collapse.show {
  height: auto;
}

.expandable-text .collapse.show:before {
  display: none;
}

/* Third party component customizations - Bootstrap */

/* Hide the form validation feedback icons introduced in Bootstrap 4.2.0 - a colored border is enough */
.form-control.is-invalid,
.was-validated .form-control:invalid,
.form-control.is-valid,
.was-validated .form-control:valid {
	background-size: 0 0;
}

/* There is a little too much padding on form inputs */
.form-control {
	padding-right: 0.75rem !important;
}

.btn-group-xs > .btn, .btn-xs {
	padding : 0.25rem 0.4rem;
	font-size : 0.875rem;
	line-height : 0.5;
	border-radius: 0.2rem;
}

/* Third party component customizations - DataTables */
.dataTable td {
	vertical-align: middle !important;
}

.table td.fit-content,
.table th.fit-content {
	white-space: nowrap;
	width: 1%;
}

.dataTables_filter,
.dataTables_info {
	display: none;
}

.dataTables_scrollBody {
	overflow: visible !important;
}

/* Third party component customizations - toastr */
#toast-container > div {
	opacity: 1;
	filter: alpha(opacity=100);
}

.toast-success {
	background-color: #28a745;
}

.toast-error {
	background-color: #dc3545;
}

#toast-container > div {
	box-shadow: none;
}

/* Third party component customizations - SB Admin 2 */
#mainNav .navbar-collapse .navbar-nav > .nav-item.dropdown > .nav-link:after,
#mainNav .navbar-collapse .navbar-sidenav .nav-link-collapse:after {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
}

@media (max-width:992px) {
	#mainNav .navbar-collapse .navbar-sidenav > .nav-item > .nav-link {
		padding: 0.8em;
	}
}

html {
	min-height: inherit;
}

/* Third party component customizations - Tempus Dominus */
.date-only-datetimepicker .bootstrap-datetimepicker-widget.dropdown-menu {
	width: auto !important;
}

/* Third party component customizations - Bootstrap Combobox */
.typeahead .active {
	background-color: #e5e5e5;
}

/* Third party component customizations - Popper.js */
.tooltip {
	pointer-events: none;
}
