header {
  text-align: center;
}

label[for^=language-selection_] {
  display: inline-block;
  font-size: 1em;
  padding-inline: 0.5em;
  padding-block: 0.5em;
  border: 1px solid white;
  border-radius: .25em;
  user-select: none;
}

.language-selection {
  display: none;
}

#instructions {
  display: flex;
  width: 100%;
  flex-direction: row;
  padding-top: 1em;
}

.instructions {
  display: none;
  font-size: 1em;
  line-height: 1.5;
  padding: 1em;
  background-color: hsl(0, 0%, 9%);
  border-left: 2px solid white;
  height: 850px;
  width: 50vw;
}

.instructions-image {
	background: linear-gradient(to bottom right, lightgray, gray);
	background: url("/assets/img/instructions/instructions.webp");
	background-repeat: no-repeat;
	background-position: bottom 50% left 50%;
	border-radius: 5px;
	border: 1px solid white;
}

.instructions-image-aside {
	display: flex;
	align-self: stretch;
	background-size: max(1000px, 100%);
	flex-grow: 1;
}

.language-selection-label {
	cursor: pointer;
}

/* expand instructions block */
@media (min-width: calc(2000px + 4rem) ) {
	.instructions {
		flex-grow: 1;
	}

	.instructions-image-aside {
		width: 1000px;
	}
}

@media (max-width: 1250px) {
	.instructions {
		width: 100%;
		height: auto;
	}

	.instructions-image-aside {
		display: none;
	}
}

@media (max-width: 750px) {
	#language-selection-title {
		width: 100%;
	}

	#language-selection-title label {
		display: inline-flex;
		justify-content: space-between;
		width: 100%;
		cursor: pointer;
	}

	#language-selection-show:not(:checked) ~ :is(.language-selection, .language-selection-label) {
		display: none;
	}

	#language-selection-title label::after {
		content: "+";
		padding-inline: 0.5em;
	}

	#language-selection-show:checked ~ #language-selection-title label::after {
		content: "−";
	}

	label[for^=language-selection] {
		display: inline-block;
		width: 100%;
	}
}
