Index: src/views/pages/auth-login.ejs
===================================================================
--- src/views/pages/auth-login.ejs	(revision 254872f895e22bd360912697cec4fed6918ca2fa)
+++ src/views/pages/auth-login.ejs	(revision 77b6fca8b61fe5ae7de9493a4cd179d49a6eea09)
@@ -63,4 +63,16 @@
     <div class="alert">Inloggen met Google is op deze site nog niet ingesteld.</div>
   <% } %>
+
+  <% if (!_admin) { %>
+    <%# Klikbare box voor de beheerder → naar de verborgen wachtwoord-login. %>
+    <a class="auth-admin-box" href="/auth/admin<%= (typeof next !== 'undefined' && next) ? '?next=' + encodeURIComponent(next) : '' %>">
+      <span class="auth-admin-box-icon" aria-hidden="true">🔑</span>
+      <span class="auth-admin-box-text">
+        <strong>Beheerder?</strong>
+        <small>Log in met gebruikersnaam &amp; wachtwoord</small>
+      </span>
+      <span class="auth-admin-box-arrow" aria-hidden="true">&rarr;</span>
+    </a>
+  <% } %>
 </div>
 
@@ -73,3 +85,15 @@
   .auth-notice-list li { margin: 4px 0; }
   .auth-sub { color: var(--ink-muted); margin: 0 0 1rem; }
+  .auth-admin-box {
+    display: flex; align-items: center; gap: .75rem;
+    margin-top: 1.25rem; padding: .8rem 1rem;
+    border: 1px solid var(--rule); border-radius: 12px;
+    background: var(--paper-2); color: var(--ink); text-decoration: none;
+    transition: border-color 120ms, background 120ms;
+  }
+  .auth-admin-box:hover { border-color: var(--accent); background: var(--paper); }
+  .auth-admin-box-icon { font-size: 1.3rem; }
+  .auth-admin-box-text { display: flex; flex-direction: column; line-height: 1.3; flex: 1; }
+  .auth-admin-box-text small { color: var(--ink-muted); font-size: .8rem; }
+  .auth-admin-box-arrow { color: var(--ink-muted); font-size: 1.1rem; }
 </style>
