.program-sort-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: stretch;
  gap: 6px;
  border-radius: 7px;
  transition: transform 120ms ease, opacity 120ms ease;
}

.program-sort-item .task-card {
  height: 100%;
}

.drag-handle {
  min-height: 70px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--soft);
  color: var(--muted);
  font-size: 1.15rem;
  font-weight: 900;
  touch-action: none;
  cursor: grab;
}

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

.program-sort-item.dragging {
  z-index: 4;
  opacity: 0.72;
  transform: scale(1.015);
}

.program-sort-item.dragging .drag-handle {
  background: var(--yellow);
  color: var(--ink);
}

.sorting-program {
  user-select: none;
  overflow: hidden;
}

@media (max-width: 520px) {
  .program-sort-item {
    grid-template-columns: 48px minmax(0, 1fr);
  }

  .drag-handle {
    min-height: 76px;
    font-size: 1.3rem;
  }
}
