_kmh = mps_to_km_per_hour(spd_mps);
        fiAirspeed.updateAirSpeed(spd_kmh);
        if (qs.spd) qs.spd.textContent = Math.round(spd_kmh);
      }

      // vertical speed (m/s → km/min)
      if (Number.isFinite(g.climb_mps)) fiVertical.updateVerticalSpeed(mps_to_km_per_min(g.climb_mps));

      // altitude (prefer AMSL)
      let alt_m = null;
      if (Number.isFinite(g.alt_amsl_m)) alt_m = g.alt_amsl_m;
      else if (Number.isFinite(g.alt_rel_m)) alt_m = g.alt_rel_m;
      if (alt_m != null) {
   