:root
{
	--sidebar-width: 45px;
	--sidebar-width-exp: 300px;
	--descbox-width: 0px;
	--panel-initial-gap: 2em;
	--main-panel-padding: 80px;
	--stone: #1a1a1d;
	--stone-hi: #232326;
	--stone-lo: #111114;
	--gold: #d3a84a;
	--gold-hi: #f2d37a;
	--blood: #7a1b1b;
	--parchment: #f3e3c2;
	--ink: #2e2217;
	--txt: #e8e8ea;
	--txt-dim: #bcbcc3;
	--row: #1f2023;
	--row-alt: #1c1d20;
	--row-hover: #27292f;
	--focus: #ffed9c;

	--main-blue: #1f3550;
	--main-blue-hlt: #243142;
	--main-grey: rgba(var(--bs-dark-rgb));

	--rarity-common: #2a2a2a;
	--rarity-developer: #bb2f2c;
	--rarity-debug: #ce1624;
	--rarity-template: #ce1624;
	--rarity-uncommon: #3e9049;
	--rarity-rare: #2770b7;
	--rarity-epic: #8b339e;
	--rarity-legendary: #bb8a2c;
	--rarity-technical: #3b7a8f;
	--rarity-tool: #269edc;

	@media (max-width: 768px)
	{
		--descbox-width: 0px;
		--main-panel-padding: 10px;
	}
}

body
{
	padding: 0;
	margin: 0;

	background-color: #17202b;

	transition: background .2s ease-in;	
	color: white;
	font-family: 'Fredoka-Regular';

	--navbar-color: #141414;
	--scrollbar-color: #8c0008;
}

footer
{
	position: fixed;
	bottom: 0;
	width: 100%;
	font-size: .7em;
	color: white;
}

::-webkit-scrollbar
{
	width: 10px;
}

::-webkit-scrollbar-track
{
	background: var(--navbar-color);
}

::-webkit-scrollbar-thumb
{
	background: var(--scrollbar-color);
}

@font-face
{
	font-family: 'Fredoka-Regular';
	font-style: normal;
	font-weight: normal;
	src: local('Fredoka-Regular'), url('../fonts/Fredoka-Regular.woff') format('woff');
}

.itemicon
{
	width: var(--icon-size);
	transition: transform .2s ease;
	scale: var(--icon-scale);
}

.stat-spritesheet
{
	width: var(--width);
	height: var(--height);
	background: var(--main-sprite) var(--x) var(--y);
}

.stat-spritesheet-quality
{
	width: 16px;
	height: 16px;
	background: var(--main-sprite) var(--x) var(--y);
	display: inline-block;
	scale: 2;
	margin: 7px;
	margin-top: 15px;
}

.item-icon-in-desc-wrapper
{
	position: relative;
	height: 100px;
	width: 100px;
	display: inline-block;
	margin-top: 2em;
	left: 50%;
	transform: translate(-50%);
	box-sizing: content-box;
}

.sprite-block
{
	display: inline-block;
	margin-top: -2rem;
	margin-bottom: -2rem;
	vertical-align: middle;
}

.sprite-block-bag
{
	display: inline-block;
	vertical-align: middle;
	background: url(/core/assets/img/custom/Bag_of_Crafting.webp) var(--x) 0px;
	width: 16px;
	height: 16px;
	scale: 2;
}

.sprite-block-synergy
{
	display: inline-block;
	width: var(--game-icon-size);
	height: var(--game-icon-size);
	background: var(--spritesheet-gfx) var(--x) 0px;
	vertical-align: middle;
	cursor: pointer;
}

.sprite-block32
{
	width: var(--game-icon-size);
	height: var(--game-icon-size);
	scale: var(--game-icon-size-descscale);
	margin-left: var(--game-icon-size-descmargin);
	margin-right: var(--game-icon-size-descmargin);
}

.sprite-block-tag
{
	display: inline-block;
	width: 32px;
	height: 32px;
	background: var(--main-sprite) var(--x) var(--y);
	margin: 3px;
}

.sprite-block-mod
{
	display: inline-block;
	width: 32px;
	height: 32px;
	background: var(--mods-sprite) var(--x) 0px;
	vertical-align: middle;
}

.sprite-block-mod-new
{
	display: inline-block;
	width: 32px;
	height: 32px;
	background: var(--mods-sprite) var(--x) 0px;
	vertical-align: middle;
}

.content-link
{
	display: contents;
}

.pixelated
{
	image-rendering: pixelated;

	/* Prevent weird 1px glitching when hovering */
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

.panel
{
	position: relative;
	padding: var(--main-panel-padding);
	left: var(--sidebar-width);
	width: calc(100% - var(--sidebar-width));
	overflow-x: clip;
}

.reading-panel
{
	width: 80%;
	margin: 0 auto;
	overflow: hidden;
}

.reading-panel-sm
{
	width: 60%;

	@media only screen and (max-width: 1023px)
	{
		width: 80%;
	}

	transition: width .5s ease;
}

.isaac-form, .isaac-form:focus
{
	background-color: #c7b29a;
}

.isaac-form:disabled
{
	background-color: #808080;
}

.isaac-form-pre
{
	width: 64px;
	background-color: #929292;
	padding: 0;
}

.isaac-form-hidden-button
{
	display: none;
}

.dropdown-item:hover, .dropdown-toggle:hover
{
	color: unset !important;
}

.search-container
{
	position: sticky;
	top: 0;
	left: calc(var(--sidebar-width) + var(--descbox-width));
	right: 0;
	padding: .5em;
	background: #243142;
	z-index: 90;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
	margin: calc(var(--main-panel-padding) * -1);
	margin-bottom: var(--main-panel-padding);
	transition: left .5s ease;
}

.search-motd
{
	text-align: center;
	font-size: .8em;
	padding-bottom: .5em;
}

.search-elements
{
	display: flex;
	gap: 0.75rem;
}

.search-mod-button
{
	display: inline;
}

.search-bar
{
	width: 100%;
	padding: 0.5em;
	border-radius: 10px;
	border: none;
	background: var(--main-blue);
	color: white;
	font-size: 1em;
	outline: none;
	transition: opacity 0.3s ease;
	opacity: 50%;

	flex: 1;
	min-width: 100px;
}

.search-bar:focus, .search-bar:not(:placeholder-shown)
{
	opacity: 100%;
}

.clear-search-main
{
	color: red;
	z-index: 200;
	position: absolute;
	background-color: var(--scrollbar-color);
	right: 130px;
	top: 50%;
	transform: translate(0, -50%);
	display: none;
}

.search-select-mod-button
{
	min-width: 200px;
	padding: 0.5em;
	border-radius: 10px;
	border: none;
	background: #444;
	font-size: 1rem;
	outline: none;
	transition: background 0.3s ease;
	cursor: pointer;
	width: max-content;
	flex-shrink: 0;

	@media only screen and (max-width: 1200px)
	{
		min-width: fit-content;
	}
}

.search-mod-name-wip
{
	color: var(--bs-danger);
}

.search-mod-name-wip:after
{
	content: " [WIP]";
}

.search-filter-button
{
	padding: 0.5em 0.5em;
	border-radius: 10px;
	border: none;
	background: var(--main-blue);
	font-size: 1rem;
	cursor: pointer;
	transition: background 0.3s ease;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	flex-shrink: 0;
	padding: 0.5em 0.5em;
}

.search-filter-text, .search-mod-name
{
	@media only screen and (max-width: 1200px)
	{
		display: none;
	}
}

.search-form
{
	text-align: center;
	height: 40px;
	font-size: 1.2rem;
	background: var(--navbar-color);
	color: var(--scrollbar-color);
	border: 2px solid var(--navbar-color);
	transition: border 300ms ease, opacity 300ms ease;
	width: 100%;
	opacity: 50%;
}

.search-form:not(:placeholder-shown)
{
	opacity: 100%;
	border: 2px solid var(--navbar-color);
	transition: border 300ms ease;
}

.search-form:focus
{
	outline: none;
	border: 2px solid var(--scrollbar-color);
	opacity: 100%;
}

.clear-search-default
{
	color: red;
	z-index: 200;
	position: absolute;
	background-color: var(--scrollbar-color);
	right: 20px;
	top: 28px;
	display: none;
}

#desc
{
	display: contents;
}

.description-box
{
	left: var(--sidebar-width);
	width: var(--descbox-width);
	height: 100dvh;
	position: fixed;
	background-color: rgba(51, 51, 51, 0.5);
	backdrop-filter: blur(5px);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: background-color 0.5s ease, width .5s ease;
	z-index: 1;
	color: white;

	/* On mobile, the descbox is a blurred overlay instead of a side-display */
	@media (max-width: 768px)
	{
		display: none;
		width: 100%;
		z-index: 1006;
		background-color: rgba(51, 51, 51, 0.8);
	}
}

.description-box.highlight
{
	background-color: rgba(51, 80, 51, 0.5);
}

#descbox
{
	flex: 1;
	overflow-y: auto;
	overflow-wrap: break-word;
	scrollbar-gutter: stable;
}

.item-id, item-id:link, item-id:visited, item-id:hover, item-id:active
{
	color: grey;
	font-style: italic;
	font-size: .8em;
	display: block;
	text-align: center;
	margin-top: 0em;
	word-break: break-word;
}

.item-durability
{
	color: grey;
	font-style: italic;
	font-size: .8em;
	display: block;
	text-align: center;
	margin-top: -1em;
	margin-bottom: 1em;
}

.item-maxstack
{
	color: grey;
	font-style: italic;
	font-size: .8em;
	display: block;
	text-align: center;
	margin-top: -1em;
	margin-bottom: 1em;
}

.item-level
{
	color: grey;
	font-style: italic;
	font-size: .8em;
	display: block;
	text-align: center;
	margin-top: -1em;
	margin-bottom: 1em;
}

#desc-default-info
{
	font-size: 14px;
	text-align: center;
	display: block;
	margin: 10px;
	margin-top: 50dvh;
	transform: translate(0, -50%);
}

#desc-default-info > hr
{
	margin-top: 15px;
}

#desc-default-info > a
{
	text-decoration: none;
	color: yellow;
}

.item-name
{
	display: block;
	margin-top: .5em;
	margin-bottom: .1em;
	text-align: center;
	font-size: 30px !important;
	color: var(--item-name);
	padding-left: 10px;
	padding-right: 10px;
	word-wrap: break-word;
	line-height: 1.6rem;
}

.item-badge
{
	background-color: grey;
	color: black;
}

.item-contents
{
	display: block;
	margin-left: 8px;
	margin-right: 8px;
}

.item-contents2
{
	display: flex;
	flex-direction: column;
	margin-left: 8px;
	margin-right: 8px;
}

.item-crafting
{
	display: block;
	margin-bottom: 1em;
}

.item-description
{
	color: #40f1ff;
	font-style: italic;
}

.transformations-text
{
	color: #00A2FF;
	font-style: italic;
}

.light-block
{
	width: 1em;
	height: 1em;
	background-color: var(--light-color);
	display: inline-block;
	vertical-align: middle;
}

.unlock-text
{
	color: gold;
	font-style: italic;
}

.item-type
{
	margin: 1rem;
	text-align: center;
	font-style: italic;
	display: block;
	width: fit-content;
	margin-left: 50%;
	transform: translate(-50%);
}

.item-tags-title
{
	display: block;
	margin-top: 0;
	margin-bottom: 0;
	text-align: center;
	font-size: 15px;
}

.item-tags
{
	margin-top: 2px;
	text-align: center;
	margin-bottom: 10px;
	display: block;
}

.item-tag-icon
{
	width: var(--game-icon-size);
	height: var(--game-icon-size);
	margin-right: 3px;
}

.item-costume
{
	display: block;
	margin-top: 20px;
	margin-left: auto;
	margin-right: auto;
	width: 50%;
	max-width: 128px;
}

.description-box hr
{
	width: 100%;
	border-color: #B6B4B4;
	margin-top: 0;
	margin-bottom: 1rem;
}

.main-panel
{
	left: calc(var(--descbox-width) + var(--sidebar-width));
	width: calc(100% - var(--sidebar-width) - var(--descbox-width));
	position: absolute;
	padding: var(--main-panel-padding);
	overflow-x: clip;
}

.item-container
{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.item-container-collection
{
	--ccscale: 1;
	display: grid;
	grid-template-columns: repeat(20, 64px);
	width: max-content;
	position: relative;
	left: 50%;
	transition: transform 0.3s ease;
	transform: scale(var(--ccscale)) translateX(-50%);
	transform-origin: top left;

	@media (max-width: 1880px)
	{
		--ccscale: 0.8;
	}

	@media (max-width: 1600px)
	{
		--ccscale: 0.6;
	}

	@media (max-width: 1330px)
	{
		--ccscale: 0.4;
	}
}

.item-container-collection-spacer
{
	grid-column: 1 / -1;
	text-align: center;
	padding: 10px 0;
	font-size: 2em;
	text-shadow: 0 0px 2px black;
}

.item-icon-container
{
	width: var(--icon-size);
	height: var(--icon-size);
	position: relative;
	transition: opacity .3s ease;
	/*background-color: var(--rarity-color) !important;*/
	border: 2px solid #243142;
	border-radius: 10px;
}

.item-icon-container:not(.none)
{
	background:	linear-gradient(
		135deg,
		rgba(255,255,255,0.35) 0%,
		rgba(255,255,255,0.15) 25%,
		rgba(255,255,255,0.05) 40%,
		transparent 60%
	);

	transition: box-shadow 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

.item-icon-container:hover
{
	box-shadow: 0 0 30px var(--rarity-color);
	filter: brightness(1.15);
}

.common
{
	--rarity-color: var(--rarity-common);
	border-color: #424141;
}

.uncommon
{
	--rarity-color: var(--rarity-uncommon);
	border-color: #5c7c62;
}

.rare
{
	--rarity-color: var(--rarity-rare);
	border-color: #587da3;
}

.epic
{
	--rarity-color: var(--rarity-epic);
	border-color: #865892;
}

.legendary
{
	--rarity-color: var(--rarity-legendary);
	border-color: #8c7e5a;
}

.technical
{
	--rarity-color: var(--rarity-technical);
	border-color: #5b8697;
}

.tool
{
	--rarity-color: var(--rarity-tool);
	border-color: #34a7e3;
}

.developer
{
	--rarity-color: var(--rarity-developer);
	border-color: #a12b41;
}

.debug
{
	--rarity-color: var(--rarity-debug);
	border-color: #a12b41;
}

.item-icon-container-collection
{
	width: 64px;
	height: 64px;
	position: relative;
	transition: opacity .3s ease;
	border: 1px dashed #444;
	background-color: #f3e3c2;
}

.item-icon-container-collection:hover
{
	transform: none !important;
	background-color: var(--scrollbar-color);
}

.new-item::after
{
	content: "";
	position: absolute;
	top: 0px;
	right: 0px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: yellow;
}

.hidden-item::before
{
	content: "";
	position: absolute;
	top: 12px;
	right: 0px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: red;
}

.fav-item::after
{
	content: "★";
	position: absolute;
	top: 0px;
	right: 0px;
	color: lime;
	font-size: calc(var(--icon-size) / 5)
}

.new-items-note
{
	margin-top: 1em;
	text-align: center;
	text-wrap: auto;
	line-height: 1.3em;
}

.item-spritesheet-container
{
	display: inline-block;
	width: var(--game-icon-size);
	height: var(--game-icon-size);
	background: var(--spritesheet-gfx);
	background-position: var(--x) 0px;
	transform: translate(-50%, -50%) scale(var(--icon-scale));
	position: relative;
	left: 50%;
	top: 50%;
}

.item-background-container
{
	display: inline-block;
	width: var(--game-icon-size);
	height: var(--game-icon-size);
	background: var(--spritesheet-gfx);
	background-size: contain;
	transform: translate(-50%, -50%) scale(var(--icon-scale));
	position: relative;
	left: 50%;
	top: 50%;
}

.separator-text
{
	display: block !important;
	text-align: left;
	font-size: 1.5em !important;
	margin-bottom: 1em !important;
	margin-top: 1em;
}

.inline-icon
{
	vertical-align: middle;
	width: 32px;
	margin-top: -1rem;
	margin-bottom: -1rem;
}

.inline-icon-link
{
	all: unset !important;
	color: #9cdaff !important;
}

.inline-item
{
	color: #9cdaff;
}

.inline-item-link
{
	all: unset !important;
	cursor: pointer !important
}

.inline-item-link:hover
{
	color: yellow !important;
}

.game-menu-frame > .inline-item-link
{
	color: #0089FF !important;
}

.inline-block
{
	display: inline-block !important;
}

.item-contents a
{
	text-decoration: none;
	color: yellow;
}

.description-box > ul
{
	font-size: 14px;
}

.effect-type
{
	font-style: italic;
	font-size: 14px;
	display: block;
}

.effect-type::after
{
	content: ':';
}

.effect-type-pickup
{
	color: aquamarine;
}

.effect-type-passive
{
	color: yellow;
}

.effect-type-active
{
	color: limegreen;
}

.icon-size-dummy-holder
{
	position: relative;
	width: 256px;
	height: 256px;
	background-color: #c7b29a;
	border-radius: 8px;
}

#icon-size
{
	position: absolute;
	bottom: 8px;
	right: 8px;
}

#icon-size::after
{
	content: "px";
}

#icon-size-dummy
{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.descbox-settings-default
{
	height: 100%;
	position: absolute;
	width: 20%;
	border-right: 1px solid lime;
	border-radius: 8px;
	z-index: 1;
}

#descbox-settings-descbox
{
	width: var(--descbox-width);
	display: grid;
	align-items: center;
	max-width: 100%;
	height: 100%;
	background: grey;
	border-radius: 8px;
	text-align: center;
	text-orientation: vertical-rl;
	writing-mode: tb-rl;
	transform: rotate(180deg);
}

.settings-main-title
{
	font-size: 2.5em;
	margin-top: 5px;
	margin-bottom: 2px;
	color: deepskyblue;
}

p.subtitle
{
	padding-left: 8px;
	padding-right: 8px;
}

.background-wrapper
{
	display: flex;
	flex-wrap: wrap;
	gap: .3em;
	justify-content: center;
}

.background-preview-div
{
	--background-preview-width: 232px;
	--background-preview-height: 131px;

	position: relative;
	text-align: center;
	width: var(--background-preview-width);
	height: var(--background-preview-height);
	background-image: var(--bgimage);
	background-size: cover;
	font-size: 1em;

	transition: .3s ease;

	@media only screen and (max-width: 700px)
	{
		--background-preview-width: 139.2px;
		--background-preview-height: 78.6px;
		font-size: .6em;
	}
}

.background-preview-div:hover
{
	transform: scale(1.1);
	z-index: 1;
}

.background-preview-name
{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	pointer-events: none;
	line-height: 1em;
}

.background-preview-selected
{
	text-decoration: underline;
	color: limegreen;
}

.background-preview-selected::after
{
	content: ' ✓';
}

.item-icon-in-description
{
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 100px;
	position: relative;
}

.item-spritesheet-in-description
{
	background: var(--spritesheet-gfx) var(--x) 0px;
	width: var(--game-icon-size);
	height: var(--game-icon-size);
	transform: translate(0, -50%) scale(var(--game-icon-size-scale));
	transform-origin: center;
	image-rendering: pixelated;
	z-index: 1;
	top: 50%;
}

#chargebar
{
	position: absolute;
	visibility: hidden;
	top: 1em;
	left: 1em;
	width: 32px;
	height: 32px;
	z-index: 99999;
}

#descbox-buttons
{
	display: none;
	position: absolute;
	top: 1em;
	right: 1em;
	z-index: 99999;
	flex-direction: column;
	gap: 5px;

	@media (max-width: 768px)
	{
		display: flex;
		bottom: 1em;
		flex-direction: column-reverse;
	}
}

#descbox-buttons i
{
	cursor: pointer;
}

#closebutton
{
	display: none;

	@media (max-width: 768px)
	{
		display: block;
	}
}

.quick-hr
{
	margin: 0;
}

.tooltip-tag-name
{
	color: yellow;
	font-style: italic;
}

.tooltip-synergy-name
{
	color: #9cdaff;
	font-style: italic;
}

.tooltip.quality
{
	--bs-tooltip-bg: var(--rarity-color);
	font-size: 1em;
}

.tooltip.quality.none, .tooltip.quality.junk, .tooltip.quality.template
{
	--bs-tooltip-bg: grey;
}

.desc-loading
{
	position: relative;
	top: 50%;
	left: 50%;
}

.hide-scrollbar::-webkit-scrollbar
{
	display: none;
}

.hide-scrollbar
{
	-ms-overflow-style: none;  /* IE and Edge */
	scrollbar-width: none;  /* Firefox */
}

.description-table
{
	width: 100%;
	margin-bottom: 20px;
}

.descbox-offcanvas-btn
{
	background-color: var(--scrollbar-color);
}

.offcanvas
{
	background-color: rgba(var(--bs-body-bg-rgb), 0.5);
	backdrop-filter: blur(.2em);
}

.item-costume-main-container
{
	text-align: center;
	padding-top: 20px;
}

.item-costume-container
{
	border: 1px solid #0000002b;
	border-radius: 10px;
	width: 160px;
	height: 256px;
	background-color: rgba(255, 255, 255, 0.05);
	backdrop-filter: blur(.2em);
	text-align: center;
	position: relative;
	display: inline-flex;
	text-decoration: none;
	color: white;
	transition: background-color .2s ease-in;
	margin-right: 8px;
	margin-bottom: 13px;
}

.item-costume-container:hover
{
	color: white;
	background-color: rgba(255, 255, 255, 0.2);
}

.item-costume-container > img
{
	width: 80%;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.item-costume-name
{
	display: block;
	background-color: #c7b29a;
	color: black;
	bottom: 0;
	position: absolute;
	width: 100%;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
	word-wrap: break-word;
	padding-left: 5px;
	padding-right: 5px;
	font-size: .8em;
}

.game-menu-frame
{
	background-color: var(--main-blue);
    border: 3px solid var(--main-blue-hlt);

	/*--frame-size: 30px;
	position: relative;
	color: #372b2d;
	box-sizing: content-box;
	border: var(--frame-size) solid;
	background-clip: content-box;
	border-image: url(/core/assets/img/ui/game_menu_frame.webp) 30 fill round;
	word-break: break-word;
	image-rendering: pixelated;*/
}

.privacy-policy h2
{
	display: block;
	font-size: 1.5em;
	width: fit-content;
}

.privacy-policy h3
{
	display: block;
	font-size: 1.2em;
	width: fit-content;
}

.gmf-main
{
	padding: 1em;
}

.gmf-desc
{
	margin-top: 1em;
}

.changelog-date
{
	color: yellow;
	font-weight: bold;
}

.changelog-date::after
{
	content: ": ";
}

.isaac-streak
{
	--streak-width: 600px;
	image-rendering: pixelated;
	background-image: url(/core/assets/img/custom/mew_streak_small.png);
	background-repeat: no-repeat;
	background-size: var(--streak-width) 80px;
	width: var(--streak-width);
	height: 80px;
	line-height: 76px;
	text-align: center;
	vertical-align: middle;
	font-size: 2.2em;
	transition: width 0.3s ease;
	text-wrap: nowrap;
	color: black;

	@media only screen and (max-width: 1200px)
	{
		--streak-width: 500px;
		font-size: 2em;
	}

	@media only screen and (max-width: 1025px)
	{
		font-size: 1.6em;
	}

	@media only screen and (max-width: 768px)
	{
		--streak-width: 250px;
		font-size: 1.2em;
	}
}

.hytale-invcategory
{
	background-color: var(--main-blue);
	border: 3px solid var(--main-blue-hlt);
	text-align: left;
	text-transform: uppercase;
}

.strgap
{
	margin-bottom: 30px !important;
}

.strgap2
{
	margin-bottom: 30px !important;
	margin-top: 30px !important;
}

.center
{
	margin: 0 auto;
}

.center-gap
{
	margin: 64px auto 16px;
}

.hidden
{
	display: none !important;
}

.hidden-mod
{
	display: none;
}

.hidden-mod-but-visible
{
	display: list-item !important;
}

.hidden-mod-filtered
{
	display: none !important;
}

.hidden-mod-but-visible > .dropdown-item
{
	color: #fff !important;
	background-color: RGBA(var(--bs-secondary-rgb),var(--bs-bg-opacity,1)) !important;
	font-style: italic;
}

.faded
{
	opacity: 0.1;
}

.filter-title
{
	display: block;
	margin-top: 1em;
	margin-bottom: .5em;
}

.filters-button-header-wrapper
{
	display: block;
	margin-top: 1em;
}

.filters-flex
{
	column-gap: 5px;
	row-gap: 5px;
}

.filters-tag-wrapper
{
	max-width: 32px;
	max-height: 32px;
}

.filters-tag-wrapper > .sprite-block-pool
{
	transform: translate(-2px, -1px);
}

.filters-tag-wrapper > .sprite-block-tag
{
	transform: translate(-12px, -8px);
}

.filter-mode
{
	text-decoration: underline;
	text-decoration-style: dotted;
}

.dotted
{
	text-decoration: underline;
	text-decoration-style: dotted;
}

.mod-dropdown-sticky
{
	position: sticky;
	top: 1em;
	z-index: 90;
}

.mod-dropdown.show
{
	max-height: 90dvh;
	overflow-x: hidden;
	overflow-y: auto;
}

.mod-dropdown.show > li
{
	width: 25em;
	overflow: hidden;
}

.mod-dropdown-mod, .mod-dropdown-base
{
	height: 2.5em;
}

#mod-dropdown-search
{
	width: 25em;
	margin-left: .5em;
	font-size: .7em;
	border: none;
}

#mod-dropdown-search:focus
{
	box-shadow: none;
}

.rt-bold
{
	font-weight: bold;
}

.rt-italics
{
	font-style: italic;
}

.rt-underline
{
	text-decoration: underline;
}

.guru-mod
{
	float: right;
	margin-left: 1em;
}

.new-mod
{
	float: right;
	margin-left: 1em;
}

.google-ad-itemlist[data-ad-status="filled"]
{
	margin-top: 1em;
}

.modal, .toast
{
	color: var(--bs-body-color);
}

.modal-open
{
	overflow-y: scroll !important;
	padding-right: 0px !important;
}

#editing-guidelines-list > li
{
	margin-bottom: 1em;
}

.mod-logo-link
{
	display: contents;

	@media only screen and (max-width: 670px)
	{
		display: none;
	}
}

.mod-logo-wrapper
{
	position: relative;
	text-align: center;
	width: fit-content;
}

.centered
{
	text-align: center;
}

.trcentered
{
	left: 50%;
	transform: translate(-50%);
}

.mod-logo
{
	display: block;
	position: relative;
	max-width: 300px;
	margin-bottom: 1em;
}

.mod-logo-name
{
	position: absolute;
	bottom: -.4em;
	font-size: 1.7em;
	right: 3em;
	-webkit-text-stroke-color: #172755;
	-webkit-text-stroke-width: thin;
	paint-order: stroke;
	background: linear-gradient(180deg, white, #a2b6dd);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	white-space: nowrap;

	@media only screen and (max-width: 1010px)
	{
		font-size: 1.2em;
	}
}

.mod-logo-centered-name
{
	right: unset;
	text-align: center;
	left: 50%;
	transform: translate(-50%);
}

.active>.page-link, .page-link.active
{
	z-index: 0;
}

.article-img
{
	position: relative;
	max-width: 31.25em;
	left: 50%;
	transform: translate(-50%);
	margin: 1em;
}

.wti-moded
{
	filter: brightness(0);
}

.form-text
{
	text-shadow: 0 0px 2px black;
}

.form-text > kbd
{
	text-shadow: none !important;
}

@keyframes dimImage
{
	0% { opacity: 1; }
	50% { opacity: 0.2; }
	100% { opacity: 1; }
}

@keyframes glowShrink
{
	0% { transform: translate(-50%, -50%) scale(1); }
	50% { transform: translate(-50%, -50%) scale(0.7); }
	100% { transform: translate(-50%, -50%) scale(1); }
}

#items-dropdown-wrapper
{
	position: sticky;
	top: -1px;
	text-align: center;
	z-index: 999;
	margin-bottom: 1em;
	backdrop-filter: blur(.2em);
	filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.7));
	margin-left: -32px;
	margin-right: -32px;
	padding-bottom: 1em;
}

#items-dropdown-buttons-wrapper
{
	padding-top: 1em;
	margin-bottom: 1em;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .5em;
}

#items-dropdown-buttons-wrapper .btn
{
	transition: scale .1s ease-in;
}

#items-dropdown-buttons-wrapper .btn:hover
{
	scale: 1.1;
}

#items-dropdown-input
{
	width: 500px;
	height: 45.6px;

	@media only screen and (max-width: 1010px)
	{
		width: 300px;
	}

	@media only screen and (max-width: 1010px)
	{
		width: 200px;
	}
}

#items-dropdown-list
{
	height: 60dvh;
	overflow-y: auto;
}

.sprite-block-admin-list
{
	display: inline-block;
	width: var(--game-icon-size);
	height: var(--game-icon-size);
	background: var(--spritesheet-gfx) var(--x) 0px;
	vertical-align: middle;
	float: left;
	margin-right: 1rem;
}

.img-block-admin-list
{
	display: inline-block;
	width: var(--game-icon-size);
	height: var(--game-icon-size);
	background: var(--spritesheet-gfx);
	background-size: contain;
	position: relative;
	vertical-align: middle;
	float: left;
	margin-right: 1rem;
}

.acp-item-info
{
	color: grey;
	font-size: .8em;
}

.acp-item-hidden
{
	color: orangered;
}

.isaac-wrap
{
	display: block;
	overflow: hidden;
	background: linear-gradient(180deg, var(--stone-hi), var(--stone));
	border-radius: 18px;
	padding: 16px 16px 8px;
	box-shadow: 0 10px 24px rgba(0,0,0,.35), inset 0 0 0 1px #000;
	border: 2px solid #000;
	position: relative;
	margin-bottom: 1em;
}

.wiki-tables .isaac-table-scroll
{
	overflow: auto;
	border-radius: 12px;
	border: 2px solid #000;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.06);
}

.wiki-tables .isaac-table
{
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	color: var(--txt);
	background:
		linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0)) padding-box,
		linear-gradient(180deg, var(--stone), var(--stone-lo)) border-box;
	border: 10px solid transparent;
	border-image: linear-gradient(180deg, #000 0 5%, #3b3b43 20%, #2b2b32 80%, #000 100%) 30;
}

.wiki-tables .isaac-table thead th
{
	position: sticky;
	top: 0;
	background:
		linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,0)),
		linear-gradient(180deg, #2a2a30, #1d1e22);
	color: var(--gold-hi);
	text-align: left;
	font-weight: 800;
	font-size: 14px;
	padding: 12px 12px;
	border-bottom: 1px solid #000;
	box-shadow: inset 0 -2px 0 rgba(0,0,0,.6);
	white-space: nowrap;
}

.wiki-tables .isaac-table tbody td
{
	padding: 12px;
	border-bottom: 1px solid #0a0b0e;
	background-image: linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
	font-size: 14px;
}

.wiki-tables .isaac-table tbody tr:nth-child(odd) td { background-color: var(--row); }
.wiki-tables .isaac-table tbody tr:nth-child(even) td { background-color: var(--row-alt); }
.wiki-tables .isaac-table tbody tr { transition: box-shadow .14s ease, transform .08s ease; }
.wiki-tables .isaac-table tbody tr:hover td { background-color: var(--row-hover); }
.wiki-tables .isaac-table tbody tr:hover { box-shadow: inset 0 0 0 2px rgba(211,168,74,.45), 0 0 0 2px rgba(0,0,0,.6); }

.hytale-settings
{
	display: flex;
	gap: 8px;
	flex-direction: column;
}

.setting-row
{
	background: var(--main-blue-hlt);
	padding: 1em;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.setting-row:hover
{
	background: var(--main-blue);
}

.setting-box
{
	display: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: inline-block;
	font-size: 1em;
}

input.setting-box:after
{
	content: "NO";
	color: grey;
}

input.setting-box:checked::after
{
	content: "YES";
	color: white;
}

.fancy
{
	color: var(--parchment);
	font-weight: 700;
	text-shadow: 0 1px 0 #000;
}

a.fancylink, .fancylinks a
{
	background: linear-gradient(#ffe98d, #e19f27) !important;
	background-clip: text !important;
	color: #ecbc62 !important;
	text-decoration: none !important;
	font-weight: 700;
	text-shadow: 0 1px 0 #000;
	border-bottom: 1px dashed rgba(211,168,74,.35);
}

a.fancylink:hover
{
	color: var(--gold-hi) !important;
	border-bottom-color: transparent;
}

a.fancylink:focus
{
	outline: 2px solid var(--focus);
	outline-offset: 2px;
	border-radius: 4px;
}

.adsbygoogle
{
	text-align: center;
}

.grayscale
{
	filter: grayscale(1);
}

.row.g-3
{
	align-items: baseline;
}

.sidebar
{
	position: fixed;
	top: 0;
	left: 0;
	width: var(--sidebar-width);
	height: 100dvh;
	background-color: var(--navbar-color);
	color: white;
	display: flex;
	flex-direction: column;
	transition: width 0.3s ease;
	z-index: 200;
	overflow-y: auto;
}

@media (min-width: 769px)
{
	.sidebar:hover
	{
		width: var(--sidebar-width-exp);
	}
}

.sidebar::-webkit-scrollbar
{
	width: 2px;
}

.sidebar-content
{
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

.sidebar-menu, .sidebar-footer
{
	list-style: none;
	margin: 0;
	padding: 0;
}

.sidebar-menu li, .sidebar-footer li
{
	display: flex;
}

.sidebar-menu li a, .sidebar-footer li a
{
	display: flex;
	align-items: center;
	width: 100%;
	padding: 5px;
	color: white;
	text-decoration: none;
	filter: grayscale(100%);
	transition: all 0.3s;
	white-space: nowrap;
	overflow: hidden;
}

.sidebar-menu li a img, .sidebar-footer li a img,
{
	width: 32px;
	height: 32px;
	margin-right: 10px;
}

.sidebar-menu li a i, .sidebar-footer li a i
{
	margin-right: 10px;
	margin-left: 8px;
	line-height: 32px;
}

.sidebar-menu li a span, .sidebar-footer li a span
{
	transition: opacity 0.3s;
	opacity: 0;
}

@media (min-width: 769px)
{
	.sidebar:hover .sidebar-menu li a span, .sidebar:hover .sidebar-footer li a span
	{
		opacity: 1;
	}
}

.sidebar-menu li a:hover, .sidebar-footer li a:hover
{
	filter: grayscale(0%);
	background-color: rgba(255, 255, 255, 0.05);
}

.sidebar-menu li.active a, .sidebar-footer li.active a
{
	filter: grayscale(0%);
}

.sidebar-footer
{
	border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.sidebar-toggle
{
	display: none;
	position: fixed;
	bottom: 10px;
	left: 10px;
	z-index: 300;
	background-color: var(--navbar-color);
	border: none;
	color: white;
	font-size: 1.5em;
	width: 1.8em;
	padding: 2px;
	cursor: pointer;
	border-radius: 4px;
	transition: left 0.3s ease;
}

.sidebar-overlay
{
	display: none;
	position: fixed;
	inset: 0;
	background-color: rgba(0,0,0,0.4);
	z-index: 150;
}

@media (max-width: 768px)
{
	.sidebar-toggle
	{
		display: block;
	}

	:root
	{
		--sidebar-width: 0px;
	}

	.sidebar
	{
		overflow-x: hidden;
		transition: width 0.3s ease;
	}

	.sidebar.expanded
	{
		width: var(--sidebar-width-exp);
	}

	.sidebar-overlay.expanded
	{
		display: block;
	}

	/* Push menu down when button is visible */
	.sidebar.expanded .sidebar-toggle
	{
		left: 300px;
	}

	.sidebar span
	{
		opacity: 1 !important;
	}
}

body.no-scroll
{
	overflow: hidden;
}

.badge
{
	white-space: unset;
	position: relative;
	overflow: hidden;
}

.shine::after
{
	content: "";
	position: absolute;
	top: 0;
	left: -100%;
	width: 50%;
	height: 100%;
	background: linear-gradient(
		to right, 
		rgba(255, 255, 255, 0) 0%, 
		rgba(255, 255, 255, 0.4) 50%, 
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-25deg);
	animation: sweep 3s infinite;
}

@keyframes sweep
{
	0% { left: -100%; }
	80% { left: 150%; }
	100% { left: 150%; }
}

.wrapper404
{
	text-align: center;
	max-width: 100%;
}

.wrapper404 img
{
	max-width: 100%;
}

.wrapper404 .title
{
	font-size: 4em;
	line-height: .5em;

	@media (max-width: 1850px)
	{
		font-size: 3em;
	}

	@media (max-width: 1380px)
	{
		font-size: 2em;
	}

	@media (max-width: 700px)
	{
		font-size: 1em;
	}
}

.wrapper404 .subtitle
{
	font-size: .4em;
}

.wip-sign
{
	width: 2em;
}

.hytale-title
{
	position: relative;
	display: inline-block;
	padding: 8px 16px;
	margin-bottom: 20px;
	font-family: system-ui, sans-serif;
	font-size: 2rem;
	font-weight: 700;
	color: #e6e6e6;

	scroll-margin-top: 70px;

	background: var(--main-grey);
	border-radius: 12px;
	overflow: hidden;
	cursor: pointer;
	z-index: 0;
}

.hytale-title::before
{
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 8px;
	background: var(--rarity-color);
	border-radius: 12px;
	z-index: -1;
	transition: all 0.35s ease;
}

.hytale-title:hover::before
{
	width: 100%;
	border-radius: 12px;
}

.hytale-title a
{
	text-decoration: none;
	color: inherit;
}