/* Scoped to JetFormBuilder forms. Tom Select fields mirror native select appearance. */

.jet-fb-form-block form.jet-form-builder .jet-form-builder__field-wrap.prepodavame-select-search-wrap,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap {
	position: relative;
	width: 100%;
	overflow: visible;
}

.jet-fb-form-block form.jet-form-builder .jet-form-builder-row:has(.prepodavame-select-search-wrap) {
	overflow: visible !important;
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap select.ts-hidden-accessible {
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	width: 1px !important;
	height: 1px !important;
	opacity: 0 !important;
	pointer-events: none !important;
	overflow: hidden !important;
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-wrapper {
	display: flex;
	width: 100%;
	min-height: 0;
}

/* Hide Elementor/JFB border on the native select kept in the DOM by Tom Select. */
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap > select.jet-form-builder__field,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap select.ts-hidden-accessible {
	border: 0 !important;
	outline: none !important;
	box-shadow: none !important;
}

/* Reset Tom Select default theme (gradient, inset shadow, fixed font size). */
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-wrapper.single .ts-control,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-wrapper.single .ts-control.prepodavame-ts-control {
	background: var(--pps-field-bg, #fff) !important;
	background-image: var(--pps-field-bg-image, none) !important;
	background-position: var(--pps-field-bg-position, right 0.65rem center) !important;
	background-size: var(--pps-field-bg-size, auto) !important;
	background-repeat: var(--pps-field-bg-repeat, no-repeat) !important;
	box-shadow: none !important;
	border: 1px solid #d0d5dd !important;
	border-radius: var(--pps-field-border-radius, 6px) !important;
	color: var(--pps-field-color, inherit) !important;
	font-family: var(--pps-field-font-family, inherit) !important;
	font-size: var(--pps-field-font-size, inherit) !important;
	font-weight: var(--pps-field-font-weight, inherit) !important;
	line-height: var(--pps-field-line-height, 1.4) !important;
	letter-spacing: var(--pps-field-letter-spacing, normal) !important;
	min-height: var(--pps-field-min-height, 2.5rem) !important;
	height: var(--pps-field-height, auto) !important;
	padding-top: var(--pps-field-padding-top, 0.5rem) !important;
	padding-right: var(--pps-field-padding-right, 2rem) !important;
	padding-bottom: var(--pps-field-padding-bottom, 0.5rem) !important;
	padding-left: var(--pps-field-padding-left, 0.75rem) !important;
	width: 100%;
	box-sizing: border-box;
	outline: none !important;
}

/* Neutralize Elementor/JFB field styles if they leak onto Tom Select controls. */
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-control.jet-form-builder__field,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-control.select-field {
	border: 1px solid #d0d5dd !important;
	box-shadow: none !important;
	outline: none !important;
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-control,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-control input,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-dropdown,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .prepodavame-ts-dropdown {
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-control > input {
	color: inherit !important;
	min-width: 0 !important;
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-control > input::placeholder {
	color: var(--pps-field-placeholder-color, #98a2b3);
	opacity: 1;
}

/* Hide Tom Select caret when the native select uses a background chevron. */
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap.has-native-arrow .ts-wrapper.single .ts-control::after {
	display: none !important;
}

/* Subtle caret fallback when no native background image is available. */
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap:not(.has-native-arrow) .ts-wrapper.single .ts-control::after {
	border-color: var(--pps-field-caret-color, #667085) transparent transparent;
	opacity: 0.75;
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-wrapper.focus .ts-control,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-wrapper.dropdown-active .ts-control,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-wrapper.input-active .ts-control {
	box-shadow: none !important;
	outline: none !important;
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-wrapper.disabled .ts-control {
	background: var(--pps-field-disabled-bg, var(--pps-field-bg, #fafafa)) !important;
	opacity: var(--pps-field-disabled-opacity, 0.65);
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-dropdown,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .prepodavame-ts-dropdown,
.ts-dropdown.prepodavame-ts-dropdown {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	box-sizing: border-box;
	background: var(--pps-field-bg, #fff);
	border-width: var(--pps-field-border-width, 1px);
	border-style: var(--pps-field-border-style, solid);
	border-color: var(--pps-field-border-color, #d0d5dd);
	border-radius: var(--pps-field-border-radius, 6px);
	box-shadow: 0 4px 12px rgba(16, 24, 40, 0.08);
	margin-top: 0.25rem;
	z-index: 99990 !important;
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-dropdown .option,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-dropdown .no-results,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .prepodavame-ts-dropdown .option,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .prepodavame-ts-dropdown .no-results {
	padding: var(--pps-field-padding-top, 0.5rem) var(--pps-field-padding-left, 0.75rem);
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .ts-dropdown .active,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .prepodavame-ts-dropdown .active {
	background-color: #f2f4f7;
	color: inherit;
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .plugin-dropdown_input .dropdown-input {
	border: 0;
	border-bottom: 1px solid var(--pps-field-border-color, #d0d5dd);
	border-radius: 0;
	box-shadow: none;
	font: inherit;
	padding: var(--pps-field-padding-top, 0.5rem) var(--pps-field-padding-left, 0.75rem);
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .plugin-dropdown_input.dropdown-active .ts-control {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .plugin-dropdown_input.dropdown-active .ts-dropdown,
.jet-fb-form-block form.jet-form-builder .prepodavame-select-search-wrap .plugin-dropdown_input.dropdown-active .prepodavame-ts-dropdown {
	border-top: 0;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
