.tag {
	display: inline-block;
	padding: 5px;
	border-radius: 5px;
	font-size: 0.8em;
	font-weight: bold;
	margin: 1px;
}

.tag-users {
	background: #F2F2F2;
	color: #707070;
}

.tag-whatever-whatever {
	background: #BD0000;
	color: #fff;
}

.tag-jobtype-lumper {
	background: #ECFACD;
	color: #707070;
}
.tag-jobtype-general_labour {
	background: #F8FAB6;
	color: #707070;
}
.tag-jobtype-forklift_operator {
	background: #E0FAFF;
	color: #707070;
}
.tag-jobtype-other {
	background: #E3DFFF;
	color: #707070;
}

.tag-status-workorder-requested {
	background: #D97C00;
	color: #fff;
}
.tag-status-workorder-scheduled {
	background: #E9C505;
	color: #fff;
}
.tag-status-workorder-confirmed {
	background: #E9C505;
	color: #fff;
}
.tag-status-workorder-work_completed {
	background: #08BF20;
	color: #fff;
}
.tag-status-workorder-invoiced {
	background: #017D2B;
	color: #fff;
}
.tag-status-workorder-cancelled {
	background: #6F6F6E;
	color: #fff;
}
.tag-status-workorder-hold {
	background: #001687;
	color: #fff;
}
.tag-status-workorder-dispute {
	background: #931200;
	color: #fff;
}
.tag-status-workorder-dispatched {
	background: #000000;
	color: #fff;
}

.tag-status-invoice-not_paid {
	background: #BD0000;
	color: #fff;
}
.tag-status-invoice-partially_paid {
	background: #D4AB00;
	color: #fff;
}
.tag-status-invoice-paid {
	background: #0DB605;
	color: #fff;
}
.tag-status-invoice-cancelled {
	background: #707070;
	color: #fff;
}

.appointment-card-jobtype-lumper {
	border-left: 5px solid #ECFACD !important;
}
.appointment-card-jobtype-general_labour {
	border-left: 5px solid #f8fab6 !important;
}
.appointment-card-jobtype-forlift_operator {
	border-left: 5px solid #e0faff !important;
}
.appointment-card-jobtype-other {
	border-left: 5px solid #e3dfff !important;
}

.appointment-card-unassigned {
	border: 2px solid red !important;
}



/* SCHEDULE CLASSES */
#schedule-container {
	max-width: 100%;
}

#schedule-needs-scheduling {
	max-height: 800px;
	overflow-y: auto;
	font-size: 0.9em;
}

.schedule-container-day {
	overflow-x: auto;
}

.schedule-table {
	width: 100%;
	table-layout: fixed;
	border: 1px solid #cdcccc;
	font-size: 0.9em;
}

.schedule-table th {
	background: #F2F2F2;
	text-align: center;
}

.schedule-table th, .schedule-table td {
	border-collapse: collapse;
	border: 1px solid #E0E0E0;
	box-sizing: border-box;
}

.schedule-table-header th {
	padding: 5px;
}

.schedule-table-today {
	background: #FAFFEE;
}
.schedule-table-month-day-muted {
	opacity: 0.4;
}
.schedule-table-month td {
	height: 150px;
	vertical-align: top;
}

.schedule-table-week-hour-column {
	width: 75px !important;
	color: #BBBBBB;
	font-size: 0.8em;
	font-weight: normal;
}
.schedule-table-week-row {
	height: 40px;
}
.schedule-table-week-halfhour {
	color: #B6B1B1;
	font-weight: normal;
}
.schedule-table-week td, .schedule-table-day td {
	vertical-align: top;
	position: relative;
}

.schedule-table-day td {
overflow-x: visible;
}

.schedule-table-day-minutes {
	color: #BBBBBB;
	font-size: 0.8em;
	font-weight: normal;
	text-align: left !important;
}
.schedule-table-day-users-header {
	width: 150px !important;
}
.schedule-table-day {
	width: 1500px !important;
}
.schedule-table-day-hour-blocks {
	width: 150px !important;
	overflow-y: visible;
}
.schedule-table-day-row {
	height: 50px;
}
.schedule-table-day-users-column {
	position: absolute;
	width: 150px;
	border-top: 0 !important;
	border-bottom: 0 !important;
	margin-left: -1px;
	padding-top: 30px !important;
	z-index: 1500;
}

.appointment-card {
	background: #fff;
	border: 1px solid #bbbbbb;
	box-shadow: 0px 0px 8px #C9C9C9;
	font-size: 0.9em;
	padding: 5px;
	box-sizing: border-box;
	z-index: 1000;
	overflow: hidden;
	transition: transform 0.5s ease-in-out;
	-webkit-transition: transform 0.5s ease-in-out;
}

/* alberta, saskatchewan, bc */
.appointment-card-province-bc {
	background-color: #ece0ff;
}

.appointment-card-province-ab {
	background-color: #fdffdb;
}

.appointment-card-province-sk {
	background-color: #ddfdd5;
}

.appointment-card:hover {
	z-index: 1500;
}

.appointment-card-time {
	font-size: 0.9em;
}

.schedule-table-day .appointment-card {
	position: absolute;
	min-width: 150px;
}

.schedule-table-week .appointment-card {
	position: absolute;
	width: 100%;
}

#schedule-needs-scheduling .appointment-card {
	position: inherit !important;
	max-width: 100%;
	z-index: 1000;
}

#schedule-needs-scheduling .ui-resizable-e, #schedule-needs-scheduling .ui-resizable-s {
	display: none;
}

.ui-resizable-e {
	border: 2px dashed #c9c9c9;
	width: 10px;
}
.ui-resizable-s {
	border: 2px dashed #c9c9c9;
	height: 10px;
}

/* END SCHEDULE CLASSES */


/* CUSTOM BOOTSTRAP STYLES */
.btn-group-xxs > .btn, .btn-xxs {
  padding: .1875rem .3rem;
  font-size: .65625rem;
  line-height: .375;
  border-radius: .15rem;
}
