.wp-block-search {
	--input-margin: 0 var(--search-input-margin-right, var(--spacing-xs)) var(--search-input-margin-bottom, 0) 0;
	--search-input-max-width: 100%;
	margin: var(--search-block-margin, 0);

	&:has(.alignleft) {
		justify-content: start;
		float: none;
	}

	&:has(.aligncenter) {
		justify-content: center;
		margin-inline: unset; /* override margin-inline on aligncenter in Mai Engine. */
	}

	&:has(.alignright) {
		justify-content: end;
		float: none;
	}

	.wp-block-search__inside-wrapper {
		--search-inside-wrapper-width: min(var(--search-min-width, 320px), var(--search-max-width, 100%));
		width: var(--search-inside-wrapper-width);
	}

	.wp-block-search__input {
		flex: 1;
		border: var(--input-border, 1px solid rgba(0, 0, 0, 0.1)); // Overides WP core styles.

		&:focus {
			border-color: var(--input-border-color-focus, var(--color-link));
		}
	}

	.search-icon {
		width: 1.5rem;
		height: 1.5rem;
		margin-inline: -.5rem;
		fill: currentColor;
	}
}

.wp-block-search__button {
	position: relative;
}

.wp-block-search__button-inside {
	--search-input-margin-right: calc(var(--spacing-xs) * -1);

	// Overrides WP core styles.
	.wp-block-search__inside-wrapper {
		padding: 0;
		background: unset;
		border: 0;
		border-radius: 0;
	}

	.wp-block-search__input {
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}

	.wp-block-search__button {
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}
}

.wp-block-search__button-behavior-expand {
	--search-input-min-width: 240px;
}

.entry-content {
	--search-block-margin: 0 0 var(--spacing-md);
}
