SVG shadow-root is closed

You could use "currentColor" property in your fill attribute to styling: icon.svg

and styles for "icon-ufo" class will be like

.icon-ufo {
    color: green;
}

.icon-ufo:hover {
   color: red;
}

The DOM of the referenced element is not part of the DOM of the referencing HTML page. It has isolated style sheets.

But the shadow element inherits styles from the referencing <use> element. This means that as long as the referenced element does not set the styles itself in the sprite or in a style sheet associated with the sprite, you can change (and animate) every inheritable style property on the icon by styling the <use> element.