/* Course layout follows the standard jemdoc course template. */
table#tlayout { width: 100%; }
#layout-menu { width: 8.5em; }
#layout-content { padding-right: 1.5em; }
td { padding-top: 0.5em; padding-bottom: 0.5em; text-align: left; }
h1 { line-height: 1.2; }
.archive-note { color: #555; }
.course-table { width: auto; max-width: 100%; border-collapse: collapse; table-layout: auto; }
.course-table th, .course-table td {
  border: 1px solid #888;
  padding: 0.4em 0.65em;
  text-align: left;
  vertical-align: middle;
  line-height: 1.4;
}
.course-table th { background: #f6f6f6; }
.course-table td:first-child { white-space: nowrap; }
.course-table ul { margin: 0; padding-left: 1.2em; }
.course-table li + li { margin-top: 0.3em; }
.course-table .readings { margin-top: 0.7em; }
#schedule .week-note { display: block; margin-top: 0.4em; font-size: 90%; white-space: normal; color: #555; }
.table-scroll { overflow-x: auto; margin-bottom: 1em; }
a:focus-visible { outline: 2px solid #224b8d; outline-offset: 3px; }
@media screen and (min-width: 701px) {
  table#tlayout { height: calc(100vh - 8px); }
}
@media (max-width: 700px) {
  table#tlayout, table#tlayout > tbody, table#tlayout > tbody > tr,
  #layout-menu, #layout-content { display: block; box-sizing: border-box; width: 100%; }
  #layout-menu { padding: 0.5em 1em 0.8em; white-space: normal; }
  #layout-menu .menu-category { margin-top: 0.3em; }
  #layout-menu .menu-item { display: inline-block; margin-right: 0.65em; }
  #layout-menu a { margin-left: 0; line-height: 1.9; }
  #layout-content { padding: 0 1em; }
  h1 { font-size: 145%; }
  #schedule { min-width: 620px; }
  #homework { min-width: 580px; }
}
