/* -- LOADING ANIMATIONS -- */
/* Loader one: Pulse */
.loader.one {
	width: 100px;
	height: 100px;
}

.loader.one .circle {
	height: 100px;
	width: 100px;
	background: #E427F9;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 50px;
	/* TODO: PART 1.2 - Add pulse animation */
	animation-name: pulse;
	animation-duration: 2s;
	animation-iteration-count: infinite;
}

/* TODO: PART 1.3 - Delay pulse animation for circle two */
.loader.one .second.circle {
	animation-delay: 0.45s;
}

/* TODO: PART 1.1 - Create pulse animation */
@keyframes pulse {
	from { 
		opacity: 1; 
		transform: scale(0); 
	}
	to {
		opacity: 0; 
		transform: scale(1); 
	}
}

/* Loader two: Wave */
.loader.two {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	width: 110px;
}

.loader.two .dot {
	height: 30px;
	width: 30px;
	background: #000;
	border-radius: 15px;
	background: #F76A4D;
	/* TODO: PART 2 - Add wave animation */
	animation-name: wave;
	animation-duration: 2s;
	animation-iteration-count: infinite;
}

/* TODO: PART 2 - Add delays and dot colors */
.loader.two .second.dot{
	animation-delay: 0.25s;
	background: #4DB1F7;
}
.loader.two .third.dot{
	animation-delay: 0.5s;
	background: #7DE76A;
}

/* TODO: PART 2 - Create wave animation */
@keyframes wave {
	0% { transform: translateY(0px) }
	20% { transform: translateY(-25px); }
	40% { transform: translateY(0px); }
}

/* Loader three: Flip */
/* TODO: PART 3 - Style the flip card */
.loader.three .flip-tile {
	height: 100px;
	width: 100px;
	background: #F98527;
	/* TODO: PART 3 - Add flip animation to flip card */
	animation: flip 2.6s infinite;
}
/* TODO: PART 3 - Write flip animation */
@keyframes flip {
	0% { transform: perspective(300px); }
	50% { transform: perspective(300px) rotateY(-180deg);}
	100% { transform: perspective(300px) rotateY(-180deg) rotateX(180deg); }
}

/* Loader four: Spin */
.loader.four .rings {
	position: relative;
	width: 100px;
	height: 100px;
}

.loader.four .ring {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	position: absolute;
	top: 50%; left: 50%;
	transform: translate(-50%, -50%);
	overflow: hidden;
}
.loader.four .ring.two {
	width: 80%;
	height: 80%;
}
.loader.four .ring.three {
	width: 60%;
	height: 60%;
}

.loader.four .ring .mask {
	width: 93%;
	height: 93%;
	border-radius: 50%;
	position: absolute;
	top: 50%; left: 50%;
	transform: translate(-50%, -50%);
	background: #E5F1F7;
}

.loader.four .ring .arc-container {
	width: 80%;
	height: 100%;
	position: absolute;
	left: 10%;
	overflow: hidden;
	transform-origin: 50% 50%;
	border-radius: 20%;
	/* TODO: PART 4 - Add spin animation */
	animation: spin 1s linear infinite;
}

/* TODO: PART 4 - Add spin shifts for other rings */
.loader.four .ring.two .arc-container {
	animation-delay: 0.2s;
	animation-duration: 1.4s;
	animation-direction: reverse;
}
.loader.four .ring.three .arc-container {
	animation-delay: 0.1s;
	animation-duration: 0.6s;
}

.loader.four .ring .arc {
	width: 100%;
	height: 50%;
	position: absolute;
	background: #10D4C6;
	/* TODO: PART 4 - Add color animation */
	animation: spinColor 2.2s linear infinite;
}

/* TODO: PART 4 - Add spin color shifts for other rings */
.loader.four .ring.two .arc {
	animation-delay: 0.2s;
	animation-duration: 2.4s;
	animation-direction: reverse;
}
.loader.four .ring.three .arc {
	animation-delay: 0.1s;
	animation-duration: 2.8s;
}

/* TODO: PART 4 - Create spin animation */
@keyframes spin {
	0% { border-radius: 0%; transform: rotate(0deg); }
	50% { border-radius: 50%; transform: rotate(180deg);}
	100% { border-radius: 0%; transform: rotate(360deg); }
}

/* TODO: PART 4 - Create spin color animation */
@keyframes spinColor {
	0% { background: #10D4C6; }
	25% { background: #3068CD; }
	50% { background: #7910D4; }
 	75% { background: #41EA97; }
}
