.teaching-list{display:flex;flex-direction:column;gap:var(--ui-space-3,12px)}
.teaching-panel,.teaching-workspace-host{min-width:0;max-width:100%}.teaching-panel-actions{display:flex;align-items:center;justify-content:flex-end;margin-bottom:12px;gap:8px}.teaching-panel-actions:empty{display:none}.teaching-status-tabs{gap:20px}.teaching-status-tabs>.ui-tabbar__tab{font-size:14px;min-height:40px}.teaching-panel>.ui-region{margin-top:4px}.teaching-panel>.ui-action{margin-top:16px}
.teaching-homework-panel{container-type:inline-size;container-name:homework-panel}
.context-panel>.context-tabs:has(~:not([hidden])>.teaching-homework-panel){margin-bottom:0}
/* Give the action its own breathing room; the shared tabs keep their original geometry. */
.teaching-homework-toolbar.ui-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'navigation actions';align-items:end;gap:12px 20px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.context-panel .teaching-homework-toolbar.ui-toolbar{min-height:64px}
.teaching-homework-toolbar>.ui-toolbar__navigation{grid-area:navigation;min-width:0;width:100%}
.teaching-homework-toolbar .ui-tabbar{gap:20px;margin:0;border-bottom:0}
.teaching-homework-toolbar>.ui-toolbar__actions{grid-area:actions;flex-wrap:nowrap;margin:0;padding-bottom:2px}
.context-panel .teaching-homework-toolbar>.ui-toolbar__actions{align-self:center;padding:0}
.teaching-homework-toolbar-title{display:none;grid-area:title;min-width:0;margin:0;font-size:18px;line-height:1.35}
.teaching-homework-filterbar.ui-toolbar{margin:0 0 18px}
.teaching-homework-filterbar.ui-toolbar:not(.teaching-homework-toolbar){gap:0}
.teaching-homework-filterbar>.ui-toolbar__navigation{width:100%;min-width:0}
.teaching-homework-statuses{width:100%;min-width:0}
.teaching-homework-toolbar[hidden],.teaching-homework-filterbar[hidden]{display:none}
@container homework-panel (max-width:650px){
 .teaching-homework-toolbar.ui-toolbar{grid-template-columns:minmax(0,1fr);grid-template-areas:'navigation';align-items:center;row-gap:12px}
 .context-panel .teaching-homework-toolbar.ui-toolbar{min-height:0;padding-top:22px}
 .teaching-homework-toolbar:has(>.teaching-homework-toolbar-title){grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'title actions' 'navigation navigation'}
 .teaching-homework-toolbar-title{display:block}
 .teaching-homework-toolbar .ui-tabbar{gap:18px}
}
.teaching-connection-note{margin:0 0 18px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.teaching-connection-note .ui-surface__heading{margin-bottom:0}.teaching-connection-note h2{font-size:16px}.teaching-connection-note .ui-surface__description{font-size:14px}
.teaching-homework-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px}.teaching-homework-meta>.homework-source-lesson{flex-basis:100%}.teaching-homework-score{font-size:14px;font-variant-numeric:tabular-nums}
.teaching-list:has(>.ui-list-item){gap:0;max-width:920px}.teaching-list>.ui-list-item{padding-inline:12px}
.teaching-list:has(>.ui-list-item--card){gap:12px}.teaching-list>.ui-list-item--card{padding-inline:16px}
.teaching-list-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--ui-space-3,12px);padding:var(--ui-space-3,12px);border-bottom:1px solid var(--line)}
.teaching-list-copy{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;gap:4px;overflow-wrap:anywhere}
.teaching-editor{display:flex;flex-direction:column;gap:var(--ui-space-4,16px)}
.teaching-editor-dialog{width:min(760px,calc(100vw - 32px))}
.teaching-editor-section{display:grid;gap:14px;min-width:0;padding-top:18px;border-top:1px solid var(--line)}.teaching-editor-section--content{padding-top:0;border-top:0}.teaching-editor-section h3,.teaching-report-recipients h3{margin:0;font-size:15px;line-height:1.4}.teaching-editor-section--notice{gap:8px}.teaching-editor-section--notice>small{line-height:1.5}
.teaching-library-attachments{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px}
.teaching-library-attach.ui-action{justify-self:end;width:auto;max-width:100%;min-width:0;white-space:nowrap}
.teaching-library-selected{grid-column:1/-1;min-width:0}
.teaching-library-selected:empty{display:none}
.teaching-library-selected .teaching-list-row{flex-wrap:nowrap;gap:8px;padding:8px 0;font-size:13px}
.teaching-library-selected .teaching-list-row>span{min-width:0;overflow-wrap:anywhere}
.teaching-library-selected .teaching-list-row>span{flex:1}
.teaching-library-selected .teaching-library-order-grip{flex:0 0 24px;width:24px;min-width:24px;padding:0;cursor:grab;touch-action:none;color:var(--muted)}
.teaching-library-selected .teaching-library-order-grip>svg{width:18px;height:20px;pointer-events:none}
.teaching-library-selected .teaching-library-order-grip:active{cursor:grabbing}
.teaching-library-selected .sw-order-dragging{position:absolute;visibility:hidden;pointer-events:none}
.teaching-library-selected .sw-order-placeholder{pointer-events:none;opacity:.65;background:var(--surface-hover);outline:1px dashed var(--line);outline-offset:-1px}
.teaching-library-selected .sw-order-ghost{display:none}
.teaching-library-selected.sw-order-sorting{user-select:none;cursor:grabbing}
.teaching-library-selected .teaching-list-row>.ui-action{flex:0 0 auto;width:auto}
.teaching-library-picker{width:min(700px,calc(100vw - 32px))}
.teaching-library-picker [hidden]{display:none!important}
.teaching-library-picker .ui-toolbar__filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.teaching-library-picker .ui-toolbar__filters>.ui-field{min-width:0;max-width:none}
.teaching-library-course-head{display:flex;align-items:center;gap:12px;min-width:0;margin:12px 0}
.teaching-library-course-head strong{min-width:0;overflow-wrap:anywhere}
.teaching-library-results{min-width:0}
.teaching-library-course-tree{display:grid;gap:8px;min-width:0}
.teaching-library-tree-root,.teaching-library-tree-label{display:flex;align-items:flex-start;gap:8px;min-width:0;cursor:pointer}
.teaching-library-tree-root{padding:10px 0 12px;border-bottom:1px solid var(--line)}
.teaching-library-course-tree input{flex:0 0 auto;margin:3px 0 0}
.teaching-library-course-tree strong{font-size:14px;line-height:1.4}
.teaching-library-course-tree small{font-size:12px;line-height:1.4}
.teaching-library-tree-node{min-width:0}
.teaching-library-tree-heading{display:flex;align-items:flex-start;gap:6px;min-width:0;padding:8px 0}
.teaching-library-tree-fold.ui-action{width:24px;min-width:24px;min-height:24px;padding:0;flex:0 0 24px;font-size:18px}
.teaching-library-tree-label{flex:1 1 auto}
.teaching-library-tree-children{min-width:0;margin-left:12px;padding-left:12px;border-left:1px solid var(--line)}
.teaching-library-tree-children--lesson{display:flex;flex-wrap:wrap;gap:6px;padding-top:4px;padding-bottom:8px}
.teaching-library-tree-step{display:inline-flex;align-items:flex-start;gap:6px;max-width:100%;min-width:0;padding:6px 8px;border:1px solid var(--line);border-radius:6px;font-size:12px;line-height:1.4;cursor:pointer;overflow-wrap:anywhere}
.teaching-library-tree-step:has(input:checked){background:var(--surface-muted);border-color:var(--context-selected-line,var(--line))}
@media(max-width:480px){.teaching-library-tree-children{margin-left:6px;padding-left:8px}}
@media(max-width:480px){.teaching-library-picker .ui-toolbar__filters{grid-template-columns:minmax(0,1fr)}.teaching-library-course-head{align-items:flex-start;flex-direction:column;gap:6px}}
@media(max-width:380px){.teaching-library-attachments{grid-template-columns:minmax(0,1fr)}.teaching-library-attach.ui-action{justify-self:start}}
.teaching-editor-context{display:grid;gap:4px;padding:0 0 16px;border-bottom:1px solid var(--line);margin-bottom:18px}.teaching-editor-context strong{font-size:16px}.teaching-editor-context small{font-variant-numeric:tabular-nums}.teaching-report-recipients{display:grid;gap:8px;margin-top:18px}.teaching-report-editor textarea{min-height:240px;resize:vertical}
.teaching-editor-dialog .schedule-dialog-footer{align-items:center;gap:8px}.teaching-editor-cancel{margin-right:auto!important}
.teaching-bulk-actions{padding:10px 0 14px!important;margin-bottom:2px}.teaching-bulk-actions>small{color:var(--muted);font-size:12px}
.teaching-editor textarea{min-height:160px;resize:vertical}
.teaching-homework-lesson-controls{display:grid;gap:16px;min-width:0}
.teaching-homework-deadline{min-width:0;padding-top:16px;border-top:1px solid var(--line)}
.teaching-homework-deadline>.ui-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-homework-deadline .teaching-deadline-mode,.teaching-homework-deadline .teaching-deadline-date{grid-column:1/-1}
.teaching-deadline-preview{white-space:pre-line;margin:12px 0 0;padding:10px 12px;border-radius:6px;background:var(--surface-muted);font-size:13px;line-height:1.5}
.teaching-homework-reminder{display:grid;gap:6px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.teaching-homework-reminder h3{margin:0;font-size:14px;line-height:1.4}.teaching-reminder-preview{white-space:pre-line;margin:0;font-size:13px;line-height:1.5}.teaching-homework-reminder>small{font-size:12px;line-height:1.5}
.homework-reminder-settings>.ui-field-grid{max-width:620px;grid-template-columns:minmax(0,1fr) minmax(120px,160px);align-items:end}
.teaching-share-files{display:flex;flex-direction:column;gap:8px;overflow-wrap:anywhere}
/* Queue placement only: individual card geometry belongs to UIListItem. */
.required-homework-list:has(>.ui-list-item--card),.required-report-list:has(>.ui-list-item--card){gap:8px}
.outgoing-table{width:100%;border-collapse:collapse}
.outgoing-table th,.outgoing-table td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}
.outgoing-table td:first-child{overflow-wrap:anywhere}
.outgoing-table td small{display:block;color:var(--muted);margin-top:4px}
.teaching-channels{display:flex;flex-wrap:wrap;gap:12px}
.outgoing-table-scroll{max-width:100%;overflow-x:auto}
.outgoing-entry{padding:var(--ui-space-4);border:1px solid var(--line);border-radius:var(--ui-radius);min-width:0;overflow-wrap:anywhere}
.outgoing-entry--campaign{border-left:4px solid var(--context-selected-line);background:var(--surface)}
.outgoing-entry--campaign .ui-eyebrow{color:var(--ink)}
.outgoing-entry--campaign h2{font-size:21px;line-height:1.35}
.outgoing-entry--campaign .ui-surface__heading{margin-bottom:var(--ui-space-2)}
.outgoing-campaign-state{margin:0 0 var(--ui-space-1);font-weight:700;color:var(--ink)}
.outgoing-entry--automatic{background:var(--surface)}
.outgoing-entry--automatic h2{font-size:17px;line-height:1.35}
.outgoing-entry--automatic .ui-surface__heading{margin-bottom:var(--ui-space-2)}
.outgoing-channel{display:inline-flex;padding:3px 7px;border-radius:4px;background:var(--surface-muted);color:var(--muted);font-size:12px}
.outgoing-channel--sent{color:var(--success-ink,var(--ink))}
.outgoing-channel--failed{background:var(--danger-soft);color:var(--danger-ink);box-shadow:var(--danger-surface-glow)}
.outgoing-channel--pending,.outgoing-channel--queued,.outgoing-channel--sending,.outgoing-channel--retry{background:var(--warning-soft);color:var(--warning-ink)}
.outgoing-history{max-width:920px;min-width:0}
.outgoing-channels{gap:6px;min-width:0;flex-wrap:wrap}
.outgoing-channel{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.outgoing-pending{margin:0;padding:var(--ui-space-3);border:1px dashed var(--line);border-radius:var(--ui-radius)}
@media(max-width:600px){.teaching-editor-dialog{width:100vw;max-width:100vw}.teaching-list-row>.row{justify-content:flex-start;flex-basis:100%}.outgoing-table th,.outgoing-table td{padding:8px}}
@media(max-width:600px){.teaching-homework-deadline>.ui-field-grid,.homework-reminder-settings>.ui-field-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.teaching-editor-dialog .schedule-dialog-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.teaching-editor-dialog .schedule-dialog-footer>:last-child{grid-column:1/-1;min-height:44px}.teaching-editor-cancel{margin-right:0!important}.teaching-editor-context{padding-bottom:12px;margin-bottom:14px}.teaching-report-editor textarea{min-height:220px}}
