```python
"""
Melt a row of ice one simultaneous step at a time.
"""


def thaw_row(row: str, steps: int) -> str:
    if not isinstance(row, str) or not row:
        raise ValueError("thaw_row expects a non-empty string row")
    if steps < 0 or not isinstance(steps, int):
        raise ValueError("thaw_row expects a non-negative integer steps")

    def melt_step(row):
        new_row = []
        for i in range(len(row)):
            if i == 0 or i == len(row) - 1 or row[i] == '.':
                new_row.append('.')
            elif row[i - 1] == '.' or row[i + 1] == '.':
                new_row.append('.')
            else:
                new_row.append('#')
        return ''.join(new_row)

    for _ in range(steps):
        row = melt_step(row)
    return row
```