
def delete_carbonio_account(email: str) -> dict:
    """Remove uma conta Carbonio (zmprov da) — Spec 022."""
    email = email.lower().strip()
    if "@" not in email:
        raise ValueError("e-mail inválido")
    domain = email.split("@", 1)[1]
    assert_purge_allowed(domain)
    if not carbonio.account_exists(email):
        return {"ok": True, "email": email, "message": "Conta já não existia", "skipped": True}
    code, out, err = carbonio._zmprov_run("da", email, log_cmd=True)
    if code != 0 and not carbonio._is_missing_account(err, out):
        raise carbonio.CarbonioError(err or out or f"zmprov da falhou para {email}")
    carbonio.invalidate_domain_cache(domain)
    return {"ok": True, "email": email, "message": f"Conta {email} removida do Carbonio", "rc": code}
