.instructions {
	color: #eee;
	font-size: 20px;
	padding: 20px;
	line-height: 1.4;
	font-family: verdana;
}
.instructions b {
	color: gold;
}
.instructions label {
	cursor: pointer;
}
.instructions label span:hover {
	text-decoration: underline;
}

.movable {
  position: absolute;
  left: 0;
  top: 0;
  transition: transform 0.2s;
}

body {
  margin: 0px;
  font-family: sans-serif;
  background-color: #333;
}

.input_video {
  display: none;
}
.output_canvas {
  display: none;
  width: 400px;
}

.wand {
  height: 0px;
  width: 0px;
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: 10;
  transition: transform 0.1s;
}

.wand::after {
  content: '';
  display: block;
  height: 50px;
  width: 50px;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0;
  transform: translate(-50%, -50%);
  transition: transform 0.2s;
  box-shadow:
    inset 0 0 4px 2px white,
    inset 0 0 4px #0098db,
    0 0 8px #fff,
    -4px 0 10px #f0fd,
    4px 0 10px #0ffd
  ;
  animation: rotate-cursor 5s infinite linear;
}

@keyframes rotate-cursor {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

.photo_frame {
  width: 200px;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 3px;
  background: #fff;
  transition: transform 0.2s;
  box-shadow: 0px 2px 10px 0px #000e;
}
.element_dragging .photo_frame {
  box-shadow: 0px 10px 20px 5px #000c;
  transform: scale(1.2);
}
.photo img {
  width: 100%;
  display: block;
}
.photo_a {
  transform: translate(5vw, 45vh);
}
.photo_b {
  transform: translate(55vw, 50vh);
}
.photo_a .photo_frame {
  width: 250px;
}