.vis.timeline.root {
  position: relative;
  border: 1px solid #bfbfbf;

  overflow: hidden;
  padding: 0;
  margin: 0;

  box-sizing: border-box;
}

.vis.timeline .vispanel {
  position: absolute;

  padding: 0;
  margin: 0;

  box-sizing: border-box;
}

.vis.timeline .vispanel.center,
.vis.timeline .vispanel.left,
.vis.timeline .vispanel.right,
.vis.timeline .vispanel.top,
.vis.timeline .vispanel.bottom {
  border: 1px #bfbfbf;
}

.vis.timeline .vispanel.center,
.vis.timeline .vispanel.left,
.vis.timeline .vispanel.right {
  border-top-style: solid;
  border-bottom-style: solid;
  overflow: hidden;
}

.vis.timeline .vispanel.center,
.vis.timeline .vispanel.top,
.vis.timeline .vispanel.bottom {
  border-left-style: solid;
  border-right-style: solid;
}

.vis.timeline .background {
  overflow: hidden;
}

.vis.timeline .vispanel > .content {
  position: relative;
}

.vis.timeline .vispanel .shadow {
  position: absolute;
  width: 100%;
  height: 1px;
  box-shadow: 0 0 10px rgba(0,0,0,0.8);
  /* TODO: find a nice way to ensure shadows are drawn on top of items
  z-index: 1;
  */
}

.vis.timeline .vispanel .shadow.top {
  top: -1px;
  left: 0;
}

.vis.timeline .vispanel .shadow.bottom {
  bottom: -1px;
  left: 0;
}