/* ==========================================================================
   #1. CORE STRUCTURAL MARKUP - NO HARDCODED VISUAL MEASUREMENTS OR COLORS
   ========================================================================== */
.b3_search_container {
	display: block;
	max-width: 100%;
	box-sizing: border-box;
}

.b3_search_field_wrapper {
	position: relative;
	width: 100%;
	display: flex;
	align-items: center;
	box-sizing: border-box;
}

.b3_search_input {
	width: 100%;
	box-sizing: border-box;
	outline: none;
	border-style: solid;
	padding: 8px 38px 8px 34px; /* Standard proportions accommodating icon/badge spacing */
	transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
}

.b3_search_icon {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	pointer-events: none;
	user-select: none;
	z-index: 2;
}

.b3_search_badge {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid transparent;
	padding: 1px 5px;
	pointer-events: none;
	user-select: none;
	z-index: 2;
	transition: opacity 0.15s ease;
}

/* Dynamic State Interaction Routing */
.b3_search_input:focus + .b3_search_badge {
	opacity: 0;
}