#layering {
	padding-block: min(2.5vh, 1.25vw);
	padding-block: min(2.5dvh, 1.25dvw);
	background-color: rgba(0, 0, 0, 0.45);
}

#layering fieldset:not(.layering-layer-inner-grid):not(.layering-layer-fieldset) {
	border: unset;
	margin: unset;
	padding: unset;
}

#layering h2,
#layering legend {
	color: white;
	font-size: 1em;
	font-weight: normal;
	margin: unset;
	padding: unset;
	text-align: center;
}

#layering h2 {
	min-height: calc(var(--menu-button-size) - 0.5em);
	align-content: end;
}

#layering input[type="number"] {
	/* Add an absolute 16px marigin to better deal with the increment/decrement button scaling upon resizing */
	width: calc(2.5em + 16px);
}

#layering input[type="number"]:focus {
	background-color: white !important;
}

#layering input[type="number"]:invalid {
	background-color: #fbb !important;
}

.layering-input-unfocused {
	background-color: lightgray;
}

#layering-hide-button[aria-checked="false"] #layering-hide-button-tooltip-show,
#layering-hide-button[aria-checked="true"] #layering-hide-button-tooltip-hide {
	display: none;
}

#layering-asset-grid {
	display: flex;
	justify-content: center;
}

#layering-asset-grid > .layering-pair {
	width: fit-content;
}

#layering-layer-header {
	grid-area: layer-header;
}

#layering-layer-outer-grid {
	display: grid;
	justify-items: center;
	width: 100%;
}

#layering-layer-outer-grid:not(:last-child) .layering-layer-inner-grid {
	padding-bottom: var(--gap);
}

.layering-layer-inner-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--gap) 0.5em;
	width: 100%;
	box-sizing: border-box;
	align-items: center;
}

.layering-pair {
	justify-content: space-between;
	align-items: center;
	display: grid;
	gap: 0.5em;
	grid-template-columns: auto min-content;
}

.layering-pair:not(:has(input:disabled)) > .layering-pair-text:hover {
	cursor: pointer;
	color: yellow;
}

.layering-asset-pair {
	/* Matches the fieldset positioned underneath in terms of padding, border-width and margin */
	padding-inline: calc(0.75em + 2px + 2px);
}

.layering-pair-text {
	color: white;
	overflow-x: hidden;
}

.layering-button-pink[data-pose] {
	--button-color: pink;
}

.layering-inputs-container,
.layering-inputs-group {
	display: flex;
	gap: 12px;
	align-items: center;
	justify-content: flex-end;
}

.layering-input-wrapper {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.layering-input-wrapper label {
	color: white;
}

.layering-layer-name {
	flex-grow: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: auto;
	display: block;
}

#layering fieldset.layering-layer-fieldset {
	margin-bottom: var(--half-gap);
	padding: var(--half-gap) 0.75em;
}

.layering-tabs {
	display: flex;
	flex-direction: row;
	gap: var(--gap);
	align-items: center;
	margin-bottom: var(--gap);
}

.layering-tabs .layering-tab-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	width: 100%;
	height: calc(1.15em + 2 * var(--inner-border-width) + 2 * var(--border-width));
}

.layering-tabs .layering-tab-button.layering-tab-active {
	border: 2px solid white;
	background-color: white;
	color: black;
}
