[class^="tooltip-"] {
  position: relative;
  display: inline-block;
}

[class^="tooltip-"]:before, [class^="tooltip-"]:after {
  position: absolute;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);

  visibility: hidden;
  opacity: 0;
  z-index: 10;
  pointer-events: none;

  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  transition: 0.3s ease;
}

[class^="tooltip-"]:hover:before, [class^="tooltip-"]:hover:after, [class^="tooltip-"]:focus:before, [class^="tooltip-"]:focus:after,
[class^="tooltip-"].shown:after, [class^="tooltip-"].shown:before {
  visibility: visible;
  opacity: 1;
}

[class^="tooltip-"]:before {
  content: '';
  position: absolute;
  background: transparent;
  border: 6px solid transparent;
  z-index: 11;
}

[class^="tooltip-"]:after {
  content: attr(data-title);
  background: rgba(60, 120, 60, 0.8);
  color: white;
  padding: 8px 10px;
  font-size: 12px;
  line-height: 12px;
  white-space: nowrap;
  border-radius: 2px;
}

.tooltip-top:before {
  border-top-color: rgba(60, 120, 60, 0.8);
white}

.tooltip-bottom:before {
  border-bottom-color: rgba(60, 120, 60, 0.8);
white}

.tooltip-top:before {
  margin-bottom: -12px;
}

.tooltip-top:after {
  margin-left: -18px;
}

.tooltip-top:before, .tooltip-top:after {
  bottom: 100%;
  left: 50%;
}

.tooltip-top:hover:after, .tooltip-top:hover:before, .tooltip-top:focus:after, .tooltip-top:focus:before,
.tooltip-top.shown:after, .tooltip-top.shown:before {
  -webkit-transform: translateY(-8px);
  -moz-transform: translateY(-8px);
  transform: translateY(-8px);
}

.tooltip-bottom:before {
  margin-top: -12px;
}

.tooltip-bottom:after {
  margin-left: -18px;
}

.tooltip-bottom:before, .tooltip-bottom:after {
  top: 100%;
  left: 50%;
}

.tooltip-bottom:hover:after, .tooltip-bottom:hover:before, .tooltip-bottom:focus:after, .tooltip-bottom:focus:before,
.tooltip-bottom.shown:after, .tooltip-bottom.shown:before {
  -webkit-transform: translateY(8px);
  -moz-transform: translateY(8px);
  transform: translateY(8px);
}


