/**
 * Стили формы записи (блок eteri/booking-form). Подключаются только
 * там, где блок реально выведен — через параметр `style` при
 * регистрации блока.
 *
 * Цвета, кегли и отступы — через переменные пресетов темы с
 * фолбэком на значения из docs/CONVENTIONS.md на случай, если
 * палитра темы ещё не подключена.
 */

.eteri-booking {
	max-width: 32rem;
}

.eteri-booking__notice {
	padding: var( --wp--preset--spacing--sm, 1rem );
	margin: 0 0 var( --wp--preset--spacing--md, 1.5rem );
	border-left: 3px solid var( --wp--preset--color--accent, #8a5a3b );
	background: var( --wp--preset--color--surface, #f4f0e9 );
	color: var( --wp--preset--color--ink, #1c1a17 );
	font-size: var( --wp--preset--font-size--sm, 0.9375rem );
}

.eteri-booking__notice--error {
	font-weight: 600;
}

.eteri-booking__field,
.eteri-booking__group {
	margin: 0 0 var( --wp--preset--spacing--md, 1.5rem );
	padding: 0;
	border: 0;
}

.eteri-booking__label,
.eteri-booking__legend {
	display: block;
	margin: 0 0 var( --wp--preset--spacing--2xs, 0.5rem );
	font-size: var( --wp--preset--font-size--sm, 0.9375rem );
	font-weight: 600;
	color: var( --wp--preset--color--ink, #1c1a17 );
	padding: 0;
}

.eteri-booking__input,
.eteri-booking__textarea {
	width: 100%;
	box-sizing: border-box;
	padding: var( --wp--preset--spacing--xs, 0.75rem );
	font-size: var( --wp--preset--font-size--base, 1.0625rem );
	font-family: inherit;
	color: var( --wp--preset--color--ink, #1c1a17 );
	background: var( --wp--preset--color--base, #fbf9f6 );
	border: 1px solid var( --wp--preset--color--line-strong, #8f8676 );
	border-radius: 2px;
}

.eteri-booking__input--error,
.eteri-booking__input[ aria-invalid='true' ] {
	border-color: var( --wp--preset--color--accent, #8a5a3b );
	border-width: 2px;
}

.eteri-booking__hint {
	display: block;
	margin-top: var( --wp--preset--spacing--2xs, 0.5rem );
	font-size: var( --wp--preset--font-size--xs, 0.8125rem );
	color: var( --wp--preset--color--muted, #6b645c );
}

.eteri-booking__error {
	display: block;
	margin-top: var( --wp--preset--spacing--2xs, 0.5rem );
	font-size: var( --wp--preset--font-size--xs, 0.8125rem );
	font-weight: 600;
	color: var( --wp--preset--color--accent, #8a5a3b );
}

.eteri-booking__options {
	display: flex;
	flex-wrap: wrap;
	gap: var( --wp--preset--spacing--sm, 1rem );
}

.eteri-booking__option {
	display: inline-flex;
	align-items: center;
	gap: var( --wp--preset--spacing--2xs, 0.5rem );
	min-width: max-content;
	font-size: var( --wp--preset--font-size--base, 1.0625rem );
	color: var( --wp--preset--color--ink, #1c1a17 );
}

.eteri-booking__checkbox-label {
	display: flex;
	align-items: flex-start;
	gap: var( --wp--preset--spacing--2xs, 0.5rem );
	font-size: var( --wp--preset--font-size--sm, 0.9375rem );
	color: var( --wp--preset--color--ink, #1c1a17 );
}

.eteri-booking__checkbox-label input {
	margin-top: 0.2em;
	flex-shrink: 0;
}

.eteri-booking__checkbox-label a {
	color: var( --wp--preset--color--accent, #8a5a3b );
}

.eteri-booking__actions {
	margin: 0;
}

.eteri-booking__submit {
	min-width: max-content;
	padding: var( --wp--preset--spacing--xs, 0.75rem ) var( --wp--preset--spacing--md, 1.5rem );
	font-size: var( --wp--preset--font-size--base, 1.0625rem );
	font-weight: 600;
	color: var( --wp--preset--color--base, #fbf9f6 );
	background: var( --wp--preset--color--accent, #8a5a3b );
	border: 0;
	border-radius: 2px;
	cursor: pointer;
}

.eteri-booking__submit:hover,
.eteri-booking__submit:focus-visible {
	opacity: 0.9;
}

/*
 * Honeypot: поле-приманка для ботов. Скрыто визуально, но остаётся
 * в DOM и доступно фокусу табуляцией простых скриптов — намеренно
 * не display:none, чтобы не выдавать себя примитивным парсерам.
 */
.eteri-booking__hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
	margin: 0;
}

/* Заглушка блока в редакторе. */
.eteri-booking-form-placeholder {
	padding: var( --wp--preset--spacing--md, 1.5rem );
	border: 1px dashed var( --wp--preset--color--line-strong, #8f8676 );
	color: var( --wp--preset--color--muted, #6b645c );
	text-align: center;
}
