wp_register_styles do not actually import the style in code. You can put it anywhere you want, without big impact on performance.
The moment when you actually import a style file registered via wp_register_styles is when you call wp_enqueue_styles.
wp_register_style( 'my-plugin', plugins_url( 'my-plugin/css/plugin.css' ) );
if ( true === $i_want_this_script_to_be_included ) {
wp_enqueue_style( 'my-plugin' );
}
You can read more in docs: wp_register_style and wp_enqueue_style
wp_register_script and wp_enqueue_script works the same way for JS scripts.