.roll-call-module__Tq8ztW__window{border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-3);flex-wrap:wrap;justify-content:space-between;display:flex}.roll-call-module__Tq8ztW__window[data-state=open]{background:color-mix(in srgb, var(--color-success-surface) 55%, var(--color-surface));border-color:var(--color-success)}.roll-call-module__Tq8ztW__window[data-state=before]{background:color-mix(in srgb, var(--color-info-surface) 55%, var(--color-surface));border-color:var(--color-info)}.roll-call-module__Tq8ztW__window[data-state=closed]{background:color-mix(in srgb, var(--color-warning-surface) 50%, var(--color-surface));border-color:var(--color-warning)}.roll-call-module__Tq8ztW__windowText{gap:2px;display:grid}.roll-call-module__Tq8ztW__windowText strong{color:var(--color-text)}.roll-call-module__Tq8ztW__windowText span{color:var(--color-text-muted);font-size:var(--text-sm)}.roll-call-module__Tq8ztW__tallies{font-variant-numeric:tabular-nums;gap:var(--space-3);margin:0 0 var(--space-3);flex-wrap:wrap;padding:0;display:flex}.roll-call-module__Tq8ztW__tally{gap:2px;display:grid}.roll-call-module__Tq8ztW__tally dt{color:var(--color-text-muted);font-size:var(--text-xs)}.roll-call-module__Tq8ztW__tally dd{color:var(--color-text);font-size:var(--text-lg);margin:0;font-weight:600}.roll-call-module__Tq8ztW__actions{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.roll-call-module__Tq8ztW__selectionCount{color:var(--color-text-muted);font-size:var(--text-sm);margin-inline-start:auto}.roll-call-module__Tq8ztW__roster{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.roll-call-module__Tq8ztW__row{background:var(--color-surface);border:1px solid var(--color-border);border-inline-start:5px solid var(--color-border);border-radius:var(--radius-md);align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.roll-call-module__Tq8ztW__row[data-status=present]{border-inline-start-color:var(--color-success)}.roll-call-module__Tq8ztW__row[data-status=late]{border-inline-start-color:var(--color-warning)}.roll-call-module__Tq8ztW__row[data-status=absent]{border-inline-start-color:var(--color-danger)}.roll-call-module__Tq8ztW__pickRow{grid-template-columns:minmax(0,1fr) auto}.roll-call-module__Tq8ztW__rowSelected{box-shadow:0 0 0 1px var(--color-action)}.roll-call-module__Tq8ztW__identity{align-items:center;gap:var(--space-2);min-width:0;display:flex}.roll-call-module__Tq8ztW__identityText{gap:2px;min-width:0;display:grid}.roll-call-module__Tq8ztW__identityText strong{color:var(--color-text);overflow-wrap:anywhere}.roll-call-module__Tq8ztW__identityText span{color:var(--color-text-muted);font-size:var(--text-sm)}.roll-call-module__Tq8ztW__rowMeta{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.roll-call-module__Tq8ztW__rowMeta>span:not([class]){color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}@media (max-width:40rem){.roll-call-module__Tq8ztW__row{grid-template-columns:auto minmax(0,1fr)}.roll-call-module__Tq8ztW__rowMeta{grid-column:2;justify-content:flex-start}}.roll-call-module__Tq8ztW__classBanner{background:var(--color-surface);border:1px solid var(--color-border-strong,var(--color-border));border-inline-start:5px solid var(--color-info);border-radius:var(--radius-md);gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-3);display:grid}.roll-call-module__Tq8ztW__classBanner[data-status=submitted]{border-inline-start-color:var(--color-success)}.roll-call-module__Tq8ztW__classBanner[data-status=in_progress]{border-inline-start-color:var(--color-warning)}.roll-call-module__Tq8ztW__classBannerHead{align-items:flex-start;gap:var(--space-2);flex-wrap:wrap;justify-content:space-between;display:flex}.roll-call-module__Tq8ztW__classBannerTitle{gap:2px;display:grid}.roll-call-module__Tq8ztW__classBannerTitle strong{color:var(--color-text);font-size:var(--text-lg)}.roll-call-module__Tq8ztW__classBannerTitle span{color:var(--color-text-muted);font-size:var(--text-sm)}.roll-call-module__Tq8ztW__classBannerMeta,.roll-call-module__Tq8ztW__classBannerWindow{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.roll-call-module__Tq8ztW__classBannerTallies{font-variant-numeric:tabular-nums;gap:var(--space-3);flex-wrap:wrap;margin:0;padding:0;display:flex}
.confirmation-provider-module__vAEZWa__backdrop{animation:confirmation-provider-module__vAEZWa__scrim-in var(--duration-fast) var(--ease-standard);background:var(--color-scrim);z-index:1000;position:fixed;inset:0}.confirmation-provider-module__vAEZWa__dialog{animation:confirmation-provider-module__vAEZWa__confirmation-in var(--duration-standard) var(--ease-standard);background:var(--color-surface);border:var(--border-width) solid color-mix(in srgb, var(--color-accent) 72%, transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-overlay);color:var(--color-text);z-index:1001;width:100%;max-width:31rem;padding:clamp(1.5rem,4vw,2.25rem);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.confirmation-provider-module__vAEZWa__eyebrow{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-sm);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:0;font-weight:700}html:lang(vi) .confirmation-provider-module__vAEZWa__eyebrow{text-transform:none}.confirmation-provider-module__vAEZWa__title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:400;line-height:var(--leading-display);margin:var(--space-2) 0 0}.confirmation-provider-module__vAEZWa__description{color:var(--color-text-muted);line-height:var(--leading-body);margin:var(--space-3) 0 0}.confirmation-provider-module__vAEZWa__actions{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap-reverse;justify-content:flex-end;display:flex}@media (max-width:440px){.confirmation-provider-module__vAEZWa__dialog{max-width:calc(100% - 2rem)}.confirmation-provider-module__vAEZWa__actions{display:grid}.confirmation-provider-module__vAEZWa__actions>button{width:100%}}@keyframes confirmation-provider-module__vAEZWa__confirmation-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.97)}}@media (prefers-reduced-motion:reduce){.confirmation-provider-module__vAEZWa__backdrop,.confirmation-provider-module__vAEZWa__dialog{animation:none}}
.attendance-roster-module__3o5i7G__roster{gap:var(--space-4);display:grid}.attendance-roster-module__3o5i7G__bulkActions,.attendance-roster-module__3o5i7G__summary,.attendance-roster-module__3o5i7G__overrideActions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.attendance-roster-module__3o5i7G__rosterHeader{background:var(--color-canvas);border-bottom:var(--border-width) solid var(--color-border);align-items:end;gap:var(--space-3);padding:var(--space-3) 0;z-index:2;flex-wrap:wrap;justify-content:space-between;display:flex;position:sticky;top:0}.attendance-roster-module__3o5i7G__progressBlock{gap:var(--space-1);min-width:14rem;display:grid}.attendance-roster-module__3o5i7G__progressBar{appearance:none;border-radius:var(--radius-pill);border:0;block-size:.375rem;inline-size:100%;max-inline-size:22rem;overflow:hidden}.attendance-roster-module__3o5i7G__progressBar::-webkit-progress-bar{background:var(--color-surface-subtle)}.attendance-roster-module__3o5i7G__progressBar::-webkit-progress-value{background:var(--color-action);transition:inline-size var(--duration-standard) var(--ease-standard)}.attendance-roster-module__3o5i7G__progressBar::-moz-progress-bar{background:var(--color-action)}.attendance-roster-module__3o5i7G__eyebrow,.attendance-roster-module__3o5i7G__rosterMeta,.attendance-roster-module__3o5i7G__overrideTitle,.attendance-roster-module__3o5i7G__overrideDescription,.attendance-roster-module__3o5i7G__notesValue,.attendance-roster-module__3o5i7G__lockedAt,.attendance-roster-module__3o5i7G__saveSuccess,.attendance-roster-module__3o5i7G__saveError,.attendance-roster-module__3o5i7G__liveNotice{margin:0}.attendance-roster-module__3o5i7G__eyebrow{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);align-items:center;gap:var(--space-2);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700;display:flex}.attendance-roster-module__3o5i7G__dirtyMark{background:var(--color-warning-surface);border-radius:var(--radius-pill);color:var(--color-text);padding:0 var(--space-2)}.attendance-roster-module__3o5i7G__liveNotice{background:var(--color-info-surface);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--text-sm);align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.attendance-roster-module__3o5i7G__pendingStatus{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.attendance-roster-module__3o5i7G__pendingNote{color:var(--color-text-muted);font-size:var(--text-xs);font-style:italic}.attendance-roster-module__3o5i7G__statusReadOnly{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.attendance-roster-module__3o5i7G__authorisedAbsence{color:var(--color-text-muted);font-size:var(--text-xs);align-items:center;gap:var(--space-1);justify-self:start;font-weight:600;display:inline-flex}.attendance-roster-module__3o5i7G__authorisedAbsence svg{color:var(--color-success)}html:lang(vi) .attendance-roster-module__3o5i7G__eyebrow{text-transform:none}.attendance-roster-module__3o5i7G__rosterMeta,.attendance-roster-module__3o5i7G__notesValue,.attendance-roster-module__3o5i7G__lockedAt{color:var(--color-text-muted);font-size:var(--text-sm)}.attendance-roster-module__3o5i7G__controls{background:0 0}.attendance-roster-module__3o5i7G__controlsSummary{color:var(--color-text-muted);font-size:var(--text-sm)}.attendance-roster-module__3o5i7G__tableFrame{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.attendance-roster-module__3o5i7G__table{border-collapse:collapse;table-layout:fixed;text-align:left;width:100%}.attendance-roster-module__3o5i7G__table th,.attendance-roster-module__3o5i7G__table td{border-bottom:var(--border-width) solid var(--color-border);padding:var(--space-3);vertical-align:top}.attendance-roster-module__3o5i7G__table th:first-child{width:40%}.attendance-roster-module__3o5i7G__table th:nth-child(2){width:42%}.attendance-roster-module__3o5i7G__table th:nth-child(3){width:18%}.attendance-roster-module__3o5i7G__table:has(.attendance-roster-module__3o5i7G__behaviorCell) th:first-child{width:22%}.attendance-roster-module__3o5i7G__table:has(.attendance-roster-module__3o5i7G__behaviorCell) th:nth-child(2){width:26%}.attendance-roster-module__3o5i7G__table:has(.attendance-roster-module__3o5i7G__behaviorCell) th:nth-child(3){width:38%}.attendance-roster-module__3o5i7G__table:has(.attendance-roster-module__3o5i7G__behaviorCell) th:nth-child(4){width:14%}:is(.attendance-roster-module__3o5i7G__table:not(:has(.attendance-roster-module__3o5i7G__lockedActions)) th:last-child,.attendance-roster-module__3o5i7G__table:not(:has(.attendance-roster-module__3o5i7G__lockedActions)) td:last-child){display:none}.attendance-roster-module__3o5i7G__table:not(:has(.attendance-roster-module__3o5i7G__lockedActions)):not(:has(.attendance-roster-module__3o5i7G__behaviorCell)) th:first-child{width:45%}.attendance-roster-module__3o5i7G__table:not(:has(.attendance-roster-module__3o5i7G__lockedActions)):not(:has(.attendance-roster-module__3o5i7G__behaviorCell)) th:nth-child(2){width:55%}.attendance-roster-module__3o5i7G__table thead th{background:var(--color-surface-subtle);color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .attendance-roster-module__3o5i7G__table thead th{text-transform:none}.attendance-roster-module__3o5i7G__table tbody tr:last-child>*{border-bottom:0}.attendance-roster-module__3o5i7G__table tbody tr[data-status]:not([data-status=unmarked]) .attendance-roster-module__3o5i7G__studentName{color:var(--color-text-muted)}.attendance-roster-module__3o5i7G__table tbody tr[data-status=present]>:first-child{box-shadow:inset 3px 0 var(--color-success)}.attendance-roster-module__3o5i7G__table tbody tr[data-status=absent]>:first-child{box-shadow:inset 3px 0 var(--color-danger)}.attendance-roster-module__3o5i7G__table tbody tr[data-status=late]>:first-child{box-shadow:inset 3px 0 var(--color-warning)}.attendance-roster-module__3o5i7G__table tbody tr[data-active=true]{background:var(--color-surface-subtle);outline:2px solid var(--color-action);outline-offset:-2px}.attendance-roster-module__3o5i7G__table tbody tr[data-active=true] .attendance-roster-module__3o5i7G__studentName{color:var(--color-text)}.attendance-roster-module__3o5i7G__table tbody tr{transition:background var(--duration-fast) var(--ease-standard)}.attendance-roster-module__3o5i7G__behaviorCell{min-width:0}.attendance-roster-module__3o5i7G__studentName,.attendance-roster-module__3o5i7G__studentCode{display:block}.attendance-roster-module__3o5i7G__studentName{color:var(--color-text);font-size:var(--text-base);align-items:center;gap:var(--space-1);font-weight:700;display:flex}.attendance-roster-module__3o5i7G__conflictPrompt{background:var(--color-notice-surface);border-radius:var(--radius-sm);font-size:var(--text-sm);align-items:center;gap:var(--space-2);padding:var(--space-2);flex-wrap:wrap;display:flex}.attendance-roster-module__3o5i7G__studentCode{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:2px;font-weight:500}.attendance-roster-module__3o5i7G__statusCell,.attendance-roster-module__3o5i7G__noteField,.attendance-roster-module__3o5i7G__lockedActions,.attendance-roster-module__3o5i7G__overridePanel{gap:var(--space-2);display:grid}.attendance-roster-module__3o5i7G__statusPicker{background:var(--color-surface-subtle);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);justify-self:start;gap:2px;padding:2px;display:inline-flex}.attendance-roster-module__3o5i7G__statusOption{border-radius:calc(var(--radius-md) - 2px);color:var(--color-text-muted);cursor:pointer;font-family:var(--font-subhead);font-size:var(--text-xs);align-items:center;gap:var(--space-1);height:var(--control-height-comfortable);letter-spacing:var(--tracking-label);min-width:var(--control-height-comfortable);padding:0 var(--space-3);text-transform:uppercase;background:0 0;border:0;justify-content:center;font-weight:700;display:inline-flex}html:lang(vi) .attendance-roster-module__3o5i7G__statusOption{text-transform:none}@media (max-width:900px){.attendance-roster-module__3o5i7G__statusOptionLabel{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.attendance-roster-module__3o5i7G__statusOption{padding:0}}.attendance-roster-module__3o5i7G__statusOption:hover:not(:disabled){color:var(--color-text)}.attendance-roster-module__3o5i7G__statusOption[data-state=on]{background:var(--color-surface);box-shadow:var(--shadow-surface);color:var(--color-text)}.attendance-roster-module__3o5i7G__statusOption[data-state=on][data-status=present]{box-shadow:inset 0 -2px var(--color-success), var(--shadow-surface)}.attendance-roster-module__3o5i7G__statusOption[data-state=on][data-status=absent]{box-shadow:inset 0 -2px var(--color-danger), var(--shadow-surface)}.attendance-roster-module__3o5i7G__statusOption[data-state=on][data-status=late]{box-shadow:inset 0 -2px var(--color-warning), var(--shadow-surface)}.attendance-roster-module__3o5i7G__statusPicker[data-default]{border-style:dashed}.attendance-roster-module__3o5i7G__statusPicker[data-default] .attendance-roster-module__3o5i7G__statusOption[data-state=on]{box-shadow:none;color:var(--color-text-muted);background:0 0}.attendance-roster-module__3o5i7G__statusOption:focus-visible,.attendance-roster-module__3o5i7G__noteField textarea:focus-visible{box-shadow:var(--focus-ring);outline:0}.attendance-roster-module__3o5i7G__statusOption:disabled{cursor:not-allowed;opacity:.55}.attendance-roster-module__3o5i7G__noteField{color:var(--color-text);font-size:var(--text-sm);font-weight:600}.attendance-roster-module__3o5i7G__noteField textarea{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font:inherit;min-height:4.5rem;padding:var(--space-2);resize:vertical;width:100%}.attendance-roster-module__3o5i7G__noteField textarea:disabled{background:var(--color-surface-subtle);cursor:not-allowed}.attendance-roster-module__3o5i7G__fieldError,.attendance-roster-module__3o5i7G__saveError{color:var(--color-danger);font-size:var(--text-xs);line-height:1.4}.attendance-roster-module__3o5i7G__lockedActions{justify-items:start}.attendance-roster-module__3o5i7G__overridePanel{background:var(--color-surface-subtle);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);min-width:0;padding:var(--space-3)}.attendance-roster-module__3o5i7G__overrideTitle{color:var(--color-text);font-size:var(--text-base);font-weight:700}.attendance-roster-module__3o5i7G__overrideDescription{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.45}.attendance-roster-module__3o5i7G__empty{background:var(--color-surface-subtle);border:var(--border-width) dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-base);padding:var(--space-5);text-align:center;margin:0}.attendance-roster-module__3o5i7G__saveSuccess{color:var(--color-success);font-size:var(--text-sm);font-weight:600}.attendance-roster-module__3o5i7G__footBar{gap:var(--space-2);display:grid}.attendance-roster-module__3o5i7G__shortcutStrip{color:var(--color-text-muted);font-size:var(--text-sm);align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:space-between;display:flex}.attendance-roster-module__3o5i7G__shortcutList{gap:var(--space-2) var(--space-4);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));margin:0;display:grid}.attendance-roster-module__3o5i7G__shortcutList>div{align-items:center;gap:var(--space-2);display:flex}.attendance-roster-module__3o5i7G__shortcutList dt,.attendance-roster-module__3o5i7G__shortcutList dd{margin:0}.attendance-roster-module__3o5i7G__shortcutList dd{color:var(--color-text-muted);font-size:var(--text-sm)}.attendance-roster-module__3o5i7G__shortcutList kbd{background:var(--color-surface-subtle);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-subhead);font-size:var(--text-xs);padding:2px var(--space-2);white-space:nowrap;font-weight:700}.attendance-roster-module__3o5i7G__srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:720px){.attendance-roster-module__3o5i7G__rosterHeader{flex-direction:column;align-items:start}.attendance-roster-module__3o5i7G__bulkActions,.attendance-roster-module__3o5i7G__bulkActions>button{width:100%}.attendance-roster-module__3o5i7G__table,.attendance-roster-module__3o5i7G__table tbody,.attendance-roster-module__3o5i7G__table tr,.attendance-roster-module__3o5i7G__table th,.attendance-roster-module__3o5i7G__table td{width:100%;display:block}.attendance-roster-module__3o5i7G__table thead{display:none}.attendance-roster-module__3o5i7G__table tbody tr{padding:var(--space-3)}.attendance-roster-module__3o5i7G__table tbody tr+tr{border-top:var(--border-width) solid var(--color-border)}.attendance-roster-module__3o5i7G__table tbody tr>*{padding:var(--space-2) 0;border:0}.attendance-roster-module__3o5i7G__table tbody tr>td:last-child{padding-bottom:0}}
.portal-notifications-module__CXgrLa__bellTrigger{transition:all var(--duration-fast) var(--ease-standard);position:relative}.portal-notifications-module__CXgrLa__bellIcon{transition:transform var(--duration-fast) var(--ease-standard)}.portal-notifications-module__CXgrLa__bellTrigger:hover .portal-notifications-module__CXgrLa__bellIcon,.portal-notifications-module__CXgrLa__bellTrigger:focus-visible .portal-notifications-module__CXgrLa__bellIcon{animation:.6s ease-in-out portal-notifications-module__CXgrLa__wiggle}@keyframes portal-notifications-module__CXgrLa__wiggle{0%,to{transform:rotate(0)}15%{transform:rotate(-10deg)}30%{transform:rotate(8deg)}45%{transform:rotate(-6deg)}60%{transform:rotate(4deg)}75%{transform:rotate(-2deg)}}.portal-notifications-module__CXgrLa__listContainer{gap:var(--space-2);padding:var(--space-2);flex-direction:column;display:flex}.portal-notifications-module__CXgrLa__notificationCard{gap:var(--space-3);border-radius:var(--radius-md);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);transition:all var(--duration-fast) var(--ease-standard);align-items:flex-start;display:flex;position:relative}.portal-notifications-module__CXgrLa__notificationCard:hover{background:var(--color-surface-subtle);border-color:var(--color-border-strong);box-shadow:var(--shadow-surface);transform:translateY(-1px)}.portal-notifications-module__CXgrLa__unread{background:var(--color-notice-surface);border-color:color-mix(in srgb, var(--color-accent) 25%, var(--color-border))}.portal-notifications-module__CXgrLa__unread:hover{background:color-mix(in srgb, var(--color-notice-surface) 92%, var(--color-text-muted))}.portal-notifications-module__CXgrLa__iconContainer{flex-shrink:0;margin-top:.1rem;position:relative}.portal-notifications-module__CXgrLa__iconWrapper{border-radius:var(--radius-pill);background:var(--color-surface-subtle);width:2.25rem;height:2.25rem;color:var(--color-text-muted);border:1px solid var(--color-border);transition:all var(--duration-fast) var(--ease-standard);justify-content:center;align-items:center;display:flex}.portal-notifications-module__CXgrLa__student_checkin{background:color-mix(in srgb, var(--color-info) 12%, transparent);color:var(--color-info);border-color:color-mix(in srgb, var(--color-info) 30%, transparent)}.portal-notifications-module__CXgrLa__demerit{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 30%, transparent)}.portal-notifications-module__CXgrLa__confiscation{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 30%, transparent)}.portal-notifications-module__CXgrLa__leave_request{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent);border-color:color-mix(in srgb, var(--color-accent) 30%, transparent)}.portal-notifications-module__CXgrLa__reward,.portal-notifications-module__CXgrLa__merit{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 30%, transparent)}.portal-notifications-module__CXgrLa__defaultSource{background:color-mix(in srgb, var(--color-text-muted) 10%, transparent);color:var(--color-text-muted);border-color:color-mix(in srgb, var(--color-text-muted) 20%, transparent)}.portal-notifications-module__CXgrLa__sourceIcon{width:1.125rem;height:1.125rem}.portal-notifications-module__CXgrLa__pulseDot{border-radius:var(--radius-pill);background:var(--color-danger);border:1.5px solid var(--color-surface);width:9px;height:9px;animation:1.6s cubic-bezier(.66,0,0,1) infinite portal-notifications-module__CXgrLa__pulse-dot;position:absolute;top:-1px;right:-1px;box-shadow:0 0 #8a4238b3}.portal-notifications-module__CXgrLa__unread .portal-notifications-module__CXgrLa__pulseDot{border-color:var(--color-notice-surface)}@keyframes portal-notifications-module__CXgrLa__pulse-dot{to{box-shadow:0 0 0 6px #8a423800}}.portal-notifications-module__CXgrLa__contentButton{text-align:left;cursor:pointer;background:0 0;border:none;outline:none;flex-direction:column;flex:1;gap:.15rem;min-width:0;margin:0;padding:0;display:flex}.portal-notifications-module__CXgrLa__titleText{font-size:var(--text-md);color:var(--color-text);font-weight:600;line-height:1.25;display:block}.portal-notifications-module__CXgrLa__messageText{font-size:var(--text-base);color:var(--color-text-muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.portal-notifications-module__CXgrLa__timestampText{font-size:var(--text-xs);color:var(--color-text-muted);opacity:.85;margin-top:.35rem;display:block}.portal-notifications-module__CXgrLa__markReadButton{opacity:0;transition:opacity var(--duration-fast) var(--ease-standard);color:var(--color-text-muted);flex-shrink:0;margin-top:.15rem}.portal-notifications-module__CXgrLa__notificationCard:hover .portal-notifications-module__CXgrLa__markReadButton,.portal-notifications-module__CXgrLa__markReadButton:focus-visible{opacity:1}.portal-notifications-module__CXgrLa__markReadButton:hover{color:var(--color-text);background:var(--color-surface-subtle)}
.academic-context-selector-module__oLZfIq__trigger{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);align-items:center;gap:var(--space-2);height:var(--control-height);min-width:0;max-width:100%;padding:0 var(--space-3);transition:background var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);display:inline-flex}.academic-context-selector-module__oLZfIq__trigger:hover{border-color:var(--color-border-strong)}.academic-context-selector-module__oLZfIq__trigger:focus-visible{border-color:var(--color-focus);box-shadow:var(--focus-ring);outline:0}.academic-context-selector-module__oLZfIq__triggerActive{background:var(--color-surface-subtle);border-color:var(--color-border-strong)}.academic-context-selector-module__oLZfIq__triggerDot{background:var(--color-accent);border-radius:var(--radius-pill);flex-shrink:0;width:7px;height:7px}.academic-context-selector-module__oLZfIq__triggerValue{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;line-height:1.2;overflow:hidden}.academic-context-selector-module__oLZfIq__trigger:disabled .academic-context-selector-module__oLZfIq__triggerValue{color:var(--color-text-muted);font-weight:400}.academic-context-selector-module__oLZfIq__triggerChevron{color:var(--color-text-muted);transition:transform var(--duration-fast) var(--ease-standard);flex-shrink:0}.academic-context-selector-module__oLZfIq__trigger[data-state=open] .academic-context-selector-module__oLZfIq__triggerChevron{transform:rotate(180deg)}.academic-context-selector-module__oLZfIq__popover{gap:var(--space-1);min-width:15rem;padding:var(--space-2);width:max-content;display:grid}.academic-context-selector-module__oLZfIq__popoverHeader{color:var(--color-accent);align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-1);display:flex}.academic-context-selector-module__oLZfIq__popoverTitle{font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .academic-context-selector-module__oLZfIq__popoverTitle{text-transform:none}.academic-context-selector-module__oLZfIq__optionList{min-width:0;padding:var(--space-1) 0;border:0;gap:2px;margin:0;display:grid}.academic-context-selector-module__oLZfIq__optionList+.academic-context-selector-module__oLZfIq__optionList{border-top:var(--border-width) solid var(--color-border);margin-top:var(--space-1);padding-top:var(--space-2)}.academic-context-selector-module__oLZfIq__groupLabel{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);padding:0 var(--space-2) var(--space-1);text-transform:uppercase;font-weight:700;display:block}html:lang(vi) .academic-context-selector-module__oLZfIq__groupLabel{text-transform:none}.academic-context-selector-module__oLZfIq__option{border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;font-size:var(--text-sm);align-items:center;gap:var(--space-2);min-height:2.5rem;padding:0 var(--space-3);-webkit-user-select:none;user-select:none;display:flex}.academic-context-selector-module__oLZfIq__option:hover{background:var(--color-surface-subtle)}.academic-context-selector-module__oLZfIq__optionInput{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.academic-context-selector-module__oLZfIq__option:has(.academic-context-selector-module__oLZfIq__optionInput:focus-visible){box-shadow:var(--focus-ring);outline:0}.academic-context-selector-module__oLZfIq__optionCheck{color:var(--color-accent);opacity:0;flex-shrink:0}.academic-context-selector-module__oLZfIq__option:has(.academic-context-selector-module__oLZfIq__optionInput:checked){background:color-mix(in srgb, var(--color-accent) 16%, var(--color-surface));font-weight:600}.academic-context-selector-module__oLZfIq__option:has(.academic-context-selector-module__oLZfIq__optionInput:checked) .academic-context-selector-module__oLZfIq__optionCheck{opacity:1}.academic-context-selector-module__oLZfIq__optionLabel{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}
.portal-workspace-header-module__vzpK6W__header{z-index:20;flex-shrink:0}.portal-workspace-header-module__vzpK6W__content{align-items:center;gap:var(--space-3);height:var(--shell-header-height);padding-inline:var(--space-5);grid-template-columns:minmax(0,1fr) auto minmax(10rem,18rem) auto;width:100%;display:grid}.portal-workspace-header-module__vzpK6W__pageContext{align-items:center;gap:var(--space-2);min-width:0;display:flex}.portal-workspace-header-module__vzpK6W__quickSearch{justify-content:flex-start;width:100%}.portal-workspace-header-module__vzpK6W__account{align-items:center;gap:var(--space-2);justify-self:end;min-width:0;display:flex}@media (max-width:1080px){.portal-workspace-header-module__vzpK6W__content{grid-template-columns:minmax(0,1fr) auto auto auto}.portal-workspace-header-module__vzpK6W__quickSearch{width:auto}.portal-workspace-header-module__vzpK6W__quickSearch span,.portal-workspace-header-module__vzpK6W__quickSearch kbd{display:none}}@media (max-width:720px){.portal-workspace-header-module__vzpK6W__content{gap:var(--space-2);height:auto;padding-block:var(--space-2);padding-inline:var(--space-4);grid-template-columns:minmax(0,1fr) auto}.portal-workspace-header-module__vzpK6W__pageContext{grid-area:1/1}.portal-workspace-header-module__vzpK6W__account{grid-area:1/2;justify-self:end}.portal-workspace-header-module__vzpK6W__academicContext{grid-area:2/1/auto/-1}.portal-workspace-header-module__vzpK6W__quickSearch{grid-area:3/1/auto/-1;width:100%}.portal-workspace-header-module__vzpK6W__quickSearch span{display:block}.portal-workspace-header-module__vzpK6W__quickSearch kbd{display:none}}
.portal-breadcrumbs-module__OZFGKG__breadcrumbs{color:var(--color-text-muted);font-size:var(--text-sm);min-width:0;overflow:hidden}.portal-breadcrumbs-module__OZFGKG__breadcrumbs ol{align-items:center;gap:var(--space-2);flex-wrap:nowrap;min-width:0;margin:0;padding:0;list-style:none;display:flex}.portal-breadcrumbs-module__OZFGKG__breadcrumbs li{align-items:center;gap:var(--space-2);min-width:0;display:inline-flex}.portal-breadcrumbs-module__OZFGKG__breadcrumbs li:not(:last-child){flex-shrink:6}.portal-breadcrumbs-module__OZFGKG__breadcrumbs li:last-child{flex-shrink:1;max-width:24rem}.portal-breadcrumbs-module__OZFGKG__breadcrumbs li:not(:last-child):after{color:var(--color-border-strong);content:"/";flex:none}.portal-breadcrumbs-module__OZFGKG__label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.portal-breadcrumbs-module__OZFGKG__breadcrumbs a{color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-standard);text-decoration:none}.portal-breadcrumbs-module__OZFGKG__breadcrumbs a:hover{color:var(--color-text)}.portal-breadcrumbs-module__OZFGKG__breadcrumbs [aria-current=page]{color:var(--color-text);font-weight:600}@media (max-width:720px){.portal-breadcrumbs-module__OZFGKG__breadcrumbs li:not(:last-child){display:none}}
.portal-command-menu-module__e3AEGa__overlay{animation:portal-command-menu-module__e3AEGa__fade-in var(--duration-fast) var(--ease-standard);background:var(--color-scrim);z-index:100;position:fixed;inset:0}.portal-command-menu-module__e3AEGa__content{animation:portal-command-menu-module__e3AEGa__command-enter var(--duration-standard) var(--ease-standard);background:var(--color-surface);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay);color:var(--color-text);z-index:101;width:100%;max-width:min(100vw - 2rem,38rem);position:fixed;top:min(18vh,9rem);left:50%;overflow:hidden;transform:translate(-50%)}.portal-command-menu-module__e3AEGa__inputFrame{border-bottom:var(--border-width) solid var(--color-border);color:var(--color-text-muted);align-items:center;gap:var(--space-3);padding:0 var(--space-4);display:flex}.portal-command-menu-module__e3AEGa__input{color:var(--color-text);font-size:var(--text-lg);background:0 0;border:0;outline:0;width:100%;min-height:3.5rem;padding:0}.portal-command-menu-module__e3AEGa__input::placeholder{color:var(--color-text-muted)}.portal-command-menu-module__e3AEGa__list{max-height:min(50vh,22rem);padding:var(--space-2);overflow-y:auto}.portal-command-menu-module__e3AEGa__list [cmdk-group-heading]{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-sm);letter-spacing:var(--tracking-label);padding:var(--space-2) var(--space-3);text-transform:uppercase;font-weight:700}html:lang(vi) .portal-command-menu-module__e3AEGa__list [cmdk-group-heading]{text-transform:none}.portal-command-menu-module__e3AEGa__item{border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-size:var(--text-md);min-height:2.65rem;padding:.65rem var(--space-3);outline:0;font-weight:600}.portal-command-menu-module__e3AEGa__item[data-selected=true]{background:var(--color-surface-subtle)}.portal-command-menu-module__e3AEGa__empty{color:var(--color-text-muted);font-size:var(--text-md);padding:var(--space-5) var(--space-3);text-align:center}@keyframes portal-command-menu-module__e3AEGa__fade-in{0%{opacity:0}}@keyframes portal-command-menu-module__e3AEGa__command-enter{0%{opacity:0;transform:translate(-50%,-.5rem)}}
.pinned-views-provider-module__EHIGHG__layer{pointer-events:none;z-index:70;position:fixed;inset:0}.pinned-views-provider-module__EHIGHG__panel{background:var(--color-canvas);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-overlay);pointer-events:auto;grid-template-rows:auto minmax(0,1fr);min-width:min(26.25rem,100vw - 1rem);min-height:3rem;display:grid;position:fixed;overflow:hidden}.pinned-views-provider-module__EHIGHG__header{background:var(--color-surface);border-bottom:var(--border-width) solid var(--color-border);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;min-height:3rem;display:flex}.pinned-views-provider-module__EHIGHG__header:active{cursor:grabbing}.pinned-views-provider-module__EHIGHG__title,.pinned-views-provider-module__EHIGHG__actions{align-items:center;display:flex}.pinned-views-provider-module__EHIGHG__title{color:var(--color-text-muted);gap:var(--space-2);min-width:0;padding-inline-start:var(--space-4)}.pinned-views-provider-module__EHIGHG__title h2{color:var(--color-text);font-family:var(--font-subhead);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:700;overflow:hidden}.pinned-views-provider-module__EHIGHG__actions{gap:2px;padding-inline-end:var(--space-2)}.pinned-views-provider-module__EHIGHG__body{min-height:0;overflow:auto}.pinned-views-provider-module__EHIGHG__resizeHandle{background:linear-gradient(135deg, transparent 46%, var(--color-border-strong) 47% 53%, transparent 54%);cursor:nwse-resize;touch-action:none;border:0;width:1.25rem;height:1.25rem;padding:0;position:absolute;bottom:3px;right:3px}.pinned-views-provider-module__EHIGHG__resizeHandle:focus-visible{box-shadow:var(--focus-ring);outline:0}@media (max-width:720px){.pinned-views-provider-module__EHIGHG__layer{display:none}}
.portal-page-module__pfm30q__page{animation:portal-page-module__pfm30q__portal-page-enter var(--duration-standard) var(--ease-standard);background:var(--color-canvas);color:var(--color-text);grid-template-columns:var(--portal-page-gutter,var(--space-5)) minmax(0, 1fr) var(--portal-page-gutter,var(--space-5));min-height:0;padding-block:var(--space-5);align-content:start;row-gap:var(--space-5);display:grid}@keyframes portal-page-module__pfm30q__portal-page-enter{0%{opacity:0;transform:translateY(.5rem)}}.portal-page-module__pfm30q__page[data-transition=none]{animation:none}@media (prefers-reduced-motion:reduce){.portal-page-module__pfm30q__page{animation:none}}.portal-page-module__pfm30q__content{grid-column:2;width:100%;min-width:0}.portal-page-module__pfm30q__compact{justify-self:start;max-width:48rem}@media (max-width:720px){.portal-page-module__pfm30q__page{padding-block:var(--space-4);row-gap:var(--space-4)}}
.portal-sidebar-module__T8UpYG__sidebar{height:100%;min-height:0;padding:0 var(--space-2) var(--space-2);transition:padding var(--duration-standard) var(--ease-standard);flex-direction:column;display:flex;overflow-x:hidden}.portal-sidebar-module__T8UpYG__collapsed{padding-inline:var(--space-2)}.portal-sidebar-module__T8UpYG__overlay{animation:portal-sidebar-module__T8UpYG__scrim-in var(--duration-fast) var(--ease-standard);background:var(--color-scrim);z-index:80;position:fixed;inset:0}.portal-sidebar-module__T8UpYG__mobileDrawer{animation:portal-sidebar-module__T8UpYG__drawer-enter var(--duration-standard) var(--ease-standard);z-index:81;outline:0;flex-direction:column;width:18rem;max-width:calc(100vw - 3rem);display:flex;position:fixed;top:0;bottom:0;left:0}@keyframes portal-sidebar-module__T8UpYG__drawer-enter{0%{transform:translate(-100%)}}@media (max-width:720px){.portal-sidebar-module__T8UpYG__sidebar{display:none}}
.portal-application-shell-module__Hf-vXa__layout{grid-template-columns:var(--shell-sidebar-width) minmax(0, 1fr);height:100dvh;transition:grid-template-columns var(--duration-standard) var(--ease-standard);width:100%;margin:0;display:grid;overflow:hidden}.portal-application-shell-module__Hf-vXa__collapsed{grid-template-columns:var(--shell-sidebar-collapsed-width) minmax(0, 1fr)}.portal-application-shell-module__Hf-vXa__mainColumn{flex-direction:column;min-width:0;min-height:0;display:flex}.portal-application-shell-module__Hf-vXa__content{--portal-page-gutter:var(--space-5);overscroll-behavior-y:contain;overflow-anchor:none;scrollbar-gutter:stable;flex:1;min-width:0;min-height:0;overflow-y:auto}@media (max-width:720px){.portal-application-shell-module__Hf-vXa__content{--portal-page-gutter:var(--space-4)}.portal-application-shell-module__Hf-vXa__layout{flex-direction:column;display:flex}}
.workflow-attachments-module__mNLqNW__section{border-top:var(--border-width) solid var(--color-border);gap:var(--space-3);padding-top:var(--space-4);display:grid}.workflow-attachments-module__mNLqNW__header{gap:var(--space-1);display:grid}.workflow-attachments-module__mNLqNW__title,.workflow-attachments-module__mNLqNW__description,.workflow-attachments-module__mNLqNW__meta,.workflow-attachments-module__mNLqNW__empty,.workflow-attachments-module__mNLqNW__error{margin:0}.workflow-attachments-module__mNLqNW__title{color:var(--color-text);font-family:var(--font-subhead);font-size:var(--text-lg)}.workflow-attachments-module__mNLqNW__description,.workflow-attachments-module__mNLqNW__meta{color:var(--color-text-muted);font-size:var(--text-sm)}.workflow-attachments-module__mNLqNW__upload{align-items:end;gap:var(--space-3);flex-wrap:wrap;display:flex}.workflow-attachments-module__mNLqNW__fileField{gap:var(--space-1);flex:15rem;display:grid}.workflow-attachments-module__mNLqNW__fileField span{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .workflow-attachments-module__mNLqNW__fileField span{text-transform:none}.workflow-attachments-module__mNLqNW__fileInput{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);min-height:var(--control-height);padding:var(--space-2);width:100%}.workflow-attachments-module__mNLqNW__fileInput:focus-visible,.workflow-attachments-module__mNLqNW__download:focus-visible{box-shadow:var(--focus-ring);outline:0}.workflow-attachments-module__mNLqNW__list{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);margin:0;padding:0;list-style:none}.workflow-attachments-module__mNLqNW__list li+li{border-top:var(--border-width) solid var(--color-border)}.workflow-attachments-module__mNLqNW__row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);justify-content:space-between;display:flex}.workflow-attachments-module__mNLqNW__fileInfo{gap:var(--space-1);min-width:0;display:grid}.workflow-attachments-module__mNLqNW__fileName{overflow-wrap:anywhere}.workflow-attachments-module__mNLqNW__download{color:var(--color-link);cursor:pointer;font:inherit;min-height:var(--control-height);padding:var(--space-2);background:0 0;border:0;flex:none;font-weight:700}.workflow-attachments-module__mNLqNW__actions{gap:var(--space-1);flex:none;display:flex}.workflow-attachments-module__mNLqNW__remove{color:var(--color-danger);cursor:pointer;font:inherit;min-height:var(--control-height);padding:var(--space-2);background:0 0;border:0;font-weight:700}.workflow-attachments-module__mNLqNW__remove:focus-visible{box-shadow:var(--focus-ring);outline:0}.workflow-attachments-module__mNLqNW__remove:disabled,.workflow-attachments-module__mNLqNW__download:disabled{cursor:wait;opacity:.65}.workflow-attachments-module__mNLqNW__empty,.workflow-attachments-module__mNLqNW__error,.workflow-attachments-module__mNLqNW__locked{background:var(--color-surface-subtle);border:var(--border-width) dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-muted);padding:var(--space-3)}.workflow-attachments-module__mNLqNW__locked{margin:0}.workflow-attachments-module__mNLqNW__error{color:var(--color-danger)}@media (max-width:640px){.workflow-attachments-module__mNLqNW__upload,.workflow-attachments-module__mNLqNW__row{flex-direction:column;align-items:stretch}.workflow-attachments-module__mNLqNW__upload>button,.workflow-attachments-module__mNLqNW__download,.workflow-attachments-module__mNLqNW__remove,.workflow-attachments-module__mNLqNW__actions{width:100%}}
.late-arrival-desk-module__7Yoh6a__shell{align-content:start;align-self:start;gap:var(--space-3);width:100%;display:grid}.late-arrival-desk-module__7Yoh6a__searchBlock{gap:var(--space-1);display:grid}.late-arrival-desk-module__7Yoh6a__searchLabel{color:var(--color-text);font-size:var(--text-sm);font-weight:600}.late-arrival-desk-module__7Yoh6a__searchBar{background:var(--color-surface);border:var(--border-width) solid var(--color-border-strong,var(--color-border));border-radius:var(--radius-md);align-items:center;gap:var(--space-2);height:2.25rem;padding:0 var(--space-3);transition:border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);display:flex}.late-arrival-desk-module__7Yoh6a__searchBar:focus-within{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.late-arrival-desk-module__7Yoh6a__searchIcon{color:var(--color-text-muted);flex:none;width:1rem;height:1rem}.late-arrival-desk-module__7Yoh6a__searchInput{color:var(--color-text);font:inherit;font-size:var(--text-sm);background:0 0;border:0;outline:none;flex:auto;min-width:0;height:100%;padding:0}.late-arrival-desk-module__7Yoh6a__searchInput::placeholder{color:var(--color-text-muted)}.late-arrival-desk-module__7Yoh6a__searchInput::-webkit-search-decoration{appearance:none}.late-arrival-desk-module__7Yoh6a__searchInput::-webkit-search-cancel-button{appearance:none}.late-arrival-desk-module__7Yoh6a__searchHint{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-body);margin:0}.late-arrival-desk-module__7Yoh6a__empty{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.late-arrival-desk-module__7Yoh6a__results{border:var(--border-width) solid var(--color-border-strong,var(--color-border));border-radius:var(--radius-md);align-content:start;height:fit-content;max-height:12rem;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.late-arrival-desk-module__7Yoh6a__resultRow{background:var(--color-surface);color:inherit;cursor:pointer;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);text-align:left;transition:background var(--duration-fast) var(--ease-standard);border:0;grid-template-columns:auto minmax(0,1fr) auto;width:100%;display:grid}.late-arrival-desk-module__7Yoh6a__results li+li .late-arrival-desk-module__7Yoh6a__resultRow{border-top:var(--border-width) solid var(--color-border)}.late-arrival-desk-module__7Yoh6a__resultRow:hover{background:var(--color-notice-surface)}.late-arrival-desk-module__7Yoh6a__resultRowSelected{background:var(--color-notice-surface);box-shadow:inset 3px 0 0 var(--color-accent)}.late-arrival-desk-module__7Yoh6a__resultRow:focus-visible{box-shadow:inset 0 0 0 2px var(--color-accent);outline:0}.late-arrival-desk-module__7Yoh6a__resultRowSelected:focus-visible{box-shadow:inset 3px 0 0 var(--color-accent), inset 0 0 0 2px var(--color-accent)}.late-arrival-desk-module__7Yoh6a__resultText{gap:1px;min-width:0;display:grid}.late-arrival-desk-module__7Yoh6a__resultText strong{color:var(--color-text);font-size:var(--text-sm);overflow-wrap:anywhere}.late-arrival-desk-module__7Yoh6a__resultText span{color:var(--color-text-muted);font-size:var(--text-xs)}.late-arrival-desk-module__7Yoh6a__field{gap:var(--space-1);display:grid}.late-arrival-desk-module__7Yoh6a__fieldLabel{color:var(--color-text);font-size:var(--text-sm);font-weight:600}.late-arrival-desk-module__7Yoh6a__control,.late-arrival-desk-module__7Yoh6a__textarea{background:var(--color-surface);border:var(--border-width) solid var(--color-border-strong,var(--color-border));border-radius:var(--radius-md);color:var(--color-text);font:inherit;font-size:var(--text-sm);width:100%}.late-arrival-desk-module__7Yoh6a__control{height:2.25rem;padding:0 var(--space-3)}.late-arrival-desk-module__7Yoh6a__textarea{line-height:var(--leading-body);min-height:4rem;padding:var(--space-2) var(--space-3);resize:vertical}.late-arrival-desk-module__7Yoh6a__control:disabled,.late-arrival-desk-module__7Yoh6a__textarea:disabled{background:var(--color-surface-subtle);color:var(--color-text-muted);cursor:not-allowed;opacity:.72}.late-arrival-desk-module__7Yoh6a__control:focus-visible,.late-arrival-desk-module__7Yoh6a__textarea:focus-visible{border-color:var(--color-accent);box-shadow:var(--focus-ring);outline:0}.late-arrival-desk-module__7Yoh6a__fieldHint{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-body);margin:0}.late-arrival-desk-module__7Yoh6a__footer{gap:var(--space-2);justify-content:flex-end;display:flex}@media (max-width:40rem){.late-arrival-desk-module__7Yoh6a__resultRow{grid-template-columns:auto minmax(0,1fr)}.late-arrival-desk-module__7Yoh6a__resultRow>:last-child{grid-column:2;justify-self:start}}
.lesson-detail-page-module__0bPIIW__content{gap:var(--space-5);padding:0 0 var(--space-6);display:grid}.lesson-detail-page-module__0bPIIW__backLink{color:var(--color-action);font-size:var(--text-md);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--color-accent) 86%, transparent);text-decoration-color:color-mix(in srgb, var(--color-accent) 86%, transparent);text-underline-offset:.25rem;font-weight:700}.lesson-detail-page-module__0bPIIW__backLink:hover{color:var(--color-action-hover)}.lesson-detail-page-module__0bPIIW__lessonContext{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.lesson-detail-page-module__0bPIIW__lessonContext dl{align-items:center;gap:var(--space-3) var(--space-5);flex-wrap:wrap;margin:0;display:flex}.lesson-detail-page-module__0bPIIW__lessonContext dl>div{gap:2px;min-width:0;display:grid}.lesson-detail-page-module__0bPIIW__lessonContext dt,.lesson-detail-page-module__0bPIIW__noteField>span,.lesson-detail-page-module__0bPIIW__rosterTable th{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-sm);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .lesson-detail-page-module__0bPIIW__lessonContext dt,html:lang(vi) .lesson-detail-page-module__0bPIIW__noteField>span,html:lang(vi) .lesson-detail-page-module__0bPIIW__rosterTable th{text-transform:none}.lesson-detail-page-module__0bPIIW__lessonContext dd{color:var(--color-text);font-size:var(--text-sm);overflow-wrap:anywhere;margin:0;font-weight:700;line-height:1.35}.lesson-detail-page-module__0bPIIW__tableFrame{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.lesson-detail-page-module__0bPIIW__rosterTable{border-collapse:collapse;width:100%;min-width:36rem}.lesson-detail-page-module__0bPIIW__rosterTable th,.lesson-detail-page-module__0bPIIW__rosterTable td{border-bottom:var(--border-width) solid var(--color-border);padding:var(--space-4) var(--space-5);text-align:left;vertical-align:middle}.lesson-detail-page-module__0bPIIW__rosterTable th{background:var(--color-surface-subtle)}.lesson-detail-page-module__0bPIIW__rosterTable td{color:var(--color-text);font-size:var(--text-md);overflow-wrap:anywhere}.lesson-detail-page-module__0bPIIW__rosterTable tbody tr:last-child td{border-bottom:0}.lesson-detail-page-module__0bPIIW__noteText,.lesson-detail-page-module__0bPIIW__emptyNote,.lesson-detail-page-module__0bPIIW__noteError{font-size:var(--text-md);line-height:var(--leading-body);white-space:pre-wrap;margin:0}.lesson-detail-page-module__0bPIIW__noteText{color:var(--color-text)}.lesson-detail-page-module__0bPIIW__emptyNote{color:var(--color-text-muted)}.lesson-detail-page-module__0bPIIW__noteError{background:var(--color-danger-surface);border-left:3px solid var(--color-danger);color:var(--color-danger);margin-top:var(--space-4);padding:var(--space-3)}.lesson-detail-page-module__0bPIIW__noteForm{gap:var(--space-4);display:grid}.lesson-detail-page-module__0bPIIW__noteField{color:var(--color-text);gap:var(--space-2);display:grid}.lesson-detail-page-module__0bPIIW__noteField textarea{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);line-height:var(--leading-body);min-height:8rem;padding:var(--space-3);resize:vertical}.lesson-detail-page-module__0bPIIW__noteField textarea:focus{border-color:var(--color-focus);box-shadow:var(--focus-ring);outline:0}.lesson-detail-page-module__0bPIIW__noteField textarea:disabled{background:var(--color-surface-subtle);cursor:not-allowed}.lesson-detail-page-module__0bPIIW__noteActions{gap:var(--space-2);flex-wrap:wrap;display:flex}.lesson-detail-page-module__0bPIIW__skeleton{gap:var(--space-4);display:grid}.lesson-detail-page-module__0bPIIW__skeletonHeading{width:min(22rem,70%);height:2rem}.lesson-detail-page-module__0bPIIW__skeletonDetails{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lesson-detail-page-module__0bPIIW__skeletonDetails>*{height:4.75rem}.lesson-detail-page-module__0bPIIW__skeletonTable{width:100%;height:12rem}.lesson-detail-page-module__0bPIIW__skeletonNote{width:100%;height:7rem}.lesson-detail-page-module__0bPIIW__srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:720px){.lesson-detail-page-module__0bPIIW__content{padding-top:var(--space-6)}.lesson-detail-page-module__0bPIIW__lessonContext dl{align-items:start;gap:var(--space-3);flex-direction:column}}@media (max-width:520px){.lesson-detail-page-module__0bPIIW__rosterTable{min-width:0}.lesson-detail-page-module__0bPIIW__rosterTable thead{display:none}.lesson-detail-page-module__0bPIIW__rosterTable,.lesson-detail-page-module__0bPIIW__rosterTable tbody,.lesson-detail-page-module__0bPIIW__rosterTable tr,.lesson-detail-page-module__0bPIIW__rosterTable td{width:100%;display:block}.lesson-detail-page-module__0bPIIW__rosterTable tr{padding:var(--space-2) 0}.lesson-detail-page-module__0bPIIW__rosterTable td{align-items:start;gap:var(--space-3);grid-template-columns:minmax(7rem,.8fr) minmax(0,1.2fr);display:grid}.lesson-detail-page-module__0bPIIW__rosterTable td:before{color:var(--color-text-muted);content:attr(data-label);font-family:var(--font-subhead);font-size:var(--text-sm);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .lesson-detail-page-module__0bPIIW__rosterTable td:before{text-transform:none}}
.workflow-detail-module__rMO16G__detail,.workflow-detail-module__rMO16G__activity,.workflow-detail-module__rMO16G__commentForm,.workflow-detail-module__rMO16G__tabPanelBody{gap:var(--space-4);display:grid}.workflow-detail-module__rMO16G__header{background:linear-gradient(180deg, var(--color-surface) 0%, var(--color-surface-subtle) 100%);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-surface);align-items:center;gap:var(--space-3);padding:var(--space-4);grid-template-columns:auto minmax(0,1fr);display:grid}.workflow-detail-module__rMO16G__tabControl{width:100%}.workflow-detail-module__rMO16G__tabPanel{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-surface);gap:var(--space-4);min-width:0;padding:var(--space-4);display:grid}.workflow-detail-module__rMO16G__tabPanelIntro{border-bottom:var(--border-width) solid var(--color-border);align-items:flex-start;gap:var(--space-3);padding-bottom:var(--space-3);display:flex}.workflow-detail-module__rMO16G__tabIcon{color:var(--color-accent);flex:none;width:1.25rem;height:1.25rem;margin-top:.125rem}.workflow-detail-module__rMO16G__tabPanelTitle{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);margin:0;font-weight:700;line-height:1.3}.workflow-detail-module__rMO16G__tabPanelDescription{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-body);margin:var(--space-1) 0 0}.workflow-detail-module__rMO16G__metadataGrid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));margin:0;display:grid}.workflow-detail-module__rMO16G__metadataGrid>div{min-width:0}.workflow-detail-module__rMO16G__metadataGrid dt{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .workflow-detail-module__rMO16G__metadataGrid dt{text-transform:none}.workflow-detail-module__rMO16G__metadataGrid dd{color:var(--color-text);font-size:var(--text-base);line-height:var(--leading-body);margin:var(--space-1) 0 0;overflow-wrap:anywhere;white-space:pre-wrap}.workflow-detail-module__rMO16G__metadataWide{grid-column:1/-1}.workflow-detail-module__rMO16G__attachmentsSection{gap:var(--space-3);min-width:0;display:grid}.workflow-detail-module__rMO16G__attachmentsHeading{color:var(--color-text);font-family:var(--font-subhead);font-size:var(--text-xs);align-items:center;gap:var(--space-2);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:0;font-weight:700;display:flex}html:lang(vi) .workflow-detail-module__rMO16G__attachmentsHeading{text-transform:none}.workflow-detail-module__rMO16G__attachmentsHeading svg{color:var(--color-accent);width:1rem;height:1rem}.workflow-detail-module__rMO16G__statusGroup{align-items:center;gap:var(--space-2);flex-shrink:0;min-width:0;display:inline-flex}.workflow-detail-module__rMO16G__statusBadge{align-items:center;gap:var(--space-2);min-width:0;display:inline-flex}.workflow-detail-module__rMO16G__statusBadge svg{color:var(--color-text-muted)}.workflow-detail-module__rMO16G__statusLabel{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .workflow-detail-module__rMO16G__statusLabel{text-transform:none}.workflow-detail-module__rMO16G__actionButtons,.workflow-detail-module__rMO16G__commentActions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.workflow-detail-module__rMO16G__inlineActionPanel{gap:var(--space-3);display:grid}.workflow-detail-module__rMO16G__inlineActionButtons{border-top:var(--border-width) solid var(--color-border);align-items:center;gap:var(--space-2);padding-top:var(--space-3);flex-wrap:wrap;justify-content:flex-end;display:flex}.workflow-detail-module__rMO16G__headerActions{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;min-width:0;display:flex}.workflow-detail-module__rMO16G__timelinePanelBody{min-width:0}.workflow-detail-module__rMO16G__workflowIcon{flex:none}.workflow-detail-module__rMO16G__workflowIconSm{width:.875rem;height:.875rem}.workflow-detail-module__rMO16G__workflowIconMd{width:1rem;height:1rem}.workflow-detail-module__rMO16G__workflowIconLg{width:1.25rem;height:1.25rem}.workflow-detail-module__rMO16G__attachments{min-width:0}.workflow-detail-module__rMO16G__timeline{margin:0;padding:0;list-style:none;position:relative}.workflow-detail-module__rMO16G__timeline:before{background:var(--color-border);content:"";width:2px;position:absolute;top:1rem;bottom:1rem;left:1rem;transform:translate(-50%)}.workflow-detail-module__rMO16G__timelineItem{gap:var(--space-4);padding-bottom:var(--space-5);grid-template-columns:2rem minmax(0,1fr);display:grid;position:relative}.workflow-detail-module__rMO16G__timelineItem:last-child{padding-bottom:0}.workflow-detail-module__rMO16G__timelineMarker{background:var(--color-surface);border:2px solid var(--color-border-strong);border-radius:var(--radius-pill);color:var(--color-text-muted);z-index:1;justify-content:center;align-items:center;width:2rem;height:2rem;margin-top:.125rem;display:flex;position:relative}.workflow-detail-module__rMO16G__timelineMarker svg{width:.875rem;height:.875rem}.workflow-detail-module__rMO16G__marker_success{background:var(--color-success-surface);border-color:var(--color-success);color:var(--color-success)}.workflow-detail-module__rMO16G__marker_danger{background:var(--color-danger-surface);border-color:var(--color-danger);color:var(--color-danger)}.workflow-detail-module__rMO16G__marker_warning{background:var(--color-notice-surface);border-color:var(--color-accent);color:var(--color-action)}.workflow-detail-module__rMO16G__marker_info{background:var(--color-info-surface);border-color:var(--color-info);color:var(--color-info)}.workflow-detail-module__rMO16G__timelineContent{gap:var(--space-1);min-width:0;display:grid}.workflow-detail-module__rMO16G__timelineAction,.workflow-detail-module__rMO16G__timelineTransition,.workflow-detail-module__rMO16G__timelineMeta,.workflow-detail-module__rMO16G__historyComment,.workflow-detail-module__rMO16G__empty,.workflow-detail-module__rMO16G__fieldError{margin:0}.workflow-detail-module__rMO16G__timelineAction{color:var(--color-text);font-size:var(--text-base);font-weight:700}.workflow-detail-module__rMO16G__timelineTransition,.workflow-detail-module__rMO16G__timelineMeta{color:var(--color-text-muted);font-size:var(--text-sm)}.workflow-detail-module__rMO16G__timelineMeta{gap:var(--space-1);flex-wrap:wrap;display:flex}.workflow-detail-module__rMO16G__actorIdentity{align-items:center;gap:var(--space-1);display:inline-flex}.workflow-detail-module__rMO16G__actorAvatar,.workflow-detail-module__rMO16G__actorInitials{background-color:var(--color-surface-subtle);border-radius:var(--radius-pill);background-position:50%;background-size:cover;place-items:center;width:1.5rem;height:1.5rem;display:inline-grid}.workflow-detail-module__rMO16G__actorInitials{color:var(--color-action);font-size:var(--text-xs);font-weight:700}.workflow-detail-module__rMO16G__historyComment{background:var(--color-surface-subtle);border-left:3px solid var(--color-border-strong);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--color-text);line-height:var(--leading-body);margin-top:var(--space-2);padding:var(--space-3);white-space:pre-wrap}.workflow-detail-module__rMO16G__thumbnail{background:var(--color-surface-subtle);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);height:8rem;margin-top:var(--space-2);width:min(12rem,100%);position:relative;overflow:hidden}.workflow-detail-module__rMO16G__thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.workflow-detail-module__rMO16G__thumbnailOpen{color:#fff;cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-standard);background:#0000008c;border:0;justify-content:center;align-items:center;width:100%;display:flex;position:absolute;inset:0}.workflow-detail-module__rMO16G__thumbnail:hover .workflow-detail-module__rMO16G__thumbnailOpen,.workflow-detail-module__rMO16G__thumbnailOpen:focus-visible{opacity:1}.workflow-detail-module__rMO16G__thumbnailOpen svg{width:1.25rem;height:1.25rem}.workflow-detail-module__rMO16G__thumbnailOpen:focus-visible{box-shadow:inset var(--focus-ring);outline:0}.workflow-detail-module__rMO16G__attachmentChip{background:var(--color-surface-subtle);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);align-items:center;gap:var(--space-2);margin-top:var(--space-2);overflow-wrap:anywhere;max-width:100%;padding:var(--space-2) var(--space-3);display:inline-flex}.workflow-detail-module__rMO16G__attachmentChip svg{color:var(--color-text-muted);flex:none;width:1rem;height:1rem}.workflow-detail-module__rMO16G__empty{background:var(--color-surface-subtle);border:var(--border-width) dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-muted);padding:var(--space-4);text-align:center}.workflow-detail-module__rMO16G__commentForm{border-top:var(--border-width) solid var(--color-border);padding-top:var(--space-4)}.workflow-detail-module__rMO16G__commentAttach{border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;align-items:center;gap:var(--space-2);max-width:100%;min-height:var(--control-height);padding:0 var(--space-3);display:inline-flex}.workflow-detail-module__rMO16G__commentAttach:hover{background:var(--color-notice-surface);border-color:var(--color-accent)}.workflow-detail-module__rMO16G__commentAttach:has(input:focus-visible){box-shadow:var(--focus-ring);outline:0}.workflow-detail-module__rMO16G__commentAttach svg{color:var(--color-accent);flex:none;width:1rem;height:1rem}.workflow-detail-module__rMO16G__commentAttach span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workflow-detail-module__rMO16G__commentAttach input{display:none}.workflow-detail-module__rMO16G__commentLabel{color:var(--color-text)}.workflow-detail-module__rMO16G__commentInput{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);min-height:6rem;padding:var(--space-3);resize:vertical;width:100%}.workflow-detail-module__rMO16G__commentInput::placeholder{color:var(--color-text-muted)}.workflow-detail-module__rMO16G__commentInput:focus-visible{border-color:var(--color-focus);box-shadow:var(--focus-ring);outline:0}.workflow-detail-module__rMO16G__commentInput:disabled{background:var(--color-surface-subtle);cursor:not-allowed}.workflow-detail-module__rMO16G__fieldError{color:var(--color-danger);font-size:var(--text-sm)}@media (max-width:640px){.workflow-detail-module__rMO16G__header{grid-template-columns:minmax(0,1fr)}.workflow-detail-module__rMO16G__headerActions{justify-content:flex-start;width:100%}.workflow-detail-module__rMO16G__actionButtons,.workflow-detail-module__rMO16G__actionButtons>button,.workflow-detail-module__rMO16G__inlineActionButtons,.workflow-detail-module__rMO16G__inlineActionButtons>button,.workflow-detail-module__rMO16G__commentActions,.workflow-detail-module__rMO16G__commentActions>button{width:100%}.workflow-detail-module__rMO16G__tabPanel{padding:var(--space-3)}.workflow-detail-module__rMO16G__metadataGrid{grid-template-columns:minmax(0,1fr)}}
.segmented-control-module__g1Xr_q__root{background:var(--color-surface-subtle);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);height:var(--control-height);align-items:stretch;gap:2px;padding:2px;display:inline-flex}.segmented-control-module__g1Xr_q__item{border-radius:var(--radius-pill);color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-sm);padding:0 var(--space-3);background:0 0;border:0;font-weight:700}.segmented-control-module__g1Xr_q__item:hover:not(:disabled){color:var(--color-text)}.segmented-control-module__g1Xr_q__item[data-state=on]{background:var(--color-surface);box-shadow:var(--shadow-surface);color:var(--color-text)}.segmented-control-module__g1Xr_q__item:focus-visible{box-shadow:var(--focus-ring);outline:0}.segmented-control-module__g1Xr_q__item:disabled{cursor:not-allowed;opacity:.55}
.controls-panel-module__PZ5PjG__panel{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);min-width:0}.controls-panel-module__PZ5PjG__header{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3) var(--space-4);justify-content:space-between;display:flex}.controls-panel-module__PZ5PjG__toggle{border-radius:var(--radius-sm);color:inherit;font:inherit;align-items:center;gap:var(--space-2);margin:calc(var(--space-1) * -1) calc(var(--space-2) * -1);min-width:0;padding:var(--space-1) var(--space-2);text-align:start;background:0 0;border:0;display:flex}.controls-panel-module__PZ5PjG__toggle:hover{background:var(--color-surface-subtle)}.controls-panel-module__PZ5PjG__toggle:focus-visible{box-shadow:var(--focus-ring);outline:0}.controls-panel-module__PZ5PjG__headerText{gap:1px;min-width:0;display:grid}.controls-panel-module__PZ5PjG__panelLabel{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .controls-panel-module__PZ5PjG__panelLabel{text-transform:none}.controls-panel-module__PZ5PjG__chevron{color:var(--color-text-muted);transition:transform var(--duration-standard) var(--ease-standard);flex-shrink:0}[data-state=open] .controls-panel-module__PZ5PjG__chevron{transform:rotate(180deg)}.controls-panel-module__PZ5PjG__headerActions{align-items:center;gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;display:flex}.controls-panel-module__PZ5PjG__reset{color:var(--color-text-muted)}.controls-panel-module__PZ5PjG__count{background:var(--color-action);border-radius:var(--radius-pill);color:var(--color-on-action,#fff);font-size:var(--text-xs);text-align:center;min-width:1.15rem;padding:3px 5px;font-weight:700;line-height:1}.controls-panel-module__PZ5PjG__content{overflow:hidden}.controls-panel-module__PZ5PjG__content[data-state=open]{animation:controls-panel-module__PZ5PjG__controls-expand var(--duration-standard) var(--ease-standard)}.controls-panel-module__PZ5PjG__content[data-state=closed]{animation:controls-panel-module__PZ5PjG__controls-collapse var(--duration-standard) var(--ease-standard)}@keyframes controls-panel-module__PZ5PjG__controls-expand{0%{opacity:0;height:0}to{height:var(--radix-collapsible-content-height);opacity:1}}@keyframes controls-panel-module__PZ5PjG__controls-collapse{0%{height:var(--radix-collapsible-content-height);opacity:1}to{opacity:0;height:0}}.controls-panel-module__PZ5PjG__groups{border-top:var(--border-width) solid var(--color-border);align-items:start;gap:var(--space-3);padding:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.controls-panel-module__PZ5PjG__group{align-content:start;gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.controls-panel-module__PZ5PjG__groupWide{flex:100%}.controls-panel-module__PZ5PjG__groupLabel{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700;line-height:1.3;display:block}html:lang(vi) .controls-panel-module__PZ5PjG__groupLabel{text-transform:none}.controls-panel-module__PZ5PjG__groupControls{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.controls-panel-module__PZ5PjG__trigger{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);height:var(--control-height);min-width:0;max-width:15rem;padding:0 var(--space-3);transition:background var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);align-items:center;gap:6px;display:inline-flex}.controls-panel-module__PZ5PjG__trigger:hover{border-color:var(--color-border-strong)}.controls-panel-module__PZ5PjG__trigger:disabled{cursor:not-allowed;opacity:.6}.controls-panel-module__PZ5PjG__trigger:focus-visible{border-color:var(--color-focus);box-shadow:var(--focus-ring);outline:0}.controls-panel-module__PZ5PjG__triggerActive{background:var(--color-surface-subtle);border-color:var(--color-border-strong)}.controls-panel-module__PZ5PjG__triggerLabel{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;flex-shrink:0;font-weight:700;line-height:1}html:lang(vi) .controls-panel-module__PZ5PjG__triggerLabel{text-transform:none}.controls-panel-module__PZ5PjG__triggerValue{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;line-height:1.2;overflow:hidden}.controls-panel-module__PZ5PjG__trigger:not(.controls-panel-module__PZ5PjG__triggerActive) .controls-panel-module__PZ5PjG__triggerValue{color:var(--color-text-muted);font-weight:400}.controls-panel-module__PZ5PjG__triggerIcon{color:var(--color-text-muted);flex-shrink:0;align-self:center}.controls-panel-module__PZ5PjG__triggerBadge{background:var(--color-action);border-radius:var(--radius-pill);color:var(--color-on-action,#fff);font-size:var(--text-xs);flex-shrink:0;align-self:center;padding:3px 5px;font-weight:700;line-height:1}.controls-panel-module__PZ5PjG__triggerChevron{color:var(--color-text-muted);transition:transform var(--duration-fast) var(--ease-standard);flex-shrink:0;align-self:center}.controls-panel-module__PZ5PjG__trigger[data-state=open] .controls-panel-module__PZ5PjG__triggerChevron{transform:rotate(180deg)}.controls-panel-module__PZ5PjG__popover{overscroll-behavior:contain;max-height:min(22rem,60svh);padding:var(--space-1);width:max-content;overflow-y:auto}.controls-panel-module__PZ5PjG__optionList{border:0;gap:1px;min-width:11rem;margin:0;padding:0;display:grid}.controls-panel-module__PZ5PjG__optionSearch{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font:inherit;inline-size:100%;min-block-size:var(--control-height);padding-inline:var(--space-2);margin-block-end:var(--space-2)}.controls-panel-module__PZ5PjG__optionSearch:focus-visible{border-color:var(--color-accent);outline:none}.controls-panel-module__PZ5PjG__optionEmpty{color:var(--color-text-muted);font-size:var(--text-sm);padding:var(--space-2);margin:0}.controls-panel-module__PZ5PjG__option{border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-size:var(--text-sm);align-items:center;gap:var(--space-2);min-height:2.25rem;padding:var(--space-2);-webkit-user-select:none;user-select:none;display:flex}.controls-panel-module__PZ5PjG__option:hover{background:var(--color-surface-subtle)}.controls-panel-module__PZ5PjG__optionInput{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.controls-panel-module__PZ5PjG__option:has(.controls-panel-module__PZ5PjG__optionInput:focus-visible){box-shadow:var(--focus-ring);outline:0}.controls-panel-module__PZ5PjG__optionCheck{color:var(--color-action);opacity:0;flex-shrink:0}.controls-panel-module__PZ5PjG__option:has(.controls-panel-module__PZ5PjG__optionInput:checked){font-weight:600}.controls-panel-module__PZ5PjG__option:has(.controls-panel-module__PZ5PjG__optionInput:checked) .controls-panel-module__PZ5PjG__optionCheck{opacity:1}.controls-panel-module__PZ5PjG__optionBox{border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-on-action,#fff);height:15px;transition:background var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);flex-shrink:0;justify-content:center;align-items:center;width:15px;display:inline-flex}.controls-panel-module__PZ5PjG__option:has(.controls-panel-module__PZ5PjG__optionInput:checked) .controls-panel-module__PZ5PjG__optionBox{background:var(--color-action);border-color:var(--color-action)}.controls-panel-module__PZ5PjG__optionBox .controls-panel-module__PZ5PjG__optionCheck{color:currentColor}.controls-panel-module__PZ5PjG__popoverFooter{border-top:var(--border-width) solid var(--color-border);margin-top:var(--space-1);padding-top:var(--space-1);justify-content:flex-end;display:flex}.controls-panel-module__PZ5PjG__calendarPopover{width:max-content;max-height:min(22rem,100svh - 6rem);padding:0;overflow:auto}.controls-panel-module__PZ5PjG__optionDot{border-radius:var(--radius-pill);flex-shrink:0;width:7px;height:7px}.controls-panel-module__PZ5PjG__optionLabel{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.controls-panel-module__PZ5PjG__tone_info{background:var(--color-info)}.controls-panel-module__PZ5PjG__tone_warning{background:var(--color-warning)}.controls-panel-module__PZ5PjG__tone_danger{background:var(--color-danger)}.controls-panel-module__PZ5PjG__tone_neutral{background:var(--color-text-muted)}.controls-panel-module__PZ5PjG__srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.controls-panel-module__PZ5PjG__chevron,.controls-panel-module__PZ5PjG__triggerIcon{color:var(--color-text-muted);flex-shrink:0;align-self:center}.controls-panel-module__PZ5PjG__triggerBadge{background:var(--color-action);border-radius:var(--radius-pill);color:var(--color-on-action,#fff);font-size:var(--text-xs);flex-shrink:0;align-self:center;padding:3px 5px;font-weight:700;line-height:1}.controls-panel-module__PZ5PjG__triggerChevron{transition:none}.controls-panel-module__PZ5PjG__content[data-state=open],.controls-panel-module__PZ5PjG__content[data-state=closed]{animation:none}}@media (max-width:720px){.controls-panel-module__PZ5PjG__header{align-items:flex-start;gap:var(--space-2);flex-direction:column}.controls-panel-module__PZ5PjG__groups{padding:var(--space-3);flex-direction:column;align-items:stretch}.controls-panel-module__PZ5PjG__group,.controls-panel-module__PZ5PjG__groupControls{width:100%}.controls-panel-module__PZ5PjG__trigger{width:100%;max-width:none}}
.timetable-page-module__lJKUza__content{gap:var(--space-5);padding:var(--space-5) 0 var(--space-7);display:grid}.timetable-page-module__lJKUza__pinnedSurface{min-width:0;padding:var(--space-4)}.timetable-page-module__lJKUza__pinnedSurface .timetable-page-module__lJKUza__content{padding:0 0 var(--space-4)}.timetable-page-module__lJKUza__skeleton{gap:var(--space-5);display:grid}.timetable-page-module__lJKUza__skeletonStats{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));display:grid}.timetable-page-module__lJKUza__skeletonStats>*{border-radius:var(--radius-md);height:4.75rem}.timetable-page-module__lJKUza__skeletonControls{border-radius:var(--radius-md);height:7.5rem}.timetable-page-module__lJKUza__skeletonGrid{gap:var(--space-2);display:grid}.timetable-page-module__lJKUza__skeletonGrid>*{border-radius:var(--radius-sm);height:3.25rem}.timetable-page-module__lJKUza__statGrid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));margin:0;display:grid}.timetable-page-module__lJKUza__stat{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);gap:var(--space-1);padding:var(--space-3) var(--space-4);display:grid}.timetable-page-module__lJKUza__statValue{color:var(--color-text);font-family:var(--font-subhead);font-variant-numeric:tabular-nums;font-size:var(--text-xl);letter-spacing:-.01em;margin:0;font-weight:700;line-height:1.1}.timetable-page-module__lJKUza__statAccent,.timetable-page-module__lJKUza__statWarning{color:var(--color-warning-text,var(--color-warning))}.timetable-page-module__lJKUza__statLabel{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:0;font-weight:700;line-height:1.3}html:lang(vi) .timetable-page-module__lJKUza__statLabel{text-transform:none}.timetable-page-module__lJKUza__statDetail{color:var(--color-text-muted);font-size:var(--text-xs);margin:2px 0 0;line-height:1.35}.timetable-page-module__lJKUza__periodLabel{color:var(--color-text);font-size:var(--text-md);letter-spacing:-.01em;font-weight:700}.timetable-page-module__lJKUza__navCluster{background:var(--color-surface-subtle);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);height:var(--control-height);align-items:stretch;gap:2px;padding:2px;display:inline-flex}.timetable-page-module__lJKUza__navButton,.timetable-page-module__lJKUza__navToday{border-radius:var(--radius-pill);color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-sm);transition:background var(--duration-fast) var(--ease-standard);background:0 0;border:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.timetable-page-module__lJKUza__navButton{width:calc(var(--control-height) - .375rem)}.timetable-page-module__lJKUza__navToday{padding:0 var(--space-3)}.timetable-page-module__lJKUza__navButton:hover,.timetable-page-module__lJKUza__navToday:hover{background:var(--color-surface);color:var(--color-text)}.timetable-page-module__lJKUza__navButton:focus-visible,.timetable-page-module__lJKUza__navToday:focus-visible{box-shadow:var(--focus-ring);outline:0}.timetable-page-module__lJKUza__navButton:disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.4;background:0 0}.timetable-page-module__lJKUza__chip{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);font-size:var(--text-sm);padding:4px var(--space-3) 4px var(--space-2);transition:background var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);align-items:center;gap:6px;font-weight:600;display:inline-flex}.timetable-page-module__lJKUza__chip:hover{border-color:var(--color-border-strong);color:var(--color-text)}.timetable-page-module__lJKUza__chipActive{background:var(--color-surface-subtle);border-color:var(--color-border-strong);color:var(--color-text)}.timetable-page-module__lJKUza__chip:focus-visible{box-shadow:var(--focus-ring);outline:0}.timetable-page-module__lJKUza__chipDot{border-radius:var(--radius-pill);width:7px;height:7px}.timetable-page-module__lJKUza__dot_scheduled{background:var(--color-info)}.timetable-page-module__lJKUza__dot_covered,.timetable-page-module__lJKUza__dot_roomChanged{background:var(--color-warning)}.timetable-page-module__lJKUza__dot_cancelled{background:var(--color-danger)}.timetable-page-module__lJKUza__field{gap:var(--space-1);min-width:0;display:grid}.timetable-page-module__lJKUza__field select{appearance:none;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);letter-spacing:0;max-width:14rem;min-height:2rem;padding:var(--space-1) var(--space-3);text-transform:none;width:100%;font-weight:400}.timetable-page-module__lJKUza__field select:focus{border-color:var(--color-focus);box-shadow:var(--focus-ring);outline:0}.timetable-page-module__lJKUza__blankState{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);gap:var(--space-1);padding:var(--space-6) var(--space-5);text-align:center;justify-items:center;display:grid}.timetable-page-module__lJKUza__blankTitle{color:var(--color-text);font-family:var(--font-subhead);font-size:var(--text-md);margin:0;font-weight:700}.timetable-page-module__lJKUza__blankDescription{color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--leading-body);max-width:32rem;margin:0}.timetable-page-module__lJKUza__gridFrame{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-surface);min-width:0;overflow:hidden}.timetable-page-module__lJKUza__gridToolbar{border-bottom:var(--border-width) solid var(--color-border);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);justify-content:space-between;display:flex}.timetable-page-module__lJKUza__gridToolbarActions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.timetable-page-module__lJKUza__gridToolbarLabel{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);align-items:baseline;gap:var(--space-2);letter-spacing:var(--tracking-label);text-transform:uppercase;flex-wrap:wrap;margin:0;font-weight:700;display:flex}html:lang(vi) .timetable-page-module__lJKUza__gridToolbarLabel{text-transform:none}.timetable-page-module__lJKUza__gridToolbarNote{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:0;text-transform:none;font-weight:400}.timetable-page-module__lJKUza__progress{background:var(--color-surface-subtle);height:2px;overflow:hidden}.timetable-page-module__lJKUza__progressBar{animation:timetable-page-module__lJKUza__timetable-progress 1.1s var(--ease-standard) infinite;background:var(--color-action);width:35%;height:100%;display:block}@keyframes timetable-page-module__lJKUza__timetable-progress{0%{transform:translate(-100%)}to{transform:translate(340%)}}.timetable-page-module__lJKUza__scheduleScroller{overscroll-behavior:contain;scrollbar-gutter:stable both-edges;scrollbar-color:var(--color-border-strong) var(--color-surface-subtle);touch-action:pan-x pan-y;max-height:min(62svh,43rem);overflow:auto}.timetable-page-module__lJKUza__scheduleGrid{min-width:max-content;display:grid;position:relative}.timetable-page-module__lJKUza__timeCorner,.timetable-page-module__lJKUza__dayHeading{background:color-mix(in srgb, var(--color-surface-subtle) 84%, var(--color-surface));border-bottom:var(--border-width) solid var(--color-border);min-height:2.75rem;padding:var(--space-2) var(--space-3);position:sticky;top:0}.timetable-page-module__lJKUza__timeCorner{border-right:var(--border-width) solid var(--color-border);color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;z-index:7;grid-column:1;align-items:end;font-weight:700;display:flex}html:lang(vi) .timetable-page-module__lJKUza__timeCorner{text-transform:none}.timetable-page-module__lJKUza__dayHeading{border-right:var(--border-width) solid var(--color-border);color:var(--color-text);font-size:var(--text-sm);align-items:start;gap:var(--space-2);z-index:6;flex-wrap:wrap;font-weight:700;line-height:1.3;display:flex}.timetable-page-module__lJKUza__dayHeading:last-of-type{border-right:0}.timetable-page-module__lJKUza__currentDay{background:color-mix(in srgb, var(--color-info-surface) 52%, var(--color-surface-subtle))}.timetable-page-module__lJKUza__todayMarker{color:var(--color-info);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .timetable-page-module__lJKUza__todayMarker{text-transform:none}.timetable-page-module__lJKUza__timeAxis{background:var(--color-surface-subtle);border-bottom:var(--border-width) solid var(--color-border);border-right:var(--border-width) solid var(--color-border);min-height:3.75rem;padding:var(--space-1) var(--space-2);z-index:5;align-content:center;gap:1px;display:grid;position:sticky;left:0}.timetable-page-module__lJKUza__periodNumber{color:var(--color-text-muted);font-family:var(--font-subhead);font-variant-numeric:tabular-nums;font-size:var(--text-base);font-weight:700;line-height:1}.timetable-page-module__lJKUza__periodTime{color:var(--color-text-muted);font-size:var(--text-xs);white-space:nowrap;line-height:1.2}.timetable-page-module__lJKUza__breakAxis,.timetable-page-module__lJKUza__breakBand{background:var(--color-surface-subtle);min-height:0}.timetable-page-module__lJKUza__breakAxis{padding-block:var(--space-1)}.timetable-page-module__lJKUza__breakBand{border-bottom:var(--border-width) solid var(--color-border)}.timetable-page-module__lJKUza__breakLabel{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700;line-height:1.2}html:lang(vi) .timetable-page-module__lJKUza__breakLabel{text-transform:none}.timetable-page-module__lJKUza__divisionHeading{background:var(--color-surface-subtle);border-bottom:var(--border-width) solid var(--color-border);color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);padding:var(--space-2);text-transform:uppercase;z-index:6;font-weight:700;position:sticky;left:0}html:lang(vi) .timetable-page-module__lJKUza__divisionHeading{text-transform:none}.timetable-page-module__lJKUza__timeBoard{--minute-height:2.4px;--board-height:calc(var(--axis-minutes) * var(--minute-height));background:var(--color-border);gap:1px;min-width:max-content;display:grid}.timetable-page-module__lJKUza__timeBoardExpanded{--minute-height:2.8px}.timetable-page-module__lJKUza__hourGutter{background:var(--color-surface-subtle);border-right:var(--border-width) solid var(--color-border);height:var(--board-height);z-index:5;position:sticky;left:0}.timetable-page-module__lJKUza__hourTick{color:var(--color-text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;padding:4px var(--space-2) 0;white-space:nowrap;line-height:1;position:absolute;right:0}.timetable-page-module__lJKUza__dayColumn{background:var(--color-surface);height:var(--board-height);background-image:linear-gradient(to bottom, color-mix(in srgb, var(--color-border) 55%, transparent) 0 1px, transparent 1px 100%), linear-gradient(to bottom, color-mix(in srgb, var(--color-border) 26%, transparent) 0 1px, transparent 1px 100%);background-size:100% calc(100% / var(--hour-count)), 100% calc(100% / var(--hour-count) / 2);margin:0;padding:0;list-style:none;position:relative;overflow:hidden}.timetable-page-module__lJKUza__nowLine{background:var(--color-danger);pointer-events:none;z-index:1;height:2px;list-style:none;position:absolute;inset-inline:0}.timetable-page-module__lJKUza__nowLabel{background:var(--color-danger);color:var(--color-surface);font-size:var(--text-xs);font-variant-numeric:tabular-nums;padding:1px var(--space-2);pointer-events:none;text-align:end;z-index:4;position:absolute;inset-inline:0;transform:translateY(-50%)}.timetable-page-module__lJKUza__scheduleCell{background:var(--color-surface);border-bottom:var(--border-width) solid var(--color-border);border-right:var(--border-width) solid var(--color-border);min-height:3.75rem;padding:3px;position:relative}.timetable-page-module__lJKUza__weekendHeading,.timetable-page-module__lJKUza__weekendCell{background:var(--color-surface-subtle)}.timetable-page-module__lJKUza__emptyDash{background:var(--color-border);width:1rem;height:1px;margin:auto;display:block}.timetable-page-module__lJKUza__cellEmpty{justify-content:center;align-items:center;height:100%;display:flex}.timetable-page-module__lJKUza__currentPeriod{background:color-mix(in srgb, var(--color-info-surface) 44%, var(--color-surface));box-shadow:inset 3px 0 var(--color-info)}.timetable-page-module__lJKUza__currentTimeAxis{background:color-mix(in srgb, var(--color-info-surface) 55%, var(--color-surface-subtle));box-shadow:inset 3px 0 var(--color-info)}.timetable-page-module__lJKUza__currentTimeAxis .timetable-page-module__lJKUza__periodNumber,.timetable-page-module__lJKUza__currentTimeAxis .timetable-page-module__lJKUza__periodTime,.timetable-page-module__lJKUza__currentTimeAxis .timetable-page-module__lJKUza__breakLabel{color:var(--color-info)}.timetable-page-module__lJKUza__currentTimeAxisLabel{color:var(--color-info);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .timetable-page-module__lJKUza__currentTimeAxisLabel{text-transform:none}.timetable-page-module__lJKUza__lessonList{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.timetable-page-module__lJKUza__lesson{background:color-mix(in srgb, var(--color-info-surface) 55%, transparent);border-radius:var(--radius-sm);border-left:3px solid var(--color-info);min-width:0}.timetable-page-module__lJKUza__coveredLesson,.timetable-page-module__lJKUza__changedLesson{background:color-mix(in srgb, var(--color-warning-surface) 55%, transparent);border-left-color:var(--color-warning)}.timetable-page-module__lJKUza__cancelledLesson{background:color-mix(in srgb, var(--color-danger-surface) 40%, transparent);border-left-color:var(--color-danger);opacity:.75}.timetable-page-module__lJKUza__markedLesson{background:color-mix(in srgb, var(--color-success-surface) 50%, transparent);border-left-color:var(--color-success)}.timetable-page-module__lJKUza__timeBlock{outline:1px solid var(--color-surface);z-index:2;background:color-mix(in srgb, var(--color-info-surface) 55%, var(--color-surface));min-height:1.4rem;margin:0;padding:0;position:absolute;overflow:hidden;container-type:size}.timetable-page-module__lJKUza__timeBlock.timetable-page-module__lJKUza__coveredLesson,.timetable-page-module__lJKUza__timeBlock.timetable-page-module__lJKUza__changedLesson{background:color-mix(in srgb, var(--color-warning-surface) 55%, var(--color-surface))}.timetable-page-module__lJKUza__timeBlock.timetable-page-module__lJKUza__cancelledLesson{background:color-mix(in srgb, var(--color-danger-surface) 40%, var(--color-surface))}.timetable-page-module__lJKUza__timeBlock.timetable-page-module__lJKUza__markedLesson{background:color-mix(in srgb, var(--color-success-surface) 50%, var(--color-surface))}.timetable-page-module__lJKUza__timeBlock .timetable-page-module__lJKUza__lessonLink{padding:var(--space-1) var(--space-2);gap:1px}.timetable-page-module__lJKUza__timeBlock h4{line-height:1.25}.timetable-page-module__lJKUza__timeBlock .timetable-page-module__lJKUza__lessonMeta{overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap;line-height:1.25;overflow:hidden}.timetable-page-module__lJKUza__timeBlock .timetable-page-module__lJKUza__lessonTime{font-size:.6875rem}@container (max-height:6.25rem){.timetable-page-module__lJKUza__timeBlock h4{-webkit-line-clamp:1}.timetable-page-module__lJKUza__timeBlock .timetable-page-module__lJKUza__lessonCover{display:none}}@container (max-height:4.9rem){.timetable-page-module__lJKUza__timeBlock .timetable-page-module__lJKUza__lessonTime{display:none}}@container (max-height:3.9rem){.timetable-page-module__lJKUza__timeBlock .timetable-page-module__lJKUza__lessonMeta{display:none}}@container (max-height:2.7rem){.timetable-page-module__lJKUza__timeBlock .timetable-page-module__lJKUza__lessonBadges{display:none}}.timetable-page-module__lJKUza__cancelledTitle{text-decoration:line-through}.timetable-page-module__lJKUza__lessonLink{color:inherit;padding:var(--space-2);gap:2px;text-decoration:none;display:grid}.timetable-page-module__lJKUza__lessonLink:hover{background:var(--color-surface-subtle)}.timetable-page-module__lJKUza__lessonLink:focus-visible{box-shadow:inset 0 0 0 3px var(--color-focus);outline:0}.timetable-page-module__lJKUza__lesson h4,.timetable-page-module__lJKUza__lessonMeta,.timetable-page-module__lJKUza__cellEmpty{margin:0}.timetable-page-module__lJKUza__lesson h4{color:var(--color-text);font-size:var(--text-xs);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box;overflow:hidden}.timetable-page-module__lJKUza__lessonMeta{color:var(--color-text-muted);font-size:var(--text-xs);overflow-wrap:anywhere;line-height:1.3}.timetable-page-module__lJKUza__lessonTime{font-variant-numeric:tabular-nums}.timetable-page-module__lJKUza__lessonCover{min-width:0}.timetable-page-module__lJKUza__lessonBadges{flex-wrap:wrap;gap:2px;display:flex}.timetable-page-module__lJKUza__lessonBadges:not(:empty){margin-top:2px}.timetable-page-module__lJKUza__legend{border-top:var(--border-width) solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-xs);align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.timetable-page-module__lJKUza__legendItem{align-items:center;gap:var(--space-2);display:flex}.timetable-page-module__lJKUza__legendSwatch{border-radius:3px;width:9px;height:9px}.timetable-page-module__lJKUza__legendScheduled{background:var(--color-info)}.timetable-page-module__lJKUza__legendChanged{background:var(--color-warning)}.timetable-page-module__lJKUza__legendCancelled{background:var(--color-danger)}.timetable-page-module__lJKUza__legendRecorded{background:var(--color-success)}.timetable-page-module__lJKUza__hoverCard{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay);gap:var(--space-2);max-width:19rem;padding:var(--space-3);z-index:90;display:grid}.timetable-page-module__lJKUza__hoverCardArrow{fill:var(--color-surface)}.timetable-page-module__lJKUza__hoverCardEyebrow{color:var(--color-text-muted);font-family:var(--font-subhead);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:0}html:lang(vi) .timetable-page-module__lJKUza__hoverCardEyebrow{text-transform:none}.timetable-page-module__lJKUza__hoverCardTitle{color:var(--color-text);font-size:var(--text-base);margin:0;font-weight:700}.timetable-page-module__lJKUza__hoverCardBadges{gap:var(--space-1);flex-wrap:wrap;display:flex}.timetable-page-module__lJKUza__hoverCardBadges:empty{display:none}.timetable-page-module__lJKUza__hoverCardRows{gap:var(--space-1);margin:0;display:grid}.timetable-page-module__lJKUza__hoverCardRows>div{gap:var(--space-2);justify-content:space-between;display:flex}.timetable-page-module__lJKUza__hoverCardRows dt{color:var(--color-text-muted);font-size:var(--text-xs)}.timetable-page-module__lJKUza__hoverCardRows dd{color:var(--color-text);font-size:var(--text-xs);text-align:end;margin:0;font-weight:600}.timetable-page-module__lJKUza__hoverCardReason{border-top:var(--border-width) solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-xs);padding-top:var(--space-2);margin:0}.timetable-page-module__lJKUza__scheduleOverlay{animation:timetable-page-module__lJKUza__scrim-in var(--duration-fast) var(--ease-standard);background:var(--color-scrim);z-index:80;position:fixed;inset:0}.timetable-page-module__lJKUza__scheduleDialog{animation:timetable-page-module__lJKUza__dialog-enter var(--duration-standard) var(--ease-standard);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-overlay);inset:clamp(var(--space-3), 4vw, var(--space-7));z-index:81;outline:0;min-height:0;display:grid;position:fixed;overflow:hidden}.timetable-page-module__lJKUza__dialogHeader{border-bottom:var(--border-width) solid var(--color-border);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);justify-content:space-between;display:flex}.timetable-page-module__lJKUza__dialogTitle{color:var(--color-text);font-size:var(--text-lg);margin:0;font-weight:700}.timetable-page-module__lJKUza__dialogClose{border:var(--border-width) solid transparent;border-radius:var(--radius-sm);color:var(--color-text-muted);background:0 0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;padding:0;display:inline-flex}.timetable-page-module__lJKUza__dialogClose:hover{background:var(--color-surface-subtle);color:var(--color-text)}.timetable-page-module__lJKUza__scheduleDialog .timetable-page-module__lJKUza__scheduleScroller{min-height:0;max-height:none}.timetable-page-module__lJKUza__slideForward{animation:timetable-page-module__lJKUza__timetable-enter-forward var(--duration-standard) var(--ease-standard)}.timetable-page-module__lJKUza__slideBackward{animation:timetable-page-module__lJKUza__timetable-enter-backward var(--duration-standard) var(--ease-standard)}.timetable-page-module__lJKUza__srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes timetable-page-module__lJKUza__timetable-enter-forward{0%{opacity:.64;transform:translate(.8rem)}}@keyframes timetable-page-module__lJKUza__timetable-enter-backward{0%{opacity:.64;transform:translate(-.8rem)}}@keyframes timetable-page-module__lJKUza__dialog-enter{0%{opacity:0;transform:translateY(.5rem)scale(.99)}}@media (prefers-reduced-motion:reduce){.timetable-page-module__lJKUza__scheduleOverlay,.timetable-page-module__lJKUza__scheduleDialog,.timetable-page-module__lJKUza__slideForward,.timetable-page-module__lJKUza__slideBackward{animation:none}}@media (max-width:720px){.timetable-page-module__lJKUza__content{padding-top:var(--space-6)}.timetable-page-module__lJKUza__scheduleScroller{max-height:min(59svh,38rem)}}@media (max-width:480px){.timetable-page-module__lJKUza__gridToolbar{flex-direction:column;align-items:stretch}.timetable-page-module__lJKUza__gridToolbarActions,.timetable-page-module__lJKUza__gridToolbar>button{width:100%}.timetable-page-module__lJKUza__scheduleDialog{border-radius:var(--radius-lg) var(--radius-lg) 0 0;min-height:min(38rem,82svh);max-height:92svh;inset:auto 0 0}}
.data-state-module__OsnIBq__state{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-6) var(--space-5);text-align:center}.data-state-module__OsnIBq__forbidden{border-color:color-mix(in srgb, var(--color-danger) 42%, var(--color-border))}.data-state-module__OsnIBq__eyebrow{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:0;font-weight:700;line-height:1.25}html:lang(vi) .data-state-module__OsnIBq__eyebrow{text-transform:none}.data-state-module__OsnIBq__title{color:var(--color-text);font-family:var(--font-display);font-size:var(--text-lg);font-weight:400;line-height:var(--leading-display);margin:0}.data-state-module__OsnIBq__eyebrow+.data-state-module__OsnIBq__title{margin-top:var(--space-2)}.data-state-module__OsnIBq__description{color:var(--color-text-muted);line-height:var(--leading-body);margin:var(--space-3) auto 0;max-width:42rem}.data-state-module__OsnIBq__actions{margin-top:var(--space-5)}
.merit-record-module__Sx8JOa__record{gap:var(--space-4);display:grid}.merit-record-module__Sx8JOa__scoreCard{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5)}.merit-record-module__Sx8JOa__scoreLayout{align-items:center;gap:var(--space-6);display:flex}.merit-record-module__Sx8JOa__scoreHero{border-right:var(--border-width) solid var(--color-border);padding-right:var(--space-6);flex:none;justify-items:center;display:grid}.merit-record-module__Sx8JOa__scoreValue{font-family:var(--font-subhead);font-variant-numeric:tabular-nums;font-size:3.5rem;font-weight:700;line-height:1}.merit-record-module__Sx8JOa__scoreCaption{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);margin-top:var(--space-2);text-transform:uppercase;font-weight:700}html:lang(vi) .merit-record-module__Sx8JOa__scoreCaption{text-transform:none}.merit-record-module__Sx8JOa__scoreToneSuccess{color:var(--color-success)}.merit-record-module__Sx8JOa__scoreToneWarning{color:var(--color-warning)}.merit-record-module__Sx8JOa__scoreToneDanger{color:var(--color-danger)}.merit-record-module__Sx8JOa__scoreLedger{gap:var(--space-2);flex:1;min-width:0;margin:0;display:grid}.merit-record-module__Sx8JOa__scoreRow{align-items:baseline;gap:var(--space-4);display:flex}.merit-record-module__Sx8JOa__scoreRow dt{color:var(--color-text-muted);font-size:var(--text-sm);flex:0 0 12rem}.merit-record-module__Sx8JOa__scoreRow dd{font-family:var(--font-subhead);font-size:var(--text-md);font-variant-numeric:tabular-nums;align-items:baseline;gap:var(--space-3);margin:0;font-weight:700;display:flex}.merit-record-module__Sx8JOa__scoreRow dd small{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-xs);font-weight:400}.merit-record-module__Sx8JOa__scoreTotal{border-top:var(--border-width) solid var(--color-border);padding-top:var(--space-2)}.merit-record-module__Sx8JOa__scoreTotal dt{color:var(--color-text);font-weight:600}.merit-record-module__Sx8JOa__scoreTotal dd{font-size:var(--text-lg)}.merit-record-module__Sx8JOa__scoreFootnote{color:var(--color-text-muted);font-size:var(--text-sm);margin:var(--space-3) 0 0}.merit-record-module__Sx8JOa__tabList{border-bottom:var(--border-width) solid var(--color-border);gap:var(--space-2);display:flex;overflow-x:auto}.merit-record-module__Sx8JOa__tab{color:var(--color-text-muted);cursor:pointer;font-family:var(--font-subhead);font-size:var(--text-sm);align-items:center;gap:var(--space-2);min-height:var(--control-height,2.75rem);padding:var(--space-2) var(--space-3);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;font-weight:600;display:flex}.merit-record-module__Sx8JOa__tab:hover{color:var(--color-text)}.merit-record-module__Sx8JOa__tab:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--color-focus);outline-offset:-2px}.merit-record-module__Sx8JOa__tab[aria-selected=true]{border-bottom-color:var(--color-action);color:var(--color-text)}.merit-record-module__Sx8JOa__tabCount{background:var(--color-surface-subtle);border:var(--border-width) solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;padding:var(--space-1) var(--space-2);border-radius:999px;line-height:1}.merit-record-module__Sx8JOa__tab[aria-selected=true] .merit-record-module__Sx8JOa__tabCount{background:var(--color-action);border-color:var(--color-action);color:var(--color-action-text)}.merit-record-module__Sx8JOa__tabPanel{gap:var(--space-3);display:grid}.merit-record-module__Sx8JOa__filterRow{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.merit-record-module__Sx8JOa__timeline{gap:var(--space-3);display:grid}.merit-record-module__Sx8JOa__tableScroll{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.merit-record-module__Sx8JOa__recordTable{border-collapse:collapse;width:max-content;min-width:100%}.merit-record-module__Sx8JOa__recordTable th{background:var(--color-surface-subtle);color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);padding:var(--space-2) var(--space-3);text-align:left;text-transform:uppercase;white-space:nowrap;font-weight:700}html:lang(vi) .merit-record-module__Sx8JOa__recordTable th{text-transform:none}.merit-record-module__Sx8JOa__recordTable td{border-top:var(--border-width) solid var(--color-border);padding:var(--space-3);vertical-align:top}.merit-record-module__Sx8JOa__dateCell{color:var(--color-text-muted);white-space:nowrap}.merit-record-module__Sx8JOa__descriptionColumn{min-width:16rem}.merit-record-module__Sx8JOa__descriptionCell{gap:var(--space-1);display:grid}.merit-record-module__Sx8JOa__descriptionCell strong{overflow-wrap:anywhere}.merit-record-module__Sx8JOa__descriptionCell p{color:var(--color-text-muted);font-size:var(--text-sm);white-space:pre-wrap;margin:0}.merit-record-module__Sx8JOa__levelCell{gap:var(--space-1);justify-items:start;display:grid}.merit-record-module__Sx8JOa__levelCell small{color:var(--color-text-muted);font-size:var(--text-xs)}.merit-record-module__Sx8JOa__deltaGain{color:var(--color-success)}.merit-record-module__Sx8JOa__deltaLoss{color:var(--color-danger)}.merit-record-module__Sx8JOa__deltaNeutral{color:var(--color-text-muted)}.merit-record-module__Sx8JOa__inlineError{background:var(--color-danger-surface);border:var(--border-width) solid var(--color-danger);border-radius:var(--radius-md);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);flex-wrap:wrap;justify-content:space-between;display:flex}.merit-record-module__Sx8JOa__inlineError p{margin:0}.merit-record-module__Sx8JOa__listSkeleton{gap:var(--space-2);display:grid}.merit-record-module__Sx8JOa__listSkeleton>*{height:4rem}.merit-record-module__Sx8JOa__scoreSkeleton{height:8rem;display:block}@media (max-width:620px){.merit-record-module__Sx8JOa__scoreLayout{gap:var(--space-4);flex-direction:column}.merit-record-module__Sx8JOa__scoreHero{border-right:0;padding-right:0}.merit-record-module__Sx8JOa__scoreRow dt{flex-basis:8rem}}
.detail-section-module__dL7wxW__section{gap:var(--space-5);display:grid}.detail-section-module__dL7wxW__header{align-items:end;gap:var(--space-5);justify-content:space-between;display:flex}.detail-section-module__dL7wxW__title{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-lg);margin:0;font-weight:600;line-height:1.25}.detail-section-module__dL7wxW__description{color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--leading-body);margin:var(--space-2) 0 0;max-width:42rem}.detail-section-module__dL7wxW__actions{flex:none}.detail-section-module__dL7wxW__content{min-width:0}@media (max-width:640px){.detail-section-module__dL7wxW__header{flex-direction:column;align-items:flex-start}}
.page-header-module__hOVKbq__header{align-items:end;gap:var(--space-4);justify-content:space-between;display:flex}.page-header-module__hOVKbq__title{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-xl);letter-spacing:-.02em;margin:0;font-weight:600;line-height:1.18}.page-header-module__hOVKbq__description{color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--leading-body);margin:var(--space-2) 0 0;max-width:43rem}.page-header-module__hOVKbq__actions{flex:none}@media (max-width:640px){.page-header-module__hOVKbq__header{flex-direction:column;align-items:flex-start}}
.workflow-register-module__t7nJ2G__content,.workflow-register-module__t7nJ2G__detailStack,.workflow-register-module__t7nJ2G__form{gap:var(--space-4);display:grid}.workflow-register-module__t7nJ2G__formGrid,.workflow-register-module__t7nJ2G__detailGrid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));display:grid}.workflow-register-module__t7nJ2G__field,.workflow-register-module__t7nJ2G__textField{gap:var(--space-1);min-width:0;display:grid}.workflow-register-module__t7nJ2G__field>span,.workflow-register-module__t7nJ2G__textField>label,.workflow-register-module__t7nJ2G__detailGrid dt{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .workflow-register-module__t7nJ2G__field>span,html:lang(vi) .workflow-register-module__t7nJ2G__textField>label,html:lang(vi) .workflow-register-module__t7nJ2G__detailGrid dt{text-transform:none}.workflow-register-module__t7nJ2G__field input,.workflow-register-module__t7nJ2G__field select,.workflow-register-module__t7nJ2G__field textarea,.workflow-register-module__t7nJ2G__textField textarea{background:var(--color-surface);border:var(--border-width) solid var(--color-border-strong,var(--color-border));border-radius:var(--radius-md);color:var(--color-text);font:inherit;min-height:var(--control-height);padding:0 var(--space-3);width:100%}.workflow-register-module__t7nJ2G__textField textarea,.workflow-register-module__t7nJ2G__field textarea{min-height:7rem;padding:var(--space-2) var(--space-3);resize:vertical}.workflow-register-module__t7nJ2G__field input:focus-visible,.workflow-register-module__t7nJ2G__field select:focus-visible,.workflow-register-module__t7nJ2G__field textarea:focus-visible,.workflow-register-module__t7nJ2G__textField textarea:focus-visible,.workflow-register-module__t7nJ2G__registerRow:focus-visible{border-color:var(--color-accent);box-shadow:var(--focus-ring);outline:0}.workflow-register-module__t7nJ2G__notificationUnread{box-shadow:inset .1875rem 0 0 var(--color-action)}.workflow-register-module__t7nJ2G__formActions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.workflow-register-module__t7nJ2G__fieldError,.workflow-register-module__t7nJ2G__fieldHint{font-size:var(--text-sm);margin:0}.workflow-register-module__t7nJ2G__fieldError{color:var(--color-danger)}.workflow-register-module__t7nJ2G__fieldHint{color:var(--color-text-muted)}.workflow-register-module__t7nJ2G__picker,.workflow-register-module__t7nJ2G__pickerSelection{gap:var(--space-2);display:grid}.workflow-register-module__t7nJ2G__pickerChosen{background:var(--color-surface-subtle);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);align-items:center;gap:var(--space-3);padding:var(--space-3);justify-content:space-between;display:flex}.workflow-register-module__t7nJ2G__pickerLabel{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .workflow-register-module__t7nJ2G__pickerLabel{text-transform:none}.workflow-register-module__t7nJ2G__pickerMeta,.workflow-register-module__t7nJ2G__pickerCount,.workflow-register-module__t7nJ2G__pickerEmpty{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.workflow-register-module__t7nJ2G__pickerMeta{display:block}.workflow-register-module__t7nJ2G__pickerList{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);max-height:16rem;margin:0;padding:0;list-style:none;overflow-y:auto}.workflow-register-module__t7nJ2G__pickerList li+li{border-top:var(--border-width) solid var(--color-border)}.workflow-register-module__t7nJ2G__pickerOption{color:inherit;cursor:pointer;gap:var(--space-1);min-height:var(--control-height);padding:var(--space-3) var(--space-4);text-align:start;background:0 0;border:0;width:100%;display:grid}.workflow-register-module__t7nJ2G__pickerOption:hover{background:var(--color-surface-subtle)}.workflow-register-module__t7nJ2G__pickerOption:focus-visible{box-shadow:var(--focus-ring);outline:0}.workflow-register-module__t7nJ2G__pickerSkeleton{gap:var(--space-2);display:grid}.workflow-register-module__t7nJ2G__pickerSkeleton>*{height:3rem}.workflow-register-module__t7nJ2G__registerList{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);margin:0;padding:0;list-style:none}.workflow-register-module__t7nJ2G__registerList li+li{border-top:var(--border-width) solid var(--color-border)}.workflow-register-module__t7nJ2G__registerRow{color:inherit;cursor:pointer;align-items:center;gap:var(--space-4);min-height:var(--control-height);padding:var(--space-3) var(--space-4);text-align:start;background:0 0;border:0;justify-content:space-between;width:100%;display:flex}.workflow-register-module__t7nJ2G__registerRow:hover{background:var(--color-surface-subtle)}.workflow-register-module__t7nJ2G__registerRowOpen{background:var(--color-notice-surface);box-shadow:inset 3px 0 0 var(--color-accent)}.workflow-register-module__t7nJ2G__registerPrimary,.workflow-register-module__t7nJ2G__registerMeta{gap:var(--space-1);min-width:0;display:grid}.workflow-register-module__t7nJ2G__registerPrimary strong,.workflow-register-module__t7nJ2G__detailGrid dd{overflow-wrap:anywhere}.workflow-register-module__t7nJ2G__registerMeta{color:var(--color-text-muted);font-size:var(--text-sm);flex:none;place-items:end}.workflow-register-module__t7nJ2G__detailGrid{margin:0}.workflow-register-module__t7nJ2G__detailGrid>div{min-width:0}.workflow-register-module__t7nJ2G__detailGrid dd{margin:var(--space-1) 0 0;white-space:pre-wrap}.workflow-register-module__t7nJ2G__detailWide{grid-column:1/-1}.workflow-register-module__t7nJ2G__skeleton{gap:var(--space-2);display:grid}.workflow-register-module__t7nJ2G__skeleton>*{height:4rem}@media (max-width:34rem){.workflow-register-module__t7nJ2G__registerRow{align-items:start;gap:var(--space-2);flex-direction:column}.workflow-register-module__t7nJ2G__registerMeta{place-items:start}}.workflow-register-module__t7nJ2G__formColumn{gap:var(--space-4);min-width:0;display:grid}.workflow-register-module__t7nJ2G__section{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-surface);gap:var(--space-4);padding:var(--space-4) var(--space-5);display:grid}.workflow-register-module__t7nJ2G__sectionHead{align-items:center;gap:var(--space-2);display:flex}.workflow-register-module__t7nJ2G__sectionHead svg{color:var(--color-accent);width:1rem;height:1rem}.workflow-register-module__t7nJ2G__sectionTitle{color:var(--color-text);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .workflow-register-module__t7nJ2G__sectionTitle{text-transform:none}.workflow-register-module__t7nJ2G__sectionField{gap:var(--space-2);min-width:0;display:grid}.workflow-register-module__t7nJ2G__detailRow{align-items:end;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));display:grid}.workflow-register-module__t7nJ2G__chipGroup{gap:var(--space-2);border:0;flex-wrap:wrap;min-width:0;margin:0;padding:0;display:flex}.workflow-register-module__t7nJ2G__chip{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);cursor:pointer;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard);display:inline-flex;position:relative}.workflow-register-module__t7nJ2G__chip:hover{border-color:var(--color-border-strong)}.workflow-register-module__t7nJ2G__chip input{opacity:0;pointer-events:none;position:absolute;inset:0}.workflow-register-module__t7nJ2G__chipSelected{background:var(--color-notice-surface);border-color:var(--color-accent)}.workflow-register-module__t7nJ2G__chip:has(input:focus-visible){box-shadow:var(--focus-ring);outline:0}.workflow-register-module__t7nJ2G__dropzone{background:var(--color-surface-subtle);border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);display:flex}.workflow-register-module__t7nJ2G__dropzone:hover{background:var(--color-notice-surface);border-color:var(--color-accent)}.workflow-register-module__t7nJ2G__dropzone:has(input:focus-visible){box-shadow:var(--focus-ring);outline:0}.workflow-register-module__t7nJ2G__dropzone svg{color:var(--color-accent);flex:none;width:1.25rem;height:1.25rem}.workflow-register-module__t7nJ2G__dropzone input{display:none}.workflow-register-module__t7nJ2G__dropzoneText{gap:2px;min-width:0;display:grid}.workflow-register-module__t7nJ2G__dropzoneText strong{color:var(--color-text);overflow-wrap:anywhere}.workflow-register-module__t7nJ2G__dropzoneHint{font-size:var(--text-sm)}.workflow-register-module__t7nJ2G__layout{align-items:start;gap:var(--space-5);grid-template-columns:minmax(0,1fr) 19rem;display:grid}.workflow-register-module__t7nJ2G__preview{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-surface);top:var(--space-4);align-self:start;position:sticky;overflow:hidden}.workflow-register-module__t7nJ2G__previewBanner{background:linear-gradient(135deg, color-mix(in srgb, var(--color-accent) 28%, var(--color-surface)), var(--color-surface));border-bottom:var(--border-width) solid var(--color-border);color:var(--color-text);font-family:var(--font-subhead);font-size:var(--text-xs);align-items:center;gap:var(--space-2);letter-spacing:var(--tracking-label);padding:var(--space-3) var(--space-4);text-transform:uppercase;font-weight:700;display:flex}html:lang(vi) .workflow-register-module__t7nJ2G__previewBanner{text-transform:none}.workflow-register-module__t7nJ2G__previewBanner svg{color:var(--color-accent);width:1rem;height:1rem}.workflow-register-module__t7nJ2G__previewBody{gap:var(--space-4);padding:var(--space-4);display:grid}.workflow-register-module__t7nJ2G__previewStudent{align-items:center;gap:var(--space-3);display:flex}.workflow-register-module__t7nJ2G__previewName{gap:2px;min-width:0;display:grid}.workflow-register-module__t7nJ2G__previewName strong{overflow-wrap:anywhere}.workflow-register-module__t7nJ2G__previewName span{color:var(--color-text-muted);font-size:var(--text-sm)}.workflow-register-module__t7nJ2G__previewRows{gap:var(--space-3);margin:0;display:grid}.workflow-register-module__t7nJ2G__previewRows>div{gap:2px;min-width:0;display:grid}.workflow-register-module__t7nJ2G__previewRows dt{color:var(--color-text-muted);font-family:var(--font-subhead);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}html:lang(vi) .workflow-register-module__t7nJ2G__previewRows dt{text-transform:none}.workflow-register-module__t7nJ2G__previewRows dd{overflow-wrap:anywhere;margin:0}.workflow-register-module__t7nJ2G__previewEmpty{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-body);padding:var(--space-6) var(--space-4);text-align:center}.workflow-register-module__t7nJ2G__previewStage{background:var(--color-notice-surface);border-radius:var(--radius-md);color:var(--color-action);font-family:var(--font-subhead);align-items:center;gap:var(--space-2);padding:var(--space-3);text-align:center;justify-content:center;margin:0;font-weight:700;display:flex}.workflow-register-module__t7nJ2G__previewStage svg{flex:none;width:1rem;height:1rem}@media (max-width:60rem){.workflow-register-module__t7nJ2G__layout{grid-template-columns:minmax(0,1fr)}.workflow-register-module__t7nJ2G__preview{position:static}}.workflow-register-module__t7nJ2G__listSkeleton{gap:var(--space-2);display:grid}.workflow-register-module__t7nJ2G__listSkeleton>*{height:4rem}.workflow-register-module__t7nJ2G__detailSkeleton{gap:var(--space-3);display:grid}.workflow-register-module__t7nJ2G__detailSkeleton>*{height:3rem}.workflow-register-module__t7nJ2G__inlineError{background:var(--color-danger-surface);border:var(--border-width) solid var(--color-danger);border-radius:var(--radius-md);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);flex-wrap:wrap;justify-content:space-between;margin:0;display:flex}.workflow-register-module__t7nJ2G__inlineError p{margin:0}
