@import"https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=Crimson+Text:wght@400;600;700&display=swap";:root{--umd-red: #e21833;--umd-gold: #ffd200;--umd-bronze: #ad7231;--umd-dark: #454545;--umd-mid: #7f7f7f;--umd-light: #e6e6e6;--bg: #ffffff;--bg-elev-1: #f4f3ef;--bg-elev-2: #fafaf7;--border: #e6e6e6;--border-strong: #cfcfcf;--text: #000000;--text-2: #5a5a5a;--hero-bg: #000000;--hero-text: #ffffff;--hero-text-2: rgba(255, 255, 255, .78);--hero-text-3: rgba(255, 255, 255, .58);--hero-border: rgba(255, 255, 255, .18);--danger-text: #b3132d;--danger-bg: #fdeceb;--danger-border: #f0b8ba;--success-text: #166534;--success-bg: #e6f4ea;--success-border: #a8d5b5;--warning-text: #92400e;--warning-bg: #fbeee0;--warning-border: #e8c39a;--info-text: #1d4ed8;--info-bg: #e8f0fe;--info-border: #b6cffa;--neutral-text: var(--text-2);--neutral-bg: var(--bg-elev-1);--neutral-border: var(--border-strong);--focus-ring: var(--umd-red);--heading: "Source Sans 3", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--serif: "Crimson Text", Georgia, "Times New Roman", Times, serif;--mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--fs-2xs: .72rem;--fs-xs: .8rem;--fs-sm: .85rem;--fs-base: .95rem;--fs-h4: 1rem;--fs-h3: 1.1rem;--fs-h2: 1.5rem;--fs-h1: clamp(1.35rem, 2.5vw, 2rem);--shadow: 0 10px 28px rgba(0, 0, 0, .08);--ease: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--heading);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0 0 .5rem;letter-spacing:-.01em;font-weight:700;color:var(--text)}h1{font-family:var(--serif);font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}h4{font-size:var(--fs-h4)}p{margin:0}strong,b{font-weight:700;color:var(--text)}a{color:var(--umd-red);font-weight:700;text-decoration:none}a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}label{display:block;margin:.35rem 0 .3rem;color:var(--text-2);font-size:var(--fs-sm);font-weight:600;letter-spacing:.01em}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}::selection{background:var(--umd-gold);color:#000}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:1000}.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;padding:.65rem 1rem;background:var(--umd-red);color:#fff;border-radius:8px;font-weight:700;text-decoration:none}input,select,textarea,button{font-family:inherit;border-radius:12px;border:1px solid var(--border-strong);font-size:var(--fs-base);transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}input,select,textarea{width:100%;padding:.62rem .72rem;color:var(--text);background:var(--bg-elev-2)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--umd-red);box-shadow:0 0 0 3px #e2183338}input::placeholder,textarea::placeholder{color:var(--umd-mid)}input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:not-allowed}button{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;cursor:pointer;min-height:2.4rem;padding:.55rem .82rem;color:#fff;font-weight:600;border-color:transparent;background:var(--umd-red);white-space:nowrap}button:hover{background:var(--danger-text)}button:disabled{cursor:not-allowed;opacity:.6}button.danger{background:var(--umd-red)}button.danger:hover{background:var(--danger-text)}button.secondary-button{background:var(--bg-elev-2);color:var(--text);border-color:var(--border-strong)}button.secondary-button:hover{background:var(--bg-elev-1);border-color:var(--umd-mid)}code{font-family:var(--mono);font-size:var(--fs-xs);color:var(--umd-dark);background:var(--bg-elev-1);padding:.1em .35em;border-radius:4px}.screen{min-height:100vh;padding:clamp(1rem,2.2vw,1.6rem);animation:fade-up .3s var(--ease)}.workspace-shell{position:relative}.orb,.orb-red,.orb-gold{display:none}.glass-frame,.panel{position:relative;z-index:1;background:var(--bg-elev-1);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}.panel{padding:.95rem}.topbar{display:grid;grid-template-columns:1.2fr minmax(260px,360px);gap:1rem;padding:1.1rem 1.4rem;margin-bottom:1rem;background:var(--hero-bg);border-radius:18px;border-bottom:4px solid var(--umd-red)}.brand-block h1{color:var(--hero-text)}.brand-block .muted{color:var(--hero-text-2)}.eyebrow{text-transform:uppercase;font-size:var(--fs-2xs);font-weight:700;letter-spacing:.12em;color:var(--umd-gold);margin-bottom:.35rem}.muted{color:var(--text-2);font-size:var(--fs-sm)}.session-card{display:flex;flex-direction:column;gap:.6rem;padding:.95rem;border-radius:14px;background:var(--bg-elev-2);color:var(--text)}.session-card .muted{color:var(--text-2)}.feedback{position:relative;z-index:1;border-radius:10px;border-left:3px solid transparent;padding:.6rem .75rem;margin-bottom:.7rem;font-size:var(--fs-sm)}.feedback.error{background:var(--danger-bg);border-left-color:var(--danger-text);color:var(--danger-text)}.feedback.success{background:var(--success-bg);border-left-color:var(--success-text);color:var(--success-text)}.feedback.busy{background:var(--info-bg);border-left-color:var(--info-text);color:var(--info-text)}.loading-toast{position:fixed;right:1.2rem;top:1.2rem;z-index:30;display:inline-flex;align-items:center;gap:.7rem;min-width:min(320px,calc(100vw - 2.4rem));padding:.78rem .9rem;border-radius:14px;border:1px solid var(--info-border);background:#fffffff5;box-shadow:var(--shadow)}.loading-toast strong{display:block;margin-bottom:.14rem;font-size:var(--fs-sm)}.inline-note{margin:0}.workspace-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(250px,320px) 1fr;gap:1rem}.workspace-rail,.workspace-main,.view-stack,.doc-wrap{display:flex;flex-direction:column;gap:.9rem}.guide-step-head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:.4rem}.guide-step-head h3{margin:0}.guide-step-number{flex:none;padding:.2rem .65rem;border-radius:6px;background:var(--hero-bg);color:var(--hero-text);font-weight:700;font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center}.guide-role-pill{margin-left:auto;padding:.15rem .6rem;border-radius:999px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.02em;white-space:nowrap}.guide-role-instructor{background:var(--danger-bg);color:var(--danger-text);border:1px solid var(--danger-border)}.guide-role-ta{background:var(--info-bg);color:var(--info-text);border:1px solid var(--info-border)}.guide-figure{margin:.8rem 0 .4rem}.guide-figure img{width:100%;height:auto;display:block;border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 6px 18px #00000014}.guide-figure figcaption{margin-top:.45rem;color:var(--text-2);font-size:var(--fs-sm)}.menu-list{display:flex;flex-direction:column;gap:.4rem}.menu-btn{width:100%;justify-content:flex-start;background:transparent;color:var(--text-2);border-color:transparent;border-radius:12px}.menu-btn:hover{background:var(--bg-elev-2);color:var(--text)}.menu-btn.active{background:var(--umd-gold);color:#000;font-weight:700}.menu-btn.active:hover{background:var(--umd-gold)}.workflow-index{display:inline-flex;align-items:center;justify-content:center;width:1.3rem;height:1.3rem;border-radius:999px;font-size:var(--fs-2xs);font-weight:700;color:#000;background:var(--umd-gold)}.view-pane{min-height:60vh}.dashboard-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.metric-card{position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--umd-gold)}.metric-card strong{display:block;font-size:var(--fs-h1);margin:.2rem 0 .25rem;color:var(--text)}.metric-card small{color:var(--text-2)}.stagger{animation:fade-up .3s var(--ease) both}.stagger:nth-child(2){animation-delay:40ms}.stagger:nth-child(3){animation-delay:80ms}.stagger:nth-child(4){animation-delay:.12s}.action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.action-card h3{margin-bottom:.25rem}.ta-table{display:flex;flex-direction:column;gap:.5rem}.course-setup-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:.9rem;align-items:end}.roster-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;margin-bottom:.9rem}.roster-form-notes{grid-column:1 / -1}.roster-button-row{display:flex;justify-content:flex-start}.roster-send-grid{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(220px,.8fr);gap:.9rem;align-items:end;margin-bottom:.5rem}.roster-panel-header{margin-bottom:.75rem}.panel-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;margin-bottom:.85rem}.section-sort{display:inline-flex;align-items:center;gap:.45rem;font-size:var(--fs-xs);color:var(--text-2);white-space:nowrap;flex:0 0 auto}.section-sort select{width:auto}.course-name{color:var(--umd-red)}.status-inline{display:flex;flex-wrap:wrap;gap:.45rem;font-size:var(--fs-xs);color:var(--text-2)}.status-inline span{display:inline-flex;align-items:center;padding:.26rem .55rem;border-radius:999px;background:var(--bg);border:1px solid var(--border)}.disclosure-stack{display:flex;flex-direction:column;gap:.7rem}.disclosure-card{border:1px solid var(--border);border-radius:14px;background:var(--bg);overflow:hidden}.disclosure-card summary{cursor:pointer;list-style:none;padding:.82rem .9rem;font-weight:700}.disclosure-card summary::-webkit-details-marker{display:none}.disclosure-card[open] summary{border-bottom:1px solid var(--border);background:var(--bg-elev-2)}.disclosure-body{padding:.9rem}.disclosure-body>p{margin-bottom:.75rem}.action-cluster{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}.action-cluster-spaced{margin:.75rem 0}.new-run-form{display:flex;flex-direction:column;gap:.7rem}.new-run-form button{align-self:flex-start}.compact-button{min-height:2.2rem;padding:.48rem .8rem;font-size:var(--fs-sm);border-radius:10px}.roster-table-wrap{overflow-x:auto}.roster-table{width:100%;border-collapse:collapse;min-width:920px}.roster-table th,.roster-table td{padding:.72rem .6rem;border-top:1px solid var(--border);text-align:left;vertical-align:top}.roster-table thead th{border-top:none;font-size:var(--fs-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.04em}.roster-table tbody:first-of-type tr:first-child td{border-top:1px solid var(--border)}.roster-cell-stack{display:flex;flex-direction:column;gap:.18rem;font-size:var(--fs-sm)}.roster-cell-stack span{color:var(--text-2);font-size:var(--fs-xs)}.roster-summary-actions{display:flex;align-items:center;gap:.5rem;margin-top:.3rem}.roster-summary-actions .override-badge{margin-left:auto}.roster-cell-stack .override-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.1rem .45rem;border-radius:999px;background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border);font-size:var(--fs-2xs);font-weight:600;white-space:nowrap}.table-action-cluster{display:flex;flex-wrap:wrap;gap:.45rem}.roster-expanded-row td{background:var(--bg-elev-2)}.roster-expanded-panel{padding:.25rem 0}.roster-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.7rem}.submission-detail{display:flex;flex-direction:column;gap:.8rem}.submission-detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;font-size:var(--fs-xs)}.submission-override-panel{background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:10px;padding:.7rem .8rem}.submission-override-toggles{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;margin-bottom:.45rem}.submission-override-toggles .checkbox-row span{font-size:var(--fs-sm)}.submission-override-panel p{margin:0;font-size:var(--fs-xs)}.submission-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8rem}.submission-detail-group{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:.7rem .8rem}.submission-detail-group.is-ignored{opacity:.55}.submission-detail-group.is-ignored .submission-detail-list{text-decoration:line-through}.submission-detail-group.is-ignored h5{color:var(--warning-text);text-decoration:none}.submission-detail-group h5{margin:0 0 .5rem;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-2)}.submission-detail-notes{grid-column:1 / -1}.submission-detail-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.submission-detail-list li{display:flex;flex-direction:column;gap:.1rem;font-size:var(--fs-sm)}.submission-detail-list li span{color:var(--text-2);font-size:var(--fs-xs)}.reminder-toolbar{display:grid;grid-template-columns:minmax(220px,320px) auto;gap:.7rem;align-items:end;margin-bottom:.8rem}.reminder-deadline-field{margin:0}.reminder-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.65rem}.reminder-card{display:flex;flex-direction:column;gap:.55rem;padding:.78rem .82rem;border:1px solid var(--border);border-radius:12px;background:var(--bg)}.reminder-card-main{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.empty-note{margin-top:.35rem;padding:.35rem .1rem}.cycle-meta{margin:.55rem 0 .4rem}.cycle-actions{margin-bottom:0}.icon-button{flex:0 0 auto;min-width:42px;padding:.62rem}.inline-row{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap;margin-bottom:.75rem}.inline-row>*{flex:1;min-width:220px}.field-stack{display:flex;flex-direction:column;gap:.45rem;margin:0}.visually-hidden-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.generate-schedule-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.9rem;margin-bottom:.8rem}.generate-schedule-actions{display:flex;align-items:flex-end;gap:.8rem;flex-wrap:wrap;justify-content:flex-end}.compact-select{min-width:220px}.basic-rules-panel{border:1px solid var(--border);border-radius:14px;padding:.8rem;background:var(--bg-elev-2);margin-bottom:.85rem}.schedule-meta{margin-bottom:.7rem}.section-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.55rem}.course-section-group{margin-top:.9rem}.section-lock-select{min-height:5.5rem}.course-section-group h4{margin-bottom:.5rem;color:var(--umd-red);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em}.section-card{display:flex;gap:.55rem;align-items:flex-start;border:1px solid var(--border);border-radius:12px;padding:.58rem;background:var(--bg);min-height:106px}.section-card>input[type=checkbox]{width:auto;flex:0 0 auto;margin-top:.15rem}.section-card-body{min-width:0;width:100%;display:flex;flex-direction:column;align-items:flex-start}.section-card small{display:block;color:var(--text-2);font-size:var(--fs-xs);margin-bottom:.42rem}.section-eligibility-select{width:auto;max-width:100%;min-width:104px;padding:.45rem 2rem .45rem .75rem;font-size:var(--fs-xs);line-height:1.2;align-self:flex-start;margin-top:auto}.ta-row{display:grid;grid-template-columns:1.2fr repeat(3,minmax(120px,1fr)) minmax(160px,1fr) 90px 92px;gap:.45rem;align-items:center}.ta-row small{display:block;color:var(--text-2);font-size:var(--fs-xs)}.rule-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.6rem;margin-bottom:.6rem}.advanced-rules-toggle{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.2rem}.advanced-rules-stack{display:flex;flex-direction:column;gap:.8rem;margin-top:.8rem}.advanced-rule-group{padding:.85rem;border:1px solid var(--border);border-radius:14px;background:var(--bg-elev-2)}.rule-grid label{margin:0}.label-with-tooltip{display:inline-flex;align-items:center;gap:.35rem}.select-with-tooltip{display:flex;flex-direction:column;gap:.3rem;margin:0}.checkbox-row{display:flex;align-items:center;gap:.45rem}.checkbox-row input{width:auto;flex:0 0 auto}.checkbox-row .label-with-tooltip{color:var(--text-2);font-size:var(--fs-sm);font-weight:600}.generate-availability-toggle{margin:.6rem 0 .2rem;font-size:var(--fs-sm)}.term-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem;margin:.8rem 0}.tooltip-anchor{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;color:var(--text-2);cursor:help}.tooltip-anchor:hover,.tooltip-anchor:focus-visible{color:var(--umd-red)}.tooltip-bubble{position:absolute;left:50%;bottom:calc(100% + .55rem);transform:translate(-50%) translateY(4px);width:min(260px,70vw);padding:.55rem .65rem;border-radius:10px;border:1px solid var(--hero-border);background:var(--hero-bg);color:var(--hero-text);font-size:var(--fs-xs);font-weight:500;line-height:1.4;box-shadow:var(--shadow);opacity:0;pointer-events:none;z-index:20;transition:opacity .14s ease,transform .14s ease}.tooltip-bubble:after{content:"";position:absolute;left:50%;top:100%;transform:translate(-50%);border-width:7px 6px 0 6px;border-style:solid;border-color:var(--hero-bg) transparent transparent transparent}.tooltip-anchor:hover .tooltip-bubble,.tooltip-anchor:focus-visible .tooltip-bubble{opacity:1;transform:translate(-50%) translateY(0)}.assignment-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.6rem}.assignment-card{border:1px solid var(--border);border-radius:12px;background:var(--bg);padding:.62rem}.schedule-review-line{margin:.2rem 0 .45rem;color:var(--text);font-size:var(--fs-sm)}.assignment-header{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.45rem;font-size:var(--fs-sm)}.warning-panel{margin-top:.65rem;border-left:4px solid var(--umd-red);background:var(--danger-bg)}.warning-panel .muted{color:var(--danger-text)}.warning-item{margin-top:.4rem;border-radius:8px;padding:.36rem .44rem;font-size:var(--fs-sm);background:var(--warning-bg);border:1px solid var(--warning-border);color:var(--warning-text)}.conflict-row{border-top:1px solid var(--border);margin-top:.45rem;padding-top:.45rem}.status-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .56rem;border-radius:999px;font-size:var(--fs-xs);font-weight:700;border:1px solid transparent;text-transform:capitalize}.status-implemented{color:var(--success-text);background:var(--success-bg);border-color:var(--success-border)}.status-partial{color:var(--warning-text);background:var(--warning-bg);border-color:var(--warning-border)}.status-deferred{color:var(--info-text);background:var(--info-bg);border-color:var(--info-border)}.status-na{color:var(--neutral-text);background:var(--neutral-bg);border-color:var(--neutral-border)}.ta-confirmation-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.7rem}.ta-confirmation-card{border:1px solid var(--border);border-radius:14px;background:var(--bg-elev-1);padding:.8rem}.ta-confirmation-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem;margin-bottom:.45rem}.ta-confirmation-header small{display:block;color:var(--text-2);font-size:var(--fs-xs)}.ta-schedule-list{display:flex;flex-direction:column;gap:.45rem;margin-top:.65rem}.ta-schedule-item{display:flex;flex-direction:column;gap:.18rem;border:1px solid var(--border);border-radius:10px;padding:.5rem .58rem;background:var(--bg);font-size:var(--fs-sm)}.intake-screen{display:flex;justify-content:center}.intake-shell{position:relative;z-index:1;width:min(980px,100%);display:flex;flex-direction:column;gap:.8rem}.intake-hero{display:grid;gap:.8rem;padding:1.1rem 1.4rem;background:var(--hero-bg);border-radius:18px;border-bottom:4px solid var(--umd-red)}.intake-hero h1{color:var(--hero-text)}.intake-hero .muted{color:var(--hero-text-2)}.doc-list{margin:0;padding-left:1.2rem;display:grid;gap:.35rem}.test-shot{margin:.85rem 0 0}.test-shot img{display:block;max-width:100%;height:auto;border:1px solid var(--border);border-radius:12px}.test-shot figcaption{margin-top:.4rem;color:var(--text-2);font-size:var(--fs-xs)}.mapping-table{display:grid;grid-template-columns:1.2fr .8fr 2fr 1.8fr 1.4fr;border:1px solid var(--border);border-radius:12px;overflow:hidden}.mapping-row{display:contents}.mapping-head{background:var(--bg-elev-1);border-right:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);padding:.58rem;font-size:var(--fs-sm);font-weight:700;color:var(--text)}.mapping-head:last-child{border-right:none}.mapping-cell{padding:.58rem;font-size:var(--fs-sm);border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg);color:var(--text)}.mapping-cell:nth-last-child(-n+5){border-bottom:none}.mapping-cell:nth-child(5n){border-right:none}.mapping-spec{font-weight:650}.preference-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.72rem}.chips{display:flex;flex-wrap:wrap;gap:.45rem}.chip{min-width:42px;border-radius:999px;background:transparent;border:1px solid var(--border-strong);color:var(--text);font-family:var(--mono);font-weight:600}.chip:hover{background:var(--bg-elev-2)}.chip.selected{background:var(--umd-red);color:#fff;border-color:var(--umd-red)}.chip.selected:hover{background:var(--danger-text);border-color:var(--danger-text)}.multi-row{border:1px solid var(--border);border-radius:12px;padding:.85rem;background:var(--bg-elev-2);margin-bottom:.75rem}.day-select{min-height:8.5rem;font-size:var(--fs-sm)}.submit-button{font-weight:700}.row-remove-button{align-self:flex-start}.spin{animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-up{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.spin{animation-duration:1.6s!important;animation-iteration-count:infinite!important}}@media(max-width:1200px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.action-grid{grid-template-columns:1fr}.ta-row{grid-template-columns:1fr 1fr}}@media(max-width:980px){.topbar,.workspace-grid{grid-template-columns:1fr}.menu-list{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.ta-row,.mapping-table{grid-template-columns:1fr}.generate-schedule-header{flex-direction:column}.generate-schedule-actions{width:100%;justify-content:flex-start}.generate-schedule-actions>*{flex:0 1 auto}.mapping-head{display:none}.mapping-cell{border-right:none}.mapping-cell:nth-child(5n+1){background:var(--bg-elev-1);font-weight:700}.course-setup-grid,.reminder-toolbar,.panel-heading-row{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.action-cluster{width:100%}}@media(max-width:900px){.roster-send-grid{grid-template-columns:1fr}}
