*,
*::before,
*::after {
  box-sizing: border-box;
}

/*
 * generic drag styles
 */
.draggable {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  z-index: 10;
  background-color: #67a8d6;
  border-radius: 5px;
  box-shadow: 2px 2px 10px -5px #000;
  -webkit-transform: translate(0px, 0px);
          transform: translate(0px, 0px);
  transition-property: background-color, box-shadow;
  transition-duration: 0.18s;
  transition-timing-function: ease-in-out;
}
.draggable.drag-elem {
  min-width: 40px;
  padding: 2em 0.5em;
  color: #fff;
}
.draggable.drag-dragging {
  z-index: 9999;
  box-shadow: 2px 20px 40px -5px rgba(0, 0, 0, 0.4);
}
.draggable.drag-dropped {
  box-shadow: 1px 1px 10px -4px rgba(0, 0, 0, 0.4);
}
.draggable.drag-can-drop {
  color: #000;
  background-color: #a9ff9a;
}
img.draggable {
  /*border: 1px solid #f00;*/
}
img.draggable.drag-can-drop {
  border-color: #a9ff9a;
}
/*
 * generic dropzone styles
 */
.dropzone {
  background-color: #ccc;
  display: block;
  /*width: 100%;*/
  margin: 15px 0 60px 0;
  transition: background-color 0.3s;
  border-radius: 4px;
  border: dashed 4px transparent;
}
.dropzone.drop-active {
  border-color: #aaa;
}
.dropzone.drop-target {
  background-color: #29e;
  border-color: #fff;
  border-style: solid;
}
.container {
  /*padding: 30px;*/
}
