.course-curriculum-map [hidden] { display: none !important; }
.course-curriculum-context-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 6px; margin-block: 6px 10px; }
.course-curriculum-context-actions button { min-width: 44px; min-height: 44px; }
.course-curriculum-map .course-authoring-icon-action { border: 1px solid var(--border-default); border-radius: var(--radius-control); background: var(--surface-raised); color: var(--action-primary); cursor: pointer; }
.course-curriculum-map .course-authoring-icon-action:hover { background: var(--action-primary-subtle); }
.course-curriculum-map .course-authoring-icon-action:disabled { color: var(--text-secondary); opacity: .65; cursor: default; }
.course-curriculum-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; margin-block: 16px; }
.course-curriculum-search label { grid-column: 1 / -1; font-weight: var(--weight-title); }
.course-curriculum-search input { width: 100%; min-width: 0; min-height: 44px; padding: 8px 12px; font: inherit; border: 1px solid var(--input-border); border-radius: var(--radius-control); background: var(--input-surface); color: var(--text-primary); }
.course-curriculum-search :focus-visible, .course-curriculum-context-actions :focus-visible, .course-curriculum-approval :focus-visible { outline: 2px solid var(--action-primary); outline-offset: 3px; }
.course-curriculum-search button[aria-pressed="true"] { color: var(--action-primary); background: var(--action-primary-subtle); }
.course-curriculum-pending-list { margin-block: 12px; }
.course-curriculum-pending-list summary { min-height: 44px; padding-block: 10px; cursor: pointer; font-weight: var(--weight-title); }
.course-curriculum-pending-list > p { margin-block: 0 8px; margin-inline: 1rem 0; font-size: var(--type-sm); color: var(--text-secondary); font-weight: var(--weight-body); }
.course-curriculum-pending-list li + li { margin-top: 7px; }
.course-curriculum-pending-reference { color: var(--text-secondary); }
.course-curriculum-approval { border-top: 1px solid var(--border-default); margin-top: 20px; padding-top: 16px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; }
.course-curriculum-approval p { margin: 0; }
.course-curriculum-approval > p { grid-column: 1 / -1; font-size: var(--type-sm); color: var(--text-secondary); }
.course-curriculum-approval label { display: flex; align-items: center; gap: 10px; min-width: 0; min-height: 44px; font-size: var(--type-sm); font-weight: var(--weight-body); }
.course-curriculum-approval input { width: 20px; height: 20px; flex: 0 0 20px; accent-color: var(--action-primary); }
.course-curriculum-approval button { min-width: 44px; min-height: 44px; }
.course-curriculum-approval [role="status"]:empty { display: none; }
.course-design-instructional-context { display: grid; gap: var(--space-section); }
.course-design-instructional-context > section { min-width: 0; }
.course-design .course-design-instructional-context :is(h3, h4, strong) { font-size: var(--type-sm); font-weight: var(--weight-title); color: var(--text-primary); }
.course-design .course-design-instructional-context p { margin: var(--space-copy) 0 0; font-size: var(--type-sm); font-weight: var(--weight-body); line-height: var(--leading-normal); }
.course-design-instructional-context ul { margin: 8px 0 0; padding: 0; list-style: none; }
.course-design .course-design-instructional-context summary { font-size: var(--type-sm); font-weight: var(--weight-body); }
.course-design-instructional-context :is(p, li) { overflow-wrap: anywhere; }
.course-design-instructional-context li + li { margin-top: var(--space-copy); }
.course-design-instructional-context li { font-size: var(--type-sm); font-weight: var(--weight-body); line-height: var(--leading-normal); color: var(--text-secondary); }
.course-design-instructional-context ul + h4 { margin-top: var(--space-section); }
.course-design-instructional-context summary { min-height: 44px; padding-block: 10px; cursor: pointer; }

.course-design-instructional-item { position: relative; }
.course-design-instructional-item > :is(h3, strong) { display: flex; align-items: center; min-height: var(--tap); padding-inline-end: calc(var(--tap) + var(--space-copy)); }
.course-design .course-design-item-status { border: 0; padding: 0; margin: 0; }
.course-design .course-design-item-status > summary { position: absolute; inset-block-start: 0; inset-inline-end: 0; display: grid; place-items: center; width: var(--tap); height: var(--tap); padding: 0; list-style: none; color: var(--text-secondary); border-radius: var(--radius-control); }
.course-design-item-status > summary::-webkit-details-marker { display: none; }
.course-design-item-status > summary::marker { content: ""; }
.course-design-item-status > summary:hover { background: var(--surface-sunken); }
.course-design-item-status > summary:focus-visible { outline: 2px solid var(--action-primary); outline-offset: 2px; }
.course-design-item-status dl { margin-block: var(--space-copy); display: grid; gap: var(--space-copy); font-size: var(--type-xs); color: var(--text-secondary); }
.course-design-item-status dl > div { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-copy); }
.course-design-item-status dt { font-weight: var(--weight-label); }
.course-design-item-status dd { margin: 0; font-weight: var(--weight-body); }
