.classroom-main:has(.classroom-final-grid[data-layout=grid]){max-width:none}.classroom-final-grid__view-toggle{box-sizing:border-box;display:flex;height:2.75rem;gap:.25rem;padding:.25rem;border-radius:var(--radius-3xl);background:var(--accent-soft)}.classroom-final-grid__view-toggle .button{height:100%;min-height:0;border-radius:calc(var(--radius-3xl) - .25rem)}@media(min-width:48rem){.classroom-final-grid__view-toggle{height:2.5rem}}.classroom-final-grid__view-toggle .button[aria-pressed=true]{--button-bg: var(--accent-foreground);--button-bg-hover: var(--accent-soft-hover);--button-bg-pressed: var(--accent-soft-hover);--button-fg: var(--accent-soft-foreground)}.classroom-final-grid__view-toggle .button[aria-pressed=false]{--button-bg: transparent;--button-bg-hover: var(--accent-soft-hover);--button-bg-pressed: var(--accent-soft-hover);--button-fg: var(--accent-soft-foreground)}.classroom-final-grid__layout{display:flex;min-width:0;min-height:0;flex:1 1 0;flex-direction:column}.classroom-final-grid__layout[hidden]{display:none}.classroom-student-view{display:flex;min-width:0;min-height:0;flex:1 1 0;flex-direction:column;gap:.5rem}.classroom-student-view__picker{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:.5rem;padding:.375rem .5rem}.classroom-student-view__roster-viewport{--student-gap: .5rem;flex:1;min-width:0;overflow:hidden;overflow:clip;padding-block:.25rem;-webkit-mask-image:linear-gradient(to right,transparent,#000 1.5rem,#000 calc(100% - 1.5rem),transparent);mask-image:linear-gradient(to right,transparent,#000 1.5rem,#000 calc(100% - 1.5rem),transparent)}.classroom-student-view__roster-track{position:relative;left:50%;display:flex;width:max-content;align-items:center;gap:var(--student-gap);transition:transform .18s ease}.classroom-student-view__roster-name{display:block;flex:0 0 auto;width:max-content;max-width:none;min-width:0;overflow:visible;color:var(--muted);font-size:.875rem;font-weight:400;text-align:center;text-overflow:clip;white-space:nowrap}.classroom-student-view__roster-name[aria-pressed=true]{height:auto;color:var(--foreground);font-size:clamp(1.125rem,2vw,1.5rem);font-weight:650;line-height:1.1}.classroom-student-view__roster-name:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.classroom-student-view__assessment{display:flex;min-height:0;flex:0 1 auto;flex-direction:column;overflow:hidden;border:1px solid var(--separator);border-radius:calc(var(--radius) * 2)}.classroom-student-view__body{min-height:0;flex:0 1 auto;overflow:auto;overscroll-behavior:contain}.classroom-student-view__table{width:100%;margin:0;border-collapse:separate;border-spacing:0;text-align:center;font-size:.875rem}.classroom-student-view__table th,.classroom-student-view__table td{text-align:center;vertical-align:middle}.classroom-student-view__domain-column{width:21%}.classroom-student-view__domain-total{margin-top:.5rem;color:var(--muted);font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;font-variant-numeric:tabular-nums}.classroom-student-view__subdomain-column{width:20%}.classroom-student-view__score-column{width:10rem}.classroom-student-view__table thead th{padding:.5rem .75rem;border-bottom:1px solid var(--separator);background:var(--accent-soft);color:var(--accent-soft-foreground);font-size:.7rem;font-weight:600}.classroom-student-view__table tbody+tbody tr:first-child>*{border-top:1px solid var(--separator)}.classroom-student-view__table tbody th,.classroom-student-view__table tbody td{padding:.5rem .75rem;border-bottom:1px solid color-mix(in oklab,var(--separator) 50%,transparent)}.classroom-student-view__domain{background:color-mix(in oklab,var(--accent) 15%,var(--surface));color:var(--foreground);font-size:1rem;font-weight:600;overflow-wrap:anywhere}.classroom-student-view__subdomain{border-left:1px solid var(--separator);background:var(--success-soft);color:var(--success-soft-foreground);font-size:.8rem;font-weight:500;overflow-wrap:anywhere}.classroom-student-view__criterion{background:var(--surface);font-weight:500;overflow-wrap:anywhere}.classroom-student-view__criterion-name{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .4rem}.classroom-student-view__criterion-range{color:var(--muted);font-size:.7rem;font-weight:400}.classroom-student-view__hint{display:block;margin-top:.25rem;color:var(--muted);font-size:.7rem;font-weight:400}.classroom-student-view__score{background:color-mix(in oklab,var(--accent-soft) 35%,var(--surface))}.classroom-student-view__field{width:100%;min-width:5rem;text-align:center}.classroom-student-view__input{width:100%;text-align:center;font-variant-numeric:tabular-nums}.classroom-student-view__computed{padding:.5rem .75rem;color:var(--muted);font-size:1rem;font-variant-numeric:tabular-nums}.classroom-student-view__empty{color:var(--muted)}.classroom-student-view__total{display:grid;grid-template-columns:minmax(0,1fr) 10rem;grid-template-rows:auto auto;row-gap:.25rem;flex:none;align-items:stretch;padding-block:.5rem;color:var(--foreground);text-align:center}.classroom-student-view__students{display:grid;grid-column:1;grid-row:1 / span 2;grid-template-rows:subgrid;min-width:0}.classroom-student-view__students>.classroom-student-view__picker{align-self:center}.classroom-student-view__total-label{display:block;color:var(--muted);font-size:.65rem;font-weight:500;line-height:1}.classroom-student-view__total-value{display:grid;grid-column:2;grid-row:1 / span 2;grid-template-rows:subgrid;padding-inline:.75rem;border-radius:var(--field-radius);font-size:clamp(1.5rem,3vw,2.25rem);font-weight:650;line-height:1;font-variant-numeric:tabular-nums}.classroom-student-view__total-value>span:not(.classroom-student-view__total-label){align-self:center}.classroom-student-view__points{display:block;margin-top:.3rem;color:var(--muted);font-size:.65rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.classroom-student-view__total-value:has(.text-danger){background:var(--danger-soft);color:var(--danger-soft-foreground)}@media(max-width:640px){.classroom-student-view__table{table-layout:fixed;font-size:.75rem}.classroom-student-view__domain-column{width:20%}.classroom-student-view__subdomain-column{width:19%}.classroom-student-view__score-column{width:30%}.classroom-student-view__total{grid-template-columns:minmax(0,1fr) 30%}.classroom-student-view__table thead th{padding:.375rem;font-size:.6rem;overflow-wrap:anywhere}.classroom-student-view__table tbody th,.classroom-student-view__table tbody td{padding:.375rem}.classroom-student-view__domain{font-size:.8rem}.classroom-student-view__subdomain{font-size:.7rem}.classroom-student-view__field{min-width:0}.classroom-student-view__score .button{max-width:100%;height:auto;min-height:2rem;padding:.375rem;font-size:.65rem;white-space:normal}.classroom-student-view__computed{padding-inline:.375rem}}@media(prefers-reduced-motion:reduce){.classroom-student-view__roster-track{transition:none}}.classroom-final-grid{--grid-sheet: var(--background);--grid-paper: var(--surface);--grid-header: var(--accent-soft);--grid-header-ink: var(--accent-soft-foreground);--grid-readonly-ink: var(--muted);--grid-total: color-mix(in oklab, var(--accent) 15%, var(--surface));--grid-total-ink: var(--foreground);--grid-final: var(--success-soft);--grid-final-ink: var(--success-soft-foreground);--grid-entry-line: var(--accent);--grid-focus: var(--accent);--grid-readonly: color-mix(in oklab, var(--accent-soft) 35%, var(--surface));--grid-line: var(--separator);--grid-muted: var(--muted);--grid-gap: .4rem;display:flex;min-width:0;min-height:0;flex-direction:column;gap:.75rem;color:var(--foreground)}.classroom-final-grid__heading{flex:none}.classroom-final-grid__table{display:flex;min-width:0;min-height:0;flex:1 1 0;flex-direction:column;overflow:hidden}.classroom-final-grid__viewport{min-width:0;min-height:0;flex:1 1 0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border-radius:1rem;background:var(--grid-sheet);scrollbar-color:auto;scrollbar-width:auto}.classroom-final-grid__viewport::-webkit-scrollbar{width:12px;height:12px}.classroom-final-grid__viewport::-webkit-scrollbar-track{background:var(--grid-sheet);border-radius:999px}.classroom-final-grid__viewport::-webkit-scrollbar-thumb{min-width:32px;border:3px solid var(--grid-sheet);border-radius:999px;background:var(--grid-muted)}.classroom-final-grid__viewport::-webkit-scrollbar-thumb:hover{background:var(--grid-entry-line)}@supports not selector(::-webkit-scrollbar){.classroom-final-grid__viewport{scrollbar-color:var(--grid-muted) var(--grid-sheet)}}.classroom-final-grid__zoom-layer{width:max-content;min-width:100%}.classroom-final-grid__content{border-collapse:separate;border-spacing:var(--grid-gap);color:var(--foreground);font-variant-numeric:tabular-nums}.classroom-final-grid__content thead{position:sticky;top:0;z-index:6;background:var(--grid-sheet)}.classroom-final-grid__identity-column{width:14rem}.classroom-final-grid .classroom-final-grid__header{z-index:5;min-width:8rem;border:1px solid var(--grid-line);border-radius:.8rem;background:var(--grid-header);padding:.5rem .625rem;color:var(--grid-header-ink);text-align:center;vertical-align:middle;white-space:normal;overflow-wrap:anywhere;font-size:.75rem;font-weight:600}.classroom-final-grid .classroom-final-grid__header:after{display:none}.classroom-final-grid__domain-heading{background:var(--grid-total)!important;border-color:var(--grid-line)!important;color:var(--grid-total-ink)!important;text-align:center!important}.classroom-final-grid__domain-label{display:block;max-width:12rem;margin-inline:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classroom-final-grid__subheading{display:block;margin-top:.2rem;color:var(--grid-muted);font-size:.65rem;font-weight:400}.classroom-final-grid__heading-line{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;line-height:1.25}.classroom-final-grid__column-heading{max-width:12rem}.classroom-final-grid__column-heading svg{color:var(--grid-muted)}.classroom-final-grid__manual-heading,.classroom-final-grid__calculated-heading,.classroom-final-grid__final-heading{background:var(--grid-header)!important;border-color:var(--grid-line)!important}.classroom-final-grid__final-heading{font-weight:700}.classroom-final-grid__group-heading{background:var(--success-soft)!important;color:var(--success-soft-foreground)!important;font-weight:700}.classroom-final-grid .classroom-final-grid__cell{position:relative;min-width:8rem;border:1px solid transparent;border-radius:.8rem;background:var(--grid-readonly);padding:.48rem .625rem;text-align:center;vertical-align:middle;white-space:nowrap;font-size:.75rem}.classroom-final-grid__identity{position:sticky!important;left:0;z-index:3!important;width:14rem;min-width:14rem!important;max-width:14rem;overflow:hidden;background:var(--grid-paper)!important;text-align:left!important;text-overflow:ellipsis;font-weight:600!important}.classroom-final-grid__header.classroom-final-grid__identity{z-index:8!important;background:linear-gradient(var(--grid-header),var(--grid-header)) var(--grid-sheet)!important;border-color:var(--grid-line)!important;color:var(--grid-header-ink)!important}.classroom-final-grid__calculated-cell{background:var(--grid-readonly)!important;color:var(--grid-readonly-ink)}.classroom-final-grid__domain-total{background:var(--grid-total)!important;color:var(--grid-total-ink);font-weight:700}.classroom-final-grid__final-cell{background:linear-gradient(var(--grid-final),var(--grid-final)) var(--grid-paper)!important;color:var(--grid-final-ink);font-size:.82rem;font-weight:750}.classroom-final-grid__final-heading,.classroom-final-grid__final-cell{position:sticky!important;right:0;z-index:3!important;box-shadow:0 0 0 var(--grid-gap) var(--grid-sheet)}.classroom-final-grid__header.classroom-final-grid__final-heading{z-index:8!important;background:linear-gradient(var(--grid-header),var(--grid-header)) var(--grid-sheet)!important}.classroom-final-grid__manual-cell{cursor:cell;border-color:var(--grid-entry-line)!important;background:var(--grid-paper)!important;box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--grid-entry-line) 14%,transparent);color:var(--foreground)}.classroom-final-grid__manual-cell:hover{background:color-mix(in oklab,var(--accent) 7%,var(--grid-paper))!important}.classroom-final-grid__manual-cell.is-selected{z-index:2;outline:2px solid var(--grid-focus);outline-offset:-3px}.classroom-final-grid__manual-cell:focus-visible,.classroom-final-grid__cell:focus-visible{outline:2px solid var(--grid-focus);outline-offset:-3px}.classroom-final-grid__input{width:4.5rem;border:0;outline:0;background:transparent;color:var(--foreground);text-align:center;font:inherit;font-variant-numeric:tabular-nums}.classroom-final-grid__input:focus-visible{outline:0}.classroom-final-grid__incomplete{display:block;margin-top:.1rem;color:var(--grid-muted);font-size:.6rem}.classroom-final-grid__manual-cell.is-invalid{border-color:var(--danger)!important;background:color-mix(in oklab,var(--danger) 8%,var(--grid-paper))!important;color:var(--danger)}.classroom-final-grid__validation{color:var(--danger);font-size:.75rem}.classroom-final-grid__footer{min-height:2.75rem;flex:none;flex-wrap:wrap;margin-top:auto}.classroom-final-grid__zoom,.classroom-final-grid__save-state{display:flex;align-items:center;gap:.35rem}.classroom-final-grid__zoom{margin-left:auto}.classroom-final-grid__zoom>span{min-width:2.75rem;text-align:center;color:var(--foreground);font-variant-numeric:tabular-nums}@media(max-width:768px){.classroom-final-grid__identity-column{width:10rem}.classroom-final-grid__identity{position:static!important;left:auto;width:10rem;min-width:10rem!important;max-width:10rem}.classroom-final-grid__final-heading,.classroom-final-grid__final-cell{position:static!important;right:auto;box-shadow:none}}.grid-landing-backdrop{position:absolute;inset:0;overflow:hidden;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.35}.grid-landing-halo{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 60% 62% at 50% 50%,color-mix(in oklab,var(--background) 95%,transparent) 45%,transparent 100%)}.grid-landing-backdrop .classroom-final-grid__content thead{position:static}.grid-landing-backdrop .classroom-final-grid__identity,.grid-landing-backdrop .classroom-final-grid__final-heading,.grid-landing-backdrop .classroom-final-grid__final-cell{position:static!important;box-shadow:none}
