.wmd-availability-timeline {
	margin: 0 0 12px;
}

.wmd-availability-timeline__label {
	margin: 0 0 6px;
	font-size: 0.85em;
	color: #555;
}

.wmd-availability-timeline__row {
	margin: 0 0 8px;
}

.wmd-availability-timeline__row:last-child {
	margin-bottom: 0;
}

.wmd-availability-timeline__row-label {
	margin: 0 0 2px;
	font-size: 0.65em;
	font-weight: 600;
	color: #555;
}

.wmd-availability-timeline__bar {
	display: flex;
	border-radius: 4px;
	overflow: hidden;
}

.wmd-availability-timeline__slot {
	flex: 1 1 0;
	min-width: 0;
	text-align: center;
	padding: 6px 1px;
	font-size: 0.7em;
	line-height: 1.2;
	color: #fff;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	border: 0;
	margin: 0 1px;
	border-radius: 2px;
	font-family: inherit;
}

.wmd-availability-timeline__slot.is-free {
	background: #4caf50;
	cursor: pointer;
}

.wmd-availability-timeline__slot.is-free:hover,
.wmd-availability-timeline__slot.is-free:focus-visible {
	background: #357a38;
	outline: 2px solid #1b5e20;
	outline-offset: -2px;
}

.wmd-availability-timeline__slot.is-busy {
	background: #e53935;
	cursor: not-allowed;
}

.wmd-availability-timeline__slot.is-selected-start,
.wmd-availability-timeline__slot.is-selected-end {
	background: #1b5e20;
	box-shadow: inset 0 0 0 2px #fff;
	font-weight: 700;
}

.wmd-availability-timeline__slot.is-selected-range {
	background: #81c784;
}
