@font-face
{
	font-family: 'RedHatDisplay';
	src: url('fonts/RedHatDisplay-SemiBold.ttf') format('truetype');
	font-weight: 500;
}

*
{
	box-sizing: border-box;
}

*[data-show='0']
{
	display: none;
}

*[data-show='1']
{
	display: block;
}

body
{
	display: flex;
	justify-content: space-between;
	width: 98vw;
	height: 98vh;
	color: black;
	background-color: white;
	font: 500 1rem RedHatDisplay, sans-serif;
	font-size: clamp(0.8rem, 1.5vw, 1.05rem);
	user-select: none;
}

dialog
{
	text-align: center;
	border-radius: 10px;
}

#left,
#right
{
	display: inline-block;
	border: 1px solid lightgray;
}

#left
{
	width: clamp(400px, 30%, 30%);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 2.5rem;
}

#right
{
	width: 70%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-image: url('img/bg.png');
	background-size: cover;
}

#logo 
{
	width: 50%;
	margin-bottom: 1.25rem;
}

#circle
{
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: white;
	border-radius: 50%;
	width: max(15vw, 200px);
	height: max(15vw, 200px);
}

#seal
{
	width: max(12vw, 160px);
}

#instr
{
	display: block;
	width: 100%;
	border: none;
	text-align: right;
	background-color: inherit;
	cursor: pointer;
}

#instr img
{
	vertical-align: middle;
	margin-left: 0.25rem;
}

#help #title
{
	margin-bottom: 1rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid gray;
	text-align: center;
}

#help div
{
	text-align: left;
	margin-bottom: 0.5rem;
}

.btn
{
	display: block;
	width: 100%;
	margin-top: 1.25rem;
	border: none;
	border-radius: 10px;
	padding: 0.75rem;
	font: inherit;
	font-size: 0.95rem;
	cursor: pointer;
	color: white;
	background-color: #2f84c6;
}

.btn:disabled
{
	background-color: gray;
	cursor: wait;
}

form label,
form input:not([type='checkbox'])
{
	display: block;
}

form label
{
	margin-top: 1.25rem;
}

form input
{
	margin-top: 0.5rem;
}

form input:not([type='checkbox'])
{
	width: 100%;
	border: 3px solid black;
	border-radius: 10px;
	padding: 0.5rem;
	font-size: 1.05rem;
	color: #555;
}

table
{
	width: 100%;
	margin-top: 1.25rem;
	border-collapse: collapse;
}

caption
{
	text-align: left;
	padding-bottom: 0.5rem;
}

tr:nth-child(even)
{
	background-color: #e2daca;
}

th,
td
{
	border: 1px solid lightgray;
	padding: 0.15rem;
}

th
{
	color: white;
	background-color: #2f84c6;
}

td
{
	text-align: center;
}

td img
{
	cursor: pointer;
}

footer
{
	text-align: center;
	margin-top: 1.25rem;
}

@media (max-width: 430px) 
{

	body
	{
		font-size: clamp(0.9rem, 4vw, 1.2rem);
	}

	#left
	{
		width: 100%;
		border: 0;
		padding: 1.5rem;
	}

	#right 
	{
		display: none;
	}

}

