I don't believe you can do that, you'd have to hide it entirely and provide your own graphic, managing its position, etc.; basically, reinventing the text input field.
The closest you can come with CSS is
caret-color, which lets you set the color in modern browsers but won't work in IE (and is only supported in very recent versions of Edge, the ones based on Blink and V8 instead of EdgeHTML and JScript). My impression is you want to do more than that. :-)