Updates
Style library rebuilt on a typed registry
Every style now flows through one shared engine.
Short answer
Every style now renders through one typed registry and a single engine, so a fix applies everywhere at once. No output changed — the consolidation was verified against the previous implementation style by style.

What changed
All styles are now described by a single typed registry and rendered through one engine, so a fix to the renderer applies everywhere at once instead of page by page.

Why it was worth doing
Before this, each page carried its own copy of the transformation logic. A bug in how a style handled an accented character had to be fixed everywhere it appeared, and inevitably some places were missed. Consolidating on one registry means a correction lands once and applies to every page and every language at the same moment.
Does this change any output?
No. The consolidation was verified by comparing the output of every style against the previous implementation across a range of inputs, and all of them matched exactly. Text you copied before the change remains valid — characters do not expire, and nothing you have already pasted elsewhere is affected.
Why a change that alters nothing was worth making
A rebuild producing identical output is hard to justify to anyone looking only at the result, and the case for it is entirely about the next change rather than this one. Under the old arrangement the logic for a style existed in as many places as the style appeared, so correcting how one of them handled an accented character meant finding and editing every copy — and the copies were no longer identical, because they had drifted apart over time. With a single registry there is one place to correct, and the correction reaches every page and every language at the moment it lands.
How the equivalence was checked
Each style was run against the same corpus of inputs under both implementations and the outputs compared character by character. The corpus deliberately included the cases most likely to expose a difference rather than a representative sample: accented Latin letters, characters outside the basic multilingual plane, emoji sequences that must not be split into their component code points, empty strings, and strings consisting only of whitespace. Comparing rendered output rather than reading the two implementations side by side is the point — code that looks equivalent frequently disagrees on precisely these edges.
What it means for text you have already copied
Nothing at all. Characters do not expire, and anything already pasted into a profile, a document or a message is unaffected by how it was generated. The one practical consequence is forward-looking: a style you copied before the change and copy again now is guaranteed to produce the same result, which was not something anyone could promise while several separate implementations of it existed.