.bb-rez {
	--bb-accent: #8a5a2b;
	--bb-border: #ddd5c8;
	margin: 2em 0;
	padding: 1.5em;
	border: 1px solid var(--bb-border);
	border-radius: 8px;
	background: #fcfaf6;
	max-width: 560px;
}
.bb-rez__title { margin: 0 0 .6em; font-size: 1.25em; }
.bb-rez__intro { margin: 0 0 1em; }
.bb-rez__status { margin: 0; }
.bb-rez[data-state="available"] .bb-rez__status { display: none; }
.bb-rez[data-state="unavailable"] .bb-rez__status { color: #8a3b12; font-weight: 600; }
.bb-rez[data-state="done"] .bb-rez__status {
	padding: 1em; border-radius: 6px; background: #e8f3e6; color: #1f5420; font-weight: 600;
}
.bb-rez__field { margin-bottom: 1em; }
.bb-rez__field label { display: block; font-weight: 600; margin-bottom: .3em; }
.bb-rez__field input[type="text"],
.bb-rez__field input[type="email"],
.bb-rez__field input[type="tel"] {
	width: 100%; padding: .6em .75em; border: 1px solid var(--bb-border); border-radius: 6px; font-size: 1em; box-sizing: border-box;
}
.bb-rez__field input:focus { outline: 2px solid var(--bb-accent); outline-offset: 1px; }
.bb-rez__field--check label { font-weight: normal; display: flex; gap: .5em; align-items: flex-start; }
.bb-rez__field--check small { display: block; margin-top: .4em; color: #666; }
.bb-rez__hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.bb-rez__error { color: #a1260d; font-weight: 600; margin: 0 0 1em; }
.bb-rez__submit {
	background: var(--bb-accent); color: #fff; border: 0; border-radius: 6px; padding: .75em 1.5em; font-size: 1em; cursor: pointer;
}
.bb-rez__submit:disabled { opacity: .6; cursor: wait; }
