```python
def cross_up(readings: list, level: int) -> int:
    """Return how many times a run of readings crosses a level going upward."""
    if not readings:
        return 0
    
    crossings = 0
    in_run = False
    
    for i in range(1, len(readings)):
        if readings[i - 1] < level <= readings[i]:
            crossings += 1
            in_run = True
        elif level < readings[i]:
            in_run = False
    
    return crossings
```