body {
   background: #fff;
   font-size: 10.5pt;
   width: 215.8mm;
   margin: 0 auto !important;
   padding: 0px;
   float: none !important;
   overflow: visible;
   counter-reset: question-number;
}

.page {
   padding-top: 4em;
   padding-bottom: 1em;
   height: 256.5mm;
}

div.page > *:not(.margin) {
   margin-left: 6em;
   margin-right: 11em;
}

.margin {
   float: right;
   clear: right;
   margin-right: 0.5em;
   width: 8.5em;
   vertical-align: baseline;
   position: relative;
   padding: 5px;
}

span.bar {
   text-decoration: overline;
}

div.page > h2.title {
   text-align: center;
}

div.row {
   display: table-row;
}

div.cell {
   display: table-cell;
   vertical-align: top;
}

img.center {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

ul {
   padding-left: 5px;
}

ul ul {
   padding-left: 35px;
}

/* Colored boxes for different purposes */
.alert {
   background-color: rgb(255,200,199);
   border: 2px solid darkred;
   border-radius: 5px;
   font-weight: bold;
   padding: 5px;
}

.note {
   background-color: rgb(199,200,255);
   border: 2px solid darkblue;
   border-radius: 5px;
   padding: 5px;
}

.summary {
   background-color: rgb(199,255,200);
   border: 2px solid darkgreen;
   border-radius: 5px;
   padding: 5px;
}

.reminder {
   background-color: rgb(255,180,255);
   border: 2px solid darkviolet;
   border-radius: 5px;
   padding: 5px;
}

span.number:before {
   counter-increment: question-number;
   content: counter(question-number) ". "
}


/*Syllabus classes*/
.syllabus h3 {
   margin-bottom: 0em;
}

.syllabus ul {
   margin-top: 0.5em;
}

.syllabus li {
   padding-bottom: 0.2em;
}

.syllabus table#grade_scale_table col:nth-child(2n+2) {
   width: 6em;
}

.syllabus ol {
   padding-left: 1.3em;
}

table.calendar tr:nth-child(2n) {
   background-color: #e8e8e8 !important;
   
}

table.calendar td:first-child {
   padding-right: 1.5em;
}

table.calendar td {
   padding-top: 0.5em;
   padding-bottom: 0.5em;
    padding-left: 0.25em;
    padding-right: 0.25em;
}

/* Manual classes */
.manual h3.section {
   counter-reset: question-number;
   counter-reset: subsect-number;
   margin-bottom: 0em;
}

.manual ul {
   margin-top: 0em;
}

.manual table.excel {
   border-collapse: collapse;
   border: gray 1px solid;
}

.manual table.excel th {
   font-weight: normal;
   min-width: 2em;
   border: gray 1px solid;
   background: #eee;
}

.manual table.excel th.selected {
   background: #ccc;
}

.manual table.excel tr:first-child th.selected {
   border-bottom: 3px green solid;
}

.manual table.excel th:first-child.selected {
   border-right: 3px green solid;
}

.manual table.excel td {
   min-width: 6em;
   border: gray 1px solid;
   background: white;
}

.manual table.excel td.drag-start {
   border-top: 3px green solid;
   border-left: 3px green solid;
   border-right: 3px green solid;
   border-bottom: 2px green solid;
}

.manual table.excel td.drag-mid {
   border-left: 3px green solid;
   border-right: 3px green solid;
}

.manual table.excel td.drag-end {
   border-left: 3px green solid;
   border-right: 3px green solid;
   border-bottom: 3px green solid;
}

.manual table.excel td.select-blue {
   border: 2px blue solid;
}

.manual table.excel td.select-red {
   border: 2px red solid;
}

.manual table.excel td.select-green {
   border: 2px green solid;
}

.manual table.excel td.number {
   text-align: right;
}

/* Outline classes */
.outline h2.title {
   color: #a00;
   font-size: 2em;
   font-weight: 100;
   margin-bottom: 0em;
   margin-left: 3em;
}

.outline h3.section {
   color: #a00;
   font-size: 1.6em;
   font-weight: 100;
   margin-bottom: 0em;
   margin-left: 3.75em;
}

/* Worksheet styles */
table.data_table {
   width: 100%;
   border: 1px solid;
   border-collapse: collapse;
   table-layout: fixed;
}
table.data_table td, table.data_table th {
   border: 1px solid;
}
table.data_table th {
   border-bottom: 2px solid;
}

table.data_table td.visible, table.data_table th.visible {
   background: #cfc;
}

table.data_table td.set, table.data_table th.set {
   background: #fcc;
}

table.equation {
   width: 100%;
}

table.equation tbody tr td:nth-child(2) {
   text-align: center;
}

table.equation tbody tr td:nth-child(3) {
   text-align: right;
}

/* Rubric styles */
.rubric table.rubric {
   width: 100%;
   border: 1px solid;
   border-collapse: collapse;
}

.rubric table.rubric td {
   border: 1px solid;
   min-width: 2em;
   padding: 0.2em;
}



@media screen {
   .page {
      border: 1px solid;
   }
}

@media print {
   .comment {
      /*visibility: hidden;*/
      display: none;
   }   
}
