.tooltipster-base {
	display: flex;
	pointer-events: none;
	position: absolute;
}

.tooltipster-box {
	flex: 1 1 auto;
}

.tooltipster-content {
	/* prevents an overflow if the user adds padding to the div */
	box-sizing: border-box;
	/* these make sure we'll be able to detect any overflow */
	max-height: 100%;
	max-width: 100%;
	overflow: auto;
}

.tooltipster-ruler {
	/* these let us test the size of the tooltip without overflowing the window */
	bottom: 0;
	left: 0;
	overflow: hidden;
	position: fixed;
	right: 0;
	top: 0;
	visibility: hidden;
}

/* fade */
.tooltipster-fade {
	opacity: 0;
	-webkit-transition-property: opacity;
	-moz-transition-property: opacity;
	-o-transition-property: opacity;
	-ms-transition-property: opacity;
	transition-property: opacity;
}
.tooltipster-fade.tooltipster-show {
	opacity: 1;
}

/* grow */
.tooltipster-grow {
	-webkit-transform: scale(0,0);
	-moz-transform: scale(0,0);
	-o-transform: scale(0,0);
	-ms-transform: scale(0,0);
	transform: scale(0,0);
	-webkit-transition-property: -webkit-transform;
	-moz-transition-property: -moz-transform;
	-o-transition-property: -o-transform;
	-ms-transition-property: -ms-transform;
	transition-property: transform;
	-webkit-backface-visibility: hidden;
}
.tooltipster-grow.tooltipster-show {
	-webkit-transform: scale(1,1);
	-moz-transform: scale(1,1);
	-o-transform: scale(1,1);
	-ms-transform: scale(1,1);
	transform: scale(1,1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
}

/* swing */
.tooltipster-swing {
	opacity: 0;
	-webkit-transform: rotateZ(4deg);
	-moz-transform: rotateZ(4deg);
	-o-transform: rotateZ(4deg);
	-ms-transform: rotateZ(4deg);
	transform: rotateZ(4deg);
	-webkit-transition-property: -webkit-transform, opacity;
	-moz-transition-property: -moz-transform;
	-o-transition-property: -o-transform;
	-ms-transition-property: -ms-transform;
	transition-property: transform;
}
.tooltipster-swing.tooltipster-show {
	opacity: 1;
	-webkit-transform: rotateZ(0deg);
	-moz-transform: rotateZ(0deg);
	-o-transform: rotateZ(0deg);
	-ms-transform: rotateZ(0deg);
	transform: rotateZ(0deg);
	-webkit-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 1);
	-webkit-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
	-moz-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
	-ms-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
	-o-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
	transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
}

/* fall */
.tooltipster-fall {
	-webkit-transition-property: top;
	-moz-transition-property: top;
	-o-transition-property: top;
	-ms-transition-property: top;
	transition-property: top;
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
}
.tooltipster-fall.tooltipster-initial {
	top: 0 !important;
}
.tooltipster-fall.tooltipster-show {
}
.tooltipster-fall.tooltipster-dying {
	-webkit-transition-property: all;
	-moz-transition-property: all;
	-o-transition-property: all;
	-ms-transition-property: all;
	transition-property: all;
	top: 0 !important;
	opacity: 0;
}

/* slide */
.tooltipster-slide {
	-webkit-transition-property: left;
	-moz-transition-property: left;
	-o-transition-property: left;
	-ms-transition-property: left;
	transition-property: left;
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
}
.tooltipster-slide.tooltipster-initial {
	left: -40px !important;
}
.tooltipster-slide.tooltipster-show {
}
.tooltipster-slide.tooltipster-dying {
	-webkit-transition-property: all;
	-moz-transition-property: all;
	-o-transition-property: all;
	-ms-transition-property: all;
	transition-property: all;
	left: 0 !important;
	opacity: 0;
}

/* Update animations */

/* We use animations rather than transitions here because
 transition durations may be specified in the style tag due to
 animationDuration, and we try to avoid collisions and the use
 of !important */

/* fade */
@keyframes tooltipster-fading {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.tooltipster-update-fade {
	animation: tooltipster-fading 400ms;
}

/* rotate */
@keyframes tooltipster-rotating {
	25% {
		transform: rotate(-2deg);
	}
	75% {
		transform: rotate(2deg);
	}
	100% {
		transform: rotate(0);
	}
}

.tooltipster-update-rotate {
	animation: tooltipster-rotating 600ms;
}

/* scale */
@keyframes tooltipster-scaling {
	50% {
		transform: scale(1.1);
	}
	100% {
		transform: scale(1);
	}
}

.tooltipster-update-scale {
	animation: tooltipster-scaling 600ms;
}

/**
 * Encyclopedia Tooltip theme
 */

/* .tooltipster-box */
.encyclopedia-tooltip .tooltipster-box {
	background: #1b1b1b;
	background: rgba(10, 10, 10, .9);
	border-radius: 4px;
}

.encyclopedia-tooltip.tooltipster-bottom .tooltipster-box {
	margin-top: 8px;
}

.encyclopedia-tooltip.tooltipster-left .tooltipster-box {
	margin-right: 8px;
}

.encyclopedia-tooltip.tooltipster-right .tooltipster-box {
	margin-left: 8px;
}

.encyclopedia-tooltip.tooltipster-top .tooltipster-box {
	margin-bottom: 8px;
}

/* .tooltipster-content */

.encyclopedia-tooltip .tooltipster-content {
	color: #eee;
	line-height: 1.3;
	padding: 6px 14px;
}

/* .tooltipster-arrow : will keep only the zone of .tooltipster-arrow-uncropped that
corresponds to the arrow we want to display */

.encyclopedia-tooltip .tooltipster-arrow {
	overflow: hidden;
	position: absolute;
	height: 8px;
	margin-left: -8px;
	width: 16px
}

.encyclopedia-tooltip.tooltipster-top .tooltipster-arrow {
	bottom: 0;
	height: 8px;
	margin-left: -8px;
	width: 16px;
}

.encyclopedia-tooltip.tooltipster-bottom .tooltipster-arrow {
	height: 8px;
	/* half the width, for centering */
	margin-left: -8px;
	top: 0;
	width: 16px;
}

.encyclopedia-tooltip.tooltipster-left .tooltipster-arrow,
.encyclopedia-tooltip.tooltipster-right .tooltipster-arrow {
	height: 16px;
	margin-left: 0;
	margin-top: -8px;
	width: 8px
}

.encyclopedia-tooltip.tooltipster-left .tooltipster-arrow {
	right: 0;
	/* top 0 to keep the arrow from overflowing .tooltipster-base when it has not
	been positioned yet */
	top: 0;
}

.encyclopedia-tooltip.tooltipster-right .tooltipster-arrow {
	left: 0;
	/* same as .tooltipster-left .tooltipster-arrow */
	top: 0;
}


/* common rules between .tooltipster-arrow-background and .tooltipster-arrow-border */
.encyclopedia-tooltip .tooltipster-arrow-background,
.encyclopedia-tooltip .tooltipster-arrow-border {
	height: 0;
	position: absolute;
	width: 0;
	border: 8px solid transparent;
}
.encyclopedia-tooltip .tooltipster-arrow-background {
	display: none
}
.encyclopedia-tooltip .tooltipster-arrow-border {
}


/* .tooltipster-arrow-background */
.encyclopedia-tooltip.tooltipster-bottom .tooltipster-arrow-background {
	left: 0;
	top: 3px;
	border-bottom-color: #1b1b1b;
	border-bottom-color: rgba(10, 10, 10, .9)
}

.encyclopedia-tooltip.tooltipster-left .tooltipster-arrow-background {
	left: -3px;
	top: 0;
	border-left-color: #1b1b1b;
	border-left-color: rgba(10, 10, 10, .9)
}

.encyclopedia-tooltip.tooltipster-right .tooltipster-arrow-background {
	left: 3px;
	top: 0;
	border-right-color: #1b1b1b;
	border-right-color: rgba(10, 10, 10, .9)
}

.encyclopedia-tooltip.tooltipster-top .tooltipster-arrow-background {
	left: 0;
	top: -3px;
	border-top-color: #1b1b1b;
	border-top-color: rgba(10, 10, 10, .9)
}

/* .tooltipster-arrow-border */
.encyclopedia-tooltip .tooltipster-arrow-border {
	border: 8px solid transparent;
	left: 0;
	top: 0;
}

.encyclopedia-tooltip.tooltipster-top .tooltipster-arrow-border {
	border-top-color: #1b1b1b;
	border-top-color: rgba(10, 10, 10, .9);
}

.encyclopedia-tooltip.tooltipster-bottom .tooltipster-arrow-border {
	border-bottom-color: #1b1b1b;
	border-bottom-color: rgba(10, 10, 10, .9);
}

.encyclopedia-tooltip.tooltipster-left .tooltipster-arrow-border {
	border-left-color: #1b1b1b;
	border-left-color: rgba(10, 10, 10, .9);
}

.encyclopedia-tooltip.tooltipster-right .tooltipster-arrow-border {
	border-right-color: #1b1b1b;
	border-right-color: rgba(10, 10, 10, .9);
}



/* tooltipster-arrow-uncropped */
.encyclopedia-tooltip .tooltipster-arrow-uncropped {
	position: relative;
}

.encyclopedia-tooltip.tooltipster-bottom .tooltipster-arrow-uncropped {
	top: -8px;
}

.encyclopedia-tooltip.tooltipster-right .tooltipster-arrow-uncropped {
	left: -8px;
}
