@media (hover: hover) and (pointer: fine) {
  .catalog-draggable {
    cursor: grab;
    user-select: none;
    touch-action: none;
  }

  .catalog-draggable.dragging {
    cursor: grabbing;
    opacity: .3;
    outline: 2px dashed var(--accent);
    outline-offset: 3px;
  }

  .catalog-draggable button,
  .catalog-draggable a {
    cursor: pointer;
  }
}

.catalog-drag-preview {
  position: fixed !important;
  z-index: 10000 !important;
  pointer-events: none !important;
  margin: 0 !important;
  opacity: .95;
  transform: rotate(2deg) scale(.98);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .24) !important;
  outline: 2px solid var(--accent);
  outline-offset: 2px;
  transition: none !important;
}

.category-tab.drop-target {
  background: var(--accent-soft) !important;
  outline: 2px solid var(--accent);
  outline-offset: -2px;
  transform: translateY(-2px);
}
