*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{padding:0;margin:-1px;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-5{top:1.25rem}.m-0{margin:0}.mb-0{margin-bottom:0}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-2{margin-left:.5rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.max-h-80{max-height:20rem}.w-3{width:.75rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.max-w-\[68ch\]{max-width:68ch}.max-w-prose{max-width:65ch}.shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-5{gap:1.25rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.self-start{align-self:flex-start}.overflow-y-auto{overflow-y:auto}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-\[3px\]{border-left-width:3px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-\[color\:var\(--green\)\]{border-color:var(--green)}.border-\[color\:var\(--rule\)\]{border-color:var(--rule)}.border-\[color\:var\(--rule-soft\)\]{border-color:var(--rule-soft)}.border-\[color\:var\(--slate-soft\)\]{border-color:var(--slate-soft)}.border-transparent{border-color:transparent}.bg-\[color\:var\(--green-tint\)\]{background-color:var(--green-tint)}.bg-\[color\:var\(--surface\)\]{background-color:var(--surface)}.bg-\[color\:var\(--surface-2\)\]{background-color:var(--surface-2)}.bg-transparent{background-color:transparent}.p-0{padding:0}.p-2{padding:.5rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.font-\[family-name\:var\(--mono\)\]{font-family:var(--mono)}.font-\[family-name\:var\(--sans\)\]{font-family:var(--sans)}.font-\[family-name\:var\(--serif\)\]{font-family:var(--serif)}.text-\[0\.61rem\]{font-size:.61rem}.text-\[0\.62rem\]{font-size:.62rem}.text-\[0\.63rem\]{font-size:.63rem}.text-\[0\.64rem\]{font-size:.64rem}.text-\[0\.66rem\]{font-size:.66rem}.text-\[0\.67rem\]{font-size:.67rem}.text-\[0\.68rem\]{font-size:.68rem}.text-\[0\.72rem\]{font-size:.72rem}.text-\[0\.74rem\]{font-size:.74rem}.text-\[0\.76rem\]{font-size:.76rem}.text-\[0\.77rem\]{font-size:.77rem}.text-\[0\.78rem\]{font-size:.78rem}.text-\[0\.7rem\]{font-size:.7rem}.text-\[0\.82rem\]{font-size:.82rem}.text-\[0\.86rem\]{font-size:.86rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[1\.05rem\]{font-size:1.05rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-relaxed{line-height:1.625}.tracking-\[0\.06em\]{letter-spacing:.06em}.tracking-\[0\.07em\]{letter-spacing:.07em}.tracking-\[0\.08em\]{letter-spacing:.08em}.tracking-\[0\.14em\]{letter-spacing:.14em}.tracking-\[0\.16em\]{letter-spacing:.16em}.tracking-normal{letter-spacing:0}.tracking-wide{letter-spacing:.025em}.text-\[color\:var\(--gold\)\]{color:var(--gold)}.text-\[color\:var\(--green\)\]{color:var(--green)}.text-\[color\:var\(--ink\)\]{color:var(--ink)}.text-\[color\:var\(--oxblood\)\]{color:var(--oxblood)}.text-\[color\:var\(--slate\)\]{color:var(--slate)}.text-\[color\:var\(--slate-soft\)\]{color:var(--slate-soft)}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0/0.1),0 1px 2px -1px rgb(0 0 0/0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--oxblood-tint:#f5e9e6;--slate-tint:#ecf0f1;--shadow-soft:0 24px 60px -34px rgba(23,26,28,0.45)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:radial-gradient(120% 90% at 50% -10%,var(--surface-2) 0,var(--paper) 55%,#ece7db 100%);color:var(--ink);font-family:var(--sans);min-height:100vh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");content:"";inset:0;mix-blend-mode:multiply;opacity:.045;pointer-events:none;position:fixed;z-index:9999}h1,h2,h3{color:var(--ink);font-family:var(--serif);letter-spacing:0}a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--green-deep)}button,input,select,textarea{font:inherit}code{background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:6px;font-family:var(--mono);font-size:.92em;padding:1px 5px}.hid-ops-shell,.professor-shell,.student-shell{background:var(--surface);display:grid;grid-template-rows:auto minmax(0,1fr);min-height:100vh}.sr-only{clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.hid-ops-skip-link{background:var(--ink);color:var(--surface);left:12px;padding:9px 12px;position:absolute;text-decoration:none;top:8px;transform:translateY(-180%);transition:transform .15s ease;z-index:20}.hid-ops-skip-link:focus{color:var(--surface);transform:translateY(0)}.hid-ops-shell .main-wrap{overflow:visible}.hid-ops-shell #main-content:focus{outline:2px solid var(--green);outline-offset:-5px}.portal-skip-link{background:var(--ink);color:var(--surface);left:12px;padding:9px 12px;position:absolute;text-decoration:none;top:8px;transform:translateY(-180%);transition:transform .15s ease;z-index:20}.portal-skip-link:focus{color:var(--surface);transform:translateY(0)}.professor-shell #professor-main-content:focus,.student-shell #student-main-content:focus{outline:2px solid var(--green);outline-offset:-5px}.masthead{align-items:center;background:var(--surface);border-bottom:1px solid var(--rule);display:flex;gap:16px;min-height:64px;padding:14px 24px}.wordmark{color:var(--ink);font-family:var(--serif);font-size:1.06rem;font-weight:600;letter-spacing:.14em;text-decoration:none}.wordmark span{color:var(--green)}.wordmark .faculty{color:var(--slate-soft);font-family:var(--sans);font-size:.68rem;font-weight:600;letter-spacing:.18em;margin-left:12px;text-transform:uppercase}.masthead .spacer,.spring{margin-left:auto}.masthead .term{color:var(--slate-soft);font-family:var(--mono);font-size:.72rem;margin-right:18px}.prof{align-items:center;display:flex;gap:10px}.prof .who{color:var(--ink);font-size:.85rem;font-weight:500;line-height:1.2;text-align:right}.prof .who span{color:var(--slate-soft);display:block;font-family:var(--mono);font-size:.66rem;font-weight:400}.prof .initials{border:1px solid var(--green);border-radius:50%;color:var(--green);display:grid;font-family:var(--serif);font-size:.92rem;font-weight:600;height:34px;place-items:center;width:34px}.index-btn,.masthead button,.title-link{background:transparent;border:1px solid var(--rule);border-radius:6px;color:var(--slate);cursor:pointer;font-family:var(--mono);font-size:.72rem;padding:4px 10px;text-decoration:none;transition:border-color .25s var(--ease),color .25s var(--ease)}.index-btn:hover,.masthead button:hover,.title-link:hover{border-color:var(--slate-soft);color:var(--ink)}.operator-work,.student-work,.work{display:grid;grid-template-columns:234px minmax(0,1fr);min-height:0}.operator-masthead{box-shadow:inset 4px 0 0 var(--gold)}.operator-masthead .faculty{color:var(--oxblood)}.operator-mode{border-left:1px solid var(--rule);color:var(--slate-soft);font-family:var(--mono);font-size:.66rem;letter-spacing:.08em;padding-left:16px;text-transform:uppercase}.operator-initials{border-color:var(--oxblood)!important;color:var(--oxblood)!important}.operator-rail{background:linear-gradient(90deg,rgba(110,47,50,.045),transparent 56%),var(--surface);border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:22px;padding:24px 16px 20px 24px}.operator-rail .label{color:var(--slate-soft);font-family:var(--mono);font-size:.64rem;letter-spacing:.16em;margin-bottom:8px;text-transform:uppercase}.operator-rail .group{display:flex;flex-direction:column}.operator-rail .item{border-bottom:1px solid var(--rule-soft);border-top:1px solid var(--rule-soft);color:var(--ink);padding:10px 0 10px 14px;position:relative;text-decoration:none}.operator-rail .item:before{background:var(--oxblood);content:"";height:20px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.operator-rail .crumb{display:block;font-family:var(--serif);font-size:1.04rem}.operator-rail .sub{display:block;margin-top:2px}.operator-boundary,.operator-rail .sub{color:var(--slate-soft);font-family:var(--mono);font-size:.66rem}.operator-boundary{border-left:2px solid var(--gold);line-height:1.65;margin-top:auto;padding-left:10px}.operator-boundary span{color:var(--oxblood);display:block;font-family:var(--sans);font-size:.66rem;font-weight:600;letter-spacing:.08em;margin-bottom:4px;text-transform:uppercase}.pnav,.student-rail{background:linear-gradient(90deg,rgba(0,0,0,.012),transparent 40%);border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:22px;padding:24px 16px 20px 24px}.pnav .label,.student-rail .label{color:var(--slate-soft);font-family:var(--mono);font-size:.64rem;letter-spacing:.16em;margin-bottom:8px;text-transform:uppercase}.pnav .group,.student-rail .group{display:flex;flex-direction:column}.pnav .item,.student-rail .item{border-top:1px solid var(--rule-soft);color:var(--slate);cursor:pointer;font-size:.95rem;padding:9px 0 9px 13px;position:relative;text-decoration:none;transition:color .25s var(--ease)}.pnav .group .item:last-child,.student-rail .group .item:last-child{border-bottom:1px solid var(--rule-soft)}.pnav .item:before,.student-rail .item:before{background:var(--green);content:"";height:0;left:0;position:absolute;top:50%;transform:translateY(-50%);transition:height .3s var(--ease);width:3px}.pnav .item:hover,.pnav .item[data-on=true],.student-rail .item:hover,.student-rail .item[data-on=true]{color:var(--ink)}.pnav .item[data-on=true],.student-rail .item[data-on=true]{font-weight:500}.pnav .item[data-on=true]:before,.student-rail .item[data-on=true]:before{height:18px}.pnav .item .crumb,.student-rail .item .crumb{font-family:var(--serif);font-size:1.04rem}.pnav .item .sub,.student-rail .item .sub{color:var(--slate-soft);display:block;font-family:var(--mono);font-size:.66rem;margin-top:2px}.backlink,.context-link,.linkact,.pnav .backclasses,.student-rail .backclasses{background:transparent;border:0;border-bottom:1px solid transparent;color:var(--slate);cursor:pointer;display:inline-block;font-family:var(--mono);font-size:.74rem;padding:0;text-decoration:none;transition:border-color .2s var(--ease),color .2s var(--ease)}.backlink:hover,.context-link:hover,.linkact:hover,.pnav .backclasses:hover,.student-rail .backclasses:hover{border-bottom-color:var(--green);color:var(--green)}.context-link{color:var(--slate);font-size:.76rem}.pnav .colophon,.student-rail .colophon{color:var(--slate-soft);font-family:var(--mono);font-size:.64rem;line-height:1.8;margin-top:auto}.main-wrap{min-width:0;overflow:hidden;position:relative}.main{height:100%;min-height:calc(100vh - 64px);overflow-y:auto;padding:30px clamp(26px,3.5vw,48px) 36px}.main::-webkit-scrollbar,.table-scroll::-webkit-scrollbar{width:10px}.main::-webkit-scrollbar-thumb,.table-scroll::-webkit-scrollbar-thumb{background:var(--rule);border:3px solid var(--surface);border-radius:8px}.main-inner{display:grid;gap:22px;margin:0 auto;max-width:76rem}.professor-shell:has(.main-workbench){grid-template-rows:minmax(0,1fr);height:100vh;height:100dvh;min-height:0;overflow:hidden}.professor-shell:has(.main-workbench)>.masthead,.professor-shell:has(.main-workbench)>.work>.pnav{display:none}.professor-shell:has(.main-workbench)>.work{grid-template-columns:minmax(0,1fr);min-height:0}.main-workbench{height:100%;min-height:0;overflow:hidden;padding:0}@page instructor-review-summary{margin:16mm}@media print{body.hid-print-review-summary{background:#fff!important}body.hid-print-review-summary .main-workbench,body.hid-print-review-summary .main-wrap,body.hid-print-review-summary .professor-shell,body.hid-print-review-summary .wb-app,body.hid-print-review-summary .work{height:auto!important;min-height:0!important;overflow:visible!important}body.hid-print-review-summary .wb-app{display:block!important;width:auto!important;background:#fff!important}body.hid-print-review-summary .wb-app>:not(.hid-print-review-summary-content){display:none!important}body.hid-print-review-summary .hid-print-review-summary-content{display:block!important;page:instructor-review-summary;position:static!important;width:auto!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;visibility:visible!important}body.hid-print-review-summary .hid-print-review-summary-content *{visibility:visible!important}}@media (max-height:640px){.professor-shell:has(.main-workbench){height:auto;min-height:100vh;overflow:visible}.main-workbench,.main-wrap:has(.main-workbench),.professor-shell:has(.main-workbench)>.work{height:auto;min-height:100vh;overflow:visible}.main-workbench .wb-app{grid-template-rows:58px minmax(480px,1fr) 94px;height:auto;min-height:100vh;overflow:visible}}.main-inner.wide{max-width:88rem}.student-shell .masthead{min-height:56px;padding:10px 18px}.student-shell .wordmark .faculty{color:var(--green)}.student-rail{grid-row:1;padding-top:30px}.student-rail .item .sub{line-height:1.35}.student-main{min-height:calc(100vh - 56px);padding:40px clamp(38px,6vw,80px)}.student-main .main-inner{margin:0;max-width:68rem}.student-leaf{display:flex;flex-direction:column;gap:0;min-height:calc(100vh - 136px)}.student-section{display:grid;gap:14px;margin-top:24px;max-width:640px}.student-section.ruled{border-top:1px solid var(--rule);padding-top:18px}.student-actions-foot{margin-top:auto;padding-top:28px}.student-form-grid{align-items:stretch;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));max-width:640px}.student-form-grid .full{grid-column:1/-1}.portal-leaf{max-width:980px}.portal-wide{max-width:920px}.profile-strip{align-items:center;border-bottom:1px solid var(--rule-soft);border-top:1px solid var(--rule-soft);display:flex;gap:13px;margin:0 0 22px;max-width:640px;padding:13px 0}.profile-strip .mk{border:1px solid var(--green);border-radius:50%;color:var(--green);display:grid;flex:none;font-family:var(--serif);height:34px;place-items:center;width:34px}.profile-strip strong{color:var(--ink);display:block;font-size:.94rem}.profile-strip div>span,.profile-strip span span{color:var(--slate-soft);display:block;font-family:var(--mono);font-size:.72rem;overflow-wrap:anywhere}.redo-priority{background:linear-gradient(105deg,var(--gold-tint),transparent 68%),var(--surface);border:1px solid var(--rule);border-radius:8px;box-shadow:inset 4px 0 0 var(--gold),var(--shadow-soft);display:grid;gap:16px;margin:10px 0 24px;max-width:920px;padding:22px 24px 20px 28px}.redo-priority-head{align-items:start;display:flex;gap:22px;justify-content:space-between}.redo-priority-head h2{font-size:clamp(1.55rem,3vw,2.15rem);font-weight:500;line-height:1.08;margin:3px 0 8px}.redo-priority-head p:last-child{color:var(--slate);line-height:1.48;margin:0;max-width:62ch}.redo-priority-count{background:var(--surface);border:1px solid var(--gold);border-radius:999px;color:#795715;flex:none;font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;padding:6px 10px;text-transform:uppercase}.redo-priority .desktop-handoff-compact{border-bottom-color:var(--rule-soft);border-top-color:var(--rule-soft);grid-template-columns:minmax(0,1fr) minmax(14rem,18rem);margin:0}.redo-priority .desktop-handoff-compact .dh-copy h2{font-size:1.35rem}.redo-priority-list{border-top:1px solid var(--rule-soft);display:grid}.redo-priority-item{align-items:start;border-bottom:1px solid var(--rule-soft);display:grid;gap:8px 20px;grid-template-columns:minmax(0,1fr) minmax(13rem,18rem);padding:14px 0}.redo-paper{color:var(--ink);font-family:var(--serif);font-size:1.13rem;font-weight:600;line-height:1.25;margin:0;overflow-wrap:anywhere}.redo-class,.redo-deadline,.redo-next-step small,.redo-reason{color:var(--slate-soft);font-size:.76rem;line-height:1.42;margin:3px 0 0;overflow-wrap:anywhere}.redo-class,.redo-deadline,.redo-reason span{font-family:var(--mono)}.redo-next-step{display:grid;gap:2px}.redo-next-step>span{color:var(--ink);font-weight:650}.redo-next-step small{display:block;margin:0}.redo-reason{color:var(--slate);grid-column:1}.redo-reason span{color:#795715;display:block;font-size:.64rem;letter-spacing:.08em;margin-bottom:2px;text-transform:uppercase}.redo-deadline{grid-column:2}.desktop-handoff{align-items:center;border-bottom:1px solid var(--rule);border-top:1px solid var(--rule);display:grid;gap:22px;grid-template-columns:minmax(0,1fr) minmax(14rem,20rem);margin:10px 0 24px;max-width:920px;padding:20px 0}.desktop-handoff-hero{background:linear-gradient(90deg,var(--green-tint),transparent 72%),var(--surface)}.desktop-handoff-hero,.desktop-handoff-page{border:1px solid var(--rule);border-radius:8px;padding:24px}.desktop-handoff-page{align-items:start;background:var(--surface-2)}.desktop-handoff-compact{gap:12px;grid-template-columns:1fr;margin:8px 0;padding:14px 0}.dh-copy{min-width:0}.dh-copy h2{color:var(--ink);font-family:var(--serif);font-size:1.55rem;font-weight:500;line-height:1.15;margin:0 0 8px}.dh-copy p:last-child{color:var(--slate);line-height:1.5;margin:0;max-width:58ch}.dh-actions{align-items:stretch;display:flex;flex-direction:column;gap:9px;min-width:0}.dh-status{color:var(--slate-soft);font-family:var(--mono);font-size:.68rem;line-height:1.35;margin:0;overflow-wrap:anywhere}.portal-stat-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px;max-width:760px}.portal-stat{border-bottom:1px solid var(--rule);border-top:1px solid var(--rule);display:grid;gap:6px;padding:14px 0}.portal-stat .k{color:var(--slate-soft);font-family:var(--mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}.portal-stat strong{color:var(--ink);font-family:var(--serif);font-size:2rem;font-weight:500;line-height:1}.section-headline{align-items:center;display:flex;gap:14px;justify-content:space-between}.section-headline .sec-label{flex:1 1 auto;margin-bottom:0}.compact-empty{margin:0;padding:30px 12px}.portal-columns{display:grid;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr))}.portal-subhead{color:var(--ink);font-family:var(--serif);font-size:1.18rem;font-weight:500;margin:0 0 10px}.portal-note{border-top:1px solid var(--rule-soft);padding-top:14px}.portal-note strong{color:var(--ink);display:block;font-family:var(--serif);font-size:1.12rem;font-weight:500;margin-bottom:6px}.portal-note p{color:var(--slate);line-height:1.5;margin:0}.portal-steps{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.portal-steps div{border-top:1px solid var(--rule-soft);display:grid;gap:7px;padding-top:13px}.portal-steps span{color:var(--green);font-family:var(--mono);font-size:.74rem}.portal-steps strong{color:var(--ink);font-family:var(--serif);font-size:1.12rem;font-weight:500}.portal-steps p{color:var(--slate);line-height:1.45;margin:0}.portal-docket{grid-template-columns:minmax(0,1fr);max-width:860px}.portal-docket .dk-row:nth-child(2n),.portal-docket .dk-row:nth-child(odd){border-right:0;padding-left:2px}.portal-docket .dk-row.highlighted{background:var(--green-tint)}.spread{background:linear-gradient(90deg,transparent 48%,rgba(23,26,28,.06) 50%,transparent 52%);border:1px solid var(--rule);border-radius:10px;display:grid;grid-template-columns:1fr 1fr;margin-bottom:28px;max-width:620px;overflow:hidden}.spread .page{background:transparent;border:0;color:inherit;cursor:pointer;display:grid;gap:12px;min-height:190px;padding:28px 26px;text-align:left;text-decoration:none;transition:background .3s var(--ease)}.spread .page:focus-visible,.spread .page:hover{background:var(--green-tint);outline:none}.spread .page .p-name{color:var(--ink);font-family:var(--serif);font-size:1.5rem;font-weight:500}.spread .page .p-detail{color:var(--slate);font-size:.94rem;line-height:1.5}.spread .page .p-go{color:var(--green);font-family:var(--mono);font-size:.82rem}.student-choice-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));max-width:760px}.student-success{border:1px solid var(--green);border-radius:8px;color:var(--green-deep);display:grid;gap:6px;padding:12px 14px}.recstrip{align-items:center;border-bottom:1px solid var(--rule-soft);border-top:1px solid var(--rule-soft);display:flex;gap:14px;margin:2px 0;max-width:620px;padding:13px 0}.recstrip .rec{animation:pulse 3.4s var(--ease-soft) infinite;background:var(--green);border-radius:50%;flex:none;height:9px;width:9px}.recstrip .r-label{color:var(--slate);font-family:var(--sans);font-size:.7rem;font-weight:600;letter-spacing:.12em;margin:0;text-transform:uppercase}.recstrip .savebar{background:var(--rule-soft);border-radius:2px;flex:1;height:2px;overflow:hidden}.recstrip .savebar i{background:var(--green);display:block;height:100%;width:100%}.recstrip .txt{color:var(--ink-soft);font-family:var(--mono);font-size:.76rem;white-space:nowrap}.act-panels{display:grid;gap:16px;grid-template-columns:1fr 1fr;max-width:620px}.act-panel{background:var(--surface);border:1px solid var(--rule);border-radius:12px;color:inherit;display:grid;gap:9px;min-height:156px;padding:22px 22px 20px;position:relative;text-decoration:none;transition:background .3s var(--ease),border-color .25s var(--ease),box-shadow .3s var(--ease),transform .2s var(--ease)}.act-panel:focus-within,.act-panel:hover{border-color:var(--slate-soft);box-shadow:0 16px 30px -22px rgba(23,26,28,.55);transform:translateY(-2px)}.act-panel .ap-name{color:var(--ink);font-family:var(--serif);font-size:1.42rem;font-weight:500}.act-panel .ap-detail{color:var(--slate);font-size:.9rem;line-height:1.45;margin:0}.act-panel .ap-go{color:var(--rule);font-family:var(--mono);font-size:.82rem;position:absolute;right:20px;top:20px;transition:color .25s var(--ease),transform .25s var(--ease)}.act-panel:focus-within .ap-go,.act-panel:hover .ap-go{color:var(--green);transform:translateX(3px)}.act-panel.is-primary{background:linear-gradient(180deg,var(--green-tint),var(--surface) 78%);border-color:var(--green)}.colophon-card{background:var(--surface);border:1px solid var(--rule);border-radius:10px;margin-bottom:26px;max-width:500px;overflow:hidden}.colophon-card .seal{align-items:center;background:linear-gradient(180deg,var(--green-tint),transparent);border-bottom:1px solid var(--rule);display:flex;gap:14px;padding:18px 24px}.colophon-card .seal .mark{animation:sealIn .6s var(--ease) both;border:1.5px solid var(--green);border-radius:50%;color:var(--green);display:grid;flex:none;font-family:var(--serif);font-size:1.25rem;font-weight:600;height:40px;place-items:center;width:40px}.colophon-card .seal .seal-txt{color:var(--green-deep);display:block;font-family:var(--serif);font-size:1.05rem;font-style:italic;margin:0}.colophon-card dl{-moz-column-gap:24px;column-gap:24px;display:grid;grid-template-columns:max-content 1fr;margin:0;padding:22px 24px;row-gap:12px}.colophon-card dt{align-self:center;color:var(--slate-soft);font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.colophon-card dd{color:var(--ink);margin:0}.colophon-card dd.mono{font-family:var(--mono);font-size:.9rem;letter-spacing:.04em}.colophon-card .imprint{border-top:1px solid var(--rule-soft);color:var(--slate-soft);font-family:var(--mono);font-size:.7rem;letter-spacing:.04em;padding:12px 24px}.colophon-card .receipt-recovery{background:linear-gradient(90deg,var(--gold-tint),transparent 82%);border-top:1px solid var(--rule-soft);padding:18px 24px 20px}.colophon-card .receipt-recovery p{margin:0;max-width:42ch}.colophon-card .receipt-recovery .actions{margin-top:14px}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(31,92,77,.4)}60%{box-shadow:0 0 0 6px rgba(31,92,77,0)}to{box-shadow:0 0 0 0 rgba(31,92,77,0)}}@keyframes sealIn{0%{opacity:0;transform:scale(.6) rotate(-8deg)}to{opacity:1;transform:none}}.runhead{align-items:baseline;border-bottom:1px solid var(--rule);display:flex;gap:16px;justify-content:space-between;margin-bottom:22px;padding-bottom:9px}.runhead .rh-title{color:var(--slate);font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.folio-no,.runhead .rh-meta{color:var(--slate-soft);font-family:var(--mono);font-size:.72rem}.eyebrow{color:var(--oxblood);font-family:var(--sans);font-size:.74rem;font-weight:600;margin:0 0 12px;text-transform:uppercase}.eyebrow .sep{color:var(--rule);font-weight:400;margin:0 8px}.title{color:var(--ink);font-family:var(--serif);font-size:2.4rem;font-weight:500;letter-spacing:0;line-height:1.06;margin:0}.title .count{color:var(--slate-soft);font-family:var(--mono);font-size:1rem;font-weight:400;letter-spacing:.02em;margin-left:12px;vertical-align:middle}.active-assignment-context{align-items:center;display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:14px}.active-assignment-context .eyebrow{margin:0;overflow-wrap:anywhere}.active-assignment-link{min-height:38px;padding:8px 14px}.folio-rule{background:var(--ink);height:2px;margin:20px 0 24px;transform-origin:left center}.lead{color:var(--slate);font-size:1.04rem;line-height:1.6;margin:0 0 26px;max-width:52ch}.lead strong{color:var(--ink-soft);font-weight:600}.actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.actions.center-actions{justify-content:center}.head-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px 24px;justify-content:space-between}.empty .btn{margin-top:18px}.empty-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:12px}.empty-actions .btn,.empty>.btn{margin-top:0}.btn{border-radius:8px;cursor:pointer;display:inline-flex;font-family:var(--sans);font-size:.94rem;font-weight:600;justify-content:center;min-height:46px;padding:12px 20px;text-decoration:none;transition:background .25s var(--ease),border-color .25s var(--ease),color .25s var(--ease),transform .2s var(--ease)}.btn:focus-visible,.chip:focus-visible,.cx-row:focus-visible,.dk-row:focus-visible,.dropzone:focus-within,.inbox-row a:focus-visible,.inbox-row button:focus-visible,.reg-row:focus-visible,.roster-student-link:focus-visible,.section:focus-visible{outline:2px solid var(--green);outline-offset:3px}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.45;transform:none}.btn-primary{background:var(--green);border:1px solid var(--green);color:#fcfbf6}.btn-primary:hover:not(:disabled){background:var(--green-deep);color:#fcfbf6;transform:translateY(-1px)}.btn-quiet{background:transparent;border:1px solid var(--rule);color:var(--ink)}.btn-quiet:hover:not(:disabled){border-color:var(--slate-soft)}.btn-text{background:transparent;border:0;color:var(--slate);font-family:var(--mono);font-size:.74rem;min-height:auto;padding:0}.btn-text:hover:not(:disabled){color:var(--green);transform:none}.btn-risk{background:transparent;border:1px solid #e0c4c0;color:var(--oxblood)}.btn-risk:hover:not(:disabled){border-color:var(--oxblood)}.btn-link{align-items:center}.alert,.status-note{border-left:3px solid var(--rule);color:var(--slate);margin:0;padding:9px 12px}.alert.error{border-left-color:var(--oxblood);color:var(--oxblood)}.alert.success{border-left-color:var(--green);color:var(--green)}.alert.warn{border-left-color:var(--gold);color:#8a631c}.alert:focus{outline:2px solid var(--green);outline-offset:3px}.frontispiece-page{display:grid;min-height:100vh;padding:2rem;place-items:center}.frontispiece-wrap{display:grid;place-items:center;text-align:center}.frontispiece{max-width:32rem}.rule-double{border-top:2.5px solid var(--ink);box-shadow:0 3px 0 -1px var(--ink);height:0;margin:0 auto;transform-origin:center;width:56px}.imprint-top{color:var(--slate);font-family:var(--sans);font-size:.74rem;font-weight:600;letter-spacing:.26em;margin:26px 0 16px;text-transform:uppercase}.frontispiece-title{color:var(--ink);font-family:var(--serif);font-size:3.4rem;font-weight:500;line-height:1.02;margin:0}.imprint-sub{color:var(--green);font-family:var(--sans);font-size:.7rem;font-weight:600;letter-spacing:.2em;margin:14px 0 0;text-transform:uppercase}.imprint-motto{color:var(--slate);font-family:var(--serif);font-size:1.16rem;font-style:italic;margin:14px 0 26px}.frontispiece-action{margin-top:28px}.frontispiece-action .sub{color:var(--slate-soft);display:block;font-size:.9rem;margin-top:14px}.auth-panel{border-bottom:1px solid var(--rule);border-top:1px solid var(--rule);margin:0 auto;max-width:26rem;padding:22px 0 18px;text-align:left}.auth-form{display:grid;gap:14px}.auth-form .field{gap:7px}.auth-submit{width:100%}.auth-switch{color:var(--slate);font-size:.92rem;line-height:1.5;margin:16px 0 0;text-align:center}.preview-accounts{border-top:1px solid var(--rule-soft);margin:18px auto 0;max-width:26rem;padding-top:14px}.preview-accounts summary{color:var(--slate);cursor:pointer;font-family:var(--mono);font-size:.74rem;list-style-position:inside;text-align:center}.preview-accounts summary:focus-visible{outline:2px solid var(--green);outline-offset:4px}.preview-accounts .actions{margin-top:14px}.preview-signin-form{margin:0}.auth-role-fieldset{border:0;display:grid;gap:9px;margin:0;padding:0}.auth-role-fieldset legend{color:var(--slate);font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.08em;margin-bottom:7px;text-transform:uppercase}.auth-role-option{align-items:flex-start;border:1px solid var(--rule);border-radius:8px;cursor:pointer;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr);padding:11px 12px;transition:background .2s var(--ease),border-color .2s var(--ease)}.auth-role-option:focus-within,.auth-role-option:hover{background:var(--green-tint);border-color:var(--green)}.auth-role-option input{margin-top:4px}.auth-role-option strong{color:var(--ink);display:block;font-family:var(--serif);font-size:1.04rem;font-weight:500}.auth-role-option small{color:var(--slate);display:block;font-size:.84rem;line-height:1.42;margin-top:2px}.approval-panel,.auth-result{border-bottom:1px solid var(--rule);border-top:2px solid var(--ink);display:grid;gap:10px;margin:0 auto;max-width:32rem;padding:22px 0;text-align:left}.approval-panel h1,.auth-result h2{font-size:1.75rem;font-weight:500;line-height:1.12;margin:0}.approval-panel p,.auth-result p{color:var(--slate);line-height:1.55;margin:0}.auth-result .btn{justify-self:start;margin-top:8px}.approval-kicker,.auth-result-kicker{color:var(--oxblood);font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.approval-panel,.auth-result.pending{border-top-color:var(--gold)}.auth-result.approved{border-top-color:var(--green)}.auth-result-email{color:var(--slate-soft);font-family:var(--mono);font-size:.8rem;overflow-wrap:anywhere}.classdex{display:flex;flex-direction:column;max-width:760px}.class-list-block{display:grid;gap:12px;max-width:860px}.class-list-tools{align-items:center;display:flex;flex-wrap:wrap;gap:12px 18px;justify-content:space-between}.class-list-summary{color:var(--slate);font-size:.95rem;line-height:1.45;margin:0}.class-list-match{color:var(--slate-soft);font-family:var(--mono);font-size:.72rem;margin:-2px 0 0}.class-search{flex:1 1 18rem;max-width:24rem;min-height:38px;min-width:min(18rem,100%);padding:8px 11px}.register-more{justify-self:start;margin-top:2px}.cx-row{align-items:center;border-bottom:1px solid var(--rule-soft);color:inherit;display:grid;gap:16px;grid-template-columns:minmax(7rem,9rem) minmax(0,1fr) auto auto;padding:20px 4px;text-decoration:none;transition:background .2s var(--ease),padding-left .2s var(--ease)}.cx-row:first-child{border-top:1px solid var(--rule-soft)}.cx-row:hover{background:linear-gradient(90deg,var(--green-tint),transparent 80%);padding-left:10px}.cx-code{color:var(--ink);font-family:var(--serif);font-size:1.3rem;font-weight:500}.cx-title{color:var(--ink);display:block;font-size:1.04rem}.cx-meta{color:var(--slate-soft);display:block;font-family:var(--mono);font-size:.73rem;margin-top:3px}.cx-row .leader{align-self:center;border-bottom:2px dotted var(--rule);height:0;min-width:18px}.cx-clear{color:var(--green);font-family:var(--mono);font-size:.76rem;white-space:nowrap}.cx-go,.dk-row .arrow,.mini-row .arrow,.section .s-go{color:var(--rule);font-family:var(--mono);transition:color .25s var(--ease),transform .25s var(--ease)}.cx-row:hover .cx-go,.dk-row:hover .arrow,.mini-row:hover .arrow,.section:hover .s-go{color:var(--green);transform:translateX(3px)}.professor-classdex{max-width:860px}.professor-classdex .cx-row{grid-template-columns:minmax(0,1fr) auto auto}.professor-classdex .cx-title{font-family:var(--serif);font-size:1.24rem;font-weight:500}.need-badge{background:var(--gold-tint);border:1px solid #e1c989;border-radius:999px;color:#7a5717;font-family:var(--mono);font-size:.72rem;padding:5px 10px;white-space:nowrap}.review-clear{color:var(--slate-soft)}.inbox-status{align-items:start;border-bottom:1px solid var(--rule);border-top:1px solid var(--rule);display:grid;gap:5px;max-width:980px;padding:16px 0}.inbox-relief-primary,.inbox-relief-secondary{margin:0}.inbox-relief-primary{border-left:3px solid var(--green);color:var(--ink);font-family:var(--serif);font-size:1.3rem;font-weight:500;line-height:1.35;padding-left:10px}.inbox-relief-secondary{color:var(--slate);font-size:.96rem;line-height:1.45;padding-left:13px}.inbox-section{display:grid;gap:13px;max-width:980px}.inbox-section-head{align-items:end;border-bottom:1.5px solid var(--ink);display:flex;gap:16px;justify-content:space-between;padding-bottom:12px}.inbox-section-head h2{font-size:1.55rem;font-weight:500;margin:0 0 4px}.inbox-count{background:var(--surface-2);border:1px solid var(--rule);border-radius:999px;color:var(--ink);font-family:var(--mono);font-size:.72rem;line-height:1.1;padding:6px 10px;white-space:nowrap}.inbox-send-head{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.inbox-list{display:grid}.inbox-batches{display:grid;gap:14px}.inbox-batch-card{background:var(--surface);border:1px solid var(--rule);border-radius:8px;display:grid;gap:4px;padding:16px 18px 14px}.inbox-batch-head{align-items:start;border-bottom:1px solid var(--rule-soft);display:flex;gap:14px;justify-content:space-between;padding-bottom:10px}.inbox-batch-eyebrow{color:var(--slate-soft);font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;margin:0 0 4px;text-transform:uppercase}.inbox-batch-head h3{color:var(--ink);font-family:var(--serif);font-size:1.28rem;font-weight:500;line-height:1.2;margin:0}.inbox-row{align-items:center;border-bottom:1px solid var(--rule-soft);display:grid;gap:16px;grid-template-columns:minmax(0,1fr) auto auto;min-width:0;padding:15px 2px}.inbox-row.compact{grid-template-columns:minmax(0,1fr) auto}.inbox-row:hover{background:linear-gradient(90deg,var(--surface-2),transparent 85%)}.inbox-row-main{display:grid;gap:4px;min-width:0}.inbox-student{color:var(--ink);font-family:var(--serif);font-size:1.18rem;font-weight:500;line-height:1.15}.inbox-context,.inbox-meta{color:var(--slate-soft);font-family:var(--mono);font-size:.72rem;overflow-wrap:anywhere}.inbox-reason{color:var(--slate);font-size:.9rem;line-height:1.38}.inbox-row-facts{align-items:baseline;color:var(--slate-soft);display:flex;flex-wrap:wrap;font-size:.82rem;gap:5px 12px;line-height:1.35}.inbox-row-facts,.inbox-row-facts>time{overflow-wrap:anywhere}.inbox-row-facts>time:before{color:var(--rule);content:"·";margin-right:12px}.inbox-row-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.inbox-row-actions .btn{min-height:38px;padding:8px 13px}.inbox-recent{max-width:980px}.inbox-recent .inbox-list{margin-top:12px}.inbox-ready-classes{display:grid}.inbox-class-row{align-items:center;border-bottom:1px solid var(--rule-soft);display:grid;gap:16px;grid-template-columns:minmax(0,1fr) auto;padding:15px 2px}.inbox-class-main{display:grid;gap:4px;min-width:0}.inbox-class-title{color:var(--ink);font-family:var(--serif);font-size:1.18rem;font-weight:500;line-height:1.15}.inbox-class-meta{color:var(--slate);font-size:.9rem;line-height:1.38}.inbox-empty{margin-left:0}.professor-loading .lead{margin-bottom:4px}.loading-surface{display:grid;gap:22px;max-width:980px}.student-loading .loading-surface{gap:18px;max-width:720px}.student-loading-lines{display:grid;gap:12px;max-width:580px;padding:10px 0 2px}.student-loading-lines .sk-line{height:13px;width:72%}.student-loading-lines .sk-line.wide{width:100%}.student-loading-lines .sk-line.short{width:42%}.professor-loading.wide .loading-surface{max-width:980px}.sk-arrow,.sk-button,.sk-count,.sk-line,.sk-pill{background:linear-gradient(90deg,var(--surface-2),#fbf8f0,var(--surface-2));border:1px solid var(--rule-soft);border-radius:999px;display:block}.sk-line{height:.78rem}.sk-student{height:1.16rem;width:min(13rem,74%)}.sk-context{width:min(18rem,82%)}.sk-context.short,.sk-reason.short{width:min(12rem,58%)}.sk-reason{width:min(28rem,92%)}.sk-meta{width:min(15rem,70%)}.sk-status{height:.86rem;width:12rem}.sk-class-title,.sk-section-title{height:1rem;width:min(13rem,78%)}.sk-class-meta,.sk-section-sub{margin-top:8px;width:min(22rem,88%)}.sk-review-title{height:1.3rem;width:min(22rem,84%)}.sk-pill{height:1.5rem;width:7.5rem}.sk-count{border-radius:8px;height:2rem;width:2.4rem}.sk-button{border-radius:8px;height:46px;width:9rem}.sk-button-small{height:38px;width:5.6rem}.sk-arrow{height:1.2rem;width:1.2rem}.sk-row,.sk-section{pointer-events:none}.review-loading-grid{display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(14rem,18rem);max-width:980px}.review-loading-main,.review-loading-side{border-bottom:1px solid var(--rule-soft);display:grid;gap:12px;padding:18px 2px 22px}.class-sub{color:var(--slate);font-family:var(--serif);font-size:1.28rem;font-style:italic;margin:8px 0 0}.sections{display:flex;flex-direction:column;max-width:620px}.section{align-items:center;border-top:1px solid var(--rule-soft);color:inherit;display:grid;gap:16px;grid-template-columns:30px minmax(0,1fr) auto;padding:18px 4px;text-decoration:none;transition:background .2s var(--ease),padding-left .2s var(--ease)}.section:last-child{border-bottom:1px solid var(--rule-soft)}.section:hover{background:linear-gradient(90deg,var(--green-tint),transparent 75%);padding-left:10px}.section .s-no{color:var(--green);font-family:var(--serif);font-size:1.36rem}.section .s-name{color:var(--ink);display:block;font-family:var(--serif);font-size:1.18rem;font-weight:500}.section .s-sub{color:var(--slate-soft);display:block;font-family:var(--mono);font-size:.73rem;margin-top:3px}.plain-sections .section{grid-template-columns:minmax(0,1fr) auto}.mini-list,.plain-list{display:grid;gap:0;margin:0;padding:0}.mini-row{align-items:center;border-bottom:1px solid var(--rule-soft);color:inherit;display:grid;gap:14px;grid-template-columns:22px minmax(0,1fr) auto auto;padding:12px 4px;text-decoration:none;transition:background .2s var(--ease)}.mini-row:hover{background:var(--surface-2)}.mini-row .mk{font-family:var(--mono);text-align:center}.mini-name{color:var(--ink);font-family:var(--serif);font-size:1.04rem}.mini-meta{font-family:var(--mono);font-size:.72rem}.mini-meta,.sec-label{color:var(--slate-soft)}.sec-label{border-bottom:1px solid var(--rule);font-family:var(--sans);font-size:.7rem;font-weight:600;letter-spacing:.12em;margin:0 0 12px;padding-bottom:7px;text-transform:uppercase}.register{max-width:640px}.reg-head{border-bottom:1.5px solid var(--ink);color:var(--slate-soft);font-family:var(--sans);font-size:.66rem;font-weight:600;grid-template-columns:1fr auto;letter-spacing:.12em;padding-bottom:8px;text-transform:uppercase}.reg-head,.reg-row{display:grid;gap:18px}.reg-row{align-items:baseline;border-bottom:1px solid var(--rule-soft);color:inherit;grid-template-columns:minmax(0,1fr) auto;padding:16px 2px;text-decoration:none;transition:background .25s var(--ease),padding-left .2s var(--ease)}.reg-row:hover{background:linear-gradient(90deg,var(--green-tint),transparent 75%);padding-left:10px}.reg-row .r-work{color:var(--ink);font-family:var(--serif);font-size:1.16rem;font-weight:500}.reg-row .r-class{color:var(--slate);display:block;font-family:var(--mono);font-size:.74rem;margin-top:4px}.reg-row .r-due{color:var(--oxblood);font-family:var(--mono);font-size:.82rem;white-space:nowrap}.reg-row .r-due.none{color:var(--slate-soft)}.form{display:grid;gap:20px;max-width:620px}.form.compact{gap:12px}.field{display:grid;gap:8px}.field-label,.field>label,label.field>span{color:var(--slate);display:block;font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.field>label .opt{color:var(--slate-soft);font-family:var(--mono);font-size:.7rem;font-weight:400;letter-spacing:0;margin-left:8px;text-transform:none}.field input,.field select,.field textarea,.select-input,.text-input,.textarea-input{background:var(--surface);border:1px solid var(--rule);border-radius:8px;color:var(--ink);min-height:44px;padding:11px 13px;transition:border-color .2s var(--ease),box-shadow .2s var(--ease);width:100%}.field input:focus,.field select:focus,.field textarea:focus,.select-input:focus,.text-input:focus,.textarea-input:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-tint);outline:none}.field textarea,.textarea-input{line-height:1.5;min-height:96px;resize:vertical}.inline-form-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.inline-form-row .text-input{flex:1 1 16rem}.optional-row{margin-top:10px}.helper,.hint{color:var(--slate-soft);font-size:.92rem;line-height:1.55;margin:0}.dash-empty{color:var(--slate);font-size:.94rem;margin:0}.choice{display:flex;flex-wrap:wrap;gap:10px}.choice label{align-items:center;border:1px solid var(--rule);border-radius:8px;color:var(--ink);cursor:pointer;display:inline-flex;font-size:.94rem;gap:8px;padding:9px 14px;transition:border-color .2s var(--ease)}.choice label:hover{border-color:var(--slate-soft)}.choice input,input[type=checkbox],input[type=radio]{accent-color:var(--green)}.form-actions{border-top:1px solid var(--rule);gap:12px;margin-top:6px;padding-top:18px}.chips,.form-actions{display:flex;flex-wrap:wrap}.chips{gap:8px;list-style:none;margin:20px 0 8px;padding:0}.chip{background:transparent;border:1px solid var(--rule);border-radius:999px;color:var(--slate);cursor:pointer;font-size:.82rem;padding:6px 14px;text-decoration:none;transition:all .2s var(--ease)}.chip .n{color:var(--slate-soft);font-family:var(--mono);font-size:.72rem;margin-left:6px}.chip:hover{border-color:var(--slate-soft);color:var(--ink)}.chip[data-on=true]{background:var(--ink);border-color:var(--ink);color:var(--surface)}.chip[data-on=true] .n{color:rgba(255,253,248,.7)}.summary-strip{border-bottom:1px solid var(--rule);border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:.8rem;margin:16px 0;padding:.75rem 0}.counter{border-left:3px solid var(--green);min-width:8rem;padding:.15rem .65rem}.counter .k{color:var(--slate-soft);font-size:.75rem}.counter .v{color:var(--ink);font-size:1.25rem}.analytics-panel{border-bottom:1px solid var(--rule);display:grid;gap:.85rem;margin:0 0 1rem;padding:0 0 .9rem}.analytics-grid,.metric-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}.received-package-detail .metric-grid .ff{align-content:start;gap:.35rem;grid-template-columns:minmax(0,1fr)}.received-package-detail .metric-grid .ff-v{margin:0}.review-posture-grid{border-top:1px solid var(--rule);display:grid;max-width:700px}.review-posture-grid .ff{min-width:0}.review-posture-grid .ff-v{overflow-wrap:anywhere}.result-stack{display:grid;gap:18px;margin-top:18px}.section-block{border-top:1px solid var(--rule);display:grid;gap:12px;margin-top:18px;padding-top:18px}.section-block h2,.section-block h3,.section-block h4{font-family:var(--serif);font-weight:500;margin:0}.package-summary{border:1px solid var(--rule);border-radius:8px;display:grid;gap:14px;padding:16px}.warning-list{color:var(--slate);line-height:1.55;margin:0;padding-left:1.2rem}.metric{min-width:0}.metric-label{color:var(--slate-soft);font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.metric-value{color:var(--ink);display:block;overflow-wrap:anywhere}.dk-bar,.docket-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin:18px 0 0}.docket-controls{justify-content:flex-start}.filterbar{gap:10px;margin:0 0 4px}.filterbar,.send-results-toolbar{align-items:center;display:flex;flex-wrap:wrap}.send-results-toolbar{background:var(--surface-2);border:1px solid var(--rule);border-radius:8px;gap:12px 18px;justify-content:space-between;margin:18px 0;padding:14px 16px}.send-results-toolbar-copy{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px 14px}.send-results-toolbar-title{color:var(--ink);font-family:var(--serif);font-size:1.08rem;font-weight:500}.control{background:var(--surface);border:1px solid var(--rule);border-radius:8px;color:var(--ink);min-height:42px;padding:9px 12px}.control:focus-visible{border-color:var(--green);box-shadow:0 0 0 3px var(--green-tint);outline:none}.check-label{align-items:center;color:var(--ink-soft);display:inline-flex;gap:8px}.dk-sort{color:var(--slate-soft);font-family:var(--mono);font-size:.68rem;letter-spacing:.04em}.docket{border-top:1.5px solid var(--ink);display:grid;grid-template-columns:1fr 1fr;margin-top:8px}.submission-feed{grid-template-columns:minmax(0,760px)}.dk-row{background:transparent;border:0;border-bottom:1px solid var(--rule-soft);color:inherit;cursor:pointer;display:block;padding:17px 20px;text-align:left;text-decoration:none;transition:background .2s var(--ease)}.dk-row:nth-child(odd){border-right:1px solid var(--rule-soft);padding-left:2px}.dk-row:nth-child(2n){padding-left:24px}.submission-feed .dk-row:nth-child(2n),.submission-feed .dk-row:nth-child(odd){border-right:0;padding-left:2px}.dk-row:hover{background:var(--surface-2)}.docket.is-select .dk-row{align-items:start;display:grid;gap:13px;grid-template-columns:20px minmax(0,1fr)}.dk-row.locked{cursor:default;opacity:.5}.dk-body{display:flex;flex-direction:column;gap:7px}.dk-top{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.dk-row .student{color:var(--ink);font-family:var(--serif);font-size:1.16rem;font-weight:500;line-height:1.15}.dk-row .sid{color:var(--slate-soft);display:block;font-family:var(--mono);font-size:.68rem;margin-top:3px}.dk-row .work-title{color:var(--slate);font-size:.92rem;line-height:1.4}.submission-lineage-cue{align-items:baseline;border-left:2px solid var(--rule);color:var(--ink-soft);display:flex;flex-wrap:wrap;gap:5px 9px;margin:1px 0 2px;padding-left:10px}.submission-lineage-cue span{font-family:var(--mono);font-size:.72rem;font-weight:600;letter-spacing:.04em}.submission-lineage-cue small{color:var(--slate);font-size:.8rem;line-height:1.35}.submission-lineage-cue.is-chain{border-left-color:var(--gold)}.submission-lineage-cue.is-unavailable{border-left-color:var(--rule-soft);color:var(--slate-soft)}.submission-reason{color:var(--slate);display:block;font-size:.82rem;line-height:1.35;max-width:100%;overflow-wrap:anywhere}.dk-foot{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-top:1px}.dk-foot .meta{color:var(--slate-soft);font-size:.72rem}.dk-foot .meta,.selbox{font-family:var(--mono)}.selbox{align-items:center;background:var(--surface);border:1px solid var(--rule);border-radius:5px;color:#fcfbf6;display:grid;font-size:.74rem;height:18px;justify-content:center;line-height:1;margin-top:3px;transition:background .2s var(--ease),border-color .2s var(--ease);width:18px}.selbox.on{background:var(--green);border-color:var(--green)}.selbox.disabled{opacity:.35}.state{align-items:center;color:var(--ink-soft);display:inline-flex;font-size:.85rem;gap:8px;min-width:0;white-space:nowrap}.state .mk{font-family:var(--mono);font-weight:500;text-align:center;width:16px}.mini-row.needs_review .mk,.state.needs_review .mk{color:var(--gold)}.mini-row.released .mk,.state.released .mk,.state.sent .mk,.state.verified .mk{color:var(--green)}.mini-row.held .mk,.state.held .mk{color:var(--oxblood)}.mini-row.resubmit .mk,.state.resubmit .mk{color:var(--slate)}.submission-card-facts{color:var(--slate);display:flex;flex-wrap:wrap;font-size:.86rem;gap:8px 14px}.submission-card-facts .fact-wide{flex-basis:100%}.submission-card-facts .needs_review{color:#8a631c}.bulkbar{align-items:center;background:var(--surface);border-top:1px solid var(--rule);bottom:0;box-shadow:0 -10px 24px -18px rgba(23,26,28,.4);display:flex;gap:16px;justify-content:space-between;margin:18px calc(clamp(26px, 3.5vw, 48px) * -1) -36px;padding:16px clamp(26px,3.5vw,48px);position:sticky;z-index:20}.bulkbar .bb-count{color:var(--slate);font-family:var(--mono);font-size:.82rem}.bulkbar .bb-actions{display:flex;flex-wrap:wrap;gap:12px}.brief{align-items:start;display:grid;gap:38px;grid-template-columns:270px minmax(0,1fr)}.ctx{border-top:2px solid var(--ink);display:flex;flex-direction:column;gap:0}.ctx .field{border-bottom:1px solid var(--rule-soft);display:block;padding:12px 0}.ctx .k{color:var(--slate-soft);font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;margin-bottom:4px;text-transform:uppercase}.ctx .v{color:var(--ink);font-size:.96rem}.ctx .v.serif{font-family:var(--serif);font-size:1.18rem;font-weight:500}.ctx .v.mono{font-family:var(--mono);font-size:.86rem;letter-spacing:.03em}.ok{color:var(--green);font-weight:500}.timeline{list-style:none;margin:0;padding:16px 0 2px}.timeline .tl-label{color:var(--slate-soft);font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;margin-bottom:12px;text-transform:uppercase}.tl-step{display:grid;gap:12px;grid-template-columns:16px 1fr;padding-bottom:14px;position:relative}.tl-step:not(:last-child):before{background:var(--rule);bottom:0;content:"";left:7px;position:absolute;top:16px;width:1px}.tl-step .dot{background:var(--green);border-radius:50%;height:9px;margin-top:4px;width:9px}.tl-step .tl-t{color:var(--ink);font-size:.88rem}.tl-step .tl-when{color:var(--slate-soft);font-family:var(--mono);font-size:.7rem}.timeline .tl-step>div>.tl-when{display:block}.timeline .tl-step>div>[data-testid=paper-submission-history-state]{margin-top:2px}.brief-main h2.bm-title{color:var(--ink);font-family:var(--serif);font-size:2.1rem;font-weight:500;margin:0 0 4px}.brief-main .bm-sub{color:var(--slate-soft);font-family:var(--mono);font-size:.76rem;margin-bottom:20px}.verdict{align-items:flex-start;border:1px solid var(--rule);border-left:4px solid var(--slate);border-radius:8px;display:flex;gap:14px;margin-bottom:26px;padding:16px 18px}.verdict .vmark{font-family:var(--serif);font-size:1.4rem;line-height:1;margin-top:2px}.verdict .vt{color:var(--ink);display:block;font-weight:600;margin-bottom:3px}.verdict .vb{color:var(--slate);font-size:.92rem;line-height:1.5}.verdict.flagged{background:var(--gold-tint);border-left-color:var(--gold)}.verdict.flagged .vmark{color:var(--gold)}.verdict.verified{background:var(--green-tint);border-left-color:var(--green)}.verdict.verified .vmark{color:var(--green)}.verdict.held{background:var(--oxblood-tint);border-left-color:var(--oxblood)}.verdict.held .vmark{color:var(--oxblood)}.reasons{display:flex;flex-direction:column;gap:0;margin-bottom:26px}.reason{align-items:baseline;border-bottom:1px solid var(--rule-soft);display:grid;gap:12px;grid-template-columns:18px 1fr auto;padding:11px 2px}.reason .rk{color:var(--gold);font-family:var(--mono)}.reason .rt{color:var(--ink);font-size:.96rem}.reason .rloc{color:var(--slate-soft);font-family:var(--mono);font-size:.74rem}.passages{margin-bottom:28px}.passage{border-left:3px solid var(--rule);margin-bottom:16px;padding:4px 0 4px 16px}.passage .ptag{color:var(--oxblood);font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;margin-bottom:6px;text-transform:uppercase}.passage blockquote{color:var(--ink-soft);font-family:var(--serif);font-size:1.06rem;font-style:italic;line-height:1.55;margin:0}.decision{border-top:2px solid var(--ink);margin-top:8px;padding-top:20px}.appendix{margin-top:18px}.appendix a{color:var(--slate);cursor:pointer;font-family:var(--mono);font-size:.76rem;transition:color .2s var(--ease)}.appendix a:hover{color:var(--green)}.detail-grid,.term-grid{-moz-column-gap:24px;column-gap:24px;display:grid;grid-template-columns:minmax(9rem,max-content) minmax(0,1fr);row-gap:12px}.detail-grid dt,.term-grid dt{color:var(--slate-soft);font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.detail-grid dd,.term-grid dd{color:var(--ink);margin:0;overflow-wrap:anywhere}.archive-panel{border-top:1px solid var(--rule);margin-top:18px;padding-top:18px}.archive-panel summary{color:var(--ink);cursor:pointer;font-family:var(--serif);font-size:1.25rem;font-weight:500}.archive-panel summary:focus-visible,.more-options summary:focus-visible{outline:2px solid var(--green);outline-offset:4px}.class-insights{max-width:860px}.class-insights>summary{font-size:1.05rem}.class-insights .analytics-panel{margin-top:14px}.compact-intake{gap:14px}.compact-intake .dropzone{padding:30px 22px}.review-leaf{display:grid;gap:20px;max-width:820px}.review-context{display:grid;gap:8px}.context-line{border-bottom:1px solid var(--rule-soft);border-top:1px solid var(--rule-soft);display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:13px 0}.context-line div{min-width:0}.context-line dt{color:var(--slate-soft);font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase}.context-line dd{color:var(--ink);margin:4px 0 0;overflow-wrap:anywhere}.submission-lineage-panel{background:linear-gradient(90deg,rgba(40,95,72,.06),transparent 58%),var(--surface-2);border:1px solid var(--rule-soft);border-left:3px solid var(--green);border-radius:8px;display:grid;gap:8px;padding:16px 18px}.submission-lineage-panel.is-chain{border-left-color:var(--gold)}.submission-lineage-panel.is-unavailable{background:var(--surface-2);border-left-color:var(--rule)}.submission-lineage-panel h2{color:var(--ink);font-family:var(--serif);font-size:1.28rem;font-weight:500;margin:2px 0 0}.submission-lineage-panel>p{color:var(--slate);line-height:1.5;margin:0;max-width:64ch}.submission-lineage-title{align-items:start;display:flex;gap:16px;justify-content:space-between}.submission-lineage-status{border:1px solid var(--rule);border-radius:999px;color:var(--ink-soft);flex:0 0 auto;font-family:var(--mono);font-size:.68rem;padding:4px 9px}.submission-lineage-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:2px}.review-verdict{margin:0}.review-verdict .vt{font-family:var(--serif);font-size:1.32rem;font-weight:500;line-height:1.2}.review-verdict .vb{display:block;margin-top:6px}.reason-list{color:var(--ink);display:grid;gap:6px;margin:14px 0 0;padding-left:1.2rem}.verdict-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.primary-action-copy{display:grid;gap:7px}.decision-option span,.primary-action-copy span{color:var(--slate);font-size:.88rem;line-height:1.42}.review-decision-block{border-top:1px solid var(--rule);display:grid;gap:14px;margin-top:18px;padding-top:16px}.review-decision-block h2{color:var(--ink);font-family:var(--serif);font-size:1.22rem;font-weight:500;margin:0 0 4px}.review-decision-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.decision-option{align-content:start;border:1px solid var(--rule-soft);border-radius:8px;display:grid;gap:8px;padding:12px}.decision-option .btn{justify-content:center;min-height:42px;width:100%}.more-options{position:relative}.more-options summary{color:var(--slate);cursor:pointer;font-family:var(--mono);font-size:.76rem;padding:8px 0}.more-options .actions{margin-top:8px}.advanced-review,.evidence-disclosure{max-width:820px}.roster-row{align-items:baseline;border-bottom:1px solid var(--rule-soft);display:grid;gap:16px;grid-template-columns:1.5fr 1fr .8fr .8fr auto;padding:14px 10px}.roster-row.head{border-bottom:1.5px solid var(--ink);color:var(--slate-soft);font-family:var(--sans);font-size:.66rem;font-weight:600;letter-spacing:.11em;padding-bottom:9px;text-transform:uppercase}.roster-row .rs-name{color:var(--ink);font-family:var(--serif);font-size:1.1rem;font-weight:500}.roster-row .rs-mono{color:var(--slate);font-family:var(--mono);font-size:.78rem}.roster-retention-note,.roster-summary{color:var(--slate);display:flex;flex-wrap:wrap;font-family:var(--mono);font-size:.74rem;gap:10px;line-height:1.5;margin:10px 0 14px}.roster-retention-note span+span:before,.roster-summary span+span:before{color:var(--rule);content:"·";margin-right:10px}.roster-retention-note span:last-child{flex-basis:100%;font-family:var(--sans);font-size:.86rem}.roster-status-cell{align-items:flex-start;display:flex;flex-direction:column;gap:5px}.roster-left-at{white-space:nowrap}.pill{border:1px solid var(--rule);border-radius:999px;color:var(--slate);font-family:var(--mono);font-size:.68rem;padding:3px 9px}.pill.active{background:var(--green-tint);border-color:#b8d6c8;color:var(--green)}.pill.invited{color:var(--slate-soft)}.pill.removed{background:#fbf2ef;border-color:#d9b8ad;color:var(--oxblood)}.roster-actions{min-width:0}.roster-retained{color:var(--slate);display:block;font-family:var(--mono);font-size:.72rem;line-height:1.45;max-width:250px}.roster-confirmation{background:var(--surface);border:1px solid #d9b8ad;border-radius:8px;display:grid;gap:10px;min-width:min(300px,100%);padding:10px}.roster-confirmation-copy{color:var(--slate);display:grid;font-family:var(--sans);font-size:.82rem;gap:4px;line-height:1.4}.roster-confirmation-copy strong{color:var(--ink);font-family:var(--serif);font-size:1rem;font-weight:600}.roster-confirmation-actions{display:flex;flex-wrap:wrap;gap:7px}.roster-confirmation-actions .btn{font-size:.78rem;min-height:36px;padding:7px 11px}.rmbtn{background:transparent;border:0;color:var(--slate-soft);cursor:pointer;font-family:var(--mono);font-size:.74rem;opacity:0;padding:0;transition:color .2s var(--ease),opacity .2s var(--ease)}.rmbtn:focus-visible,.roster-row:hover .rmbtn{opacity:1}.rmbtn:hover{color:var(--oxblood)}.invite-card{background:var(--surface);border:1px solid var(--rule);border-radius:10px;max-width:520px;overflow:hidden}.iv-row{align-items:center;border-bottom:1px solid var(--rule-soft);display:grid;gap:18px;grid-template-columns:120px minmax(0,1fr);padding:16px 22px}.iv-k{color:var(--slate-soft);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}.iv-code,.iv-k{font-family:var(--mono)}.iv-code{color:var(--green-deep);font-size:1.34rem;font-weight:500;letter-spacing:.06em}.iv-link{color:var(--ink);font-family:var(--mono);font-size:.9rem;overflow-wrap:anywhere}.iv-actions{display:flex;flex-wrap:wrap;gap:12px;padding:18px 22px}.dropzone{background:var(--surface-2);border:1.5px dashed var(--rule);border-radius:10px;cursor:pointer;display:grid;gap:4px;justify-items:center;max-width:540px;padding:46px 24px;position:relative;text-align:center;transition:background .25s var(--ease),border-color .25s var(--ease);width:100%}.dropzone:focus-within,.dropzone:hover{background:var(--green-tint);border-color:var(--green)}.dropzone input[type=file]{inset:0;cursor:pointer;opacity:0;position:absolute}.dropzone .dz-ic{color:var(--slate);height:30px;margin-bottom:8px;transition:color .25s var(--ease);width:30px}.dropzone:hover .dz-ic{color:var(--green)}.dropzone .dz-t{color:var(--ink);font-family:var(--serif);font-size:1.2rem}.dropzone .dz-sub{color:var(--slate-soft);font-family:var(--mono);font-size:.74rem}.intake-panel{display:grid;gap:22px}.file-form{display:grid;gap:14px;max-width:560px}.file-form .actions{justify-content:flex-start}.ctx-flat{border-top:1px solid var(--rule);display:flex;flex-direction:column;margin-bottom:18px;max-width:700px}.ff{border-bottom:1px solid var(--rule-soft);display:grid;gap:18px;grid-template-columns:170px minmax(0,1fr);padding:12px 2px}.ff-k{color:var(--slate-soft);font-family:var(--mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}.ff-v{color:var(--ink);font-size:.96rem;overflow-wrap:anywhere}.ff-v.mono{font-family:var(--mono);font-size:.86rem;letter-spacing:.03em}.validation-grid{display:grid;gap:.4rem;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));list-style:none;margin:0;padding:0}.check-card{border:1px solid var(--rule);border-radius:6px;padding:.45rem .55rem}.check-card.pass{color:var(--green)}.check-card.fail{color:var(--oxblood)}.table-scroll{overflow-x:auto}.table-scroll:focus-visible{outline:2px solid var(--green);outline-offset:4px}.press-table{border-collapse:collapse;min-width:42rem;width:100%}.press-table th{border-bottom:1.5px solid var(--ink);color:var(--slate-soft);font-family:var(--sans);font-size:.66rem;font-weight:600;letter-spacing:.11em;padding:.45rem .5rem;text-align:left;text-transform:uppercase}.press-table td{border-bottom:1px solid var(--rule-soft);color:var(--ink);padding:.55rem .5rem;vertical-align:top}.operator-main{background:linear-gradient(90deg,rgba(176,138,60,.035),transparent 18rem),var(--surface)}.operator-desk{gap:34px;max-width:76rem}.operator-intro{max-width:60rem}.operator-intro .lead{max-width:62ch}.operator-intro .alert{max-width:46rem}.operator-retry{justify-self:start}.operator-section{border-top:2px solid var(--ink);display:grid;gap:0}.operator-pending{border-top-color:var(--gold)}.operator-revoked{border-top-color:var(--oxblood)}.operator-section-head{align-items:end;border-bottom:1px solid var(--rule);display:flex;gap:20px;justify-content:space-between;padding:15px 2px 13px}.operator-margin-label{color:var(--slate-soft);font-family:var(--mono);font-size:.65rem;letter-spacing:.11em;margin:0 0 3px;text-transform:uppercase}.operator-section-head h2{font-size:1.55rem;font-weight:500;line-height:1.15;margin:0}.operator-count{color:var(--slate-soft);font-family:var(--mono);font-size:.72rem;white-space:nowrap}.operator-register{display:grid}.operator-row{border-bottom:1px solid var(--rule-soft);display:grid;gap:clamp(24px,4vw,54px);grid-template-columns:minmax(15rem,.78fr) minmax(18rem,1.22fr);padding:24px 2px 25px 18px;position:relative}.operator-row:before{background:var(--rule);content:"";height:30px;left:0;position:absolute;top:27px;width:3px}.operator-pending .operator-row:before{background:var(--gold)}.operator-revoked .operator-row:before{background:var(--oxblood)}.operator-row-context,.operator-row-decision{align-content:start;display:grid;gap:12px;min-width:0}.operator-state{align-items:center;color:var(--slate);display:inline-flex;font-family:var(--sans);font-size:.68rem;font-weight:600;gap:7px;letter-spacing:.08em;text-transform:uppercase;width:-moz-fit-content;width:fit-content}.operator-state:before{background:var(--slate-soft);border-radius:50%;content:"";height:7px;width:7px}.operator-state.pending:before{background:var(--gold)}.operator-state.approved:before{background:var(--green)}.operator-state.revoked:before{background:var(--oxblood)}.operator-identity{display:grid;gap:3px;min-width:0}.operator-identity strong{color:var(--ink);font-family:var(--serif);font-size:1.28rem;font-weight:500;line-height:1.15}.operator-identity a{overflow-wrap:anywhere;width:-moz-fit-content;width:fit-content}.operator-decision-meta,.operator-identity span,.operator-limit-note{color:var(--slate-soft);font-family:var(--mono);font-size:.7rem;line-height:1.55;overflow-wrap:anywhere}.operator-decision-meta{border-top:1px solid var(--rule-soft);display:grid;gap:3px;padding-top:9px}.operator-decision-meta p{margin:0}.operator-decision-meta p>span{color:var(--ink);font-family:var(--sans);font-weight:600}.operator-record-note{color:var(--slate);font-size:.9rem;line-height:1.55;margin:0;overflow-wrap:anywhere}.operator-record-note>span{color:var(--ink);display:block;font-family:var(--sans);font-size:.68rem;font-weight:600;letter-spacing:.08em;margin-bottom:3px;text-transform:uppercase}.operator-record-note.muted{color:var(--slate-soft);font-style:italic}.operator-row-copy{color:var(--slate);line-height:1.55;margin:0;max-width:52ch}.operator-action-disclosure{border-bottom:1px solid var(--rule);border-top:1px solid var(--rule)}.operator-action-disclosure summary{color:var(--green);cursor:pointer;font-family:var(--sans);font-size:.9rem;font-weight:600;list-style-position:inside;padding:11px 2px}.operator-action-disclosure.risk summary{color:var(--oxblood)}.operator-action-disclosure summary:focus-visible,.operator-confirm:focus-within{outline:2px solid var(--green);outline-offset:3px}.operator-decision-form{background:linear-gradient(90deg,var(--green-tint),transparent 80%);border-top:1px solid var(--rule-soft);display:grid;gap:12px;padding:18px 14px 16px}.operator-revoke-form{background:linear-gradient(90deg,var(--oxblood-tint),transparent 80%)}.operator-decision-form textarea{min-height:88px}.operator-form-actions{display:flex;justify-content:flex-start}.operator-confirm{align-items:start;color:var(--slate);cursor:pointer;display:grid;font-size:.86rem;gap:9px;grid-template-columns:auto minmax(0,1fr);line-height:1.48}.operator-confirm input{accent-color:var(--oxblood);height:17px;margin:2px 0 0;width:17px}.operator-empty{border-bottom:1px solid var(--rule-soft);display:grid;gap:4px;padding:27px 2px}.operator-empty p{color:var(--ink);font-family:var(--serif);font-size:1.12rem;margin:0}.operator-empty span{color:var(--slate);font-size:.9rem}.operator-limit-note{border-bottom:1px solid var(--rule-soft);margin:0;padding:10px 2px}.operator-loading{border-top-color:var(--gold);gap:16px;padding:24px 0}.operator-loading-line{animation:operator-pulse 1.8s var(--ease) infinite;background:linear-gradient(90deg,var(--rule-soft),var(--surface-2),var(--rule-soft));border-radius:3px;height:18px;width:58%}.operator-loading-line.wide{width:86%}@keyframes operator-pulse{0%,to{opacity:.48}50%{opacity:1}}.empty{display:grid;gap:6px;justify-items:center;margin:8px auto 0;max-width:460px;padding:54px 20px;text-align:center}.empty .empty-mk{color:var(--rule);font-family:var(--serif);font-size:2rem;margin-bottom:6px}.empty .empty-t{color:var(--ink);font-family:var(--serif);font-size:1.5rem;font-weight:500;margin:0}.empty .empty-b{color:var(--slate);font-size:.96rem;line-height:1.55;margin:4px 0 16px}.modal-overlay{background:rgba(23,26,28,.42);display:grid;inset:0;padding:24px;place-items:center;position:fixed;z-index:120}.modal-card{animation:rise .3s var(--ease) both;background:var(--surface);border-radius:12px;border:1px solid var(--rule);border-top:3px solid var(--slate);box-shadow:0 24px 60px -24px rgba(23,26,28,.5);padding:26px 26px 22px;width:min(440px,100%)}.modal-card.tone-release{border-top-color:var(--green)}.modal-card.tone-resubmit{border-top-color:var(--slate)}.modal-card.tone-hold{border-top-color:var(--oxblood)}.modal-card .m-eyebrow{color:var(--oxblood);font-family:var(--sans);font-size:.7rem;font-weight:600;letter-spacing:.04em;margin:0 0 10px;text-transform:uppercase}.modal-card h3{color:var(--ink);font-family:var(--serif);font-size:1.6rem;font-weight:500;line-height:1.12;margin:0 0 9px}.modal-card .m-body{color:var(--slate);font-size:.95rem;line-height:1.55;margin:0 0 22px}.modal-card .m-actions{display:flex;gap:12px;justify-content:flex-end}.stagger>*{animation:rise .55s var(--ease) both}.folio-rule,.rule-double{animation:wipe .7s var(--ease) .16s both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes wipe{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes skeleton-breathe{0%,to{opacity:.62}50%{opacity:1}}@media (prefers-reduced-motion:no-preference){.sk-arrow,.sk-button,.sk-count,.sk-line,.sk-pill{animation:skeleton-breathe 1.8s var(--ease) infinite}}@media (max-width:860px){.masthead{align-items:stretch;flex-direction:column;gap:10px;padding:12px 20px}.masthead .spacer,.masthead .term{display:none}.prof{justify-content:space-between;width:100%}.prof .who{min-width:0;text-align:left}.prof .who span{max-width:15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brief,.operator-work,.student-work,.work{grid-template-columns:1fr}.professor-shell>.work{grid-template-rows:auto minmax(0,1fr)}.desktop-handoff,.portal-columns,.portal-stat-grid,.portal-steps{grid-template-columns:1fr}.desktop-handoff{align-items:stretch}.desktop-handoff-hero .dh-actions,.desktop-handoff-inline .dh-actions{order:-1}.redo-priority{padding:20px 18px 18px 22px}.redo-priority-head{align-items:flex-start;flex-direction:column;gap:10px}.redo-priority .desktop-handoff-compact,.redo-priority-item{grid-template-columns:1fr}.redo-deadline,.redo-reason{grid-column:1}.operator-rail,.pnav,.student-rail{border-bottom:1px solid var(--rule);border-right:0;gap:10px;padding:12px 20px}.operator-boundary,.operator-mode,.operator-rail .label{display:none}.operator-rail .item{border:1px solid var(--rule);border-radius:8px;padding:9px 12px 9px 16px}.operator-rail .item:before{bottom:-1px;height:3px;left:12px;right:12px;top:auto;transform:none;width:auto}.pnav .label,.student-rail .label{display:none}.pnav .group,.student-rail .group{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}.pnav .item,.student-rail .item{border:1px solid var(--rule);border-radius:8px;flex:1 1 10rem;min-height:46px;padding:9px 12px}.pnav .group .item:last-child,.student-rail .group .item:last-child{border-bottom:1px solid var(--rule)}.pnav .item:before,.student-rail .item:before{bottom:-1px;height:3px;left:12px;right:12px;top:auto;transform:none;transition:opacity .2s var(--ease);width:auto;opacity:0}.pnav .item[data-on=true]:before,.student-rail .item[data-on=true]:before{height:3px;opacity:1}.pnav .colophon,.student-rail .colophon{display:none}.main,.student-main{min-height:auto;padding:26px 20px 32px}.operator-row{gap:20px;grid-template-columns:1fr}.bulkbar,.runhead{align-items:stretch;flex-direction:column}.docket{grid-template-columns:1fr}.dk-row:nth-child(2n),.dk-row:nth-child(odd){border-right:0;padding-left:2px}.context-line,.detail-grid,.ff,.inbox-class-row,.inbox-row,.iv-row,.roster-row,.term-grid{grid-template-columns:1fr}.inbox-row{align-items:start;gap:10px;padding:16px 2px}.inbox-row.compact,.review-decision-grid{grid-template-columns:1fr}.inbox-class-row{align-items:start;gap:10px}.dk-foot,.dk-top{align-items:flex-start;flex-direction:column}.bulkbar{margin-left:-20px;margin-right:-20px;padding:14px 20px}.rmbtn{opacity:1}}@media (max-width:520px){.frontispiece-page{padding:24px 18px}.frontispiece-title{font-size:2.65rem}.title{font-size:2rem}.main,.student-main{padding:22px 16px 30px}.operator-rail,.pnav,.student-rail{padding:10px 16px}.operator-section-head{align-items:start;flex-direction:column;gap:8px}.operator-row{padding-left:14px}.operator-decision-form{margin-left:-2px;margin-right:-2px;padding-left:10px;padding-right:10px}.operator-form-actions .btn{width:100%}.pnav .item,.student-rail .item{flex-basis:calc(50% - 4px);min-width:0}.pnav .item .crumb,.student-rail .item .crumb{font-size:.98rem}.pnav .item .sub,.prof .initials,.student-rail .item .sub{display:none}.prof .who span{max-width:13rem}.cx-row,.inbox-batch-head,.inbox-section-head,.mini-row,.reg-row{grid-template-columns:1fr}.professor-classdex .cx-row{gap:8px;grid-template-columns:1fr}.inbox-batch-head,.inbox-section-head{align-items:start;flex-direction:column}.inbox-row-actions,.inbox-send-head{justify-content:flex-start}.bulkbar .bb-actions,.empty-actions,.inbox-row-actions,.modal-card .m-actions,.review-decision-block .more-options,.verdict-actions{align-items:stretch;width:100%}.bulkbar .bb-actions .btn,.empty-actions .btn,.inbox-row-actions .btn,.modal-card .m-actions .btn,.primary-action-copy,.review-decision-block .more-options .btn,.verdict-actions .btn{flex:1 1 100%}.chips,.dk-bar .actions,.docket-controls,.filterbar,.send-results-toolbar .actions{align-items:stretch}.chips .chip,.control,.docket-controls .chip,.filterbar .chip{min-height:42px}.filterbar .chip{flex:1 1 calc(50% - 5px)}.dk-bar{align-items:flex-start;flex-direction:column}.bulkbar,.dk-bar .actions,.send-results-toolbar,.send-results-toolbar .actions{align-items:stretch}.send-results-toolbar{flex-direction:column}.send-results-toolbar .actions{width:100%}.send-results-toolbar .actions .linkact{flex:1 1 100%}.linkact{min-height:34px}.state{white-space:normal}.dk-row{padding-right:2px}.empty{padding:40px 4px}.cx-go,.cx-row .leader,.mini-row .arrow{display:none}.modal-card .m-actions{flex-direction:column-reverse}.act-panels,.spread{grid-template-columns:1fr}.section-headline{align-items:stretch;flex-direction:column}.desktop-handoff-hero,.desktop-handoff-page{padding:18px}}@media (max-height:760px){.frontispiece-page{align-items:start;padding-block:18px}.imprint-top{margin:14px 0 10px}.frontispiece-title{font-size:2.9rem}.imprint-sub{margin-top:9px}.imprint-motto{margin:9px 0 15px}.frontispiece-action{margin-top:17px}.auth-panel{padding:15px 0 12px}.auth-form{gap:10px}.auth-switch{margin-top:12px}.preview-accounts{margin-top:12px;padding-top:10px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:1ms!important;transition-duration:1ms!important}}@media (forced-colors:active){.alert:focus,.btn:focus-visible,.hid-ops-shell #main-content:focus,.hid-ops-skip-link,.operator-action-disclosure summary:focus-visible,.operator-confirm:focus-within,.portal-skip-link,.professor-shell #professor-main-content:focus,.student-shell #student-main-content:focus{outline:2px solid Highlight;outline-offset:3px}.operator-row:before,.operator-state:before{background:CanvasText}}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:-left-\[3px\]:before{content:var(--tw-content);left:-3px}.before\:top-\[1\.05rem\]:before{content:var(--tw-content);top:1.05rem}.before\:h-\[5px\]:before{content:var(--tw-content);height:5px}.before\:w-\[5px\]:before{content:var(--tw-content);width:5px}.before\:rounded-full:before{content:var(--tw-content);border-radius:9999px}.before\:bg-\[color\:var\(--slate-soft\)\]:before{content:var(--tw-content);background-color:var(--slate-soft)}.first\:border-t-0:first-child{border-top-width:0}.last\:border-b-0:last-child{border-bottom-width:0}.hover\:border-\[color\:var\(--green\)\]:hover{border-color:var(--green)}.hover\:border-\[color\:var\(--rule\)\]:hover{border-color:var(--rule)}.hover\:bg-\[color\:var\(--surface-2\)\]:hover{background-color:var(--surface-2)}.hover\:text-\[color\:var\(--ink\)\]:hover{color:var(--ink)}.focus-visible\:outline:focus-visible{outline-style:solid}.focus-visible\:outline-2:focus-visible{outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-\[color\:var\(--green\)\]:focus-visible{outline-color:var(--green)}@media (min-width:640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-\[minmax\(10rem\2c 1fr\)_auto\]{grid-template-columns:minmax(10rem,1fr) auto}}