diff --git a/src/components/berths/berth-columns.tsx b/src/components/berths/berth-columns.tsx
index 42da94ca..2f700d9b 100644
--- a/src/components/berths/berth-columns.tsx
+++ b/src/components/berths/berth-columns.tsx
@@ -176,6 +176,7 @@ function ActionsCell({ row }: { row: { original: BerthRow } }) {
variant="ghost"
size="icon"
className="h-8 w-8"
+ aria-label={`Row actions for berth ${berth.mooringNumber ?? ''}`.trim()}
onClick={(e) => e.stopPropagation()}
>
diff --git a/src/components/clients/client-columns.tsx b/src/components/clients/client-columns.tsx
index 02bbe610..c7512de3 100644
--- a/src/components/clients/client-columns.tsx
+++ b/src/components/clients/client-columns.tsx
@@ -302,6 +302,7 @@ export function getClientColumns({
variant="ghost"
size="icon"
className="h-7 w-7"
+ aria-label={`Row actions for ${row.original.fullName ?? 'client'}`}
onClick={(e) => e.stopPropagation()}
>
diff --git a/src/components/interests/berth-recommender-panel.tsx b/src/components/interests/berth-recommender-panel.tsx
index 86d9aced..5b0a53e9 100644
--- a/src/components/interests/berth-recommender-panel.tsx
+++ b/src/components/interests/berth-recommender-panel.tsx
@@ -503,6 +503,8 @@ export function BerthRecommenderPanel({
variant="outline"
onClick={() => setFiltersOpen((v) => !v)}
disabled={!hasDimensions}
+ aria-expanded={filtersOpen}
+ aria-controls="recommender-filters-body"
>
{filtersOpen ? 'Hide filters' : 'Add filters'}
@@ -542,7 +544,9 @@ export function BerthRecommenderPanel({
{!collapsed && filtersOpen && hasDimensions ? (
-
+
) : null}
{!collapsed && hasDimensions && areaChips.length > 1 ? (
diff --git a/src/components/interests/interest-columns.tsx b/src/components/interests/interest-columns.tsx
index 074e240a..fb756f93 100644
--- a/src/components/interests/interest-columns.tsx
+++ b/src/components/interests/interest-columns.tsx
@@ -297,6 +297,7 @@ export function getInterestColumns({
variant="ghost"
size="icon"
className="h-7 w-7"
+ aria-label={`Row actions for ${row.original.clientName ?? 'interest'}`}
onClick={(e) => e.stopPropagation()}
>
diff --git a/src/components/interests/interest-list.tsx b/src/components/interests/interest-list.tsx
index 1b24b127..c6009427 100644
--- a/src/components/interests/interest-list.tsx
+++ b/src/components/interests/interest-list.tsx
@@ -183,11 +183,17 @@ export function InterestList() {
{/* Kanban view is desktop-only — mobile drops the toggle and
falls back to the list/cards view (the board's column
horizontal-scroll model is unusable at phone widths). */}
-
+