# Rendu dom-shadow

Enregistrer le moteur avec `domShadowRegister(theatre)`, puis choisir `dom-shadow`
avec `mount(container, {render:'dom-shadow'})` ou `renderSet('dom-shadow')`.

Le moteur crée un hôte `.alloframe-shadow-host` dédié, doté d’une racine ouverte.
Il ne prend pas possession d’une racine shadow préexistante du conteneur.
Les styles internes et nommés sont placés dans cette racine. Les variables CSS
`--alloframe-*` héritées de l’hôte restent utilisables.

Les sources, vues, fenêtres, rideaux, propriétés et callbacks sont conservés
lors d’un changement de moteur. Les anciens abonnements sont nettoyés.
La restauration directe utilise
`stateGet()` et `stateRestore()`.

Les tests Node couvrent le DOM simulé. Les tests navigateur vérifient notamment
la géométrie comparée, l’héritage CSS, l’isolation des styles et la libération des événements.
Une réussite Node ne prouve pas le rendu CSS réel. Voir [validation.md](validation.md).
