/* iOS Drag and Drop Styles */

/* Prevent scrolling and text selection during iOS drag operations */
body.ios-dragging {
  overflow: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

/* Style for drag clone */
.ios-drag-clone {
  position: fixed;
  z-index: 9999;
  opacity: 0.8;
  pointer-events: none;
  background-color: #e3f2fd !important;
  border: 2px dashed #2196f3 !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  transform-origin: top left;
}

/* Style for drop target highlighting */
.ios-drop-target {
  background-color: #c8e6c9 !important;
  border: 2px solid #4caf50 !important;
  transition: all 0.2s ease;
}

/* Style for draggable rows on iOS */
@media (hover: none) and (pointer: coarse) {
  tr[draggable="true"] {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }
  
  /* Visual feedback for long press */
  tr[draggable="true"].ios-long-press-active {
    background-color: #f0f8ff !important;
    transform: scale(0.98);
    transition: all 0.1s ease;
  }
  
  /* Dragging state */
  tr[draggable="true"].ios-dragging {
    opacity: 0.5;
    transform: scale(0.95);
  }
}

/* Prevent default drag image on iOS */
tr[draggable="true"] img {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
}

/* Visual feedback for touch events */
.ios-touch-feedback {
  background-color: rgba(33, 150, 243, 0.1) !important;
  border-radius: 4px;
  transition: background-color 0.15s ease;
}

/* Success animation for completed drops */
@keyframes ios-drop-success {
  0% { transform: scale(1); }
  50% { transform: scale(1.05); background-color: #4caf50; }
  100% { transform: scale(1); }
}

.ios-drop-success {
  animation: ios-drop-success 0.3s ease;
}

/* Error animation for failed drops */
@keyframes ios-drop-error {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-5px); background-color: #f44336; }
  75% { transform: translateX(5px); background-color: #f44336; }
}

.ios-drop-error {
  animation: ios-drop-error 0.4s ease;
}
