Index: src/views/pages/news.ejs
===================================================================
--- src/views/pages/news.ejs	(revision e67828ebc6ef294ec4f57b90c12c7022909ad3f6)
+++ src/views/pages/news.ejs	(revision 1cc8c8501811c751b7d9a23efdb885cca2ddce66)
@@ -110,5 +110,5 @@
           %>
           <% if (_nsfwText) { %>
-            <div class="tl-content nsfw-media"><span class="nsfw-veil"><span class="nsfw-veil-label">🔞 <%= p.cw || t('post.nsfw_warning') %></span><span class="nsfw-veil-btn"><%= t('post.nsfw_show') %></span></span><%- p.content %></div>
+            <div class="tl-content nsfw-media"><span class="nsfw-veil"><%- include('../partials/nsfw-veil', { cw: p.cw }) %></span><%- p.content %></div>
           <% } else { %>
             <div class="tl-content"><%- p.content %></div>
@@ -127,5 +127,5 @@
                 players here. Posts without a Klonkt embed (e.g. a plain remote audio) keep them. */ %>
           <% if (!p.embedHtml && !p.embedUrl) { auds.forEach(function(m){ %><audio class="tl-media-audio" src="<%= m.url %>" controls preload="none"></audio><% }); } %>
-          <% if (_nsfwVisual) { %><div class="nsfw-veil"><span class="nsfw-veil-label">🔞 <%= p.cw || t('post.nsfw_warning') %></span><span class="nsfw-veil-btn"><%= t('post.nsfw_show') %></span></div></div><% } %>
+          <% if (_nsfwVisual) { %><div class="nsfw-veil"><%- include('../partials/nsfw-veil', { cw: p.cw }) %></div></div><% } %>
 
           <% if (p.embedHtml) { %><div class="tl-embed"><%- p.embedHtml %></div><% } %>
