#response,
.xe36-booking-response {
	margin: calc(var(--xe36-space-unit) * 1.5) 0 0;
	text-align: center;
	font-family: var(--xe36-font-body);
	font-size: var(--xe36-text-body-sm-size);
}

.xe36-booking-response--error {
	color: var(--xe36-danger);
}

.xe36-booking-response--success {
	color: var(--xe36-system-green, var(--xe36-primary));
}

.datve,
.xe36-booking-form {
	background-color: var(--xe36-bg-elevated);
	padding: calc(var(--xe36-space-unit) * 2.5);
	border: none;
	border-radius: var(--xe36-radius-xl);
	box-shadow: var(--xe36-shadow-float);
	max-width: 100%;
	width: 100%;
	margin: 0;
	color: var(--xe36-text);
	box-sizing: border-box;
}

.xe36-booking-form__title {
	margin: 0 0 calc(var(--xe36-space-unit) * 2);
	text-align: left;
	color: var(--xe36-text);
}

.xe36-booking-form .form-row {
	display: flex;
	gap: calc(var(--xe36-space-unit) * 1.5);
	margin-bottom: calc(var(--xe36-space-unit) * 1.5);
}

.xe36-booking-form .form-row--2 > .form-group {
	flex: 1;
}

.xe36-booking-form .form-group {
	display: flex;
	flex-direction: column;
	margin-bottom: calc(var(--xe36-space-unit) * 1.5);
}

.xe36-booking-form .form-row .form-group {
	margin-bottom: 0;
}

.xe36-booking-form label {
	margin-bottom: calc(var(--xe36-space-unit) * 0.5);
	color: var(--xe36-muted);
}

/* One control style: filled iOS — same radius, fill, border for every field */
.xe36-booking-form .xe36-input,
.xe36-booking-form .xe36-select,
.xe36-booking-form input[type="text"],
.xe36-booking-form input[type="tel"],
.xe36-booking-form input[type="date"],
.xe36-booking-form input[type="number"],
.xe36-booking-form input[type="email"],
.xe36-booking-form select {
	width: 100%;
	box-sizing: border-box;
	min-height: 48px;
	padding: 0.7rem 0.95rem;
	margin: 0;
	background-color: #f2f2f7 !important;
	background-image: none;
	border: 1px solid transparent !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	color: #000;
	font-family: var(--xe36-font-body);
	font-size: 17px;
	line-height: 1.3;
	letter-spacing: -0.41px;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	transition:
		border-color var(--xe36-transition),
		box-shadow var(--xe36-transition),
		background-color var(--xe36-transition);
}

.xe36-booking-form .xe36-select,
.xe36-booking-form select {
	padding-right: 2.5rem;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%238E8E93' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 1rem center !important;
	background-size: 12px 8px !important;
	cursor: pointer;
}

.xe36-booking-form .xe36-input:focus,
.xe36-booking-form .xe36-select:focus,
.xe36-booking-form input[type="text"]:focus,
.xe36-booking-form input[type="tel"]:focus,
.xe36-booking-form input[type="date"]:focus,
.xe36-booking-form input[type="number"]:focus,
.xe36-booking-form input[type="email"]:focus,
.xe36-booking-form select:focus {
	outline: none;
	background-color: #fff !important;
	border-color: var(--xe36-primary, #007aff) !important;
	box-shadow: 0 0 0 3px rgba(0, 122, 255, 0.28) !important;
}

.xe36-booking-form .xe36-select:focus,
.xe36-booking-form select:focus {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23007AFF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 1rem center !important;
	background-size: 12px 8px !important;
}

.xe36-booking-form .xe36-input::placeholder {
	color: rgba(60, 60, 67, 0.45);
}

.xe36-booking-form input[type="date"] {
	position: relative;
	cursor: pointer;
	color-scheme: light;
}

.xe36-booking-form input[type="date"]::-webkit-calendar-picker-indicator {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	opacity: 0;
	cursor: pointer;
}

.xe36-booking-form .btn--block {
	margin-top: calc(var(--xe36-space-unit) * 0.5);
	min-height: 52px;
	border-radius: 12px;
	font-size: 1.5rem;
	font-weight: 600;
	text-transform: none;
	letter-spacing: -0.2px;
	gap: 0.35rem;
	background: var(--xe36-accent, #ff9500);
	border-color: var(--xe36-accent, #ff9500);
	color: #fff;
}

.xe36-booking-form .btn--block:hover,
.xe36-booking-form .btn--block:focus-visible {
	background: var(--xe36-accent-container, #ff9f0a);
	border-color: var(--xe36-accent-container, #ff9f0a);
	color: #fff;
	opacity: 0.92;
	box-shadow: none;
}

.xe36-booking-form .btn--block::after {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 0.15em;
	flex-shrink: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' preserveAspectRatio='xMidYMid meet'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Crect width='16' height='16'%3E%3C/rect%3E%3Cpolyline stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' points='6 3 11 8 6 13'%3E%3C/polyline%3E%3C/g%3E%3C/svg%3E") center / 16px 16px no-repeat;
}

.xe36-booking-form .phone-group {
	display: grid;
	grid-template-columns: minmax(9.5rem, 0.85fr) 1.15fr;
	gap: calc(var(--xe36-space-unit) * 0.75);
	align-items: start;
}

.xe36-booking-form__hint {
	margin: calc(var(--xe36-space-unit) * 0.5) 0 0;
	font-size: 13px;
	line-height: 1.4;
	color: var(--xe36-muted);
}

.xe36-country-combobox {
	position: relative;
	width: 100%;
}

.xe36-country-combobox__input {
	width: 100%;
	min-height: 44px;
}

.xe36-country-combobox__list {
	position: absolute;
	z-index: 40;
	top: calc(100% + 4px);
	left: 0;
	min-width: 100%;
	width: max(100%, 16rem);
	max-width: min(22rem, 85vw);
	max-height: 260px;
	overflow: auto;
	margin: 0;
	padding: calc(var(--xe36-space-unit) * 0.5) 0;
	list-style: none;
	background: var(--xe36-bg-elevated);
	border: none;
	border-radius: var(--xe36-radius-md);
	box-shadow: var(--xe36-shadow-float);
}

.xe36-country-combobox__list li {
	padding: calc(var(--xe36-space-unit) * 1.25) calc(var(--xe36-space-unit) * 1.5);
	cursor: pointer;
	font-size: var(--xe36-text-body-sm-size);
	color: var(--xe36-text);
}

.xe36-country-combobox__list li:hover,
.xe36-country-combobox__list li:focus {
	background: var(--xe36-bg-soft);
}

.xe36-country-combobox__empty {
	cursor: default;
	color: var(--xe36-muted);
}

.xe36-surface-dark .datve,
.xe36-surface-dark .xe36-booking-form {
	--xe36-text: #000000;
	--xe36-muted: rgba(60, 60, 67, 0.6);
	--xe36-label: rgba(60, 60, 67, 0.6);
	--xe36-bg: #ffffff;
	--xe36-bg-soft: #f2f2f7;
	--xe36-bg-elevated: #ffffff;
	--xe36-border: #c6c6c8;
	--xe36-border-ghost: rgba(60, 60, 67, 0.29);
	--xe36-border-soft: rgba(60, 60, 67, 0.18);
	--xe36-shadow-float: 0 4px 16px rgba(0, 0, 0, 0.1);
	background: #fff;
	color: #000;
	border: none;
}

.xe36-surface-dark .xe36-booking-form .text-headline-sm,
.xe36-surface-dark .xe36-booking-form .text-headline-md,
.xe36-surface-dark .xe36-booking-form .text-body-md,
.xe36-surface-dark .xe36-booking-form .text-body-lg {
	color: #000 !important;
}

.xe36-surface-dark .xe36-booking-form .text-label-caps,
.xe36-surface-dark .xe36-booking-form label {
	color: rgba(60, 60, 67, 0.6) !important;
}

.xe36-surface-dark .xe36-booking-form .xe36-input,
.xe36-surface-dark .xe36-booking-form .xe36-select,
.xe36-surface-dark .xe36-booking-form select,
.xe36-surface-dark .xe36-booking-form input {
	background-color: #f2f2f7 !important;
	color: #000;
	border-color: transparent !important;
	border-radius: 12px !important;
	box-shadow: none !important;
}

.xe36-surface-dark .xe36-booking-form .xe36-input::placeholder {
	color: rgba(60, 60, 67, 0.45);
}

.xe36-surface-dark .xe36-booking-form .xe36-booking-form__hint {
	color: rgba(60, 60, 67, 0.6);
}

@media (max-width: 768px) {
	.xe36-booking-form .form-row {
		flex-direction: column;
		gap: 0;
	}

	.xe36-booking-form .form-row .form-group {
		margin-bottom: calc(var(--xe36-space-unit) * 1.5);
	}

	.xe36-booking-form .phone-group {
		grid-template-columns: minmax(8rem, 0.9fr) 1.1fr;
	}
}
