@font-face{font-family:Geist;src:url(/assets/Geist-Variable-Bj2R_7yk.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/assets/GeistMono-Variable-Dispecij.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--paper:#f8f6f1;--paper-sunken:#f1eee7;--paper-raised:#fffefb;--line:#ddd8cc;--line-strong:#b9b2a3;--line-control:#8a8475;--ink:#191c23;--ink-muted:#474c57;--ink-subtle:#646a77;--accent:#2f3b8c;--accent-hover:#252f72;--accent-tint:#e9ebf5;--on-accent:#fff;--suggest:#5f6573;--applied:#0e6b74;--applied-tint:#e3f0f0;--review:#8f5200;--review-tint:#f7ebd9;--conflict:#ae3424;--conflict-tint:#f7e4e0;--group-a:#3e5ba9;--group-b:#8a4b86;--group-c:#5f7a2e;--group-d:#8c5a3c;--group-e:#4f6475;--shadow-float:0 1px 2px #191c230f, 0 8px 24px #191c2314;--font-sans:"Geist", ui-sans-serif, system-ui, sans-serif;--font-mono:"Geist Mono", ui-monospace, "SFMono-Regular", monospace;--type-display:560 64px/64px var(--font-sans);--type-display-tracking:-.035em;--type-headline:560 40px/44px var(--font-sans);--type-headline-tracking:-.025em;--type-lede:400 19px/30px var(--font-sans);--type-lede-tracking:-.005em;--type-title:600 22px/28px var(--font-sans);--type-title-tracking:-.015em;--type-heading:600 15px/22px var(--font-sans);--type-heading-tracking:-.005em;--type-body:400 14px/21px var(--font-sans);--type-body-tracking:normal;--type-body-strong:550 14px/21px var(--font-sans);--type-body-strong-tracking:normal;--type-small:400 12.5px/18px var(--font-sans);--type-small-tracking:.005em;--type-label:600 11px/14px var(--font-sans);--type-label-tracking:.06em;--type-score:500 14px/20px var(--font-mono);--type-score-tracking:normal;--type-score-lg:500 28px/32px var(--font-mono);--type-score-lg-tracking:-.02em;--type-code:400 12.5px/18px var(--font-mono);--type-code-tracking:normal;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-16:64px;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--stroke-hairline:1px;--stroke-region:1.5px;--stroke-focus:2px}[data-theme=dark]{--paper:#131519;--paper-sunken:#181b20;--paper-raised:#1f2229;--line:#30343d;--line-strong:#4b505b;--line-control:#686d79;--ink:#eceae4;--ink-muted:#b9bcc5;--ink-subtle:#9499a5;--accent:#9aa6f2;--accent-hover:#b3bcf6;--accent-tint:#23284a;--on-accent:#131519;--suggest:#a3a8b3;--applied:#5cc3c9;--applied-tint:#14302f;--review:#e3a44f;--review-tint:#33271a;--conflict:#f08a7a;--conflict-tint:#3a1f1c;--group-a:#8ea7ee;--group-b:#d49bd0;--group-c:#a9c46f;--group-d:#d9a07e;--group-e:#a3b6c6;--shadow-float:0 1px 2px #0006, 0 8px 24px #00000073}*,:before,:after{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font:var(--type-body);-webkit-font-smoothing:antialiased;margin:0}:focus-visible{outline:var(--stroke-focus) solid var(--accent);outline-offset:2px}a{color:var(--accent)}a:hover{color:var(--accent-hover)}.logo{letter-spacing:-.025em;color:var(--ink);align-items:center;font-weight:600;line-height:1;display:inline-flex}.mono{font-family:var(--font-mono)}.label{font:var(--type-label);letter-spacing:var(--type-label-tracking);text-transform:uppercase;color:var(--ink-subtle)}.help{font:var(--type-small);color:var(--ink-subtle);font-weight:400}.btn{font:inherit;height:36px;padding:0 var(--space-3);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:var(--stroke-hairline) solid transparent;justify-content:center;align-items:center;gap:6px;font-weight:550;text-decoration:none;display:inline-flex}.btn-lg{height:40px;padding:0 14px}.btn-block{width:100%}.btn-primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);color:var(--on-accent)}.btn-secondary{background:var(--paper-raised);color:var(--ink);border-color:var(--line-control)}.btn-danger{background:var(--conflict);color:var(--on-accent);border-color:var(--conflict)}.btn-quiet{color:var(--ink-muted);background:0 0}.btn:disabled{opacity:.45;cursor:not-allowed}.link-button{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.field{gap:var(--space-1);flex-direction:column;font-weight:550;display:flex}.input{font:inherit;border:var(--stroke-hairline) solid var(--line-control);border-radius:var(--radius-sm);background:var(--paper-raised);height:40px;color:var(--ink);width:100%;padding:0 10px;font-weight:400}.input[aria-invalid=true]{border-color:var(--conflict)}.char-count{font:var(--type-small);color:var(--ink-subtle);font-variant-numeric:tabular-nums;align-self:flex-end;font-weight:400}.char-count:empty{display:none}.char-count[data-full]{color:var(--review)}.alert{padding:10px var(--space-3);border-radius:var(--radius-sm);font:var(--type-small);align-items:flex-start;gap:10px;display:flex}.alert svg{flex:none;margin-top:2px}.alert-title{font-weight:600}.alert-conflict{background:var(--conflict-tint)}.alert-conflict .alert-title{color:var(--conflict)}.alert-review{background:var(--review-tint)}.alert-review .alert-title{color:var(--review)}.alert-info{background:var(--accent-tint)}.alert-info .alert-title{color:var(--accent)}.alert-applied{background:var(--applied-tint)}.alert-applied .alert-title{color:var(--applied)}.card{background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-md)}.empty{text-align:center;padding:var(--space-16) var(--space-6);border:var(--stroke-hairline) dashed var(--line-strong);border-radius:var(--radius-md);background:var(--paper-raised);flex-direction:column;align-items:center;gap:10px;display:flex}.empty h2{margin:0;font-size:17px;font-weight:600;line-height:24px}.empty p{max-width:440px;color:var(--ink-muted);margin:0}.empty-mark{border:var(--stroke-region) dashed var(--line-control);border-radius:var(--radius-xs);width:40px;height:30px}.app-header{align-items:center;gap:var(--space-4);padding:10px var(--space-6);border-bottom:var(--stroke-hairline) solid var(--line);background:var(--paper);flex-wrap:wrap;min-height:56px;display:flex}.app-home{text-decoration:none}.page{max-width:1280px;padding:var(--space-8) var(--space-6) var(--space-16);gap:var(--space-8);flex-direction:column;margin:0 auto;display:flex}.page-title{font:var(--type-title);letter-spacing:var(--type-title-tracking);margin:0}.page-section{gap:var(--space-4);flex-direction:column;display:flex}.page-section>h2{margin:0}.app-nav{gap:var(--space-1);margin-left:var(--space-4);display:flex}.app-breadcrumb{align-items:center;gap:var(--space-2);margin-left:var(--space-4);min-width:0;font:var(--type-small);color:var(--ink-subtle);flex-wrap:wrap;display:flex}.app-breadcrumb a{color:var(--ink-muted);text-decoration:none}.app-breadcrumb .crumb-text{color:var(--ink-muted)}.app-breadcrumb [aria-current=page],.nav-link{color:var(--ink)}.nav-link.active{background:var(--paper-sunken)}.app-spacer{flex-grow:1}.app-plan,.app-email{align-items:center;gap:var(--space-2);font:var(--type-small);color:var(--ink-muted);display:flex}.app-usage{color:var(--ink)}.avatar{border-radius:var(--radius-sm);width:32px;height:32px;font:inherit;cursor:pointer;border:0;justify-content:center;align-items:center;font-size:12.5px;font-weight:600;text-decoration:none;display:flex}.avatar-educator{background:var(--accent-tint);color:var(--accent)}.avatar-student{background:var(--paper-sunken);color:var(--ink-muted)}.account{position:relative}.menu{z-index:5;background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-md);width:260px;box-shadow:var(--shadow-float);flex-direction:column;padding:6px;display:flex;position:absolute;top:40px;right:0}.menu-who{padding:var(--space-2) 10px 10px;border-bottom:var(--stroke-hairline) solid var(--line);margin-bottom:var(--space-1)}.menu-name{font-weight:600}.menu-item{border-radius:var(--radius-sm);height:36px;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;padding:0 10px;text-decoration:none;display:flex}.menu-item:hover,.menu-item:focus-visible{background:var(--paper-sunken);color:var(--ink)}.overlay{z-index:10;padding:min(160px, 12vh) var(--space-6) var(--space-6);overscroll-behavior:contain;background:#191c2373;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog{background:var(--paper-raised);border-radius:var(--radius-md);width:100%;max-width:420px;box-shadow:var(--shadow-float);padding:var(--space-6);gap:var(--space-3);flex-direction:column;display:flex}.dialog h2{font:var(--type-title);letter-spacing:var(--type-title-tracking);margin:0}.dialog p{color:var(--ink-muted);margin:0}.dialog-actions{gap:var(--space-2);margin-top:var(--space-1);justify-content:flex-end;display:flex}.app-email{flex:1 1 0;justify-content:flex-end;min-width:0}.app-email>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-home{align-items:flex-start;gap:var(--space-6);flex-flow:wrap}.student-main{gap:var(--space-6);flex-direction:column;flex:999 560px;min-width:0;display:flex}.student-main .label+.page-title{margin-top:var(--space-1)}.student-aside{flex:360px;min-width:0}.student-courses{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.student-course{padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.student-course h2{font:var(--type-heading);margin:0}.student-course .course-code{color:var(--ink-subtle);font-size:12.5px}.student-course-people{font:var(--type-small);color:var(--ink-muted)}.student-course-exams{border-top:var(--stroke-hairline) solid var(--line);padding-top:var(--space-3)}.join-card{flex-direction:column;gap:14px;padding:20px;display:flex}.join-card h2{font:var(--type-heading);margin:0}.join-card p{margin:2px 0 0}.join-form{gap:var(--space-2);display:flex}.join-field{flex-grow:1}.join-input{letter-spacing:.1em;text-transform:uppercase}.join-preview{padding:10px var(--space-3);border:1.5px solid var(--applied);background:var(--applied-tint);border-radius:var(--radius-sm);color:var(--applied);align-items:center;gap:10px;display:flex}.join-preview svg{flex:none}.join-preview strong{color:var(--ink);font-weight:550}.join-preview .help{color:var(--ink-muted)}.join-confirm{gap:var(--space-3);border-top:var(--stroke-hairline) solid var(--line);flex-direction:column;padding-top:14px;display:flex}.join-confirm p{font:var(--type-small);color:var(--ink-muted);margin:0}.join-confirm strong{color:var(--ink);font-weight:550}.join-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.join-card .help.invalid{color:var(--conflict);margin-top:-6px}.attention{gap:0}.attention h2{margin-bottom:var(--space-2)}.attention-row{padding:var(--space-2) 0;border-top:var(--stroke-hairline) solid var(--line);color:var(--ink);gap:12px;text-decoration:none;display:flex}.attention-row:hover .grow{text-decoration:underline}.attention-count{white-space:nowrap;color:var(--ink-muted);flex:none}.attention-tag{background:var(--review-tint);color:var(--review);flex:none}.auth{flex-wrap:wrap;min-height:100vh;display:flex}.auth-about{background:var(--paper-sunken);border-right:var(--stroke-hairline) solid var(--line);padding:48px var(--space-16);flex-direction:column;flex:480px;justify-content:space-between;gap:48px;display:flex}.auth-pitch{gap:var(--space-6);flex-direction:column;max-width:520px;display:flex}.auth-pitch h1{font:var(--type-headline);letter-spacing:var(--type-headline-tracking);margin:0}.auth-pitch p{font:var(--type-lede);letter-spacing:var(--type-lede-tracking);color:var(--ink-muted);margin:0}.auth-blocks{gap:var(--space-2);max-width:360px;margin-top:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.auth-block{border-radius:var(--radius-xs);height:36px}.auth-block-open{border:var(--stroke-hairline) dashed var(--suggest)}.auth-block-marked{border:var(--stroke-region) solid var(--ink)}.auth-block-applied{border:var(--stroke-region) solid var(--accent);background:var(--accent-tint)}.auth-audience{font:var(--type-small);color:var(--ink-subtle);margin:0}.auth-main{padding:48px var(--space-6);flex:480px;justify-content:center;align-items:center;display:flex}.auth-form{gap:var(--space-4);flex-direction:column;width:100%;max-width:400px;display:flex}.auth-form-wide{gap:18px;max-width:420px}.auth-form h2{font:var(--type-title);letter-spacing:var(--type-title-tracking);margin:0}.auth-form .intro{margin:var(--space-1) 0 0;color:var(--ink-muted)}.auth-form .intro strong{color:var(--ink);font-weight:550}.auth-form .alert{margin-top:calc(-1 * var(--space-2))}.auth-steps{font:var(--type-small);color:var(--ink-subtle);align-items:center;gap:6px;display:flex}.auth-steps span:last-child{margin-left:var(--space-1)}.auth-dot{background:var(--line);border-radius:1px;width:16px;height:6px}.auth-dot.done{background:var(--applied)}.auth-dot.current{background:var(--accent)}.code-input{font-family:var(--font-mono);letter-spacing:.4em;text-align:center;height:56px;padding:0 0 0 .4em;font-size:28px;line-height:32px}.resend{align-items:center;gap:var(--space-2);font:var(--type-small);color:var(--ink-subtle);display:flex}.resend>span:first-child{flex-grow:1}.choice-group{gap:var(--space-2);border:0;flex-direction:column;margin:0;padding:0;display:flex}.choice-group legend{margin-bottom:var(--space-2);padding:0;font-weight:550}.choices{gap:var(--space-2);flex-wrap:wrap;display:flex}.choice{padding:var(--space-3);border:var(--stroke-hairline) solid var(--line-control);border-radius:var(--radius-sm);background:var(--paper-raised);cursor:pointer;flex:160px;align-items:flex-start;gap:10px;display:flex}.choice-compact{height:40px;padding:0 var(--space-3);flex:120px;align-items:center;font-weight:550}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-tint)}.choice input{accent-color:var(--accent);margin:3px 0 0}.choice-compact input{margin:0}.choice strong{font-weight:550}.setup-fixed-role{border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);background:var(--paper-sunken);align-items:center;height:40px;padding:0 10px;font-weight:400;display:flex}.page-narrow{gap:var(--space-6);max-width:720px}.profile{padding:var(--space-6);flex-direction:column;gap:18px;display:flex}.read-only{gap:var(--space-1);flex-direction:column;display:flex}.read-only-label{font-weight:550}.read-only-value{border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);background:var(--paper-sunken);min-height:40px;color:var(--ink-muted);align-items:center;padding:0 10px;display:flex}.profile-actions{align-items:center;gap:var(--space-2);border-top:var(--stroke-hairline) solid var(--line);justify-content:flex-end;padding-top:18px;display:flex}.profile-actions .help{flex-grow:1}.profile-sign-out{padding:20px var(--space-6);align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.profile-sign-out>div{flex:280px}.profile-sign-out h2{font:var(--type-heading);margin:0}.profile-sign-out p{margin:2px 0 0}.tag{align-items:center;gap:var(--space-1);height:22px;padding:0 var(--space-2);border-radius:var(--radius-sm);font:var(--type-small);white-space:nowrap;font-weight:550;display:inline-flex}.tag-muted{background:var(--paper-sunken);color:var(--ink-muted)}.tag-applied{background:var(--applied-tint);color:var(--applied)}.home-head{align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.home-head>div{flex:320px}.home-head .page-title{margin-top:var(--space-1)}.home-body{gap:var(--space-6);flex-wrap:wrap;align-items:flex-start;display:flex}.home-courses{flex:999 560px;min-width:0}.home-aside{gap:var(--space-4);flex-direction:column;flex:320px;min-width:0;display:flex}.course-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));display:grid}.course-card{gap:var(--space-3);padding:var(--space-4);color:var(--ink);flex-direction:column;text-decoration:none;display:flex}.course-card:hover{color:var(--ink);border-color:var(--line-strong)}.course-card-top{align-items:center;gap:var(--space-2);display:flex}.course-card-spacer{flex-grow:1}.course-code{color:var(--ink-subtle);font-size:12.5px}.course-card-name{font:var(--type-heading);letter-spacing:var(--type-heading-tracking)}.course-card-meta,.course-card-counts{font:var(--type-small);color:var(--ink-subtle)}.course-card-exams{align-items:center;gap:var(--space-2);border-top:var(--stroke-hairline) solid var(--line);padding-top:var(--space-3);display:flex}.course-card-none{color:var(--ink-subtle);flex-grow:1}.course-card-create{font:var(--type-small)}.course-card-counts{gap:var(--space-4);display:flex}.course-count{color:var(--ink)}.course-card-new{border:var(--stroke-hairline) dashed var(--line-control);border-radius:var(--radius-md);min-height:200px;color:var(--ink-muted);justify-content:center;align-items:center;gap:var(--space-2);flex-direction:column;text-decoration:none;display:flex}.course-card-new:hover{color:var(--ink);border-color:var(--ink-muted)}.course-card-new-mark{border:var(--stroke-region) solid var(--ink-muted);border-radius:var(--radius-xs);width:28px;height:20px}.course-card-new strong{font-weight:550}.archived-link{font:var(--type-small);align-self:flex-start}.side-card{padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.side-card-head{align-items:center;gap:var(--space-2);display:flex}.side-card h2{font:var(--type-heading);letter-spacing:var(--type-heading-tracking);flex-grow:1;margin:0}.side-card p{font:var(--type-small);color:var(--ink-muted);margin:0}.side-card-foot{padding-top:var(--space-3);border-top:var(--stroke-hairline) solid var(--line);font:var(--type-small);color:var(--ink-subtle)}.quota-number{font:var(--type-score-lg);letter-spacing:var(--type-score-lg-tracking)}.quota-number span{letter-spacing:0;color:var(--ink-subtle);font-size:14px}.quota-bar{background:var(--paper-sunken);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-xs);height:8px;overflow:hidden}.quota-bar>div{background:var(--ink-muted);height:100%}.quota-renews{font:var(--type-small);color:var(--ink-muted)}.quota-renews strong{color:var(--ink);font-weight:550}.side-card .quota-left{color:var(--ink-subtle)}.new-course{gap:var(--space-6);flex-flow:wrap;align-items:flex-start;max-width:1120px}.new-course-form{min-width:0;padding:var(--space-6);flex-direction:column;flex:999 520px;gap:18px;display:flex}.new-course-form h1{margin:0}.new-course-form .intro{margin:var(--space-1) 0 0;color:var(--ink-muted)}.field-pair{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));display:grid}.field .optional{color:var(--ink-subtle);font-weight:400}.field .help.invalid{color:var(--conflict)}.language-choices{max-width:420px}.form-actions{gap:var(--space-2);border-top:var(--stroke-hairline) solid var(--line);flex-wrap:wrap;justify-content:flex-end;align-items:center;padding-top:18px;display:flex}.next-steps{flex:300px;min-width:0;padding:20px}.next-steps h2{margin:0 0 var(--space-2);font:var(--type-heading)}.next-step{gap:var(--space-3);padding:var(--space-3) 0;border-top:var(--stroke-hairline) solid var(--line);display:flex}.next-step:last-child{border-bottom:var(--stroke-hairline) solid var(--line)}.next-step-num{border:var(--stroke-hairline) solid var(--line-strong);border-radius:var(--radius-xs);flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:12.5px;display:flex}.next-step strong{font-weight:550}.course-shell{flex-wrap:wrap;max-width:1360px;margin:0 auto;display:flex}.course-nav{max-width:100%;padding:var(--space-6) var(--space-4);flex-direction:column;flex:220px;gap:2px;display:flex}.course-nav .label{padding:0 var(--space-3) var(--space-2)}.course-nav-link{align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--ink-muted);text-decoration:none;display:flex}.course-nav-link:hover{background:var(--paper-sunken);color:var(--ink)}.course-nav-link.active{background:var(--accent-tint);color:var(--accent);font-weight:550}.course-nav-count{color:var(--ink-subtle);margin-left:auto;font-size:12.5px}.course-main{min-width:0;max-width:100%;padding:var(--space-6);gap:var(--space-8);flex-direction:column;flex:999 560px;display:flex}.course-meta{font:var(--type-small);color:var(--ink-subtle)}.course-meta+.page-title{margin-top:var(--space-1)}.section-title{font:var(--type-heading);letter-spacing:var(--type-heading-tracking);margin:0}.empty-mark-page{width:28px;height:36px}.archived-banner{align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--paper-sunken);border:var(--stroke-hairline) solid var(--line);flex-wrap:wrap;display:flex}.archived-banner>div{flex:320px}.archived-banner strong{font-weight:600}.archived-banner p{font:var(--type-small);color:var(--ink-muted);margin:0}.course-people{max-width:560px}.people{margin:0;padding:0;list-style:none}.people li{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-top:var(--stroke-hairline) solid var(--line);display:flex}.people-who{overflow-wrap:anywhere;flex-grow:1;min-width:0}.people-who strong{font-weight:550}.avatar-sm{border-radius:var(--radius-sm);background:var(--accent-tint);width:28px;height:28px;color:var(--accent);flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.settings-card{flex-direction:column;gap:18px;max-width:820px;padding:20px;display:flex}.settings-card p.help{margin:0}.field-trio{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));display:grid}.form-actions .saved{color:var(--applied);margin-right:auto}.settings-archive{align-items:center;gap:var(--space-4);flex-flow:wrap}.settings-archive>div{flex:360px}.settings-archive p.help{margin-top:2px}.input:disabled{background:var(--paper-sunken);color:var(--ink-muted)}.input.mono{font-family:var(--font-mono)}.tag-accent{background:var(--accent-tint);color:var(--accent)}.lock-card{flex-wrap:wrap;align-items:flex-start;gap:20px;max-width:880px;padding:20px;display:flex}.lock-mark{flex:none;grid-template-columns:repeat(3,20px);gap:6px;display:grid}.lock-mark span{border:var(--stroke-hairline) dashed var(--suggest);border-radius:var(--radius-xs);height:28px}.lock-mark .lock-mark-on{border:var(--stroke-region) solid var(--accent);background:var(--accent-tint)}.lock-text{gap:var(--space-2);flex-direction:column;flex:360px;display:flex}.lock-text p{color:var(--ink-muted);margin:0}.lock-head{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.add-card{padding:var(--space-4);gap:var(--space-3);flex-direction:column;max-width:880px;display:flex}.add-card p.help{margin:0}.add-card-locked{color:var(--ink-subtle);padding:0}.add-card-locked .section-title,.add-card-locked .field{color:var(--ink-subtle)}.add-form{gap:var(--space-2);flex-wrap:wrap;align-items:flex-end;display:flex}.add-form .field{flex:260px}.added{font:var(--type-small);color:var(--applied);margin:0}.people-card{max-width:880px}.people-card>.section-title{padding:14px var(--space-4)}.people-card>.alert{margin:0 var(--space-4) var(--space-3)}.table-scroll{position:relative;overflow-x:auto}.people-table{border-collapse:collapse;width:100%;min-width:620px}.people-table th{text-align:left;padding:10px var(--space-4);background:var(--paper-sunken);border-bottom:var(--stroke-hairline) solid var(--line)}.people-table td{padding:var(--space-3) var(--space-4);border-bottom:var(--stroke-hairline) solid var(--line)}.people-table tr:last-child td{border-bottom:0}.person{align-items:center;gap:10px;display:flex}.person strong{font-weight:550}.invited-email{color:var(--ink-muted)}.avatar-muted{background:var(--paper-sunken);color:var(--ink-muted)}.avatar-invited{border:var(--stroke-hairline) dashed var(--line-control);color:var(--ink-subtle);background:0 0}.added-cell{font:var(--type-small);color:var(--ink-muted)}.actions-cell{text-align:right;white-space:nowrap}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.dialog-list{font:var(--type-small);color:var(--ink-muted);margin:0;padding-left:18px;line-height:20px}.roster-head{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.roster-head>div{flex:280px}.roster-head p.help{margin:0}.roster-add{padding:var(--space-4);border-color:var(--accent);flex-direction:column;gap:14px;display:flex}.roster-add-head{align-items:center;gap:var(--space-2);display:flex}.roster-add-head .section-title{flex-grow:1}.roster-add-fields{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:start;display:grid}.roster-add-foot{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.roster-add-foot .help{flex:260px}.roster-list{gap:var(--space-3);flex-direction:column;display:flex}.roster-list p.help{margin:0}.roster-list-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.roster-list-head .section-title{flex-grow:1}.roster-search{flex:0 280px}.roster-table{min-width:760px}.roster-name{font-weight:550}.roster-muted{color:var(--ink-muted)}.roster-none{padding:var(--space-3) var(--space-4);margin:0}.empty-actions{gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;justify-content:center;display:flex}.roster-dialog{max-width:480px}.roster-edit-fields{gap:var(--space-4);flex-direction:column;display:flex}.roster-note{background:var(--paper-sunken);border-radius:var(--radius-sm);padding:var(--space-3);font:var(--type-small);color:var(--ink-muted);line-height:20px}.roster-note .label{margin-bottom:var(--space-1)}.roster-note-warn{color:var(--review);font-weight:550}.roster-who{align-items:center;gap:var(--space-3);padding:var(--space-3);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);display:flex}.roster-who-text{overflow-wrap:anywhere;flex-grow:1;min-width:0}.roster-who strong{font-weight:550}.tag-conflict{background:var(--conflict-tint);color:var(--conflict)}.import-card{padding:var(--space-4);gap:var(--space-4);flex-direction:column;display:flex}.import-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.import-head .section-title{overflow-wrap:anywhere;flex-grow:1}.import-head .section-title .mono{font-weight:500}.import-counts{background:var(--line);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.import-counts>div{background:var(--paper-raised);padding:var(--space-3)}.import-counts dd{margin:0;font-size:28px;line-height:32px}.import-counts .import-count-failed{background:var(--conflict-tint)}.import-count-failed dt,.import-count-failed dd{color:var(--conflict)}.import-table-box{border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm)}.import-table{min-width:640px}.import-missing{color:var(--conflict)}.import-problems{gap:var(--space-1) var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.import-foot{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.import-foot .help{flex:260px}.check{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.check input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin:3px 0 0}.check input:disabled+span{color:var(--ink-subtle)}.enroll-choice{background:var(--paper-sunken);border-radius:var(--radius-sm);padding:14px;font-weight:550}.course-panels{gap:var(--space-6);flex-wrap:wrap;align-items:flex-start;display:flex}.course-panels>.card{flex:360px;max-width:none}.enroll-card h2{margin:0}.enroll-card p{margin:2px 0 0}.enroll-code{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--paper-sunken);border-radius:var(--radius-sm);flex-wrap:wrap;display:flex}.enroll-code>div{flex-grow:1}.enroll-code-value{letter-spacing:.08em;font-size:28px;font-weight:500;line-height:32px}.enroll-new{color:var(--accent)}.enroll-inline{color:var(--ink);font-weight:550}.grow{flex-grow:1;min-width:0}.strong{font-weight:550}.new-exam{max-width:760px}.exam-form{padding:var(--space-6);flex-direction:column;gap:20px;width:100%;display:flex}.exam-form .intro{color:var(--ink-muted);margin:2px 0 0}.exam-form .form-actions{align-items:center}.template-help{margin-top:-2px}.template-file{gap:var(--space-3);padding:var(--space-3);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);margin-top:var(--space-1);background:#fff;flex-wrap:wrap;align-items:center;font-weight:400;display:flex}.template-empty{background:var(--paper);border-style:dashed}.template-icon{border:1.5px solid var(--ink);border-radius:2px;flex:none;width:28px;height:36px;position:relative}.template-icon:after{content:"";border:1px solid var(--accent);border-radius:1px;height:6px;position:absolute;top:8px;left:4px;right:4px}.template-name{color:var(--ink);font-size:12.5px}.template-progress{align-items:center;gap:var(--space-2);color:var(--ink-muted);margin:10px 0 0;font-size:12.5px;font-weight:400;display:flex}.spinner{border:1.5px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;width:12px;height:12px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}.template-alert{margin-top:10px;font-weight:400}.template-alert .alert button{margin-top:var(--space-2)}.template-prepared{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;margin-top:10px;font-weight:400;display:flex}.template-ok{color:var(--applied);align-items:center;gap:6px;font-size:12.5px;font-weight:550;display:inline-flex}.page-thumbs{gap:var(--space-3);margin-top:var(--space-1);grid-template-columns:repeat(auto-fill,minmax(104px,1fr));display:grid}.page-thumb{font:inherit;cursor:zoom-in;color:var(--ink-muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;padding:0;font-size:12.5px;font-weight:400;display:flex}.page-thumb-frame{border:var(--stroke-hairline) solid var(--line-strong);background:#fff;border-radius:2px;width:104px;height:135px;display:block;overflow:hidden}.page-thumb-frame img{width:100%;height:auto;display:block}.page-thumb:focus-visible{outline:var(--stroke-focus) solid var(--accent);outline-offset:2px}.page-viewer-overlay{padding:48px var(--space-6);overflow-y:auto}.page-viewer{background:var(--paper-raised);border-radius:var(--radius-md);width:100%;max-width:680px;box-shadow:var(--shadow-float);flex-direction:column;display:flex}.page-viewer-head{align-items:center;gap:var(--space-3);border-bottom:var(--stroke-hairline) solid var(--line);padding:14px 20px;display:flex}.page-viewer-head h2{font:var(--type-heading);letter-spacing:var(--type-heading-tracking);overflow-wrap:anywhere;flex-grow:1;min-width:0;margin:0}.page-viewer-body{background:var(--paper-sunken);justify-content:center;padding:20px;display:flex}.page-viewer-body img{border:var(--stroke-hairline) solid var(--line);background:#fff;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 260px);display:block}.page-viewer-foot{align-items:center;gap:var(--space-2);padding:var(--space-3) 20px;color:var(--ink-subtle);flex-wrap:wrap;font-size:12.5px;display:flex}.page-viewer-foot span{flex:200px}.regrade-fields{padding:var(--space-4);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);flex-direction:column;gap:14px;margin:0;display:flex}.regrade-fields legend{padding:0 6px;font-weight:600}.regrade-days{flex-wrap:wrap;align-items:center;gap:10px;padding-left:28px;display:flex}.regrade-days .input{text-align:center;width:72px}.regrade-note{margin:0;padding-left:28px}.help.invalid{color:var(--conflict)}.exam-bar{align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-6);border-bottom:var(--stroke-hairline) solid var(--line);background:var(--paper-sunken);flex-wrap:wrap;display:flex}.exam-bar-sticky{z-index:3;position:sticky;top:0}.exam-bar .page-title{overflow-wrap:anywhere;margin:0}.icon-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--ink-muted);flex:none;justify-content:center;align-items:center;display:inline-flex}.exam-bar .icon-btn{margin-left:calc(-1 * var(--space-2))}.icon-btn:hover,.icon-btn.active{background:var(--paper);color:var(--accent)}.steps{gap:var(--space-1);flex-wrap:wrap;flex-grow:1;margin:0;padding:0;list-style:none;display:flex}.step{border-radius:var(--radius-sm);border:var(--stroke-hairline) solid var(--line);height:28px;color:var(--ink-subtle);align-items:center;gap:6px;padding:0 10px;font-size:12.5px;display:flex}.step-current{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:550}.exam-shell{flex-wrap:wrap;align-items:flex-start;display:flex}.exam-nav{padding:var(--space-4);gap:var(--space-1);flex-direction:column;flex:240px;display:flex}.exam-nav .label{padding:0 var(--space-3) 6px}.qrow{min-height:36px;padding:6px var(--space-3);border-radius:var(--radius-sm);color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:flex}.qrow:hover{background:var(--paper-sunken);color:var(--ink)}.qrow.active{background:var(--accent-tint);color:var(--accent);font-weight:550}.qrow .help{font-size:12px}.exam-main{min-width:0;padding:var(--space-6);border-left:var(--stroke-hairline) solid var(--line);flex:999 720px;align-self:stretch}.exam-wide{max-width:1120px;padding:var(--space-6);margin:0 auto}.exam-wide-xl{max-width:1440px}.exam-wide-lg{max-width:1320px}@media (width<=640px){.exam-wide{padding:var(--space-4)}}.exam-details{flex-direction:column;align-items:center;gap:20px;display:flex}.exam-details>.card{max-width:820px}.delete-card{align-items:center;gap:var(--space-4);border-color:#e4b9b1;flex-wrap:wrap;width:100%;padding:20px;display:flex}.delete-card h2{font:var(--type-heading);letter-spacing:var(--type-heading-tracking);margin:0}.delete-card p.help{margin:2px 0 0}.delete-card .grow{flex:320px}.btn-danger-quiet{background:var(--paper-raised);color:var(--conflict);border-color:var(--conflict)}.exams-table td .help{display:block}.exam-link{color:var(--ink);font-weight:550;text-decoration:none}.exam-link:hover{color:var(--accent)}.exam-actions{text-align:right;white-space:nowrap}.exam-actions>*{vertical-align:middle}.exam-actions>*+*{margin-left:var(--space-1)}.tag-stage-setup{background:var(--paper-sunken);color:var(--ink-muted)}.tag-stage-submissions,.tag-stage-grading{background:var(--accent-tint);color:var(--accent)}.tag-stage-published{background:var(--applied-tint);color:var(--applied)}@media (width<=720px){.exam-main{border-left:0;border-top:var(--stroke-hairline) solid var(--line);padding:var(--space-4)}.exam-bar{padding:var(--space-3) var(--space-4)}.regrade-days,.regrade-note{padding-left:0}}.course-card-exam-list{padding:var(--space-3) 0 0;border-top:var(--stroke-hairline) solid var(--line);flex-direction:column;gap:6px;margin:0;list-style:none;display:flex}.course-card-exam-list li{align-items:center;gap:var(--space-2);display:flex}@media (width<=520px){.page-viewer-foot span{flex-basis:100%}}.step-link{height:100%;color:inherit;border-radius:var(--radius-sm);align-items:center;gap:6px;margin:0 -10px;padding:0 10px;text-decoration:none;display:inline-flex}.step-current .step-link:hover{color:var(--on-accent)}.step:not(.step-current) .step-link:hover{color:var(--ink)}.step-link[aria-disabled=true]{color:#9a968c;cursor:not-allowed}.step-progress{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 10px;max-width:100%;display:flex}.step-status{color:var(--ink-muted);font-size:12.5px}.step-continue{display:inline-flex}.text-danger{color:var(--conflict)}.exam-nav .nav-group{padding-top:10px}.nav-note{padding:0 var(--space-3);color:var(--ink-subtle);margin:0;font-size:12.5px;line-height:18px}button.qrow{font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;width:100%}button.qrow:disabled{cursor:not-allowed;opacity:.7}.qrow-status,.qrow-points{color:var(--ink-subtle);font-size:12.5px}.qrow-status.is-set{color:var(--applied)}.qrow-unready .grow{color:var(--ink-subtle)}.q-mark{border:1.5px solid;border-radius:2px;flex:none;width:14px;height:10px}.q-mark-unready{border:1px dashed var(--ink-muted)}.nav-new{margin-top:var(--space-2);color:var(--accent);justify-content:flex-start}.nav-new[aria-pressed=true]{background:var(--accent-tint)}.exam-main:has(.setup){padding:0}.setup{flex-wrap:wrap;align-items:stretch;min-height:100%;display:flex}.setup-page{min-width:0;padding:var(--space-4);gap:var(--space-3);background:var(--paper-sunken);border-right:var(--stroke-hairline) solid var(--line);flex-direction:column;flex:999 520px;align-items:center;display:flex}.setup-page>*{width:100%;max-width:600px}.setup-panel{min-width:0;padding:var(--space-4);gap:var(--space-4);flex-direction:column;flex:400px;display:flex}.setup-hint h2{margin:0 0 var(--space-1);font:var(--type-heading);letter-spacing:var(--type-heading-tracking)}.setup-hint p{color:var(--ink-muted);margin:0}.viewer{gap:var(--space-3);flex-direction:column;display:flex}.viewer-bar{align-items:center;gap:var(--space-2);font-size:12.5px;display:flex}.viewer-page{border:var(--stroke-hairline) solid var(--line);touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;width:100%;position:relative}.viewer-page img{pointer-events:none;width:100%;height:100%;display:block}.region{border:1.5px solid var(--ink);background:0 0;border-radius:2px;position:absolute}.region-current{border-color:var(--accent);background:#e9ebf559}.region-label{background:var(--ink);height:18px;color:var(--paper);font-family:var(--font-sans);letter-spacing:.04em;white-space:nowrap;border-radius:2px 2px 0 0;align-items:center;padding:0 6px;font-size:11px;font-weight:600;display:flex;position:absolute;top:-20px;left:-1.5px}.region-current .region-label{background:var(--accent);color:var(--on-accent)}.grip{border:2px solid var(--accent);background:#fff;width:14px;height:14px;position:absolute}.grip-nw{cursor:nwse-resize;top:-8px;left:-8px}.grip-ne{cursor:nesw-resize;top:-8px;right:-8px}.grip-sw{cursor:nesw-resize;bottom:-8px;left:-8px}.grip-se{cursor:nwse-resize;bottom:-8px;right:-8px}.question-panel{gap:var(--space-4);flex-direction:column;display:flex}.question-head{align-items:center;gap:var(--space-2);display:flex}.question-head h2{font:var(--type-heading);letter-spacing:var(--type-heading-tracking);flex-grow:1;margin:0}.question-grid{gap:var(--space-3);grid-template-columns:minmax(0,2fr) minmax(0,1fr);display:grid}.textarea{height:auto;min-height:72px;padding:var(--space-2) 10px;resize:vertical;font-weight:400}.question-foot{align-items:center;gap:var(--space-2);border-top:var(--stroke-hairline) solid var(--line);padding-top:var(--space-4);flex-wrap:wrap;display:flex}.question-foot .is-ready{color:var(--applied)}.delete-question{align-self:flex-start;font-size:12.5px}.rubric{gap:var(--space-2);flex-direction:column;display:flex}.rubric-head{align-items:baseline;gap:var(--space-2);display:flex}.rubric-head h3{font:var(--type-heading);letter-spacing:var(--type-heading-tracking);flex-grow:1;margin:0}.rubric-empty{padding:var(--space-4);border:var(--stroke-hairline) dashed var(--line-strong);border-radius:var(--radius-sm);color:var(--ink-subtle);text-align:center;font-size:12.5px;line-height:18px}.rubric-item,.rubric-form{padding:10px var(--space-3);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);background:var(--paper-raised)}.rubric-item{align-items:flex-start;gap:10px;display:flex}.rubric-points{font-weight:500}.rubric-points.is-deduction{color:var(--conflict)}.rubric-form{border-color:var(--accent);flex-direction:column;gap:10px;display:flex}.rubric-form .field{font-size:12.5px}.rubric-form-grid{gap:var(--space-2);grid-template-columns:minmax(0,3fr) minmax(0,1fr);display:grid}.rubric-form-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.rubric-add{color:var(--accent);padding-left:var(--space-1);justify-content:flex-start}.submissions-soon{max-width:640px;margin:0 auto}@media (width<=720px){.setup-page,.setup-panel{padding:var(--space-3)}}.qrow-status,.qrow-points,.viewer-bar .mono{white-space:nowrap}.viewer-page{overflow:hidden}.fill-panel,.fill-failed{border-radius:var(--radius-md);flex-direction:column;gap:10px;padding:14px;display:flex}.fill-panel{border:var(--stroke-hairline) solid var(--accent);background:var(--accent-tint)}.fill-failed{border:var(--stroke-hairline) solid var(--conflict);background:var(--conflict-tint)}.fill-text{color:var(--ink-muted);flex-direction:column;font-size:12.5px;line-height:18px;display:flex}.fill-text strong{color:var(--ink);font-size:14px}.fill-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filled-note{gap:var(--space-2);padding:10px var(--space-3);border:var(--stroke-hairline) dashed var(--suggest);border-radius:var(--radius-sm);color:var(--suggest);align-items:center;font-size:12.5px;line-height:18px;display:flex}.filled-mark{border:var(--stroke-hairline) dashed var(--suggest);border-radius:2px;flex:none;width:12px;height:12px}.input.is-suggested{border-style:dashed;border-color:var(--suggest);color:var(--suggest)}.rubric-suggested{border-style:dashed;border-color:var(--suggest);align-items:center}.rubric-suggested .strong{color:var(--suggest)}.rubric-points-input{flex:none;width:84px;height:32px}.text-review{color:var(--review)}.rubric-suggested{flex-wrap:wrap}.rubric-suggested>.grow{flex-basis:100%}.rubric-suggested .rubric-points-input{width:120px}.region-editing{border:2px solid var(--accent);cursor:move;background:#e9ebf573}.region-editing .region-label{background:var(--accent);height:20px;color:var(--on-accent);top:-22px;left:-2px}.region-editing:focus-visible{outline:var(--stroke-focus) solid var(--accent);outline-offset:3px}.region:not(.region-editing){pointer-events:none}.btn-applied{background:var(--applied);color:var(--on-accent);border:var(--stroke-hairline) solid var(--applied)}.btn-applied:hover:not(:disabled){filter:brightness(.92)}.published-banner{background:var(--applied-tint);border:var(--stroke-hairline) solid #b5d6d6;border-radius:var(--radius-sm);font:var(--type-small);color:var(--ink);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.published-banner svg{color:var(--applied);flex:none;margin-top:2px}.export-dialog{max-width:520px;font:var(--type-body);text-align:left;white-space:normal;gap:18px}.export-fieldset{border:0;flex-direction:column;gap:10px;margin:0;padding:0;display:flex}.export-fieldset legend{margin-bottom:var(--space-2);padding:0;font-weight:550}.format-options{gap:var(--space-2);flex-wrap:wrap;display:flex}.format-option{gap:var(--space-2);height:40px;padding:0 var(--space-3);cursor:pointer;background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line-control);border-radius:var(--radius-sm);flex:140px;align-items:center;font-weight:550;display:flex}.format-option.format-on{background:var(--accent-tint);border:1.5px solid var(--accent)}.format-option input,.export-column input{accent-color:var(--accent);margin:0}.format-option .help{font-weight:400}.export-column{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.export-column input{width:16px;height:16px;margin-top:3px}.export-fixed{color:var(--ink-subtle);cursor:default}.export-summary{padding:var(--space-3);font:var(--type-small);color:var(--ink-muted);background:var(--paper-sunken);border-radius:var(--radius-sm);flex-direction:column;gap:6px;display:flex}.btn-accent-outline{color:var(--accent);background:var(--paper-raised);border-color:var(--accent)}.step-count{color:var(--ink)}.approved-note{padding:var(--space-3) var(--space-6);background:var(--review-tint);border-bottom:var(--stroke-hairline) solid #e2c9a3;color:var(--ink);flex-wrap:wrap;align-items:flex-start;gap:10px;font-size:12.5px;line-height:18px;display:flex}.approved-note svg{color:var(--review);flex:none;margin-top:2px}.approved-note>span{flex:600px}.approved-note strong{font-weight:600}.restart-dialog{gap:var(--space-4);max-width:540px}.dialog p.restart-lede{margin-top:-6px}.restart-strong{color:var(--ink);font-weight:550}.restart-deleted{padding:var(--space-3);background:var(--conflict-tint);border-radius:var(--radius-sm);color:var(--ink);align-items:flex-start;gap:10px;font-size:12.5px;line-height:20px;display:flex}.restart-deleted svg{color:var(--conflict);flex:none;margin-top:2px}.restart-deleted-title{font-weight:600}.restart-deleted ul{margin:2px 0 0;padding-left:18px}.restart-kept{color:var(--ink-muted);font-size:12.5px;line-height:20px}.restart-kept .label{margin-bottom:2px}.restart-check{cursor:pointer;align-items:flex-start;gap:10px;font-weight:550;display:flex}.restart-check input{width:16px;height:16px;accent-color:var(--conflict);flex:none;margin:3px 0 0}.tag-new{letter-spacing:.02em;background:var(--accent);height:18px;color:var(--on-accent);padding:0 6px;font-size:11px}.exam-regrades{color:var(--review);font-weight:550}.upload{flex-direction:column;gap:20px;display:flex}.upload-title{letter-spacing:-.015em;margin:0;font-size:22px;font-weight:600;line-height:28px}.upload-intro{color:var(--ink-muted);margin:4px 0 0}.drop-zone{justify-content:center;align-items:center;gap:var(--space-2);border:var(--stroke-hairline) dashed var(--line-control);border-radius:var(--radius-md);background:var(--paper-raised);text-align:center;color:var(--ink-muted);flex-direction:column;padding:28px;display:flex}.drop-zone-over{border-color:var(--accent);background:var(--accent-tint)}.drop-title{color:var(--ink);font-weight:550}.files-card{overflow:hidden}.files-head{align-items:baseline;gap:var(--space-2);padding:14px var(--space-4);flex-wrap:wrap;display:flex}.files-head h3{flex-grow:1;margin:0;font-size:15px;font-weight:600;line-height:22px}.files-table{border-collapse:collapse;width:100%;min-width:560px}.files-table th{text-align:left;padding:10px var(--space-4);background:var(--paper-sunken)}.files-table td{padding:10px var(--space-4);border-top:var(--stroke-hairline) solid var(--line)}.file-name{font-size:12.5px}.files-foot{padding:10px var(--space-4);border-top:var(--stroke-hairline) solid var(--line)}.btn-view{color:var(--accent)}.text-applied{color:var(--applied)}.start-bar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.start-bar .grow{flex:360px}.start-bar strong{font-weight:550}.progress-card{flex-direction:column;gap:10px;padding:20px;display:flex}.progress-card p{margin:0}.progress-head{align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.progress-head h3{flex-grow:1;margin:0;font-size:15px;font-weight:600;line-height:22px}.progress-count{letter-spacing:-.02em;font-size:28px;font-weight:500;line-height:32px}.progress-count .help{letter-spacing:0;font-size:14px}.progress-track{background:var(--paper-sunken);border:var(--stroke-hairline) solid var(--line);border-radius:2px;height:8px;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width .4s}.progress-facts{gap:var(--space-2) 20px;flex-wrap:wrap;display:flex}.reads-table{min-width:640px}.crops{flex-direction:column;gap:4px;display:flex}.crop{object-fit:contain;object-position:left center;background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line);border-radius:2px;width:200px;height:40px;display:block}.crop-empty{border-style:dashed;border-color:var(--line-control);background:var(--paper)}.reading{color:var(--accent);font-size:12.5px;font-weight:550}.read-as{font-size:12.5px;line-height:18px}.suggestion{height:28px;padding:0 var(--space-2);border:var(--stroke-hairline) dashed var(--line-control);border-radius:var(--radius-sm);color:var(--ink-muted);align-items:center;font-size:12.5px;display:inline-flex}.tag-review{background:var(--review-tint);color:var(--review)}.reads-table td:first-child{white-space:nowrap}.filters{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{font:inherit;height:30px;padding:0 var(--space-3);border:var(--stroke-hairline) solid var(--line);background:var(--paper-raised);color:var(--ink-muted);cursor:pointer;border-radius:999px;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.chip .mono{color:var(--ink)}.chip-matched{border-color:var(--applied);color:var(--applied)}.chip-needs{border-color:var(--review);color:var(--review)}.chip[aria-pressed=true]{background:var(--accent-tint);border-color:var(--accent);color:var(--accent);font-weight:550}.chip-needs[aria-pressed=true]{background:var(--review-tint);border-color:var(--review);color:var(--review)}.matching-head{gap:var(--space-4);justify-content:space-between;align-items:flex-start;display:flex}.matching-head>.btn{flex-shrink:0}.matching-body{gap:var(--space-6);flex-wrap:wrap;align-items:flex-start;display:flex}.matching-card{flex:999 620px;min-width:0}.matching-table{min-width:860px}.matching-table td{vertical-align:middle}.matching-table td:first-child{white-space:nowrap}.row-current td{background:var(--accent-tint)}.matching-empty{padding:var(--space-4);margin:0}.student-cell,.row-actions{align-items:center;gap:4px var(--space-2);flex-wrap:wrap;font-size:12.5px;display:flex}.student-cell>span:first-child{flex-basis:100%}.inline-select{min-width:220px;display:block}.input-sm{height:32px;font-size:12.5px}.resolve{padding:var(--space-4);flex-direction:column;flex:360px;gap:14px;display:flex}.resolve p{color:var(--ink-muted);margin:0}.resolve-head{align-items:center;gap:var(--space-2);display:flex}.resolve-head h3{flex-grow:1;margin:0;font-size:15px;font-weight:600;line-height:22px}.resolve-papers{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.resolve-paper{flex-direction:column;gap:6px;display:flex}.resolve-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.paper-overlay{padding:var(--space-6);overflow-y:hidden}.paper{width:100%;max-width:1200px;height:calc(100vh - 2 * var(--space-6));background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 1px 2px #191c230f,0 8px 24px #191c2314}.paper-head{align-items:center;gap:var(--space-3);border-bottom:var(--stroke-hairline) solid var(--line);flex-wrap:wrap;padding:14px 20px;display:flex}.paper-title{flex-wrap:wrap;flex:360px;align-items:center;gap:4px 10px;min-width:0;display:flex}.paper-title h2{margin:0;font-size:18px;font-weight:600;line-height:24px}.paper-source{flex-basis:100%}.paper-toggle{align-items:center;gap:var(--space-2);color:var(--ink-muted);cursor:pointer;font-size:12.5px;display:inline-flex}.paper-toggle input{width:16px;height:16px;accent-color:var(--accent);margin:0}.paper-nav{gap:4px;display:inline-flex}.paper-close{justify-content:center;width:32px;padding:0;font-size:18px}.paper-body{background:var(--paper-sunken);flex:auto;align-items:stretch;min-height:0;display:flex}.paper-thumbs{padding:var(--space-4) var(--space-3);border-right:var(--stroke-hairline) solid var(--line);flex-direction:column;flex:0 0 132px;gap:10px;display:flex;overflow-y:auto}.paper-thumb{font:inherit;cursor:pointer;color:var(--ink-muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:4px;display:flex}.paper-thumb img{border:2px solid var(--line);background:#fff;border-radius:2px;height:auto;display:block}.paper-thumb[aria-current=true] img{border-color:var(--accent)}.paper-thumb[aria-current=true]{color:var(--accent);font-weight:600}.paper-stage{overscroll-behavior:contain;flex-direction:column;flex:auto;align-items:center;gap:20px;min-width:0;padding:20px;display:flex;position:relative;overflow-y:auto}.paper-page{width:100%;max-width:860px;margin:0}.paper-sheet{border:var(--stroke-hairline) solid var(--line);background:#fff;position:relative;box-shadow:0 1px 2px #191c230f}.paper-sheet img{width:100%;height:auto;display:block}.paper-area{position:absolute}.paper-region{border:var(--stroke-region) dashed var(--accent);border-radius:var(--radius-xs)}.paper-region-label{background:var(--accent);color:var(--on-accent);padding:0 4px;font-size:11px;position:absolute;top:-1px;left:-1px}.paper-grade,.paper-total{white-space:nowrap;border-radius:var(--radius-xs);background:var(--accent);color:var(--on-accent);padding:1px 6px;font-size:12px;font-weight:600;position:absolute}.paper-grade{bottom:-1px;right:-1px}.paper-total{top:var(--space-3);right:var(--space-3);font-size:13px}@media (width<=640px){.paper-overlay{padding:var(--space-4) 0}.paper{height:calc(100vh - 2 * var(--space-4))}.paper-body{flex-direction:column}.paper-thumbs{border-right:0;border-bottom:var(--stroke-hairline) solid var(--line);flex-direction:row;flex:none;overflow:auto hidden}.paper-stage{padding:var(--space-3)}}.question-progress-title{margin:0;padding:14px 16px;font-size:15px;font-weight:600;line-height:22px}.question-progress{margin:0;padding:0;list-style:none}.question-progress-row{gap:var(--space-4);border-top:var(--stroke-hairline) solid var(--line);grid-template-columns:minmax(180px,1.3fr) minmax(140px,3fr) 90px minmax(150px,1.2fr);align-items:center;padding:12px 16px;font-size:12.5px;display:grid}.question-progress-name{gap:var(--space-2);align-items:center;font-size:14px;display:flex}.question-number{font-weight:550}.state-icon{stroke-width:1.2px;flex:none}.question-progress-track{background:var(--paper-sunken);border-radius:2px;height:6px;overflow:hidden}.question-progress-fill{background:var(--accent);height:100%;transition:width .4s}[data-state=grouped] .question-progress-fill{background:var(--applied)}.mapping-now{color:var(--accent);font-weight:550}@media (width<=720px){.question-progress-row{grid-template-columns:1fr auto}.question-progress-track{grid-area:2/1/auto/-1}}.group-list{max-width:640px}.group-list ul{padding:var(--space-2);flex-direction:column;gap:2px;margin:0;list-style:none;display:flex}.group-row{border-radius:var(--radius-sm);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.group-letter{color:#fff;border-radius:2px;flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:12.5px;font-weight:600;display:inline-flex}[data-kind=ungrouped] .group-letter{border:1.5px dashed var(--ink-muted)}[data-kind=blank] .group-letter{border:1.5px solid var(--ink-muted)}.group-text{flex-direction:column;gap:2px;min-width:0;font-size:12.5px;line-height:17px;display:flex}.group-title{font-size:14px;font-weight:550;line-height:20px}.group-defaults{align-items:baseline;gap:var(--space-2);border-top:var(--stroke-hairline) solid var(--line);padding:10px 20px 0;display:flex}.group-defaults .label{flex-grow:1}.back-link{margin-bottom:var(--space-2);font-size:12.5px;display:inline-block}.confirmed-note{padding:10px var(--space-3);background:var(--applied-tint);border:var(--stroke-hairline) solid #b5d6d6;border-radius:var(--radius-sm);align-items:flex-start;gap:10px;font-size:12.5px;line-height:18px;display:flex}.confirmed-note svg{color:var(--applied);flex:none;margin-top:2px}.confirmed-note strong{font-weight:600}.drop-zone-more{gap:var(--space-3);flex-flow:wrap;padding:18px}.file-cell{align-items:center;gap:var(--space-2);display:inline-flex}.new-table{min-width:820px;font-size:13px}.new-table .row-new{background:#f4f5fb}.new-table .actions-cell,.matching-table .actions-cell{text-align:right;white-space:nowrap}.text-accent{color:var(--accent);font-weight:550}.btn-remove{color:var(--conflict)}.withdrawn-line{padding:10px var(--space-4);border-top:var(--stroke-hairline) solid var(--line);background:var(--review-tint);font-size:12.5px}.start-bar-new{background:var(--accent-tint);border-color:var(--accent)}.help-strong{color:var(--ink-muted)}.remove-file{padding:10px var(--space-3);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);align-items:center;gap:10px;font-size:12.5px;display:flex}.remove-file .grow{flex-grow:1}.remove-list{color:var(--ink-muted);margin:0;padding-left:18px;font-size:12.5px;line-height:20px}.workspace{flex-direction:column;display:flex}.workspace-note{padding:var(--space-4) var(--space-6)}.question-tabs{z-index:2;background:var(--paper);gap:var(--space-1);padding:var(--space-2) 0;border-bottom:var(--stroke-hairline) solid var(--line);flex-wrap:wrap;display:flex;position:sticky;top:0}.qtab{border-radius:var(--radius-sm);height:32px;color:var(--ink);align-items:center;gap:6px;padding:0 10px;text-decoration:none;display:inline-flex}.qtab[aria-current=page]{background:var(--accent-tint);color:var(--accent);font-weight:550}.qtab-points{border-radius:var(--radius-xs);background:var(--paper-sunken);color:var(--ink-subtle);padding:0 5px;font-size:12px}.qtab[aria-current=page] .qtab-points{background:var(--paper-raised);color:var(--accent)}.icon{flex:none}.workspace-columns{flex-wrap:wrap;align-items:flex-start;display:flex}.workspace-groups,.workspace-panel{top:var(--tabs-height,0px);max-height:calc(100vh - var(--tabs-height,0px));position:sticky;overflow-y:auto}.workspace-groups{min-width:0;padding:var(--space-4) var(--space-4) var(--space-4) 0;gap:var(--space-1);flex-direction:column;flex:0 0 330px;display:flex}.groups-head{align-items:baseline;gap:var(--space-2);padding:0 var(--space-3) var(--space-2);display:flex}.groups-head h2{flex-grow:1;margin:0}.workspace-groups .group-defaults{padding:10px var(--space-3) 6px}.grp{font:inherit;text-align:left;width:100%;padding:10px var(--space-3);border:var(--stroke-hairline) solid transparent;border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;background:0 0;align-items:flex-start;gap:10px;display:flex}.grp:hover{background:var(--paper-sunken)}.grp[aria-current=true]{background:var(--paper-raised);border-color:var(--line-strong)}.letter{border-radius:var(--radius-xs);width:22px;height:22px;color:var(--on-accent);flex:none;justify-content:center;align-items:center;font-size:12.5px;font-weight:600;display:inline-flex}.letter-lg{width:28px;height:28px;font-size:15px}.letter-default{color:var(--ink-muted);background:0 0}.letter-default[data-kind=ungrouped]{border:1px dashed var(--ink-muted)}.letter-default[data-kind=blank]{border:1px solid var(--ink-muted)}.grp-text{min-width:0;color:var(--ink-muted);flex-direction:column;flex-grow:1;gap:2px;font-size:12.5px;line-height:17px;display:flex}.grp-line{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.grp-title{color:var(--ink);font-size:14px;font-weight:550;line-height:20px}.grp-meta{align-items:center;gap:5px;font-size:12px;display:inline-flex}.grp-slash{color:var(--line-strong)}.grp-graded{color:var(--applied);align-items:center;gap:4px;font-weight:550;display:inline-flex}.grp-item{gap:6px;display:flex}.grp-item-name{text-overflow:ellipsis;white-space:nowrap;flex-grow:1;min-width:0;overflow:hidden}.grp-none{font-style:italic}.grp-new{color:var(--accent);align-self:flex-start;align-items:center;gap:6px;margin-top:2px;font-weight:550;display:inline-flex}.held-tag{border-radius:var(--radius-xs);background:var(--review-tint);color:var(--review);align-self:flex-start;align-items:center;gap:5px;margin-top:2px;padding:1px 6px;font-weight:550;display:inline-flex}.workspace-answers{min-width:0;padding:var(--space-4) var(--space-6) var(--space-6);gap:var(--space-4);border-left:var(--stroke-hairline) solid var(--line);border-right:var(--stroke-hairline) solid var(--line);flex-direction:column;flex:480px;align-self:stretch;display:flex}.answers-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.answers-title{font:var(--type-title);letter-spacing:var(--type-title-tracking);flex-grow:1;margin:0}.tag-graded{background:var(--applied-tint);color:var(--applied)}.tag-outline{border:var(--stroke-hairline) solid var(--line);color:var(--ink-muted);background:var(--paper-raised)}.new-note{padding:10px var(--space-3);background:var(--accent-tint);border:var(--stroke-hairline) solid var(--accent);border-radius:var(--radius-sm);align-items:flex-start;gap:10px;font-size:12.5px;line-height:18px;display:flex}.new-note>.tag{flex:none}.held-notice{padding:10px var(--space-3);background:var(--review-tint);border:var(--stroke-hairline) solid var(--review);border-radius:var(--radius-sm);align-items:flex-start;gap:10px;font-size:12.5px;line-height:18px;display:flex}.held-notice>.icon{color:var(--review);margin-top:3px}.answers-section{flex-direction:column;gap:10px;display:flex}.answers-bar{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.answers-bar h3{flex-grow:1;margin:0;font-size:15px;font-weight:600;line-height:22px}.per-row{border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);background:var(--paper-sunken);gap:2px;margin-left:auto;padding:2px;display:inline-flex}.per-row button{font:inherit;height:26px;padding:0 var(--space-2);border-radius:var(--radius-xs);color:var(--ink-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;font-size:12.5px;font-weight:550;display:inline-flex}.per-row button[aria-pressed=true]{background:var(--paper-raised);color:var(--ink)}.answers-empty{padding:var(--space-6);border:var(--stroke-hairline) dashed var(--line-strong);border-radius:var(--radius-md);text-align:center;color:var(--ink-subtle)}.answers-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.answers-grid[data-columns="1"]{grid-template-columns:minmax(0,1fr)}.answers-grid[data-columns="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}.ans{gap:var(--space-2);padding:var(--space-2);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);background:var(--paper-raised);flex-direction:column;scroll-margin-block:25vh;display:flex}.ans img{border-radius:var(--radius-xs);width:100%;height:auto;display:block}.ans-foot{align-items:center;gap:6px;display:flex}.ans-student{flex-grow:1;font-size:12.5px}.held-short{color:var(--review);align-items:center;gap:4px;font-size:12px;font-weight:550;display:inline-flex}.mark{font:var(--type-score);color:var(--applied)}.ans-graded{align-items:baseline;gap:4px;display:inline-flex}.ans-graded-label{color:var(--ink-muted);font-size:12px}.grade-now-icon{font:inherit;border:var(--stroke-hairline) solid var(--line-control);background:var(--paper-raised);color:var(--accent);cursor:pointer}.workspace-panel{min-width:340px;padding:var(--space-4) 0 var(--space-4) var(--space-4);gap:var(--space-4);flex-direction:column;flex:0 400px;display:flex}.panel-card{padding:var(--space-4);flex-direction:column;gap:10px;display:flex}.info-card{gap:var(--space-3);flex-direction:row;align-items:flex-start}.info-card p{color:var(--ink-muted);margin:0}.dashed-chip{border:1px dashed var(--ink-muted);border-radius:var(--radius-xs);flex:none;width:18px;height:18px;margin-top:2px}.panel-head{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.panel-head h3{flex-grow:1;margin:0;font-size:15px;font-weight:600;line-height:22px}.rubric-pick{gap:var(--space-2);padding:10px var(--space-3);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);background:var(--paper-raised);flex-direction:column;display:flex}.rubric-pick[data-on=true]{border-color:var(--accent);background:var(--accent-tint)}.rubric-pick-row,.rubric-pick-main{align-items:flex-start;gap:10px;display:flex}.rubric-pick-main{flex-grow:1}.rubric-pick-row .icon-btn,.history-btn,.history-close{font:inherit;border:var(--stroke-hairline) solid transparent;cursor:pointer;background:0 0}.rubric-pick-row .icon-btn[aria-disabled=true]{opacity:.4;cursor:not-allowed}.rubric-edit-row{gap:var(--space-2);grid-template-columns:minmax(0,3fr) minmax(0,1fr) auto;align-items:end;padding-left:26px;display:grid}.rubric-pick-new .rubric-edit-row{padding-left:0}.rubric-edit-row .field{font-size:12.5px;font-weight:550}.rubric-foot{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.rubric-foot .help{flex-grow:1}.rubric-foot .rubric-add{color:var(--accent);padding-left:4px}.rubric-pick-main input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin:3px 0 0}.rubric-pick-text{flex-direction:column;flex-grow:1;display:flex}.rubric-pick-name{font-weight:550}.score-box{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);background:var(--paper-raised);flex-wrap:wrap;display:flex}.score-box[data-graded=true]{background:var(--applied-tint);border-color:var(--applied)}.score-text{color:var(--ink-muted);flex:200px;font-size:12.5px;line-height:18px}.score-label{color:var(--ink);font-size:14px;font-weight:550}.score-value{font:var(--type-score-lg);letter-spacing:var(--type-score-lg-tracking)}.approved-by{align-items:center;gap:var(--space-2);border-top:var(--stroke-hairline) solid color-mix(in srgb, var(--applied) 22%, transparent);color:var(--ink-muted);flex-basis:100%;padding-top:10px;font-size:12.5px;line-height:18px;display:flex}.approved-by[data-approved=false]{border-top-color:var(--line)}.initials{border-radius:var(--radius-sm);background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line);width:22px;height:22px;color:var(--ink-muted);flex:none;justify-content:center;align-items:center;font-size:10.5px;font-weight:600;display:inline-flex}.approved-by .initials{border-color:color-mix(in srgb, var(--applied) 22%, transparent);color:var(--applied)}.history-btn{color:var(--applied);margin-left:auto}.history-dialog{gap:var(--space-4);max-width:620px}.history-dialog h2{margin:2px 0 0}.history-close{font-size:18px}.history-table{border-collapse:collapse;width:100%;font-size:13px}.history-table th{text-align:left;padding:var(--space-2) var(--space-3);background:var(--paper-sunken)}.history-table td{padding:10px var(--space-3);border-top:var(--stroke-hairline) solid var(--line);color:var(--ink-muted)}.history-table tr[data-newest=true] td{background:color-mix(in srgb, var(--accent-tint) 50%, var(--paper-raised))}.history-table .history-grade{text-align:right;color:var(--ink);font-weight:550}.history-table tr[data-newest=true] .history-grade{color:var(--applied)}.history-table .history-grade[data-removed=true]{color:var(--ink-subtle)}.history-date{white-space:nowrap}.history-grader{align-items:center;gap:var(--space-2);color:var(--ink);display:inline-flex}.history-grader .initials{background:var(--paper-sunken)}.history-foot{align-items:center;gap:var(--space-3);display:flex}.impact-list{border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);margin:0;padding:0;list-style:none}.impact-list li{padding:var(--space-2) var(--space-3);align-items:center;gap:10px;font-size:12.5px;display:flex}.impact-list li+li{border-top:var(--stroke-hairline) solid var(--line)}.impact-title{flex-grow:1}.impact-title strong{font-size:14px;font-weight:550}.impact-change{color:var(--ink-subtle)}.impact-change[data-graded=true]{color:var(--review);font-weight:600}@media (width<=720px){.workspace-groups,.workspace-panel{min-width:0;max-height:none;padding:var(--space-4) 0;flex-basis:100%;position:static}.workspace-answers{padding:var(--space-4) 0;border-left:0;border-right:0}.answers-grid[data-columns="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}}.workspace-groups[data-dragging=true]{background:var(--accent-tint);outline:2px dashed var(--accent);outline-offset:-8px;border-radius:var(--radius-md);padding-left:var(--space-4)}.drop-banner{align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);padding:var(--space-2) var(--space-3);background:var(--accent);color:var(--on-accent);border-radius:var(--radius-sm);font-size:12.5px;font-weight:550;display:flex}.grp[data-drop=ready]{background:var(--paper-raised);border-style:dashed;border-color:var(--line-control)}.grp[data-drop=over]{background:var(--accent-tint);border-style:solid;border-color:var(--accent)}.grp[data-dimmed=true]{opacity:.45}.create-group{color:var(--accent);justify-content:flex-start;margin:2px 0 4px}.groups-hint{margin:var(--space-2) var(--space-3) 0;font-size:12.5px;line-height:18px}.delete-group{color:var(--conflict)}.ans[draggable=true]{cursor:grab}.ans[data-dragging=true]{opacity:.4}.move-menu{position:relative}.move-menu-list{z-index:5;width:380px;max-width:90vw;box-shadow:var(--shadow-float);flex-direction:column;gap:4px;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);right:0}.move-target{font:inherit;text-align:left;width:100%;padding:var(--space-2) 10px;border:1.5px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-raised);color:var(--ink);cursor:pointer;align-items:center;gap:10px;display:flex}.move-target:hover:not(:disabled,[aria-disabled=true]){border-color:var(--line-control)}.move-target:disabled,.move-target[aria-disabled=true]{cursor:not-allowed;opacity:.6}.move-target[aria-selected=true]{background:var(--accent-tint);border-color:var(--accent)}.move-target-text{flex-grow:1;min-width:0;font-size:12.5px;line-height:17px}.move-target-summary{color:var(--ink-muted);display:block}.move-target-note{white-space:nowrap;font-size:12px}.move-target .held-tag{width:fit-content;display:inline-flex}.move-target .tag{flex:none}.multi-card{border-color:var(--accent);gap:14px}.multi-card p{margin:0}.multi-labels{flex-wrap:wrap;gap:6px;display:flex}.multi-label{padding:2px var(--space-2);border-radius:var(--radius-xs);background:var(--accent-tint);color:var(--accent);font-size:12px}.multi-card>.btn-primary{justify-content:center}.multi-targets{padding-top:var(--space-3);border-top:var(--stroke-hairline) solid var(--line);flex-direction:column;gap:6px;display:flex}.edit-dialog{gap:var(--space-4);max-width:480px}.delete-dialog{max-width:520px}.edit-dialog-head{align-items:center;gap:10px;display:flex}.move-warning{padding:var(--space-3);background:var(--review-tint);border-radius:var(--radius-sm);color:var(--ink);align-items:flex-start;gap:10px;font-size:12.5px;line-height:18px;display:flex}.move-warning .icon{color:var(--review);margin-top:2px}.move-facts{color:var(--ink-muted);margin:0;padding-left:18px;font-size:12.5px;line-height:20px}.move-facts .mono{color:var(--ink)}.delete-choices{gap:var(--space-2);flex-direction:column;display:flex}.delete-choice{font:inherit;text-align:left;padding:var(--space-3);border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--paper-raised);color:var(--ink);cursor:pointer;align-items:flex-start;gap:10px;display:flex}.delete-choice[aria-checked=true]{background:var(--accent-tint);border-color:var(--accent)}.delete-dot{border:1.5px solid var(--line-control);border-radius:50%;flex:none;justify-content:center;align-items:center;width:16px;height:16px;margin-top:2px;display:inline-flex}.delete-choice[aria-checked=true] .delete-dot{border-color:var(--accent)}.delete-choice[aria-checked=true] .delete-dot:after{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px}.delete-choice-label{font-weight:550}.delete-choice .help{font-size:12.5px;line-height:18px}.merge-list{flex-direction:column;gap:4px;padding:4px 0 0 26px;display:flex}.what-changes{background:var(--paper-sunken);border-radius:var(--radius-sm);padding:var(--space-3);color:var(--ink-muted);font-size:12.5px;line-height:20px}.what-changes .label{margin-bottom:4px}.what-changes ul{margin:0;padding-left:18px}.change-loss{color:var(--conflict)}.change-note{color:var(--review);font-weight:550}.delete-dialog .btn-danger:disabled{opacity:1;background:var(--paper-sunken);color:var(--ink-subtle);border-color:var(--line)}.filters{flex-wrap:wrap;gap:6px;display:inline-flex}.filters button{font:inherit;border-radius:var(--radius-sm);border:var(--stroke-hairline) solid var(--line);background:var(--paper-raised);height:30px;color:var(--ink-muted);cursor:pointer;padding:0 9px;font-size:12.5px}.filters button[aria-pressed=true],.filters button[aria-checked=true]{border-color:var(--accent);background:var(--accent-tint);color:var(--accent);font-weight:550}.selection-bar{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--accent-tint);border:var(--stroke-hairline) solid var(--accent);border-radius:var(--radius-sm);flex-wrap:wrap;display:flex}.selection-count{color:var(--accent);font-weight:550}.selection-hint{flex-grow:1}.workspace-groups .selection-bar{margin:var(--space-2) 0;gap:var(--space-1) var(--space-2)}.workspace-groups .selection-hint{flex-basis:100%}.workspace-groups .move-menu{display:contents}.workspace-groups .move-menu-list{width:auto;max-width:none;box-shadow:none;flex-basis:100%;position:static}.ans[data-focused=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.ans[data-picked=true]{border-color:var(--accent);background:var(--accent-tint)}.ans-body{align-items:flex-start;gap:6px;display:flex}.ans-check{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:2px 0 0}.ans-open{cursor:zoom-in;background:0 0;border:0;flex-grow:1;min-width:0;padding:0}.mark-button{cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;padding:2px 6px}.mark-button:hover{background:var(--applied-tint)}.btn-sm{height:26px;padding:0 var(--space-2);font-size:12.5px}.answer-viewer,.progress-panel{gap:var(--space-4);flex-direction:column;max-width:760px;display:flex}.viewer-head{align-items:flex-start;gap:var(--space-2);display:flex}.viewer-title{flex-direction:column;flex-grow:1;gap:2px;display:flex}.viewer-image{border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);background:var(--paper);width:100%;height:auto}.viewer-foot{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.viewer-status{flex-grow:1}.progress-table{border-collapse:collapse;width:100%}.progress-table th,.progress-table td{text-align:left;padding:var(--space-2);border-bottom:var(--stroke-hairline) solid var(--line);font-weight:400}.progress-table thead th{font:var(--type-label);letter-spacing:var(--type-label-tracking);color:var(--ink-subtle)}.progress-table tr[aria-current=true] th{font-weight:550}.progress-bar{border-radius:var(--radius-xs);background:var(--paper-sunken);min-width:120px;height:8px;display:flex;overflow:hidden}.bar-graded,.legend-graded{background:var(--applied)}.bar-blank,.legend-blank{background:var(--line-strong)}.legend-graded,.legend-blank{vertical-align:middle;border-radius:2px;width:10px;height:10px;display:inline-block}.review{flex-direction:column;gap:20px;display:flex}.review-head{align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.review-title{font:var(--type-title);letter-spacing:var(--type-title-tracking);flex-grow:1;margin:0}.review-tiles{gap:var(--space-3);flex-wrap:wrap;margin:0;display:flex}.review-tile{background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-md);flex-direction:column;flex:150px;gap:2px;padding:14px 16px;display:flex}.review-tile dd{margin:0}.review-tile-value{font:var(--type-score-lg);letter-spacing:var(--type-score-lg-tracking);line-height:34px}.review-charts{flex-wrap:wrap;align-items:stretch;gap:20px;display:flex}.review-card{gap:var(--space-3);min-width:0;padding:var(--space-4);flex-direction:column;flex:520px;display:flex}.review-card-head{flex-wrap:wrap;align-items:baseline;gap:8px 14px;display:flex}.review-card-head h3{font:var(--type-heading);flex-grow:1;margin:0}.dist{padding-top:22px;position:relative}.dist-average-label{width:80px;color:var(--ink-muted);text-align:center;font-size:11.5px;position:absolute;top:0}.dist-bars{border-bottom:var(--stroke-hairline) solid var(--line-strong);align-items:flex-end;gap:6px;height:172px;display:flex;position:relative}.dist-bar{justify-content:flex-end;gap:var(--space-1);flex-direction:column;flex:1 1 0;height:100%;display:flex}.dist-count{color:var(--ink-muted);text-align:center;font-size:11.5px}.dist-fill{background:var(--accent);border-radius:4px 4px 0 0;display:block}.dist-average{border-left:1.5px dashed var(--ink-muted);position:absolute;top:-4px;bottom:0}.dist-labels{gap:6px;padding-top:6px;display:flex}.dist-labels span{color:var(--ink-subtle);text-align:center;flex:1 1 0;font-size:11px}.dist-axis{padding-top:var(--space-1);text-align:center}.byq-legend{gap:var(--space-3);color:var(--ink-muted);flex-wrap:wrap;font-size:12px;display:inline-flex}.byq-legend>span{align-items:center;gap:6px;display:inline-flex}.legend-average{background:var(--accent);border-radius:2px;width:14px;height:10px}.legend-median{background:var(--ink);width:2px;height:12px}.legend-range{background:var(--line-strong);width:16px;height:2px}.byq{margin:0;padding:0;list-style:none}.qbar{border-top:var(--stroke-hairline) solid #efebe3;grid-template-columns:140px minmax(0,1fr) 128px;align-items:center;gap:14px;padding:10px 0;font-size:13px;line-height:17px;display:grid}.qbar strong{font-weight:550}.qbar-chart{height:30px;display:block;position:relative}.qbar-chart>span{position:absolute}.qbar-track,.qbar-average{border-radius:var(--radius-sm);height:14px;top:4px;left:0}.qbar-track{background:var(--paper-sunken);right:0}.qbar-average{background:var(--accent)}.qbar-median{background:var(--ink);width:2px;height:22px;top:0}.qbar-range{background:var(--line-strong);height:2px;top:26px}.qbar-figures{text-align:right;font-size:12.5px}.qbar-avg{font-weight:600}.students-card{overflow:hidden}.students-head{flex-wrap:wrap;align-items:center;gap:10px 14px;padding:14px 16px;display:flex}.students-head h3{font:var(--type-heading);flex-grow:1;margin:0}.students-head h3 .mono{font-weight:500}.students-search{align-items:center;gap:var(--space-2);min-width:240px;height:32px;color:var(--ink-subtle);background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line-control);border-radius:var(--radius-sm);padding:0 10px;display:inline-flex}.students-search input{font:inherit;color:var(--ink);background:0 0;border:0;outline:0;flex-grow:1;font-size:12.5px}.students-search:focus-within{outline:2px solid var(--accent);outline-offset:1px}.export-button{height:32px}.students-scroll{overflow-x:auto}.students-table{border-collapse:collapse;min-width:960px;display:block}.students-table thead,.students-table tbody{display:block}.st{gap:var(--space-3);border-top:var(--stroke-hairline) solid var(--line);align-items:center;padding:10px 16px;font-size:13px;display:grid}.students-table thead .st{background:var(--paper-sunken)}.st th,.st td{text-align:left;padding:0;font-weight:400}.review-student{min-width:0}.review-student strong{font-weight:550}.review-student .mono{font-size:12px}.sort-button{font:var(--type-label);letter-spacing:var(--type-label-tracking);text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.st .score-full{color:var(--applied);font-weight:600}.st .score-zero{color:var(--conflict)}.st .score-new{color:var(--accent);font-weight:600}.score-mark{outline-offset:2px;text-underline-offset:3px;text-decoration:underline;display:inline-block;position:relative}.score-mark:focus-visible{outline:2px solid var(--accent)}.score-tip{z-index:2;font-family:var(--font-sans);white-space:nowrap;color:var(--paper-raised);background:var(--ink);border-radius:var(--radius-xs);opacity:0;pointer-events:none;padding:4px 8px;font-size:12px;font-weight:400;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.score-mark:hover .score-tip,.score-mark:focus-visible .score-tip{opacity:1}.students-new{align-items:center;gap:var(--space-2);color:var(--ink-muted);cursor:pointer;font-size:12.5px;display:inline-flex}.students-new input{width:16px;height:16px;accent-color:var(--accent);margin:0}.total-cell{align-items:center;gap:10px;display:flex}.total-value{min-width:22px;font-weight:600}.total-track{background:var(--paper-sunken);border-radius:var(--radius-sm);flex-grow:1;height:8px;overflow:hidden}.total-track span{background:var(--accent);border-radius:var(--radius-sm);height:100%;display:block}.paper-cell{justify-self:end}.view-paper{height:30px;color:var(--accent)}.students-empty{padding:var(--space-6);text-align:center;border-top:var(--stroke-hairline) solid var(--line);margin:0}.students-foot{align-items:center;gap:var(--space-2);border-top:var(--stroke-hairline) solid var(--line);flex-wrap:wrap;padding:12px 16px;display:flex}.pg{min-width:30px;height:30px;padding:0 var(--space-2);font:inherit;color:var(--ink-muted);cursor:pointer;background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);font-size:12.5px}.pg:disabled{cursor:not-allowed;opacity:.45}.pg-current{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.new-banner{background:var(--accent-tint);border:var(--stroke-hairline) solid var(--accent);border-radius:var(--radius-md);color:var(--ink);align-items:flex-start;gap:10px;padding:12px 14px;font-size:12.5px;line-height:18px;display:flex}.new-banner>.tag{flex:none}.grading-left{margin:var(--space-2) 0 0;padding-left:var(--space-4)}.grading-left li+li{margin-top:2px}.status-icon{flex:none}.results-page{flex-wrap:wrap;align-items:flex-start;max-width:1280px;margin:0 auto;display:flex}.results-nav{padding:var(--space-6) var(--space-4);flex-direction:column;flex:280px;gap:20px;display:flex}.results-nav-course{flex-direction:column;gap:2px;display:flex}.results-nav-head{padding:0 10px 6px}.results-nav-name{font-weight:600}.results-exam{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);min-height:40px;color:var(--ink);padding:6px 10px;text-decoration:none;display:flex}.results-exam:hover{background:var(--paper-sunken);color:var(--ink)}.results-exam[aria-current=page]{background:var(--paper-sunken)}.results-exam[aria-current=page] .results-exam-name{font-weight:600}.results-exam-name{flex-grow:1}.results-exam-right{font:var(--type-small);color:var(--ink-muted)}.results-exam-right.status-graded{font-family:var(--font-mono);color:var(--ink)}.results-exam-right.status-grading{color:var(--review)}.results-main{min-width:0;padding:var(--space-6);gap:var(--space-4);flex-direction:column;flex:999 560px;display:flex}.results-head{gap:var(--space-4);flex-wrap:wrap;align-items:flex-end;display:flex}.results-title{flex:280px}.results-title h1{letter-spacing:-.015em;margin:2px 0 0;font-size:22px;font-weight:600;line-height:28px}.results-total{text-align:right}.results-total .mono{letter-spacing:-.02em;font-size:28px;font-weight:500;line-height:32px}.results-total .mono span{color:var(--ink-subtle);letter-spacing:0;font-size:14px}.results-changed{margin:0 0 var(--space-1);font:var(--type-small);color:var(--accent)}.results-meta{gap:var(--space-2);font:var(--type-small);color:var(--ink-muted);flex-wrap:wrap;align-items:center;display:flex}.results-question{padding:var(--space-4);gap:var(--space-4);flex-wrap:wrap;display:flex}.results-question+.results-question{border-top:var(--stroke-hairline) solid var(--line)}.results-thumb{border:1.5px solid var(--ink);cursor:zoom-in;background:#fff;border-radius:2px;flex:none;width:180px;height:96px;padding:0;position:relative;overflow:hidden}.results-thumb img{object-fit:contain;width:100%;height:100%;display:block}.results-thumb-mark{background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line);width:20px;height:20px;stroke:var(--ink-muted);border-radius:2px;justify-content:center;align-items:center;display:flex;position:absolute;bottom:4px;right:4px}.results-question-body{gap:var(--space-2);flex-direction:column;flex:280px;min-width:0;display:flex}.results-question-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.results-question-title{flex-grow:1;font-weight:550}.results-item{gap:var(--space-2);font-size:12.5px;line-height:18px;display:flex}.results-item.not-applied{color:var(--ink-subtle)}.results-item-points{width:24px;color:var(--ink-subtle);flex:none}.results-item-points.positive{color:var(--applied)}.results-item-points.negative{color:var(--conflict)}.results-feedback{padding:var(--space-2) var(--space-3);background:var(--paper-sunken);border-radius:var(--radius-sm);white-space:pre-line;font-size:12.5px;line-height:18px}.results-waiting{padding:var(--space-6);gap:var(--space-4);align-items:flex-start;display:flex}.results-waiting .status-icon{margin-top:2px}.results-waiting-title{font-weight:600}.results-waiting p{margin:var(--space-1) 0 0;color:var(--ink-muted)}.answer-modal{flex-direction:column;max-width:760px;padding:0;display:flex}.answer-modal-head{align-items:center;gap:var(--space-3);padding:var(--space-4) 20px;border-bottom:var(--stroke-hairline) solid var(--line);display:flex}.answer-modal-head h2{font:var(--type-heading);flex-grow:1;margin:0}.answer-modal-body{background:var(--paper-sunken);padding:20px}.answer-modal-body img{object-fit:contain;border:1.5px solid var(--ink);background:#fff;border-radius:2px;width:100%;min-height:280px;max-height:60vh;display:block}.answer-modal-foot{align-items:center;gap:var(--space-2);padding:var(--space-3) 20px;font:var(--type-small);color:var(--ink-subtle);display:flex}.answer-modal-foot span{flex-grow:1}.student-course h2 a{color:var(--ink);text-decoration:none}.student-exams{border-top:var(--stroke-hairline) solid var(--line);padding-top:var(--space-2);flex-direction:column;display:flex}.student-exam{align-items:center;gap:var(--space-2);padding:var(--space-2);margin:0 calc(-1 * var(--space-2));border-radius:var(--radius-sm);color:var(--ink);text-decoration:none;display:flex}.student-exam:hover{background:var(--paper-sunken);color:var(--ink)}.student-exam-name{flex-grow:1}.student-exam-chevron{color:var(--ink-subtle)}.student-legend{gap:var(--space-4);font:var(--type-small);color:var(--ink-muted);margin-top:calc(-1 * var(--space-2));flex-wrap:wrap;display:flex}.student-legend span{align-items:center;gap:6px;display:inline-flex}.student-recent h2{padding:14px var(--space-4);font:var(--type-heading);margin:0}.student-recent a{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:var(--stroke-hairline) solid var(--line);color:var(--ink);align-items:center;text-decoration:none;display:flex}.student-recent a:hover{background:var(--paper-sunken);color:var(--ink)}.student-recent-name{flex-grow:1}.student-recent-name strong{font-weight:550}.student-recent .mono{letter-spacing:-.02em;font-size:28px;line-height:32px}.student-recent .mono span{color:var(--ink-subtle);letter-spacing:0;font-size:14px}.student-withdrawn{gap:var(--space-1);font:var(--type-small);color:var(--ink-muted);flex-direction:column;display:flex}.student-withdrawn p{margin:0}.tag-updated{flex:none}.results-regrade{padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink-muted);white-space:pre-line;flex-direction:column;gap:6px;font-size:12.5px;line-height:18px;display:flex}.results-regrade-tag{align-self:flex-start;align-items:center;gap:var(--space-1);display:inline-flex}.results-regrade-tag.status-pending,.tag-regrade-pending{background:var(--review-tint);color:var(--review)}.results-regrade-tag.status-approved{background:var(--applied-tint);color:var(--applied)}.results-regrade-tag.status-rejected{background:var(--paper-sunken);color:var(--ink-muted)}.results-regrade-open{align-self:flex-start}.results-regrade-form{gap:var(--space-2);padding:var(--space-3);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink-muted);flex-direction:column;font-size:12.5px;display:flex}.results-regrade-form textarea{font:inherit;padding:var(--space-2) 10px;border:1px solid var(--line-control);border-radius:var(--radius-sm);background:var(--paper-raised);color:var(--ink);resize:vertical;font-size:14px}.results-regrade-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.results-regrade-error{color:var(--conflict);margin:0}.results-regrade-note{font:var(--type-small);color:var(--ink-subtle);margin:0}.student-regrades{align-self:flex-start}.regrade-banner{align-items:center;gap:var(--space-3);padding:10px var(--space-6);background:var(--accent-tint);border-bottom:var(--stroke-hairline) solid var(--line);flex-wrap:wrap;display:flex}.regrade-banner strong{font-weight:550}.regrade-banner-body{color:var(--ink-muted)}.regrade-shell{flex-wrap:wrap;align-items:flex-start;max-width:1440px;margin:0 auto;display:flex}.regrade-list{padding:var(--space-4);gap:var(--space-1);flex-direction:column;flex:300px;display:flex}.regrade-list-head{padding:0 12px 12px}.regrade-exam{font-size:17px;font-weight:600;line-height:24px}.regrade-list-label{padding:0 12px var(--space-2);margin:0}.regrade-resolved-label{padding-top:var(--space-4)}.regrade-none{margin:0;padding:0 12px}.regrade-req{border-radius:var(--radius-sm);color:var(--ink);flex-direction:column;gap:2px;padding:10px 12px;text-decoration:none;display:flex}.regrade-req:hover{background:var(--paper-sunken)}.regrade-req[aria-current=true]{background:var(--accent-tint)}.regrade-req-top{align-items:center;gap:var(--space-2);display:flex}.regrade-req-name{flex-grow:1;font-weight:550}.regrade-req-q{font:var(--type-small);font-family:var(--font-mono,"Geist Mono", ui-monospace, monospace)}.regrade-tag-approved{background:var(--applied-tint);color:var(--applied)}.regrade-tag-rejected,.regrade-tag-closed{background:var(--paper-sunken);color:var(--ink-muted)}.regrade-tag-pending{background:var(--review-tint);color:var(--review)}.regrade-main{min-width:0;padding:var(--space-4) var(--space-6) 32px;border-left:var(--stroke-hairline) solid var(--line);flex:999 560px;align-self:stretch}.regrade-main>.empty{margin-top:var(--space-4)}.regrade-empty-mark{border:1.5px dashed var(--line-strong);border-radius:50%;width:28px;height:28px;display:block}.regrade-review{gap:var(--space-4);flex-direction:column;display:flex}.regrade-review-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.regrade-review-head .page-title{margin:2px 0 0}.regrade-score{text-align:right}.regrade-score-value{letter-spacing:-.02em;font-size:28px;font-weight:500;line-height:32px}.regrade-score-value .help{letter-spacing:0;font-size:14px}.regrade-reason{padding:12px var(--space-4);background:var(--paper-sunken);border-radius:var(--radius-sm);margin:0}.regrade-reason p{margin:var(--space-1) 0 0;white-space:pre-wrap}.regrade-columns{gap:var(--space-4);flex-wrap:wrap;align-items:flex-start;display:flex}.regrade-answer,.regrade-rubric{gap:var(--space-2);flex-direction:column;flex:320px;display:flex}.regrade-image{min-height:150px;padding:var(--space-4);border:1.5px solid var(--group-e);background:#fff;border-radius:2px;margin-top:22px;position:relative}.regrade-image img{max-width:100%;display:block}.regrade-group-tag{background:var(--ink-muted);color:#fff;border-radius:2px 2px 0 0;align-items:center;height:18px;padding:0 6px;font-size:11px;font-weight:600;display:flex;position:absolute;top:-20px;left:-1.5px}.regrade-shares{background:var(--paper-raised);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);font:var(--type-small);color:var(--ink-muted);align-items:flex-start;gap:12px;padding:12px;display:flex}.regrade-shares strong{color:var(--ink);font-size:14px;font-weight:550}.regrade-h2{margin:0;font-size:15px;font-weight:600;line-height:22px}.regrade-rub{width:100%;font:inherit;text-align:left;color:var(--ink-muted);border:var(--stroke-hairline) solid var(--line);border-radius:var(--radius-sm);background:0 0;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}button.regrade-rub{cursor:pointer}.regrade-rub[data-on=true]{color:var(--ink);background:var(--accent-tint);border-color:var(--accent)}.regrade-rub-mark{color:var(--line-strong)}.regrade-rub[data-on=true] .regrade-rub-mark{color:var(--accent)}.regrade-new-score{font:var(--type-small);color:var(--ink-muted);margin:0}.regrade-feedback{padding:var(--space-2) 12px;background:var(--paper-sunken);border-radius:var(--radius-sm);font:var(--type-small);white-space:pre-wrap}.regrade-history-h{margin:var(--space-2) 0 0}.regrade-history{font:var(--type-small);color:var(--ink-muted);margin:0;padding:0;list-style:none}.regrade-history li{padding:var(--space-2) 0;border-top:var(--stroke-hairline) solid var(--line)}.regrade-history li:last-child{border-bottom:var(--stroke-hairline) solid var(--line)}.regrade-review textarea.input{resize:vertical;height:auto;padding:8px 10px}.regrade-reply{font-weight:550}.regrade-reply textarea{font-weight:400}.regrade-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.regrade-answered{gap:var(--space-2);flex-direction:column;display:flex}.regrade-answered-head{align-items:center;gap:var(--space-2);display:flex}
