- backend-sync: built-in/default-named skins store CSS without shadowing
the palette; empty field clears the entry; reset clears the store
- context: style tag insert / same-tag replace / removal lifecycle, plus
mono-named and default-named user skin CSS application
- skin_engine: passthrough, whitespace strip, 32 KiB cap, empty default
- protocol: end-to-end resolve_skin() payload carries customCSS from YAML