/* Shared course dialog sizing: applies to every SAT, AP, IB, and ACT course. */
.course-dialog {
  width: min(1160px, calc(100vw - 40px));
  max-width: none;
}

.course-learning-layout {
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 0.86fr);
  gap: clamp(16px, 2vw, 28px);
}

.course-standalone .course-dialog[open] {
  width: min(1480px, calc(100% - 40px));
  margin: clamp(12px, 2vh, 22px) auto;
}

.course-standalone .course-dialog-shell {
  padding: clamp(18px, 2vw, 30px);
}

@media (max-width: 820px) {
  .course-dialog {
    width: calc(100vw - 24px);
  }

  .course-learning-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }

  .course-topic-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    max-height: none;
  }

  .course-standalone .course-topic-list {
    position: static;
  }
}

@media (max-width: 600px) {
  .course-dialog {
    width: calc(100vw - 16px);
  }

  .course-learning-layout {
    gap: 12px;
    padding-top: 14px;
  }

  .course-topic-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .course-standalone .course-dialog[open] {
    width: calc(100% - 16px);
    margin: 8px auto;
  }
}
