 * {
	font-family:"Open Sans", sans-serif;
	font-size:20px;
}

body {
	background:#F1F1F1;
}

.two-factor-auth {
	color: red;
}

.load-overlay-text {
	color:#224088;
	font-size:30px;
	font-weight:bold;
}

#main-container {
	height:100%;
}

#current-page {
	padding:15px;
}

.navbar {
	background-color:#212121;
}

.navbar, .navbar a {
	color:#E6E6E6 !important;	
}

.navbar img {
	height:30px;
	width:30px;	
}

#login-panel {
	margin-top:50px;	
}

.control-label {
	font-weight:bold;	
}

.load-overlay {
	/*z-index: 10000;*/
	animation: fade-in 0.25s linear;
	opacity:0.75;
}

@keyframes fade-in {
	0% { opacity: 0 },
	100% { opacity: 0.75 }
}

.global-search {
	border:1px solid #ccc;
	outline:none;
	padding:10px;
	font-size:20px;
	width:calc(100% - 40px);
}

.search-panel {
	margin-top:15px;
}

.search-result {
	cursor:pointer;
	padding:15px;
	display:block;
	overflow:auto;
}

.search-result:hover {
	background:#224088;
	color:#fff;
}

.search-result:hover .search-result-name {
	color:#fff;
}

.search-column-header {
	border-bottom:1px solid #ccc;
	padding-bottom:15px;
	color:#224088;
	font-weight:bold;
	text-align:center;
}

.search-result-icon {
	width:40px;
	float:left;
	margin-top:4px;
}

.search-result-body {
	float:left;
	max-width:298px;
}

.search-result-name {
	font-size:20px;
	font-weight:bold;
	color:#212121;
}

.search-result-detail {
	font-size:15px;
}

.page-header {
	background-color:#fff;
	margin-top:-15px;
	margin-left:-15px;
	margin-right:-15px;
	padding-top:15px;
	padding-left:15px;
	padding-right:15px;
	margin-bottom:15px;
}

.tabbed-header {
	margin-bottom:15px;
}

.thin-page-header {
	min-height:63px;
	height:63px;
	padding-top:15px;
}

.page-header h1 {
	font-size:24px;
	margin-top:0px;
	margin-bottom:30px;
	margin-left:20px;
}

h1, h2, h3 {
	font-weight:bold;
	color:#224088;
}

h1 {
	font-size:30px;
	margin-bottom:30px;
}
	

.nav-tabs {
	border-bottom:none !important;
}

.nav-tabs .nav-link {
	margin-right:5px;
	border-width:0px !important;
	border-top:4px solid #FFF !important;
	padding:10px 15px;
	color:#969696;
	border-radius:0px !important;
	background-color:#fff;
}

.nav-tabs .nav-link:hover {
	border-top:4px solid #224088 !important;
	background:#fafafa;
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
	background-color:#F1F1F1 !important;
	border-top:4px solid #224088 !important;
	color:#212529;
}

.panel {
	background:#FFF;
  	box-shadow: 2px 2px #E6E6E6;
  	margin-bottom:15px;
}

.panel-heading {
	color:#224088;
	border-bottom:2px solid #224088;
	margin-bottom:5px;
	padding-left:15px;	
	padding-right:15px;	
	padding-bottom:10px;	
	padding-top:10px;
	font-weight:bold;
}	

.panel-body {
	padding:15px;
}

.form-control {
	border-radius:0px !important;
}

.form-control:focus {
	border-color: #224088;
	box-shadow:none !important;
}

.text-uppercase {
	text-transform:uppercase;
}

.header-icon {
	margin-right:10px;
}

.checkbox-row input {
	margin-right:10px;
}

.btn {
	border-radius:0px;
	border:none !important;
}

.btn-secondary {
	background-color:#212121 !important;
	color:#E6E6E6 !important;
}

.btn-secondary:hover {
	background-color:#000;
}

.top-right-panel {
	/*position:fixed;*/
	/*z-index:1000;*/
	position:absolute;
	top:15px;
	right:15px;
}

.inline-block {
	display:inline-block	
}
/*
.row:last-child .form-group {
	margin-bottom:0px;
}
	
	*/
.table:last-child {
	/*margin-bottom:0px;*/
}

.no-bottom-margin {
	margin-bottom:0px !important;
}

.modal-content {
	border-radius:0px;
}

.logo-container {
	text-align:center;
}

.logo-container div {
	display:none;
	width:30px;
	height:30px;
	font-size:30px;
	margin:7px 0px;
	/*color:white;*/
}

.logo-container:hover img {
	display:none;
}

.logo-container:hover div {
	display:inline-block;
	/*color:#224088 !important;*/
}

th {
	background-color:#f1f1f1
}

.text-info {
	color:#7b7b7b !important;
}

.modal-title {
	color:#224088;
}

.clickable-row {
	cursor:pointer;
}

.clickable-row:hover td:first-child {
	box-shadow: inset 2px 0 0 #224088;
}
.clickable-row:hover td:last-child {
	box-shadow: inset -2px 0 0 #224088;
}

/**************************************************/
/* Dropzone                                       */
/**************************************************/

.dropzone {
	border:2px dashed #224088  !important;
	position:relative;
}

.dz-message {
	position: absolute;
    top: 45%;
    margin-top: 0px !important;
    left: 50%;
    margin-left: -110px !important;
	text-align:center !important;
	font-size:20px;
}

.dz-filename {
	margin-top:35px;
}

/**************************************************/

.options-table select {
	border:none !important;
	height:48px;
}

.option-name-cell {
	/*padding:7px !important;*/
	width:200px;
	padding-left:5px;
}

.option-value-cell {
	padding:0px !important;
}

.product-image-container {
	overflow:auto;
	margin-right:-15px;
}

.product-image {
	width:150px;
	height:150px;
	background-size:cover;
	background-position:center center;
	background-repeat:no-repeat;
	float:left;
	margin-right:15px;
	cursor:pointer;
}

.subtitle {
	color:#808080;
	margin-top:5px;
}

.total-row {
	font-weight:bold;
}

.row:last-child .form-group {
	/*margin-bottom:0px !important;*/
}

.quote-row-note .quote-line-description {
	color:#224088;
	/*font-weight:bold;*/
	/*font-style:italic;*/
}


.ui-sortable-helper {
    display: table;
}

.drag-helper-table {
	background:#FFF;
	opacity: 0.75;
	margin:-1px; /* To counteract the border */
}
	
.modal-subtitle {
	margin-bottom:15px;
	font-style:italic;	
	text-align:center;
	clear:left;
	font-size:16px;
	color:#808080;
}

.text-bold {
	font-weight:bold;	
}
 
.thin-padding-cell {
	padding:5px !important;	
}

.row-archived {
	color:#b5b5b5;
}

.row-urgent {
	color:red;
	font-weight:bold;	
}

.row-danger {
    color: #721c24;
    background-color: #f8d7da;
}

.row-danger td {
    border-color: #f5c6cb;
}

.row-success {
	color: #155724;
    background-color: #d4edda;
}

.row-success td {
    border-color: #c3e6cb;
}

.calendar .fc-right .btn-group button {
	margin-left:15px !important;
}

.fc-highlight {
	background:#FF00FF;	
}

.fc-view-container,
.fc-head-container th {
	background-color:#fff;
}

.map-container * {
    overflow:visible;
}

.thin-gutter .col:not(:last-child),
.thin-gutter [class^="col-"]:not(:last-child) {
	padding-right:7px;
}

.thin-gutter .col:not(:first-child),
.thin-gutter [class^="col-"]:not(:first-child) {
	padding-left:7px;
}

.bottom-margin {
	margin-bottom:15px;
}

.top-margin {
	margin-top:15px;
}

.small-bottom-margin {
	margin-bottom:5px;
}

h2 {
    font-size: 20px;
    font-weight: bold;
    border-bottom: 2px solid #224088;
    margin-bottom: 15px;
    padding-bottom: 15px;
    text-align: center;
}

.date-header,
.table-header {
	/*background:#eee;*/
	color:#224088;
	font-weight:bold;
	background:#fefefe;
	text-align:center;
}

.job-table-overdue {
	color:#FF0000;
}

.job-overdue {
	
}

.job-non-customer {
}
	
.job-customer-address {
	margin-top:5px;
}

.input-group>.input-group-append>.btn,
.input-group>.input-group-append>.input-group-text,
.input-group>.input-group-prepend:first-child>.btn:not(:first-child),
.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),
.input-group>.input-group-prepend:not(:first-child)>.btn,
.input-group>.input-group-prepend:not(:first-child)>.input-group-text {
	border-top-right-radius:0px;
	border-bottom-right-radius:0px;
}

.sub-label {
	margin-bottom:10px;
	display:block;
}

.text-info {
	color:#224088 !important;	
}

.product-info {
	text-decoration:none;
	color:#212529;
	margin-bottom:15px;
	overflow:auto;
	display:block;
	/*border-bottom:1px solid #f1f1f1;*/
	/*padding-bottom:10px;	*/
}

.product-info:hover {
	text-decoration:none;
}

.product-info:not(.non-clickable) {
	cursor:pointer;
}

.product-info-image {
	float:left;
	margin-right:15px;
	width:75px;
	height:75px;
	background-image:url(/images/stairlift-icon.png);
	background-size:cover;
	border-radius:4px	
}

.product-info-price {
	font-weight:bold;
	/*margin-bottom:10px;*/
	/*float:right;*/
	color:#224088;
	margin-top:10px;
	font-size:14px;
}

.product-info-field-price {
	color:#aaa;
}

.product-info-name {
	font-weight:bold;
	margin-bottom:10px;
}

.product-info-location {
	margin-bottom:10px;
	margin-top:-10px;
	font-size:13px;
}

.product-info-fields {
	font-size:13px;
}

.product-info:not(.non-clickable):hover .product-info-name, 
.product-info:not(.non-clickable):hover .product-info-location, 
.product-info:not(.non-clickable):hover .product-info-label,
.product-info:not(.non-clickable):hover .product-info-fields {
	color:#224088; 
}

.product-info:not(.non-clickable):hover .product-info-image {
	background-image:url(/images/stairlift-icon-sel.png);
}

.product-info-label {
	font-weight:bold;
	width:100px;
	display:inline-block;
}

.thin-padding {
	padding:10px;
}
	
.bottom-button-bar {
	background:white;
	margin:15px -15px -15px -15px;
	padding:15px;
	overflow:auto;
}

.text-grey {
	color:#aaa;
}

.signature-pad {
	background:#fefefe;
	width:100%;
	height:300px;
}

.survey-summary-total-price {
	font-size:30px;
	text-align:center;
}

.nav-pills .nav-link {
	border-radius:0px !important;
}
/*
.photo-preview {
	width:200px;
	height:200px;
	border:1px solid #ccc;
}
*/
.photo-preview-outer {
	float:left;
	border:1px solid #bbb;
	background-color:#eee;
	padding:10px;
	margin-right:15px;
	margin-bottom:20px;
	cursor:pointer;
}

.photo-preview-inner {
	width:200px;
	height:200px;
	background-size:contain;
	background-color:black;
	background-position:center center;
	background-repeat:no-repeat;
}

.photo-preview-caption {
	font-size:12px;
	text-align:center;
	min-height:30px;
	padding-top:10px;
	padding-bottom:0px;
	max-width:200px;
}

.photo-preview-cover {
	font-weight:bold;
	color:red;
	text-align:center;
	padding-top:10px;
	padding-bottom:0px;
	max-width:200px;
}

.negative-bottom-margin {
	margin-bottom:-15px;	
}

.photo-preview-large-inner {
	width:100%;
	height:100%;
	background-size:contain;
	background-color:black;
	background-position:center center;
	background-repeat:no-repeat;
}

.photo-preview-large-caption {
	/*font-size:12px;
	text-align:center;
	min-height:30px;
	padding-top:10px;
	padding-bottom:0px;
	max-width:200px;*/
}

.full-cell-input {
    padding: 24px 16px;
    border: none !important;
}
	
.extra-info {
	color:#aaa;
}

.site-list-site-name {
	font-weight:bold;
	margin-bottom:5px;
}

.site-list-customer-name {
	color:#a5a5a5;
}

.fa, .fas, .far {
	/*color:#224088;*/
}

table {
	color:#224088;
}

th {
	color:#FFF;
	background-color:#224088 !important;
	border:none !important;
	padding:10px 15px !important;
}


.nav-link .fa,
.nav-link .fas,
.nav-link .far,
.btn .fa,
.btn .fas,
.btn .far {
	margin-right:5px;
}

.text-danger {
	color:#F00 !important;	
	font-weight:bold !important;
}

.control-label {
	color:#224088;
}

.float-container {
	overflow:auto;	
}

.panel-heading .btn {
    margin-top: -2px;
    margin-right: -8px;
}

#signature-canvas {
	position:absolute;
	width:100%;
	height:100%;
}

#signature-container {
	position:absolute;
	width:75%;
	background:#fff;
}

#signature-background {
	width:100%;
	height:100%;
    background-image:url(/images/sign-here.png);
    background-size:contain;
    background-position:center center;
    background-repeat:no-repeat;
    background-color:#ededed;
}

.fullscreen-modal {
	z-index:2100;
	position:fixed;
	left:0px;
	top:0px;
	width:100%;
	height:100vh;
	background:white;
	display:none;
}

body.fullscreen-modal-open {
	overflow:hidden;
	position: relative
}

.fullscreen-modal-header {
	background-color:#fff;
	position:relative;
	z-index:1000;
}

.fullscreen-modal-header-title {
	font-size:20px;
	font-weight:bold;
	margin-bottom:15px;
	text-align:center;
}

.fullscreen-modal-header-controls {
	padding:15px;
}
	
.top-margin {
	margin-top:15px;
}

.ui-datepicker {
	width:auto;
}

.big-warning {
	color:red;
	font-weight:bold;
}

@keyframes spin {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
}

.spinning-icon {
	animation-name: spin;
	animation-duration: 750ms;
	animation-iteration-count: infinite;
	animation-timing-function: linear; 
}

.blink {
	-webkit-animation: blink .75s linear infinite;
	-moz-animation: blink .75s linear infinite;
	-ms-animation: blink .75s linear infinite;
	-o-animation: blink .75s linear infinite;
	 animation: blink .75s linear infinite;
}
@-webkit-keyframes blink {
	0% { opacity: 1; }
	50% { opacity: 1; }
	50.01% { opacity: 0; }
	100% { opacity: 0; }
}
@-moz-keyframes blink {
	0% { opacity: 1; }
	50% { opacity: 1; }
	50.01% { opacity: 0; }
	100% { opacity: 0; }
}
@-ms-keyframes blink {
	0% { opacity: 1; }
	50% { opacity: 1; }
	50.01% { opacity: 0; }
	100% { opacity: 0; }
}
@-o-keyframes blink {
	0% { opacity: 1; }
	50% { opacity: 1; }
	50.01% { opacity: 0; }
	100% { opacity: 0; }
}
@keyframes blink {
	0% { opacity: 1; }
	50% { opacity: 1; }
	50.01% { opacity: 0; }
	100% { opacity: 0; }
}

.failed-job .panel-heading,
.failed-job .panel-body,
.failed-job .form-group,
.failed-job .control-label,
.failed-job .form-control-plaintext {
	color:#F00 !important;
}

/*.navbar {
	background-color:#224088;
}
*/

.eruda-entry-btn {
	display:none !important;
}

.equipment-location {
	color:#b3b3b3;
}

.task-summary-completed td {
	color:#b3b3b3;
}

.zoom-to-top-button {
	position:fixed;
	top:150px;
	right:35px;
	z-index:1000;
	display:block;
}

.zoom-to-bottom-button {
	position:fixed;
	bottom:150px;
	right:35px;
	z-index:1000;
	display:block;
}

.row-error {
	color:#F00;
	font-weight:bold;
}

.sticky-panel {
	position:sticky;
	top:0px;
	background:#fff;
	z-index:1;
	margin-left:-15px;
	margin-right:-15px;
	padding-bottom:15px;
	overflow:auto;
}

.part-warning {
	color:red;
	font-size:24px;
}

.location-level-1 td:nth-child(2) {
	text-align:center;
	font-weight: bold;
}

.centralised-checkbox {
	display: flex;
	align-items: center;
	margin: 0px;
	height: 47px;
}

.centralised-checkbox input {
	width: 30px;
	height: 30px;
	margin-right: 10px;
}

.parts-required-table * {
	font-size: 16px !important;
}

.parts-required-table tbody td {
	color: #666;
}

.start-job-btn.btn-primary {
	background-color: #000 !important;
	border:4px solid red !important;
}

.responsive-table-container {
	max-width: 100%;
	overflow: auto;
	border: 1px solid #eee;
}




