@charset "utf-8";
/* CSS Document */
* {
	font-family: inherit;
	line-height: inherit;
	color: inherit;
}

html {
	font-size: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

*, *:before, *:after {
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}

body {
	background-color: #a3d9f5;
	color: #808084;
	font-family: 'Mulish', sans-serif;
	font-size: 0.875rem;
	line-height: 1.5em;
	margin: 0;
	padding: 0;
}

a {
	color: #0068b3;
	text-decoration: none;
}

a:hover {
	color: #e4701e;
}

div:not(.grid, .pre-wrap):before, div:not(.grid, .pre-wrap):after,
footer:before, footer:after,
header:before, header:after,
menu:before, menu:after,
section:before, section:after {
	content: " ";
	display: table;
}

div:after, footer:after, header:after, menu:after, section:after {
	clear: both;
}

div.grid {
	display: grid;
	grid-gap: 5px;
}

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

h1, h2, h3 {
	margin: 0;
	padding: 0;
	line-height: inherit;
	font-size: 20px;
	font-weight: normal;
}

h1 {
	font-size: 22px;
	font-weight: bold;
}

h2 span span {
	display: inline;
	opacity: 0.5;
}

.disabled {
	cursor: not-allowed;
	position: relative;
}

section.disabled:after {
	content: " ";
	z-index: 10;
	display: block;
	position: absolute;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	background: rgba(0, 0, 0, 0.2);
}

header {
	margin: 0 auto;
	padding: 0;
	position: relative;
}

fieldset {
	margin-bottom: 20px;
}

fieldset legend {
	margin-bottom: 10px;
}

/* ================================================================================================
	bootstrap toggle customizations
================================================================================================ */
.toggle {
	margin-left: -20px;
}

/* ================================================================================================
	flatpickr customizations
================================================================================================ */

.flatpickr-day.selected {
	background-color: #00aeef;
	border-color: #00aeef;
}

.flatpickr-day.selected:hover {
	background-color: #a3d8f5;
	border-color: #a3d8f5;
}

/* ================================================================================================
	daterangepicker customizations
  ================================================================================================ */
.daterangepicker .compare-input {
	flex-grow: 1;
	font-size: 12px;
	margin-bottom: -3px;
}

.daterangepicker-input {
	background: #fff;
	cursor: pointer;
	padding: 5px 10px;
	border: 1px solid #ccc;
	color: black;
}

/* ================================================================================================
	Dashboard Header
================================================================================================ */

header.site-header {
	padding: 5px;
	height: 55px;
	background-color: #0068b3;
	color: #fff;
}

header.network-header {
	padding: 5px;
	height: 65px;
	color: #fff;
	border-bottom: 10px solid rgb(0, 174, 239);
}

header.site-header .logo img, header.network-header img {
	margin-left: 5px;
	margin-top: 5px;
	height: 35px;
}

header.site-header .title, header.network-header .title {
	font-size: 1.8em;
	text-align: center;
	margin-top: -40px;
	line-height: 45px;
}

header.site-header .widgets, header.network-header .widgets {
	position: absolute;
	top: 16px;
	right: 10px;
	color: #FFF;
}

header.site-header .widgets div, header.network-header .widgets div {
	display: inline-block;
	margin-left: 5px;

	/* allows us to use absolute positioning inside the widget container for things like badges */
	position: relative;
}

header.site-header .widgets div a, header.network-header .widgets div a {
	text-decoration: none;
	color: #FFF;
}

header.site-header .widgets .icon, header.network-header .widgets .icon {
	cursor: pointer;
	font-size: 1.5em;
}

header.site-header .widgets #open-alerts-container {
	top: -1px;
}

header.site-header .widgets #open-alerts-container a {
	animation: blinker 2s linear infinite;
	background-color: #FFF;
	border: 1px solid #d9534f;
	border-radius: 3px;
	color: #d9534f;
	font-size: 1.3em;
	padding: 3px 5px 3px 5px;
	margin-left: 3px;
	visibility: hidden;
}

header.site-header .widgets #open-alerts-container a i.fa {
	padding-left: 1px;
	padding-right: 1px;
}

header.site-header .widgets #open-alerts-container a span.battery-quarter-spacer {
	font-size: 0.7em;
	position: relative;
	top: -1px;
}

header.site-header .widgets #open-alerts-container a.visible {
	padding: 3px 5px 3px 5px;
	margin-left: 3px;
	visibility: visible;
}

header.site-header .widgets #open-alerts-container a.visible i {
	display: initial;
}

header.site-header .widgets #open-alerts-container a.invisible {
	border: 0;
	margin-left: 0;
	padding: 0;
	visibility: hidden;
}

header.site-header .widgets #open-alerts-container a.invisible i {
	display: none;
}

header.site-header .widgets #open-alerts-container a.alert-HIGH {
	border: 1px solid #d9534f;
	color: #d9534f;
}

header.site-header .widgets #open-alerts-container a.alert-LOW {
	border: 1px solid #ec971f;
	color: #ec971f;
}

.header-dropdown-menu {
	display: none;
	position: absolute;
	background-color: #FFF;
	min-width: 180px;
	box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
	z-index: 9999;
	right: 0;
	padding-left: 0;
	list-style: none;
	margin-top: -15px;
	padding-top: 5px;
	padding-bottom: 5px;
	color: #586069;
}

.header-dropdown-menu .dropdown-header {
	padding: 4px 15px;
	font-size: 1em;
}

header.site-header .header-dropdown-menu .dropdown-item, header.network-header .header-dropdown-menu .dropdown-item {
	display: block;
	padding: 4px 10px 4px 15px;
	overflow: hidden;
	text-decoration: none;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: #586069;
}

.header-dropdown-menu .dropdown-button {
	text-align: center;
	padding-left: 3px;
	padding-right: 3px;
}

header.site-header .header-dropdown-menu .dropdown-item:hover, header.network-header .header-dropdown-menu .dropdown-item:hover {
	color: white;
	background-color: #00aeef;
}

.header-dropdown-menu .dropdown-divider {
	height: 1px;
	margin: 8px 1px;
	background-color: #e1e4e8;
}

.header-dropdown-menu .current-user {
	padding-bottom: 0;
}

.header-dropdown-menu .current-user span.username {
	font-weight: bold;
}

.header-dropdown-menu .app-version {
	padding-top: 0;
}

.badge {
	background-color: #FF0000;
	color: #FFF;
	padding: 2px 5px 4px 5px;
	position: absolute;
	top: -7px;
	right: -3px;
	font-weight: normal;
	font-size: 11px;
	border-radius: 8px;
}

header input.date-input {
	width: 110px;
}

/* ================================================================================================
	Scheduled Checks
================================================================================================ */

.scheduled-checks-fields {
	display: none;
	margin-left: 25px;
}

.scheduled-checks-fields select {
	width: auto;
	display: inline-block;
}

.scheduled-checks-widget-list {
	background-color: #FFF;
	box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.46);
	color: #000;
	display: none;
	font-size: 0.9em;
	max-height: 550px;
	overflow-y: auto;
	padding: 5px 5px 5px 5px !important;
	position: absolute;
	right: 5px;
	text-align: left;
	top: 56px;
	width: 370px;
	z-index: 1000;
}

.scheduled-checks-widget-list .header {
	font-size: 1.1em;
	margin-bottom: 5px;
}

.scheduled-checks-widget-list .header label {
	font-weight: bold;
	font-size: 1.1em;
}

.scheduled-checks-widget-list .toggle-mark-absent-controls {
	margin-bottom: 5px;
}

.scheduled-checks-widget-list .current-check-items div.check-item {
	padding: 5px 2px 5px 2px;
}

.scheduled-checks-widget-list .current-check-items div.check-item:nth-of-type(odd) {
	background: #F3F3F3;
}

.scheduled-checks-widget-list .current-check-items div.check-item .person-details {
	float: left;
	line-height: 20px;
}

.scheduled-checks-widget-list .current-check-items div.check-item .person-details .person-name {
	font-size: 1.1em;
	font-weight: bold;
}

.scheduled-checks-widget-list .current-check-items div.check-item .check-due {
	float: left;
	margin-right: 5px;
	width: 40px;
}

.scheduled-checks-widget-list .current-check-items div.check-item button {
	float: right;
	height: 40px;
}

.scheduled-checks-widget-list .current-check-items div.check-item.warning {
	color: #C00;
}

div.scheduled-checks-care-groups {
	margin-bottom: 10px;
}

/* ================================================================================================
	Communication Center
================================================================================================ */

.communication-center-list .selected-nav-item {
	font-weight: bold;
}

div.communication-center-list .no-messages {
	font-size: 1.5em;
	padding: 20px;
}

div.communication-center-list h2 {
	margin-left: 5px;
	margin-bottom: 5px;
}

div.communication-center-list table.table tr.unread td {
	color: black;
	font-weight: bold;
}

div.communication-center-list table.table tr .messagePriority {
	text-align: center;
	width: 35px;
}

div.communication-center-edit .to-contact-selecter {
	margin-top: 5px;
	width: 50%;
	float: left;
	min-width: 360px;
}

div.communication-center-edit .to-contact-selecter:first-child {
	padding-right: 10px;
}

div.communication-center-edit .to-contact-selecter .contact-list-builder {
	float: right;
}

div.communication-center-edit .to-contact-selecter label.title {
	width: 100%;
	margin-bottom: 5px;
	border-bottom: 1px solid rgb(204, 204, 204);
}

div.message-lightbox {
	position: absolute;
	top: 0;
	background-color: #00aeef;
	height: 100%;
	width: 100%;
	z-index: 1001;
	overflow-y: scroll;
}

div.message-lightbox #close-message {
	margin-top: 10px;
	float: right;
}

div.message-lightbox div.message-heading {
	padding-bottom: 8px;
	margin-bottom: 8px;
	border-bottom: 1px solid rgb(204, 204, 204);
}

div.message-lightbox div.message-heading .subject {
	color: black;
	margin-bottom: 2px;
}

div.message-lightbox div.message-heading .sub-heading {
	font-size: 0.9em;
	line-height: 18px;
}

div.message-lightbox div.message-heading .sub-heading div {
	width: 50%;
	float: left;
}

div.message-lightbox div.message-heading .sub-heading div.sender {
	font-weight: bold;
}

div.message-lightbox div.message-heading .sub-heading div.sentAt {
	text-align: right;
}

div.message-lightbox div.panel {
	margin-top: 50px;
}

div.message-lightbox div.body {
	margin-bottom: 10px;
}

div.message-lightbox div.message.unread {
	background-color: #cfcfcf;
	padding: 8px;
}

/* ================================================================================================
	General Styling
================================================================================================ */

.print-only {
	display: none;
}

.alert-HIGH {
	color: #d9534f;
}

.alert-LOW {
	color: #ec971f;
}

@keyframes blinker {
	50% { opacity: 0; }
}

div.page-header-links div.left {
	text-align: left;
}

div.page-header-links div.right {
	text-align: right;
}

div.page-header-links div.right > * {
	/* negative margin on the left to eliminate whitespace added from newlines between <a></a> elements */
	margin: 4px 4px 4px -3px;
}

div.page-header-links div.left > * {
	/* negative margin on the right to eliminate whitespace added from newlines between <a></a> elements */
	margin: 4px -3px 4px 4px;
}

#ui-datepicker-div {
	/* bootstrap modal dialogs have a z-index of 1050 */
	z-index: 1051 !important;
}

section {
	background-color: #fefefe;
	border: 10px solid #a3d8f5;
	border-bottom: 0 none;
	border-right: 0 none;
	display: block;
	float: left;
	margin: 0;
	padding: 10px;
	position: relative;
	width: 100%;
}

section.tile {
	height: 232px;
	width: 20%;
	display: flex;
	flex-direction: column;
}

section.wide-tile {
	width: 40%;
}

section.wide-tile .wide-tile-contents {
	display: flex;
	flex-direction: row;
	height: 100%;
}

.certified-community-status-badge {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	width: 100%;
}

section.tile .certified-community-status-badge img {
	width: 160px;
}

section.wide-tile .left-tile {
	height: 100%;
	width: 50%;
}

section.wide-tile .right-tile {
	height: 100%;
	width: 50%;
}

section.tile .brick-tile-contents {
	color: #808084;
	display: block;
	height: 100%;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

section.tile a, section.summary-tile a {
	width: 100%;
}

div.care-scorecard section.summary-tile a {
	color: #808084;
}

section.tile.link a:hover, section.summary-tile.link a:hover {
	text-decoration: none;
}

section.tile.link a::after, section.summary-tile.link a::after {
	content: '';
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 100%;
	opacity: 0;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.8);
	transition: opacity 0s ease-in-out;
	top: 0px;
	left: 0px;
}

section.tile.link a:hover::after, section.summary-tile.link a:hover::after {
	opacity: 1;
}

section.tile div.stats-container {
	padding: 0px 30px;
	margin-top: 35px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	justify-items: center;
}

section.tile div.stats-container img {
	height: 75px;
}

section.tile div.stats-container .stats {
	text-align: center;
	width: 100px;
}

section.tile i.icon {
	color: #adafb2;
	display: block;
	font-size: 80px;
	margin-top: 40px;
	height: 100px;
	text-align: center;
}

section.tile i.brick-exclamation {
	float: right;
	margin: 15px;
	margin-left: -40px;
	color: red;
	font-size: 22px;
}

section.tile img.icon {
	margin: 0 auto;
	margin-top: 30px;
	height: 100px;
	display: block;
}

section.tile h2 {
	text-align: center;
	font-size: 1.1em;
}

section.tile .care-goal, section.tile .click-for-details {
	margin-top: 5px;
	text-align: center;
}

.care-goal .care-goal-prefix {
	font-weight: bold;
}

section.tile i.tooltip-icon, section.summary-tile i.tooltip-icon, section.graph-tile i.tooltip-icon {
	position: absolute;
	font-size: 1.3em;
	z-index: 99;
}

section.tile i.tooltip-icon {
	top: 10px;
	right: 10px;
}

section.graph-tile i.tooltip-icon, section.summary-tile i.tooltip-icon {
	bottom: 10px;
	right: 10px;
}

section.alpha-feature-tile {
	background: repeating-linear-gradient(
		-55deg,
		#f3f3f3,
		#f3f3f3 20px,
		#fcfcfc 20px,
		#fcfcfc 40px
	);
}

section.alpha-feature-tile .subText {
	color: rgb(0, 175, 245, 1);
}

section.resident-photo {
	padding: 0px;
}

.resident-photo-image {
	height: 100%;
	width: 100%;
	background-repeat: no-repeat;
	background-size: 283px;
	background-position-x: 50%;
	background-position-y: 50%;
}

.checkin-number {
	font-size: 60px;
	line-height: 60px;
}

.checkin-details {
	margin-left: 5px;
	font-size: 0.9em;
}

.checkin-dots {
	margin-left: 5px;
	margin-top: 10px;
	text-overflow: ellipsis;
	text-overflow: "+";
	overflow: hidden;
	white-space: nowrap;
	font-weight: bold;
}

.checkin-dots span {
	background-color: #ccc;
	border-radius: 20px;
	display: inline-block;
	height: 14px;
	margin: 0 10px 0 0;
	width: 14px;
}

.checkin-dots span.full {
	background-color: #00aeef;
}

label {
	font-weight: normal;
}

form label {
	font-weight: bold;
}

form label.radio-label {
	font-weight: normal;
	display: inline;
}

.form-check-input {
	display: none;
}

.full-width {
	width: 100%;
}

.file-input-controls {
	display: inline-block;
}

.profile-picture-row-container {
	margin-bottom: 30px;
}

.profile-image-container {
	text-align: center;
	width: 300px;
	height: 300px;
}

.profile-image-container img {
	width: 300px;
	margin-top: 75px;
}

.profile-image-container div {
	height: 100%;
	width: 100%;
}

div.cr-slider-wrap {
	padding-top: 10px;
}

tr.liveable-disabled td, tr.device-row td.warning {
	background-color: #c00;
	color: #fff;
}

tr.liveable-disabled:hover td {
	background-color: #cc0000 !important;
}

tr.liveable-disabled td select {
	color: #999999;
}

/* Panels */

.panel {
	position: relative;
	z-index: 1;
	background: #FFFFFF;
	padding: 0;
	border-width: 0px;
	border-radius: 0;
	box-shadow: 0;
	margin: 0;
}

.narrow-panel {
	max-width: 400px;
	margin: 0 auto;
	margin-top: 10px;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
}

.medium-panel {
	max-width: 800px;
	margin: 0 auto;
	margin-top: 10px;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
}

.padded-panel {
	padding: 15px;
}

.login-panel {
	margin-top: 70px;
}

.panel h1 {
	margin-bottom: 15px;
}

.form-buttons {
	margin-top: 25px;
	text-align: center;
}

.panel h1.panel-title {
	font-size: 1.6em;
	margin-bottom: 20px;
}

.panel .message {
	margin: 0 0 20px;
}

.panel .message span {
	display: inline-block;
}

.panel .message.error {
	color: #B33A3A;
}

.panel .message.info {
	color: #39B23C;
}

.form-group div.row-item {
	margin-bottom: 4px;
}

.connected-sortable {
	border: 1px solid #eee;
	border-radius: 4px;
	min-height: 45px;
	margin: 0;
}

.connected-sortable li {
	cursor: grab;
}

.grabby {
	float: right;
	color:#ccc;
}

.user-controls .form-group {
	text-align: left;
}

.user-controls .panel {
	text-align: center;
}

.user-controls .nav-buttons {
	margin-bottom: 15px;
}

.user-controls input[type="text"], .user-controls input[type="tel"], .user-controls input[type="password"] {
	outline: 0;
	background: #F2F2F2;
	border: 0;
	padding: 15px;
	box-sizing: border-box;
	color: #000;
}

.user-controls .form-group {
	margin-bottom: 15px;
}

.user-controls .input-group-append, .user-controls .input-group-text {
	background: #F2F2F2;
	border: 0;
}

.user-controls input[type="submit"], .user-controls input[type="button"], .user-controls .btn {
	text-transform: uppercase;
	outline: 0;
	padding: 15px 10px 15px 10px;
	font-size: 14px;
	-webkit-transition: all 0.3 ease;
	transition: all 0.3 ease;
	cursor: pointer;
	white-space: normal;
	word-break: break-word;
}

.checkbox-button {
	display: flex;
	align-items: center;
}

.checkbox-button i {
	display: inline-block;
	margin-right: 5px;
}

.checkbox-button span {
	flex: 1;
}

.user-controls input::placeholder {
	color: #666;
}

.user-controls .staff-list, .user-controls .liveable-list {
	list-style: none;
	padding-left: 0px;
}

.shift-sign-on-controls, .visitor-sign-in-controls {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
}

.shift-sign-on-controls .btn, .visitor-sign-in-controls .btn.btn-block {
	font-size: 18px;
	padding: 25px;
}

.sign-in-controls div.sign-in-controls-heading {
	margin-bottom: 10px
}

.sign-in-controls div.sign-in-controls-heading span {
	font-size: 1.1em;
	font-weight: bolder;
	float: left;
}

.sign-in-controls .visitor-successfully-signed-in-panel {
	background-color: #DFF1DD
}

.visitor-sign-in-controls div.footer button, .visitor-sign-in-controls div.footer .btn {
	margin-top: 10px;
	text-transform: capitalize;
}

.visitor-sign-in-controls #selected-person-list button:last-child {
	margin-bottom: 10px;
}

.visitor-sign-in-controls button span {
	white-space: break-spaces;
}

.visitor-sign-in-controls #change-reason {
	float: right;
}

.visitor-sign-in-controls div.returning-visitor, .visitor-sign-in-controls div.existing-visitor, .visitor-sign-in-controls div.screening {
	max-height: 595px;
	overflow-y: auto;
	overflow-x: hidden;
}

#visit-people-form span.disambiguation {
	font-size: 0.8em;
	display:block;
}

#visit-info-not-found div.returning-visitor-new-visit-button {
	display: flex;
	margin: 10px 0;
	justify-content: center;
}


#shift-details-form .liveable-info,  .visitor-sign-in-controls .person-search-info {
	color: #2f6473;
	background-color: #def2f8;
	border-color: #d1edf6;
	border-radius: .25rem;
	padding: 0.5rem;
	line-height: 28px;
}

#shift-details-form .signed-in-as {
	font-size: 1.1em;
	margin-bottom: 1rem;
	line-height: 28px;
}

#shift-details-form .signed-in-as .username {
	font-weight: bold;
}

/* Error containers */

.error-container {
	color: #FFF;
	margin: 0 auto;
	text-align: center;
}

.error-container.error {
	margin-top: 150px;
}

.error-container h1 {
	font-size: 2em;
	line-height: 1.1;
}

.error-container p {
	font-size: 1.1em;
	margin-top: 5px;
}

.error-container #error-details {
	color: #000;
	text-align: left;
	display: none;
}

.error-container #error-details #error-variables {
	display: none;
}

div.facility-selector {
	margin-bottom: inherit;
}

div.facility-selector select#facility-selector {
	padding: 0;
	line-height: inherit;
	height: inherit;
	font-size: inherit;
}

/* Dashboards */

div.family-dashboard {
	max-width: 1000px;
}

div.family-dashboard section.family-profile {
	width: 50%;
	height: 440px;
}

div.family-dashboard section.family-profile img {
	padding: 10px;
	width: 100%;
}

div.family-dashboard section.family-profile h2 {
	position: relative;
	left: 0px;
	bottom: 0px;
	width: 100%;
	text-align: center;
	font-size: 1.8em;
	color: #333;
}

.btn-primary span, .btn-primary i {
	color: #fff;
}

.tablesorter-record-count {
	font-size: 18px;
}

div.page-nav i {
	margin-right: 7px;
}

section.reports h2 {
	margin: 0 auto;
	margin-top: 10px;
	color: #00aeef;
	font-size: 1em;
	left: 0;
}

section div.reports {
	display: inline-block;
	margin-top: 30px;
	vertical-align: top;
	width: 100%;
}

section div.reports ul {
	margin-top: -30px;
	font-size: 0.8em;
	list-style: none;
	padding-left: 0;
	margin-bottom: 0;
	text-align: center;
	font-weight: bold;
}

section div.reports ul a {
	position: inherit;
}

section fieldset legend {
	margin-bottom: 10px;
}

section.summary-tile {
	width: 33.3%;
	min-height: 250px;
}

section.summary-tile div.summary-notes {
	text-align: center;
	font-size: 0.9em;
	line-height: 1.5em;
}

section.summary-tile div.summary-notes span {
	display: block;
}

section.summary-tile div.care-goal {
	width: 100%;
	text-align: center;
	clear: both;
	position: absolute;
	bottom: 10px;
}

section.summary-tile dl {
	margin-bottom: 5px;
}

section.summary-tile dt {
	font-weight: bold;
}

section.summary-tile.care-trend table {
	border-collapse: separate;
	border-spacing: 15px 0px;
	margin: 0 auto;
	margin-bottom: 20px;
	width: 100%;
}

section.summary-tile.care-trend dt {
	font-weight: normal;
}

section.summary-tile dt.definition-list-header, section.summary-tile dd.definition-list-header {
	font-weight: bold;
}

section.summary-tile h2 {
	font-size: 1.1em;
	margin-bottom: 10px;
	text-align: center;
	width: 100%;
}

section.summary-tile .content-scroll-summary {
	max-height: 170px;
	overflow-y: auto;
}

section.summary-tile .dl-horizontal dd span.value {
	display: inline-block;
	width: 65px;
}

section.summary-tile .dl-horizontal dd span.text {
	display: inline-block;
	width: 75px;
}

section.summary-tile .dl-horizontal dd span.wide {
	width: 118px;
}

section.summary-tile div.summary-header-comparison div.label {
	margin-top: 10px;
	margin-bottom: -15px;
	color: #cfcfcf;
	text-align: center;
	float: left;
	width: 33%;
}

section.summary-tile div.summary-header-comparison div.comparison-gauges > div {
	float: left;
	width: 33%;
}

section.summary-tile div.summary-header-comparison div.comparison-gauges div.change {
	padding: 20px 0px 20px 0px;
	font-size: 23px;
	margin-top: 23px;
	text-align: center;
}

section.summary-tile div.summary-header-comparison div.canvas-container {
	margin-top: 10px;
	margin-bottom: 10px;
	position: static;
}

section.summary-tile div.summary-header-comparison div.canvas-container div.display-value, section.summary-tile div.summary-header-comparison div.canvas-container div.sub-display-value {
	font-size: 1.0em;
}

section.full-width {
	width: 100%;
	min-height: inherit;
}

section.graph-tile h2 {
	margin-bottom: 0;
}

section.graph-tile, section.report div.graph-tile {
	width: 33.3%;
	height: 250px;
}

section.graph-tile-8, section.report div.graph-tile-8 {
	width: 66.6%;
	height: 250px;
}

section.tall-graph-tile {
	height: 750px;
	float: right;
}

section.graph-tile.large-graph-tile {
	width: 100%;
	height: 500px;
}

section.report div.graph-tile.graph-tile-lg-8, section.graph-tile.graph-tile-lg-8 {
	width: 66%;
}

section.full-graph-tile {
	width: 100%;
	height: 250px;
}

section.report {
	padding: 15px;
}

section.report fieldset {
	margin-bottom: 20px;
}

section.report fieldset legend {
	font-size: 1.5em;
}

section.report div.graph-tile {
	display: block;
	float: left;
}

p.report-no-results {
	text-align: center;
	font-size: 1.75em;
}

#furthest-end-date span {
	width: 140px;
}

.wrapper {
	margin: 0 auto;
	width: 100%;
}

.wrapper header {
	background-color: #00aeef;
	color: #fff;
	padding: 10px;
}

.dashboard, .report {
	/* these pages include tile elements, which require the margin/padding adjustments so they're padded on the right and bottom */
	margin: 0 auto;
	margin-bottom: 10px;
	padding-right: 10px;
}

body.visitors .wrapper header .page-nav {
	padding: 30px;
	font-size: 25px;
	text-align: center;
}

body.visitors .wrapper header .page-nav-breadcrumb div {
	margin-top: 25px
}

body.visitors .sub-title {
	display: inline-block;
	padding-top:8px;
}

body.visitors .wrapper .page-nav {
	float: inherit;
}

.wrapper header a {
	color: #FFF;
}

.wrapper header a:hover {
	color: #e4701e;
}

.wrapper header a.selected-nav-item {
	font-weight: bolder;
	text-decoration: underline;
}

.wrapper header .generated-at {
	clear: both;
	float: right;
	font-size: 1.0em;
}

.wrapper header .page-nav {
	float: left;
}

.wrapper header .page-nav .page-nav-root {
	font-weight: bold;
	font-size: 1.3em;
	margin-right: 10px;
}

.wrapper header .page-nav .page-nav-breadcrumb {
	font-size: 1.2em;
}

.wrapper header .input-group {
	display: block;
	float: right;
	text-align: right;
	width: auto;
}

.wrapper header .input-group div {
	display: inline-block;
	margin: 0;
}

.wrapper header .input-group div.row {
	display: block;
	text-align: right;
}

.wrapper header .input-group div label {
	text-align: right;
}

.wrapper header .input-group button {
	margin-bottom: 4px;
}

.wrapper header .input-group input:not([type="submit"]), .wrapper header .input-group select {
	line-height: 20px;
	color: #808084;
}

/* Dropdown select alignment is determined by the flexbox configuration, setting text alignment causes issues (#3925) */
.wrapper header .input-group .dropdown-select {
	text-align: initial;
	z-index: 999;
}

.community-map-page .wrapper header {
	display: none;
}

.btn-secondary {
	background-color: #EEEEEE;
	color: rgb(128, 128, 132);
}

div.btn-container {
	margin: 5px;
	padding: 5px;
}

div.left {
	float: left;
}

div.right {
	float: right;
}

.table td, .table th {
	padding: 0.5rem;
}

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

div.half {
	width: 50%;
}

.info-table {
	overflow: auto;
	min-height: 0px;
	padding: 0;
}

.info-table .info-table-header {
	font-size: 1.2em;
	padding: 10px;
}

.info-table table {
	margin-bottom: 0;
	z-index: 1 !important;
}

span.fa-check {
	color: #00aeef;
}

table.end-shift-details {
	margin-bottom: 15px;
}

table.end-shift-details td {
	text-align: left;
}

table.end-shift-details td.row-label {
	font-weight: bold;
	text-align: right;
	padding-right: 15px;
	width: 125px;
}

.pcc-data-management-notice {
	margin: 1rem;
	text-align: center;
}

/* ============================================================================
 * gauges
 * ============================================================================ */

div.gauge-legend {
	text-align: center;
}

div.gauge-legend div {
	display: inline-block;
	width: 120px;
	margin-top: 10px;
	text-align: left;
}

div.canvas-container {
	text-align: center;
	margin: 0 auto;
}

section.tile div.brick-gauge-content {
	margin-top: 5px;
	padding: 0px 20px;
}

section.tile div.canvas-container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	justify-items: center;
}

section.tile div.canvas-container div.display-value {
	font-size: 2em;
	line-height: 1.1em;
}

section.summary-tile div.canvas-container {
	position: absolute;
	right: 20px;
	top: 15px;
}

section.summary-tile div.canvas-container canvas {
	margin: 0 auto;
}

section.summary-tile div.canvas-container div.display-value {
	margin-top: -15px;
}

section.summary-tile div.canvas-container div.display-value, section.summary-tile div.canvas-container div.sub-display-value {
	font-size: 0.9em;
	line-height: 16px;
}

/* ============================================================================
 * floorplan stying
 * ============================================================================ */

div.modal div.floorplan-map {
	height: 500px;
}

#floorplan-container .no-floorplan {
	padding: 15px;
	text-align: center;
}

#floors {
	background-color: white;
	color: #000;
	padding: 5px;
	width: auto;
	z-index: 400;
}

#basic-map #floors {
	position: absolute;
	top: 15px;
	right: 15px;
}

section.community-map {
	border: 0 none;
	padding: 0px;
}

section.community-map div.controls {
	background-color: transparent;
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 400;
	color: #000;
	font-size: 0.9em;
}

section.community-map div.controls .control-icons {
	margin-bottom: 5px;
}

section.community-map div.controls .widget-icons {
	float: right;
}

section.community-map div.controls .widget-icons #floors {
	display: inline-block;
	margin-left: 2px;
}

section.community-map div.controls .widget-icons .widget-icon {
	/* allows us to use absolute positioning inside the widget container for things like badges */
	position: relative;

	display: inline-block;
	margin: 2px;
	background-color: #fff;
	/* offset-x | offset-y | blur-radius | spread-radius | color */
	box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.46);
	width: 30px !important;
	height: 30px;
	text-align: center;
	cursor: pointer;
	padding: 4px 5px 3px 5px;
	border-radius: 2px;
	font-size: 1.2em;
}

section.community-map div.controls .widget-icons #staff-mfactor img {
	margin-top: -4px;
	height: 23px;
}

section.community-map .community-map-widget {
	color: #000;
	display: none;
	background-color: #fff;
	/* offset-x | offset-y | blur-radius | spread-radius | color */
	box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.46);
	position: absolute;
	top: 35px;
	right: 2px;
	text-align: left;
	padding: 5px;
}

section.community-map div.controls .widget-icons .widget-icon.active {
	background-color: #00aeef;
	color: white;
}

section.community-map div.controls .widget-icons .widget-icon.warning {
	background-color: #cc0000;
	color: white;
}

section.community-map div.controls .widget-icons .widget-icon .badge {
	background-color: #FF0000;
	padding: 2px 4px;
	position: absolute;
	top: -4px;
	right: -2px;
	left: inherit;
}

section.community-map #filter-widget {
	width: 300px;
	z-index: 1;
}

section.community-map #filter-widget h3 {
	font-size: 1.1em;
}

section.community-map #filter-widget .list-container {
	width: 100%;
}

section.community-map #filter-widget .list-builder {
	width: 100%;
}

section.community-map #snooze-widget {
	width: 370px;
}

section.community-map #snooze-widget div.snooze-item {
	padding: 5px 2px 5px 2px;
}

section.community-map #snooze-widget div.snooze-item:nth-of-type(odd) {
	background: #F3F3F3;
}

section.community-map #snooze-widget div.snooze-item div.alert-type {
	float: left;
	margin-right: 5px;
}

section.community-map #snooze-widget div.snooze-item div.snooze-details {
	float: left;
	line-height: 20px;
}

section.community-map #snooze-widget div.snooze-item div.snooze-details .alert-person {
	font-weight: bold;
}

section.community-map #snooze-widget div.snooze-item button {
	float: right;
	height: 40px;
}

section.community-map #snooze-widget div.snooze-item button a {
	color: white;
	text-decoration: none;
}

section.community-map #hardware-widget > div {
	margin-top: 2px;
	margin-bottom: 2px;
}

section.community-map #markers {
	display: none;
	background-color: #fff;
	padding: 25px;
}

section.community-map #markers i {
	font-size: 100px;
	margin-right: 40px;
}

section.community-map #markers #marker-unassigned {
	color: #c35dc8;
}

section.community-map #markers #marker-resident {
	color: #5ccc1c;
}

section.community-map #markers #marker-resident-i {
	color: #bbbbbb;
}

section.community-map #markers #marker-resident-scheduled-check-overdue {
	color: #d9534f;
}

section.community-map #markers #marker-staff {
	color: #00aeef;
}

section.community-map #markers #marker-staff-i {
	color: #777777;
}

section.community-map #markers #marker-alert-high {
	color: #d9534f;
}

section.community-map #markers #marker-alert-low {
	color: #ec971f;
}

section.community-map #markers #marker-alert-claimed {
	color: #ec971f;
}

section.community-map div.follow-list {
	float: right;
	width: 325px;
}

section.community-map div.follow-details {
	background-color: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.46);
	margin-bottom: 5px;
}

section.community-map div.follow-details .actions-container {
	background-color: white;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 5px;
}

section.community-map div.follow-details .actions-container .alert-action {
	display: none;
}

section.community-map div.follow-details .actions-container button {
	height: 40px;
	margin-bottom: 5px;
	width: 100%;
}

section.community-map div.follow-details div.header i.icon {
	float: left;
	margin-top: 5px;
	margin-left: 5px;
}

section.community-map div.follow-details div.header div.header-row i.icon.mdi {
	margin-top: 1px;
	font-size: 1.5em;
}

section.community-map div.follow-details a.person-focus {
	color: white;
}

#residents td span.enabled, i.mdi.enabled, i.fa.enabled, i.fas.enabled, i.far.enabled, i.fad.enabled {
	color: #5bc0de;
}

i.mdi.fall-risk {
	display: inline-block;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
}

section.community-map div.follow-details div.header .name {
	float: left;
	font-weight: bold;
	padding: 0 0 3px 5px;
	display: inline-block;
	width: 275px;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}

div.header i.fa-times {
	cursor: pointer;
	float: right;
	font-size: 1.3em;
	padding: 2px 6px 2px 0;
}

section.community-map div.follow-details div.header {
	padding: 3px 0 3px 0;
}

section.community-map div.follow-details div.header div.header-row {
	color: #fff;
}

section.community-map div.follow-details div.header div.details {
	font-size: 0.8em;
	padding: 0px 5px 3px 5px;
	margin-bottom: 1px;
}

section.community-map div.follow-details div.header div.details .header-row {
	line-height: 20px;
}

section.community-map div.follow-details div.header div.details .alert-type {
	float: left;
}

section.community-map div.follow-details div.header div.details .timestamp {
	float: right;
}

section.community-map div.follow-details div.sub-header {
	background-color: #fff;
	color: #000;
	font-size: 0.9em;
	padding: 4px 5px 4px 5px;
	line-height: 20px;
}

section.community-map div.follow-details div.sub-header .liveable {
	float: left;
	margin-right: 5px;
}

section.community-map div.follow-details div.sub-header .liveable i {
	font-size: 1.1em;
}

section.community-map div.follow-details div.sub-header .current-location {
	float: left;
}

section.community-map div.follow-details div.sub-header .timestamp {
	float: right;
}

section.community-map div.follow-icons {
	display: none;
}

section.community-map div.follow-icons div.follow-icon {
	background-color: #FF0000;
	color: #FFF;
	display: inline-block;
	margin: 2px;
	padding: 2px;
	cursor: pointer;
	text-align: center;
	width: 32px;
	height: 32px;
	border-radius: 2px;
	/* offset-x | offset-y | blur-radius | spread-radius | color */
	box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.46);
	font-size: 1.2em;
}

section.community-map div.exited {
	background-color: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.46);
	color: #000;
}

section.community-map div.exited h3 {
	margin-left: 5px;
	float: left;
}

section.community-map div.exited .toggle-collapse {
	float: right;
	cursor: pointer;
}

#no-marker-dialog .modal-body span {
	font-weight: bold;
}

.user-information {
	display: none;
}

/***************************************************************************************** */
/* Tablesorter */
/***************************************************************************************** */

div.table-container {
	margin: 0;
	padding: 0;
	overflow: auto;
}

.tablesorter-record-count-container {
	margin-left: 20px;
}

.tablesorter-bootstrap .tablesorter-pager {
	padding: 4px;
} 

.tablesorter-bootstrap .tablesorter-header {
	padding: 4px;
}

span.comparison {
	color: #bf1200;
}

span.comparison.green {
	color: #92eb25;
}

.fa-duotone-custom {
	--fa-primary-color: rgb(0, 175, 245, 1);
	--fa-secondary-color: rgb(132, 143, 139, 1);
	--fa-secondary-opacity: 1.0;
}

.fa-duotone-custom-inverted {
	--fa-primary-color: rgb(132, 143, 139, 1);
	--fa-secondary-color: rgb(0, 175, 245, 1);
	--fa-secondary-opacity: 1.0;
}

/***************************************************************************************** */
/* Report Filters */
/***************************************************************************************** */

#report-filter div.justify-content-end {
	padding-top: 8px;
	margin-right: 4px;
}

#report-filter div.justify-content-end label {
	padding-top: 8px;
	margin-right: 10px;
}

#report-filter #personId option.deleted {
	display: none;
}

/***************************************************************************************** */
/* Responsiveness */
/***************************************************************************************** */

@media (max-width : 1350px) {
	section.tile {
		width: 33.3%;
	}
	section.summary-tile {
		width: 50% !important;
	}
	.graph-tile {
		width: 100% !important;
	}
	.graph-tile-md-4 {
		width: 50% !important;
	}
	.graph-tile-lg-8 {
		width: 50% !important;
	}
	.tall-graph-tile {
		width: 100% !important;
	}
}

@media (max-width : 1150px) {
	section.tile {
		width: 50%;
	}
}

@media (max-width : 990px) {
	div.family-dashboard section.family-profile {
		float: none;
		margin: 0 auto;
		width: 400px;
		height: 365px;
		margin-bottom: 5px;
	}
	div.modal div.floorplan-map {
		height: 400px;
	}
}

@media (max-width: 850px) {
	section.tile {
		width: 100%;
	}
}

@media (max-width: 768px) {
	section.summary-tile {
		width: 100% !important;
		min-height: 225px;
	}
	.graph-tile {
		width: 100% !important;
	}
	.graph-tile-sm-4 {
		width: 100% !important;
		min-height: inherit;
	}
}

@media (max-width: 750px) {
	div.communication-center-edit .to-contact-selecter:first-child {
		padding-right: 0px;
	}
	div.communication-center-edit .to-contact-selecter {
		width: 100%;
		float: none;
	}
}

@media ( max-width : 660px) {
	section.graph-tile, section.report div.graph-tile {
		width: 100%;
		min-height: 200px;
	}
	div.half {
		width: 100%;
	}
	div.message-lightbox div.message-heading .sub-heading div {
		width: 100%;
		float: none;
	}
	div.message-lightbox div.message-heading .sub-heading div.sentAt {
		text-align: left;
	}
}

@media (max-width: 633px) {
	.graph-tile, .graph-tile {
		width: 100% !important;
		min-height: inherit;
	}
}

@media ( max-width : 585px) {
	section header div.input-group {
		width: 100%;
	}
	section header div.input-group button {
		margin-bottom: 2px;
	}
	section header div.input-group div.mobile-row {
		display: block;
		text-align: right;
	}
	header.site-header .title {
		display: none;
	}
	#message-list {
		width: 95%;
	}
}

@media ( max-width : 481px) {
	table {
		display: block;
	}
	table.no-fit-mobile {
		display: table;
	}
}

@media ( max-width : 449px) {
	section.wide-tile .wide-tile-contents {
		margin-top: 5px;
	}

	.certified-community-status-badge img {
		width: 150px;
	}

	.user-controls .panel h1.panel-title {
		margin: 0.5em;
	}

	.user-controls {
		font-size: 1.5em;
		line-height: 1.5em;
	}

	.user-controls .btn.btn-block {
		font-size: 1em;
		margin-bottom: 0.7em;
	}

	.user-controls .form-group label {
		margin-bottom: 0.3em;
	}

	.pcc-dialog .form-group label {
		margin-bottom: 0em;
	}

	.pcc-dialog .form-group div.entry {
		margin-bottom: 0.3em;
	}

	table.end-shift-details {
		font-size: 0.7em;
	}

	table.end-shift-details tr {
		margin-bottom: 15px;
	}

	div.page-header-links div.left, div.page-header-links div.right {
		display: block;
		float: none;
		text-align: left;
	}
	div.page-header-links div.left > *, div.page-header-links div.right > * {
		display: block;
		margin: 4px;
	}
	div.page-header-links div button {
		width: 100%;
	}
	.wrapper > div {
		padding-right: 0px;
		margin-bottom: 0px;
	}
	.narrow-panel {
		margin: 10px 10px 0px 10px;
	}
	.padded-panel {
		padding: 10px;
	}
	.login-panel {
		margin-top: 50px;
	}
	.wrapper header {
		padding: 5px;
	}
	.wrapper header .page-nav {
		float: none;
	}
	.wrapper header .generated-at {
		font-size: 0.9em;
	}
	section {
		border: 0;
		margin-bottom: 5px;
	}
	section.tile {
		height: 215px;
	}
	section.tile div.brick-gauge-content {
		padding: 0px 45px;
	}
	div.family-dashboard section.tile.family-profile {
		float: none;
		margin: 0 auto;
		width: 300px;
		height: 280px;
		margin-bottom: 5px;
	}
	div.family-dashboard section.tile.family-profile h2 {
		font-size: 1.2em;
	}
	header.site-header .logo img, header.network-header img {
		margin-left: 5px;
		margin-top: 5px;
		height: 52px;
	}
	header.site-header .widgets #open-alerts-container a {
		color: #d9534f;
		font-size: 2.8em;
		visibility: hidden;
	}
	header.site-header .widgets #open-alerts-container a span.battery-quarter-spacer {
		font-size: 0.7em;
		position: relative;
		top: -4px;
	}
	header.site-header {
		padding: 5px;
		height: 70px;
		background-color: #0068b3;
		color: #fff;
	}
	header.site-header .widgets .icon {
		font-size: 2.8em;
	}
	section.resident-photo {
		height: 180px;
	}
	.resident-photo-image {
		background-size: 223px;
	}
	.checkin-details {
		font-size: 0.8em;
		margin-top: 15px;
		margin-left: 0px;
	}
	.checkin-details span:first-child {
		display: block;
		line-height: 16px;
	}
	section.graph-tile, section.report div.graph-tile {
		min-height: 200px;
		height: inherit;
	}
	section.summary-tile {
		padding: 5px;
	}
	section.summary-tile .dl-horizontal, .summary-tile table {
		font-size: 0.9em;
	}
	body.community-map-page header.site-header .widgets #open-alerts-container {
		display: none;
	}
	body.community-map-page div.modal-footer .btn {
		font-size: 1.7em;
	}
	body.community-map-page h4.modal-title {
		font-size: 1.6em;
	}
	body.community-map-page div.modal-body p {
		margin-bottom: 1em;
	}
	section.community-map div.controls {
		width: 100%;
		left: 0px;
		top: 1px;
	}
	section.community-map div.controls .control-icons {
		margin-bottom: 0;
	}
	section.community-map div.controls .widget-icons #floors {
		font-size: 1.4em;
		height: 44px;
	}
	section.community-map .community-map-widget {
		top: 46px;
		left: 2px;
		font-size: 1.3em;
	}
	section.community-map div.controls div.widget-icons {
		float: left;
	}
	section.community-map div.controls div.widget-icons .widget-icon {
		font-size: 1.7em;
		padding-top: 12px !important;
		width: 45px !important;
		height: 45px;
		margin: 3px;
	}
	section.community-map div.controls .widget-icons #staff-mfactor img {
		margin-top: -7px;
		height: 34px;
	}
	section.community-map div.follow-icons div.follow-icon {
		font-size: 2.1em;
		padding-top: 10px;
		width: 45px;
		height: 45px;
		margin: 3px;
	}
	section.community-map div.follow-icons div.follow-icon i.fas {
		line-height: inherit;
	}
	section.community-map div.follow-icons {
		display: block;
	}
	section.community-map div.follow-details {
		display: none;
	}
	section.community-map div.follow-details.highlighted {
		display: block;
	}
	section.community-map div.follow-details div.header div.header-row {
		font-size: 1.3em;
	}
	section.community-map div.follow-details div.header .name {
		padding-top: 1px;
		width: 295px;
	}
	section.community-map div.follow-details .actions-container form button {
		font-size: 1.1em;
	}
	section.community-map div.follow-list {
		width: 100%;
		padding: 5px;
	}
	.scheduled-checks-widget-list {
		width: 98%;
		margin: 0 auto;
	}
	section.community-map #snooze-widget {
		width: 98%;
		margin: 0 auto;
	}
	.info-table .info-table-header {
		margin-top: 5px;
		margin-bottom: 7px;
		margin-left: 4px;
	}
	#shift-details-form .form-group {
		margin-bottom: 0.25rem;
	}

	/* ================================================================================================
		Scheduled Checks Mobile
	================================================================================================ */

	.scheduled-checks-widget-list div.current-check-items div.check-item {
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.scheduled-checks-widget-list {
		font-size: 1.1em;
	}

	.scheduled-checks-widget-list .current-check-items div.check-item button {
		font-size: 1.0em;
		height: 70px;
	}

	.scheduled-checks-widget-list div.person-details {
		width: 180px;
	}

}

@media ( max-width : 300px) {
	section div.reports {
		width: 100%;
	}
}

/* For phone only */
@media ( min-width : 449px) {
}

/* For tablet-portrait up */
@media ( min-width : 600px) {
}

/* For tablet-landscape up */
@media ( min-width : 900px) {
	.subwrapper {
		width: 50%;
		float: left;
	}
}

/* For desktop up */
@media ( min-width : 1200px) {
}

/* For big desktop up */
@media ( min-width : 1800px) {
}

#warning-banner-container div {
	color: #712b29;
	background-color: #f7dddc;
	border-color: #f4cfce;
	text-align : center;
	padding: .75rem 1.25rem;
	display : none;
}