html {
	overflow-y: scroll;
	position: relative;
	min-height: 100%;
}

body {
	padding-top: 50px;
	margin-bottom: 30px;
	padding-right: 0 !important;
}

.navbar-toggle {
	float: left;
	margin-right: 0;
	margin-left: 8px;
}

a:hover {
	text-decoration: none;
}

table a:not(.btn),
.table a:not(.btn) {
	text-decoration: none;
}

a.action {
	margin-right: 10px;
	font-weight: bold;
}

.row.feedback p {
	padding: 15px;
}

label small {
	font-weight: normal;
}

.modal-backdrop {
	z-index: -1;
}

.form-control.active {
	outline: 0;
	border-color: #3FB618;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}

table.table {
	width: 100% !important;
}

h2 {
	font-size: 50px;
}

.fa.fa-play-circle {
	font-size: 22px;
}

.keyboard audio {
	width: 47px;
}

.keyboard a {
	font-weight: bold;
}

.menu-options-menu {
	list-style: none;
}

.ui360 a,
.ui360 a:hover,
.ui360 a:focus {
	padding: 2px;
	margin-left: 10px;
	margin-top: -15px;
}

.table-header-bordered tr,
.table-header-bordered tr th {
	border: 1px solid #ddd;
}

.app-mode {
	position: fixed;
	right: 15px;
}

.bg-online {
	background-color: green;
	color: #FFF;
	font-weight: bold;
	padding: 2px;
}

.bg-offline {
	background-color: yellow;
	color: #FFF;
	font-weight: bold;
	padding: 2px;
}

.btn-service {
	margin-left: 8px;
}

/* Sticky footer styles -------------------------------------------------- */

html {
	position: relative;
	min-height: 100%;
}

body {
	margin-bottom: 41px;
}

.table-condensed>tbody>tr>td.audio {
	padding: 2px 5px;
}

.footer {
	position: absolute;
	bottom: 0;
	width: 100%;
	min-height: 40px;
	background-color: #f5f5f5;
}

.footer p {
	margin-top: 10px;
}

.footer a {
	color: #000;
	font-weight: bold;
}

/* Overrides -------------------------------------------------- */

.modal-backdrop {
	z-index: 3;
}

body {
	padding-right: 0 !important;
}

.overflow-ellipsis {
	display: block;
	text-overflow: ellipsis;
	overflow: hidden;
	height: 1.2em;
	white-space: nowrap;
}

.navbar-fixed-bottom .navbar-collapse,
.navbar-fixed-top .navbar-collapse {
	max-height: 500px;
}

.panel-heading-title {
	padding: 8px 0 !important;
}

.table-condensed {
	margin: 0;
}

.col-sm-7 {
	text-align: right;
}

.info-box {
	padding: 0 10px !important;
}

.table-condensed tr:first-child td {
	border-top: none !important;
}

.table-expand tr:first-child td {
	border-top: 2px #ddd solid !important;
}

.table-shrink {
	margin-bottom: 1px !important;
}

.table-shrink tr:last-child td {
	border-bottom: 1px #ddd solid !important;
}

.table-shrink tr:last-child td.no-bottom-border {
	border-bottom: 2px transparent solid !important;
}

.table-shrink small {
	font-size: 10px;
	font-style: italic;
}

.table-condensed td {
	padding: 3px 4px !important;
}

.panel-heading .fa {
	vertical-align: 1px;
}

.nav-tabs {
	font-size: 12px;
}

.nav-tabs li a {
	padding: 5px 7px;
}

.no-vertical-margin {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.no-horizontal-margin {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.no-top-padding {
	padding-bottom: 0 !important;
}

.no-padding {
	padding: 0 !important;
}

.bottom-panel .nav {
	font-size: 11px !important;
}

.small-file-panel {
	font-size: 11px !important;
	overflow-x: hidden;
	overflow-y: auto;
	height: 235px;
	max-height: 235px;
}

.pull-right {
	margin-right: .5em;
}

.pull-left {
	display: inline;
}

h1 .pull-right {
	margin-right: 0;
}

.pull-down {
	position: absolute;
	bottom: 10px;
}

.pull-down-right {
	position: absolute;
	bottom: 50px;
	right: 50px;
}

.dialog-html {
	text-align: center;
	font-size: 14px;
	width: 250px;
	padding-bottom: 1.5em;
	overflow: hidden;
	margin: 0 auto;
}

.dialog-html input[type='text'] {
	display: inline;
	width: auto !important;
	text-align: center;
}

.form-right td {
	vertical-align: middle !important;
	padding-top: 5px;
}

.file-panel {
	overflow-x: hidden;
	overflow-y: auto;
	height: 720px;
	max-height: 720px;
}

.opaque {
	opacity: 0.5;
}

.action-details {
	cursor: pointer;
}

.action-details:hover {
	color: blue;
}

.html-details {
	font-size: 12px;
	text-align: left;
	max-height: 420px !important;
	overflow-y: auto;
}

.info-icon {
	margin-right: -3px;
	color: gray;
}

.form-group.required .control-label:after {
	content: "*";
	color: #c77;
	font-size: 12px;
	padding-left: 5px;
}

.control-label.required:after {
	content: "*";
	color: #c77;
	font-size: inherit !important;
	padding-left: 5px;
}

.left-title {
	font-weight: bold;
}

.left-title>i {
	margin-right: 0.25em;
	color: gray;
}

.title-buttons>button {
	height: 20px;
}

.dragdrop-panel {
	height: 100%;
}

.ui-tooltip {
	background: #FAFAD0;
	z-index: 999999;
}

.form {
	font-size: 12px;
}

.form select,
.form input {
	height: auto !important;
}

.small-details-scroll-pane {
	max-height: 100px;
	margin-bottom: 1em;
	overflow-y: auto;
}

tr.jq-table-row-clickable {
	cursor: pointer;
}

.span-right {
	float: right;
}

hr {
	clear: both;
}

.btn-block {
	width: 80%;
	display: block;
	margin: 0 auto;
}

#form-div {
	width: 100%;
	display: inline-block;
	margin: 0 auto;
}

#view p {
	margin-top: 50px;
}

.dropdown-li .fa {
	transform: scale(0.7, 0.7);
}

table .fa {
	font-size: inherit;
	vertical-align: 0;
}

.table-tr {
	width: 20% !important;
}

.inner-table {
	margin: 0 !important;
	border: 1px solid #999 !important;
}

.inner-table td {
	font-size: 13px;
	padding: 3px 2px !important;
	text-align: right
}

.inner-table td,
.inner-table th {
	text-align: right
}

div.ui-tooltip {
	word-wrap: break-word !important;
}

.form-textarea {
	min-height: 80px;
}

.label-div .fa {
	color: black !important;
}

input.iconpicker-search {
	width: 100%;
}

.info-span {
	width: 18px;
	height: 18px;
	cursor: pointer;
}

.info-warn {
	color: orange;
}

.info-error {
	color: red;
}

td.day {
	box-shadow: none !important;
}

input[type='file'] {
	width: 250px;
	max-width: 250px;
}

textarea {
	resize: none
}

span.error-tooltip {
	float: right;
	margin-right: 3px;
	color: #A94442;
}

.toggle-panels {
	color: #777;
}

.toggle-panels:hover {
	color: blue;
}

.left-panel .fa {
	width: 16px;
	height: 16px;
}

td.strikeout {
	text-decoration: line-through;
}

span.disabled,
span.disabled a {
	color: gray !important;
}

.ui-item-custom {
	padding: 3px 1em 3px .4em;
}

.info table tr,
.info table td {
	padding: 5px !important;
}

.textarea-auto {
	height: auto !important;
}

.inline-filter label {
	display: inline;
	float: left;
	margin: 27px 10px 0 0;
}

.inline-filter div {
	display: inline;
	float: left;
	width: 30px !important;
	height: 20px;
	margin-top: 25px;
}

.no-border {
	border: 1px white solid;
}

.table-condensed td.slider-cell {
	padding: 0 !important;
	font-size: 12px;
}

.slider-horizontal {
	height: 16px;
}

.slider-handle {
	margin-top: 2px;
	width: 15px;
	height: 15px;
}

.navbar-collapse {
	max-height: none !important;
}

.navbar-nav li a {
	vertical-align: middle;
}

.navbar-collapse.in .event-div,
.navbar-collapse.in .navbar-nav li i,
.navbar-collapse.collapsing .navbar-nav li i,
.navbar-collapse.collapsing .event-div {
	margin-top: 1px;
	margin-left: 0;
}

span.nowrap {
	white-space: nowrap;
}

.group-actions {
	margin: 5px 0;
}

.group-actions label {
	cursor: pointer;
}

.group-actions .chk {
	margin-right: 15px;
}

.panel-column {
	padding: 5px 10px;
	border-right: 1px solid #ccc;
	margin: 0;
	font-weight: bold;
	text-align: center;
	height: 25px;
}

.list-group-item .fa-cog {
	float: right;
}

.list-group-item {
	display: inline-block;
	width: 100%;
}

select.readonly {
	background: #eee !important
}

select.readonly-additional {
	background: #eee !important
}

.textarea-s {
	height: 80px !important;
}

.panel-heading-default {
	color: #333 !important;
	background-color: #f5f5f5 !important;
	border-color: #ddd !important;
}

.panel-heading-success {
	color: #3c763d !important;
	background-color: #dff0d8 !important;
	border-color: #d6e9c6 !important;
}

.panel-button {
	width: 100%;
	display: inline-block;
	height: 50px;
}

.action {
	color: #337ab7;
	cursor: pointer;
}

.notifier-icon {
	font-size: 30px;
}

.hide-table-row {
	display: none;
}

.show-table-row {
	display: table-row;
}

.table-row td {
	vertical-align: middle !important;
}

.empty-table-row td {
	border-top: none !important;
}

.panel .filters {
	width: 95px;
	padding-left: 0 !important;
}

.no-top-border td {
	border-top: 1px transparent solid !important;
}

.no-bottom-border td {
	border-bottom: none !important;
}

input::-webkit-calendar-picker-indicator {
	display: none;
	/* remove default arrow */
}

.nav .fa-fw {
	text-align: left;
}

#totals-sum-page-2>div {
	margin: 0;
	padding: 0;
}

.underline {
	text-decoration: none;
}

.underline:hover {
	text-decoration: underline;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

input[type="number"] {
	-moz-appearance: textfield;
}

.btn-icon {
	height: 19px !important;
}

.submenu-item {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.field-config-column {
	width: 100px !important;
}

.table-selected-row {
	background: #DFF0D8;
	color: black;
}

.tooltip-view {
	color: black;
	cursor: default;
}

.menu-icon {
	width: 22px !important;
	max-width: 22px;
	text-align: center !important;
}

.no-vertical-padding {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.hr-s {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

.hr-xs {
	margin-top: 0px !important;
	margin-bottom: 10px !important;
}

.no-box-shadow {
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
}

.no-bottom-margin {
	margin-bottom: 0 !important;
}

.icon-red:hover {
	color: red;
	cursor: pointer;
}

.switch-control {
	padding-top: 20px;
}

.switch-control>div>label {
	font-size: 13px;
	display: block;
	margin: 12px 5px 0 0;
}

.switch-control>.label-div {
	height: 40px;
	display: inline;
	float: left;
}

.switch-control .toggle {
	height: 27px;
	min-height: 27px;
	margin-top: 6px;
}

.title-btn {
	margin-top: 5px;
}

.ui-tooltip hr {
	margin-top: 5px !important;
	margin-bottom: 5px !important;
	border-top: 1px solid #575757;
}

.no-horizontal-margin {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.adjust-col-inputs {
	margin-left: -5px !important;
}

.popup-text-cell {
	border-top: 1px solid #272727 !important;
}

.popup-text-scroll {
	overflow-y: auto;
}

.hr-black {
	color: #272727 !important;
	border-color: #272727 !important;
}

.mandator-debt-switch .toggle {
	margin-left: calc(50% - 55px);
}

.mandator-debt-switch>label {
	text-align: left !important;
	display: block;
}

.inline-checkbox {
	margin-top: 7px !important;
}

.btn-export {
	margin-right: 2px;
}

.inline-slider {
	height: 30px;
}

.inline-slider>.slider>div {
	margin-top: 8px;
}

.inline-slider .slider-track {
	margin-top: 0 !important;
}

.table-header-button {
	margin-top: -5px;
}

.table-separator {
	border-top: 1px solid #aaa !important;
}

.switch-disable {
	cursor: not-allowed;
}

.table.col-md-4 {
	margin-right: 2px;
	width: 33.2% !important;
}

.d-none {
	display: none;
}

.hidden {
	display: none !important;
}

/* CUSTOM MODAL FOR INSERT PICTURE */

[aria-label="Insert Picture"] .modal-content {
	/* TODO IMPROVE CSS selector */
	width: 600px;
	height: 400px;
}

img.img-search-pictures {
	max-width: 500px;
	max-height: 200px;
}

table.table {
	width: 100%;
}

div#help-content {
	text-align: left;
	height: 475px !important;
	max-height: 475px !important;
	overflow-y: auto;
}

span.btn {
	cursor: default;
}

.group-list input[type=text] {
	width: 78% !important;
}

.group-list button {
	margin-left: 5px;
	margin-top: 1px;
}

.panel-groups .file-upload {
	display: none;
}

.default-group {
	letter-spacing: 2px;
	margin-right: 17px;
	margin-top: 6px;
	font-weight: bold;
}

.pull-right {
	margin-right: .5em;
}

.main h1>a.pull-right {
	margin-right: .5em;
}

.main h1>a.pull-right:first-of-type {
	margin-right: 0;
}

.operations {
	min-width: 50px;
}

#table-messages td:nth-of-type(3) {
	white-space: nowrap;
}

.my-jquery-tooltip-styling {
	max-width: 700px;
}

.color-text {
	font-size: 11px;
	cursor: text;
}

.color-text i {
	color: #337ab7;
	font-style: normal;
}

input[type='checkbox'] {
	vertical-align: -1px;
}

@font-face {
	font-family: 'dotsfont';
	src: url('/plugin/fonts/dotsfont/dotsfont.eot');
	src: url('/plugin/fonts/dotsfont/dotsfont.eot?#iefix') format('embedded-opentype'),
		url('/plugin/fonts/dotsfont/dotsfont.woff') format('woff'),
		url('/plugin/fonts/dotsfont/dotsfont.ttf') format('truetype'),
		url('/plugin/fonts/dotsfont/dotsfont.svg#dotsfontregular') format('svg');
}

.no-wrap {
	white-space: nowrap;
}

.no-horizontal-margin {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.no-horizontal-padding {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.label-column > * {
	margin-top: 7px;
}

.label-column label {
	padding-right: 20px;
}

.form-custom-inline span.error-tooltip {
	margin-left: 3px;
}

.full-width {
	width: 100% !important;
}

.col-md-error {
	width: 25px;
}

.error-span {
	margin-top: 3px;
	color: #A94442;
	display: block;
	width: 100%;
}

/* Align labels to left on mobile phones */
@media ( max-width : 1200px) {

	.form-group {
		margin-bottom: 3px;
	}

	.form-group.text-right {
		text-align: left;
		padding-left: 0px;
	}

	.feedback-notify {
		bottom: 0;
		top: 55px;
		left: 0;
		height: 1px;
	}

	.feedback-notify > div {
		width: 100% !important;
	}

	.feedback-notify > div > div {
		width: 80% !important;
	}
}

.date input {
	background: white !important;
}

#symptom-datum {
	color: red;
	font-weight: bold;
}

.text-red-bold {
	color: red;
	font-weight: bold;
}

.normal-text {
	font-weight: normal;
}

.form-center {
	width: 35% !important;
	margin: 0 auto;
}

@media ( max-width : 900px) {

	.form-center {
		width: 100% !important;
	}
}

.jdmt-logo {
	margin-top: .35em;
}

.header-logo {
	padding-top: .45em;
}

.contact_relation_label {
	cursor: pointer;
}

#new_strain_addon {
	padding-left: .5em;
	vertical-align: -2px;
	font-weight: bold;
}

.submit-confirmation {
	padding-left: 0;
	padding-right: 0;
}

.submit-confirmation label {
	padding-top: 12px;
	cursor: pointer;
}

.submit-confirmation input {
	margin-right: 5px;
}

@media ( max-width : 992px) {

	li.reservation-infobox {
		display: none;
	}

	.form-group {
		padding-left: 0;
	}

	.mobile-padding, .col-md-12 {
		padding: 10px;
	}

	.container-fluid {
		padding-left: 10px;
		padding-right: 10px;
	}

	.panel-body {
		padding-left: 10px;
		padding-right: 10px;
	}

	.col-md-8, .col-md-7 {
		padding: 0;
	}

	.row {
		margin-left: -10px;
		margin-right: -10px;
	}
}

@media ( max-width : 640px) {

	.table-responsive-stack tr {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}

	.table-responsive-stack td,
	.table-responsive-stack th {
		display: block;
		/*
			flex-grow | flex-shrink | flex-basis */
		-ms-flex: 1 1 auto;
		flex: 1 1 auto;
	}

	.table-responsive-stack .table-responsive-stack-thead {
		font-weight: bold;
	}

	.mobile-padding, .col-md-12 {
		padding: 5px;
	}

	.container-fluid {
		padding-left: 5px;
		padding-right: 5px;
	}

	.panel-body {
		padding-left: 3px;
		padding-right: 3px;
	}

	.col-md-8, .col-md-7 {
		padding: 0;
	}

	.row {
		margin-left: -5px;
		margin-right: -5px;
	}

	.table-responsive-stack tr {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		border-bottom: 1px solid #ccc;
		display:block;

	}
}

@media ( max-width : 480px) {

	.mobile-padding, .col-md-12 {
		padding: 2px;
	}

	.container-fluid {
		padding-left: 2px;
		padding-right: 2px;
	}

	.panel-body {
		padding-left: 2px;
		padding-right: 2px;
	}

	.col-md-8, .col-md-7 {
		padding: 0;
	}

	.row {
		margin-left: -2px;
		margin-right: -2px;
	}
}

#translation_language {
	color: white;
	background-color: black;
}

div.clickable-option {
	cursor: pointer;
	padding: 10px 5px 1px;
	margin: 5px;
	color: #337ab7;
}

div.clickable-option-selected {
	background-color: #f5f5f5;
}

/* 3-state switch, adapted from https://codepen.io/kristijanpetr/pen/yLLxYdE */

.switch-toggle {
	float: left;
	background: white;
	height: 36px;
	border-radius: 4px;
	border: 1px #ccc solid;
}

.switch-toggle input {
	position: absolute;
	opacity: 0;
	margin: 0; padding: 0;
}

.switch-toggle input + label {
	padding: 7px 17px;
	float: left;
	color: #444;
	cursor: pointer;
	transition: background-color 500ms ease;
	text-align: center;
	overflow: hidden;
	white-space: nowrap;
	border-right: 1px #ccc solid;
}

.switch-toggle input + label:last-of-type {
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
	border-right: none;
}

.switch-toggle input + label:nth-of-type(2) {
	cursor: default;
}

.switch-toggle input + label:hover {
	opacity: .9;
}

.switch-toggle input:checked + label {
	color: white;
	background: green;
	transition: right 500ms ease, background-color 500ms ease, box-shadow 500ms ease;
}

.switch-toggle input:checked + label:nth-of-type(1) {
	background: #D9534F; /** red **/
}

.switch-toggle input:checked + label:nth-of-type(2) {
	background: #337AB7; /** blue **/
}

.switch-toggle input:checked + label:nth-of-type(3) {
	background: #5CB85C; /** green **/
}

.reservation-infobox {
	margin-top: 5px;
	margin-right: 1.25em;
	margin-left: 1.25em;
	margin-right: 1em;
	background: white;
	padding: 0 .5em;
	border-radius: 3px;
	float: right;
	display: none;
}

.reservation-infobox span {
	font-weight: bold;
	text-align: left;
	font-size: 12px;
	margin: 0;
}

.reservation-infobox span a {
	margin: 0;
	padding: 0;
	font-weight: bold;
	font-size: inherit;
	vertical-align: 0px;
	text-decoration: underline;
}

.reservation-infobox a:hover {
	color: #a00 !important;
}

.infobox-div {
	float: right;
}

div.maintenance {
	width: 35%;
	margin: 0 auto;
}

div.maintenance h3 {
	margin-top: 0;
}

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

	div.maintenance {
		width: 60%;
	}
}

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

	div.maintenance {
		width: 90%;
	}
}

.maintenance-timer-div {
	margin-top: 10px;
	margin-left: 2em;
	background: white;
	padding: 0.5em;
	border-radius: 3px;
}

.maintenance-timer-div b {
	text-align: left;
	font-size: 12px;
	margin: 1em;
}

#maintenance-timer {
	margin: 0;
}

.login-checking {
	font-weight: bold;
	padding-top: 5px;
}
