Index: CHANGELOG.md
===================================================================
--- CHANGELOG.md	(revision d2078f4ee8839290efa6ab9306adb099b1a5f42a)
+++ CHANGELOG.md	(revision 06f379119fa9bb46f83f3d9e529b567209217f2d)
@@ -25,5 +25,7 @@
 ### Toegevoegd
 - Schrijfvenster kan op **volledig scherm** (knop in de editor-toolbar, of Escape om
-  terug te gaan) — fijn voor afleidingsvrij schrijven op mobiel.
+  terug te gaan) — fijn voor afleidingsvrij schrijven op mobiel. De opmaak-toolbar
+  blijft daarbij altijd bovenaan in beeld, ook als het mobiele toetsenbord opent
+  (frame volgt de visual viewport).
 - Beheerder kan z'n **Google-account koppelen** (Account → Inloggen met Google) en
   daarna óók met Google inloggen. Veilig: koppelen kan alleen terwijl je met
Index: src/views/pages/post-edit.ejs
===================================================================
--- src/views/pages/post-edit.ejs	(revision d2078f4ee8839290efa6ab9306adb099b1a5f42a)
+++ src/views/pages/post-edit.ejs	(revision 06f379119fa9bb46f83f3d9e529b567209217f2d)
@@ -1160,4 +1160,21 @@
   const fsBtn = document.getElementById('pe-fullscreen-btn');
   const editorFrame = document.querySelector('.pe-editor-frame');
+
+  // Op mobiel duwt het toetsenbord de zichtbare (visual) viewport omhoog terwijl
+  // een position:fixed-frame aan de LAYOUT-viewport blijft hangen → de toolbar
+  // schuift uit beeld. Houd het fullscreen-frame daarom gelijk aan de visual
+  // viewport (top + hoogte), zodat de toolbar altijd bovenaan zichtbaar blijft.
+  function syncFsViewport() {
+    if (!editorFrame || !editorFrame.classList.contains('pe-fs')) return;
+    const vv = window.visualViewport;
+    if (!vv) return;
+    editorFrame.style.top = vv.offsetTop + 'px';
+    editorFrame.style.height = vv.height + 'px';
+  }
+  function clearFsViewport() {
+    if (!editorFrame) return;
+    editorFrame.style.top = '';
+    editorFrame.style.height = '';
+  }
   function toggleFullscreen() {
     if (!editorFrame) return;
@@ -1167,4 +1184,15 @@
       fsBtn.setAttribute('aria-pressed', on ? 'true' : 'false');
       fsBtn.title = on ? 'Verklein' : 'Volledig scherm';
+    }
+    if (window.visualViewport) {
+      if (on) {
+        window.visualViewport.addEventListener('resize', syncFsViewport);
+        window.visualViewport.addEventListener('scroll', syncFsViewport);
+        syncFsViewport();
+      } else {
+        window.visualViewport.removeEventListener('resize', syncFsViewport);
+        window.visualViewport.removeEventListener('scroll', syncFsViewport);
+        clearFsViewport();
+      }
     }
     if (on) editor.focus({ preventScroll: true });
