Index: src/views/partials/view-switcher.ejs
===================================================================
--- src/views/partials/view-switcher.ejs	(revision 2d2fd8c352950d0d5ff366c901fb7e2e0cf6d614)
+++ src/views/partials/view-switcher.ejs	(revision 7cf8144b1073d0f9d019acfcd4ee74b4e6a4dccd)
@@ -8,8 +8,6 @@
   // Pagina's zonder actieve feed-weergave → niets in de pill is 'actief' (Solo/Cirkel
   // + Tijdlijn/Grid grijs). Alleen Agenda krijgt z'n eigen is-active op de agenda.
-  var _neutral = ['on-shows','on-downloads','on-post','on-epk','on-linkbio','on-newsletter','on-archive','on-read']
+  var _neutral = ['on-shows','on-downloads','on-post','on-epk','on-linkbio','on-newsletter','on-archive']
                    .some(function(c){ return _bc.indexOf(c) >= 0; });
-  var _onRead = _bc.indexOf('on-read') >= 0;
-  var _sbR = (typeof siteUrlBase !== 'undefined' && siteUrlBase) ? siteUrlBase : '';
 %>
 <div class="view-switcher-wrap">
@@ -47,16 +45,12 @@
         <span><%= t('switch.grid') %></span>
       </button>
-      <%# Lezen is GEEN in-place omschakeling maar een andere route (/read), dus
-          een <a> en niet een <button>. En bewust NIET de klasse view-switch-btn:
-          de gedelegeerde klik in shell.ejs pakt alles met die klasse op, zet
-          body[data-feed-view] erop en springt op niet-feedpagina's terug naar
-          home -- dat zou deze link opeten. Andere klasse, zelfde uiterlijk.
-          aria-selected staat hier vast: syncAria() raakt alleen .view-switch-btn
-          aan, dus de actieve staat op /read blijft staan na een htmx-navigatie. %>
-      <a class="view-switch-link" href="<%= _sbR %>/read" role="tab"
-         aria-selected="<%= _onRead ? 'true' : 'false' %>">
+      <%# Lezen is een gewone derde weergave: dezelfde berichten, andere vorm.
+          Dus een <button> met data-view, net als de andere twee -- dan doen de
+          gedelegeerde klik, localStorage en syncAria in shell.ejs hun werk al. %>
+      <button type="button" class="view-switch-btn" data-view="reader" role="tab"
+              aria-selected="false">
         <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"/><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"/></svg>
         <span><%= t('switch.reader') %></span>
-      </a>
+      </button>
     </div>
     <% if (!_neutral) { %>
