I don’t know that the atZone is required. My understanding on how Duration works, it will convert the ZonedDateTimenow to an Instant. But it’s been a long time since I’ve worked with Java ZonedDateTimes so I might be misremembering. But it’s an easy experiment to run.
Duration.between(Instant::now(), (Sunrise_Time.state as DateTimeType).instant).abs.toMinutes
In case your system time zone is different from the time zone configured in openHAB, this would still work correctly, while the AI-generated suggestion would not.