.impersonation-banner-module__BUURwa__banner{justify-content:center;align-items:center;gap:var(--app-space-3);height:var(--app-banner-height);padding:0 var(--app-space-4);white-space:nowrap;background:var(--app-color-warning);color:#1a1204;font-size:var(--app-font-size-sm);flex-shrink:0;display:flex}.impersonation-banner-module__BUURwa__text{text-align:center}.impersonation-banner-module__BUURwa__exit{border-radius:var(--app-radius-sm);color:inherit;padding:2px var(--app-space-2);font:inherit;cursor:pointer;background:0 0;border:1px solid}.impersonation-banner-module__BUURwa__exit:hover{background:#0000001a}.impersonation-banner-module__BUURwa__exit:focus-visible{outline-offset:2px;outline:2px solid}
.tooltip-module__85CA8G__anchor{display:inline-flex}.tooltip-module__85CA8G__tip{z-index:var(--app-z-tooltip);max-width:18rem;padding:var(--app-space-1) var(--app-space-2);background:var(--app-color-surface-raised);border:var(--app-border-width) solid var(--app-color-border-strong);border-radius:var(--app-radius-sm);box-shadow:var(--app-shadow-md);color:var(--app-color-text);font-family:var(--app-font-sans);font-size:var(--app-font-size-sm);line-height:var(--app-line-height-normal);white-space:normal;text-align:center;pointer-events:none;width:max-content;position:fixed}.tooltip-module__85CA8G__top{transform:translate(-50%,-100%)}.tooltip-module__85CA8G__bottom{transform:translate(-50%)}.tooltip-module__85CA8G__left{transform:translate(-100%,-50%)}.tooltip-module__85CA8G__right{transform:translateY(-50%)}
.notification-bell-module__DTcgrq__wrapper{display:inline-flex;position:relative}.notification-bell-module__DTcgrq__trigger{width:var(--app-control-height-md);height:var(--app-control-height-md);border-radius:var(--app-radius-md);color:var(--app-color-text-muted);cursor:pointer;transition:background var(--app-transition-fast), color var(--app-transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.notification-bell-module__DTcgrq__trigger:hover{background:var(--app-color-surface-raised);color:var(--app-color-text)}.notification-bell-module__DTcgrq__trigger:focus-visible{outline:2px solid var(--app-color-focus-ring);outline-offset:2px}.notification-bell-module__DTcgrq__count{background:var(--app-color-danger);border:2px solid var(--app-color-surface);border-radius:var(--app-radius-full);color:#fff;min-width:1rem;font-size:var(--app-font-size-xs);font-weight:var(--app-font-weight-bold);text-align:center;padding:0 3px;line-height:1rem;position:absolute;top:2px;right:0}.notification-bell-module__DTcgrq__panel{top:calc(100% + var(--app-space-2));z-index:var(--app-z-dropdown);width:min(24rem, calc(100vw - var(--app-space-4)));background:var(--app-color-surface);border:var(--app-border-width) solid var(--app-color-border-strong);border-radius:var(--app-radius-lg);max-height:32rem;box-shadow:var(--app-shadow-lg);font-family:var(--app-font-sans);flex-direction:column;display:flex;position:absolute;right:0;overflow:hidden}.notification-bell-module__DTcgrq__panelHead{justify-content:space-between;align-items:center;gap:var(--app-space-2);padding:var(--app-space-2) var(--app-space-2) var(--app-space-2) var(--app-space-4);border-bottom:var(--app-border-width) solid var(--app-color-border);flex-shrink:0;display:flex}.notification-bell-module__DTcgrq__panelTitle{font-size:var(--app-font-size-md);font-weight:var(--app-font-weight-medium);color:var(--app-color-text)}.notification-bell-module__DTcgrq__panelActions{align-items:center;gap:2px;display:flex}.notification-bell-module__DTcgrq__list{margin:0;padding:0;list-style:none;overflow-y:auto}.notification-bell-module__DTcgrq__item{border-bottom:var(--app-border-width) solid var(--app-color-border);align-items:flex-start;display:flex;position:relative}.notification-bell-module__DTcgrq__item:last-child{border-bottom:none}.notification-bell-module__DTcgrq__item:hover{background:var(--app-color-surface-raised)}.notification-bell-module__DTcgrq__unread:before{content:"";background:var(--app-color-accent);width:3px;position:absolute;top:0;bottom:0;left:0}.notification-bell-module__DTcgrq__itemButton{align-items:flex-start;gap:var(--app-space-3);min-width:0;padding:var(--app-space-3) var(--app-space-2) var(--app-space-3) var(--app-space-4);color:inherit;font-family:inherit;font-size:var(--app-font-size-md);text-align:left;cursor:pointer;background:0 0;border:none;flex:1;text-decoration:none;display:flex}.notification-bell-module__DTcgrq__itemButton:focus-visible{outline:2px solid var(--app-color-focus-ring);outline-offset:-2px}.notification-bell-module__DTcgrq__itemTitle{color:var(--app-color-text);font-weight:var(--app-font-weight-medium);line-height:var(--app-line-height-tight)}.notification-bell-module__DTcgrq__unread .notification-bell-module__DTcgrq__itemTitle{font-weight:var(--app-font-weight-bold)}.notification-bell-module__DTcgrq__itemBody{color:var(--app-color-text-muted);font-size:var(--app-font-size-sm);line-height:var(--app-line-height-normal);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.notification-bell-module__DTcgrq__itemMeta{align-items:center;gap:var(--app-space-2);color:var(--app-color-text-subtle);font-size:var(--app-font-size-xs);margin-top:2px;display:flex}.notification-bell-module__DTcgrq__itemApp{padding:0 var(--app-space-1);background:var(--app-color-surface-sunken);border:var(--app-border-width) solid var(--app-color-border);border-radius:var(--app-radius-sm)}.notification-bell-module__DTcgrq__itemActions{padding:var(--app-space-2) var(--app-space-2) 0 0;opacity:0;transition:opacity var(--app-transition-fast);align-items:center;gap:2px;display:flex}.notification-bell-module__DTcgrq__item:hover .notification-bell-module__DTcgrq__itemActions,.notification-bell-module__DTcgrq__item:focus-within .notification-bell-module__DTcgrq__itemActions{opacity:1}@media (hover:none){.notification-bell-module__DTcgrq__itemActions{opacity:1}}.notification-bell-module__DTcgrq__empty{padding:var(--app-space-10) var(--app-space-4);text-align:center;color:var(--app-color-text-muted);font-size:var(--app-font-size-md);margin:0}.notification-bell-module__DTcgrq__itemIcon{color:var(--app-color-accent);flex-shrink:0;margin-top:1px;display:inline-flex}.notification-bell-module__DTcgrq__itemText{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notification-bell-module__DTcgrq__item[data-kind=success] .notification-bell-module__DTcgrq__itemIcon{color:var(--app-color-success)}.notification-bell-module__DTcgrq__item[data-kind=warning] .notification-bell-module__DTcgrq__itemIcon{color:var(--app-color-warning)}.notification-bell-module__DTcgrq__item[data-kind=error] .notification-bell-module__DTcgrq__itemIcon{color:var(--app-color-danger)}.notification-bell-module__DTcgrq__item[data-kind=success].notification-bell-module__DTcgrq__unread:before{background:var(--app-color-success)}.notification-bell-module__DTcgrq__item[data-kind=warning].notification-bell-module__DTcgrq__unread:before{background:var(--app-color-warning)}.notification-bell-module__DTcgrq__item[data-kind=error].notification-bell-module__DTcgrq__unread:before{background:var(--app-color-danger)}
.error-boundary-module__C1VKzW__fallback{align-items:flex-start;gap:var(--app-space-3);max-width:32rem;margin:var(--app-space-8) auto;padding:var(--app-space-6);background:var(--app-color-surface);border:var(--app-border-width) solid var(--app-color-danger);border-radius:var(--app-radius-lg);font-family:var(--app-font-sans);flex-direction:column;display:flex}.error-boundary-module__C1VKzW__heading{font-size:var(--app-font-size-lg);color:var(--app-color-text);margin:0}.error-boundary-module__C1VKzW__detail{color:var(--app-color-text-muted);font-size:var(--app-font-size-sm);font-family:var(--app-font-mono);overflow-wrap:anywhere;margin:0}.error-boundary-module__C1VKzW__retry{height:var(--app-control-height-md);padding:0 var(--app-space-4);background:var(--app-color-accent);border-radius:var(--app-radius-md);color:var(--app-color-text-on-accent);font-family:inherit;font-size:var(--app-font-size-md);cursor:pointer;border:none}.error-boundary-module__C1VKzW__retry:focus-visible{outline:2px solid var(--app-color-focus-ring);outline-offset:2px}
.toggle-module__dyVw0a__track{background:var(--app-color-border-strong);border:var(--app-border-width) solid transparent;border-radius:var(--app-radius-full);cursor:pointer;width:2.25rem;height:1.25rem;transition:background var(--app-transition-fast), border-color var(--app-transition-fast);flex-shrink:0;padding:0;position:relative}.toggle-module__dyVw0a__track[aria-checked=true]{background:var(--app-color-accent);border-color:var(--app-color-accent)}.toggle-module__dyVw0a__track:focus-visible{outline:2px solid var(--app-color-focus-ring);outline-offset:2px}.toggle-module__dyVw0a__track:disabled{opacity:.5;cursor:not-allowed}.toggle-module__dyVw0a__thumb{border-radius:var(--app-radius-full);width:.875rem;height:.875rem;transition:left var(--app-transition-fast), background var(--app-transition-fast);background:#fff;position:absolute;top:50%;left:2px;transform:translateY(-50%)}.toggle-module__dyVw0a__track[aria-checked=true] .toggle-module__dyVw0a__thumb{left:calc(100% - .875rem - 2px)}.toggle-module__dyVw0a__labelled{align-items:center;gap:var(--app-space-2);display:inline-flex}.toggle-module__dyVw0a__label{color:var(--app-color-text);font-family:var(--app-font-sans);font-size:var(--app-font-size-md)}
.assignment-table-module__YGl61q__wrap{gap:var(--app-space-2);flex-direction:column;display:flex}.assignment-table-module__YGl61q__scroll{background:var(--app-color-surface-sunken);border:var(--app-border-width) solid var(--app-color-border);border-radius:var(--app-radius-md);overflow-y:auto}.assignment-table-module__YGl61q__table{border-collapse:collapse;width:100%;font-family:var(--app-font-sans);font-size:var(--app-font-size-md)}.assignment-table-module__YGl61q__caption{clip-path:inset(50%);width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.assignment-table-module__YGl61q__table th,.assignment-table-module__YGl61q__table td{padding:var(--app-space-2) var(--app-space-3);text-align:start;border-bottom:var(--app-border-width) solid var(--app-color-border)}.assignment-table-module__YGl61q__table thead th{z-index:1;background:var(--app-color-surface-raised);color:var(--app-color-text-subtle);font-size:var(--app-font-size-xs);font-weight:var(--app-font-weight-bold);text-transform:uppercase;letter-spacing:.05em;position:sticky;top:0}.assignment-table-module__YGl61q__table tbody tr:hover{background:var(--app-color-surface)}.assignment-table-module__YGl61q__group{background:var(--app-color-surface);color:var(--app-color-text-muted);font-size:var(--app-font-size-sm);font-weight:var(--app-font-weight-bold)}.assignment-table-module__YGl61q__item{flex-direction:column;gap:2px;min-width:0;display:flex}.assignment-table-module__YGl61q__description,.assignment-table-module__YGl61q__locked{padding-left:calc(2.25rem + var(--app-space-2));color:var(--app-color-text-subtle);font-size:var(--app-font-size-sm);line-height:var(--app-line-height-tight)}.assignment-table-module__YGl61q__locked{color:var(--app-color-warning)}.assignment-table-module__YGl61q__empty{padding:var(--app-space-6);text-align:center;color:var(--app-color-text-muted);font-size:var(--app-font-size-sm);margin:0}
