.form-control.is-valid, .form-control.is-invalid {
	/* show (in)valid marker symbol at the most right top position */
	background-position: right top;
}

.modal-toggle-visibility {
	/* https://stackoverflow.com/questions/10487292/position-absolute-but-relative-to-parent */
	position: relative;
	margin: 0;
	padding: 0;
}

.modal-toggle-visibility i {
	/* set eye in the upper-right field corner */
	right: 14px;
	top: 7px;
	cursor: pointer;
	position: absolute;
}

.modal-error-info {
	display: none;
}

.modal-body {
	/* scroll body when higher */
	max-height: 65vh;
	overflow-y: scroll;
}

input[type=password]::-webkit-credentials-auto-fill-button {
	/* https://stackoverflow.com/questions/72872163/how-to-change-safari-autocomplete-key-icon */
	/* move left macOS autofill key dropdown icon */
	position: absolute;
	right: 36px;
}

.tooltip-inner {
	color: var(--bs-primary-text-emphasis);
	background-color: var(--bs-light-bg-subtle);
}

.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
	border-top-color: var(--bs-light-bg-subtle);
}

.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
	border-right-color: var(--bs-light-bg-subtle);
}

.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
	border-bottom-color: var(--bs-light-bg-subtle);
}

.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
	border-left-color: var(--bs-light-bg-subtle);
}

.form-external-popup {
	font-family: var(--bs-body-font-family);
	font-size: var(--bs-body-font-size);
	font-weight: var(--bs-body-font-weight);
	line-height: var(--bs-body-line-height);

	white-space: pre-wrap;
	white-space: -moz-pre-wrap;
	white-space: -o-pre-wrap;
	word-wrap: break-word;
}

button.btn-text-grid {
	/* create a grid */
	display: grid;
	/* create columns, 1fr means use available space */
	grid-template-columns: 1fr max-content max-content;
	align-items: center;
	grid-gap: 10px;
}