Attach (recommended) or Link to PDF file here:

Configuration:
- Web browser and its version: Firefox 88.0.1
- Operating system and its version: Windows 10.0.19043.985]
- PDF.js version: (commit 706c27b9d4b3b9ff6fc3de82bcf71a0610604a1c) (also tested pr/13473 at 296bbdc4)
- Is a browser extension: N/A

Steps to reproduce the problem:
1. Enable experimental XFA
2. Open PDF
[dir2020-02_form.pdf](https://github.com/mozilla/pdf.js/files/6571084/dir2020-02_form.pdf)

What is the expected behavior? (add screenshot)
Margins of `subforms` (e.g. *General_Election_Information*, *General_Information_Other*) are honored.
![image](https://user-images.githubusercontent.com/7104454/120212605-32066300-c200-11eb-9c66-f2d05c9451ec.png)
What went wrong? (add screenshot)
Margins are not honored. 
![image](https://user-images.githubusercontent.com/7104454/120212535-1ac77580-c200-11eb-8332-9924602ef991.png)

Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):

layoutText,
  measureToString,
  toStyle,
} from "./html_utils.js";
import { addHTML, flushHTML, getAvailableSpace } from "./layout.js";
import {
  getBBox,
  getColor,
  getFloat,
  getInteger,
  getKeyword,
  getMeasurement,
  getRatio,
  getRelevant,
  getStringOption,
  HTMLResult,
} from "./utils.js";
import { stringToBytes, Util, warn } from "../../shared/util.js";
import { searchNode } from "./som.js";
const TEMPLATE_NS_ID = NamespaceIds.template.id;
const MAX_ATTEMPTS_FOR_LRTB_LAYOUT = 2;
function _setValue(templateNode, value) {
  if (!templateNode.value) {
    const nodeValue = new Value({});
    templateNode[$appendChild](nodeValue);
    templateNode.value = nodeValue;
  }
  templateNode.value[$setValue](value);
}
function getRoot(node) {