body {
  cursor: none;
}

@media (pointer: coarse) {
  body {
    cursor: auto;
  }
  .cursor-dot,
  .cursor-circle {
    display: none;
  }
}

.cursor-dot {
  position: fixed;
  width: 8px;
  height: 8px;
  background: var(--base-color-bright);
  border-radius: 50%;
  pointer-events: none;
  z-index: 9999;
  transform: translate(-50%, -50%);
  background: var(--highlight-color-2-teal);
}

.cursor-circle {
  position: fixed;
  width: 40px;
  height: 40px;
  border: 2px solid var(--base-color-bright);
  border-radius: 50%;
  pointer-events: none;
  z-index: 9999;
  transform: translate(-50%, -50%);
  border-color: var(--highlight-color-2-teal);
}

.cursor-dot,
.cursor-circle {
  opacity: 0;
  transition: opacity 0.2s ease;

  .cursor-active & {
    opacity: 1;
  }
}
