diff --git a/src/NotZune.UI/Converters/PlaylistDropHighlightConverter.cs b/src/NotZune.UI/Converters/PlaylistDropHighlightConverter.cs
new file mode 100644
index 0000000..2efb353
--- /dev/null
+++ b/src/NotZune.UI/Converters/PlaylistDropHighlightConverter.cs
@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using Avalonia.Data.Converters;
+using Avalonia.Media;
+using NotZune.Domain.Models;
+
+namespace NotZune.UI.Converters;
+
+///
+/// Tier B2 — returns an accent brush when the bound Playlist equals the VM's currently
+/// hovered drop target, transparent otherwise.
+///
+public sealed class PlaylistDropHighlightConverter : IMultiValueConverter
+{
+ public static readonly PlaylistDropHighlightConverter Instance = new();
+
+ public object? Convert(IList