body { 
	background: #cccccc;
}

h2 {
	text-align: center;
	margin-top: 1ex;
	margin-bottom: 0.5ex;
	font-size: medium;
	font-weight: bold;
}

h3 {
	margin-left: 0em;
	margin-top: 2ex;
	margin-bottom: 0.5ex;
	font-size: medium;
	font-weight: bold;
}

p {
	margin-left: 2.5em;
	margin-top: 0.8ex;
	margin-bottom: 0ex;
}

ol, ul {
	padding-left: 2.5em;
	margin-top: 0.8ex;
	margin-bottom: 0ex;
}

table.grade {
	border: 0px solid black;
	padding: 0px;
}

.grade th {
	border-style: solid;
	border-width: 1px 1px 2px 0px;
	padding: 1px 4px;
	background-color: gray;
	font-size: 80%;
	/* font-weight: normal; */
}

.grade th.first {
	border-left-width: 1px;
}

.grade td {
	border-style: solid;
	border-width: 0px 1px 1px 0px;
	padding: 0px 1em;
	width: 4ex;
	text-align: right;
}

.grade td.empty {
	border-width: 0px 1px 0px 0px;
}

.grade td.first {
	border-left-width: 1px;
	padding: 0px 2px;
	text-align: center;
}

.grade td.comment {
	border-width: 0px;
	padding: 0px 0px 0px 1ex;
	text-align: left;
}

table.ratio {
	border: 0px solid black;
	padding: 0px;
}

.ratio td {
	border-style: solid;
	border-width: 0px 1px 1px 0px;
	width: 4em;
	text-align: center;
}

.ratio tr.label td.empty {
	border-width: 0px 1px 1px 0px;
	width: 0em;
	background-color: #cccccc;
}

.ratio tr.label td {
	border-width: 1px 1px 2px 0px;
	width: 4em;
	background-color: gray;
	font-weight: bold;
}

.ratio tr td.label {
	border-width: 0px 2px 1px 1px;
	width: 3em;
	background-color: gray;
	font-weight: bold;
}
