$--mode-selector-width: 92px;

.modeSelector {
	--input-background-color: initial;
	--input-font-color: initial;
	--input-border-color: initial;
	width: $--mode-selector-width;

	input {
		border-radius: var(--border-radius-base) 0 0 var(--border-radius-base);
		border-right: none;
		overflow: hidden;

		&:focus {
			border-right: var(--border-base);
		}

		&:disabled {
			cursor: not-allowed !important;
		}
	}
}

.inputField {
	flex-grow: 1;
	position: relative;
}

.fromAiOverrideField {
	position: relative;

	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

.overrideButtonInline {
	> button {
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}
	position: relative;
}

.rightNoCorner > * {
	--input-border-bottom-right-radius: 0;
	--input-border-top-right-radius: 0;
}

.resourceLocator {
	display: inline-flex;
	flex-wrap: nowrap;
	width: 100%;
	position: relative;

	--input-issues-width: 28px;
	--input-override-width: 30px;

	.inputContainer {
		display: flex;
		align-items: center;
		width: 100%;

		--input-border-top-left-radius: 0;
		--input-border-bottom-left-radius: 0;

		> div {
			width: 100%;

			> div {
				display: flex;
			}
		}
	}

	.background {
		position: absolute;
		background-color: var(--color-background-input-triple);
		top: 0;
		bottom: 0;
		left: 0;
		right: var(--input-issues-width);
		border: 1px solid var(--border-color-base);
		border-radius: var(--border-radius-base);
	}

	.backgroundOverride {
		right: var(--input-override-width);
	}

	&.multipleModes {
		.inputContainer {
			display: flex;
			align-items: center;
			width: calc(100% - $--mode-selector-width);
			flex-grow: 1;
		}

		.inputContainerInputCorners {
			input {
				border-radius: 0 var(--border-radius-base) var(--border-radius-base) 0;
			}
		}
	}
}

.droppable {
	--input-border-color: var(--color-secondary-tint-1);
	--input-border-style: dashed;
}

.activeDrop {
	--input-border-color: var(--color-success);
	--input-background-color: var(--color-success-tint-2);
	--input-border-style: solid;

	textarea,
	input {
		cursor: grabbing !important;
	}
}

.selectInput input {
	padding-right: 30px !important;
	overflow: hidden;
	text-overflow: ellipsis;
}

.selectIcon {
	cursor: pointer;
	font-size: 14px;
	transition: transform 0.3s;
	transform: rotateZ(0);

	&.isReverse {
		transform: rotateZ(180deg);
	}
}

.listModeInputContainer * {
	cursor: pointer;
}

.errorContainer,
.errorDetails {
	display: flex;
	gap: var(--spacing-s);
	flex-direction: column;
}

.errorContainer {
	width: 80%;
	align-items: center;
	text-align: center;
}

.errorDescription {
	text-align: left;
	margin: 0;
	word-break: normal;
}

.credential-link {
	font-size: var(--font-size-2xs);
}

.openResourceLink {
	width: 25px !important;
	padding-left: var(--spacing-2xs);
	padding-top: var(--spacing-4xs);
	align-self: flex-start;
}

.parameter-issues {
	width: 25px !important;
}
