Obviously not all circuits are going to run to full capacity simultaneously, so I guess this ok? Is there some standard rule about how much overage one can have?
To figure out how much power is used in your panel, you need to do a service Load Calculation. For a dwelling this is typically done with NEC 220.82. This has the catch-alls and fudge-factors you are thinking of.
In fact this Load Calculation is absolutely essential for any additions to the electric service - and that is because of the split-bus panel. You may have noticed that the six main breakers sum to 300A, considerably more than the 150-200A of service you do have. There is no main breaker to "keep you honest". The only thing that makes this safe is the Load Calculation. However, this is vulnerable to people "just adding stuff", without revisiting the Load Calculation, and then you can have an overload. This has probably already happened and your panel may already be overloaded.
In the Load Calc, most loads fall into catch-alls or a nice 40% fold-down. However HVAC counts for hard 100% and EV charging counts for 125% because of the extreme impact this type of load has - it is the hardest load a home will ever power. People are cavalier about it and this is the path to melted stuff or a fire, even if a split-bus panel wasn't involved.
EV charging sanity
Every EV newborn seems to collect the same misinformation about EV charging - only 2 speeds exist, level 1 sucks, you need a 50A circuit with 6/3 Romex with neutral to a Leviton RV socket etc. No. EV charging is much smarter than that. Technology Connections has an excellent video on this subject, and let me cue up the "sizing" part.
Now I'm going to proceed assuming your panel is maxed out and has not a scrap of headroom available.
Option 1: power it out of the subpanel.
In this case, you determine the parts of the 220.82 Load Calculation which apply to the loads in this panel. Since none of them are HVAC, they are all 40% loads, that is, they appear in the Load Calculation as only 40% of the loads they actually are. Add up the loads and take 40% of that. Suppose the loads add up to 12.5 kW. 40% of that is 5 kW. That is 21 amps.
EV charging is a 125% load, and it takes a circuit breaker at that 125% value. So in our example that would mean a 21A ( well, 20A) breaker. That is 125% of 16 amps, the speed the EV's onboard charger could actually charge at.
However, what keeps the range and EV from going at once? Your pinky-promise? Not enough.
This is the actual role of that thing you call a wall charger, the EVSE. It tells the charger (which is actually on the car) how much power it can safely take right now. On most units that is a fixed number. But certain EVSEs are capable of energy management, such as the Wallbox or Zappi. This adds a module to the panel with sensors on the supply wires. Now that the EVSE knows the current being drawn by all loads in the panel, it can signal the car to slow charging to keep the panel and service within limits.
What service limit do we set? Well, we figured that out above, based on 40% of the loads. In my example 21A. Divide by 125% (i.e. multiply by 0.8) to get the max EV charge limit, e.g. 17A. With that limit operating, we can let the car charge right up to it. We'll be using this trick again in the other scenarios.
Option 2: charge out of a new subpanel just for HVAC.
In this one, we create a new subpanel entirely for HVAC loads. Two furnace loads and a heat pump. You already crunched the numbers on these using one of the six methods in NEC 220.82(C).
So we're doing the same trick as the other subpanel, except it's all HVAC loads and these are 100% loads. So you take the number that popped out of 220.82(C) at 100%.
And you do the same thing with the energy management EVSE with the current meters, except you are setting subpanel limit to 80% of the above number. Let's say the sum of HVAC loads is 12.5 kVA, you multiply by 80% to get 10 kVA, and that (42A) is your actual EV limit.
That's a big jump, which is why it's worth creating an HVAC subpanel.
Option 3: run it out of the main panel.
It is yet again the trick with the current monitoring module. The huge advantage here is we get to put it on the whole house. So we really have no upper speed limit except what the EVSE is physically capable of.
The disadvantage is needing to rearrange a bunch of furniture to make room for a fat breaker, and I would imagine, the difficulty of cabling from the main instead of the kitchen sub.
Can energy management deal with the existing overload?
Yes, but with simpler/dumber systems, you need dumber energy management tech. And fortunately a whole bunch of dumb energy management tech is being shoveled into the EV market, by makers who have had these things in their lines for decades, and now see a new market. They're weak for EVs, but are great for dumb storage loads like water heaters or dryers, so that'll work out just fine, and the manufacturer won't mind.
So you can use something like a SimpleSwitch so that when the heat pump comes on, it knocks out the tank water heater. Or when the emergency heat comes on, it knocks out the dryer. So the lesser load (generally the non-HVAC load due to HVAC coming in at 100%) disappears from the Load Calculation.
The other method for improving the Load Calc is more efficient appliances, and Technology Connections has a video on that too.