body {
  #magicMouseCursor {
    position: fixed;
    width: 35px;
    height: 35px;
    border: 1px solid #000;
    border-radius: 50%;
    z-index: 99999;
    left: 0;
    top: 0;
    transition: transform 0.07s, width 0.3s, height 0.3s;
    pointer-events: none;

    &.cursor-square {
      border-radius: 0;
    }
  }

  #magicPointer {
    height: 20px;
    width: 20px;
    border: 1px solid black;
    top: 0;
    left: 0;
    position: fixed;
    z-index: 99999;
    border-radius: 50%;
    pointer-events: none;
    transition: background 0.2s, width 0.2s, height 0.2s, box-shadow 0.2s;

    &.pointer-blur {
      height: 50px;
      width: 50px;
      background: none;
      border: 1px solid #fff;
      box-shadow: 0px 0px 15px -5px black;
    }

    &.pointer-overlay {
      height: 50px;
      width: 50px;
      mix-blend-mode: difference;
      background: white;
      box-shadow: 0px 0px 15px -5px white;
      border-color: transparent;
    }

    &.is-hover {
      background: red;
    }
  }

  .magic-hover {
    transition: all 0.2s;

    &:hover {
      cursor: none;
    }
  }
}