/* Lesson 04 only. The video is never cropped and native controls are fallback. */
.learning-edition .micro-lesson {
  max-width: none;
  min-width: 0;
  margin: 0;
  border: 0;
  background: transparent;
}
.learning-edition .micro-lesson > summary {
  min-height: 44px;
  gap: 10px;
  padding: 8px 0;
}
.learning-edition .micro-lesson-icon {
  display: none;
  flex-basis: 24px;
  width: 24px;
  height: 24px;
  font-size: 10px;
}
.learning-edition .micro-lesson-heading { gap: 1px; }
.learning-edition .micro-lesson-duration { font-size: 17px; }
.learning-edition .micro-lesson-title { font-size: var(--type-note); line-height: 1.4; }
.learning-edition .micro-lesson[open] > summary { border-bottom: 0; }
.learning-edition .micro-lesson-body { padding: 0; }
.learning-edition .micro-lesson video {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: contain;
  background: #fff;
  border: 0;
  border-radius: 0;
}
.learning-edition .lesson-player-controls {
  display: grid;
  grid-template-columns: 44px minmax(64px, 1fr) auto 44px 44px 44px;
  align-items: center;
  gap: 6px;
  position: relative;
  min-width: 0;
  padding: 0 0 2px;
  border-bottom: 1px solid #e5e8ed;
  background: #fff;
  color: #20242b;
  font: 17px/1.4 var(--font-ui, sans-serif);
}
.learning-edition .lesson-player-controls[hidden] { display: none; }
.learning-edition .lesson-player-button,
.learning-edition .lesson-player-options-toggle,
.learning-edition .lesson-player-controls .micro-caption-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  margin: 0;
  padding: 0 6px;
  border: 0;
  border-radius: 3px;
  color: #3b4653;
  background: transparent;
  font: inherit;
  cursor: pointer;
}
.learning-edition .lesson-player-button:hover,
.learning-edition .lesson-player-options-toggle:hover,
.learning-edition .lesson-player-controls .micro-caption-toggle:hover { background: #f1f4f7; }
.learning-edition .lesson-player-button:focus-visible,
.learning-edition .lesson-player-options-toggle:focus-visible,
.learning-edition .lesson-player-controls .micro-caption-toggle:focus-visible,
.learning-edition .lesson-player-controls input:focus-visible,
.learning-edition .lesson-player-controls select:focus-visible {
  outline: 2px solid #2357a4;
  outline-offset: 2px;
}
.learning-edition .lesson-player-button:disabled { opacity: .4; cursor: default; }
.learning-edition .lesson-player-play .lesson-player-icon { font-size: 17px; }
.learning-edition .lesson-player-fullscreen .lesson-player-icon { font-size: 24px; line-height: 1; }
.learning-edition .lesson-player-controls .micro-caption-toggle {
  width: 44px;
  font-size: 0;
  color: #6a7480;
}
.learning-edition .lesson-player-controls .micro-caption-toggle::before {
  content: "CC";
  display: block;
  padding: 1px 2px;
  border-bottom: 2px solid transparent;
  font: 600 12px/1.35 var(--font-ui, sans-serif);
  letter-spacing: -.03em;
}
.learning-edition .lesson-player-controls .micro-caption-toggle[aria-pressed="true"] { color: #2357a4; }
.learning-edition .lesson-player-controls .micro-caption-toggle[aria-pressed="true"]::before { border-bottom-color: currentColor; }
.learning-edition .lesson-player-seek,
.learning-edition .lesson-player-volume {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  height: 44px;
  margin: 0;
  padding: 0;
  accent-color: #2357a4;
  cursor: pointer;
}
.learning-edition .lesson-player-seek:disabled { opacity: .42; cursor: default; }
.learning-edition .lesson-player-time {
  color: #64707d;
  white-space: nowrap;
  font-size: 15px;
  font-variant-numeric: tabular-nums;
}
.learning-edition .lesson-player-options { position: relative; margin: 0; padding: 0; border: 0; }
.learning-edition .lesson-player-options-toggle { width: 44px; list-style: none; font-size: 23px; font-weight: 600; }
.learning-edition .lesson-player-options-toggle::-webkit-details-marker { display: none; }
.learning-edition .lesson-player-options-toggle::marker { content: ""; }
.learning-edition .lesson-player-option-panel {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  z-index: 40;
  box-sizing: border-box;
  width: 252px;
  max-width: calc(100vw - 40px);
  padding: 10px 14px;
  border: 1px solid #dce1e6;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 5px 18px rgb(32 36 43 / 9%);
}
.learning-edition .lesson-player-volume-row { display: flex; align-items: end; gap: 8px; }
.learning-edition .lesson-player-volume-label { display: block; flex: 1; min-width: 0; }
.learning-edition .lesson-player-option-label { display: block; color: #64707d; font-size: var(--type-label); }
.learning-edition .lesson-player-mute { min-width: 60px; font-size: var(--type-label); }
.learning-edition .micro-caption-panel {
  margin: 0;
  padding: 5px 2px 4px;
  border: 0;
  background: transparent;
  color: #36414e;
}
/* The caption switch moves into the control strip; the speed menu stays below the film. */
.learning-edition [data-player-enhanced="true"] .micro-caption-label { display: none; }
.learning-edition .micro-caption-region {
  align-items: start;
  min-block-size: 2.8em;
  font-size: var(--type-note);
  line-height: 1.5;
  /* The existing hidden cue grid supplies the actual tallest-cue height. */
  overflow: visible;
}
.learning-edition .micro-caption-reserve { overflow: visible; }
.learning-edition .micro-lesson .micro-lesson-description { margin: 10px 0 5px; font-size: var(--type-note); line-height: 1.55; }
.learning-edition .micro-lesson .micro-lesson-links { gap: 3px 18px; font-size: var(--type-label); }
.learning-edition .micro-lesson .micro-lesson-status { margin: 6px 0 0; font-size: var(--type-label); }
@media (max-width: 520px) {
  .learning-edition .lesson-player-controls {
    grid-template-columns: 44px minmax(0, 1fr) 44px 44px 44px;
    gap: 0 4px;
  }
  .learning-edition .lesson-player-seek { grid-column: 1 / -1; grid-row: 1; }
  .learning-edition .lesson-player-play { grid-column: 1; grid-row: 2; }
  .learning-edition .lesson-player-time { grid-column: 2; grid-row: 2; font-size: 15px; }
  .learning-edition .lesson-player-controls .micro-caption-toggle { grid-column: 3; grid-row: 2; }
  .learning-edition .lesson-player-fullscreen { grid-column: 4; grid-row: 2; }
  .learning-edition .lesson-player-options { grid-column: 5; grid-row: 2; }
  .learning-edition .micro-caption-panel { padding-inline: 0; }
  .learning-edition .micro-caption-region { font-size: var(--type-note); }
  .learning-edition .micro-lesson .micro-lesson-links a { min-height: 44px; align-items: center; }
}
