[data-toggle="tooltip"] {
  position: relative;
  display: inline-block;
  cursor: pointer;

  /* Tooltip Box */
  .tooltip-text {
    display: none;
    position: absolute;
    min-width: 200px;
    padding: 16px;
    font-size: 13px;
    font-weight: normal;
    text-align: left;
    color: #fff;
    background-color: #000c0c;
    border: 1px solid #d5d5d5;
    border-radius: 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1), 0 0 56px rgba(0, 0, 0, 0.08);
    z-index: 99999999;
    box-sizing: border-box;
    transform: translate(-50%, -100%);
    transition: all 0.65s cubic-bezier(0.84, -0.18, 0.31, 1.26);
    white-space: normal;
    font-style: normal;

    a {
      color: #a0e0ff;
      text-decoration: underline;
      transition: color 0.2s;
      font-size: 13px !important;

      &:hover {
        color: #39b6f5;
      }
    }

    /* Arrow */
    i {
      position: absolute;
      top: 100%;
      left: 50%;
      width: 24px;
      height: 12px;
      margin-left: -6px;
      overflow: hidden;

      &::after {
        content: '';
        position: absolute;
        width: 12px;
        height: 12px;
        left: 50%;
        background-color: #000c0c;
        transform: translate(-50%, -50%) rotate(45deg);
        box-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
      }
    }
  }

  &:not(.click):hover .tooltip-text,
  &:not(.click):focus-within .tooltip-text {
    display: block;
  }

  &.click.is-active .tooltip-text {
    display: block;
  }

  /* Placements */
  &:not([data-placement]) .tooltip-text,
  &[data-placement="top"] .tooltip-text {
    top: -10px;
    left: 50%;
    transform: translate(-50%, -100%);

    i {
      margin-left: -12px;
    }
  }

  &[data-placement="bottom"] .tooltip-text {
    top: 100%;
    left: 25%;
    transform: translate(-50%, 0);
    margin-top: 10px;

    i {
      top: -12px;
      transform: rotate(180deg);
    }
  }

  &[data-placement="left"] .tooltip-text {
    top: 50%;
    left: -10px;
    transform: translate(-100%, -50%);

    i {
      top: 50%;
      left: 100%;
      transform: translateY(-50%) rotate(-90deg);
    }
  }

  &[data-placement="right"] .tooltip-text {
    top: 50%;
    left: 100%;
    transform: translate(0, -50%);
    margin-left: 10px;

    i {
      top: 50%;
      left: -12px;
      transform: translateY(-50%) rotate(90deg);
    }
  }
}