```python
def seal_serial(serial: str) -> str:
    if not isinstance(serial, str):
        raise TypeError("Input must be a string")
    if len(serial) != 8 or not serial.isdigit():
        raise ValueError("Input must be exactly eight decimal digits")
    
    weight_cycle = [3, 7, 1, 3, 7, 1, 3, 7]
    seal_sum = sum(int(digit) * weight for digit, weight in zip(serial, weight_cycle))
    remainder = seal_sum % 11
    seal_char = "K" if remainder == 10 else str(remainder)
    
    return serial + seal_char
```