/* the link */
.box .bar {
  outline: none;
}
.box .bar:hover .val {
  font-weight: bold;
}

/* 3D effect */
.box .bar .side {
  position: absolute;
  width: 7px;
  height: 100%;
  left: 100%;
  background-color: #777;
  transform: skew(0, -45deg);
  transform-origin: top left;
}
.box .bar .top {
  position: absolute;
  width: 100%;
  height: 7px;
  bottom: 100%;
  background-color: #aaa;
  transform: skew(-45deg);
  transform-origin: bottom right;
}

/* two stacks per box */
.box .bar1 {
  position: absolute;
  left: 11%;
  bottom: 0;
  width: 39%;
  background: #f8f8f8;
}
.box .bar2 {
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 39%;
  background: #f8c8f8;
}

.box .lbl {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -37px; /*width:100%; height:24px; */
  margin-bottom: 4px;
  color: #a9a396;
  font-size: 17px;
  line-height: 1.1em;
  white-space: nowrap;
  text-align: center;
}
.box .lbl.first {
  bottom: -44px;
  font-size: 15px;
}

.box .val {
  position: absolute;
  left: 4px;
  top: -28px;
  width: 100%;
  padding: 0;
  color: #444;
  font-size: 14px;
  font-weight: normal;
  white-space: nowrap;
  text-align: center;
  z-index: 1; /* fix "due" label overlapped by a taller "undue" bar */
}
.box .val-zero {
  color: #a09a8b;
  display: none;
}

@media screen and (max-width: 500px) {
  /* On small screen, hide the side, keep the top for a depth effect! */
  .box .bar .val {
    left: 0;
  }
  .box .bar .side {
    display: none;
  }
  .box .bar .top {
    transform: none;
  } /* front facing */
}

@media (min-width: 767px) {
  /* increase bar thickness on larger displays */
  .box .bar .top {
    height: 10px;
  }
  .box .bar .side {
    width: 10px;
  }
  .box .bar .val {
    top: -32px;
  }
}
