.university-checklist-workspace {
  border-top: 1px solid var(--color-boundary, #d4cec2);
}

.university-checklist-workspace > .container > p,
.university-checklist-privacy {
  max-width: 48rem;
}

.university-checklist-steps {
  margin: 1.5rem 0 0;
  padding: 0;
  border-top: 2px solid var(--color-text, #24211d);
  list-style-position: inside;
}

.university-checklist-step {
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--color-boundary, #d4cec2);
}

.university-checklist-step fieldset {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(14rem, 20rem);
  gap: 0.75rem 1.5rem;
  margin: 0;
  padding: 0;
  border: 0;
}

.university-checklist-step legend {
  grid-column: 1 / -1;
  width: 100%;
  padding: 0;
  font-family: var(--font-editorial, Georgia, serif);
  font-size: 1.2rem;
  font-weight: 700;
}

.university-checklist-step-controls,
.university-checklist-date,
.university-checklist-step-controls > label {
  display: grid;
  gap: 0.5rem;
}

.university-checklist-step-controls input[type="checkbox"] {
  width: 1.25rem;
  height: 1.25rem;
  accent-color: var(--color-accent-strong, #7d2923);
}

.university-checklist-step-controls select,
.university-checklist-step-controls input[type="date"] {
  width: 100%;
  min-height: 2.75rem;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--color-boundary-strong, #746e63);
  border-radius: 0.25rem;
  background: var(--color-surface, #fff);
  color: inherit;
  font: inherit;
}

.university-checklist-persistence,
.university-checklist-privacy {
  margin-top: 1.5rem;
  padding: 1.25rem;
  border-left: 4px solid var(--color-accent, #9b332a);
  background: var(--color-surface, #fff);
}

.university-checklist-actions,
.university-checklist-clear-confirmation {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
  margin-top: 1rem;
}

.university-checklist-actions button,
.university-checklist-clear-confirmation button {
  min-height: 2.75rem;
  padding: 0.55rem 0.9rem;
  border: 1px solid var(--color-accent-strong, #7d2923);
  border-radius: 0.25rem;
  background: var(--color-surface, #fff);
  color: var(--color-accent-strong, #7d2923);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.university-checklist-clear-confirmation p {
  flex-basis: 100%;
  margin: 0;
}

.university-checklist-persistence [role="status"],
.university-checklist-persistence [role="alert"] {
  margin: 1rem 0 0;
  padding: 0.75rem;
  border-left: 4px solid var(--color-status, #356859);
}

.university-checklist-provenance {
  max-width: 64rem;
  margin-top: 1.5rem;
  padding: 1.25rem;
  border: 1px solid var(--color-boundary, #d4cec2);
  background: var(--color-surface, #fff);
}

.university-checklist-provenance > h3:not(:first-child) {
  margin-top: 1.5rem;
}

.university-checklist-source-dates,
.university-checklist-official-sources dl {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
  gap: 0.75rem 1.25rem;
}

.university-checklist-source-dates div,
.university-checklist-official-sources dl div {
  min-width: 0;
}

.university-checklist-source-dates dt,
.university-checklist-official-sources dt {
  font-weight: 700;
}

.university-checklist-source-dates dd,
.university-checklist-official-sources dd {
  margin: 0.25rem 0 0;
  overflow-wrap: anywhere;
}

.university-checklist-official-sources > li {
  padding: 1rem 0;
  border-top: 1px solid var(--color-boundary, #d4cec2);
}

[hidden] {
  display: none !important;
}

@media (max-width: 48rem) {
  .university-checklist-step fieldset {
    grid-template-columns: minmax(0, 1fr);
  }

  .university-checklist-step legend {
    grid-column: 1;
  }
}

@media print {
  .university-checklist-page .site-status,
  .university-checklist-page .masthead,
  .university-checklist-page .university-source-strip,
  .university-checklist-page .university-filter-panel,
  .university-checklist-page .university-result-status,
  .university-checklist-page .university-results,
  .university-checklist-page .university-region-grid,
  .university-checklist-page .university-checklist-persistence,
  .university-checklist-page .footer {
    display: none !important;
  }

  .university-checklist-step,
  .university-checklist-workspace .notice,
  .university-checklist-provenance,
  .university-checklist-official-sources > li {
    break-inside: avoid;
  }

  .university-checklist-step fieldset {
    grid-template-columns: minmax(0, 1fr) minmax(12rem, 16rem);
  }

  .university-checklist-step-controls input,
  .university-checklist-step-controls select {
    print-color-adjust: exact;
  }
}
