\usemodule[visualcounter]

\unprotect
\definevisualcounter
  [randomcircle]
  [
    mp=visualcounter::randomcircle,
    rulethickness=1pt,
  ]

\startuseMPgraphic{visualcounter::randomcircle}
  begingroup;

  \includeMPgraphic{visualcounter::initialization}

  if (last_counter > 0) and (current_counter > 0) :
    newpicture countertext     ; countertext     := textext("\visualcounterparameter\c!text");
    newpicture max_countertext ; max_countertext := textext("\visualcounterparameter{\c!max\c!text}");

    newnumeric diameter;
    diameter := 1.75 * max(bbwidth(max_countertext), bbheight(max_countertext)); 
    
    newpath randomcircle; 
    randomcircle := fullcircle xyscaled(diameter, diameter) randomized (diameter/20);

    pickup pencircle scaled \visualcounterparameter\c!rulethickness ;
    fill randomcircle withcolor green; % Can be made configurable
    draw randomcircle withcolor blue;  % Can be made configurable

    label (countertext, origin);


  fi;
  endgroup;
\stopuseMPgraphic
\protect

\definevisualcounter
  [fuzzyitem]
  [randomcircle]
  [counter=\getvalue{v_strc_itemgroups_counter}]

\definesymbol[fuzzy][{\framed[location=depth, frame=off, strut=no]{\usevisualcounter{fuzzyitem}}}]

\starttext
\startitemize[fuzzy]
\startitem \input knuth \stopitem
\startitem \input knuth \stopitem
\stopitemize
\stoptext

