"""The HTML surface: a restricted HTML/CSS profile that round-trips with the document. A model on this surface writes a page instead of calling tools. The page is parsed back into a `DesignDoc` and rendered by the same renderer as every other surface, so its reward is directly comparable, structure term included. Nothing here runs in a browser, so model-written markup is never executed. The profile is what a person would write to position things on a fixed canvas:
Summer Sale
Every child of the canvas is one element, back to front (or by `z-index`). `img` is an asset, anything containing text is a text box, anything else is a shape. `position:absolute` is implied. Nothing wraps; lines break on `
`, or on newlines under `white-space:pre`, exactly as a browser would treat them. Beyond the profile, the parser reads HTML the way models tend to write it and a browser would render it: a `