@charset "UTF-8";

#crafting-slot-screen {
	--button-width: calc(4 * var(--menu-button-size) + 4 * var(--gap));
	--button-height: min(14vh, 7vw);
	--button-height: min(14dvh, 7dvw);
	gap: var(--gap);
}

#crafting-slot-screen[data-mode="Reorder"] {
	background-color: rgba(255, 255, 0, 0.06);
}

#crafting-slot-screen[data-mode="Delete"] {
	background-color: rgba(255, 0, 0, 0.06);
}

#crafting-slot-screen[data-mode="Reorder"] .crafting-slot-button > .button-tooltip,
#crafting-slot-screen[data-mode="Delete"] .crafting-slot-button > .button-tooltip {
	display: none;
}

#crafting-slot-screen[data-mode="Reorder"] .crafting-slot-button[aria-checked="true"],
#crafting-slot-screen[data-mode="Reorder"] .crafting-slot-button[aria-checked="true"] .button-label {
	--button-color: yellow;
	background-color: yellow;
}

#crafting-slot-screen[data-mode="Reorder"] .crafting-slot-button:active,
#crafting-slot-screen[data-mode="Reorder"] .crafting-slot-button[data-active],
#crafting-slot-screen[data-mode="Reorder"] .crafting-slot-button:active > .button-label,
#crafting-slot-screen[data-mode="Reorder"] .crafting-slot-button[data-active] > .button-label {
	background-color: color-mix(in srgb, lightyellow 67%, yellow 33%);
}

#crafting-slot-screen[data-mode="Delete"] .crafting-slot-button[aria-checked="true"],
#crafting-slot-screen[data-mode="Delete"] .crafting-slot-button[aria-checked="true"] .button-label {
	--button-color: pink;
	background-color: pink;
}

#crafting-slot-screen[data-mode="Delete"] .crafting-slot-button:active,
#crafting-slot-screen[data-mode="Delete"] .crafting-slot-button[data-active],
#crafting-slot-screen[data-mode="Delete"] .crafting-slot-button:active > .button-label,
#crafting-slot-screen[data-mode="Delete"] .crafting-slot-button[data-active] > .button-label {
	background-color: color-mix(in srgb, red 33%, pink 67%);
}

#crafting-slot-screen[data-mode="Delete"] .crafting-slot-button:focus,
#crafting-slot-screen[data-mode="Reorder"] .crafting-slot-button:focus {
	outline: 2px solid rgb(0, 96, 223);
	box-shadow: 0 0 0 3px white;
	border-radius: 1px;
}

#crafting-slot-screen-aside-l {
	scrollbar-width: thin;
	scroll-padding: 0.15em;
	padding-inline: unset;
}

#crafting-slot-screen-aside-l ul {
	margin: unset;
	padding: unset;
	list-style: none;
	color: white;
}

#crafting-slot-screen-aside-l li {
	height: 1.3em;
	text-align: end;
	min-width: calc(var(--menu-button-size) - var(--scrollbar-gutter));
	padding-left: var(--gap);
	padding-right: var(--scrollbar-gutter);
}

#crafting-slot-screen-aside-l li:hover,
#crafting-slot-screen-aside-l li:active {
	text-decoration: underline;
	color: lightgray;
}

#crafting-slot-screen-aside-l a {
	color: inherit;
	text-wrap: nowrap;
	text-decoration: none;
}

#crafting-slot-screen-aside-l li:has([aria-current="true"]) {
	background-color: rgba(0, 0, 0, 0.75);
	text-decoration: underline;
}

#crafting-slot-screen .screen-header {
	padding-right: var(--scrollbar-gutter);
	padding-left: var(--gap);
	padding-top: min(1.5vh, 0.75vw);
	padding-top: min(1.5dvh, 0.75dvw);
	display: grid;
	grid-auto-flow: column;
	direction: rtl;
	gap: var(--gap);
	grid-template-columns: min-content auto min-content;
}

#crafting-slot-screen .screen-header *:not([role="menubar"]) {
	direction: ltr;
}

#crafting-slot-screen .screen-header [role='menubar'] {
	grid-template-columns: repeat(6, var(--menu-button-size));
	grid-template-rows: repeat(auto-fit, var(--menu-button-size));
	grid-auto-flow: unset;
}

#crafting-slot-screen .screen-header input[type="search"] {
	width: 100%;
	height: var(--menu-button-size);
	grid-column: span 3;
}

#crafting-slot-screen .screen-header [role="group"] {
	display: grid;
	grid-template-columns: repeat(2, min-content);
	gap: calc(var(--gap) / 4);
	direction: rtl;
}

#crafting-slot-screen .screen-header [role="group"] .button {
	height: var(--menu-button-size);
	width: var(--menu-button-size);
}

#crafting-slot-screen .screen-header [role="group"] .button .question-div {
	mask-image: url("../Icons/Question.png");
	mask-size: cover;
	mask-position: center;
	mask-repeat: no-repeat;
	background-image: url("../Icons/Question.png");
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-blend-mode: multiply;
	position: absolute;
	height: 33%;
	width: 33%;
	bottom: 2%;
	right: 2%;
}

#crafting-slot-screen .screen-header [role="group"] .button .button-image {
	max-width: 86px;
	max-height: 86px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#crafting-slot-screen .screen-header [role="group"] .button .button-tooltip {
	--tooltip-gap: calc(var(--gap) / 4);
	text-wrap: unset;
	top: 0%;
	transform: unset;
	width: calc(2 * var(--button-width) + var(--gap) - var(--menu-button-size) - var(--gap) / 4);
}

#crafting-slot-screen .screen-header [role="group"] select {
	height: var(--menu-button-size);
	width: calc(var(--gap) + 2 * var(--menu-button-size) + 3 * var(--gap) / 4);
}

#crafting-slot-screen .screen-main-container {
	padding-bottom: min(1.5vh, 0.75vw);
	padding-bottom: min(1.5dvh, 0.75dvw);
}

#crafting-slot-screen .screen-main {
	padding-right: calc(var(--scrollbar-gutter) - var(--half-gap));
	padding-left: var(--half-gap);
	max-height: calc(5 * var(--button-height) + 1.3em + 5 * var(--gap));
}

fieldset[name="crafting-slot"] {
	border: unset;
	padding: unset;
	margin: unset;
}

fieldset[name="crafting-slot"] section {
	display: grid;
	justify-items: center;
}

fieldset[name="crafting-slot"] section:first-child > header {
	padding-top: unset;
}

fieldset[name="crafting-slot"] header {
	height: 1.3em;
	color: white;
	padding-block: var(--half-gap);
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--gap);
	align-items: center;
	justify-items: center;
	width: min-content;
	align-self: center;
}

fieldset[name="crafting-slot"] h2 {
	font-size: 1em;
	height: 1.3em;
	font-weight: normal;
	margin: unset;
	padding: unset;
	align-content: center;
	color: inherit;
	white-space: nowrap;
}

fieldset[name="crafting-slot"] h2:hover,
fieldset[name="crafting-slot"] h2:active {
	color: lightgray;
}

fieldset[name="crafting-slot"] section:has(.crafting-slot-collapser[aria-expanded="false"]) h2 {
	padding-bottom: unset;
	color: gray;
}

fieldset[name="crafting-slot"] a {
	color: inherit;
	text-decoration: none;
}

.crafting-slot-collapser {
	width: 1.3em;
	height: 1.3em;
	color: inherit;
}

.crafting-slot-collapser:hover,
.crafting-slot-collapser:active {
	color: lightgray;
}

.crafting-slot-collapser::before {
	content: "▼";
}

.crafting-slot-collapser[aria-expanded="false"]::before {
	content: "▶";
}

.crafting-slot-ul {
	padding: unset;
	margin: unset;
	display: grid;
	grid-template-columns: repeat(4, min-content);
	list-style: none;
	width: calc(4 * var(--button-width) + 4 * var(--gap));
	justify-self: end;
}

.crafting-slot-ul > li {
	position: relative;
	padding: var(--half-gap);
}


.crafting-slot-ul > li[data-hover]::before {
	box-sizing: border-box;
	content: "";
	position: absolute;
	top: 0;
	left: -1.5px;
	height: 100%;
	width: calc(100% + 3px);
}

.crafting-slot-ul > li[data-hover="left"]::before {
	border-left: 3px solid rgb(0, 96, 223);
}

.crafting-slot-ul > li[data-hover="right"]::before {
	border-right: 3px solid rgb(0, 96, 223);
}

@supports selector(:nth-child(1n of :not([hidden]))) {
	.crafting-slot-ul > li:nth-child(4n - 3 of :not([hidden])) .button-tooltip,
	.crafting-slot-ul > li:nth-child(4n - 1 of :not([hidden])) .button-tooltip {
		left: 0;
		transform: unset;
	}

	.crafting-slot-ul > li:nth-child(4n - 2 of :not([hidden])) .button-tooltip,
	.crafting-slot-ul > li:nth-child(4n of :not([hidden])) .button-tooltip {
		left: 100%;
		transform: translateX(-100%);
	}
}

/* Fallback for browsers that do not support https://caniuse.com/css-nth-child-of */
@supports not selector(:nth-child(1n of :not([hidden]))) {
	.crafting-slot-ul > li:nth-child(4n - 3) .button-tooltip,
	.crafting-slot-ul > li:nth-child(4n - 1) .button-tooltip {
		left: 0;
		transform: unset;
	}

	.crafting-slot-ul > li:nth-child(4n - 2) .button-tooltip,
	.crafting-slot-ul > li:nth-child(4n) .button-tooltip {
		left: 100%;
		transform: translateX(-100%);
	}
}

.crafting-slot-button {
	--tooltip-gap: var(--gap);
	overflow: visible;
	width: var(--button-width);
	height: var(--button-height);
	grid-template-columns: var(--button-height) auto;
}

.crafting-slot-button > .button-tooltip {
	width: 100%;
	font-size: 0.65em;
	width: calc(200% + var(--gap) + 2 * var(--border-width));
	display: -webkit-box;
	line-clamp: 11;
	-webkit-line-clamp: 11;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.crafting-slot-button > .button-icon-grid {
	--icon-size: min(50px, 4vh, 2vw);
	--icon-size: min(50px, 4dvh, 2dvw);
	grid-template-rows: repeat(3, var(--icon-size));
}

.crafting-draggable {
	position: absolute;
	top: 0;
	width: 50%;
	height: 100%;
}

.crafting-draggable[data-hover="left"] {
	left: 0;
}

.crafting-draggable[data-hover="right"] {
	left: 50%;
}

.crafting-image-stack {
	position: relative;
	z-index: -1;
	position: absolute;
	top: 50%;
	left: 50%;
}

.crafting-image-stack > * {
	height: var(--button-height);
	width: var(--button-height);
	position: absolute;
	background-color: rgba(255, 255, 255, 0.75);
}
