/* Icon Buzz Out */
.keyframes(~"@{nameSpace}-icon-buzz-out", {
	10% {
		.prefixed(transform, translateX(3px) rotate(2deg));
	}

	20% {
		.prefixed(transform, translateX(-3px) rotate(-2deg));
	}

	30% {
		.prefixed(transform, translateX(3px) rotate(2deg));
	}

	40% {
		.prefixed(transform, translateX(-3px) rotate(-2deg));
	}

	50% {
		.prefixed(transform, translateX(2px) rotate(1deg));
	}

	60% {
		.prefixed(transform, translateX(-2px) rotate(-1deg));
	}

	70% {
		.prefixed(transform, translateX(2px) rotate(1deg));
	}

	80% {
		.prefixed(transform, translateX(-2px) rotate(-1deg));
	}

	90% {
		.prefixed(transform, translateX(1px) rotate(0));
	}

	100% {
		.prefixed(transform, translateX(-1px) rotate(0));
	}
});

.icon-buzz-out() {
	.hacks();
	position: relative;
	padding-right: 2.2em;
	.prefixed(transition-duration, @mediumDuration);

	&:before {
		content: "\f023";
		position: absolute;
		right: 1em;
		padding: 0 1px;
		font-family: FontAwesome;
		.prefixed(transform, translateZ(0));
	}

	&:hover,
	&:focus,
	&:active {

		&:before {
			.prefixed(animation-name, ~"@{nameSpace}-icon-buzz-out");
			.prefixed(animation-duration, .75s);
			.prefixed(animation-timing-function, linear);
			.prefixed(animation-iteration-count, 1);
		}
	}
}
