* {
	margin: 0;
	padding: 0;
}

:root {
	--tile-size: 9vmin;
}

body {
	background-color: #312e2b;
	color: white;
	width: 100%;
	height: 100vh;
}

.title {
	padding-top: 1rem;
}

.container {
	width: 100%;
	height: 100%;

	display: flex;
	flex-direction: column;
	align-items: center;
}

.container .game {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;

	height: 100%;
	width: 100%;

	gap: 3rem;
}

.game .board {
	table-layout: fixed;
	resize: both;
	border: 1px solid black;
	color: black;

	border-spacing: 2px;
}

.board .tile {
	position: relative;
	text-align: center;

	width: var(--tile-size);
	height: var(--tile-size);

	overflow: hidden;
	white-space: nowrap;

	user-select: none;
}

.board .tile img {
	object-fit: contain;
	vertical-align: middle;
}

.tile.marked::after {
	position: absolute;
	display: block;

	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);

	content: " ";
	width: 2vmin;
	aspect-ratio: 1;
	border-radius: 50%;

	background-color: rgba(0, 0, 0, 0.2);

}

/* .tile:hover {
	outline: 1px solid rgba(255, 255, 255, 0.5);
} */

.tile.marked.enemy-marked::after {
	width: 80%;
	background-color: transparent;
	border: 0.8vmin solid rgba(0, 0, 0, 0.2);
}

.tile.selected {
	background-color: #bbcb2b !important;
}

.tile.light {
	background-color: #eeeed2;
}

.tile.dark {
	background-color: #769656;
}

.tile img {
	z-index: 10;
}

.game-info {
	display: flex;
	flex-direction: column;

	align-items: baseline;
	justify-content: baseline;

	gap: 1rem;

	box-sizing: border-box;
	padding: 2rem;

	height: calc(var(--tile-size) * 8);
	aspect-ratio: 0.618;

	background-color: #272522;
}

.game-info-item label {
	display: flex;
	align-items: center;
	gap: 0.3rem;
	border-radius: 3px;
	padding: 0.3em;
	user-select: none;
}

.game-info-item label:hover {
	background-color: rgba(255, 255, 255, 0.05);
	cursor: pointer;
}

.game-info-item input, .game-info-item button {
	cursor: pointer;
}

.game-info-item button {
	width: 100%;
}

@media only screen and (max-width: 760px) {
	.container .game {
		flex-direction: column;
	}

	.game-info {
		width: calc(var(--tile-size) * 8);
	}
}

.fade-out {
	visibility: hidden;
	opacity: 0;
	transition: visibility 0.25s ease, opacity 0.25s ease;
}

.fade-in {
	visibility: visible;
	opacity: 1;
	transition: opacity 0.25s ease;
}