html
{
	width: 100%;
	height: 100%;

	max-width: 100vw;

	margin: 0;
	padding: 0;
	border: 0;
}

body
{
	width: calc(100% - 10px);
	height: 100%;

	margin: 0;
	padding: 5px;
	border: 0;

	background-color: #CCC;
}

header
{
	background-color: #DED9DF;
	text-align: center;

	padding-top: 10px;
	padding-bottom: 10px;
}

header img
{
	max-width: 100%;
	width: auto;
	height: auto;
}

p
{
	margin-top: 16px;
	margin-bottom: 8px;
}

h2
{
	text-align: center;
}

h3
{
	text-align: center;

	text-decoration: underline;
}

.container
{
	max-width: 1000px;
	width: calc(100% - 20px);
	padding: 10px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10px;

	background-color: white;
}

.error
{
	padding: 15px;
	border-width: 4px;
	border-style: inset;
	border-color: red;
}

canvas.error
{
	padding: 0px;
}

section
{
	border-width: 1px;
	border-style: solid;
	border-color: black;

	padding: 15px;
	margin-bottom: 20px;
}

label
{
	display: inline-block;
	margin-right: 5px;
}

.formStack .formEntry
{
	display: inline-block;
	margin-right: 15px;
}

.formStack .formEntry label
{
	min-width: 125px;
	text-align: unset;
}

.formEntry label
{
	min-width: 40%;
	text-align: right;
}

.formEntry
{
	margin-bottom: 10px;
}

textarea
{
	width: 90%;
	height: 75px;
}

input
{
	max-width: calc(100% - 21px);
}

input.short
{
	width: 75px;
}

input.long
{
	width: 400px;
}

.slideyTable
{
	width: calc(100% - 30px);
	margin-left: 30px;

	margin-bottom: 15px;
}

.tableWindow
{
	max-width: 100%;
	max-height: calc(90vh);

	overflow-x: scroll;
	overflow-y: scroll;
}

.tableLabelFill
{
	padding: 3px;

	width: calc(100% - 6px);
	height: calc(100% - 6px);

	background-color: #DDD;
}

.tableLabelFloat
{
	vertical-align: middle;
}

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

	display: block;
}

input[type=submit]
{
	width: 200px;
	height: 50px;
}

canvas
{
	display: block;

	max-width: calc(100% - 8px);
	width: 700px;
	height: 150px;

	border-style: inset;
	border-width: 4px;
	border-color: grey;

	margin-bottom: 5px;
}

canvas.initials
{
	width: 200px;
}

table, td
{
	border-collapse: collapse;
	border: 1px solid black;
}

table
{
	border-bottom: 0;
	border-left: 0;
}

tr td
{
	min-width: 50px;
	word-wrap: break-word;

	border-top: 0;
	border-right: 0;

	padding: 0px;

	text-align: center;
}

table tr:nth-child(1)
{
	position: sticky;
	top: 0px;
}

table tr:nth-child(1) td
{
	padding: 0;
	z-index: 3;

	height: 44px;
}

tr td:nth-child(1)
{
	position: sticky;
	left: 0px;
	z-index: 2;

	text-align: right;
	padding: 0;
}

@media (max-width: 700px)
{
	.container
	{
		position: absolute;
		top: 0px;
		left: 0px;

		max-width: calc(100vw - 6px);
		width: calc(100vw - 6px);
		padding: 3px;
	}

	section
	{
		padding: 5px;
		margin-bottom: 15px;
	}

	p
	{
		text-align: justify;
	}


	.formEntry label
	{
		display: block;
		text-align: left;
	}

	input[type=radio]~label
	{
		display: inline-block;
	}
}