/**
 * Canvas Image Hotspot Styles
 *
 * Loaded conditionally when the Canvas Image Hotspot widget is used.
 *
 * @package Canvas_Core
 * @since 1.0.0
 */

/* Pulsate keyframes */
@-webkit-keyframes pulsate {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 0.8;
	}
	45% {
		-webkit-transform: scale(1.75);
		transform: scale(1.75);
		opacity: 0;
	}
}

@keyframes pulsate {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 0.8;
	}
	45% {
		-webkit-transform: scale(1.75);
		transform: scale(1.75);
		opacity: 0;
	}
}

/* Wrapper */
.hotspot-img {
	background-size: cover;
	background-position: center center;
	position: relative;
}

/* Hotspot dot */
.hotspot-img .hot-spot {
	position: absolute;
	width: 26px;
	height: 26px;
	top: 5px;
	left: 5px;
	text-align: center;
	background-color: #000;
	color: #FFF;
	border-radius: 100%;
	cursor: pointer;
	font-size: 12px;
	line-height: 26px;
	transition: all .3s ease;
}

/* Icon transition */
.hotspot-img .hot-spot .circle i {
	-webkit-transition: -webkit-transform .25s ease-out;
	transition: transform .25s ease-out;
}

/* Icon rotation on hover/open */
.hotspot-img .hot-spot.hotspot-tooltip-open .circle i,
.hotspot-img .hot-spot:not(.hotspot-on-click):hover .circle i {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* Pulsating ring */
.hotspot-img .hot-spot .circle:after {
	content: '';
	display: block;
	position: absolute;
	top: 39%;
	left: 39%;
	width: 30px;
	height: 30px;
	margin: -1em auto auto -1em;
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
	border-radius: 50%;
	border: 10px solid #000;
	opacity: 0;
	-webkit-animation: pulsate 3s ease-out infinite;
	animation: pulsate 3s ease-out infinite;
}

/* Tooltip container */
.hotspot-img .hot-spot .tooltip {
	display: none;
	background-color: rgba(255, 255, 255, 0.96);
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-size: 14px;
	opacity: 1.0;
	left: 0;
	padding: 15px;
	position: absolute;
	top: 35px;
	width: 280px;
	z-index: 999;
	box-shadow: 0 30px 102px rgba(0, 0, 0, 0.33), 0 20px 51px rgba(0, 0, 0, 0.18);
}

/* Tooltip above hotspot */
.hotspot-img .hot-spot .tooltip.ontop {
	top: auto;
	bottom: 35px;
}

/* Image row in tooltip */
.hotspot-img .hot-spot .tooltip .img-row {
	margin-bottom: 10px;
	display: block;
}

/* Tooltip typography */
.hotspot-img .hot-spot .tooltip h4 {
	margin-bottom: 0;
}

.hotspot-img .hot-spot .tooltip p {
	font-size: 13px;
	line-height: 1.3rem !important;
	margin-bottom: 10px;
	color: #666 !important;
}

.hotspot-img .hot-spot .tooltip p:last-child {
	margin-bottom: 0;
}

/* Responsive */
@media (max-width: 991px) {
	.hotspot-img .hot-spot .tooltip {
		width: 200px;
		left: 30px;
		top: 35px;
	}

	.hotspot-img .hot-spot .tooltip .img-row {
		display: none;
	}
}
