.special2_loading{
	background-color:rgba(59, 183, 255, 1);
	width:100%;
	height:100%;
	display:flex;
	position:absolute;
	z-index:1500;
	-webkit-box-shadow: 0 0 10px 1px rgba(0,0,0,0.2);
	box-shadow: 0 0 10px 1px rgba(0,0,0,0.2);
  border-radius:30px;
}
.special2_loading::after{
  background:linear-gradient(to right, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 0) 50%);
  animation:spin 1s infinite linear;
	width:100px;
	height:100px;
	position:absolute;
	z-index:1600;
	top:50%;
	left:50%;
	/*Получається translate впливає на transform-origin. Тому треба по нулям.*/
	-webkit-transform-origin:0% 0%;
	transform-origin:0% 0%;
  content:'';
  border-radius:50%;
	-webkit-transform:translate(-50%, -50%);
	transform:translate(-50%, -50%);
}
.special2_loading::before{
  content:'';
	width:80px;
	height:80px;
	position:absolute;
	z-index:1650;
	top:50%;
	left:50%;
	-webkit-transform:translate(-50%, -50%);
	transform:translate(-50%, -50%);
	-webkit-transform-origin:center;
	transform-origin:center;
  background:rgba(59, 183, 255, 1);
  border-radius:50%;
}
@keyframes spin {
  from { 
		-webkit-transform:rotate(0deg) translate(-50%, -50%);
		transform:rotate(0deg) translate(-50%, -50%);
	}
  to {
		-webkit-transform:rotate(360deg) translate(-50%, -50%);
		transform:rotate(360deg) translate(-50%, -50%);
	}
}
.special2_success{
	background-color:rgba(255,255,255,1);
	width:100%;
	height:100%;
	display:flex;
	position:absolute;
	z-index:1500;
	border-radius:30px;
	-webkit-box-shadow: 0 0 10px 1px rgba(0,0,0,0.2);
	box-shadow: 0 0 10px 1px rgba(0,0,0,0.2);
}
.special2_success::before{
	width:100%;
	height:100%;
	position:absolute;
	z-index:10;
	content:'';
	top:50%;
	left:50%;
	-webkit-transform:translate(-50%, -50%);
	transform:translate(-50%, -50%);
	border-radius:30px;
	background-color:rgba(214, 255, 221, 1);
	animation:special2_success_bg_anim 9s infinite ease-out;
}
.special2_error{
	background-color:rgba(255,255,255,1);
	width:100%;
	height:100%;
	display:flex;
	position:absolute;
	z-index:1500;
	border-radius:30px;
	-webkit-box-shadow: 0 0 10px 1px rgba(0,0,0,0.2);
	box-shadow: 0 0 10px 1px rgba(0,0,0,0.2);
}
.special2_error::before{
	width:100%;
	height:100%;
	position:absolute;
	z-index:10;
	content:'';
	top:50%;
	left:50%;
	-webkit-transform:translate(-50%, -50%);
	transform:translate(-50%, -50%);
	border-radius:30px;
	background-color:rgba(255, 196, 196, 1);
	animation:special2_error_bg_anim 6s infinite ease-out;
	border-radius:30px;
}
@keyframes special2_success_bg_anim{
	0%{
		background-color:rgba(17, 255, 0, 0);
	}
	80%{
		background-color:rgba(17, 255, 0, 0.6);
	}
	100%{
		background-color:rgba(17, 255, 0, 0);
	}
}
@keyframes special2_error_bg_anim{
	0%{
		background-color:rgba(255, 0, 0, 0);
	}
	70%{
		background-color:rgba(255, 0, 0, 0.5);
	}
	100%{
		background-color:rgba(255, 0, 0, 0);
	}
}
.special2_status_img{
	width:70px;
	height:auto;
	margin-bottom:15px;
}