.container {
	display: flex;
	font-size: var(--font-sm);
	outline: none;
	border: var(--border-style);
	border-radius: var(--radius-field);
	background-color: var(--color-bg);
	height: var(--field-size);
	width: 100%;

	& svg {
		color: var(--color-text-high);
		height: calc(var(--field-size) / 2);
		margin: auto;
		margin-right: 15px;
	}

	&:has(input:user-invalid) {
		outline: var(--focus-ring-error);
		outline-offset: 1px;
	}

	&:focus-within {
		outline: var(--focus-ring);
		outline-offset: 1px;
	}

	input {
		border-radius: var(--radius-field);
		padding: 0 var(--field-padding);
		outline: none;
		width: 100%;
		background-color: inherit;
		color: inherit;
		border: none;

		&::placeholder {
			color: var(--color-text-high);
		}
	}
}

.readOnly {
	pointer-events: none;
	cursor: not-allowed;
	opacity: 0.5;
	outline: none;
}

.addon {
	--addon-radius: calc(var(--radius-field) - 2px);
	border-radius: var(--addon-radius) 0 0 var(--addon-radius);
	display: grid;
	background-color: var(--color-bg-high);
	color: var(--color-text-high);
	font-size: var(--font-xs);
	font-weight: var(--weight-semi);
	padding-inline: var(--s-2);
	place-items: center;
	white-space: nowrap;
}
