+ minor: preserves shadow alpha