.et-plugin-shell {
	--et-shared-control-height: 48px;
	--et-shared-field-gap: 8px;
	--et-shared-help-gap: 6px;
}

.et-shared-field {
	display: grid;
	align-content: start;
	gap: var(--et-shared-field-gap, 8px);
	margin: 0;
	color: #1e293b;
	font-weight: 600;
}

.et-shared-field__label,
.et-shared-field > span:first-child,
.et-shared-searchable-select .components-base-control__label {
	display: block;
	margin: 0;
	color: #1e293b;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: normal;
	text-transform: none;
}

.et-shared-field-stack {
	display: grid;
	gap: var(--et-shared-field-gap, 8px);
}

.et-shared-field input[type="text"],
.et-shared-field input[type="email"],
.et-shared-field input[type="number"],
.et-shared-field input[type="password"],
.et-shared-field input[type="search"],
.et-shared-field input[type="tel"],
.et-shared-field input[type="url"],
.et-shared-field select,
.et-shared-field textarea {
	width: 100%;
	min-width: 0;
	min-height: var(--et-shared-control-height, 48px);
	padding: 0 12px;
	box-sizing: border-box;
	border: 1px solid #dbe3ee;
	border-radius: var(--et-ui-radius, 8px);
	background: #ffffff;
	color: #0f172a;
	font: inherit;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.2;
}

.et-shared-field textarea {
	min-height: 112px;
	padding-top: 10px;
	padding-bottom: 10px;
	line-height: 1.5;
	resize: vertical;
}

.et-shared-field input:hover,
.et-shared-field select:hover,
.et-shared-field textarea:hover {
	border-color: #cbd5e1;
}

.et-shared-field input:focus,
.et-shared-field input:focus-visible,
.et-shared-field select:focus,
.et-shared-field select:focus-visible,
.et-shared-field textarea:focus,
.et-shared-field textarea:focus-visible {
	border-color: rgba(241, 181, 0, 0.45);
	outline: none;
	box-shadow: 0 0 0 3px rgba(241, 181, 0, 0.14);
}

.et-shared-field > .et-component-select,
.et-shared-field > .et-shared-select,
.et-shared-field > .etfb-premium-select {
	width: 100%;
	min-width: 0;
}

.et-shared-field__help {
	min-height: 1.4em;
	margin: calc(var(--et-shared-help-gap, 6px) - var(--et-shared-field-gap, 8px)) 0 0;
	color: #64748b;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.4;
}

.components-checkbox-control {
	display: block;
	margin: 0;
}

.components-checkbox-control .components-base-control__field {
	display: grid;
	gap: 8px;
}

.components-checkbox-control .components-base-control__help,
.components-checkbox-control .components-checkbox-control__help {
	display: block;
	width: 100%;
	margin: 8px 0 0 !important;
	margin-inline-start: 0 !important;
	padding-inline-start: 0 !important;
}

.components-checkbox-control .components-flex.components-h-stack {
	display: flex;
	align-items: center;
	gap: 12px;
}

.components-checkbox-control__input-container {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	margin: 0;
}

.components-checkbox-control__input[type="checkbox"],
input[type="checkbox"] {
	appearance: none;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	margin: 0;
	border: 1px solid #dbe3ee;
	border-radius: calc(var(--et-ui-radius, 8px) * 0.5);
	background: #ffffff;
	display: inline-grid;
	place-content: center;
	vertical-align: middle;
	box-sizing: border-box;
	accent-color: #f1b500 !important;
}

.components-checkbox-control__input[type="checkbox"] {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
	cursor: pointer;
}

.components-checkbox-control__input[type="checkbox"]:checked,
input[type="checkbox"]:checked {
	background-color: #f1b500 !important;
	border-color: #f1b500 !important;
}

input[type="checkbox"]:not(.components-checkbox-control__input)::before {
	width: 10px !important;
	height: 10px !important;
	margin: 0 !important;
	border: 0 !important;
	background: #ffffff !important;
	content: '' !important;
	clip-path: polygon(14% 54%, 0 68%, 38% 100%, 100% 28%, 85% 14%, 38% 66%);
	transform: scale(0);
	transition: transform 0.12s ease;
}

input[type="checkbox"]:not(.components-checkbox-control__input):checked::before {
	transform: scale(1);
}

.components-checkbox-control__input[type="checkbox"]:indeterminate,
input[type="checkbox"]:indeterminate {
	border-color: #f1b500 !important;
	background-color: #f1b500 !important;
	background-image: linear-gradient(#ffffff, #ffffff) !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: 10px 2px !important;
}

.components-checkbox-control__input[type="checkbox"]:indeterminate::before,
input[type="checkbox"]:indeterminate::before {
	content: none !important;
}

.components-checkbox-control__input[type="checkbox"]:focus,
input[type="checkbox"]:focus,
.components-checkbox-control__input[type="checkbox"]:focus-visible,
input[type="checkbox"]:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(241, 181, 0, 0.16);
}

.components-checkbox-control__checked {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 18px;
	height: 18px;
	transform: translate(-50%, -50%);
	pointer-events: none;
	z-index: 2;
	color: #ffffff;
	opacity: 0;
	transition: opacity 0.14s ease;
}

.components-checkbox-control__input:checked + .components-checkbox-control__checked {
	opacity: 1;
}

.components-checkbox-control__label {
	color: #334155;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
}

.etr-shell .et-shared-file-input,
.et-plugin-shell .et-shared-file-input,
.et-shared-file-input,
.etr-shell .etr-file-input,
.etr-file-input {
	width: 100%;
	min-height: 40px;
	border: 1px solid #dbe3ee;
	border-radius: var(--et-ui-radius, 8px);
	background: #ffffff;
	padding: 8px !important;
	box-sizing: border-box;
	font: inherit;
	font-size: 13px;
	line-height: 1.35;
	color: #0f172a;
}

.etr-shell .et-shared-file-input::file-selector-button,
.et-plugin-shell .et-shared-file-input::file-selector-button,
.et-shared-file-input::file-selector-button,
.etr-shell .etr-file-input::file-selector-button,
.etr-file-input::file-selector-button {
	margin: 0 12px 0 0;
	padding: 6px 10px;
	border: 1px solid #dbe3ee;
	border-radius: var(--et-ui-radius, 8px);
	background: #f8fafc;
	color: #0f172a;
	font: inherit;
	font-size: 13px;
	line-height: 1.2;
	font-weight: 600;
	cursor: pointer;
}

.etr-shell .et-shared-file-input:hover::file-selector-button,
.et-plugin-shell .et-shared-file-input:hover::file-selector-button,
.et-shared-file-input:hover::file-selector-button,
.etr-shell .etr-file-input:hover::file-selector-button,
.etr-file-input:hover::file-selector-button {
	border-color: #cbd5e1;
	background: #eef2f7;
}

.etr-shell .et-shared-file-input:focus,
.et-plugin-shell .et-shared-file-input:focus,
.et-shared-file-input:focus,
.etr-shell .etr-file-input:focus,
.etr-file-input:focus {
	outline: none;
	border-color: rgba(241, 181, 0, 0.45);
	box-shadow: 0 0 0 3px rgba(241, 181, 0, 0.14);
}

.etr-shell input[type="date"],
.etr-shell input[type="time"],
input[type="date"],
input[type="time"] {
	width: 100%;
	height: var(--et-shared-control-height, 48px);
	min-height: var(--et-shared-control-height, 48px);
	padding: 10px 12px;
	border: 1px solid #dbe3ee;
	border-radius: var(--et-ui-radius, 8px);
	background: #ffffff;
	font: inherit;
	font-size: 14px;
	line-height: 1.2;
	color: #0f172a;
	box-sizing: border-box;
}

.etr-shell input[type="date"]:focus,
.etr-shell input[type="time"]:focus,
input[type="date"]:focus,
input[type="time"]:focus,
.etr-shell input[type="date"]:focus-visible,
.etr-shell input[type="time"]:focus-visible,
input[type="date"]:focus-visible,
input[type="time"]:focus-visible {
	outline: none;
	border-color: rgba(241, 181, 0, 0.45);
	box-shadow: 0 0 0 3px rgba(241, 181, 0, 0.14);
}
