.sidebar .module-switch {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding-right: 5px;
  scrollbar-width: thin;
  scrollbar-color: #45576a transparent;
}

.m2-sidebar .module-switch {
  flex: 1 1 auto;
}

.module-switch a {
  line-height: 1.25;
}

.course-module-item {
  margin-top: 4px;
}

.module-switch .course-module-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 7px;
  width: 100%;
  min-height: 48px;
  padding: 9px 10px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #aebbc2;
  font: 600 14px/1.25 'DM Sans', sans-serif;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  margin-top: 0;
}

.module-switch .course-module-row:hover,
.module-switch .course-module-row.active {
  background: #182a3b;
  color: #f3c96b;
}

.course-module-number {
  color: inherit;
  font-variant-numeric: tabular-nums;
}

.course-module-title {
  min-width: 0;
  overflow-wrap: anywhere;
}

.course-module-chevron {
  color: inherit;
  font-size: 16px;
  line-height: 1;
  transform: rotate(0deg);
  transition: transform .2s ease;
}

.module-switch .course-module-row[aria-expanded="true"] .course-module-chevron {
  transform: rotate(90deg);
}

.course-session-list {
  display: grid;
  gap: 3px;
  margin: 4px 0 10px 17px;
  padding: 4px 0 4px 14px;
  border-left: 1px solid #314457;
}

.course-session-list[hidden] {
  display: none;
}

.course-session-button {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) 14px;
  align-items: start;
  gap: 7px;
  width: 100%;
  padding: 8px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: #93a4af;
  font: 500 12px/1.35 'DM Sans', sans-serif;
  text-align: left;
  cursor: pointer;
}

.course-session-chevron {
  color: #708493;
  font-size: 14px;
  line-height: 1.35;
  transition: transform .2s ease;
}

.course-session-button[aria-expanded="true"] .course-session-chevron {
  transform: rotate(90deg);
}

.course-section-list {
  display: grid;
  gap: 2px;
  margin: 2px 0 8px 16px;
  padding: 3px 0 3px 10px;
  border-left: 1px solid #26394c;
}

.course-section-list[hidden] {
  display: none;
}

.course-section-button {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 6px;
  width: 100%;
  padding: 6px 7px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #7f929f;
  font: 500 12px/1.35 'DM Sans', sans-serif;
  text-align: left;
  cursor: pointer;
}

.course-section-button:hover,
.course-section-button.active {
  background: #203448;
  color: #fff;
}

.course-section-number {
  color: #a88c4d;
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.course-session-button:hover,
.course-session-button.active {
  background: #14283b;
  color: #fff;
}

.course-session-button.done .course-session-number {
  color: #47d6bd;
}

.course-session-number {
  color: #f3c96b;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.section-jump,
#m2SectionJump,
.journey-rail,
.m2-rail {
  display: none !important;
}

.learn-grid,
.m2-layout {
  grid-template-columns: minmax(0, 1fr) !important;
  max-width: 1180px !important;
}

@media (max-width: 760px) {
  .module-switch .course-module-row { min-height: 46px; }
  .course-session-button { font-size: 13px; padding: 9px 8px; }
}
