/* Fixed on the body, so it is measured against the viewport and no ancestor can
   clip it. Held hidden until the runtime has positioned it. */
.dmoe-cursor {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	opacity: 0;
	pointer-events: none;
	perspective: 800px;
	will-change: transform;
}
/* Counter-rotates against Velocity Stretch's angle so the shape elongates
   towards the pointer without turning the content (text/icon/image) sideways. */
.dmoe-cursor-stretch {
	display: flex;
}
.dmoe-cursor-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	overflow: hidden;
	text-align: center;
	will-change: transform, opacity;
}
.dmoe-cursor-content {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
.dmoe-cursor-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* Size and colour come from the Icon Size / Icon Color settings, generated per
   module — this only sets what has no field of its own. */
.dmoe-cursor .dmoe-cursor-icon {
	line-height: 1;
}
