.container-wide {
    max-width: 1300px !important;
}

/* Mobile scheduling */
.mobile-slot {
  border-radius: 5px;
  border-style: solid;
  border-color: transparent;
  border-width: 2px;
  transition: ease-in-out 0.3s;
}

.slot.mobile-slot.slot-open:hover {
  background-color: orange;
  opacity: 0.5;
  cursor: pointer;
}

.slot.mobile-slot.mobile-slot-appointment-footprint-labor {
  background-color: orange;
  opacity: 0.5;
  font-weight: bolder;
  color: black;
}

.slot.mobile-slot.mobile-slot-appointment-footprint-travel {
  background-color: dimgray;
  opacity: 0.5;
  font-weight: bolder;
  color: white;
}

.mobile-slot.slot-quality-good {
    border-color: #66BB66;
}

.mobile-slot.slot-quality-good.selected {
    background-color: #66BB66;
}

.mobile-slot.slot-quality-fair {
    border-color: #d8b755;
}

.mobile-slot.slot-quality-fair.selected {
    background-color: #d8b755;
}

.mobile-slot.slot-quality-poor {
    border-color: #db6161;
}

.mobile-slot.slot-quality-poor.selected {
    background-color: #db6161;
}

.mobile-slot.slot-quality-unknown {
    border-color: #8a8a8a;
    border-style: dashed;
    background-image: repeating-linear-gradient(45deg, rgba(138, 138, 138, 0.2) 0, rgba(138, 138, 138, 0.2) 4px, transparent 4px, transparent 8px);
}

.mobile-slot.slot-quality-unknown.selected {
    background-color: #8a8a8a;
}

.mobile-slot.slot-booked {
  background-color: #fca400;
  border-color: #004787;
  color:black;
}

.mobile-slot.slot-in_transit {
  background-color: dimgray;
  border-color: #004787;
  color: white;
}

.user-select-none {
    user-select: none;
}

.font-2x {
    font-size: 2rem;
}

.font-1_1 {
    font-size: 1.1rem;
}

.font-1 {
    font-size: 1rem;
}

.shrink-box {
    min-height: 0 !important;
}

.employee-role {
    align-items: flex-start;
    display: inline-flex;
    font-size: inherit;
}

.employee-role-icon {
    color: #EB0A1E;
    margin-left: 10px;
    margin-right: 3px;
    vertical-align: top;
}

.employee-role-text {
    color: #EB0A1E;
    display: inline-block;
    font-family: inherit;
    font-weight: 600;
    line-height: 1.2;
    vertical-align: top;
    white-space: normal;
    width: 60px;
}

/* if using 2 sticky-tops and one is below the other*/
.sticky-top-child {
    position: -webkit-sticky;
    position: sticky;
    top: 64px;
    z-index: 1029;
}
/* Dashboard widgets: the card footer carries its own top padding, so the card body's bottom
   padding is a dead band above it. Scoped to .dashboard-widgets (set on the dashboard's
   indexTemplates wrapper) rather than applied to .card-body globally - that class appears 66
   times across 48 views and only the 9 dashboard widgets want this.

   :not(:last-child) means "only when a footer follows". Dropping the padding is only safe
   because the footer replaces it; on a footerless card the content would sit flush against the
   bottom edge. widgets/bdc-agent-appt-count.volt is exactly that card. */
.dashboard-widgets .card-body:not(:last-child) {
    padding-bottom: 0;
}
