@use "@db-ui/foundations/build/styles/variables";
@use "@db-ui/foundations/build/styles/icons";

@mixin icon-passing($inline-start: variables.$db-spacing-fixed-sm) {
	&[data-icon] {
		&::before {
			position: absolute;
			inset-block-start: calc(50% - 0.5em);
			inset-inline-start: $inline-start;
			pointer-events: none;
			z-index: 1;
		}

		a,
		button,
		label {
			--db-padding-inline-start: calc(
				#{$inline-start} + #{icons.$default-icon-margin-end} +
					var(--db-base-font-size) * var(--db-base-line-height)
			);

			/* stylelint-disable-next-line db-ui/use-spacings */
			padding-inline-start: var(--db-padding-inline-start);
		}
	}
}
