@import url("../public/styles-20260708-course-schedule.css?v=20260901-readonly-prototype");

.summary:not(.room-summary) {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin-left: auto;
  min-width: 0;
  width: min(590px, 100%);
}

.summary:not(.room-summary) .summary-tile {
  flex: 0 0 110px;
  min-width: 110px;
}

.instructor-link {
  color: var(--accent-strong);
  display: block;
  font-weight: 650;
  text-decoration: none;
}

.instructor-link:hover,
.instructor-link:focus-visible {
  text-decoration: underline;
}

.status-static {
  cursor: default;
  display: inline-flex;
  justify-content: center;
  min-width: 3.3rem;
}

.filtered-schedule-links {
  gap: 1rem;
}

.view-actions-region {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 1.25rem;
  justify-content: space-between;
}

.view-preference-links {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-left: auto;
}

button.text-action-link {
  background: none;
  border: 0;
  cursor: pointer;
  font: inherit;
  padding: 0;
}

.default-view-dialog {
  background: var(--surface, #fff);
  border: 1px solid var(--line, #c8d4cf);
  border-radius: 14px;
  color: inherit;
  max-height: min(760px, calc(100vh - 2rem));
  max-width: min(680px, calc(100vw - 2rem));
  overflow: auto;
  padding: 0;
  width: 100%;
}

.default-view-dialog::backdrop {
  background: rgba(8, 24, 20, 0.58);
}

.default-view-dialog form {
  padding: 1.4rem;
}

.default-view-dialog h2 {
  margin: 0 0 0.45rem;
}

.default-view-dialog p {
  margin: 0 0 1rem;
}

.default-view-dialog fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

.default-view-dialog legend {
  font-weight: 700;
  margin-bottom: 0.55rem;
}

.default-division-choices {
  column-count: 3;
  column-gap: 1rem;
  padding: 0.15rem 0.25rem 0.15rem 0;
}

.default-division-choice {
  align-items: flex-start;
  break-inside: avoid;
  box-sizing: border-box;
  cursor: pointer;
  display: flex;
  gap: 0.45rem;
  min-width: 0;
  padding: 0.2rem 0;
  width: 100%;
}

.default-division-choice input {
  appearance: auto;
  background: initial;
  border: initial;
  border-radius: initial;
  flex: 0 0 auto;
  min-height: 0;
  margin: 0.18em 0 0;
  padding: 0;
  width: auto;
}

.default-division-choice input:focus {
  border-color: initial;
  outline: auto;
}

.default-division-choice span {
  font-weight: 600;
  line-height: 1.25;
  min-width: 0;
  overflow-wrap: anywhere;
}

.default-view-error {
  color: #9b2424;
  font-weight: 650;
  margin-top: 0.75rem !important;
}

.dialog-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  justify-content: flex-end;
  margin-top: 1.15rem;
}

.dialog-actions button {
  border-radius: 8px;
  cursor: pointer;
  font: inherit;
  font-weight: 650;
  padding: 0.55rem 0.8rem;
}

.dialog-actions .secondary-button {
  background: transparent;
  border: 1px solid var(--line, #9eaaa6);
  color: inherit;
}

.dialog-actions .primary-button {
  background: var(--accent-strong, #14634f);
  border: 1px solid var(--accent-strong, #14634f);
  color: #fff;
}

@media (max-width: 640px) {
  .default-division-choices {
    column-count: 2;
  }
}

@media (max-width: 440px) {
  .default-division-choices {
    column-count: 1;
  }
}

.loading-error {
  color: #8a1c1c;
}

.filtered-course-list {
  display: grid;
  gap: 0.8rem;
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.filtered-course-card {
  background: var(--surface, #fff);
  border: 1px solid var(--line, #c8d4cf);
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(17, 42, 35, 0.08);
  padding: 1rem;
}

.filtered-course-card h2 {
  font-size: 1.05rem;
  margin: 0 0 0.35rem;
}

.filtered-course-card p {
  margin: 0.25rem 0 0.8rem;
}

.filtered-course-sections {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-bottom: 0.8rem;
}

@media (prefers-color-scheme: dark) {
  .filtered-course-card {
    background: #151918;
  }

  .default-view-dialog {
    background: #151918;
  }
}
