/* Sortable/Drag & Drop Styles */

.sortable-ghost {
  @apply opacity-30 bg-amber-100 border-2 border-dashed border-amber-400;
}

.sortable-chosen {
  @apply cursor-grabbing shadow-2xl ring-4 ring-amber-400/50;
}

.sortable-drag {
  @apply opacity-100 shadow-2xl rotate-2 scale-105;
  transition: all 0.2s ease;
}

.sortable-fallback {
  @apply opacity-80 cursor-grabbing;
}

/* Drag handle */
.drag-handle {
  @apply cursor-grab opacity-0 group-hover:opacity-100 transition-opacity;
}

.drag-handle:active {
  @apply cursor-grabbing;
}

/* Drop zone indicators */
.drop-zone {
  @apply min-h-[100px] border-2 border-dashed border-slate-200 rounded-lg transition-all;
}

.drop-zone.drag-over {
  @apply border-amber-400 bg-amber-50;
}

.drop-zone:not(:empty) {
  @apply border-transparent;
}

/* Sortable list */
.sortable-list {
  @apply min-h-[50px];
}

/* Draggable item */
.draggable-item {
  @apply transition-all duration-200;
}

.draggable-item:hover {
  @apply shadow-md;
}

/* Placeholder for empty lists */
.sortable-empty-placeholder {
  @apply text-center py-8 text-slate-400 text-sm;
}

/* Smooth transitions */
.sortable-list .draggable-item {
  transition: transform 0.2s ease, opacity 0.2s ease;
}
