Index: src/views/shell.ejs
===================================================================
--- src/views/shell.ejs	(revision 6b0a8e2357af1aac8d4d1145a3b272f9fe33e3fd)
+++ src/views/shell.ejs	(revision 1dca23bd8d5a3b7956466c314c7f512f6a0a3e88)
@@ -330,5 +330,21 @@
 
   document.body.addEventListener('pcmsNav', function(ev) {
-    var next = ev.detail && ev.detail.bodyClass;
+    var d = ev.detail || {};
+    // Per-site accent + palette bijwerken (head wordt niet mee-geswapt bij htmx-nav,
+    // dus zonder dit erft een artiest de kleuren van de vorige pagina).
+    if (d.accent && /^#[0-9a-fA-F]{6}$/.test(d.accent)) {
+      var sa = document.getElementById('pcms-site-accent');
+      if (sa) {
+        sa.textContent =
+          ':root,[data-palette]{--accent:' + d.accent +
+          ';--accent-soft:color-mix(in srgb,' + d.accent + ' 80%,white)' +
+          ';--accent-tint:color-mix(in srgb,' + d.accent + ' 12%,transparent);}';
+      }
+    }
+    if (d.palette && /^[a-z0-9-]+$/i.test(d.palette)) {
+      document.documentElement.setAttribute('data-palette', d.palette);
+    }
+
+    var next = d.bodyClass;
     if (!next) return;
     // Server may send a multi-class string ("on-post extra"). Only the first
