/* SCHEDULE CLASSES */
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

table.dataTable tbody td {
  vertical-align: top;
}

/*table.dataTable thead th.sorting:after, table.dataTable thead th.sorting_asc:after {
    content: "" !important;
}*/

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}


/* BLINKING */
@-webkit-keyframes blink {
  0%,
  50%,
  100% {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}
@keyframes blink {
  0%,
  50%,
  100% {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}


.needs-certified {
  border:1px dashed red;
  -webkit-animation: blink 3s infinite both;
  animation: blink 3s infinite both;
}

#schedule-container {
	max-width: 100%;
	overflow: auto;
}

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

#schedule-container .tooltip-inner{
	width: 500px;
	max-width: 95%;
}

.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-header-fixed{
	z-index: 5000;
	position: relative;
}

.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 {
	z-index: 1;
}

.schedule-table-month td, .schedule-table-month th {
	width: 300px;
	vertical-align: top;
}

.schedule-table-week-hour-column {
	width: 75px !important;
	color: #BBBBBB;
	font-size: 0.8em;
	font-weight: normal;
}

.schedule-table-row-timeoff {
	background: #FFD1D1;
}

.schedule-table-week-row, .schedule-table-day-row, .schedule-table-month-row {
	height: 50px;
}
.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-users-header {
	width: 150px !important;
}

.schedule-table-month-users-column {
	position: absolute;
	margin-left: 9px;
	z-index: 1;
	min-height: 200px;
	width: 142px !important;
}

.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;
}

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

#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;
}

.schedule-appointment-engineered_hardwood {
	border-left: 5px solid #c2b150;
}
.schedule-appointment-carpet {
	border-left: 5px solid #03e310;
}
.schedule-appointment-laminate {
	border-left: 5px solid #ede906;
}
.schedule-appointment-solid_hardwood {
	border-left: 5px solid #988410;
}

.schedule-appointment-sheet_vinyl {
	border-left: 5px solid #009aca;
}
.schedule-appointment-vinyl_plank {
	border-left: 5px solid #7900fc;
}
.schedule-appointment-tile {
	border-left: 5px solid #8d8d8d;
}
.schedule-appointment-other {
	border-left: 5px solid #00a65a;
}
.schedule-appointment-padding {
	border-left: 5px solid #ee0303;
}

/* END SCHEDULE CLASSES */

.message_to {
	margin-top: 5px;
	text-align: left;
	font-size: 0.85em;
}
.message_from {
	margin-top: 5px;
	text-align: right;
	font-size: 0.85em;
}
.message_message {
	padding: 10px;
	text-align: left;
}
.message_to .message_message {
	margin-right: 20px;
	background: #03bbf5;
	color: #FFF;
}
.message_from .message_message{
	margin-left: 20px;
	background: #f4f5f2;
	color: #505050;
}





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

.tag-appointment-username {
	background: #ebebeb;
}

.tag-appointment-time {
	font-weight: bold;
}

.tag-appointment-jobtype-engineered_hardwood {
	background: #c2b150;
	color: #fff;
	font-weight: bold;
}
.tag-appointment-jobtype-carpet {
	background: #90F696;
	color: #575757;
	font-weight: bold;
}
.tag-appointment-jobtype-laminate {
	background: #F9F67B;
	color: #575757;
	font-weight: bold;
}
.tag-appointment-jobtype-solid_hardwood {
	background: #988410;
	color: #fff;
	font-weight: bold;
}
.tag-appointment-jobtype-sheet_vinyl {
	background: #009aca;
	color: #fff;
	font-weight: bold;
}
.tag-appointment-jobtype-vinyl_plank {
	background: #7900fc;
	color: #fff;
	font-weight: bold;
}
.tag-appointment-jobtype-tile {
	background: #8d8d8d;
	color: #fff;
	font-weight: bold;
}
.tag-appointment-jobtype-other {
	background: #00a65a;
	color: #fff;
	font-weight: bold;
}
.tag-appointment-jobtype-padding {
	background: #ee0303;
	color: #fff;
	font-weight: bold;
}
.appointment-paid {
	opacity: 0.7;
	background: #f4f4f4;
}

.appointment-timeoff {
	opacity: 0.8;
	background: #C8F2FF;
}

.tag-status-new {
	background: #ee0303;
	color: #fff;
	font-weight: bold;
}
.tag-status-open {
	background: #EB8601;
	color: #fff;
	font-weight: bold;
}
.tag-status-complete {
	background: #049531;
	color: #fff;
	font-weight: bold;
}
.tag-status-cancelled {
	background: #6C6C6C;
	color: #fff;
	font-weight: bold;
}
.tag-status-chargeback_initiated,.tag-status-chargeback_submitted {
  background: #525252;
  color: #FFF;
  font-weight: bold;
}

.tag-status-inventory-not_received{
	background: #ee0303;
	color: #fff;
	font-weight: bold;
}
.tag-status-inventory-received{
	background: #049531;
	color: #fff;
	font-weight: bold;
}

.edittimeframebutton:hover {
	cursor: pointer;
	font-weight: bold;
}
.edittimeframebutton:hover::before{
		content: "\270E ";
}

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

.slow-spin {
  -webkit-animation: fa-spin 6s infinite linear;
  animation: fa-spin 6s infinite linear;
}

.modal-dialog {
  min-height:101vh;
}
