:host {
	position: absolute;
	pointer-events: none;
	z-index: 99;
}

/* the needle */
:host([orientation="Vertical"]) .ui5-di-needle {
	width: 0.125rem;
	height: 100%;
	inset-block: 0;
	background: var(--sapContent_DragAndDropActiveColor);
}

:host([orientation="Vertical"]) {
	margin-left: -0.0625rem; /* half of the width */
}

:host([orientation="Horizontal"]) .ui5-di-needle {
	height: 0.125rem;
	width: 100%;
	inset-inline: 0;
	background: var(--sapContent_DragAndDropActiveColor);
}

:host([orientation="Horizontal"]) {
	margin-top: -0.0625rem; /* half of the needle height */
}

:host([orientation="Horizontal"][placement="Before"][first]) {
	margin-top: 0.3125rem; /* half of the needle height + half of the ear height */
}

:host([orientation="Horizontal"][placement="After"][last]) {
	margin-top: -0.3125rem; /* half of the needle height + half of the ear height */
}

/* the ear of the needle */
:host([orientation="Vertical"]) .ui5-di-needle::before {
	left: -0.1875rem;
	content: "";
	position: absolute;
	width: 0.25rem;
	height: 0.25rem;
	border-radius: 0.25rem;
	border: 0.125rem solid var(--sapContent_DragAndDropActiveColor);
	background-color: #fff;
	pointer-events: none;
}

/* the ear of the needle */
:host([orientation="Horizontal"]) .ui5-di-needle::before {
	top: -0.1875rem;
	content: "";
	position: absolute;
	width: 0.25rem;
	height: 0.25rem;
	border-radius: 0.25rem;
	border: 0.125rem solid var(--sapContent_DragAndDropActiveColor);
	background-color: #fff;
	pointer-events: none;
}

:host .ui5-di-rect {
	border: 0.125rem solid var(--sapContent_DragAndDropActiveColor);
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}

:host .ui5-di-rect::before {
	content: " ";
	position: absolute;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	background: var(--sapContent_DragAndDropActiveColor);
	opacity: 0.05;
}
