@media (min-width: 561px) {
  [data-s5-page="learning"] .s5-top nav:has(> a[aria-current]) > details > summary { color: var(--s5-ink); box-shadow: none; }
}
html body[data-s5-page="learning"] .s5-top .student-learning-session {
  position: static;
  display: flex;
  grid-column: 1 / -1;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: 4px 0 0;
  padding: 6px 0 0;
  border: 0;
  border-top: 1px solid var(--s5-line);
  border-radius: 0;
  color: var(--s5-ink);
  background: transparent;
  box-shadow: none;
}
[data-s5-page="learning"] .student-learning-session button {
  min-height: 44px;
  padding-inline: 12px;
  border: 1px solid var(--s5-line);
  border-radius: 8px;
  background: #fff;
  color: var(--s5-blue);
  font: inherit;
}

html body[data-s5-page="learning"]:not(.is-game-lobby-view) .student-learning-layout { margin-block: 0; padding-block: clamp(14px, 1.8vw, 24px) 20px; }
html body[data-s5-page="learning"]:not(.is-game-lobby-view) :is(.student-learning-notebook, .student-learning-paper, .student-learning-paper-content, .student-materials-today) {
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  overflow: visible;
  scrollbar-gutter: auto;
}
html body[data-s5-page="learning"]:not(.is-game-lobby-view) .student-learning-header { min-height: 0; padding-bottom: 0; }
html body[data-s5-page="learning"]:not(.is-game-lobby-view) #studentLearningTitle { margin: 0; }
[data-s5-page="learning"]:not(.is-game-lobby-view) .student-learning-header :is(p, time) { display: none; }

html body[data-s5-page="learning"]:not(.is-game-lobby-view) .student-learning-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  gap: 8px;
  margin: 18px 0 12px;
}
html body[data-s5-page="learning"]:not(.is-game-lobby-view) .student-learning-tabs button {
  display: flex;
  align-items: center;
  gap: clamp(6px, 1vw, 14px);
  min-height: 50px;
  padding: 5px clamp(8px, 2vw, 24px);
  border: 0;
  border-inline-start: 5px solid var(--s5-material-tab-edge, #53aefa);
  opacity: 1;
  filter: none;
  transform: none;
}
[data-s5-page="learning"] .student-learning-tabs button:nth-child(2) { --s5-material-tab-edge: #6bbd70; }
[data-s5-page="learning"] .student-learning-tabs button:nth-child(3) { --s5-material-tab-edge: #a47be1; }
[data-s5-page="learning"] .student-learning-tabs button:nth-child(4) { --s5-material-tab-edge: #ebaf46; }
[data-s5-page="learning"] .student-learning-tabs i { font-size: 1.12em; }

html body[data-s5-page="learning"] .student-materials-viewbar {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  gap: 4px 8px;
  margin: 0;
  padding: 8px 0;
  border-block: 1px solid var(--s5-line);
}
html body[data-s5-page="learning"] .student-materials-viewbar > div { display: flex; gap: 8px; width: auto; padding: 0; border: 0; border-radius: 0; background: none; overflow: visible; }
html body[data-s5-page="learning"] .student-materials-viewbar button {
  min-height: 44px;
  padding: 4px 12px;
  border: 1px solid var(--s5-line);
  border-radius: 8px;
  background: #fff;
  color: var(--s5-ink);
  box-shadow: none;
  font-family: inherit;
  font-size: 15px;
  font-weight: 750;
}
html body[data-s5-page="learning"] .student-materials-viewbar button[aria-selected="true"] {
  border-radius: 8px;
  background: #d7e8ff;
  border-color: #a4c4ee;
  color: #104689;
}
html body[data-s5-page="learning"] #studentMaterialsHelp { align-self: center; padding-inline: 8px; border: 0; background: transparent; color: var(--s5-blue); font-size: 13px; }

.s5-material-workspace { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); gap: 0; }
.s5-material-lists, .s5-material-reader { min-width: 0; padding-block: 14px; }
.s5-material-lists { padding-inline-end: 13px; }
.s5-material-reader { border-inline-start: 1px solid var(--s5-line); padding-inline-start: clamp(14px, 2.1vw, 28px); }
[data-s5-page="learning"] #s5MaterialBack { display: none; }

html body[data-s5-page="learning"] :is(.student-materials-archive, .student-materials-daily, .student-materials-archive-board, .student-materials-reader, .student-materials-student-list, .student-materials-detail) {
  min-width: 0;
  min-height: 0;
  height: auto;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
html body[data-s5-page="learning"] .student-materials-reader { display: block; }
html body[data-s5-page="learning"] .student-materials-archive-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
  padding: 0 0 14px;
}
html body[data-s5-page="learning"] .student-materials-archive-search { grid-column: 1; }
html body[data-s5-page="learning"] .student-materials-archive-search > span[aria-hidden] { font-size: 20px; }
html body[data-s5-page="learning"] .student-materials-archive-search > input { padding-inline-start: 32px; }
html body[data-s5-page="learning"] .student-materials-archive-toolbar :is(input, select),
[data-s5-page="learning"] :is(#s5MaterialFilterToggle, #s5MaterialBack, .s5-material-button) {
  min-height: 44px;
  min-width: 0;
  border: 1px solid var(--s5-line);
  border-radius: 8px;
  background: #fff;
  color: var(--s5-ink);
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
}
[data-s5-page="learning"] :is(#s5MaterialFilterToggle, #s5MaterialBack, .s5-material-button) { padding: 5px 12px; }
[data-s5-page="learning"] #s5MaterialFilterToggle i { margin-inline-end: 6px; }
.s5-material-filters:not([hidden]) { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.s5-material-filters select { max-width: 100%; padding-inline: 5px; }
[data-s5-page="learning"] .s5-material-row {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  width: 100%;
  min-height: 68px;
  margin: 0;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-block-end-color: var(--s5-line);
  background: transparent;
  color: var(--s5-ink);
  text-align: start;
  font: inherit;
}
[data-s5-page="learning"] .s5-material-row[aria-current="true"], [data-s5-page="learning"] .s5-material-row:hover {
  border: 1px solid #5798e5;
  border-radius: 8px;
  background: var(--s5-pale-blue);
}
.s5-material-row-copy { display: grid; gap: 2px; overflow-wrap: anywhere; }
.s5-material-row strong { font-size: clamp(16px, 1.5vw, 20px); line-height: 1.3; }
.s5-material-row small { color: var(--s5-muted); font-size: clamp(12px, 1.13vw, 14px); line-height: 1.4; }
.s5-material-row-arrow { font-size: 24px; }
.s5-material-message {
  padding: 12px 0;
  color: var(--s5-muted);
  font-size: 14px;
}
[data-s5-page="learning"] .student-materials-archive-pagination { justify-content: start; flex-wrap: wrap; }
[data-s5-page="learning"] .student-materials-archive-pagination button { min-width: 44px; min-height: 44px; }
[data-s5-page="learning"] .student-materials-datebar { gap: 8px; padding: 6px; border-color: var(--s5-line); background: none; box-shadow: none; }
[data-s5-page="learning"] .student-materials-datebar .student-learning-kicker { display: none; }

html body[data-s5-page="learning"] #studentMaterialsDetailContent > header {
  padding: 0 0 14px;
  border-color: var(--s5-line);
}
html body[data-s5-page="learning"] #studentMaterialsDetailKind { padding: 3px 10px; background: var(--s5-pale-blue); color: var(--s5-blue); font-size: 13px; }
html body[data-s5-page="learning"] #studentMaterialsDetailTitle {
  margin: 7px 0 4px;
  color: var(--s5-ink);
  font-size: clamp(26px, 2.8vw, 36px);
  line-height: 1.2;
  overflow-wrap: anywhere;
}
html body[data-s5-page="learning"] #studentMaterialsDetailMeta { color: var(--s5-muted); font-size: 14px; }
html body[data-s5-page="learning"] #studentMaterialsDetailEmpty { min-height: 0; display: block; padding: 0 0 12px; color: var(--s5-muted); text-align: start; }
html body[data-s5-page="learning"] #studentMaterialsDetailEmpty[hidden] { display: none; }
html body[data-s5-page="learning"] #studentMaterialsDetailEmpty > p { font-size: 14px; }
[data-s5-page="learning"] #studentMaterialsPageNav { flex-wrap: wrap; padding-inline: 0; background: none; }
[data-s5-page="learning"] #studentMaterialsPageNav button { font-size: 14px; white-space: normal; overflow-wrap: anywhere; max-width: 100%; }
[data-s5-page="learning"] .student-materials-blocks {
  max-height: none;
  min-height: 0;
  padding: clamp(12px, 1.8vw, 24px) 0;
  overflow: visible;
  overflow-wrap: anywhere;
  font-size: clamp(15px, 1.32vw, 18px);
}
[data-s5-page="learning"] .student-materials-blocks :is(h2, h3) { color: var(--s5-ink); line-height: 1.35; }
[data-s5-page="learning"] .student-materials-blocks blockquote { border-color: #78aaed; background: var(--s5-pale-blue); border-radius: 0 7px 7px 0; }
[data-s5-page="learning"] .student-materials-blocks .teacher-lesson-flow-resource { min-height: 44px; align-items: center; margin-inline: 0; color: var(--s5-blue); font-size: 14px; text-align: start; }
[data-s5-page="learning"] .student-materials-blocks button.teacher-lesson-flow-attachment::before {
  content: '\f0c6';
  margin-inline-end: 8px;
  font: 900 1em "Font Awesome 6 Free";
}
[data-s5-page="learning"] .student-materials-blocks :is(table, pre) { display: block; max-width: 100%; overflow-x: auto; }
[data-s5-page="learning"] #studentLearningStatus:empty { display: none; }
[data-s5-page="learning"] :is(#studentMaterialsArchiveSearch, .s5-material-filters select):focus-visible { outline: 2px solid var(--s5-blue); outline-offset: -2px; }

@media (max-width: 780px), (max-width: 1024px) and (orientation: portrait) {
  .s5-material-workspace { grid-template-columns: minmax(0, 1fr); }
  .s5-material-lists { padding-inline-end: 0; }
  .s5-material-reader { display: none; padding-inline-start: 0; border: 0; }
  [data-s5-material-open] :is(.s5-material-lists, .student-materials-viewbar, .student-learning-header, #studentLearningTabs) { display: none !important; }
  [data-s5-material-open] .s5-material-reader { display: block; padding-block-start: 0; }
  [data-s5-material-open] #s5MaterialBack { display: inline-flex; gap: 8px; align-items: center; margin-block-end: 14px; color: var(--s5-blue); }
}
@media (max-width: 560px) {
  html body[data-s5-page="learning"]:not(.is-game-lobby-view) #studentLearningTitle { font-size: 29px; }
  html body[data-s5-page="learning"]:not(.is-game-lobby-view) .student-learning-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; margin-block: 12px 10px; }
  html body[data-s5-page="learning"]:not(.is-game-lobby-view) .student-learning-tabs button { min-height: 50px; font-size: 14px; }
  html body[data-s5-page="learning"] .student-materials-viewbar { padding-block: 7px; }
  html body[data-s5-page="learning"] .student-materials-viewbar button { padding-inline: 7px; font-size: 13px; }
  html body[data-s5-page="learning"] #studentMaterialsHelp { padding-inline: 0; font-size: 12px; }
  .s5-material-lists { padding-block-start: 12px; }
  [data-s5-page="learning"] .s5-material-row { grid-template-columns: minmax(0, 1fr) auto; gap: 4px 8px; }
  [data-s5-page="learning"] .s5-material-row > i { display: none; }
  [data-s5-material-open] #s5MaterialBack { margin-block-end: 18px; }
  html body[data-s5-page="learning"] #studentMaterialsDetailTitle { font-size: 30px; }
  [data-s5-page="learning"] .student-materials-blocks button.teacher-lesson-flow-attachment { width: 100%; }
}

html body[data-s5-page="learning"] .student-materials-datebar {
  grid-template-columns: 44px minmax(0, 1fr) 44px;
  align-items: center;
}
[data-s5-page="learning"] .student-materials-datebar h2 { word-break: keep-all; }
.s5-daily-filter { grid-column: 1 / -1; min-width: 0; }
.s5-daily-filter summary { min-height: 44px; padding: 10px 8px; cursor: pointer; color: var(--s5-ink); }
.s5-daily-filter summary span { margin-inline-start: 6px; color: var(--s5-blue); font-weight: 700; }
[data-s5-page="learning"] .s5-daily-filter .student-materials-filter { flex-wrap: wrap; justify-content: start; min-width: 0; gap: 6px; }
[data-s5-page="learning"] .s5-daily-filter button { width: auto; min-width: 44px; min-height: 44px; white-space: nowrap; }

html body[data-s5-page="learning"] :is([data-learning-panel="tools"], [data-learning-panel="quizzes"]) h2 {
  margin: 0 0 10px;
  color: var(--s5-ink);
  font-size: clamp(19px, 2vw, 24px);
}
html body[data-s5-page="learning"] .student-learning-tool-list {
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 0;
  overflow: visible;
  background: none;
  border: 0;
}
html body[data-s5-page="learning"] .student-learning-tool {
  grid-template-columns: 38px minmax(0, 1fr) auto;
  min-height: 64px;
  gap: 9px 12px;
  padding: 8px 12px;
  border: 1px solid var(--s5-line);
  border-radius: 7px;
  background: #fff;
}
html body[data-s5-page="learning"] a.student-learning-tool:hover { background: #f1f7ff; }
[data-s5-page="learning"] .student-learning-tool > :is(img, i) {
  display: grid; place-items: center; width: 38px; height: 38px;
  padding: 4px; border-radius: 7px; background: var(--s5-pale-blue); color: var(--s5-blue);
}
[data-s5-page="learning"] .student-learning-tool > em { display: none; }
[data-s5-page="learning"] .student-learning-tool strong { color: var(--s5-ink); font-size: 16px; }
[data-s5-page="learning"] .student-learning-tool small { font-size: 13px; line-height: 1.45; }
[data-s5-page="learning"] .student-learning-tool b { padding-inline: 4px; color: var(--s5-blue); background: none; box-shadow: none; white-space: nowrap; font-size: 13px; }
