.academic-setup { min-width: 0; }
.academic-setup .academic-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.academic-setup .academic-tabs button[aria-selected="true"] { background: #17654b; color: #fff; border-color: #17654b; }
.academic-setup .academic-layout { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(0, 2fr); gap: 24px; }
.academic-setup .academic-list { display: flex; flex-direction: column; gap: 8px; }
.academic-setup .academic-list button { white-space: normal; overflow-wrap: anywhere; text-align: left; }
.academic-setup .academic-list .is-selected { border-color: #17654b; background: #edf7f2; }
.academic-setup .academic-detail { min-width: 0; scroll-margin-top: 230px; }
/* The picker is a fixed-height scrolling grid; rows keep their own height instead of being squeezed to fit it. */
.academic-setup .academic-list .workspace-picker-results { grid-auto-rows: max-content; }
.academic-setup .academic-list .review-row[hidden] { display: none; }
.academic-setup .academic-list-head { display: grid; gap: 8px; }
.academic-setup .academic-list-head > .button { justify-self: start; }
.academic-setup .academic-list-head .meta { margin: 0; }
.academic-setup .academic-filter { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.academic-setup .academic-filter:has(> :only-child) { grid-template-columns: minmax(0, 1fr); }
.academic-setup .academic-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px 24px; margin: 8px 0 16px; }
.academic-setup .academic-facts dt { color: var(--svu-text-secondary); font-size: 13px; }
.academic-setup .academic-facts dd { margin: 2px 0 0; color: var(--svu-text-strong); }
.academic-setup .academic-detail h2 { font-size: 22px; }
.academic-setup .academic-detail h3 { font-size: 18px; margin-top: 24px; }
.academic-setup .academic-table { overflow-x: auto; margin: 16px 0; }
.academic-setup table { width: 100%; border-collapse: collapse; }
.academic-setup th, .academic-setup td { text-align: left; padding: 10px; border-bottom: 1px solid #d4dce2; overflow-wrap: anywhere; }
.academic-setup .academic-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: end; margin: 16px 0; }
.academic-setup input, .academic-setup select { min-width: 0; max-width: 100%; }
.academic-setup [data-academic-rows], .academic-setup form > h3 { grid-column: 1 / -1; }
.academic-sample { border-block-start: 1px solid var(--svu-border); padding-block: 20px; min-width: 0; }
.academic-sample > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.academic-sample > header h3 { margin: 0; }
.academic-sample [data-academic-rows="result"] { margin-block: 16px; }
.academic-setup [data-academic-row] { gap: 12px; margin-block: 12px; }
.academic-requirement-document { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; }
@media (max-width: 760px) {
  .academic-setup .academic-layout { grid-template-columns: minmax(0, 1fr); }
  .academic-setup .academic-list { max-height: 260px; overflow-y: auto; }
}

/* Summary-first records: counts, Edit details fold, one-click status buttons, prerequisite chips, folded history. */
.academic-setup .academic-counts { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; }
.academic-setup .academic-count { padding: 6px 12px; border: 1px solid var(--svu-border-subtle); border-radius: var(--svu-radius-badge); background: var(--svu-surface-muted); }
.academic-setup .academic-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: flex-start; margin: 0 0 16px; }
.academic-setup .academic-edit { flex: 1 1 100%; }
.academic-setup .academic-edit > summary { display: inline-flex; list-style: none; cursor: pointer; }
.academic-setup .academic-edit > summary::-webkit-details-marker { display: none; }
.academic-setup .academic-edit[open] > summary { margin-bottom: 12px; }
.academic-setup .academic-status-form { margin: 0; }
.academic-setup .academic-chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0; }
.academic-setup .academic-prereq-add { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; max-width: 560px; }
.academic-setup .academic-history > summary { cursor: pointer; font-weight: 600; margin: 8px 0; }
.academic-setup .academic-checklist { display: grid; gap: 16px; }
.academic-setup .academic-checklist-area h3 { margin: 0 0 8px; }
.academic-setup .academic-note { margin: 0 0 12px; }

/* Course map (D-58): years stacked, semesters side by side; stacks to one column on narrow screens. */
.academic-setup .course-map, .academic-setup .semester-setup { border-block-start: 1px solid var(--svu-border); padding-block: 16px; margin-block: 16px; min-width: 0; }
.academic-setup .course-map-year { margin-block: 12px; }
.academic-setup .course-map-year h4 { margin: 0 0 8px; }
.academic-setup .course-map-slots { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }
.academic-setup .course-map-slot { border: 1px solid var(--svu-border-subtle); border-radius: var(--svu-radius-card); background: var(--svu-surface-muted); padding: 10px 12px; min-width: 0; }
.academic-setup .course-map-slot h5 { margin: 0 0 6px; font-size: 0.95rem; }
.academic-setup .course-map-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.academic-setup .course-map-list li { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 6px; }
.academic-setup .course-map-course { min-width: 0; overflow-wrap: anywhere; }
.academic-setup .course-map-tags { display: inline-flex; align-items: center; gap: 4px; }
.academic-setup .course-map-add { display: grid; grid-template-columns: minmax(0, 2fr) repeat(3, minmax(0, 1fr)) auto; gap: 8px; align-items: end; margin-top: 12px; }
@media (max-width: 760px) { .academic-setup .course-map-add { grid-template-columns: minmax(0, 1fr); } }
