Anti Aliasing Vs Smoothstep?

Hello World,
I have a simple circle generator
but I wish to give him an antialiasing looking I tried smoothstep but it gaves me an blur effect witch is not what I was looking for

void main() {
vec2 uv = (2. *gl_FragCoord.xy - RENDERSIZE.xy) / RENDERSIZE.y,
center = vec2(ScreenPosition.xy);
float dist = distance(uv, center);
//float w = smoothstep(thickness, .0, (abs(dist-Size)));
float w = step(-thickness, -(sqrt(dist-Size)));
gl_FragColor=mix(BgColor, CcColor, w) ;

}

How can I get this precision in the plot ?
thank you

Zolt