/* css/cursor.css */
#cursor {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  pointer-events: none;
  mix-blend-mode: difference;
}

#cursor-dot {
  width: 8px;
  height: 8px;
  background: var(--white);
  border-radius: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  transition: transform 0.08s;
  will-change: left, top;
}

#cursor-ring {
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  transition:
    width  0.3s var(--ease),
    height 0.3s var(--ease),
    background 0.3s,
    border-color 0.3s;
  will-change: left, top;
}

/* Hover state */
body.cursor-hover #cursor-ring {
  width: 56px;
  height: 56px;
  background: rgba(139, 92, 246, 0.12);
  border-color: var(--purple-bright);
}

/* Hide on touch devices */
@media (hover: none) {
  #cursor { display: none; }
  body { cursor: auto; }
  button, a { cursor: pointer; }
}
