## Bug description

Sites built with Tailwind use a lot of classes like: `text-base leading-6 font-medium text-gray-500 hover:text-gray-900 focus:outline-none focus:text-gray-900 transition ease-in-out duration-150` 

The problem is with the ones that have a colon (`:`) inside them. Simmerjs crashes with the following:

```
Failed to execute 'querySelectorAll' on 'Document': 'A.text-base.leading-6.text-gray-400.hover:text-gray-500.hover:text-white' is not a valid selector
```

... bringing down the entire toolbar.

## Expected behavior

The toolbar shouldn't crash when your page contains a CSS class with a colon in it.

https://stackoverflow.com/questions/45110893/select-elements-by-attributes-with-colon

## How to reproduce

1. Make a page with a `<button />` that has a class `with:colon`.
2. Wait for a few events to be captured or click the button yourself
3. Open the toolbar, click "heatmap" and watch it burst up in flames (and then crash)

posthog/models/event.py
class Meta:
        indexes = [
            models.Index(fields=["elements_hash"]),
            models.Index(fields=["timestamp", "team_id", "event"]),
        ]
    def _can_use_cached_query(self, last_updated_action_ts):
        if not self.team_id in LAST_UPDATED_TEAM_ACTION:
            return False
        if not self.team_id in TEAM_EVENT_ACTION_QUERY_CACHE:
            return False
        if not self.event in TEAM_EVENT_ACTION_QUERY_CACHE[self.team_id]:
            return False
        if not self.team_id in TEAM_ACTION_QUERY_CACHE:
            return False
        
        if last_updated_action_ts > LAST_UPDATED_TEAM_ACTION[self.team_id]:
            return False
        return True
    @property
    def person(self):
        return Person.objects.get(team_id=self.team_id, persondistinctid__distinct_id=self.distinct_id)
    
    
    
    
    @property
    def actions(self) -> List:
        last_updated_action_ts = Action.objects.filter(team_id=self.team_id).aggregate(models.Max("updated_at"))[
            "updated_at__max"