input#room-number {
	max-width: 6em;
}

input#capacity {
	max-width: 4em;
}

summary.button {
	display: inline-block;
	padding-block: 0.5em;
}

details[open] summary.button {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	border: none;
}

details summary.button::before {
	margin-right: 0.25em;
}

details:not([open]) summary.button::before {
	content: '▶';
}

details[open] summary.button::before {
	content: '▼';
}

details.individual-equipment,
details.common-equipment {
	width: fit-content;
	margin-block: 1em;
	transition: 0.3s;
}

/*noinspection CssReplaceWithShorthandSafely*/
.individual-equipment fieldset,
.common-equipment fieldset {
	width: fit-content;
	min-width: 100%;
	border: none;
	background-color: var(--primary-light);
	border-radius: 0.5em;
	border-top-left-radius: 0;
	padding-left: 1.25em;
	padding-block: 1em;
	display: flex;
	flex-direction: column;
	row-gap: 0.25em;
	margin-inline: 0;
}

.individual-equipment fieldset {
	row-gap: 0.75em;
}

.individual-equipment input[name$=".count"] {
	max-width: 4em;
}

details.common-equipment,
select#room-type:has(option[value='CONFERENCE_ROOM']:not(:checked)) ~ details.common-equipment {
	transition: var(--hover);
}

select#room-type:has(option[value='CONFERENCE_ROOM']:not(:checked)) ~ details.common-equipment,
select#room-type:has(option[value='CONFERENCE_ROOM']:not(:checked)) ~ details.common-equipment * {
	margin-block: 0;
	padding-block: 0;
	height: 0;
	opacity: 0;
	z-index: 0;
}