.context-bar{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:18px;padding:14px 18px;border:1px solid var(--color-border);border-radius:var(--radius-lg,16px);background:var(--surface);box-shadow:var(--shadow-card)}.context-bar-title{display:flex;max-width:210px;align-items:center;gap:10px;padding-right:14px;border-right:1px solid var(--color-border)}.context-bar-icon{display:grid;flex:0 0 auto;width:34px;height:34px;place-items:center;border-radius:11px;background:var(--blue-100);color:var(--blue-700);font-size:17px}.context-bar-title strong{display:block;color:var(--text-strong);font-size:13px;font-weight:800}.context-bar-title small{display:block;margin-top:2px;color:var(--text-muted);font-size:11px}.context-bar-steps{display:flex;flex:1 1 calc(var(--context-steps, 3) * 215px);align-items:center;gap:10px;min-width:0}.context-bar-arrow{color:var(--ink-500);font-size:17px}.context-bar-group{display:flex;align-items:center;padding-left:16px;border-left:1px solid var(--color-border)}.context-step{position:relative;display:flex;flex:1 1 0;align-items:center;gap:8px;min-width:0}.context-step-icon{display:grid;flex:0 0 auto;width:32px;height:32px;place-items:center;border-radius:10px;background:var(--surface-soft);color:var(--blue-700);font-size:14px}.context-step.is-disabled .context-step-icon{color:var(--ink-500)}.context-step-body{position:relative;min-width:0;flex:1 1 auto}.context-step-label{display:block;margin-bottom:3px;color:var(--text-muted);font-size:10px;font-weight:700}.context-step-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:38px;border:1px solid var(--color-border);border-radius:10px;padding:0 9px;background:var(--surface);color:var(--text-strong);font:inherit;font-size:12.5px;font-weight:650;text-align:left;cursor:pointer;transition:border-color var(--motion-fast,.14s) ease,box-shadow var(--motion-fast,.14s) ease}.context-step-trigger:hover:not(:disabled),.context-step.is-open .context-step-trigger{border-color:var(--blue-600);box-shadow:0 0 0 3px var(--blue-100)}.context-step-trigger:disabled{color:var(--text-muted);cursor:not-allowed;opacity:.72}.context-step-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-step-chevron{flex:0 0 auto;color:var(--ink-500);font-size:13px}.context-step-native{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;border:0;clip-path:inset(50%);white-space:nowrap}.context-step-popover{position:absolute;z-index:40;top:calc(100% + 6px);left:0;display:grid;gap:6px;width:max(100%,232px);max-width:min(300px,calc(100vw - 32px));padding:8px;border:1px solid var(--color-border);border-radius:13px;background:var(--surface);box-shadow:var(--shadow-float)}.context-step-search{display:flex;align-items:center;gap:7px;border:1px solid var(--color-border);border-radius:9px;padding:0 9px;background:var(--surface-soft);color:var(--text-muted)}.context-step-search input{width:100%;min-height:34px;border:0;outline:0;background:transparent;color:var(--text-strong);font:inherit;font-size:12px}.context-step-options{display:grid;gap:2px;max-height:262px;overflow-y:auto}.context-step-option{display:flex;align-items:center;gap:9px;width:100%;min-height:36px;border:0;border-radius:9px;padding:0 10px;background:transparent;color:var(--text-default);font:inherit;font-size:12.5px;font-weight:600;text-align:left;cursor:pointer}.context-step-option:focus-visible,.context-step-option:hover{background:var(--surface-soft);color:var(--text-strong)}.context-step-option.is-selected{background:var(--blue-100);color:var(--blue-700);font-weight:800}.context-step-option-icon{display:grid;flex:0 0 auto;width:26px;height:26px;place-items:center;border-radius:8px;background:var(--surface-soft);font-size:13px}.context-step-option small{margin-left:auto;color:var(--text-muted);font-size:10px;font-weight:600}.context-step-empty{margin:0;padding:10px;color:var(--text-muted);font-size:11.5px}.context-bar-clear{display:inline-flex;align-items:center;gap:7px;min-height:38px;margin-left:auto;border:1px solid var(--color-border);border-radius:10px;padding:0 14px;background:var(--surface);color:var(--blue-700);font:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:border-color var(--motion-fast,.14s) ease,background var(--motion-fast,.14s) ease}.context-bar-clear:focus-visible,.context-bar-clear:hover{border-color:var(--blue-600);background:var(--blue-100)}.context-flow{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px;align-items:start}.context-flow-panel{display:grid;align-content:start;gap:14px;padding:26px 28px}.context-flow-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 12px;background:var(--blue-100);color:var(--blue-700);font-size:11px;font-weight:800}.context-flow-panel h2{margin-top:16px;color:var(--text-strong);font-size:clamp(24px,2.4vw,32px);line-height:1.1;letter-spacing:-.03em}.context-flow-description{max-width:60ch;margin-top:10px;color:var(--text-default);font-size:13.5px;line-height:1.6}.context-flow-rule{margin-top:18px;border-left:3px solid var(--blue-600);border-radius:0 10px 10px 0;padding:13px 16px;background:var(--surface-soft);color:var(--text-default);font-size:12.5px;line-height:1.6}.context-flow-rule strong{color:var(--text-strong);font-weight:800}.context-flow-steps{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px;margin:26px 0 0;padding:0;list-style:none}.context-flow-step{position:relative;display:grid;justify-items:center;gap:9px;text-align:center}.context-flow-step:not(:last-child):after{position:absolute;top:15px;left:calc(50% + 20px);width:calc(100% - 40px);height:2px;background:var(--color-border);content:""}.context-flow-step.is-done:not(:last-child):after{background:var(--blue-600)}.context-flow-step-marker{display:grid;z-index:1;width:30px;height:30px;place-items:center;border:2px solid var(--color-border);border-radius:50%;background:var(--surface);color:var(--text-muted);font-size:12px;font-weight:800}.context-flow-step.is-current .context-flow-step-marker,.context-flow-step.is-done .context-flow-step-marker{border-color:var(--blue-700);background:var(--blue-700);color:#ffffff}.context-flow-step-label{display:grid;gap:2px;color:var(--text-muted);font-size:11px;font-weight:650;line-height:1.3}.context-flow-step.is-current .context-flow-step-label,.context-flow-step.is-done .context-flow-step-label{color:var(--blue-700);font-weight:800}.context-flow-step-label small{color:var(--text-muted);font-size:10px;font-weight:600}.context-flow-outcome{display:flex;gap:12px;margin-top:26px;border-radius:12px;padding:14px 16px;background:var(--surface-soft);color:var(--text-default);font-size:12.5px;line-height:1.6}.context-flow-outcome-icon{display:grid;flex:0 0 auto;width:24px;height:24px;place-items:center;border-radius:50%;background:var(--blue-600);color:#ffffff;font-size:12px;font-weight:800;font-style:italic}.context-flow-outcome strong{display:block;margin-bottom:3px;color:var(--text-strong);font-weight:800}.context-flow-preview{display:grid;justify-items:center;gap:10px;padding:34px 30px;background:var(--surface-soft);text-align:center}.context-flow-art{position:relative;display:grid;width:148px;height:96px;place-items:center;margin-bottom:6px}.context-flow-art span{position:absolute;border:1px solid var(--color-border);border-radius:10px;background:var(--surface)}.context-flow-art span:first-child{top:8px;left:4px;width:104px;height:74px;opacity:.55}.context-flow-art span:nth-child(2){top:20px;left:26px;width:112px;height:78px}.context-flow-art strong{position:relative;z-index:1;display:grid;width:46px;height:46px;place-items:center;border-radius:13px;background:var(--blue-100);color:var(--blue-700);font-size:21px}.context-flow-preview h3{max-width:30ch;color:var(--text-strong);font-size:15px;line-height:1.35}.context-flow-preview p{max-width:38ch;color:var(--text-default);font-size:12.5px;line-height:1.6}:root[data-theme=dark] .context-flow-preview h3{color:#f1f5f9}:root[data-theme=dark] .context-flow-preview p{color:#cbd5e1}:root[data-theme=dark] .context-flow-preview.panel{border-color:#334b64;background:#1a2f47}:root[data-theme=dark] .context-flow-preview.panel h3{color:#f1f5f9}:root[data-theme=dark] .context-flow-preview.panel p{color:#d1deeb}:root[data-theme=dark] .context-flow-step.is-current .context-flow-step-marker,:root[data-theme=dark] .context-flow-step.is-done .context-flow-step-marker{border-color:#1d4ed8;background:#1d4ed8;color:#ffffff}.students-workspace>.student-hierarchy-rail,.students-workspace>.student-period-navigation,.students-workspace>.subject-grade-selector,.students-workspace>.subject-selection-empty,[data-context-gate][hidden]{display:none!important}.students-workspace:not(.is-context-ready)>.students-student-layout{display:none}.students-workspace>.workspace-page-heading{order:0}.students-workspace>.context-bar{order:1}.students-workspace>.context-flow{order:2}.students-workspace>.student-search-suggestion,.students-workspace>.students-student-layout{order:3}.context-flow-panel.is-centered{justify-items:center;text-align:center}.context-flow-panel.is-centered .context-flow-outcome,.context-flow-panel.is-centered .context-flow-rule{text-align:left}.context-flow-mark{display:grid;width:84px;height:84px;place-items:center;border-radius:26px;background:var(--blue-100);color:var(--blue-700);font-size:34px}@media (max-width:1100px){.context-flow{grid-template-columns:minmax(0,1fr)}.context-flow-preview{order:-1;padding:24px}}@media (max-width:900px){.context-bar{gap:12px;padding:13px 14px}.context-bar-title{width:100%;padding-right:0;border-right:0}.context-bar-steps{flex:1 1 100%;flex-wrap:wrap}.context-bar-arrow{display:none}.context-step{flex:1 1 160px}.context-bar-group{width:100%;padding-left:0;border-left:0}.context-bar-clear{margin-left:0}.context-flow-steps{grid-auto-flow:row;grid-auto-columns:auto;gap:12px}.context-flow-step{grid-template-columns:30px minmax(0,1fr);justify-items:start;text-align:left}.context-flow-step:not(:last-child):after{display:none}}@media (max-width:620px){.context-step{flex:1 1 100%}.context-flow-panel{padding:20px 18px}}@media (prefers-reduced-motion:reduce){.context-bar-clear,.context-step-trigger{transition:none}}