Index: chapterx-frontend/src/pages/admin/AdminGenresPage.tsx
===================================================================
--- chapterx-frontend/src/pages/admin/AdminGenresPage.tsx	(revision 73b69b22fa1e9888b8530a66db4a150efb8f52bc)
+++ chapterx-frontend/src/pages/admin/AdminGenresPage.tsx	(revision 0b502c2664f4d6c64626f3394b4f1dc540e0aa9b)
@@ -10,5 +10,6 @@
 export const AdminGenresPage: React.FC = () => {
   const navigate = useNavigate()
-  const { genres, fetchGenres, addGenre, deleteGenre } = useStoryStore()
+  const { genres, fetchGenres, addGenre, deleteGenre, stories } = useStoryStore()
+  const publishedStories = stories.filter(s => s.status === 'published')
   const { addToast } = useUIStore()
   const [addOpen, setAddOpen] = useState(false)
@@ -75,14 +76,14 @@
               </div>
               <div className="flex items-center gap-4">
-                <span className="text-slate-500 text-sm">{genre.story_count} stories</span>
+                <span className="text-slate-500 text-sm">{publishedStories.filter(s => s.genres.some(g => g.toLowerCase() === genre.name.toLowerCase())).length} stories</span>
                 <button
                   onClick={() => setDeleteTarget(genre)}
                   className={`transition-colors p-1 rounded ${
-                    genre.story_count > 0
+                    publishedStories.some(s => s.genres.some(g => g.toLowerCase() === genre.name.toLowerCase()))
                       ? 'text-slate-700 cursor-not-allowed'
                       : 'text-slate-500 hover:text-rose-400 hover:bg-rose-500/10'
                   }`}
-                  disabled={genre.story_count > 0}
-                  title={genre.story_count > 0 ? 'Cannot delete genre with stories' : 'Delete genre'}
+                  disabled={publishedStories.some(s => s.genres.some(g => g.toLowerCase() === genre.name.toLowerCase()))}
+                  title={publishedStories.some(s => s.genres.some(g => g.toLowerCase() === genre.name.toLowerCase())) ? 'Cannot delete genre with stories' : 'Delete genre'}
                 >
                   <Trash2 size={14} />
