/*
Bootstrap Animated Icons
Version: 1.0
Author: Mateusz Mania
*/

*[class^="btn"] { overflow: hidden; }

/*pulsing BEGIN*/
* > i[class^="icon-"].icon-animated-pulsing {
	
	transition: opacity 0.2s linear;
	-webkit-transition: opacity 0.2s linear;
	
	opacity: 1;
}

*:hover > i[class^="icon-"].icon-animated-pulsing {
	
	animation: animation-pulsing 0.6s ease-out;
	animation-iteration-count: 2;
	
	-webkit-animation: animation-pulsing 0.6s ease-out;
	-webkit-animation-iteration-count: 2;
}

@keyframes animation-pulsing {
	
	50% { opacity: 0.1; }
}

@-webkit-keyframes animation-pulsing {
	
	50% { opacity: 0.1; }
}
/*pulsing END*/

/*fading in BEGIN*/
* > i[class^="icon-"].icon-animated-fading-in {
	
	transition: opacity 0.2s ease-in;
	-webkit-transition: opacity 0.2s ease-in;
	
	opacity: 0.5;
}

*:hover > i[class^="icon-"].icon-animated-fading-in {
	
	transition: opacity 0.1s ease-in;
	-webkit-transition: opacity 0.1s ease-in;

	opacity: 1;
}
/*fading in END*/

/*fading out BEGIN*/
* > i[class^="icon-"].icon-animated-fading-out {
	
	transition: opacity 0.2s ease-in;
	-webkit-transition: opacity 0.2s ease-in;
	
	opacity: 1;
}

*:hover > i[class^="icon-"].icon-animated-fading-out {
	
	transition: opacity 0.1s ease-in;
	-webkit-transition: opacity 0.1s ease-in;
	
	opacity: 0.5;
}
/*fading out END*/

/*spinning BEGIN*/
* > i[class^="icon-"].icon-animated-spinning {
	
	transition: all 0.4s linear;
	-webkit-transition: all 0.4s linear;
	
	transform: rotate(360deg);
	-webkit-transform: rotate(360deg);
	-ms-transform: rotate(360deg);
}

*:hover > i[class^="icon-"].icon-animated-spinning {
	
	animation: animation-spinning 0.4s linear;
	animation-iteration-count: 1;
	
	-webkit-animation: animation-spinning 0.4s linear;
	-webkit-animation-iteration-count: 1;
}

@keyframes animation-spinning {
	
	100% { transform: rotate(720deg); -ms-transform: rotate(720deg); }
}

@-webkit-keyframes animation-spinning {
	
	100% { -webkit-transform: rotate(720deg); }
}
/*spinning END*/

/*spinning invert BEGIN*/
* > i[class^="icon-"].icon-animated-spinning-invert {
	
	transition: all 0.4s linear;
	-webkit-transition: all 0.4s linear;
	
	transform: rotate(720deg);
	-webkit-transform: rotate(720deg);
	-ms-transform: rotate(720deg);
}

*:hover > i[class^="icon-"].icon-animated-spinning-invert {
	
	animation: animation-spinning-invert 0.4s linear;
	animation-iteration-count: 1;
	
	-webkit-animation: animation-spinning-invert 0.4s linear;
	-webkit-animation-iteration-count: 1;
}

@keyframes animation-spinning-invert {
	
	100% { transform: rotate(360deg); -ms-transform: rotate(360deg); }
}

@-webkit-keyframes animation-spinning-invert {
	
	100% { -webkit-transform: rotate(360deg); }
}
/*spinning ivert END*/

/*jumping up BEGIN*/
* > i[class^="icon-"].icon-animated-jumping-up {
	
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
}

*:hover > i[class^="icon-"].icon-animated-jumping-up {
	
	animation: animation-jumping-up 0.4s linear;
	animation-iteration-count: 2;
	
	-webkit-animation: animation-jumping-up 0.4s linear;
	-webkit-animation-iteration-count: 2;
}

@keyframes  animation-jumping-up {
	
	0% { margin-top: 0px; margin-bottom: 0px; }
	50% { margin-top: -7px; margin-bottom: 7px; }
	100% { margin-top: 3px; margin-bottom: -3px; }
}

@-webkit-keyframes  animation-jumping-up {
	
	0% { margin-top: 0px; margin-bottom: 0px; }
	50% { margin-top: -7px; margin-bottom: 7px; }
	100% { margin-top: 3px; margin-bottom: -3px; }
}
/*jumping up END*/

/*jumping down BEGIN*/
* > i[class^="icon-"].icon-animated-jumping-down {
	
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
}

*:hover > i[class^="icon-"].icon-animated-jumping-down {
	
	animation: animation-jumping-down 0.4s linear;
	animation-iteration-count: 2;
	
	-webkit-animation: animation-jumping-down 0.4s linear;
	-webkit-animation-iteration-count: 2;
}

@keyframes  animation-jumping-down {
	
	0% { margin-top: 0px; margin-bottom: 0px; }
	50% { margin-top: 7px; margin-bottom: -7px; }
	100% { margin-top: 3px; margin-bottom: -3px; }
}

@-webkit-keyframes  animation-jumping-down {
	
	0% { margin-top: 0px; margin-bottom: 0px; }
	50% { margin-top: 7px; margin-bottom: -7px; }
	100% { margin-top: 3px; margin-bottom: -3px; }
}
/*jumping down END*/

/*jumping left BEGIN*/
* > i[class^="icon-"].icon-animated-jumping-left {
	
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
}

*:hover > i[class^="icon-"].icon-animated-jumping-left {
	
	animation: animation-jumping-left 0.4s linear;
	animation-iteration-count: 2;
	
	-webkit-animation: animation-jumping-left 0.4s linear;
	-webkit-animation-iteration-count: 2;
}

@keyframes  animation-jumping-left {
	
	0% { margin-left: 0px; margin-right: 0px; }
	50% { margin-left: -7px; margin-right: 7px; }
	100% { margin-left: 0px; margin-right: -0px; }
}

@-webkit-keyframes  animation-jumping-left {
	
	0% { margin-left: 0px; margin-right: 0px; }
	50% { margin-left: -7px; margin-right: 7px; }
	100% { margin-left: 0px; margin-right: -0px; }
}
/*jumping left END*/

/*jumping right BEGIN*/
* > i[class^="icon-"].icon-animated-jumping-right {
	
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
}

*:hover > i[class^="icon-"].icon-animated-jumping-right {
	
	animation: animation-jumping-right 0.4s linear;
	animation-iteration-count: 2;
	
	-webkit-animation: animation-jumping-right 0.4s linear;
	-webkit-animation-iteration-count: 2;
}

@keyframes animation-jumping-right {
	
	0% { margin-left: 0px; margin-right: 0px; }
	50% { margin-left: 7px; margin-right: -7px; }
	100% { margin-left: 0px; margin-right: -0px; }
}

@-webkit-keyframes animation-jumping-right {
	
	0% { margin-left: 0px; margin-right: 0px; }
	50% { margin-left: 7px; margin-right: -7px; }
	100% { margin-left: 0px; margin-right: -0px; }
}
/*jumping right END*/

/*replacing top to bottom BEGIN*/
* > i[class^="icon-"].icon-replacing-ttb {
	
	transition: all 1s ease-in;
	-webkit-transition: all 1s ease-in;
	
	opacity: 1;
}

*:hover > i[class^="icon-"].icon-animated-replacing-ttb {
	
	animation: animation-replacing-ttb 0.25s ease-out;
	animation-iteration-count: 1;
	
	-webkit-animation: animation-replacing-ttb 0.25s ease-out;
	-webkit-animation-iteration-count: 1;
}

@keyframes animation-replacing-ttb {
	
	25% { margin-top: 48px; margin-bottom: -48px; opacity: 1; }
	40% { opacity: 0; }
	75% { margin-top: -48px; margin-bottom: 48px; opacity: 0; }
	76% { opacity: 1; }
	100% { margin-top: 0px; margin-bottom: 0px; }
}

@-webkit-keyframes animation-replacing-ttb {
	
	25% { margin-top: 48px; margin-bottom: -48px; opacity: 1; }
	40% { opacity: 0; }
	75% { margin-top: -48px; margin-bottom: 48px; opacity: 0; }
	76% { opacity: 1; }
	100% { margin-top: 0px; margin-bottom: 0px; }
}
/*replacing top to bottom END*/

/*replacing bottom to top BEGIN*/
* > i[class^="icon-"].icon-replacing-btt {
	
	transition: all 1s ease-in;
	
	-webkit-transition: all 1s ease-in;
	opacity: 1;
}

*:hover > i[class^="icon-"].icon-animated-replacing-btt {
	
	animation: animation-replacing-btt 0.5s ease-out;
	animation-iteration-count: 1;
	
	-webkit-animation: animation-replacing-btt 0.5s ease-out;
	-webkit-animation-iteration-count: 1;
}

@keyframes  animation-replacing-btt {
	
	25% { margin-top: -32px; margin-bottom: 32px; opacity: 1; }
	26% { opacity: 0; }
	75% { margin-top: 32px; margin-bottom: -32px; opacity: 0; }
	76% { opacity: 1; }
	100% { margin-top: 0px; margin-bottom: 0px; }
}

@-webkit-keyframes  animation-replacing-btt {
	
	25% { margin-top: -32px; margin-bottom: 32px; opacity: 1; }
	26% { opacity: 0; }
	75% { margin-top: 32px; margin-bottom: -32px; opacity: 0; }
	76% { opacity: 1; }
	100% { margin-top: 0px; margin-bottom: 0px; }
}
/*replacing bottom to top END*/

/*replacing bottom to top BEGIN*/
* > i[class^="icon-"].icon-replacing-btt {
	
	transition: all 1s ease-in;
	
	-webkit-transition: all 1s ease-in;
	opacity: 1;
}

*:hover > i[class^="icon-"].icon-animated-replacing-btt {
	
	animation: animation-replacing-btt 0.5s ease-out;
	animation-iteration-count: 1;
	
	-webkit-animation: animation-replacing-btt 0.5s ease-out;
	-webkit-animation-iteration-count: 1;
}

@keyframes  animation-replacing-btt {
	
	25% { margin-top: -32px; margin-bottom: 32px; opacity: 1; }
	26% { opacity: 0; }
	75% { margin-top: 32px; margin-bottom: -32px; opacity: 0; }
	76% { opacity: 1; }
	100% { margin-top: 0px; margin-bottom: 0px; }
}

@-webkit-keyframes  animation-replacing-btt {
	
	25% { margin-top: -32px; margin-bottom: 32px; opacity: 1; }
	26% { opacity: 0; }
	75% { margin-top: 32px; margin-bottom: -32px; opacity: 0; }
	76% { opacity: 1; }
	100% { margin-top: 0px; margin-bottom: 0px; }
}
/*replacing bottom to top END*/

/*shake BEGIN*/
* > i[class^="icon-"].icon-animated-shake {
	
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
	
	opacity: 1;
}

*:hover > i[class^="icon-"].icon-animated-shake {
	
	animation: animation-shake 0.25s ease-in;
	animation-iteration-count: 2;
	
	-webkit-animation: animation-shake 0.25s ease-in;
	-webkit-animation-iteration-count: 2;
}

@keyframes  animation-shake {
	
	25% { transform: rotate(30deg); -ms-transform: rotate(30deg); margin-left: 2px; margin-right: -2px; }
	50% { transform: rotate(-30deg); -ms-transform: rotate(-30deg); margin-left: -2px; margin-right: 2px; }
}

@-webkit-keyframes  animation-shake {
	
	25% { -webkit-transform: rotate(30deg); margin-left: 2px; margin-right: -2px; }
	50% { -webkit-transform: rotate(-30deg); margin-left: -2px; margin-right: 2px; }
}
/*shake END*/

/*shake horizontal BEGIN*/
* > i[class^="icon-"].icon-animated-shake-horizontal {
	
	transition: all 1s ease-in;
	
	-webkit-transition: all 1s ease-in;
	opacity: 1;
}

*:hover > i[class^="icon-"].icon-animated-shake-horizontal {
	
	animation: animation-shake-horizontal 0.25s ease-in;
	animation-iteration-count: 2;
	
	-webkit-animation: animation-shake-horizontal 0.25s ease-in;
	-webkit-animation-iteration-count: 2;
}

@keyframes animation-shake-horizontal {
	
	25% { transform: rotate(30deg); -ms-transform: rotate(30deg); margin-left: 4px; margin-right: -4px; }
	50% { transform: rotate(-30deg); -ms-transform: rotate(-30deg); margin-left: -4px; margin-right: 4px; }
}

@-webkit-keyframes  animation-shake-horizontal {
	
	25% { -webkit-transform: rotate(30deg); margin-left: 4px; margin-right: -4px; }
	50% { -webkit-transform: rotate(-30deg); margin-left: -4px; margin-right: 4px; }
}
/*shake horizontal END*/

/*shake vertical BEGIN*/
* > i[class^="icon-"].icon-animated-shake-vertical {
	
	transition: all 1s ease-in;
	
	-webkit-transition: all 1s ease-in;
	opacity: 1;
}

*:hover > i[class^="icon-"].icon-animated-shake-vertical {
	
	animation: animation-shake-vertical 0.25s ease-in;
	animation-iteration-count: 2;
	
	-webkit-animation: animation-shake-vertical 0.25s ease-in;
	-webkit-animation-iteration-count: 2;
}

@keyframes animation-shake-vertical {
	
	25% { transform: rotate(30deg); -ms-transform: rotate(30deg); margin-top: 4px; margin-bottom: -4px; }
	50% { transform: rotate(-30deg); -ms-transform: rotate(-30deg); margin-top: -4px; margin-bottom: 4px; }
}

@-webkit-keyframes  animation-shake-vertical {
	
	25% { -webkit-transform: rotate(30deg); margin-top: 4px; margin-bottom: -4px; }
	50% { -webkit-transform: rotate(-30deg); margin-top: -4px; margin-bottom: 4px; }
}
/*shake vertical END*/

/*hiding BEGIN*/
* > i[class^="icon-"].icon-animated-hiding {
	
	transition: all 0.4s ease-in;
	-webkit-transition: all 0.4s ease-in;
	
	width: 14px;
	height: 14px;
	opacity: 1;
	margin-left: 0px;
}

*:hover > i[class^="icon-"].icon-animated-hiding {
	
	transition: all 0.2s ease-out;
	
	-webkit-transition: all 0.2s ease-out;
	width: 1px;
	height: 1px;
	opacity: 0;
	margin-left: -5px;
}
/*hiding END*/

/*showing BEGIN*/
* > i[class^="icon-"].icon-animated-showing {
	
	transition: all 0.4s ease-in;
	
	-webkit-transition: all 0.4s ease-in;
	width: 1px;
	height: 1px;
	opacity: 0;
	margin-left: -5px;
}

*:hover > i[class^="icon-"].icon-animated-showing {
	
	transition: all 0.2s ease-out;
	
	-webkit-transition: all 0.2s ease-out;
	width: 14px;
	height: 14px;
	opacity: 1;
	margin-left: 0px;
}
/*showing END*/

/*flip horizontal BEGIN*/
* > i[class^="icon-"].icon-animated-flip-horizontal {
	
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
	
	transform: scale(1, 1);
	-webkit-transform: scale(1, 1);
}

*:hover > i[class^="icon-"].icon-animated-flip-horizontal {
	
	animation: animation-flip-horizontal 0.25s linear;
	animation-iteration-count: 3;
	
	-webkit-animation: animation-flip-horizontal 0.25s linear;
	-webkit-animation-iteration-count: 3;
}

@keyframes  animation-flip-horizontal {
	
	50% { transform: scale(0, 1); -ms-transform: scale(0, 1); opacity: 0.2; }
	100% { transform: scale(1, 1); -ms-transform: scale(1, 1); }
}

@-webkit-keyframes  animation-flip-horizontal {
	
	50% { -webkit-transform: scale(0, 1); opacity: 0.2; }
	100% { -webkit-transform: scale(1, 1); }
}
/*flip horizontal END*/

/*flip vertical BEGIN*/
* > i[class^="icon-"].icon-animated-flip-vertical {
	
	transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
	
	transform: scale(1, 1);
	-webkit-transform: scale(1, 1);
}

*:hover > i[class^="icon-"].icon-animated-flip-vertical {
	
	animation: animation-flip-vertical 0.25s linear;
	animation-iteration-count: 3;
	
	-webkit-animation: animation-flip-vertical 0.25s linear;
	-webkit-animation-iteration-count: 3;
}

@keyframes animation-flip-vertical {
	
	50% { transform: scale(1, 0); -ms-transform: scale(1, 0); opacity: 0.2; }
	100% { transform: scale(1, 1); -ms-transform: scale(1, 1); }
}

@-webkit-keyframes  animation-flip-vertical {
	
	50% { -webkit-transform: scale(1, 0); opacity: 0.2; }
	100% { -webkit-transform: scale(1, 1); }
}
/*flip vertical END*/

.animate-1-time {
	
	animation-iteration-count: 1 !important;
	-webkit-animation-iteration-count: 1 !important;
}

.animate-2-times {
	
	animation-iteration-count: 2 !important;
	-webkit-animation-iteration-count: 2 !important;
}

.animate-3-times {
	
	animation-iteration-count: 3 !important;
	-webkit-animation-iteration-count: 3 !important;
}

.animate-4-times {
	
	animation-iteration-count: 4 !important;
	-webkit-animation-iteration-count: 4 !important;
}

.animate-5-times {
	
	animation-iteration-count: 5 !important;
	-webkit-animation-iteration-count: 5 !important;
}

.animate-unlimited-times {
	
	animation-iteration-count: infinite !important;
	-webkit-animation-iteration-count: infinite !important;
}

*.disabled > i[class^="icon-"] {
	
	animation: none !important;
	-webkit-animation: none !important;
	transition: none !important;
	-webkit-transition: none !important;
}

*.disabled:hover > i[class^="icon-"] {
	
	animation: none !important;
	-webkit-animation: none !important;
	transition: none !important;
	-webkit-transition: none !important;
}