Yeah, it's bad, especially for a vehicle with a small battery pack, using heat is super punishing, and they don't really explain to users how to master the HVAC settings, they just recommend turning it all off and using heated seats, which is not a workable solution sometimes.
It's still a bit confusing to me in practice, but I made a post listing a few of the HVAC behaviors listed in the service manual related to cold temperature here
https://www.mychevysparkev.com/forum/viewtopic.php?f=9&t=9292&p=28643#p28652.
I use the dedicated front windshield defog/defrost button to keep the windows defogged and dehumidified rapidly at the start of my drive using copious amounts of power. After it's adequately clear, I'll switch to a lower energy setting that will maintain defogging by turning off AC/temp or simply lowering the temperature until it's not using >2kW of power. By having defrost/defog on while AC/temp is off, the car will not dehumidify with the compressor and PTC heater. Instead, it will close the recirculation flap and bring in dry outside air using the blower only, which consumes a paltry ~120W of power at its highest setting (versus 1-7kW for the heater core and compressor). It'll be cold air, but eh, the range savings is nice, and heated seats and a jacket make it tolerable.
I haven't really experimented enough to find out whether it scavenges heat from the heater core coolant even after you turn off AC/temp, but I have a feeling this thermal management system isn't that sophisticated. The best I can imagine is the still-warm heat exchanger and coolant reject some heat passively until they've completely cooled off.
If I want to defog and also keep the cabin warm, I'll enable "Auto" operation which will leave it to the Spark to decide what is the most efficient means to heat and defog by monitoring the moisture sensor on the windshield and the various temperature sensors to select between higher power heated dehumidification and full/partial/no outside air recirculation. Its strategy also largely depends on your setpoint temperature.
The Spark's thermal management system is horribly compartmentalized. There are separate coolant loops for the cabin heater, battery heater, transmission, and electronics. All of these could share heat and save energy because that's REALLY important in a BEV with <20kWh capacity. It seems like GM took the easy route and designed by catalog for the spark, and in the case of the new Bolt and Bolt EUV, they still use 3 separate coolant loops and no heat pump.