body {
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;

	/* padding: 4em; */
	margin : 0;
	padding: 0 1em;

	font-size  : 12pt;
	line-height: 1.5rem;

	color: #6a6a6a;
}

.loading-container {
	width          : 500px;
	text-align     : center;
	display        : flex;
	justify-content: center;
	align-items    : center;
	min-height     : 200px;
}

.loading-container .loading {
	width            : 30px;
	height           : 30px;
	background       : transparent;
	border-radius    : 70px;
	border           : 6px solid rgba(0, 119, 137, 0.31);
	border-top       : 6px solid rgb(0, 119, 137);
	border-left      : 6px solid rgba(0, 119, 137, 0.749);
	border-bottom    : 6px solid rgba(0, 119, 137, 0.529);
	-webkit-animation: spin 2s linear infinite;
	-moz-animation   : spin 2s linear infinite;
	animation        : spin 2s linear infinite;
	opacity          : 0.6;
}

@-moz-keyframes spin {
	100% {
		-moz-transform: rotate(360deg);
	}
}

@-webkit-keyframes spin {
	100% {
		-webkit-transform: rotate(360deg);
	}
}

@keyframes spin {
	100% {
		-webkit-transform: rotate(360deg);
		transform        : rotate(360deg);
	}
}


.hidden {
	display: none;
}

h1 {
	color      : #007789;
	line-height: 1.2em;
	margin-top : 0;
}

.report-table-container {
	display  : flex;
	font-size: 0.7em;
	overflow : auto;
}

.submission-id {
	opacity   : 0.8;
	margin-top: 10px;
}

pre {
	max-width  : 700px;
	width      : 700px;
	white-space: pre-wrap;
}

select {
	padding: 0.4em;
}

table {
	border-collapse: collapse;
	background     : white;
}

.report-table>tbody>tr {
	border-bottom: 2px solid gray;
}

.report-table>thead {
	font-size: 1.2em;

}

.report-table>tbody>tr>td:first-of-type {
	background: lightgray;
	color     : #007789;
}

th,
td {
	border     : 1px solid gray;
	padding    : 0.4em 0.6em;
	min-width  : 300px;
	max-width  : 500px;
	line-height: 1.5em;
}

thead {
	text-align: left;
	background: #007789;
	color     : white;
}

th:first-of-type,
td:first-of-type {
	min-width: 100px;
	max-width: 250px;
}

td:first-of-type {
	font-weight: bold;
}

td ul {
	font-size   : 0.9em;
	margin      : 0.5em;
	padding-left: 1.5em;
}

td table {
	table-layout: fixed;
	width       : calc(100% + 2px);
	background  : #f5f5f5;
	font-size   : 0.9em;
	margin      : -1px;
}

/* td table thead {
	background: darkgray;
	color     : #2d2d2d;
} */

.table-in-td-intro {
	padding: 0 0.6em;
}

/* .td-with-table {
	padding: 0;
} */

td>p:first-of-type {
	margin-top: 0;
}

td>p:last-of-type {
	margin-bottom: 0;
}

td i {
	display: none;
}

.td-label {
	font-weight: bold;
	font-size  : 0.9em;
}

.td-label+ul {
	margin-top: 0.1em;
}

button {
	cursor       : pointer;
	background   : #003850;
	color        : white;
	border-radius: 4px;
	font-size    : 1.2em;
	border       : none;
	padding      : 0.8em 1em;

	display        : flex;
	justify-content: center;
	align-items    : center;

	transition: opacity 0.2s ease;
}

button:not(:disabled):hover {
	opacity: 0.8;
}

.btn-small {
	font-size: 1em;
	padding  : 0.6em 0.9em;
}

.button-icon {
	font-size   : 2.2em;
	margin      : -0.3em;
	margin-right: 0;
}

button.return-to-form {
	margin-top: 1em;

}

/* Input form ================== */

form#user-form {
	margin-bottom: 3em;
	font-size    : 11pt;
}

.user-inputs,
.no-print {
	margin-top: 2em;


}



.form-group {
	margin-bottom: 1em;
}

.form-group-title {
	font-weight   : bold;
	/* font-size  : 1em; */
	/* opacity    : 0.8; */
}

.form-group label {
	display      : block;
	font-weight  : bold;
	color        : #007789;
	margin-bottom: 0.5em;
}

.form-group input[type="email"],
.form-group input[type="text"] {
	padding  : 0.4em 0.5em;
	min-width: 400px;
	max-width: 600px;
}

form section {
	margin-bottom: 2em;
}



form button:disabled {
	cursor    : initial;
	background: gray;
}

@media print {
	body {
		font-size: 10pt;
	}

	.user-inputs,
	.no-print {
		display: none;
	}
}

@media screen and (max-width: 640px) {
	h1 {
		font-size: 1.5em;
	}

	.report-table {
		font-size: 0.7em;
		overflow : auto;
	}
}