.course-table.columns-even-widths {
  table-layout: fixed;
}

.course-table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
}

.course-table td,
.course-table th {
  flex: 1;
}

.course-table th {
  background: #808080;
  color: #fff;
  font-weight: normal;
  text-align: left;
  text-transform: capitalize;
  vertical-align: baseline;
  white-space: nowrap;
  border: none;
}

.course-table th.table-course-name,
.course-table td.table-course-name {
  flex: 0 0 200px;
}

.sortable.course-table th:hover {
  color: #000;
  cursor: pointer;
}

.sortable.course-table th:hover::after {
  color: inherit;
  font-size: 1.2em;
}

.sortable.course-table th::after {
  font-size: 1.2em;
  color: transparent;
  content: ' \025B8';
}

.course-table th.dir-d {
  color: #000;
}

.course-table th.dir-d::after {
  color: inherit;
  content: ' \025BE';
}

.course-table th.dir-u {
  color: #000;
}

.course-table th.dir-u::after {
  color: inherit;
  content: ' \025B4';
}

.course-table tr td {
  border: none;
}

.course-table tr:hover>td{
  background-color: inherit;
}

.course-table>tr:nth-child(odd)>td {
  background-color: inherit;
}

.course-name {
  display: block;
  width: 100%;
  padding-right: 20px;
  position: relative;
}

a.course-name.has-description {
  display: flex;
  align-items: center;
}

.course-name.has-description::after {
  content: '\025BE';
  color: inherit;
  position: absolute;
  right: 0;
}

.course-name.has-description.active::after {
  content: '\025B4';
}

.course-description {
  transition: 0.5s;
  margin: 10px 0;
}

.course-description.hidden {
  display: none;
  transition: 0.5s;
}

.schedule-item + .schedule-item {
  margin-top: 15px;
}