table.reporting-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 2px;
  margin-top: 5px;
}
table.reporting-table td,
table.reporting-table th {
  font-size: 9px;
  text-align: left;
  padding: 0 0 0 8px;
  text-overflow: ellipsis;
  word-break: break-word;
  white-space: nowrap;
  overflow: hidden;
  max-width: 117px;
}
table.reporting-table thead th {
  text-transform: uppercase;
  line-height: 17px;
}
table.reporting-table thead th:last-of-type {
  text-align: right;
  padding-right: 13px;
}
table.reporting-table tbody tr {
  background-color: #e6e6e6;
}
table.reporting-table tbody tr.empty-row {
  opacity: 0.3;
}
table.reporting-table tbody tr:nth-child(odd) {
  background-color: #f4f4f4;
}
table.reporting-table tbody td:last-of-type {
  text-align: right;
  padding-right: 13px;
  font-weight: bold;
}
table.reporting-table tbody tr.warning {
  background-color: #ffcece;
}
table.reporting-table .rating-wrapper .rating.rating-small {
  padding: 0 2px 0 0;
}
table.reporting-table .rating-wrapper .rating.rating-small .fa-star-o:before {
  color: black !important;
}
table.reporting-table .rating-wrapper .rating.rating-small .fa-2x {
  font-size: 1.6em;
}
table.reporting-table .rating-wrapper .rating-text {
  font-weight: 400 !important;
  font-size: 8px !important;
}
table.report-usage-table {
  border-spacing: 2px;
}
table.report-usage-table tbody td {
  font-size: 14px;
  padding: 5px 10px;
}
table.report-usage-table tbody td.module-name-cell {
  text-transform: uppercase;
  font-weight: 600;
  background: #fff;
}
table.report-usage-table tbody td:last-of-type {
  text-align: left;
  min-width: 75px;
}
table.report-usage-table tbody td.metric-label {
  min-width: 300px;
  width: 300px;
  max-width: 300px;
  box-sizing: border-box;
}
table.report-usage-table tbody td.metric-value {
  min-width: 270px;
  width: 270px;
  max-width: 270px;
  box-sizing: border-box;
}
.widget-chart {
  margin: 14px -8px 0 -12px;
  height: 260px;
}
.cell.large-3 .widget .bg-widget {
  padding: 17px 19px 14px;
}
.cell.large-6 .widget .bg-widget {
  padding: 17px 27px;
}
.cell.large-6 .widget .bg-widget h2 {
  margin-bottom: 7px;
}
.widget-callout {
  text-align: center;
  padding-bottom: 24px;
}
.widget-callout .callout-title {
  font-size: 8px;
  line-height: 10px;
  text-transform: uppercase;
  color: #261714;
}
.widget-callout .callout-stat {
  color: #797979;
  font-size: 19px;
  line-height: 34px;
}
.widget-callout .callout-text {
  font-size: 10px;
  line-height: 13px;
}
.widget-property-occupation-reporting .callout-stat {
  font-size: 25px;
  line-height: 47px;
}
.reporting-data-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  float: right;
}
.reporting-data-toggle a {
  padding: 0 10px 0;
  display: inline-block;
  border: 1px solid #707070;
  box-sizing: border-box;
  height: 33px;
}
.reporting-data-toggle a:first-child {
  border-right: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.reporting-data-toggle a:last-child {
  border-left: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.reporting-data-toggle a.selected {
  background-color: #1b95f2 !important;
  border-color: #1b95f2;
  color: #fff;
}
.reporting-data-toggle svg {
  padding: 4px 0;
  box-sizing: border-box;
  height: 100%;
}
.widget-usage-dashboard {
  padding-top: 30px;
  padding-bottom: 60px;
  box-shadow: 1px 2px 5px 0px rgba(0, 0, 0, 0.16);
}
a.widget-usage-export {
  background-color: #b3b5b7 !important;
  margin-top: 20px;
}
/****************************************************
    Weather widget
 *******************************************************/
.widget-weather h3 {
  color: #bbb;
  margin-bottom: 1px;
  font-size: 13px !important;
  font-weight: 400 !important;
}
.widget-weather .weather-today h3 {
  position: absolute;
}
.widget-weather .weather-today .grid-x {
  padding-top: 14px;
}
.widget-weather .weather-icon img {
  max-width: 100%;
  width: 80px;
  margin: 0 auto;
  display: block;
}
.widget-weather .weather-item {
  margin-bottom: -4px;
}
.widget-weather .weather-item .weather-temperature {
  text-align: right;
  padding-top: 14px;
}
.widget-weather .weather-item .weather-temperature span {
  padding-top: 4px;
  padding-right: 10px;
  font-size: 18px;
  font-weight: bold;
}
.widget-weather .weather-item .weather-text {
  padding-top: 14px;
}
.widget-weather .weather-item .weather-text span {
  display: inline-block;
  border-left: 2px solid #ccc;
  color: #666;
  padding-top: 4px;
  padding-left: 10px;
  padding-bottom: 10px;
  font-size: 16px;
}
.widget-weather .weather-indicators {
  float: right;
  margin: 10px 0 10px;
}
.widget-weather .weather-indicator {
  display: inline;
}
.widget-weather .indicator-diamond {
  position: relative;
  font-size: 12px;
  padding: 0 3px;
  z-index: 0;
  width: 28px;
  text-align: center;
  display: inline-block;
  margin-left: 6px;
  font-weight: bold;
}
.widget-weather .indicator-diamond:before {
  position: absolute;
  content: ' ';
  background-color: red;
  width: 22px;
  height: 22px;
  transform: rotateZ(45deg);
  z-index: -1;
  left: 5px;
  top: -1px;
}
.indicator-diamond-vh:before {
  background-color: #f75b5b !important;
}
.indicator-diamond-m:before {
  background-color: #ffc620 !important;
}
.indicator-diamond-l:before {
  background-color: #43af35 !important;
}
.widget-weather .indicator-text {
  display: inline;
  font-size: 12px;
  margin-left: -3px;
}
.weather-future .weather-temperatures {
  padding-right: 25%;
  padding-top: 12px;
  box-sizing: border-box;
  text-align: right;
}
.weather-future .weather-temperature.temp-low {
  font-size: 14px;
  text-align: right;
}
.weather-future-item .weather-temperature {
  font-weight: 600;
}
/****************************************************
    Availability Table - Should move to own css file
 *******************************************************/
.availability-table-wrapper {
  padding: 0 5%;
}
table.availability-table {
  width: 100%;
  margin-bottom: 12px;
  table-layout: fixed;
  position: relative;
}
table.availability-table caption {
  position: absolute;
  bottom: 8px;
  font-size: 11px;
  background-color: #ffffff99;
  padding: 0;
  line-height: 16px;
  left: 50%;
  width: 80%;
  transform: translateX(-50%);
}
table.availability-table thead th {
  position: relative;
  height: 22px;
}
table.availability-table thead th span {
  position: absolute;
  left: -8px;
  padding: 0;
  font-size: 10px;
  font-weight: normal;
}
/*table.availability-table thead th:last-child span {*/
/*    right: -8px;*/
/*    top: -10px;*/
/*}*/
table.availability-table.hide-alternate-hour thead th:nth-child(even):not(:last-child) {
  visibility: hidden;
}
table.availability-table thead tr.marker-row {
  border-left: 1px solid #d8d8d8 !important;
  border-right: 1px solid #d8d8d8 !important;
}
table.availability-table thead tr.marker-row th {
  height: 8px;
}
table.availability-table thead tr.marker-row th:nth-child(odd) {
  border-left: 1px solid #d8d8d8 !important;
}
table.availability-table tbody td {
  height: 32px;
  padding: 0;
  background-color: white;
  border-top: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8;
}
table.availability-table tbody td {
  background-color: white;
  vertical-align: middle;
}
table.availability-table tbody td:not(.booked) {
  border-left: 1px solid #f5f5f5;
}
table.availability-table tbody td.booked {
  background-color: #f5f5f5 !important;
}
table.availability-table tbody td.booked.booked-by-user {
  background-color: #40ca3f !important;
}
table.availability-table tbody td.unavailable {
  background: repeating-linear-gradient(-45deg, #cccccc, #cccccc 2px, #dbdbdb 2px, #dbdbdb 4px);
  border-left: 1px solid #ccc;
}
table.availability-table tbody td.sub-1,
table.availability-table tbody td:first-of-type {
  border-left: 1px solid #d8d8d8 !important;
}
table.availability-table tbody td:last-of-type {
  border-right: 1px solid #d8d8d8;
}
table.availability-table-divider td {
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
}
table.availability-table-divider td:first-child {
  width: 18%;
}
table.availability-table-labels thead tr.marker-row,
table.availability-table-labels thead tr.marker-row th:first-child {
  border-left: none !important;
}
table.availability-table-labels tbody tr td,
table.availability-table-labels tbody tr td:first-of-type {
  border: none !important;
  font-size: 10px;
  background: transparent !important;
  text-align: right;
  padding-right: 9px;
  overflow: hidden;
  white-space: nowrap;
}
table.availability-table {
  pointer-events: none !important;
}
.widget-facilities h4,
.widget-bookings h4 {
  margin-bottom: 4px;
}
.widget-facilities .btn-custom,
.widget-bookings .btn-custom {
  line-height: 26px;
  min-height: 0;
  padding: 0 9px 0;
  text-align: center;
}
.widget-facilities table thead tr th,
.widget-bookings table thead tr th {
  width: 30%;
}
.widget-facilities table thead tr th:first-child,
.widget-bookings table thead tr th:first-child {
  width: 39%;
}
.widget-facilities .user-facility-booking:not(:last-child),
.widget-bookings .user-facility-booking:not(:last-child) {
  margin-bottom: 19px;
}
.widget-facilities .available-facility-booking,
.widget-bookings .available-facility-booking {
  margin-bottom: 8px;
}
.widget-facilities .booking-availability,
.widget-bookings .booking-availability {
  padding: 4px 0 0;
}
.widget-facilities .availability-row,
.widget-bookings .availability-row {
  margin-bottom: 6px;
}
.widget-facilities .user-facility-booking,
.widget-bookings .user-facility-booking {
  margin-bottom: 10px;
}
.widget-facilities .availability-row,
.widget-bookings .availability-row {
  margin-bottom: 3px;
}
.widget-facilities .availability-row div,
.widget-bookings .availability-row div {
  display: inline-block;
  box-sizing: border-box;
  font-size: 13px;
}
.widget-facilities .availability-date,
.widget-bookings .availability-date {
  width: 35%;
  padding-top: 1px;
}
.widget-facilities .availability-message,
.widget-bookings .availability-message {
  width: 63%;
  padding: 0;
}
.widget-facilities .availability-button,
.widget-bookings .availability-button {
  display: block;
  width: 63%;
  padding: 4px 0 0;
}
.widget-facilities .availability-button .btn-custom,
.widget-bookings .availability-button .btn-custom {
  min-width: 0 !important;
  display: block;
  font-size: 12px;
  line-height: 26px;
  margin-bottom: 0;
}
.widget-facilities .border-msg,
.widget-bookings .border-msg {
  display: inline-block;
  box-sizing: border-box;
  border: 1px solid green;
  border-radius: 4px;
  width: 100%;
  text-align: center;
  padding: 0 4px;
  text-transform: uppercase;
  font-size: 11px;
  line-height: 20px;
  color: green;
}
.widget-facilities .border-msg.color-green,
.widget-bookings .border-msg.color-green,
.widget-bookings .border-msg.color-green a {
  color: green;
  border-color: green;
}
.widget-facilities .border-msg.color-yellow,
.widget-bookings .border-msg.color-yellow,
.widget-bookings .border-msg.color-yellow a {
  color: orange;
  border-color: orange;
}
.widget-facilities .border-msg.color-red,
.widget-bookings .border-msg.color-red,
.widget-bookings .border-msg.color-red a {
  color: red;
  border-color: red;
}
.widget-facilities .facility-availability-text,
.widget-bookings .facility-availability-text {
  font-size: 13px;
  color: #5a5a5a;
  margin: 14px 0;
}
.widget-announcements h2 {
  font-size: 22px !important;
  font-weight: 400 !important;
  margin-bottom: 18px !important;
}
.widget-controls {
  min-height: 33px;
}
.widget-controls .select2-container {
  border: 1px solid #000 !important;
  min-width: 0;
  vertical-align: top;
}
.widget-controls .select2-container:after {
  display: block;
  position: absolute;
  content: ' ';
  width: 30px;
  height: 18px;
  top: 0;
  right: 0;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
  pointer-events: none;
}
.widget-controls .select2-choices {
  box-sizing: border-box;
  min-width: 175px;
  max-width: 175px;
  display: -webkit-box;
  display: -webkit-inline-box;
  display: -moz-inline-box;
  overflow: hidden;
}
.widget-controls .select2-choice {
  min-height: 0;
  font-size: 9px;
  line-height: 15px;
  height: 14px;
  border: none !important;
}
.widget-controls .select2-choice:first-of-type {
  margin-left: 8px;
}
.widget-controls .select2-choice .select2-chosen {
  margin-right: 28px;
}
.widget-controls .select2-choice .select2-arrow {
  background: transparent;
  width: 20px;
}
.widget-controls .select2-choice .select2-arrow b {
  background: transparent;
}
.widget-controls .select2-choice .select2-arrow b:before {
  font-size: 11px;
  line-height: 17px;
}
.widget-controls .select2-search-choice:first-of-type {
  margin-left: 9px !important;
}
.widget-controls .reporting-select2-dropdown.select2-container-multi {
  min-width: 177px;
  max-width: 177px;
  height: 20px;
}
.widget-controls button {
  vertical-align: top;
  padding: 4px 8px;
  margin-bottom: 0;
  min-height: 0;
  height: 20px;
  min-width: 0;
  font-size: 8px;
  line-height: 10px;
  outline: none;
}
.widget-controls button i {
  font-size: 13px;
}
.reporting-select2-container {
  width: 400px !important;
  max-width: 100% !important;
}
.reporting-select2-dropdown.select2-container-multi {
  display: inline-block !important;
  min-height: 17px;
  min-width: 50px;
}
.reporting-select2-dropdown.select2-container-multi .select2-search-field {
  height: 15px;
}
.reporting-select2-dropdown.select2-container-multi .select2-search-field input {
  width: 150px;
  font-size: 9px;
  line-height: 10px;
  margin: 0px;
  min-height: 15px;
  padding: 0px 4px;
  vertical-align: top;
  height: 15px !important;
}
.reporting-select2-dropdown.select2-container-multi .select2-choices {
  min-height: 17px;
  padding: 1px 10px 0 2px;
}
.reporting-select2-dropdown.select2-container-multi .select2-search-choice {
  margin: 1px 2px 1px 0;
  padding: 0 17px 0 3px;
  border: none;
  border-radius: 5px;
  font-size: 9px;
  line-height: 14px;
  background-color: #e2e2e2 !important;
}
.reporting-select2-dropdown.select2-container-multi .select2-search-choice-close {
  right: 3px !important;
  left: initial !important;
  top: 0px;
}
.reporting-select2-dropdown.select2-container-multi .select2-search-choice-close:before {
  font-size: 9px;
}
.widget-control-layout .control-group {
  display: inline-block;
  margin-right: 8px;
}
.widget-control-layout .control-label {
  font-size: 11px;
  text-transform: uppercase;
}
.widget-controls form {
  text-align: right;
}
.widget-controls .control-group {
  margin-right: 0;
}
.widget-controls .control-label {
  font-size: 8px;
  line-height: 8px;
  margin-bottom: 3px;
  text-transform: uppercase;
  text-align: left;
}
.global-widget-controls .btn-apply {
  padding: 1px 16px;
  min-height: 23px;
  line-height: 12px;
  vertical-align: top;
  min-width: 30px;
}
.global-widget-controls .btn-apply .btn-apply-label {
  font-size: 10px;
  display: inline-block;
}
.global-widget-controls .btn-apply i {
  display: inline-block;
  font-size: 12px;
}
.global-widget-controls .btn-apply[disabled] {
  pointer-events: none;
  background-color: #d5d5d5 !important;
}
.global-widget-controls .reporting-select2-dropdown.select2-container-multi {
  min-width: 200px;
  max-width: 200px;
  min-height: 23px;
  border: 1px solid #261714;
  vertical-align: top;
}
.global-widget-controls .reporting-select2-dropdown.select2-container-multi .select2-search-field input {
  padding: 2px 6px !important;
  font-size: 11px !important;
  width: 166px !important;
}
.global-widget-controls .reporting-select2-dropdown.select2-container-multi .select2-search-choice {
  margin: 3px 1px;
  padding: 0 19px 0 3px;
  font-size: 9px;
}
.global-widget-controls .reporting-date-picker-input {
  display: inline-block;
  background-color: #133c55 !important;
  width: 166px;
  content: 'date-range';
  color: white;
  font-size: 12px;
  padding: 4px 9px;
  line-height: 15px;
  min-height: 0;
  vertical-align: top;
  text-align: center;
  cursor: pointer;
}
.daterangepicker .calendar-table td,
.daterangepicker .calendar-table th {
  min-width: 20px !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 0 !important;
  font-size: 11px !important;
  line-height: 20px !important;
}
.daterangepicker .calendar-table th {
  padding: 3px 5px 3px !important;
}
.widget .pagination-controls {
  width: 100%;
}
.widget-pagination-btn {
  font-size: 11px;
  text-decoration: underline;
}
.widget-pagination-btn:hover {
  opacity: 0.8;
}
.widget-pagination-btn.next {
  float: right;
}
.widget-pagination-btn.disabled {
  display: none;
  pointer-events: none;
  cursor: default;
  opacity: 0.5;
}
.widget-pagination-btn.disabled:hover {
  opacity: 0.5;
}
.widget-controls .btn-group {
  font-size: 0;
  padding-bottom: 0;
  margin: 0px;
}
.widget-controls .btn-group li {
  display: inline-block;
  padding-bottom: 0;
}
.widget-controls .btn-group button {
  padding: 2px 12px;
  height: 20px;
  min-width: 60px;
  font-size: 9px;
  line-height: 11px;
  background-color: transparent !important;
  border: 1px solid gray !important;
  color: black !important;
  transition: 0.3s ease;
}
.widget-controls .btn-group button:hover {
  opacity: 0.7 !important;
}
.widget-controls .btn-group li:first-of-type button {
  border-top-left-radius: 2px !important;
  border-bottom-left-radius: 2px !important;
}
.widget-controls .btn-group li:last-of-type button {
  border-top-right-radius: 2px !important;
  border-bottom-right-radius: 2px !important;
}
.widget-controls .btn-group li:not(:first-of-type) button {
  border-left: none !important;
}
.widget-controls .btn-group li:not(:last-of-type) button {
  border-right: none !important;
}
.widget-controls .btn-group button.active {
  background-color: #133c55 !important;
  border-color: #133c55 !important;
  color: #ffffff !important;
  pointer-events: none;
  cursor: default;
}
.widget-config-back {
  display: block;
  font-size: 12px;
}
.widget-config {
  padding-top: 0;
}
.widget-config section {
  padding: 20px 0 20px;
}
.widget-config .ui-state-default {
  border: none;
  border-radius: 0;
  margin: 0;
}
.widget-config .ui-sortable {
  box-sizing: border-box;
  margin: 0 -7px;
  background-color: #eeeeee;
}
.widget-config .sortable-widget {
  box-sizing: border-box;
  padding: 7px;
  background-color: transparent;
}
.widget-config .sortable-widget-inner {
  position: relative;
  width: 100%;
  height: 64px;
  box-sizing: border-box;
  padding: 10px;
  border-radius: 8px;
  box-shadow: 1px 2px 5px 0px rgba(0, 0, 0, 0.16);
  cursor: move;
  border: none;
  background-color: white;
}
.widget-config .widget-dropzone {
  border: 3px dashed #b4b4b4;
  box-shadow: none;
  color: #6c6c6c;
  text-align: center;
  margin-top: 0;
  font-size: 14px;
  line-height: 27px;
}
.widget-config .widget-dropzone div {
  display: none;
}
.widget-config .sortable-widget-dropzone.dropzone-original .widget-dropzone div {
  display: block;
}
.widget-config .widget-handle,
.widget-config .widget-handle:before,
.widget-config .widget-handle:after {
  content: ' ';
  display: inline-block;
  position: absolute;
  width: 20px;
  height: 3px;
  background-color: #e6e5e5;
}
.widget-config .widget-handle {
  position: relative;
  margin-left: 6px;
  margin-right: 13px;
  top: -1px;
}
.widget-config .widget-handle:before {
  top: -6px;
}
.widget-config .widget-handle:after {
  bottom: -6px;
}
.widget-config .handle-thin {
  display: inline-block;
  margin-top: 0;
  margin-right: 4px;
  position: absolute;
  top: calc(50% - 3px);
  transform: translateY(-50%);
}
.widget-config .handle-thin .widget-handle,
.widget-config .handle-thin .widget-handle:before,
.widget-config .handle-thin .widget-handle:after {
  width: 3px;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.widget-config .handle-thin .widget-handle:before {
  top: -8px;
}
.widget-config .handle-thin .widget-handle:after {
  bottom: -8px;
}
.widget-config i.widget-icon {
  display: inline-block;
  position: absolute;
  top: calc(50% - 1px);
  left: 27px;
  transform: translateY(-50%);
  font-size: 16px;
  color: #888;
}
.widget-config .widget-title {
  display: inline-block;
  position: absolute;
  left: 51px;
  top: 50%;
  transform: translateY(-50%);
  max-width: calc(100% - 73px);
  margin-left: 4px;
  font-size: 15px;
  line-height: 19px;
  font-weight: 600;
  vertical-align: middle;
  color: #999;
}
.widget-config .sortable-widget.small-3 .widget-title {
  font-size: 13px;
  line-height: 16px;
}
.widget-config .widget-active-switch {
  display: inline-block;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.widget-config .widget-button {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0.5;
}
.widget-config .widget-button i {
  left: 0;
  font-size: 20px;
}
.widget-config .widget-button:hover {
  opacity: 0.8;
  cursor: pointer;
}
.widget-config.config-layout-1d {
  max-width: 500px;
}
.widget-config.config-layout-1d .widget-handle {
  top: 7px;
}
.widget-config.config-layout-1d i.widget-icon {
  left: 54px;
}
.widget-config.config-layout-1d .widget-title {
  left: 88px;
  transform: translateY(-58%);
}
.widget-config.config-layout-2d .widget-active-layout {
  box-sizing: border-box;
  padding-right: 10px;
}
.widget-config.config-layout-2d .widget-sidebar {
  box-sizing: border-box;
  padding-left: 35px;
}
#sortableActive .widget-add {
  display: none;
}
#sortableInactive .sortable-widget {
  padding: 7px 7px 0;
}
#sortableInactive .sortable-widget:last-of-type {
  padding-bottom: 7px;
}
#sortableInactive .sortable-widget-inner {
  height: 42px;
  padding: 6px 10px;
  opacity: 0.7;
}
#sortableInactive .widget-title {
  font-size: 12px;
  line-height: 18px;
  left: 48px;
}
#sortableInactive i.widget-icon {
  transform: scale(0.75) translateY(-13px) translateX(-8px);
}
#sortableInactive .widget-button {
  top: 56%;
}
#sortableInactive .widget-remove {
  display: none;
}
.widgets-full-width .cell.small-6,
.widgets-full-width .cell.small-4,
.widgets-full-width .cell.small-3 {
  width: 100%;
}
.feed-item .title-bar {
  position: relative;
  margin-bottom: 1rem;
}
.feed-item .title-bar.menu-parent {
  position: relative;
}
.feed-item .title-bar .menu-nav {
  position: absolute;
  top: 0;
  right: -15px;
}
.feed-item .title-bar h3 small {
  text-transform: none;
  font-size: 11px;
  vertical-align: middle;
  color: lightgrey;
}
.feed-item .announcement ul,
.feed-item .announcement ol {
  font-size: 12px;
  padding: 0 0 5px 0;
}
.feed-item .announcement ul li,
.feed-item .announcement ol li {
  padding: 0;
}
.live-occupancy-space {
  display: flex;
}
.live-occupancy-title {
  margin-left: 10px;
  color: #343A41;
  font-weight: 500 !important;
  font-size: 17px !important;
}
.live-occupancy-image {
  width: 100px;
  height: 100px;
  min-width: 100px;
}
.live-occupancy-column {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.live-occupancy-row {
  display: flex;
}
.live-occupancy-row.spaced {
  justify-content: space-between;
}
.live-occupancy-counts {
  width: 100px;
  margin-left: 10px;
}
.live-occupancy-counts .live-occupancy-capacity {
  color: #343A41;
}
.live-occupancy-counts p,
.live-occupancy-counts span {
  color: #afafaf;
  font-weight: 400;
  font-size: 17px;
}
.live-occupancy-current-count {
  font-size: 17px;
  font-weight: 600;
}
.live-occupancy-graph-bar {
  background: #dddddd !important;
}
.live-occupancy-current-count-normal {
  background: #2e8540 !important;
}
.live-occupancy-current-count-busy {
  background: #d50605 !important;
}
.live-occupancy-graph {
  display: flex;
  margin: 10px 0;
  overflow: scroll;
  scroll-snap-type: x mandatory;
  position: relative;
}
.live-occupancy-graph .graph_bar_wrapper {
  min-width: 17.5px;
}
.live-occupancy-graph::-webkit-scrollbar {
  display: none;
}
.air-quality {
  padding: 10px 10px;
}
.air-quality-space {
  display: flex;
}
.air-quality-score {
  align-items: center;
  border-radius: 50%;
  color: white;
  display: flex;
  height: 60px;
  min-width: 60px;
  justify-content: center;
  width: 60px;
  margin-right: 10px;
}
.air-quality-score .score {
  font-size: 24px;
  margin-right: 2px;
}
.air-quality-score .percentage {
  position: relative;
  top: 5px;
  font-size: 12px;
}
.air-quality-title {
  margin-left: 10px;
  color: #343A41;
  font-weight: 500 !important;
  font-size: 17px !important;
}
.air-quality-column {
  display: flex;
  flex-direction: column;
}
.air-quality-column.centered {
  justify-content: center;
  align-items: center;
}
.air-quality-column.expanded {
  width: 100%;
}
.air-quality-row {
  display: flex;
}
.air-quality-row.spaced {
  justify-content: space-between;
}
.air-quality-row.content-centered {
  align-items: center;
}
.air-quality-row.content-baseline {
  align-items: baseline;
}
.air-quality-details {
  width: 100%;
  margin-left: 10px;
}
.air-quality-details .air-quality-capacity {
  color: #343A41;
}
.air-quality-details .text {
  padding: 0 10px 0 0 !important;
}
.air-quality-details p,
.air-quality-details span {
  color: #afafaf;
  font-weight: 400;
  font-size: 12px;
  padding: 0 !important;
}
.air-quality-current-count {
  font-size: 17px;
  font-weight: 600;
}
.air-quality-graph-bar {
  background: #dddddd !important;
}
.air-quality-current-count-normal {
  background: #2e8540 !important;
}
.air-quality-current-count-busy {
  background: #d50605 !important;
}
.air-quality-offline-text {
  font-weight: 900 !important;
}
.lo-signal_wifi_off {
  font-size: 24px;
}
.air-quality-graph {
  display: flex;
  margin: 10px 0;
  position: relative;
  font-size: 12px;
  color: #a7a7a7;
}
.air-quality-graph .graph_bar_wrapper {
  min-width: 17.5px;
}
.air-quality-graph::-webkit-scrollbar {
  display: none;
}
.air-quality-graph .fa-exclamation-triangle {
  position: absolute;
  top: 0px;
  left: -10px;
  z-index: 22;
}
.air-quality-graph .lo-verified_user {
  position: absolute;
  bottom: 25px;
  left: -10px;
  z-index: 22;
  font-size: 13px;
}
.sensors {
  color: #a7a7a7;
  font-size: 10px;
  padding-left: 22px;
  margin-top: -35px;
  margin-right: 3px;
}
.sensors .sensor-value {
  color: black;
  font-weight: bold;
}
.sensor-details {
  display: flex;
  flex-direction: column;
  text-align: center;
  width: 100%;
  line-height: 14px;
  z-index: 1;
}
.locale-layout .widget-location {
  padding: 0;
}
.locale-layout .widget h2 {
  font-size: 22px;
  font-weight: 400;
  margin-bottom: 7px;
}
.locale-layout .widget h3 {
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 600;
  text-transform: none;
}
.locale-layout .widget h4 {
  margin-bottom: 9px;
  font-size: 11px;
  color: #a2a2a2;
  font-weight: normal;
}
.locale-layout .widget h4:not(:first-child) {
  margin-top: 16px;
}
.locale-layout .widget h5 {
  margin: 15px 0 5px;
  font-size: 11px;
  line-height: 14px;
  color: #3c3c3c;
  text-transform: initial;
  font-weight: normal;
}
.locale-layout .widget .content-padding {
  padding: 10px 11px 8px;
}
.locale-layout .widget i {
  font-style: normal !important;
}
.locale-layout .widget h2 i {
  padding-right: 7px;
  margin-left: -6px;
  font-size: 17px;
  display: inline-block;
}
.locale-layout .widget .bg-widget {
  box-sizing: border-box;
  background-color: white;
}
.locale-layout .widget .bg-widget h2 {
  font-size: 15px;
}
.locale-layout .widget .box-shadow {
  box-shadow: 1px 2px 5px 0px rgba(0, 0, 0, 0.12);
  margin-bottom: 5px;
}
.locale-layout .widget.widget-visitors_visitors strong,
.locale-layout .widget.widget-visitors_popular_times strong {
  font-size: 1.20em;
}
.locale-layout .widget-location-sidebar .widget h2 {
  font-size: 18px;
}
.locale-layout .widget-location-header .widget-config-btn {
  margin-bottom: 19px;
}
.widget-location-dashboard .widget {
  margin-bottom: 0;
}
.widget-location-dashboard .widget .bg-widget {
  height: 380px;
}
.locale-layout .widget-grid .grid-margin-x {
  margin-left: -0.35rem !important;
  margin-right: -0.35rem !important;
}
.locale-layout .widget-grid > .cell {
  margin-left: 0.35rem !important;
  margin-right: 0.35rem !important;
  margin-top: 0.35rem;
  margin-bottom: 0.35rem;
}
.locale-layout .widget-grid > .large-6 {
  width: calc(50% - 0.7rem);
}
.locale-layout .widget-grid > .large-3 {
  width: calc(25% - 0.7rem);
}
.locale-layout .widget-grid > .large-4 {
  width: calc(33.3333% - 0.7rem);
}
/******************************/
/** Common widget styling    **/
/******************************/
.widget-location-content.column-wrapper {
  padding-right: 26px;
}
.widget {
  position: relative;
  transition: opacity 0.2s ease-in-out;
}
.widget.empty {
  opacity: 0.0;
}
.widget .loader {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  place-items: center;
  z-index: 10;
  display: none;
}
.widget .loader .loading-spinner {
  width: 48px;
  height: 48px;
  border: 5px solid var(--siteconfig-ui-btn-stdcolor-rgba);
  border-bottom-color: transparent;
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  animation: spin 1s linear infinite;
}
.widget.loading .loader {
  display: grid;
}
.widget.loading .loader + .widget-inner {
  opacity: 0.5;
}
.widget.loading {
  position: relative;
}
.widget-inner {
  position: relative;
}
/* Table that has a slight negative margin so the content of the cells lines up with left side of previous text */
.widget table.margin-table {
  width: calc(100% + 10px);
  margin-left: -5px;
  margin-right: -5px;
}
.widget table.margin-table thead tr th {
  padding: 0 5px 3px;
  font-size: 10px;
  font-weight: 400;
  color: grey;
}
.widget table.margin-table tbody tr td {
  font-size: 12px;
  padding: 2px 5px;
}
table.distinct-rows-table {
  border-collapse: separate;
  border-spacing: 0 6px;
}
table.distinct-rows-table th {
  font-size: 12px;
  text-align: left;
  padding: 0 7px;
  text-transform: uppercase;
}
table.distinct-rows-table th:first-child {
  border-left: 4px transparent solid;
  padding-left: 10px;
}
table.distinct-rows-table tbody tr {
  box-shadow: 1px 2px 5px 0 rgba(0, 0, 0, 0.12);
}
table.distinct-rows-table td {
  background: white;
  font-size: 12px;
  padding: 7px;
  color: #636363;
  text-align: left;
}
table.distinct-rows-table td:first-child {
  width: 40%;
  border-left: 4px #00a500 solid;
  padding-left: 10px;
}
.widget .box-shadow {
  margin-bottom: 12px;
}
.widget-location-sidebar .widget .box-shadow {
  margin-bottom: 8px;
}
.widget .box-image {
  display: block;
  width: 100%;
  height: 120px;
  object-fit: cover;
}
.widget-reload {
  display: inline-block;
  width: 24px;
  height: 24px;
  line-height: 24px;
  /*background-repeat: no-repeat;*/
  /*background-image: url("/images/widget_icons.png");*/
  /*background-position: -228px -4px;*/
  position: absolute;
  top: 5px;
  right: 0;
  cursor: pointer;
}
.widget-reload:hover {
  opacity: 0.6;
}
.widget-helpdesk h4 {
  margin-bottom: 11px;
}
.widget-helpdesk .content-padding {
  padding: 10px 11px 5px 11px;
}
.info-count-line {
  display: block;
  margin-bottom: 10px;
  transition: opacity 0.3s ease;
}
a.info-count-line:hover {
  opacity: 0.5;
}
a.info-count-line:hover,
a.info-count-line:hover .count,
a.info-count-line:hover .count-text {
  text-decoration: none !important;
}
.info-count-line .count {
  font-size: 22px;
  font-weight: 600;
  color: #333333;
  padding-right: 5px;
}
.info-count-line.red .count {
  color: #c82333;
}
.info-count-line .count-text {
  vertical-align: text-top;
  font-size: 13px;
  color: #797979;
}
.widget-deliveries .delivery-stat {
  font-size: 19px;
  margin-bottom: 5px;
}
.widget-deliveries .delivery-stat small {
  font-size: 14px;
  vertical-align: text-bottom;
}
.widget-deliveries .delivery-stat-comparison {
  font-size: 11px;
  margin-bottom: 6px;
}
.widget-deliveries .delivery-stat-comparison span {
  font-size: 13px;
}
.widget-announcements h3 {
  font-size: 16px !important;
  text-transform: uppercase !important;
}
.widget-information {
  position: absolute;
  top: 10px;
  right: 10px;
  color: #ddd;
  font-size: 18px;
}
@media (max-width: 639px) {
  .widget-location-content.column-wrapper {
    padding-right: 0 !important;
  }
  .widget .large-content-padding {
    padding: 20px 15px;
  }
}
