Paletas separadas para facetas en ggplot facet_grid

Pregunta
¿Cómo puedo usar una paleta de colores diferente para cada faceta? Idealmente, me gustaría tener una leyenda genérica en gris para que sirva de referencia.

Estoy trabajando en una visualización usando facet_grid de ggplot. El diseño está bien, pero me gustaría usar una paleta de colores distinta para cada fila de la cuadrícula. Mi objetivo es usar un degradado de sombra similar para cada paleta y luego vincularlos con una leyenda en escala de grises. Me gustaría hacer esto para mantener la consistencia interna de codificación de colores dentro de un conjunto de gráficos más grande. Sería increíble poder seguir usando facet_grid en lugar de usar grobs (con lo que estoy mucho menos familiarizado).

He incluido un ejemplo para trabajar con el conjunto de datos de diamantes y una agrupación arbitraria para aproximar cómo se ven mis datos.

data(diamonds) 
diamonds$arbitrary = sample(c("A", "B", "C"), length(diamonds$cut), replace = TRUE)

blues = brewer.pal(name="Blues", n=3)
greens = brewer.pal(name="Greens", n=3)
oranges = brewer.pal(name="Oranges", n=3)
purples = brewer.pal(name="Purples", n=3)

ggplot(diamonds) + 
  geom_bar(aes(x = clarity, stat = "bin", fill = arbitrary, group = arbitrary)) + 
  facet_grid(cut~.) + 
  # Here I assign one palette... is this where I could also
  # designate the other palettes?
  scale_fill_manual(values = blues)

¡Gracias!

Respuestas a la pregunta(1)

Su respuesta a la pregunta