```python
def steer_forklift(aisles: int, bays: int, moves: list) -> list:
    if aisles <= 0 or bays <= 0:
        raise ValueError("Aisle and bay counts must be positive integers.")
    if moves is None:
        return [0, 0]
    if not all(word in ["north", "south", "east", "west"] for word in moves):
        raise ValueError("Invalid move word.")
    
    for move in moves:
        if move == "north":
            bays += 1
        elif move == "south":
            bays -= 1
        elif move == "east":
            aisles += 1
        elif move == "west":
            aisles -= 1
    
    if aisles < 0 or bays < 0:
        raise ValueError("Forklift cannot move off the floor.")
    
    return [aisles, bays]
```