body, html {
	width: 100%;
	height: 100%;
	position: fixed;
}

body * {
	position: absolute;
}

body {
	color: #efeae4;
	background: #1F1611 url('/static/images/puzzle/wood-dark.jpg') repeat top left;
	background-size: 100vh 100vh;
	overflow: hidden;
	user-select: none;
}

.group {
	position: absolute;
	width: 0;
	height: 0;
	top: 0;
	left: 0;
	overflow: visible;
	z-index: 1;
}

.piece {
	position: absolute;
}

#game-paused {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(15, 12, 12, 0.75) url('/static/images/puzzle/icon-pause.svg') no-repeat center center;
	background-size: 180px 180px;
	display: none;
	z-index: 999998;
}

#menu {
	position: absolute;
	top: 8px;
	left: 8px;
	z-index: 999996;
	display: flex;
	gap: 8px;
}

#menu > a {
	background-size: 32px 32px;
	background-color: rgba(0,0,0,0.5);
	background-repeat: no-repeat;
	background-position: center center;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	display: flex;
	height: 32px;
	line-height: 1em;
	overflow: hidden;
	padding: 0.8em 1.2em 0.6em 1.2em;
	position: relative;
	text-indent: -9999px;
	width: 32px;
	z-index: 999996;
}

#menu > a:hover {
	background-color: rgba(134, 23, 1, 0.5);
}

#dark { background-image: url('/static/images/puzzle/icon-dark.svg'); }
#light { background-image: url('/static/images/puzzle/icon-light.svg'); }
#pause { background-image: url('/static/images/puzzle/icon-pause.svg'); }
#close { background-image: url('/static/images/puzzle/icon-back.svg'); }

#timer {
	background-color: rgba(0,0,0,0.5);
	border-radius: 6px;
	line-height: 1em;
	padding: 0.8em 1.2em 0.6em 1.2em;
	position: absolute;
	right: 6px;
	top: 6px;
	z-index: 999996;
}

#game-solved {
	display: none;
	position: absolute;
	top: 6px;
	right: 96px;
	z-index: 999996;
	background: #669123;
	border: 1px solid #8dc63f;
	border-radius: 24px;
	padding: 0.8em 1.2em 0.6em 1.2em;
	line-height: 1em;
}


#loading {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: var(--c-overlay);
	z-index: 999999;
}

.hidden {
	display: none !important;
}