This page embeds piperchat in an iframe with runtime theming. The host (this
page) drives colors via postMessage. The iframe never exposes
ciphertext.
Try it: change the colors above and click "Apply theme" — the
chat re-skins instantly. Open this same page in two browser tabs to chat with
yourself. (Identity stays in localStorage per origin.)
?embed=1) — sidebar and
header chrome are hidden so the chat fits inside your UI.?accent=…&theme=light).piperchat:ready and then can send
piperchat:set-theme messages at any time to re-skin.postMessage({type:'piperchat:set-identity', ed25519_priv, x25519_priv, username, channel})
after piperchat:ready.