:root {
	--smooth: cubic-bezier(0.15, 0.9, 0.34, 0.95);
	--turquoise: #07B6AE;
	--red: #E61E1E;
	--orange: #F08C32;
	--green: #27AE60;
}

html, body {
	height: 100%;
}

body {
	display: flex;
	flex-direction: column;
	background: #F5F4F0;
}

#header {
	position: relative;
	padding-bottom: 10px;
}

#header #logos {
	display: flex;
	align-items: center;
	gap: 16px;
}

#main-container {
	flex: 1;
	margin-top: 10px;
}

#main-container::before {
	content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 300px;
	z-index:-1;
    width: 100%;
    background: linear-gradient(360deg, #F5F4F0 0%, #FFFFFF 39.53%);
}

.search-coordinates-map, .static-google-map {
	border:1px solid #CCCCCC;
	height:500px;
	width:100%;
}

.select-heading {
	max-width:150px;
}
.search-companies-area {
	border:1px solid #CCCCCC;
	margin-bottom:1em;
	padding:1em;
}
.icon-bar {
	background-color:black;
}
.suggestions-box {
	position:absolute;
	z-index:999999999;
	
    background-color: #fff;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    margin-top: 40px;
    width: 300px;
	/*padding:0;
	margin:0;
	list-style:none;*/
}
.suggestions-box a {
	overflow:auto;
}
.suggestions-box li {
	/*border-bottom:1px solid rgba(0, 0, 0, 0.2);
	padding:.5em 1em;*/
}
.suggestions-box li:hover {
	
}
.boxed-fieldset > legend {
	margin-bottom:0;
}
.fieldset-content {
	border-right:1px solid #e5e5e5;
	border-left:1px solid #e5e5e5;
	border-bottom:1px solid #e5e5e5;
	padding:20px 10px 10px;
	margin-bottom:20px;
}
.calendar-table td {
	/*position:relative;*/
}
.calendar-table button {

}

.calendar-event {
	border:1px dashed black;
	padding:.5em;
	margin-bottom:.5em;
}
.progress-tracker {
	font-size:17pt;
}
	.boxed-col {
		border:2px solid black;
		padding:.5em 1em;
	}

@media (min-width: 768px) {
	.home-fixed-box .card-body {
		height:300px;
	}
	.home-fixed-box-register .card-body {
		height:261px;
	}
	.boxed-col h3 {
		margin-top:0;
		margin-bottom:15px;
	}
}
.product-questionnaire label {
	font-weight: normal;
}

@media print {
    .pagebreak { page-break-before: always; }
}

.tabbed-content {
	border-right:1px solid #DDDDDD;
	border-left:1px solid #DDDDDD;
	border-bottom:1px solid #DDDDDD;
	padding: 20px 10px 15px;
}

.blocked-row {
	color:purple;
}
.success-row {
	color:#3C763D;
}
.warning-row {
	color:#E19200;
}
.danger-row {
	color:#A94442;
}
.super-danger-row, .super-danger-row a {
	color:#A94442;
	font-weight: bold;
}
.super-danger-row td {
	background-color:#FCF8E3 !important;
}
.red-background-row td {
	background-color:#FFB6C1 !important;
}
.unstyled-col {
	color:black;
}
.checkbox-inline label, .radio-inline label {
	font-weight: normal;
}

.date-management .booked {
	background: #5CB85C !important;
}
.date-management .available {
	background: #FFFFFF !important;
}
.date-management .on_hold {
	background: #00A2ED !important;
}
.date-management .blocked {
	background: #800080 !important;
}

.unconfirmed-booking > td {
	font-weight:bold;
}

.appointment-resume {
	border: solid 1px;
	padding-left:15px;
	padding-right:15px;
	background-color:rgb(238, 238, 238);
}

.appointment-resume .margin {
	margin-bottom:10px;
	box-sizing:initial;
}

.appointment-resume .form-group {
	margin-bottom:0
}

.resume-label.green, .form-group.green, .form-group.green > a, .resume-label.green a {
	color:#008f00;
}
.resume-label.amber, .form-group.amber, .form-group.amber > a, .resume-label.amber a  {
	color:#D7640D;
}
.resume-label.red, .form-group.red, .form-group.red > a , .row.non-clear.red label, .resume-label.red a {
	color:#cc0000;
}
.resume-label.black, .form-group.black, .form-group.black > a , .row.non-clear.black label, .resume-label.black a {
	color:#000000;
}
.warningRowGreen {
	color:#008f00;
}
.warningRowAmber {
	color:#D7640D;
}
.warningRowBlack {
	color:#000000;
}
.questionnaire-resume, .questionnaire-resume > a {
	color:#333;
}

.measurement-group-style.green, .diagnosis-group.green, .questionnaire-group-style.green  {
	background-color:#C6EECF;
}
.measurement-group-style.red, .diagnosis-group.red, .questionnaire-group-style.red  {
	background-color:#FFC4C4;
}
.measurement-group-style.amber, .diagnosis-group.amber, .questionnaire-group-style.amber  {
	background-color:#FDDDB9;
}
.measurement-group-style.gray, .diagnosis-group.gray, .questionnaire-group.gray, .questionnaire-group-style.gray  {
	background-color:#eeeeee;
}

.measurement-group-style {
	overflow:hidden;
}

.measurement-group-style, .diagnosis-group, .questionnaire-group{
	border: solid 1px;
	padding:10px;
	margin:10px 10px 10px 0px;
}

.appointment-log-date, .appointment-log-by {
	margin-right:20px;
}

.appointment-tab {
	margin-top:20px;
}
.appointment-resume .status {
	color:#428bca;
}

.diagnosis-group .form-group {
	padding: 5px 10px 10px;
	margin:0;
}

#clinic-schedule-form .modal-body {
    max-height: 420px;
    overflow-y: auto;
}

td > span.red {
	color:#ff0000;
}

.amberElement {
	color:#FE9900;
}
.redElement {
	color:#ff0000;
}
.urgentAppointment td {
	background-color:#FFC0CB !important;
}
.notes-section .author {
	font-size:11px;
	
}
.note .comment::after {
    border-color: transparent #eee;
    border-style: solid;
    border-width: 10px 15px 10px 0;
    content: "";
    display: block;
    left: -15px;
    position: absolute;
    top: 5px;
    width: 0;
    z-index: 1;
}
.note .comment {
    background: #d7e4ed none repeat scroll 0 0;
    display: inline-block;
    margin-bottom: 15px;
    margin-left: 0;
    padding: 3px 10px;
    position: relative;
    vertical-align: top;
    width: 575px;
}

.component-print .results-box {
	margin-bottom: 20px;
	background-color: #fff; 
	border: 1px solid #000;
	padding: 0 12px;
}
.results-box h3 {
	font-weight: bolder;
}
.results-box.with-traffic-light {
	min-height: 160px;
}
.results-print .avoid-page-break:not(:first-child) {
	page-break-inside:avoid;
}

.traffic-light-img, .traffic-light {
	width:30px;
	height:57px;
	float:left;
	margin-right:10px;
	text-align: center;
}
.traffic-light {
	border:2px solid black;
	background-color: #FFFFFF;
}
.traffic-light .green, .traffic-light .amber, .traffic-light .red, .traffic-light .empty {
	border-radius:100%;
	width:16px;
	height: 16px;
	display: block;
	margin:1px auto;
	padding:0;
	box-shadow: 1px 1px 1px #999;
	border:1px solid black;
}
.traffic-light.traffic-light-lg {
	width:46px;
	height:93px;
	padding:1px 0
}
.traffic-light.traffic-light-lg .green, .traffic-light.traffic-light-lg .amber, .traffic-light.traffic-light-lg .red, .traffic-light.traffic-light-lg .empty {
	width:26px;
	height: 26px;
	margin:2px auto;
}

.traffic-light .green {
	background-color: #009E11;
}
.traffic-light .amber {
	background-color: #FE9900;
}
.traffic-light .red {
	background-color: #CF2A28;
}
.traffic-light .empty {
	background-color: #DDDDDD;
}

.results-answers-list .answer {
	margin-top:20px;
	overflow: hidden;
	clear: both;
}

.results-print .answer {
	margin-top:10px;
}

.answer-with-traffic-light {
	padding-left:40px;
}
.results-flag {
	font-size:56px;
	float:left;
	margin-right:10px;
	display: inline-block;
}
.results-flag.green {
	color: #009E11;
}
.results-flag.amber {
	color: #FE9900;
}
.results-flag.red {
	color: #CF2A28;
}

.answer-with-large-side {
	padding-left:70px;
}

.print-footer {
	color:#666;
	margin-top:20px;
	font-size:9pt;
	bottom:0;
	left:0;
	position:absolute;
	width:100%;
}
.print-footer hr {
	margin:10px 0;
}
@media print {
	.print-footer {
		/*page-break-after: always;
		position: fixed;
		bottom: 200px;*/
	}
}

.dispatch-contact {
	border:1px solid black;
	padding: .5em 1em;
}

.row.non-clear::after {
	clear:none;
	margin: 0 0 30px;
}

.row.extra-margin {
	margin-top: 50px;
}

.questionnaire-section {
	border:0.5px solid #6f5b5b;
}

p.clinic-details-prominent {
	font-size:15px;
}

.normalValue {
	font-size:12px;
}

.normalValue label {
	font-weight: normal;
}

.red-yes {
	color: #cc0000;
}

.row .narrow {
	padding-right: 1px;
}

.narrow .form-control {
	padding: 6px 1px;
}

label.optional-extra {
	margin-left: 20px; 
	font-size:18px;
	font-weight:bold;
}

.calendar-table .trick-width-row th{
	height:1px;
	padding:0px;
	border:0px;
}

tr.calendar-event-titles th div {
	font-size:10.5px;
	width:70px;
}

tr.calendar-event-titles td div {
	font-size:10.5px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

tr.calendar-event-titles div.address {
	height:33px;
	white-space: initial;
}

tr.calendar-event-titles div.notes {
	height:48px;
	white-space: initial;
}

/**
 * Farbtastic Color Picker 1.2
 * Copyright 2008 Steven Wittens
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 */
 
.farbtastic {
  position: relative;
}
.farbtastic * {
  position: absolute;
  cursor: crosshair;
}
.farbtastic, .farbtastic .wheel {
  width: 195px;
  height: 195px;
}
.farbtastic .color, .farbtastic .overlay {
  top: 47px;
  left: 47px;
  width: 101px;
  height: 101px;
}
.farbtastic .wheel {
  background: url(../images/wheel.png) no-repeat;
  width: 195px;
  height: 195px;
}
.farbtastic .overlay {
  background: url(../images/mask.png) no-repeat;
}
.farbtastic .marker {
  width: 17px;
  height: 17px;
  margin: -8px 0 0 -8px;
  overflow: hidden; 
  background: url(../images/marker.png) no-repeat;
}
/*
@media print {
	.print-footer {page-break-after: always;}
}


@media print {
	.print-only {display:block !important;}
}
*/	
.radio input[type="radio"].select-user-from-slot {
	padding-top:0px;
	margin-left:0px;
}

/*scrolling issue*/
.modal {
	overflow-y: auto;
}

.laya-number-label {
	font-size:16px;
	color: #0000FF;
}

.remarked.highligh {
	font-size:16px;
	font-weight:bold;
}

.warningRow {
	color: rgb(204, 0, 0);
}

.unbold {
	font-weight: lighter !important;
}

.hideRow {
	display:none;
}

div.row.auto-overflow {
	overflow:auto;
}

.bold_sub_label {
	font-weight:bold;
	font-size:16px;
}

.spaciousRow {
	margin-bottom:0.8em;
}

.fixed-element-center {
	left: 50%;
	transform: translateX(-50%);
}

.appointment-sample {
	 position:fixed;
	 bottom:50px;
	 right:50px;
	 border:1px solid gray;
	 padding:5px;
	 max-width:30%;
}

.appointment-sample th.main-header {
	font-size:1.5em;
	text-align:center;
	color:red;
}

.doubleBorder {
	border:2px solid black;
}

legend.clinic-legend {
	font-size:2em;
	color:#3366ff;
}

#comments-recommendation-required {
	display:none;
 	margin-left: 10px;
 	font-weight: bold;
}

span.blackText {
	color:#333;
}

.questionnaire-public-list {
	border:1px solid #C0C0C0; 
	padding:10px;
	margin-bottom:4em;
}

#form_all_complete {
	padding-left:10px;
}

.error-container {
	text-align: center;
	display: table-cell;
	vertical-align: middle;
}

.error-container .content {
	text-align: center;
	display: inline-block;
}
            
.error-container .details {
	text-align:left;
	color:black;
	font-size:16px;
	font-weight:none;
}

.error-container .title {
	font-size: 32px;
	margin-bottom: 40px;
}


.flexible-measurement-questionnaire div.measure-selector {
	margin:20px 0px 15px;
}


.flexible-measurement-questionnaire .lab-measurement {
	 vertical-align:top;
	 line-height:2em;
}

.flexible-measurement-questionnaire .radio-toggle {
	display:inline-block;
}

.flexible-measurement-questionnaire input[type=number] {
	display:block;
	width:100px;
}

@media all and (min-width: 700px) {
	.flexible-measurement-questionnaire input[type=number] {
		display:inline-block;
		width:150px;
	}
}

 .flexible-measurement-questionnaire div.calculated {
	margin-top:10px;
 }

div.radio-toggle-container {
	z-index:2;
}

.has-toggle-input label, .has-toggle-input.radio label {
  display: block;
  float: left;
  padding: 5px 10px;
  margin: auto auto auto -1px;
  background: #f4f4f4;
  color: #444;
  border: 1px #d0d0d0 solid;
  line-height: normal;
  overflow: hidden;
  cursor: pointer;
}

.has-toggle-input label.active {
  background: #2565AE;
  border-color: #2565AE;
  color: white;
  font-weight: bolder;
}

.has-toggle-input label:first-of-type { margin-left: auto; }

.has-toggle-input label:last-of-type { }


.has-toggle-input.button-like label, .has-toggle-input.button-like.radio label {
	color: #fff;
	background-color: #337ab7;
	border-color: #2e6da4;
	display: inline-block;
	padding: 6px 12px;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.42857143;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	overflow: hidden;
	cursor: pointer;
	border: 1px solid transparent;
	border-radius: 4px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);
}

.has-toggle-input.button-like label.active, .has-toggle-input.button-like.radio label.active {
	background-color: #5cb85c;
	border-color: #4cae4c;
}

.has-toggle-input.button-like label + .near-button-like, .has-toggle-input.button-like.radio label + .near-button-like {
	color: #337ab7;
	padding: 6px;
	border:0;
	border-radius: unset;
	box-shadow:none;
	background-color:transparent;
	font-weight:bold;
	vertical-align: middle;
}

.has-toggle-input.button-like label.active + .near-button-like, .has-toggle-input.button-like.radio label.active + .near-button-like{
	color: #5cb85c;
	background-color:transparent;
}

label.near-button-like.active {
	color: #5cb85c;
}

div#booking-calendar-wrapper {
		width:400px !important;
	}
div#booking-calendar .table-calendar, div#booking-calendar .month-selector {
	margin: auto; 
	width:100%;
}

div#booking-calendar .table-calendar {
	margin-bottom:20px;
}

div#booking-calendar .month-selector {
	margin-bottom:10px;
}

@media all and (max-width: 450px) {
	
	div#booking-calendar-wrapper {
		width:300px !important;
	}
	div.col-xs-4.prev {
		padding-right:0px;
		font-size:0.95em;
	}
	div.col-xs-4.current {
		font-size:0.95em;
	}
	div.col-xs-4.next {
		padding-left:0px;
		font-size:0.95em;
	}
}

div#booking-calendar .month-selector .current {
	font-weight:bold;
	text-align:center;
}

div#booking-calendar .month-selector .prev {
	text-align:left;
}

div#booking-calendar .month-selector .next {
	text-align:right;
}

div#booking-calendar .month-selector .prev.inactive a, div#booking-calendar .month-selector .prev.inactive a:hover {
	color:gray;
	text-decoration:none;
	cursor:auto;
}

table.table-calendar th {
	font-weight:bold;
	text-align:center;
	border: 1px solid black;
	width: 14.3%;
}

table.table-calendar td {
	text-align:center;
	border: 1px solid black;
	height:30px;
}
table.table-calendar td.yes-date {
	background-color: #E0E0E0;
}

table.table-calendar td.yes-date.has-date {
	background-color: #9ACD32;
	font-weight:bold;
	text-decoration:underline;
}

table.table-calendar td.yes-date.has-date.read-only, 
table.table-calendar .read-only a:hover, 
table.table-calendar .read-only a:focus {
	background-color: #9ACD32;
	font-weight:inherit;
	text-decoration:none;
	cursor:default;
}

table.table-calendar td.yes-date.has-date.is-complete,  table.table-calendar td.yes-date.has-date.read-only.is-complete{
	background-color: #808080;
	font-weight:bold;
	text-decoration:underline;
}

table.table-calendar td.yes-date.has-date a{
	color:white;
}

table.list-with-calendar {
	display:none;
}

table .thead-light tr {
	background-color: #e9ecef;
	border-color:#dee2e6;
}

.margin-when-small.col-md-6 {
	margin-top:15px;
}

@media all and (max-width: 991px) {
	.margin-when-small {
		margin-top:15px;
	}
	.m-t--50 { 
		margin-top:-50px !important;
	}
}

.m-b-10 {
	margin-bottom:10px;
}

h1.passport-number, h3.passport-number {
	margin-top:0px;
	line-height:0.5;
}

@media all and (max-width: 991px) {
	#space-first-step {
		display:none;
	}
}

.appointment-resume label.control-label, .appointment-resume select {
	font-size:0.95em;
}

span.slot-departments {
	font-size:0.85em;
	color:orange;
}

table.table-schedule-management th {
	padding: 0.5rem;
	vertical-align: middle;
}

table.table-schedule-management td {
	padding: 0.5rem;
}

table.table-schedule-management .date-management th {
	font-weight:normal;
}

.bulk-action-select .lbl-checkbox, .bulk-action-select-all .lbl-checkbox {
	padding:15px;
}
@media all and (max-width: 470px) {
	#organisation-logo img{
		height:40px;
	}
	#company-logo img{
		height:60px;
	}
}



.fa.fa-2 {
	font-size:2em;
}

#schedule-references {
	font-weight:bold;
	margin-top:1rem;
}

#schedule-references a {
	margin: 0px 10px;
}

tr.removed-user td {
	background-color:#FFCC99;
}

#calendar .calendar-day.current-day, #calendar .calendar-day.current-day .card {
	background-color:yellow;
}

#calendar .calendar-date-date {
	float:left;
	border:none;
	padding:5px;
	margin-top:5px;
}
#calendar .calendar-date-date.current-month {
	font-weight:bold;
}
#calendar .calendar-date-date:not(.current-month) {
	color:#808080;
}

.calendar-lead .section {
	display:block;
}

div.calendar-lead, div.calendar-confirmed, div.calendar-provisional, div.calendar-cancelled {
	 padding-left:5px;
}
	
div.calendar-lead {
	 background-color:#99caff;
}
div.calendar-confirmed {
	 background-color:#c6f5db;
}
div.calendar-provisional {
	 background-color:#FFF8DC;
}
div.calendar-cancelled {
	 background-color:#ffc4e1;
}
div.calendar-unpublished {
	border:2px solid #ffc107;
}
div.calendar-published {
	border:2px solid white;
}

#calendar li.list-group-item {
	padding:0px;
	font-size:0.8em;
}

#calendar .edit-lead, #calendar .edit-note {
	display:block;
	text-align:right;
}
#calendar .edit-lead a , #calendar .edit-note a {
	text-decoration:underline;
	color:black;
	font-weight:bold;
}

#calendar .calendar-day .card-header {
	 padding:0.25rem;
	 border-bottom:0;
}
#calendar .calendar-day .card-body {
	padding:0;
}
#calendar .calendar-day .card-body li{
	padding:0.25rem;
}

#calendar .calendar-day .create-lead, #calendar .calendar-day .create-note {
	font-size:1.5em;
	margin-left:5px;
}

#calendar .calendar-day {
	 padding-top:0px;
	 padding-left:0px;
	 padding-right:0px;
	 width:80px;
}

#calendar .calendar-day .section {
	display:block;
}

#calendar .calendar-day .section.link {
	font-weight:bold;
	text-decoration:underline;
}


#calendar .calendar-day .section.link a {
	color:black;
}

#calendar .calendar-day .section a.soft-link {
	color:black;
}
#calendar .calendar-day .section .copy-location {
	color:black;
}

#calendar .calendar-day .staff-open, #calendar .calendar-day .staff-open a {
	color:red !important;
	font-weight:bold !important;
}

#calendar .calendar-day .staff-n-a, #calendar .calendar-day .staff-n-a a {
	color:grey !important;
	font-weight:bold !important;
}

.action-note {
	padding:3px;
}

.bi.checklist-item-confirmed {
	color:white;
	background-color:#228b22;
}
.bi.checklist-item-n-a {
	display:none;
}
.bi.checklist-item-in-progress {
	color:white;
	background-color:#6495ED;
}
.bi.checklist-item-tbc, .bi.checklist-item-no-input {
	color:black;
	background-color:white;
}

#calendar .calendar-day .expired-lead {
	color:red;
}

#calendar .section.section-compact {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#laya-import-notification p.error {
	color:red;
}
#laya-import-notification p.success {
	color:#155724;
}

.ui-tooltip-content {
 word-break:normal;
}

li.list-inline-item > .ahead {
	color:gray;
}

@media all and (max-width: 485px) {
	.list-inline.progress-tracker .list-inline-item {
		font-size:0.65em;
	}
	ol.progress-tracker {
		font-size:14pt;
		line-height:1.2rem;
		margin-bottom:0.5rem;
	}
	.list-inline-item:not(:last-child) {
		margin-right:0;
	}
}


@media (max-width: 485px) {
  .modal-lg.modal-dialog {
    max-width: 340px;
  }
}

@media (min-width: 485px) and (max-width: 620px) {
  .modal-lg.modal-dialog {
    max-width: 450px;
  }
}


@media (min-width: 620px) and (max-width: 900px) {
  .modal-lg.modal-dialog {
    max-width: 600px;
  }
}

.margin-address-envelope {
	 margin-top:95px;
}


@media (max-width: 780px) {
	#results-table-view {
		display:none;
	}
	#results-list-view {
		display:block;
	}
}
@media (min-width: 781px) {
	#results-table-view {
		display:block;
	}
	#results-list-view {
		display:none;
	}
}

.white-space-wrap {
	white-space: pre-wrap;
}

.modal-result-content {
	border:1px solid black;
	padding:10px;
	margin:10px;
	font-size:1.2em;
}

@media (max-width: 500px) {
	div.enter-appointment-data  .confirm-enter-appointment-data {
		width:100%;
	}
}
div.enter-appointment-data #form_all_complete {
	padding-left:0px
}
div.enter-appointment-data .measurement-group-style {
	margin-left:0px;
	margin-right:0px;
}

.bootstrap-select .dropdown-menu {
   max-width: 100%!important;
}

 .bootstrap-select .btn.dropdown-toggle.btn-light {
     background: white !important;
     border:1px solid #ced4da;
 }
 
 #top-button {
  position: fixed; /* Fixed/sticky position */
  bottom: 20px; /* Place the button at the bottom of the page */
  right: 30px; /* Place the button 30px from the right */
  z-index: 99; /* Make sure it does not overlap */
}

.btn.btn-primary-hover:hover {
  background-color: #555; /* Add a dark-grey background on hover */
}

.bootstrap-select.is-invalid .dropdown-toggle, .error .bootstrap-select .dropdown-toggle, .has-error .bootstrap-select .dropdown-toggle, .was-validated .bootstrap-select select:invalid + .dropdown-toggle {
    border-color: #b94a48 !important;
}

.please-wait{
    background-color: rgba(224, 224, 224, 0.8);
    bottom: 0;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99;

}
.please-wait-text{
    border: 1px solid #28a745;
    border-radius: 4px;
    color: #28a745;
    font-size: 22px;
    padding: 20px;
    position: fixed;
    width: auto; 
	top: 50%;
	left: 50%;
    transform: translate(-50%, -50%);
}


@media (max-width: 400px) {
	.responsive-font {
		font-size:1.5rem;
	}
}

.image-upload>input {
  display: none;
}

.radio-toggle-container ~p.help-block {
	margin-top:35px;
}

.oh-component-breadcrumb .active {
	font-weight:bold;
}
.oh-component-breadcrumb .inactive {
	font-weight:300;
}

.measurement-group-style.oh-component {
	margin:0;
}

.componentSectionLabel {
	font-weight:bold;
	font-size:1.5em;
}

.view-product-questionnaire {
	border:1px solid black;
	padding:10px;
	border-collapse:collapse;
}

.view-product-questionnaire h4 {
	display:inline;
}

.view-product-questionnaire .collapsed-selector {
	margin-left:20px;
	font-weight:bold;
	font-size:1.2em;
}
.view-product-questionnaire.green {
	background-color:#C6EECF;
}
.view-product-questionnaire.amber {
	background-color:#FDDDB9;
}
.view-product-questionnaire.red {
	background-color:#FFC4C4;
}
.view-product-questionnaire.gray {
	background-color:#eeeeee;
}
.view-product-questionnaire label.field-colour-green {
	font-weight:normal;
}
.view-product-questionnaire label.field-colour-amber {
	font-weight:bold;
	color:#EA9515;
}
.view-product-questionnaire label.field-colour-red {
	font-weight:bold;
	color:#cc0000;
}

#sticky-section{
	position:sticky !important;
	top:10px !important;
}

.swal-large-message p {
	 font-size:1.5em;
	 margin:1em;
}
.swal-large-message p strong {
	font-weight:bold;
}

.questionnaire-review .main{
	font-size:1.8em;
	font-weight:bold;
} 
.questionnaire-review .extra{
	font-size:1em;
	font-weight:normal;
}

.oh-component label.form-control {
	height:auto;
}

#selected-time-inner{
	font-weight:bold;
	margin: 10px 0px 10px 0px;
}

#selected-time-inner div {
	padding:10px 40px 10px 10px;
	background-color:rgba(0, 0, 0, 0.05);
	display:inline-block;
}

.file-from-note {
	width:575px;
	margin-top:-25px;
	margin-bottom:15px;
}

.notesSectionContainer.show-internal-notes .file-from-note, .notesSectionContainer.show-internal-notes .note .comment {
	width:auto;
}

.button-aligned-md {
	position:absolute;
	bottom:0;
}

.referral-form .form-group label, .referral-view .row label {
	font-weight:normal;
}

.referral-view {
	background-color:#eeeeee;
	border:solid 1px;
	padding:10px;
	margin-bottom:10px;
}

.form-view-field {
	padding: 0.375rem 0.75rem;
}
.btn-group-xs > .btn, .btn-xs {
  padding: .25rem .4rem;
  font-size: .875rem;
  line-height: .5;
  border-radius: .2rem;
}

#form-oh-component label.form-control {
  background-color: #e9ecef;
  opacity: 1;
}

.do-not-share, .do-not-share a {
	color:#cc0000;
}
#oh-calendar .daynumber {
	display:flex;
	align-items:center;
	justify-content: center;
}
#oh-calendar .calendar-date-column.today {
	background-color:#F5F514;
}

#calendar-wrap thead, #oh-calendar thead tr { 
	display: block; 
}

#calendar-wrap tbody {
	display:block;
	height:700px;
	overflow-y: auto;
	width:100%;
}

#oh-calendar tr {
    display: table;
    width: 100%;
    table-layout: fixed;
}

#oh-calendar .calendar-day-time {
	color: #70757a;
	font-size:10px;
	top:-6px;
	max-height:40px;
	line-height:0;
	height:40px;
	padding:3px;
	width:60px;
}

#oh-calendar .event {
	background-color: rgb(215, 219, 239);
	border-color: rgb(188, 195, 229);
	font-size:12px;
	margin-bottom:2px;
}

#oh-calendar .event.hs {
	background-color: #00f70c;
}

#oh-calendar .event.vac {
	background-color: #ffff00;
}


#oh-calendar .event.referral {
	background-color: #ffbc40;
}

#oh-calendar .event.note {
	background-color: #EAFF26;
}

#oh-calendar .event.appointment {
	background-color: #E9967A;
}

#oh-calendar-selector {
	color:#007bff;
	cursor:pointer;
}

tr.highlight-utilization td {
	background-color:#FFF8DC
}

.labelWithInfo label {
	width:90%;
}

.check-icons {
	background-color:#F5F5F5;
}

.encounter-employee-col.employee-name-col {
	font-size:1.5em;
}

.encounter-employee-col.employee-name-col a, .encounter-employee-col.employee-name-col span {
	font-weight:bold;
}

.boxed-items > * {
	border: 2px solid black;
	padding: .5em 1em;
}

.share-email-element {
	padding:5px;
	margin-bottom:10px;
	margin-right:10px;
	border:1px solid black;
	width:180px;
	display:inline-block;
}

tr.row-inactive {
	display:none;
}

tr.row-active {
	display:table-row;
}

#activity tr.row-current td {
	font-weight:bold;
}

#practice-description > div {
	margin-top: 0.5rem !important;
	padding:5px;
	border: 5px;
	background-color:#E0E0E0;
}

table.clinic-date-resume td:nth-child(1) {
	font-weight:bold;
}

table.clinic-date-resume td:nth-child(2n) {
	text-align:right;
}
.table-xsm th, .table-xsm td {
	padding:0.1rem;
}

.month-datepicker .ui-datepicker-calendar, .month-datepicker .ui-datepicker-current {
   display: none;
}

.letter-circle {
    display: inline-block;
    border-radius: 50%;
    font-size: 10px;
    line-height: 12px; /* set to same size as width, height */
    width: 12px;
    height: 12px;
    text-align: center;
}

.female.letter-circle {
    background-color: #FFC0CB;
    color:black;
}
.male.letter-circle {
    background-color: #191970;
    color:white;
}
.mixed.letter-circle {
    background-color: #F3B716;
    color:black;
}

.calendar-cm-availability {
	 background-color:#9370DB;
	 color:#FFF8DC;
	 font-size:0.8em;
}

.calendar-cm-availability.none-available {
	 background-color:#c199ee;
}

.oh-appointment-note {
	color: #EAFF26;
}
.oh-appointment-complete {
	color: #56c5f5;
}
.oh-appointment-confirmed {
	color: #56d77d;
}
.oh-appointment-no-show {
	color: #ffc321c4;
}
.oh-appointment-complete-bg {
	background-color: #56c5f5 !important;
}
.oh-appointment-confirmed-bg {
	background-color: #56d77d !important;
}
.oh-appointment-no-show-bg {
	background-color: #ffc321c4 !important;
}
.oh-appointment-archived-employee-bg {
	background-color: red !important;
}

@media (min-width: 1200px)  {
	.appointment-resume.appointment-resume-fixed {
		position:sticky;
		top:0;
		bottom:0;
		max-width:350px;
		overflow-y:scroll;
 		max-height: 80vh;
	}
}

/*Signature*/
#signature-svg {
  margin: .5em;
  border: 1px solid gray;
  border-radius: .5em;
}

#signature-pathdata {
  font-family: monospace;
  background: #ddd;
  padding: 1em;
  margin: 1em .5em;
}

@media print {
	.attendance-print-header {
		position: fixed;
		top: 20px;
		left:25px;
		height:170px;
	}
    tr.avoid-first-page-empty {
    	page-break-inside:auto;
    }
	
   thead.fixed-header {
		display: table-header-group;
   }
   
   .page-header-space {
		height:200px;
	}
	
	.attendance-main {
		page-break-inside: avoid;
	}
}


@media print {
	.fixed-printable-header {
		position: fixed;
		top: 0px;
		right:10px;
		text-align:right;
		font-weight:bold;
	}
    tr.avoid-first-page-empty {
    	page-break-inside:auto;
    }
	
   thead.fixed-header {
		display: table-header-group;
   }
   
   .fixed-printable-header-space {
		height:20px;
	}
	
	.fixed-printable-header-main {
		page-break-inside: avoid;
	}
}

@media screen
{
	.report-end, .fixed-printable-header {
		display:none;
	}
}

@media print
{
	.report-end {
		 font-size:1.5em;
		 text-align:center;
		 font-weight:800;
	}
	.fixed-printable-header {
		display:block;
	}
}

#product-form .show-all-components, #product-form .show-included-components, #product-form .show-section, #product-form .hide-section {
	font-weight:bold;
	font-size:1.2em;
}

.extraLabelText {
	display: block;
  font-style: italic;
  font-size: 0.9em;
}

.font-size-one {
	font-size:1rem;
	font-weight:bold;
}

.optimum {
	font-style:italic;
}

 h5.h5-smaller{
 	font-size:1.1em;
 }
 
 .sweet-alert input[type='checkbox'] {
 display:inline-block;
 width:auto;
 height: 1em;
 }
 
@media print
{
 .blurb-collapsed-selector {
 	display: none !important;
 }
}
 
 tr.error-row td {
 	border: 1px solid #a94442;
 }
 
 .inline-normal-value {
 	display:inline
 }
 
 input.number-without-arrows[type='number'] {
	-moz-appearance: textfield;
 }
input.number-without-arrows::-webkit-outer-spin-button,
input.number-without-arrows::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
input.number-without-arrows.form-control {
	padding: 0.375rem;
 }
 .abnormalAnswers {
 	font-weight:bold;
 }
 
 .first-clinic-product-category {
 color:#FF8C00 !important;
 font-weight:bold;
 }

/* Floating Labels */
label.floating {
	display: none;
	position: absolute;
	font-size: 11px;
	z-index: 3;
	color: grey;
	top: -7px;
	left: 10px;
	background-color: #ffffff;
	border-radius: 4px;
	padding-left: 3px;
	padding-right: 3px;
	font-weight: normal;
}

.input-group-sm label.floating {
	left: 6px;
}

input:focus::placeholder {
	opacity: 0;
}

select+label.floating {
	display: block;
}

.bootstrap-select.selected+label.floating {
	display: block;
}

input:not(:placeholder-shown)+label.floating,
input:focus+label.floating {
	display: block;
}
/* -- End Floating Labels */

.yesno-other-wide {
	text-align:center;
	width:80px;
}

.referral-form .intro-text, .referral-view .intro-text {
	font-weight:bold;
	margin-top:1em;
	margin-bottom:1em;
}

.cursor-pointer {
	cursor: pointer;
}

/* -- Clinical Notes Versioning */
.disabled-overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0.1;
	background-color: black;
	cursor: not-allowed;
}

.pulse {
	animation: pulse 2s infinite;
}
  
@keyframes pulse {
	0% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.3);
	}

	70% {
		transform: scale(1);
		box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
	}

	100% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
	}
}
/* -- End Clinical Notes Versioning */

/* -- Report Summary Generator */
.report-summary-generator-disabled-overlay {
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: flex-start;
}
.report-summary-generator-disabled-overlay .inner {
	background-color: #000;
	opacity: 0.4;
	width: 100%;
	height: 100%;
	position: absolute;
}
.report-summary-generator-disabled-overlay p {
	margin-top: 50px;
	z-index: 3;
	background-color: #fff;
	padding: 24px;
	border-radius: 8px;
	width: 250px;
	border: 1px solid black;
}
/* -- End Report Summary Generator */


.opacity-row td:not(.row-actions) {
	opacity:0.5;
}

.justify-between-end {
	justify-content: space-between;
}

.justify-between-end:has(> :only-child) {
	justify-content: flex-end;
}

.table-striped {
	background-color: #fff;
}

.form-control.checkbox, .form-control.transparent {
	background-color: transparent;
	border: none;
}
