Branching on the step sign rather than `first_days <= last_days` eliminates the need for `empty?/1` because the interval bounding checks inherently guarantee non-emptiness. This aligns `Enumerable.Date.Range` with `Enumerable.Range`, eliminates a private function call per membership check, and removes 27 lines of redundant code. Assisted-by: Antigravity:Gemini-3.7-Flash