/* body */
.cgt-card-body{
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	transition:opacity 1.5s,transform 0.3s;
	transform-style:preserve-3d;
}
/* body-hidden */
.cgt-control.cgt-card-body-hidden .cgt-card-body{
	opacity:0;
}
/* body x cstate */
.cgt-card-body.cgt-cstate-init{
	cursor:pointer;
}
.cgt-card-body.cgt-cstate-wait{
	cursor:wait;
}
.cgt-card-body.cgt-cstate-hit,
.cgt-card-body.cgt-cstate-miss{
	cursor:default;
}
/* body-(animation step) */
.cgt-card-body.cgt-card-body-flip{
	transition:transform 2s;
	transform:rotateY(180deg);
}
.cgt-card-body.cgt-card-body-shake{
	animation-name:kf-card-body-shake;
	animation-iteration-count:8;
	animation-duration:0.15s;
	animation-timing-function:ease;
}
@keyframes kf-card-body-shake{
	0%{
		left:0;
		right:0;
	}
	25%{
		left:4px;
		right:-4px;
	}
	75%{
		left:-4px;
		right:4px;
	}
	100%{
		left:0;
		right:0;
	}
}
.cgt-card-body.cgt-card-body-flipback{
	transition:transform 1.5s;
	transform:rotateY(0);
}
.cgt-card-body.cgt-card-body-erase{
	transition:opacity 0.6s;
	opacity:0.5;
}
/* front & back */
.cgt-card-front,
.cgt-card-back{
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	background:white;
	border:1px solid #ccc;
	border-radius:5px;
	backface-visibility:hidden;
	transition:transform 0.3s;
}
.cgt-card-front{
	transform:rotateY(180deg);
}
@media (hover:hover){
	.cgt-cstate-init .cgt-card-back:hover{
		transform:scale(1.07);
	}
	.cgt-cstate-init .cgt-card-back:active{
		transform:scale(0.8);
	}
}
/* front-pic & back-pic */
.cgt-card-front-pic,
.cgt-card-back-pic{
	position:absolute;
	top:10px;
	bottom:10px;
	left:10px;
	right:10px;
	border-radius:3px;
}
/* back-pic */
.cgt-card-body.cgt-card-body-erase .cgt-card-back-pic{
	transition:opacity 0.6s;
	opacity:0;
}
