:root{color:#2b4148;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--display:"Avenir Next", "Trebuchet MS", Arial, sans-serif;background:#f4f3ee;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{min-width:320px;min-height:100vh;margin:0}body,button,input,select,textarea{font-family:inherit}button,select{cursor:pointer}button:disabled,select:disabled{cursor:not-allowed}a{color:inherit}::selection{color:#fff;background:#28766d}:root{--fg-navy-950:#09242d;--fg-navy-900:#0d2d37;--fg-navy-850:#123640;--fg-navy-800:#173e48;--fg-ink:#18353e;--fg-ink-soft:#4f656c;--fg-muted:#78888c;--fg-teal-800:#155a56;--fg-teal-700:#1d6c65;--fg-teal-600:#2b7f76;--fg-teal-100:#dceee9;--fg-teal-50:#edf7f3;--fg-amber-700:#9b651d;--fg-amber-500:#e5b45e;--fg-amber-200:#f0d8a9;--fg-amber-100:#f7ead0;--fg-blue-100:#e6eef7;--fg-blue-700:#436b95;--fg-purple-100:#eee8f4;--fg-purple-700:#735989;--fg-red-100:#f9e5df;--fg-red-700:#a3473b;--fg-green-100:#dff1e8;--fg-green-700:#2d775c;--fg-paper:#fffdfa;--fg-paper-deep:#faf8f2;--fg-canvas:#f2f1eb;--fg-line:#dce2df;--fg-line-strong:#cbd5d1;--fg-white:#fff;--fg-shadow-sm:0 6px 20px #152d340f;--fg-shadow-md:0 18px 50px #122b3217;--fg-shadow-lg:0 28px 80px #061d2438;--fg-radius-sm:9px;--fg-radius-md:14px;--fg-radius-lg:20px;--fg-card-gap:20px;--fg-row-gap:12px;--fg-sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fg-display:var(--display,"Avenir Next", "Trebuchet MS", Arial, sans-serif);--fg-text-xs:12px;--fg-text-sm:14px;--fg-text-md:16px;--fg-text-lg:18px;--fg-text-xl:22px;--fg-text-2xl:28px;--fg-text-3xl:36px;--fg-text-hero:48px;--fg-scrollbar-size:10px;--fg-scrollbar-track:transparent;--fg-scrollbar-thumb:#2b7f76;--fg-scrollbar-thumb-hover:#1d6c65;--fg-scrollbar-thumb-active:#155a56}:root:has(.portal-shell.role-student){--fg-scrollbar-thumb:#2d86b2;--fg-scrollbar-thumb-hover:#1b719e;--fg-scrollbar-thumb-active:#145f8b}:root:has(.portal-shell.role-teacher){--fg-scrollbar-thumb:#b97926;--fg-scrollbar-thumb-hover:#a36518;--fg-scrollbar-thumb-active:#895412}:root:has(.portal-shell.role-admin){--fg-scrollbar-thumb:#8560aa;--fg-scrollbar-thumb-hover:#704c98;--fg-scrollbar-thumb-active:#5c3e83}body{color:var(--fg-ink);background:var(--fg-canvas);font-size:var(--fg-text-md)}*{scrollbar-color:var(--fg-scrollbar-thumb) var(--fg-scrollbar-track);scrollbar-width:thin}::-webkit-scrollbar{width:var(--fg-scrollbar-size);height:var(--fg-scrollbar-size)}::-webkit-scrollbar-track{background:var(--fg-scrollbar-track)}::-webkit-scrollbar-thumb{background-color:var(--fg-scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;min-width:34px;min-height:34px}::-webkit-scrollbar-thumb:hover{background-color:var(--fg-scrollbar-thumb-hover)}::-webkit-scrollbar-thumb:active{background-color:var(--fg-scrollbar-thumb-active)}::-webkit-scrollbar-corner{background:var(--fg-scrollbar-track)}@media (forced-colors:active){*{scrollbar-color:auto}::-webkit-scrollbar-track{background:canvas}::-webkit-scrollbar-corner{background:canvas}::-webkit-scrollbar-thumb{background-color:buttontext;border-color:canvas}::-webkit-scrollbar-thumb:hover{background-color:buttontext;border-color:canvas}::-webkit-scrollbar-thumb:active{background-color:buttontext;border-color:canvas}}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #e5b45e9e}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.58}.auth-layout *,.portal-shell *{box-sizing:border-box}.auth-layout h1,.auth-layout h2,.auth-layout h3,.auth-layout p,.portal-shell h1,.portal-shell h2,.portal-shell h3,.portal-shell p,.portal-shell dl,.portal-shell dd{margin-top:0}.brand-mark{width:40px;height:40px;color:var(--fg-navy-950);background:var(--fg-amber-500);font-family:var(--fg-display);font-size:var(--fg-text-xl);border:1px solid #ffffff47;border-radius:11px 3px;flex:none;place-items:center;font-weight:900;line-height:1;display:inline-grid;box-shadow:inset 0 1px #ffffff61}.eyebrow{color:var(--fg-amber-700);font-size:var(--fg-text-sm);letter-spacing:.17em;text-transform:uppercase;margin-bottom:8px;font-weight:850;line-height:1.3}.eyebrow.light{color:#f0c879}.button{border-radius:var(--fg-radius-sm);min-height:44px;font-size:var(--fg-text-md);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:12px;padding:0 17px;font-weight:800;line-height:1;text-decoration:none;transition:transform .15s,color .15s,border-color .15s,background .15s,box-shadow .15s;display:inline-flex}.button:not(:disabled):hover{transform:translateY(-1px)}.button.primary{color:var(--fg-white);border-color:var(--fg-teal-800);background:var(--fg-teal-800);box-shadow:0 8px 20px #155a562e}.button.primary:not(:disabled):hover{background:#0d4a47;border-color:#0d4a47;box-shadow:0 10px 25px #155a563d}.button.secondary{color:var(--fg-teal-800);background:var(--fg-white);border-color:#b8cfca}.button.secondary:not(:disabled):hover{border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.button.danger{color:var(--fg-red-700);background:#fff8f6;border-color:#e8c2ba}.button.wide{justify-content:space-between;width:100%}.text-button{min-height:34px;color:var(--fg-teal-700);font-size:var(--fg-text-sm);cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.text-button:hover{color:var(--fg-navy-900)}.notice{border-radius:var(--fg-radius-sm);font-size:var(--fg-text-md);border:1px solid;align-items:flex-start;gap:9px;padding:12px 14px;font-weight:650;line-height:1.45;display:flex}.notice.error{color:#8f382f;background:#fff4f1;border-color:#efc5bc}.notice.success{color:#1d644b;background:#eff9f4;border-color:#b9decf}.page-notice{margin-bottom:22px}.form-heading{margin-bottom:24px}.form-heading h2{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-2xl);letter-spacing:-.035em;margin-bottom:7px;line-height:1.08}.form-heading p{color:var(--fg-muted);font-size:var(--fg-text-md);margin-bottom:0;line-height:1.55}.form-grid{gap:15px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-field{min-width:0;color:var(--fg-ink-soft);gap:7px;display:grid}.form-field>span,.form-field>label,.form-field>legend{color:#385159;font-size:var(--fg-text-sm);letter-spacing:.01em;font-weight:800}.form-field>small{color:var(--fg-muted);font-size:var(--fg-text-sm);line-height:1.45}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--fg-line-strong);border-radius:var(--fg-radius-sm);width:100%;min-width:0;height:45px;color:var(--fg-ink);background-color:var(--fg-white);font-size:var(--fg-text-md);outline:none;padding:0 13px;transition:border-color .15s,box-shadow .15s,background .15s}.form-field select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#6f8084 50%),linear-gradient(135deg,#6f8084 50%,#0000 50%);background-position:calc(100% - 17px) 19px,calc(100% - 12px) 19px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:36px}.form-field textarea{resize:vertical;min-height:110px;padding-top:11px;padding-bottom:11px}.themed-file-input{border:1px solid var(--fg-line-strong);border-radius:var(--fg-radius-sm);width:100%;min-width:0;min-height:46px;color:var(--fg-ink-soft);background:var(--fg-white);font:700 var(--fg-text-sm)/1.35 var(--fg-display);outline:none;padding:0 10px 0 0;overflow:hidden}.themed-file-input::file-selector-button{border:0;border-right:1px solid var(--fg-teal-600);min-height:44px;color:var(--fg-teal-800);background:var(--fg-teal-100);font:850 var(--fg-text-sm)/1 var(--fg-display);cursor:pointer;margin-right:11px;padding:0 15px;transition:color .15s,background .15s}.themed-file-input::file-selector-button{border:0;border-right:1px solid var(--fg-teal-600);min-height:44px;color:var(--fg-teal-800);background:var(--fg-teal-100);font:850 var(--fg-text-sm)/1 var(--fg-display);cursor:pointer;margin-right:11px;padding:0 15px;transition:color .15s,background .15s}.themed-file-input:hover::file-selector-button{color:var(--fg-white);background:var(--fg-teal-700)}.themed-file-input:hover::file-selector-button{color:var(--fg-white);background:var(--fg-teal-700)}.themed-file-input:focus-visible{border-color:var(--fg-teal-600);box-shadow:0 0 0 3px var(--fg-teal-100)}.themed-file-input:disabled{opacity:.58;cursor:not-allowed}.themed-file-input:disabled::file-selector-button{cursor:not-allowed}.themed-file-input:disabled::file-selector-button{cursor:not-allowed}.form-field input::placeholder,.form-field textarea::placeholder{color:#9aa7a9}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--fg-teal-600);box-shadow:0 0 0 3px #2b7f761f}.form-field input[readonly]{color:#64777c;background:#f4f6f3;border-color:#dde3e0}.themed-select{align-content:start;position:relative}.themed-select-trigger{border:1px solid var(--fg-line-strong);border-radius:var(--fg-radius-sm);width:100%;min-width:0;min-height:45px;color:var(--fg-ink);background:var(--fg-white);font-size:var(--fg-text-md);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:0 13px;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.themed-select-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.themed-select-trigger>i{border-right:2px solid var(--fg-muted);border-bottom:2px solid var(--fg-muted);flex:none;width:8px;height:8px;transition:transform .15s;transform:translateY(-2px)rotate(45deg)}.themed-select:has(.themed-select-menu) .themed-select-trigger{border-color:var(--fg-teal-600);box-shadow:0 0 0 3px color-mix(in srgb, var(--fg-teal-600) 14%, transparent)}.themed-select:has(.themed-select-menu) .themed-select-trigger>i{transform:translateY(2px)rotate(225deg)}.themed-select-menu{z-index:120;border:1px solid var(--fg-line-strong);background:var(--fg-paper);border-radius:11px;gap:3px;width:100%;max-height:260px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;overflow:auto;box-shadow:0 18px 45px #09242d2e}.themed-select-menu>button{min-width:0;min-height:40px;color:var(--fg-ink);font-size:var(--fg-text-md);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.themed-select-menu>button:hover,.themed-select-menu>button:focus-visible{background:var(--fg-teal-50);outline:0}.themed-select-menu>button.selected{color:var(--fg-teal-800);background:var(--fg-teal-100);font-weight:800}.themed-select-menu>button span{overflow-wrap:anywhere;min-width:0}.themed-select-menu>button b{color:var(--fg-teal-700)}.themed-select.compact{gap:4px;width:auto;min-width:190px}.themed-select.compact>span{font-size:var(--fg-text-sm)}.themed-select.compact .themed-select-trigger{min-height:36px;font-size:var(--fg-text-sm)}.form-field.span-two{grid-column:span 2}.auth-action-layout{background:radial-gradient(circle at 14% 10%, #e5b45e2e, transparent 34%), linear-gradient(145deg, var(--fg-navy-950), var(--fg-navy-850));place-items:center;min-height:100vh;padding:28px;display:grid}.auth-action-card{border-radius:var(--fg-radius-lg);width:min(100%,560px);box-shadow:var(--fg-shadow-lg);background:#fffdfafc;border:1px solid #ffffff21;padding:clamp(30px,6vw,50px)}.auth-action-brand{color:var(--fg-navy-950);align-items:center;gap:12px;margin-bottom:42px;text-decoration:none;display:inline-flex}.auth-action-brand>span{background:var(--fg-amber-500);width:44px;height:44px;font-family:var(--fg-display);border-radius:13px;place-items:center;font-size:25px;font-weight:900;display:grid}.auth-action-brand>strong{font-family:var(--fg-display);font-size:var(--fg-text-xl)}.auth-action-card h1{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-3xl);margin:8px 0 14px;line-height:1.12}.auth-action-card>p:not(.eyebrow),.auth-action-form>p{color:var(--fg-ink-soft);line-height:1.65}.auth-action-card>.button{margin-top:12px;text-decoration:none;display:inline-flex}.auth-action-form{gap:18px;margin-top:22px;display:grid}.auth-action-form .button{justify-self:start}.auth-action-options{flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px;display:flex}.auth-action-options .text-button,.auth-action-form>.text-button{justify-self:start}.auth-action-card h1:focus{outline:none}.auth-action-return{margin:24px 0 0 12px;display:inline-flex}.auth-resend-controls{gap:14px;margin-top:22px;display:grid}.auth-resend-controls>.button{justify-self:start}.turnstile-challenge{border:1px solid var(--fg-line);border-radius:var(--fg-radius-sm);min-width:0;color:var(--fg-ink-soft);background:var(--fg-paper-deep);gap:9px;padding:12px 13px;display:grid}.turnstile-challenge.error{background:#fff4f1;border-color:#efc5bc}.turnstile-challenge__heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.turnstile-challenge__heading strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.turnstile-challenge__heading span,.turnstile-challenge>small{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.45}.turnstile-challenge.error>small{color:var(--fg-red-700)}.turnstile-challenge__widget{width:100%;min-width:0;min-height:65px;overflow:hidden}.auth-action-success{width:64px;height:64px;color:var(--fg-green-700);background:var(--fg-green-100);border-radius:50%;place-items:center;margin:28px 0 18px;font-size:30px;font-weight:900;display:grid}.auth-code-input{letter-spacing:8px;text-align:center;max-width:230px;font-weight:850;font-size:26px!important}.cloud-auth-layout .auth-brand>span:last-child{display:block}.cloud-auth-card{width:min(100%,680px)}.cloud-onboarding-card{width:min(100%,760px)}.cloud-forgot-link{justify-self:center;align-items:center;text-decoration:none;display:inline-flex}.cloud-inline-loading{border-radius:inherit;background:0 0;min-height:430px}.cloud-onboarding-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.cloud-onboarding-heading .form-heading p:last-child{overflow-wrap:anywhere}.cloud-onboarding-section{gap:18px;display:grid}.cloud-verification-notice strong{color:var(--fg-ink)}.cloud-verification-steps{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);color:var(--fg-ink-soft);background:var(--fg-paper-deep);gap:10px;margin:22px 0;padding:18px 20px 18px 42px;line-height:1.5;display:grid}.cloud-account-status>.button{margin-top:22px}.cloud-teacher-code{border-radius:var(--fg-radius-md);color:var(--fg-amber-700);background:var(--fg-amber-100);border:1px solid #f0d8a9;justify-items:start;gap:6px;margin:24px 0;padding:18px 20px;display:grid}.cloud-teacher-code>span,.cloud-teacher-code>small{font-size:var(--fg-text-sm)}.cloud-teacher-code>strong{color:var(--fg-navy-950);font-family:var(--fg-display);font-size:var(--fg-text-2xl);letter-spacing:.08em}.auth-layout{background:var(--fg-paper-deep);grid-template-columns:minmax(380px,.9fr) minmax(520px,1.1fr);min-height:100vh;display:grid;overflow:hidden}.auth-story{color:#f6f8f4;background:radial-gradient(circle at 78% 20%, #468c8047, transparent 34%), linear-gradient(145deg, var(--fg-navy-950), var(--fg-navy-850));flex-direction:column;min-height:100vh;padding:clamp(34px,5vw,68px);display:flex;position:relative;overflow:hidden}.auth-story:before,.auth-story:after{content:"";pointer-events:none;position:absolute}.auth-story:before{border:1px solid #ffffff14;border-radius:50%;width:340px;height:340px;bottom:11%;right:-115px;box-shadow:0 0 0 55px #ffffff06,0 0 0 110px #ffffff05}.auth-story:after{opacity:.16;background-image:radial-gradient(#ffffff40 .7px,#0000 .7px);background-size:18px 18px;inset:0;-webkit-mask-image:linear-gradient(#0000 25%,#000 100%);mask-image:linear-gradient(#0000 25%,#000 100%)}.auth-story>*{z-index:1;position:relative}.auth-brand{color:inherit;text-align:left;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.auth-brand>span:last-child{line-height:1.05;display:grid}.auth-brand strong{font-family:var(--fg-display);font-size:var(--fg-text-xl);letter-spacing:-.025em}.auth-brand small{color:#9fb6bb;font-size:var(--fg-text-xs);letter-spacing:.13em;text-transform:uppercase;margin-top:5px;font-weight:750}.story-copy{max-width:590px;margin:auto 0 44px}.story-copy h1{color:#fffef9;font-family:var(--fg-display);font-size:var(--fg-text-hero);letter-spacing:-.055em;margin-bottom:22px;line-height:.97}.story-copy>p:last-child{color:#bfd0d3;max-width:535px;font-size:var(--fg-text-md);margin-bottom:0;line-height:1.65}.channel-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;max-width:590px;margin-bottom:34px;display:grid}.channel-list article{border-radius:var(--fg-radius-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff0b;border:1px solid #ffffff1a;align-items:flex-start;gap:13px;padding:17px;display:flex}.channel-list article>span{color:#edc477;font-family:var(--fg-display);font-size:var(--fg-text-sm);font-weight:850}.channel-list article div{gap:5px;display:grid}.channel-list strong{color:#f5f7f2;font-size:var(--fg-text-sm)}.channel-list small{color:#aabfc4;font-size:var(--fg-text-sm);line-height:1.5}.local-note{color:#9db3b8;font-size:var(--fg-text-sm);letter-spacing:.035em;align-items:center;gap:9px;margin-bottom:0;font-weight:750;display:flex}.local-note>span,.local-system>span{background:#58bd97;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 4px #58bd9721}.auth-form-side{background:linear-gradient(#f6f4edf0, #f6f4edf0), radial-gradient(circle at 10% 12%, var(--fg-amber-100), transparent 32%);place-items:center;min-width:0;padding:clamp(28px,5vw,72px);display:grid;overflow:auto}.auth-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-lg);width:min(100%,610px);box-shadow:var(--fg-shadow-md);background:#fffdfafa;overflow:hidden}.auth-tabs{border-bottom:1px solid var(--fg-line);background:#f2f3ef;grid-template-columns:repeat(2,1fr);padding:7px;display:grid}.auth-tabs button{color:#748388;min-height:43px;font-size:var(--fg-text-sm);cursor:pointer;background:0 0;border:0;border-radius:9px;font-weight:850;position:relative}.auth-tabs button.active{color:var(--fg-teal-800);background:var(--fg-white);box-shadow:0 2px 8px #1b303614}.auth-form{gap:16px;padding:clamp(27px,4vw,42px);display:grid}.auth-form.registration-form{gap:15px}.auth-form .notice{margin-bottom:1px}.conditional-fields{animation:.18s both reveal-fields}@keyframes reveal-fields{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.role-selector{border:0;margin:1px 0;padding:0}.role-selector legend{color:#385159;font-size:var(--fg-text-sm);margin-bottom:8px;font-weight:800}.role-selector>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.role-selector button{border:1px solid var(--fg-line-strong);min-height:72px;color:var(--fg-ink);background:var(--fg-white);text-align:left;cursor:pointer;border-radius:11px;grid-template-columns:34px 1fr;align-items:center;gap:11px;padding:12px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid;position:relative}.role-selector button:hover,.role-selector button.selected{border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.role-selector button.selected{box-shadow:0 0 0 2px #2b7f7614}.role-symbol{width:34px;height:34px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-family:var(--fg-display);font-size:var(--fg-text-md);border-radius:9px;place-items:center;font-weight:900;display:grid}.role-selector button>span:nth-child(2){gap:4px;min-width:0;display:grid}.role-selector strong{font-size:var(--fg-text-sm)}.role-selector small{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.35}.teacher-subject-selector{border:0;gap:9px;min-width:0;margin:1px 0;padding:0;display:grid}.teacher-subject-selector legend{color:#385159;font-size:var(--fg-text-sm);margin-bottom:4px;font-weight:800}.teacher-subject-selector>p{color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0}.subject-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.subject-choice-card{border:1px solid var(--fg-line-strong);min-width:0;min-height:58px;color:var(--fg-ink);background:var(--fg-white);cursor:pointer;border-radius:11px;grid-template-columns:31px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:11px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid;position:relative}.subject-choice-card:hover,.subject-choice-card.selected{border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.subject-choice-card:focus-within{outline:2px solid var(--fg-teal-600);outline-offset:2px}.subject-choice-card input{opacity:0;width:1px;height:1px;position:absolute}.subject-choice-card>span{width:31px;height:31px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-family:var(--fg-display);border-radius:8px;place-items:center;font-weight:900;display:grid}.subject-choice-card strong{min-width:0;font-size:var(--fg-text-sm);line-height:1.3}.subject-choice-card i{color:var(--fg-teal-700);font-size:var(--fg-text-md);font-style:normal;font-weight:900}.subject-selection-status{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.4}.teacher-class-selection-list{gap:12px;margin-top:4px;display:grid}.teacher-class-selection{border:1px solid var(--fg-line);background:#fafbf9;border-radius:12px;gap:11px;min-width:0;margin:0;padding:14px;display:grid}.teacher-class-selection legend{justify-content:space-between;align-items:baseline;gap:12px;width:100%;padding:0 2px;display:flex}.teacher-class-selection legend span{color:var(--fg-ink);font-size:var(--fg-text-sm);font-weight:850}.teacher-class-selection legend small{color:var(--fg-muted);font-size:var(--fg-text-xs);font-weight:700}.teacher-group-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;display:grid}.teacher-group-choice{border:1px solid var(--fg-line-strong);min-width:0;min-height:42px;color:var(--fg-ink-soft);background:var(--fg-white);font-size:var(--fg-text-sm);cursor:pointer;border-radius:9px;grid-template-columns:minmax(0,1fr) 12px;place-items:center;gap:3px;padding:7px 8px;font-weight:800;display:grid;position:relative}.teacher-group-choice:hover,.teacher-group-choice.selected{border-color:var(--fg-teal-600);color:var(--fg-teal-800);background:var(--fg-teal-50)}.teacher-group-choice:focus-within{outline:2px solid var(--fg-teal-600);outline-offset:2px}.teacher-group-choice input{opacity:0;width:1px;height:1px;position:absolute}.teacher-group-choice i{color:var(--fg-teal-700);font-style:normal}.demo-divider{color:#8a9799;font-size:var(--fg-text-xs);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:13px;margin:4px 0 0;font-weight:800;display:flex}.demo-divider:before,.demo-divider:after{content:"";background:var(--fg-line);flex:1;height:1px}.demo-accounts{gap:7px;display:grid}.demo-account-button{border:1px solid var(--fg-line);border-radius:var(--fg-radius-sm);min-height:53px;color:var(--fg-ink);text-align:left;cursor:pointer;background:#fbfcf9;grid-template-columns:9px 1fr auto;align-items:center;gap:11px;padding:8px 12px;transition:border-color .15s,background .15s;display:grid}.demo-account-button:not(:disabled):hover,.demo-account-button[aria-expanded=true]{background:var(--fg-teal-50);border-color:#b6cbc6}.demo-account-button>span:nth-child(2){gap:3px;display:grid}.demo-accounts strong{font-size:var(--fg-text-sm)}.demo-accounts small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.demo-account-button>span:last-child{color:#849397;font-size:var(--fg-text-lg)}.demo-student-picker-backdrop{z-index:1200}.confirmation-dialog.demo-student-picker-dialog{flex-direction:column;width:min(100%,880px);max-height:calc(100dvh - 40px);padding:0;display:flex;overflow:hidden}.demo-student-picker-heading{border-bottom:1px solid var(--fg-line);background:linear-gradient(135deg, var(--fg-paper), var(--fg-teal-50));justify-content:space-between;align-items:flex-start;gap:18px;padding:27px 68px 20px 27px;display:flex}.demo-student-picker-dialog .demo-student-picker-heading .eyebrow{font-size:var(--fg-text-sm);margin-bottom:6px;line-height:1.3}.demo-student-picker-dialog .demo-student-picker-heading h2{margin-bottom:7px}.demo-student-picker-heading p:last-child{max-width:620px;font-size:var(--fg-text-sm);margin:0;line-height:1.5}.demo-student-picker-heading>span{color:var(--fg-teal-800);background:var(--fg-teal-100);font-size:var(--fg-text-xs);border-radius:999px;flex:none;margin-top:3px;padding:6px 9px;font-weight:850}.demo-student-picker-notice{justify-content:space-between;align-items:center;margin:16px 24px 0}.demo-student-picker-notice .text-button{flex:none}.demo-student-picker-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding:18px 24px 12px;display:grid}.demo-student-random{white-space:nowrap;min-height:43px}.demo-student-group-filters{scrollbar-width:thin;gap:7px;padding:0 24px 13px;display:flex;overflow-x:auto}.demo-student-group-filters>button{border:1px solid var(--fg-line);min-height:38px;color:var(--fg-ink-soft);background:var(--fg-white);font-size:var(--fg-text-sm);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:7px;padding:0 11px;font-weight:800;display:inline-flex}.demo-student-group-filters>button:hover,.demo-student-group-filters>button.active{color:var(--fg-teal-800);border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.demo-student-group-filters>button>span{min-width:20px;height:20px;color:var(--fg-muted);background:var(--fg-paper-deep);font-size:var(--fg-text-xs);border-radius:999px;place-items:center;padding-inline:5px;display:grid}.confirmation-dialog>.demo-student-picker-results:last-child{overscroll-behavior:contain;flex:420px;grid-template-columns:repeat(2,minmax(0,1fr));place-content:start stretch;gap:8px;min-height:0;padding:0 24px 24px;display:grid;overflow-y:auto}.demo-student-option{border:1px solid var(--fg-line);min-width:0;min-height:68px;color:var(--fg-ink);background:var(--fg-white);text-align:left;cursor:pointer;border-radius:11px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;transition:border-color .14s,background .14s,transform .14s;display:grid}.demo-student-option:not(:disabled):hover,.demo-student-option:not(:disabled):focus-visible{border-color:var(--fg-teal-600);background:var(--fg-teal-50);transform:translateY(-1px)}.demo-student-option.signing-in{border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.demo-student-avatar{width:40px;height:40px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-size:var(--fg-text-sm);border-radius:11px;place-items:center;font-weight:900;display:grid}.demo-student-identity{gap:4px;min-width:0;display:grid}.demo-student-identity strong{font-size:var(--fg-text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.demo-student-identity small{min-width:0;color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.demo-student-group{justify-items:end;gap:2px;display:grid}.demo-student-group small{color:var(--fg-muted);text-transform:uppercase;font-size:10px;font-weight:800}.demo-student-group strong{color:var(--fg-teal-800);font-size:var(--fg-text-sm)}.demo-student-option-action{color:var(--fg-teal-700);font-size:var(--fg-text-xs);font-weight:850;display:none}.demo-student-option.signing-in .demo-student-group{display:none}.demo-student-option.signing-in .demo-student-option-action{display:block}.demo-student-picker-state{min-height:150px;color:var(--fg-muted);text-align:center;grid-column:1/-1;place-content:center;justify-items:center;gap:7px;padding:24px;display:grid}.demo-student-picker-state strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.demo-student-picker-dialog .demo-student-picker-state p{max-width:430px;font-size:var(--fg-text-sm);margin:0;line-height:1.5}.loading-ring{border:3px solid var(--fg-teal-100);border-top-color:var(--fg-teal-700);border-radius:50%;width:27px;height:27px;animation:.7s linear infinite spin}.role-dot{background:var(--fg-teal-600);border-radius:50%;width:8px;height:8px}.role-dot.teacher{background:var(--fg-amber-500)}.role-dot.it-admin{background:var(--fg-purple-700)}.portal-shell{--portal-header-height:72px;--sidebar-expanded-width:268px;--sidebar-expanded-padding:18px;--sidebar-collapsed-width:78px;--sidebar-track-width:var(--sidebar-expanded-width);grid-template-columns:var(--sidebar-track-width) minmax(0, 1fr);min-height:100vh;color:var(--fg-ink);background:var(--fg-canvas);transition:grid-template-columns .18s;display:grid}.portal-shell.sidebar-is-collapsed{--sidebar-track-width:var(--sidebar-collapsed-width)}.portal-shell.role-student{--fg-navy-950:#102f47;--fg-navy-900:#173e5b;--fg-navy-850:#1c4b6d;--fg-teal-800:#145f8b;--fg-teal-700:#1b719e;--fg-teal-600:#2d86b2;--fg-teal-100:#dcedf7;--fg-teal-50:#eef7fc;--fg-canvas:#f1f4f6}.portal-shell.role-teacher{--fg-navy-950:#2e281e;--fg-navy-900:#3b3122;--fg-navy-850:#493b28;--fg-teal-800:#895412;--fg-teal-700:#a36518;--fg-teal-600:#b97926;--fg-teal-100:#f4e5ca;--fg-teal-50:#fbf5e9;--fg-canvas:#f4f1eb}.portal-shell.role-admin{--fg-navy-950:#281d3b;--fg-navy-900:#34254d;--fg-navy-850:#42305f;--fg-teal-800:#5c3e83;--fg-teal-700:#704c98;--fg-teal-600:#8560aa;--fg-teal-100:#e9e0f3;--fg-teal-50:#f6f1fa;--fg-canvas:#f3f0f5}.portal-brand-lockup{height:40px;color:var(--fg-ink);cursor:pointer;text-align:left;background:0 0;border:0;grid-area:1/2;justify-self:center;align-items:center;gap:10px;padding:0;display:inline-flex}.portal-brand-lockup>strong{color:inherit;font-family:var(--fg-display);font-size:var(--fg-text-xl);letter-spacing:-.025em;white-space:nowrap;font-weight:900;line-height:1;transition:color .15s}.portal-brand-lockup:hover>strong{color:var(--fg-teal-800)}.sidebar{z-index:20;height:100svh;width:var(--sidebar-expanded-width);box-sizing:border-box;padding:25px var(--sidebar-expanded-padding) 19px;color:#eef4f2;background:radial-gradient(circle at 0 100%, #2c73693b, transparent 36%), var(--fg-navy-950);flex-direction:column;transition:width .18s,padding .18s,box-shadow .18s;display:flex;position:sticky;top:0;overflow:hidden auto;box-shadow:8px 0 35px #0a212812}.sidebar-header{border-bottom:1px solid #ffffff17;justify-content:flex-end;align-items:center;gap:7px;min-height:49px;padding-bottom:18px;display:flex}.sidebar-collapse-toggle{z-index:31;top:16px;left:calc((var(--sidebar-collapsed-width) - 40px) / 2);color:#94b4b4;cursor:pointer;background:0 0;border:0;place-items:center;width:40px;height:40px;padding:0;display:grid;position:fixed}.sidebar-collapse-toggle>span{width:24px;height:24px;font-size:var(--fg-text-sm);background:#ffffff0b;border-radius:7px;place-items:center;font-weight:800;line-height:1;transition:color .15s,background .15s;display:grid}.sidebar-collapse-toggle:hover>span,.sidebar-collapse-toggle:focus-visible>span{color:#f1f5f2;background:#ffffff14}.sidebar-copy{opacity:1;white-space:nowrap;max-width:220px;transition:max-width .15s,opacity .12s;overflow:hidden}.topbar-user>span:first-child{gap:4px;min-width:0;display:grid}.topbar-user strong{font-size:var(--fg-text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-avatar{color:#fff;background:var(--fg-teal-600);width:37px;height:37px;font-size:var(--fg-text-sm);letter-spacing:.04em;border-radius:11px;flex:none;place-items:center;font-weight:850;display:grid}.workspace-avatar.teacher{color:#533b18;background:var(--fg-amber-500)}.workspace-avatar.admin{background:var(--fg-purple-700)}.sidebar nav{gap:5px;margin-top:18px;display:grid}.sidebar nav>p{color:#718c92;font-size:var(--fg-text-xs);letter-spacing:.17em;text-transform:uppercase;margin:0 10px 7px;font-weight:850}.sidebar nav button{color:#a9bec2;min-height:43px;font-size:var(--fg-text-sm);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;grid-template-columns:27px 1fr auto;align-items:center;gap:8px;padding:0 11px;font-weight:750;transition:color .15s,border-color .15s,background .15s;display:grid;position:relative}.sidebar nav button:hover{color:#f1f5f2;background:#ffffff0d}.sidebar nav button.active{color:#fff;background:#31827638;border-color:#6bb4a629}.sidebar nav button.active:before{content:"";background:var(--fg-amber-500);border-radius:0 3px 3px 0;width:3px;height:20px;position:absolute;left:-8px}.sidebar nav button>small{color:#dce9e6;min-width:20px;height:20px;font-size:var(--fg-text-xs);background:#ffffff1a;border-radius:999px;place-items:center;padding:0 6px;display:grid}.nav-icon{color:#94b4b4;width:27px;height:27px;font-size:var(--fg-text-md);background:#ffffff0b;border-radius:8px;place-items:center;font-weight:700;display:grid}.sidebar nav button.active .nav-icon{color:#f6d28d;background:#ffffff14}.sidebar-footer{gap:12px;margin-top:auto;padding-top:22px;display:grid}.local-system{align-items:center;gap:11px;padding:0 10px;display:flex}.local-system>div{gap:3px;display:grid}.local-system strong{color:#dce8e6;font-size:var(--fg-text-xs)}.local-system small{color:#789399;font-size:var(--fg-text-xs)}.sign-out{color:#9eb4b8;min-height:40px;font-size:var(--fg-text-sm);cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:9px;align-items:center;gap:10px;padding:0 11px;font-weight:750;display:flex}.sign-out:hover{color:#fff;background:#ffffff12;border-color:#ffffff26}@media (width>=861px){.sidebar{overflow:hidden}.sidebar-header{min-height:calc(var(--portal-header-height) - 12px);padding-bottom:0}.sidebar-header,.sidebar-footer{flex:none}.sidebar nav{overscroll-behavior:contain;flex:auto;align-content:start;min-height:0;overflow-y:auto}.sidebar-footer{margin-top:12px}.portal-shell:not(.sidebar-is-collapsed) .sidebar{padding:12px 14px 10px;overflow:hidden}.portal-shell:not(.sidebar-is-collapsed) .sidebar nav{scrollbar-width:none;gap:3px;overflow:hidden}.portal-shell:not(.sidebar-is-collapsed) .sidebar nav::-webkit-scrollbar{display:none}.portal-shell:not(.sidebar-is-collapsed) .sidebar nav>p{margin-bottom:4px}.portal-shell:not(.sidebar-is-collapsed) .sidebar nav button{min-height:35px;font-size:var(--fg-text-sm);grid-template-columns:24px 1fr auto;padding:0 9px}.portal-shell:not(.sidebar-is-collapsed) .nav-icon{width:24px;height:24px;font-size:var(--fg-text-sm);border-radius:7px}.portal-shell:not(.sidebar-is-collapsed) .sidebar nav button>small{min-width:18px;height:18px;padding-inline:5px;font-size:10px}.portal-shell:not(.sidebar-is-collapsed) .sidebar-footer{gap:5px;margin-top:6px;padding-top:6px}.portal-shell:not(.sidebar-is-collapsed) .sign-out{min-height:35px}.portal-shell.sidebar-is-collapsed .sidebar{width:var(--sidebar-collapsed-width);scrollbar-width:none;padding:12px 11px 9px;overflow:visible}.portal-shell.sidebar-is-collapsed .sidebar::-webkit-scrollbar{display:none}.portal-shell.sidebar-is-collapsed .sidebar nav::-webkit-scrollbar{display:none}.portal-shell.sidebar-is-collapsed .sidebar .sidebar-copy{opacity:0;visibility:hidden;pointer-events:none;max-width:0;position:absolute}.portal-shell.sidebar-is-collapsed .sign-out{justify-content:center;padding-inline:0}.portal-shell.sidebar-is-collapsed .sidebar nav{scrollbar-width:none;grid-auto-rows:minmax(0,35px);align-content:stretch;gap:clamp(1px,.3svh,3px);overflow:visible}.portal-shell.sidebar-is-collapsed .sidebar nav button{grid-template-columns:27px;justify-content:center;height:100%;min-height:0;padding-inline:8px}.portal-shell.sidebar-is-collapsed .nav-icon{width:24px;height:24px;font-size:var(--fg-text-sm);border-radius:7px}.portal-shell.sidebar-is-collapsed .sidebar nav button>small{min-width:15px;height:15px;padding-inline:3px;font-size:9px;position:absolute;top:1px;right:0}.portal-shell.sidebar-is-collapsed .sidebar-footer{gap:4px;margin-top:5px;padding-top:5px}.portal-shell.sidebar-is-collapsed .local-system{display:none}.portal-shell.sidebar-is-collapsed .sign-out{min-height:33px;position:relative}.portal-shell.sidebar-is-collapsed .sign-out>span:first-child{place-items:center;width:24px;display:grid}.portal-shell.sidebar-is-collapsed [data-sidebar-tooltip]{position:relative}.portal-shell.sidebar-is-collapsed [data-sidebar-tooltip]:after{content:attr(data-sidebar-tooltip);z-index:90;border:1px solid color-mix(in srgb, var(--fg-teal-600) 48%, white);color:#fff;background:var(--fg-navy-850);width:max-content;max-width:210px;font-size:var(--fg-text-xs);letter-spacing:.01em;text-align:left;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;border-radius:8px;padding:6px 9px;font-weight:800;line-height:1.2;transition:opacity .12s,transform .12s,visibility .12s;position:absolute;top:50%;left:calc(100% + 10px);transform:translate(3px,-50%);box-shadow:0 8px 22px #0512183d}.portal-shell.sidebar-is-collapsed [data-sidebar-tooltip]:hover:after,.portal-shell.sidebar-is-collapsed [data-sidebar-tooltip]:focus-visible:after{opacity:1;visibility:visible;transform:translateY(-50%)}}@media (width>=861px) and (height<=700px){.portal-shell:not(.sidebar-is-collapsed) .local-system{display:none}}.portal-main{min-width:0;container:portal-main/inline-size}.portal-back-row{align-items:center;min-height:34px;margin-bottom:18px;display:flex}.portal-back-row .portal-back-button{min-height:34px;margin:0;padding:5px 2px}.portal-topbar{z-index:15;height:var(--portal-header-height);border-bottom:1px solid var(--fg-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf9eb;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px;padding:0 clamp(25px,3.2vw,52px);display:grid;position:sticky;top:0}.topbar-right{grid-area:1/3;justify-content:flex-end;align-items:center;gap:20px;min-width:0;display:flex}@media (width>=861px){@container portal-main (width<=1160px){.topbar-teacher-code>span{display:none}}@container portal-main (width<=1000px){.role-teacher .topbar-user>span:first-child{display:none}}@container portal-main (width<=760px){.topbar-user>span:first-child,.context-pill>small{display:none}}}.mobile-brand,.mobile-navigation{display:none}.context-pill{border:1px solid var(--fg-line);background:#f6f7f3;border-radius:999px;grid-area:1/1;justify-self:start;align-items:center;gap:9px;min-width:0;max-width:100%;margin-right:0;padding:7px 10px;display:flex}.context-pill span{text-overflow:ellipsis;white-space:nowrap;color:#3f595f;min-width:0;font-size:var(--fg-text-xs);font-weight:850;overflow:hidden}.context-pill small{border-left:1px solid var(--fg-line-strong);color:#899699;font-size:var(--fg-text-xs);padding-left:9px}.topbar-teacher-code{color:#665420;min-height:38px;font:inherit;cursor:pointer;background:#fff9e8;border:1px solid #c9b782;border-radius:10px;align-items:center;gap:8px;padding:7px 10px;transition:border-color .15s,background .15s,transform .15s;display:inline-flex}.topbar-teacher-code:hover{background:#fff5d8;border-color:#af9651;transform:translateY(-1px)}.topbar-teacher-code:focus-visible{outline-offset:2px;outline:3px solid #c5952f38}.topbar-teacher-code>span{color:#8b7c53;font-size:var(--fg-text-xs);letter-spacing:.07em;text-transform:uppercase;font-weight:850}.topbar-teacher-code>strong{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:var(--fg-text-sm);letter-spacing:.08em}.topbar-teacher-code>i{color:#9c843e;font-size:var(--fg-text-sm);font-style:normal}.topbar-teacher-code.copied{color:var(--fg-green-700);background:#edf8f2;border-color:#88bea8}.topbar-user{text-align:right;align-items:center;gap:11px;display:flex}.topbar-user small{max-width:220px;color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portal-content{width:min(100%,1480px);margin:0 auto;padding:clamp(29px,4vw,54px) clamp(24px,4vw,58px) 70px}.app-loading{min-height:100vh;color:var(--fg-ink-soft);background:var(--fg-canvas);font-size:var(--fg-text-sm);place-content:center;place-items:center;gap:14px;display:grid}.app-loading>span{border:3px solid #d5ddda;border-top-color:var(--fg-teal-700);border-radius:50%;width:34px;height:34px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.page-heading{margin-bottom:34px}.page-heading h1,.runner-heading h1{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-3xl);letter-spacing:-.05em;margin-bottom:9px;line-height:1}.page-heading>p:last-child,.page-heading>div>p:last-child,.runner-heading>div>p:last-child{color:var(--fg-muted);font-size:var(--fg-text-md);margin-bottom:0;line-height:1.55}.split-heading{justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.split-heading>div:first-child{min-width:0}.section-heading{justify-content:space-between;align-items:flex-end;gap:22px;margin:40px 0 20px;display:flex}.section-heading.compact{align-items:flex-start;margin:0 0 19px}.section-heading h2,.panel-card h2,.scan-dropzone h2{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-xl);letter-spacing:-.03em;margin-bottom:5px;line-height:1.1}.section-heading p,.panel-card>p,.scan-dropzone p{color:var(--fg-muted);font-size:var(--fg-text-md);margin-bottom:0;line-height:1.5}.metric-grid{gap:var(--fg-card-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.metric-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-grid article,.metric-grid .metric-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);min-width:0;min-height:88px;box-shadow:var(--fg-shadow-sm);align-items:center;gap:14px;padding:19px;display:flex}.metric-grid article>div,.metric-grid .metric-card>div{gap:3px;min-width:0;display:grid}.metric-grid article strong,.metric-grid .metric-card strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-xl);text-overflow:ellipsis;line-height:1;overflow:hidden}.metric-grid article small,.metric-grid .metric-card small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}button.metric-card{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}button.metric-card:hover{border-color:#9fcac2;transform:translateY(-1px);box-shadow:0 8px 24px #1548481a}button.metric-card:focus-visible{outline-offset:2px;border-color:var(--fg-teal-600);outline:3px solid #228e8038}.metric-card-action strong{align-items:baseline;gap:5px;display:flex}.metric-card-action strong span{color:var(--fg-muted);font-family:var(--fg-sans);font-size:var(--fg-text-sm);font-weight:750}.presence-icon{position:relative}.presence-icon i{background:#28a26d;border:2px solid #fff;border-radius:50%;width:11px;height:11px;position:absolute;bottom:-2px;right:-2px;box-shadow:0 1px 3px #0c4a3138}.metric-chevron{color:var(--fg-teal-700);font-size:var(--fg-text-md);margin-left:auto;font-weight:850}.metric-icon{width:40px;height:40px;font-size:var(--fg-text-lg);border-radius:11px;flex:none;place-items:center;font-weight:800;display:grid}.metric-icon.teal{color:var(--fg-teal-700);background:var(--fg-teal-100)}.metric-icon.amber{color:var(--fg-amber-700);background:var(--fg-amber-100)}.metric-icon.blue{color:var(--fg-blue-700);background:var(--fg-blue-100)}.metric-icon.purple{color:var(--fg-purple-700);background:var(--fg-purple-100)}.empty-state{border-radius:var(--fg-radius-md);text-align:center;background:#fffdfab8;border:1px dashed #cbd6d2;place-content:center;justify-items:center;min-height:230px;padding:38px 24px;display:grid}.empty-state.large{min-height:390px}.empty-state.compact{min-height:210px}.empty-state>span{width:46px;height:46px;color:var(--fg-teal-700);background:var(--fg-teal-100);font-size:var(--fg-text-xl);border-radius:14px;place-items:center;margin-bottom:14px;display:grid}.empty-state h3{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-lg);margin-bottom:7px}.empty-state p{max-width:430px;color:var(--fg-muted);font-size:var(--fg-text-md);margin-bottom:19px;line-height:1.55}.data-table-wrap{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);width:100%;box-shadow:var(--fg-shadow-sm);overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:670px;color:var(--fg-ink-soft);font-size:var(--fg-text-sm)}.data-table th{border-bottom:1px solid var(--fg-line);color:#7b8a8d;font-size:var(--fg-text-xs);letter-spacing:.11em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#f6f7f3;padding:10px 12px;font-weight:850}.data-table td{vertical-align:middle;border-bottom:1px solid #e8ece9;padding:11px 12px}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fbfcf9}.data-table td strong,.data-table td small{display:block}.result-table-shell{gap:13px;min-width:0;display:grid}.result-table-toolbar{justify-content:space-between;align-items:end;gap:14px;min-width:0;display:flex}.result-table-search{width:min(430px,100%);color:var(--fg-ink-soft);gap:7px;display:grid}.result-table-search>span{color:#385159;font-size:var(--fg-text-sm);font-weight:800}.result-table-search>div{border:1px solid var(--fg-line-strong);border-radius:var(--fg-radius-sm);background:var(--fg-white);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:43px;padding:0 11px;display:grid}.result-table-search>div:focus-within{border-color:var(--fg-teal-600);box-shadow:0 0 0 3px color-mix(in srgb, var(--fg-teal-600) 13%, transparent)}.result-table-search input{min-width:0;height:40px;color:var(--fg-ink);font-size:var(--fg-text-md);background:0 0;border:0;outline:0;padding:0}.result-table-search button{width:28px;height:28px;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-radius:7px}.column-order-control{margin-left:auto;position:relative}.column-order-panel{z-index:80;border:1px solid var(--fg-line-strong);background:var(--fg-paper);width:min(360px,100vw - 32px);box-shadow:var(--fg-shadow-lg);border-radius:12px;gap:12px;padding:15px;display:grid;position:absolute;top:calc(100% + 7px);right:0}.column-order-panel>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.column-order-panel>header strong{font-size:var(--fg-text-sm)}.column-order-panel>header button{width:30px;height:30px;color:var(--fg-ink-soft);background:var(--fg-paper-deep);cursor:pointer;border:0;border-radius:8px}.column-order-panel>p{color:var(--fg-muted);font-size:var(--fg-text-xs);margin:0;line-height:1.45}.column-order-panel ol{gap:5px;max-height:330px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.column-order-panel li{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:8px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:7px 8px;transition:border-color .12s,opacity .12s,transform .12s;display:grid}.column-order-panel li[draggable=true]{cursor:grab}.column-order-panel li[draggable=true]:active{cursor:grabbing}.column-order-panel li.is-dragging{opacity:.5}.column-order-panel li[data-drop-position=before]{border-top:3px solid var(--fg-teal-700);transform:translateY(1px)}.column-order-panel li[data-drop-position=after]{border-bottom:3px solid var(--fg-teal-700);transform:translateY(-1px)}.column-drag-grip{color:var(--fg-muted);font-size:var(--fg-text-sm);line-height:1}.column-order-panel li:not([draggable=true]) .column-drag-grip{opacity:.35}.column-order-name{min-width:0;font-size:var(--fg-text-sm);align-items:center;gap:8px;font-weight:750;display:flex}.column-order-name>b{width:23px;height:23px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-size:var(--fg-text-xs);border-radius:7px;flex:none;place-items:center;display:grid}.column-order-name>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.column-order-name>small{color:var(--fg-muted);background:var(--fg-white);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;padding:3px 6px;font-size:10px;font-weight:850}.column-order-panel li>div{gap:4px;display:flex}.column-order-panel li button{border:1px solid var(--fg-line);width:30px;height:30px;color:var(--fg-ink);background:var(--fg-white);cursor:pointer;border-radius:7px}.column-order-panel li button:disabled{opacity:.4;cursor:not-allowed}.column-lock-indicator{width:30px;height:30px;color:var(--fg-muted);font-size:var(--fg-text-xs);place-items:center;display:grid}.table-column-header{align-items:center;gap:4px;min-width:0;display:flex}.sortable-column-button{min-width:0;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit;cursor:pointer;background:0 0;border:0;flex:auto;justify-content:space-between;align-items:center;gap:7px;padding:0;display:inline-flex}.sortable-column-button>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.sortable-column-button>i{color:var(--fg-teal-700);font-size:var(--fg-text-xs);flex:none;font-style:normal}.non-sortable-column-label{text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.table-column-drag-handle{width:28px;height:28px;color:var(--fg-muted);cursor:grab;background:0 0;border:1px solid #0000;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.table-column-drag-handle:hover{border-color:var(--fg-line);color:var(--fg-teal-700);background:var(--fg-white)}.table-column-drag-handle:active{cursor:grabbing}.locked-column-indicator{width:24px;height:24px;color:var(--fg-muted);flex:none;place-items:center;font-size:10px;display:grid}.managed-data-table th[data-drop-position=before]{box-shadow:inset 3px 0 0 var(--fg-teal-700)}.managed-data-table th[data-drop-position=after]{box-shadow:inset -3px 0 0 var(--fg-teal-700)}.managed-data-table th[data-sticky=true],.managed-data-table td[data-sticky=true]{position:sticky;left:0}.managed-data-table th[data-sticky=true]{z-index:4;box-shadow:1px 0 0 var(--fg-line), 10px 0 14px -15px #0d2d37a6}.managed-data-table td[data-sticky=true]{z-index:2;background:var(--fg-paper);min-width:150px;box-shadow:1px 0 0 var(--fg-line), 10px 0 14px -15px #0d2d378c}.managed-data-table tbody tr:hover td[data-sticky=true]{background:#fbfcf9}.managed-data-table tbody tr.clickable-result-row:hover td[data-sticky=true]{background:var(--fg-teal-50)}.managed-table-mobile-sort{gap:7px;display:none}.managed-table-mobile-sort>label{color:#385159;font-size:var(--fg-text-sm);font-weight:800}.managed-table-mobile-sort>div{grid-template-columns:minmax(0,1fr) 40px;gap:6px;display:grid}.managed-table-mobile-sort select,.managed-table-mobile-sort button{border:1px solid var(--fg-line-strong);min-height:40px;color:var(--fg-ink);background:var(--fg-white);border-radius:8px}.managed-table-mobile-sort select{min-width:0;padding:0 32px 0 10px}.managed-table-mobile-sort button{color:var(--fg-teal-700);cursor:pointer;place-items:center;padding:0;font-weight:900;display:grid}.managed-table-mobile-sort button:disabled{opacity:.4;cursor:not-allowed}@media (forced-colors:active){.managed-data-table th[data-sticky=true],.managed-data-table td[data-sticky=true]{box-shadow:none;border-right:1px solid canvastext}.column-order-panel li[data-drop-position]{outline:2px solid highlight}}.clickable-result-row{cursor:pointer;transition:background .14s,box-shadow .14s}.clickable-result-row:hover{box-shadow:inset 3px 0 0 var(--fg-teal-600);background:var(--fg-teal-50)!important}.result-row-trigger{width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:0;display:grid}.result-row-trigger>strong,.result-row-trigger>span,.result-row-trigger>small{grid-column:1}.result-row-trigger>i{color:var(--fg-teal-700);font-size:var(--fg-text-xl);grid-area:1/2/span 3;font-style:normal}.fullscreen-result-backdrop{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#06161cbd;padding:clamp(8px,2vw,24px);animation:.14s both fade-in;position:fixed;inset:0}.fullscreen-result-dialog{background:var(--fg-canvas);border:1px solid #fff6;border-radius:18px;grid-template-rows:auto minmax(0,1fr);width:100%;height:calc(100dvh - clamp(16px,4vw,48px));animation:.17s both dialog-in;display:grid;overflow:hidden;box-shadow:0 34px 100px #00000052}.fullscreen-result-dialog.has-banner{grid-template-rows:auto auto minmax(0,1fr)}.fullscreen-result-toolbar{border-bottom:1px solid var(--fg-line);background:var(--fg-paper);justify-content:space-between;align-items:center;gap:20px;min-height:68px;padding:11px 16px 11px 21px;display:flex}.fullscreen-result-toolbar>div{gap:3px;min-width:0;display:grid}.fullscreen-result-toolbar span{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:850}.fullscreen-result-toolbar h2{min-width:0;color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-xl);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.fullscreen-result-toolbar>button{border:1px solid var(--fg-line);width:42px;height:42px;color:var(--fg-ink);background:var(--fg-paper-deep);font-size:var(--fg-text-xl);cursor:pointer;border-radius:11px;flex:none}.fullscreen-result-content{overscroll-behavior:contain;min-height:0;padding:clamp(12px,2vw,26px);overflow-y:auto}.fullscreen-result-banner{background:var(--fg-canvas);padding:10px clamp(12px,2vw,26px) 0}.fullscreen-result-content>.submitted-answer-sheet,.fullscreen-result-content>.pending-answer-review{border:1px solid var(--fg-line);border-radius:var(--fg-radius-lg);background:var(--fg-paper);max-width:1500px;box-shadow:var(--fg-shadow-sm);margin:0 auto}.fullscreen-loading{min-height:60vh}.data-table td strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.data-table td small{color:var(--fg-muted);font-size:var(--fg-text-xs);margin-top:4px}.status-tag,.subject-tag,.delivery-tag,.group-pill,.grade-pill,.status-pill,.role-pill,.layout-badge{font-size:var(--fg-text-sm);letter-spacing:.075em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:999px;justify-content:center;align-items:center;font-weight:850;line-height:1;display:inline-flex}.status-tag,.subject-tag,.delivery-tag,.group-pill,.status-pill,.role-pill,.layout-badge{min-height:28px;padding:0 9px}.status-tag.open,.status-pill.active,.status-pill.approved{color:var(--fg-green-700);background:#edf8f2;border-color:#b9dccd}.status-tag.archived{color:#687274;background:#f1f3f2;border-color:#cfd6d4}.status-tag.submissions_closed{color:var(--fg-amber-700);background:#fff7e8;border-color:#e8ce99}.status-tag.closed{color:var(--fg-blue-700);background:var(--fg-blue-100);border-color:#c5d6e7}.status-pill.pending{color:var(--fg-amber-700);background:#fff7e8;border-color:#e8ce99}.status-pill.disabled,.status-pill.inactive{color:var(--fg-red-700);background:#fff4f1;border-color:#e8c2ba}.subject-tag,.group-pill,.layout-badge{color:var(--fg-teal-700);background:var(--fg-teal-50);border-color:#bdd7d1}.delivery-tag.online{color:var(--fg-blue-700);background:#eff5fb;border-color:#c8d8e8}.delivery-tag.printed{color:var(--fg-amber-700);background:#fff7e7;border-color:#e6d0a3}.role-pill.student{color:var(--fg-teal-700);background:var(--fg-teal-50);border-color:#bdd7d1}.role-pill.teacher{color:var(--fg-amber-700);background:#fff7e7;border-color:#e6d0a3}.role-pill.admin{color:var(--fg-purple-700);background:#f6f0fa;border-color:#d9cce4}.grade-pill{color:#fff;border-color:var(--fg-teal-800);background:var(--fg-teal-800);width:31px;height:31px;font-family:var(--fg-display);font-size:var(--fg-text-sm)}.term-card{border-radius:var(--fg-radius-md);min-width:185px;box-shadow:var(--fg-shadow-sm);background:linear-gradient(145deg,#fff9ec,#f7ecd4);border:1px solid #d9cfb8;gap:4px;padding:15px 17px;display:grid}.term-card>span{color:#8c744c;font-size:var(--fg-text-xs);letter-spacing:.11em;text-transform:uppercase;font-weight:850}.term-card>strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-2xl);line-height:1}.term-card>small{color:#7e715d;font-size:var(--fg-text-xs)}.result-banner{border-radius:var(--fg-radius-md);background:linear-gradient(100deg,#eff9f4,#f9fcf9);border:1px solid #b9dccd;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:15px 18px;display:flex}.result-banner>div{align-items:center;gap:12px;display:flex}.result-banner>div>span{color:#fff;background:var(--fg-green-700);width:31px;height:31px;font-size:var(--fg-text-md);border-radius:50%;flex:none;place-items:center;display:grid}.result-banner p{gap:4px;margin-bottom:0;display:grid}.result-banner p strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.result-banner p small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.result-banner>strong{color:#fff;background:var(--fg-teal-800);width:39px;height:39px;font-family:var(--fg-display);font-size:var(--fg-text-lg);border-radius:11px;flex:none;place-items:center;display:grid}.assessment-card-grid,.teacher-assessment-grid{gap:var(--fg-card-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.assessment-card,.teacher-assessment-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);min-width:0;box-shadow:var(--fg-shadow-sm);padding:20px;transition:transform .16s,border-color .16s,box-shadow .16s;position:relative;overflow:hidden}.assessment-card:hover,.teacher-assessment-card:hover{border-color:#c4d2ce;transform:translateY(-2px);box-shadow:0 14px 32px #16303717}.clickable-card{cursor:pointer}.assessment-card-click-target{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:0;width:100%;padding:0;position:absolute;inset:0}.assessment-card-click-target:focus-visible{outline:3px solid var(--fg-teal-600);outline-offset:-4px}.assessment-card-click-target:disabled{cursor:wait}.card-action-display{pointer-events:none}.card-accent{background:var(--fg-teal-600);height:4px;position:absolute;inset:0 0 auto}.card-accent[data-tone="1"]{background:var(--fg-amber-500)}.card-accent[data-tone="2"]{background:#6d83a0}.assessment-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-height:25px;margin-bottom:18px;display:flex}.assessment-card h3,.teacher-assessment-card h3{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-lg);letter-spacing:-.025em;margin-bottom:7px;line-height:1.18}.assessment-card>p,.teacher-assessment-card>p{color:var(--fg-muted);font-size:var(--fg-text-md);margin-bottom:18px}.assessment-card dl,.teacher-assessment-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 18px;display:grid}.teacher-assessment-card dl{grid-template-columns:repeat(3,minmax(0,1fr))}.assessment-card dl div,.teacher-assessment-card dl div{background:#f5f6f2;border-radius:8px;gap:4px;min-width:0;padding:10px;display:grid}.assessment-card dt,.teacher-assessment-card dt{color:#899597;font-size:var(--fg-text-xs);letter-spacing:.09em;text-transform:uppercase;font-weight:850}.assessment-card dd,.teacher-assessment-card dd{color:var(--fg-ink);font-size:var(--fg-text-sm);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:800;overflow:hidden}.history-heading{margin-top:43px}.profile-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-lg);background:var(--fg-paper);max-width:780px;box-shadow:var(--fg-shadow-sm);grid-template-columns:58px 1fr;align-items:center;gap:17px;padding:clamp(23px,3vw,34px);display:grid}.profile-monogram{color:#fff;background:var(--fg-teal-700);width:58px;height:58px;font-family:var(--fg-display);font-size:var(--fg-text-lg);border-radius:17px;place-items:center;font-weight:850;display:grid}.profile-card h2{font-family:var(--fg-display);font-size:var(--fg-text-2xl);letter-spacing:-.035em;margin-bottom:5px}.profile-card>div:nth-child(2)>p{color:var(--fg-muted);font-size:var(--fg-text-md);margin-bottom:0}.profile-card dl{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0 0;display:grid}.profile-card dl div{background:#f5f6f2;border-radius:9px;gap:5px;padding:13px;display:grid}.profile-card dt{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.profile-card dd{color:var(--fg-ink);font-size:var(--fg-text-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.profile-note{border-left:3px solid var(--fg-amber-500);background:#fff8e9;border-radius:0 9px 9px 0;grid-column:1/-1;margin-top:5px;padding:15px 16px}.profile-note strong{color:#695330;font-size:var(--fg-text-sm)}.profile-note p{color:#86775e;font-size:var(--fg-text-md);margin:5px 0 0;line-height:1.5}.assessment-runner{max-width:1120px;margin:0 auto}.back-button{margin-bottom:20px}.runner-heading{justify-content:space-between;align-items:flex-end;gap:26px;margin-bottom:24px;display:flex}.answer-progress{background:var(--fg-teal-50);border:1px solid #bdd7d1;border-radius:12px;justify-items:center;gap:3px;min-width:105px;padding:12px 16px;display:grid}.answer-progress strong{color:var(--fg-teal-800);font-family:var(--fg-display);font-size:var(--fg-text-xl)}.answer-progress span{color:#6f8584;font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.runner-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-lg);background:var(--fg-paper);box-shadow:var(--fg-shadow-md);overflow:hidden}.runner-instructions{border-bottom:1px solid var(--fg-line);background:#f5f7f3;justify-content:space-between;align-items:center;gap:18px;padding:16px 20px;display:flex}.runner-instructions strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.runner-instructions span{color:var(--fg-muted);font-size:var(--fg-text-sm)}.runner-instruction-copy{text-align:right;gap:3px;display:grid}.runner-instructions .draft-status{font-size:var(--fg-text-sm);font-weight:750}.runner-instructions .draft-status.saved,.runner-instructions .draft-status.cloud_saved,.runner-instructions .draft-status.restored{color:var(--fg-teal-700)}.runner-instructions .draft-status.syncing,.runner-instructions .draft-status.offline{color:var(--fg-amber-700)}.runner-instructions .draft-status.conflict,.runner-instructions .draft-status.unavailable{color:var(--fg-red-700)}.digital-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:10px 24px;display:grid}.digital-answer-column{min-width:0}.digital-answer-column:only-child{grid-column:1/-1}.digital-answer-column:first-child:not(:last-child){border-right:1px solid #e8ece9}.digital-answer-grid fieldset{border:0;border-bottom:1px solid #e8ece9;grid-template-columns:38px repeat(5,minmax(38px,1fr));align-items:center;gap:7px;min-width:0;min-height:70px;margin:0;padding:11px 15px;display:grid}.digital-answer-column fieldset:last-child{border-bottom:0}.digital-answer-grid legend{float:left;width:32px;color:var(--fg-muted);font-family:var(--fg-display);font-size:var(--fg-text-sm);text-align:center;margin-right:6px;font-weight:850}.digital-answer-grid label{border:1px solid var(--fg-line-strong);color:#52676c;cursor:pointer;background:#fff;border-radius:50%;justify-self:center;place-items:center;width:37px;min-width:37px;height:37px;transition:color .14s,border-color .14s,background .14s,transform .14s;display:grid}.digital-answer-grid label:hover{border-color:var(--fg-teal-600);transform:translateY(-1px)}.digital-answer-grid label.selected{color:#fff;border-color:var(--fg-teal-700);background:var(--fg-teal-700);box-shadow:0 3px 9px #1d6c6533}.digital-answer-grid input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.digital-answer-grid label span{font-size:var(--fg-text-sm);font-weight:850}.runner-footer{border-top:1px solid var(--fg-line);background:#f8f9f6;justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:13px 20px;display:flex}.runner-footer>span{color:var(--fg-muted);font-size:var(--fg-text-sm);font-weight:750}.submission-comment-panel{border-top:1px solid var(--fg-line);background:linear-gradient(135deg,#f7fbf9,#fffdf9 68%);padding:22px 24px}.submission-comment-heading,.review-result-summary{align-items:center;gap:12px;display:flex}.submission-comment-heading{margin-bottom:16px}.comment-icon{width:38px;height:38px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-family:var(--fg-display);font-size:var(--fg-text-md);border-radius:11px;flex:none;place-items:center;font-weight:900;display:grid}.submission-comment-heading h2{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-md);margin-bottom:3px;line-height:1.25}.submission-comment-heading h2 small,.teacher-comment-form label>span small{color:var(--fg-muted);font-family:inherit;font-size:var(--fg-text-xs);letter-spacing:.07em;text-transform:uppercase;margin-left:6px;font-weight:800}.submission-comment-heading p{color:var(--fg-muted);font-size:var(--fg-text-sm);margin-bottom:0;line-height:1.45}.submission-comment-panel textarea,.teacher-comment-form textarea{min-height:96px;line-height:1.55}.comment-field-meta{color:var(--fg-muted);font-size:var(--fg-text-xs);justify-content:space-between;align-items:center;gap:16px;margin-top:7px;display:flex}.comment-field-meta small{font-size:inherit}.comment-field-meta>span{flex:none;font-weight:800}.feedback-table{min-width:790px}.teacher-results-table{min-width:1320px}.comment-review-button{white-space:nowrap}.student-history-table{min-width:1080px}.friendly-date-time{white-space:nowrap;gap:3px;min-width:165px;display:grid}.friendly-date-time strong{color:var(--fg-ink);font-size:var(--fg-text-sm);font-weight:800;line-height:1.35}.friendly-date-time small,.friendly-date-time.empty{color:var(--fg-muted);font-size:var(--fg-text-xs);font-weight:700;line-height:1.35}.teacher-reply-dot{background:var(--fg-amber-500);width:7px;height:7px;box-shadow:0 0 0 3px var(--fg-amber-100);border-radius:50%;flex:none}.student-result-review-action{justify-items:start;gap:7px;display:grid}.student-result-review-action>small{color:var(--fg-muted);font-size:var(--fg-text-xs);font-weight:750;line-height:1.35}.feedback-detail-row>td{background:#f7f9f6;padding:0}.data-table tbody .feedback-detail-row:hover{background:#f7f9f6}.feedback-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.feedback-detail-grid>article,.teacher-comment-form{border:1px solid var(--fg-line);background:var(--fg-white);border-radius:12px;min-width:0;padding:16px}.feedback-detail-grid>article>span{color:var(--fg-teal-700);font-size:var(--fg-text-xs);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-weight:900;display:block}.feedback-detail-grid>article p{overflow-wrap:anywhere;color:var(--fg-ink-soft);font-size:var(--fg-text-md);white-space:pre-wrap;margin-bottom:0;line-height:1.65}.feedback-detail-grid>article.teacher-feedback.available{background:#f5fbf8;border-color:#bcd8d0}.feedback-detail-grid>article p.empty-comment{color:var(--fg-muted);font-style:italic}.student-review-loading,.student-review-error{justify-content:center;align-items:center;gap:13px;min-height:110px;padding:22px;display:flex}.student-review-loading>span{border:3px solid var(--fg-teal-100);border-top-color:var(--fg-teal-700);border-radius:50%;flex:none;width:22px;height:22px;animation:.75s linear infinite spin}.student-review-loading strong,.student-review-error strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.student-review-error{background:#fff8f6;justify-content:space-between}.student-review-error p{color:var(--fg-red-700);font-size:var(--fg-text-md);margin:4px 0 0}.pending-answer-review{background:var(--fg-paper);padding:22px 24px 0}.review-release-notice{background:#fff9eb;border:1px solid #ead3a6;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.review-release-notice>span{width:32px;height:32px;color:var(--fg-amber-700);background:var(--fg-amber-100);font-size:var(--fg-text-md);border-radius:9px;flex:none;place-items:center;font-weight:900;display:grid}.review-release-notice>div{flex:auto;min-width:0}.review-release-notice>.button{flex:none}.review-release-notice strong{color:#654b22;font-size:var(--fg-text-md)}.review-release-notice p{color:#806d4d;font-size:var(--fg-text-sm);margin:4px 0 0;line-height:1.5}.pending-answer-review .submitted-sheet-footer{margin:22px -24px 0}.submitted-answer-sheet{background:var(--fg-paper)}.submitted-sheet-header{border-bottom:1px solid var(--fg-line);background:linear-gradient(135deg, #f6faf7, var(--fg-paper) 62%);justify-content:space-between;align-items:flex-end;gap:24px;padding:24px;display:flex}.submitted-sheet-header>div:first-child{min-width:0}.submitted-sheet-header .eyebrow{margin-bottom:8px}.submitted-sheet-header h2{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-2xl);letter-spacing:-.035em;margin-bottom:5px;line-height:1.12}.submitted-sheet-header p:last-child{color:var(--fg-muted);font-size:var(--fg-text-md);margin-bottom:0}.submitted-sheet-score{background:var(--fg-teal-50);border:1px solid #bcd8d0;border-radius:12px;justify-items:center;gap:3px;min-width:138px;padding:12px 16px;display:grid}.submitted-sheet-score strong{color:var(--fg-teal-800);font-family:var(--fg-display);font-size:var(--fg-text-xl)}.submitted-sheet-score span{color:#68817e;font-size:var(--fg-text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:850}.answer-review-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:18px 24px 0;display:grid}.answer-review-summary article{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:11px;align-items:center;gap:10px;min-width:0;padding:11px 13px;display:flex}.answer-review-summary article>span{width:30px;height:30px;font-size:var(--fg-text-sm);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.answer-review-summary article>div{gap:2px;min-width:0;display:grid}.answer-review-summary strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-lg)}.answer-review-summary small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-transform:uppercase;font-weight:800}.answer-review-summary .correct>span{color:var(--fg-green-700);background:var(--fg-green-100)}.answer-review-summary .incorrect>span{color:var(--fg-red-700);background:var(--fg-red-100)}.answer-review-summary .blank>span{color:var(--fg-amber-700);background:var(--fg-amber-100)}.answer-review-guide{justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.answer-review-guide>p{max-width:380px;color:var(--fg-muted);font-size:var(--fg-text-sm);text-align:right;margin:0;line-height:1.45}.answer-review-legend{flex-wrap:wrap;gap:7px;display:flex}.answer-review-legend span{font-size:var(--fg-text-sm);border-radius:999px;padding:5px 8px;font-weight:850}.answer-review-legend .correct{color:var(--fg-green-700);background:var(--fg-green-100)}.answer-review-legend .incorrect{color:var(--fg-red-700);background:var(--fg-red-100)}.answer-review-legend .blank{color:var(--fg-amber-700);background:var(--fg-amber-100)}.answer-review-grid{border:1px solid var(--fg-line);background:#fff;border-radius:13px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 24px 24px;display:grid;overflow:hidden}.answer-review-column{min-width:0}.answer-review-column:first-child:not(:last-child){border-right:1px solid var(--fg-line)}.answer-review-question{border-bottom:1px solid #e8ece9;grid-template-columns:94px minmax(0,1fr);align-items:center;gap:9px;min-height:62px;padding:9px 13px;display:grid}.answer-review-column .answer-review-question:last-child{border-bottom:0}.answer-review-question-number{grid-template-columns:25px minmax(0,1fr);align-items:center;gap:7px;min-width:0;display:grid}.answer-review-question-number strong{color:var(--fg-ink-soft);font-family:var(--fg-display);font-size:var(--fg-text-sm);text-align:center}.answer-review-question-number span{font-size:var(--fg-text-xs);letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;font-weight:900;overflow:hidden}.answer-review-question.correct .answer-review-question-number span{color:var(--fg-green-700)}.answer-review-question.incorrect .answer-review-question-number span{color:var(--fg-red-700)}.answer-review-question.blank .answer-review-question-number span{color:var(--fg-amber-700)}.answer-review-options{justify-content:space-around;align-items:center;gap:5px;min-width:0;display:flex}.review-option{border:1px solid var(--fg-line-strong);color:#65777b;background:#fff;border-radius:50%;flex:none;place-items:center;width:35px;height:35px;display:grid;position:relative}.review-option b{font-size:var(--fg-text-xs);font-weight:850}.review-option.correct-answer{color:var(--fg-green-700);border-color:var(--fg-green-700);background:var(--fg-green-100);box-shadow:inset 0 0 0 1px #2a805c14}.review-option.selected.correct{color:#fff;border-color:var(--fg-green-700);background:var(--fg-green-700)}.review-option.selected.correct.correct-answer{color:#fff;background:var(--fg-green-700)}.review-option.selected.incorrect{color:#fff;border-color:var(--fg-red-700);background:var(--fg-red-700)}.review-option i{color:#fff;width:15px;height:15px;font-size:var(--fg-text-xs);background:currentColor;border:2px solid #fff;border-radius:50%;place-items:center;font-style:normal;line-height:1;display:grid;position:absolute;top:-5px;right:-5px}.review-option.selected.correct i{background:var(--fg-green-700)}.review-option.selected.incorrect i{background:var(--fg-red-700)}.review-option.correct-answer i{background:var(--fg-green-700)}.teacher-submitted-answer-sheet .submitted-sheet-comments{padding-bottom:26px}.teacher-answer-feedback-grid>article,.teacher-answer-feedback-grid>form{min-height:180px}.submitted-sheet-comments{border-top:1px solid var(--fg-line);background:linear-gradient(135deg,#f7fbf9,#fffdf9 68%);padding:22px 24px 24px}.submitted-sheet-section-heading{align-items:center;gap:12px;margin-bottom:14px;display:flex}.submitted-sheet-section-heading h3{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-md);margin:0 0 3px}.submitted-sheet-section-heading p{color:var(--fg-muted);font-size:var(--fg-text-xs);margin:0}.submitted-sheet-footer{border-top:1px solid var(--fg-line);background:#f8f9f6;justify-content:flex-end;padding:15px 24px;display:flex}.teacher-result-review{padding:20px}.review-result-summary{margin-bottom:16px}.review-result-summary>div{gap:4px;min-width:0;display:grid}.review-result-summary strong{color:var(--fg-ink);font-size:var(--fg-text-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.review-result-summary small{font-size:var(--fg-text-xs);margin:0}.teacher-comment-form{align-content:start;gap:10px;display:grid}.teacher-comment-form .comment-field-meta{margin-top:-3px}.teacher-comment-form .notice{margin-top:2px}.teacher-comment-actions{border-top:1px solid var(--fg-line);justify-content:flex-end;gap:9px;margin-top:4px;padding-top:13px;display:flex}.classes-page-summary{flex-wrap:wrap;gap:10px;margin:-6px 0 24px;display:flex}.classes-page-summary>span{border:1px solid var(--fg-line);border-radius:var(--fg-radius-sm);background:color-mix(in srgb, var(--fg-paper) 88%, var(--fg-teal-50));align-items:baseline;gap:8px;min-width:150px;padding:10px 13px;display:flex}.classes-page-summary strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-lg)}.classes-page-summary small{color:var(--fg-muted);font-size:var(--fg-text-sm);font-weight:750}.teacher-class-grid{gap:var(--fg-card-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.teacher-class-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);min-width:0;color:inherit;background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);font:inherit;text-align:left;cursor:pointer;grid-template-columns:48px minmax(0,1fr);gap:14px;padding:18px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid}.teacher-class-card:hover{border-color:#c9b782;transform:translateY(-2px);box-shadow:0 14px 32px #43371617}.teacher-class-card:focus-visible{outline-offset:2px;outline:3px solid #c5952f38}.teacher-class-card-icon{color:#6e5721;width:48px;height:48px;font-family:var(--fg-display);font-size:var(--fg-text-md);background:#fff2cc;border-radius:13px;grid-row:1/3;place-items:center;font-weight:900;display:grid}.teacher-class-card-heading{gap:4px;min-width:0;display:grid}.teacher-class-card-heading small{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.045em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-weight:800;overflow:hidden}.teacher-class-card-heading strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-xl)}.teacher-class-card-stats{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding-top:3px;display:grid}.teacher-class-card-stats>span{background:#fffcf4;border:1px solid #ece7d8;border-radius:8px;gap:3px;min-width:0;padding:9px;display:grid}.teacher-class-card-stats strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.teacher-class-card-stats small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-class-card-open{border-top:1px solid var(--fg-line);color:#775f28;font-size:var(--fg-text-sm);grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:11px;font-weight:850;display:flex}.teacher-class-card-open i{font-size:var(--fg-text-md);font-style:normal}.teacher-class-empty{grid-column:1/-1;min-height:210px}.teacher-class-back{margin-bottom:20px}.teacher-class-detail-heading{margin-bottom:24px}.teacher-class-detail-empty{min-height:210px}.class-detail-roster{min-width:760px}.class-detail-metric-action{position:relative}.class-detail-metric-action.is-active{border-color:var(--fg-teal-600);background:var(--fg-teal-50);box-shadow:0 10px 27px color-mix(in srgb, var(--fg-teal-800) 13%, transparent)}.class-detail-card-cue{width:28px;height:28px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-size:var(--fg-text-lg);border-radius:50%;flex:none;place-items:center;margin-left:auto;font-weight:900;line-height:1;transition:transform .16s,color .16s,background .16s;display:grid}.class-detail-metric-action.is-active .class-detail-card-cue{color:var(--fg-paper);background:var(--fg-teal-700);transform:rotate(180deg)}.class-detail-panel-slot{min-width:0;margin-top:var(--fg-card-gap)}.class-detail-panel-hint{border:1px dashed var(--fg-line-strong);border-radius:var(--fg-radius-sm);color:var(--fg-muted);background:color-mix(in srgb, var(--fg-paper) 82%, transparent);font-size:var(--fg-text-sm);text-align:center;margin:0;padding:13px 16px}.class-detail-panel{border:1px solid var(--fg-line);border-radius:var(--fg-radius-lg);background:var(--fg-paper);min-width:0;box-shadow:var(--fg-shadow-sm);margin-top:0;padding:clamp(17px,2.2vw,26px)}.class-detail-submissions{min-width:840px}.class-detail-panel>.teacher-assessment-grid,.class-detail-panel>.data-table-wrap,.class-detail-panel>.empty-state{margin-top:0}.teacher-assessment-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}.teacher-assessment-card .status-tag.closed{font-size:var(--fg-text-sm);letter-spacing:.035em;padding-inline:7px}.teacher-assessment-card .card-link{text-align:left;justify-content:flex-start;width:100%}.teacher-assessment-card{flex-direction:column;display:flex}.teacher-assessment-card.archived{box-shadow:none;background:#f8f9f7;border-color:#d6dcda}.teacher-assessment-card.archived:hover{box-shadow:var(--fg-shadow-sm);border-color:#cbd3d0;transform:none}.teacher-assessment-card.archived h3,.teacher-assessment-card.archived>p{color:#667173}.assessment-audience{min-height:30px;color:var(--fg-teal-800);background:var(--fg-teal-50);font-size:var(--fg-text-sm);border:1px solid #d9e7e2;border-radius:8px;align-items:center;gap:7px;margin:-7px 0 14px;padding:7px 9px;display:flex}.assessment-audience>span{color:#fff;background:var(--fg-teal-700);width:17px;height:17px;font-size:var(--fg-text-xs);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.assessment-audience strong{flex:1;min-width:0;line-height:1.35}.assessment-audience small{color:#667173;font-size:var(--fg-text-xs);letter-spacing:.03em;text-transform:uppercase;background:#e7ebe8;border-radius:999px;flex:none;padding:4px 6px;font-weight:850}.assessment-audience.empty{color:var(--fg-amber-700);background:#fff9eb;border-color:#ead3a6}.assessment-audience.empty>span{background:var(--fg-amber-700)}.assessment-card-footer{border-top:1px solid var(--fg-line);gap:12px;margin-top:auto;padding-top:14px;display:grid}.assessment-schedule-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 18px;display:grid}.assessment-schedule-summary>span{background:#fff;border:1px solid #e4e8e5;border-radius:8px;gap:4px;min-width:0;padding:10px;display:grid}.assessment-schedule-summary small{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.075em;text-transform:uppercase;font-weight:850}.assessment-schedule-summary strong{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);line-height:1.45}.assessment-archived-note{min-height:34px;color:var(--fg-muted);font-size:var(--fg-text-sm);align-items:center;line-height:1.45;display:flex}.assessment-management-actions{z-index:2;flex-wrap:wrap;gap:8px;display:flex;position:relative}.assessment-management-actions .button{flex:auto}.dashboard-split{gap:var(--fg-card-gap);grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);margin-top:40px;display:grid}.panel-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);min-width:0;box-shadow:var(--fg-shadow-sm);padding:23px}.panel-card-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:15px;display:flex}.panel-card-heading>strong{width:38px;height:38px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-family:var(--fg-display);font-size:var(--fg-text-md);border-radius:11px;place-items:center;display:grid}.mini-roster{display:grid}.mini-roster>div{border-bottom:1px solid #e8ece9;grid-template-columns:34px 1fr;align-items:center;gap:11px;min-width:0;padding:10px 0;display:grid}.mini-roster>div:last-child{border-bottom:0}.mini-roster>div>span{width:34px;height:34px;color:var(--fg-teal-700);background:var(--fg-teal-100);font-size:var(--fg-text-xs);border-radius:9px;place-items:center;font-weight:850;display:grid}.mini-roster p{gap:4px;min-width:0;margin-bottom:0;display:grid}.mini-roster strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.mini-roster small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.muted-copy{color:var(--fg-muted);font-size:var(--fg-text-md);margin-bottom:0;line-height:1.5}.action-panel{color:#f5f8f4;border-color:var(--fg-navy-800);background:radial-gradient(circle at 100% 0, #46938559, transparent 42%), var(--fg-navy-900);flex-direction:column;justify-content:center;align-items:flex-start;min-height:245px;display:flex;position:relative;overflow:hidden}.action-panel .eyebrow{color:#eec675}.action-panel h2{color:#fff;font-size:var(--fg-text-2xl)}.action-panel>p:not(.eyebrow){color:#abc0c4;max-width:360px}.action-panel .button{margin-top:22px}.builder-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-lg);background:var(--fg-paper);box-shadow:var(--fg-shadow-md);overflow:visible}.builder-section{border-bottom:1px solid var(--fg-line);grid-template-columns:45px minmax(0,1fr);gap:18px;padding:clamp(23px,3vw,34px);display:grid}.builder-section-number{width:37px;height:37px;color:var(--fg-teal-800);background:var(--fg-teal-50);font-family:var(--fg-display);font-size:var(--fg-text-md);border:1px solid #bdd7d1;border-radius:11px;place-items:center;font-weight:900;display:grid}.builder-section-body{min-width:0}.delivery-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.delivery-options>button{border:1px solid var(--fg-line-strong);min-width:0;min-height:99px;color:var(--fg-ink);text-align:left;cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:42px 1fr 24px;align-items:center;gap:13px;padding:16px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid}.delivery-options>button:hover,.delivery-options>button.selected{border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.delivery-options>button.selected{box-shadow:0 0 0 2px #2b7f7614}.delivery-icon{width:42px;height:42px;font-size:var(--fg-text-lg);border-radius:11px;place-items:center;font-style:normal;display:grid}.delivery-icon.online{color:var(--fg-blue-700);background:var(--fg-blue-100)}.delivery-icon.printed{color:var(--fg-amber-700);background:var(--fg-amber-100)}.delivery-options>button>span:nth-child(2){gap:6px;min-width:0;display:grid}.delivery-options strong{font-size:var(--fg-text-md)}.delivery-options small{color:var(--fg-muted);font-size:var(--fg-text-sm);line-height:1.45}.delivery-options i{border:1px solid var(--fg-line-strong);color:#0000;width:22px;height:22px;font-size:var(--fg-text-sm);background:#fff;border-radius:50%;place-items:center;font-style:normal;display:grid}.delivery-options button.selected i{color:#fff;border-color:var(--fg-teal-700);background:var(--fg-teal-700)}.assessment-schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.date-time-field{min-width:0;position:relative}.date-time-field.open,.date-time-field.info-open{z-index:25}.date-time-picker{min-width:0;position:relative}.date-time-trigger{width:100%;min-height:76px;color:var(--fg-ink);text-align:left;background:linear-gradient(135deg,#f6fbf8,#fffdf9 62%);border:1px solid #c7d9d4;border-radius:12px;grid-template-columns:46px minmax(0,1fr) 26px;align-items:center;gap:13px;padding:12px 13px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;box-shadow:0 8px 22px #153e3d0f}.date-time-trigger.has-info{grid-template-columns:46px minmax(0,1fr) 68px}.date-time-trigger:hover,.date-time-field.open .date-time-trigger{border-color:var(--fg-teal-600);box-shadow:0 0 0 3px #2b7f761a,0 10px 25px #153e3d14}.date-time-field.tone-purple .date-time-trigger{background:linear-gradient(135deg,#f8f5fc,#fffdf9 62%);border-color:#d7d2e6}.date-time-field.tone-purple .date-time-trigger:hover,.date-time-field.tone-purple.open .date-time-trigger{border-color:#a693b8;box-shadow:0 0 0 3px #7359891a,0 10px 25px #2c223714}.date-time-trigger-icon{width:46px;height:46px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-family:var(--fg-display);font-size:var(--fg-text-lg);border-radius:13px;place-items:center;font-weight:900;display:grid}.tone-purple .date-time-trigger-icon{color:var(--fg-purple-700);background:var(--fg-purple-100)}.date-time-trigger-copy{gap:4px;min-width:0;display:grid}.date-time-trigger-copy strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-md);text-overflow:ellipsis;white-space:nowrap;line-height:1.25;overflow:hidden}.date-time-trigger-copy small{color:#64777c;font-size:var(--fg-text-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:750;overflow:hidden}.date-time-trigger-chevron{width:26px;height:26px;color:var(--fg-teal-700);font-size:var(--fg-text-md);background:#ffffffc7;border:1px solid #2b7f7626;border-radius:8px;justify-self:end;place-items:center;font-weight:900;transition:transform .15s;display:grid}.date-time-field.open .date-time-trigger-chevron{transform:rotate(180deg)}.tone-purple .date-time-trigger-chevron{color:var(--fg-purple-700);border-color:#7359892b}.date-time-info{z-index:3;position:absolute;top:50%;right:45px;transform:translateY(-50%)}.date-time-info-button{width:34px;height:34px;color:var(--fg-teal-800);cursor:help;font-family:Georgia,serif;font-size:var(--fg-text-md);background:#ffffffeb;border:1px solid #1d6c653d;border-radius:50%;place-items:center;padding:0;font-weight:800;line-height:1;transition:border-color .15s,background .15s,transform .15s;display:grid;box-shadow:0 4px 12px #153e3d14}.date-time-info-button:hover,.date-time-info-button[aria-expanded=true]{border-color:var(--fg-teal-600);background:var(--fg-teal-100);transform:translateY(-1px)}.tone-purple .date-time-info-button{color:var(--fg-purple-700);border-color:#73598940}.tone-purple .date-time-info-button:hover,.tone-purple .date-time-info-button[aria-expanded=true]{border-color:var(--fg-purple-700);background:var(--fg-purple-100)}.date-time-info-tooltip{color:#f8fbfa;background:var(--fg-navy-900);width:min(285px,100vw - 48px);font-size:var(--fg-text-sm);border:1px solid #cbd8d4;border-radius:11px;padding:11px 13px;font-weight:650;line-height:1.5;position:absolute;top:calc(100% + 10px);right:-45px;box-shadow:0 16px 36px #061d2433}.date-time-info-tooltip:before{border:6px solid #0000;border-bottom-color:var(--fg-navy-900);content:"";position:absolute;bottom:100%;right:55px}.date-time-popover{z-index:150;width:min(360px,100vw - 48px);max-height:calc(100dvh - 32px);color:var(--fg-ink);background:#fffdfa;border:1px solid #cbd8d4;border-radius:16px;padding:13px;animation:.15s both date-time-popover-in;position:absolute;top:calc(100% + 10px);left:0;overflow-y:auto;box-shadow:0 24px 65px #061d243d,0 3px 12px #061d2414}.date-time-popover.opens-above{top:auto;bottom:calc(100% + 10px)}.date-time-popover-heading{border-bottom:1px solid var(--fg-line);justify-content:space-between;align-items:center;gap:14px;padding:2px 2px 10px;display:flex}.date-time-popover-heading>div:first-child{gap:3px;min-width:0;display:grid}.date-time-popover-heading span,.date-time-section-label span{color:#5f7377;font-size:var(--fg-text-xs);letter-spacing:.12em;text-transform:uppercase;font-weight:850}.date-time-popover-heading strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-md)}.date-time-month-nav{gap:6px;display:flex}.date-time-month-nav button{border:1px solid var(--fg-line-strong);width:34px;height:34px;color:var(--fg-ink-soft);font-size:var(--fg-text-xl);background:#fff;border-radius:9px;place-items:center;line-height:1;display:grid}.date-time-month-nav button:not(:disabled):hover{color:var(--fg-teal-800);border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.date-time-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;padding:9px 0 11px;display:grid}.date-time-weekday{color:#5f7377;height:20px;font-size:var(--fg-text-xs);text-transform:uppercase;place-items:center;font-weight:850;display:grid}.date-time-calendar button{min-width:0;height:28px;color:var(--fg-ink-soft);font-size:var(--fg-text-sm);background:0 0;border:1px solid #0000;border-radius:9px;place-items:center;padding:0;font-weight:800;display:grid}.date-time-calendar button.outside-month{color:#5f7377}.date-time-calendar button:not(:disabled):hover{color:var(--fg-teal-800);background:var(--fg-teal-50);border-color:#bfdbd5}.date-time-calendar button.today:not(.selected){color:var(--fg-teal-800);background:#f5fbf8;border-color:#a8cfc6}.date-time-calendar button.selected,.date-time-calendar button.selected:hover{color:#fff;border-color:var(--fg-teal-700);background:var(--fg-teal-700);box-shadow:0 5px 12px #1d6c6538}.date-time-calendar button:disabled{color:#c7cdcd;opacity:.7;background:0 0;text-decoration:line-through}.date-time-time-section{border:1px solid var(--fg-line);background:#f7f8f5;border-radius:12px;padding:11px}.date-time-section-label{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.date-time-section-label small{color:#5f7377;font-size:var(--fg-text-xs);font-weight:700}.date-time-clock{grid-template-columns:minmax(88px,1fr) auto minmax(88px,1fr) auto;align-items:center;gap:7px;display:grid}.date-time-number{border:1px solid var(--fg-line-strong);background:#fff;border-radius:9px;grid-template-columns:26px minmax(32px,1fr) 26px;align-items:center;min-width:0;display:grid;overflow:hidden}.date-time-number button{height:36px;color:var(--fg-teal-700);font-size:var(--fg-text-md);background:#f4f8f5;border:0;padding:0;font-weight:900}.date-time-number button:hover{background:var(--fg-teal-100)}.form-field .date-time-number input{width:100%;min-width:0;height:36px;color:var(--fg-ink);font-size:var(--fg-text-sm);text-align:center;appearance:textfield;background:#fff;border:0;border-radius:0;padding:0 2px;font-weight:850}.form-field .date-time-number input:focus{box-shadow:inset 0 0 0 2px #2b7f7638}.date-time-number input::-webkit-inner-spin-button{appearance:none;margin:0}.date-time-number input::-webkit-outer-spin-button{appearance:none;margin:0}.date-time-colon{color:var(--fg-muted);font-weight:900}.date-time-period{border:1px solid var(--fg-line-strong);background:#fff;border-radius:9px;grid-template-columns:repeat(2,34px);padding:3px;display:grid}.date-time-period button{height:28px;color:var(--fg-muted);font-size:var(--fg-text-sm);background:0 0;border:0;border-radius:6px;padding:0;font-weight:900}.date-time-period button.selected{color:#fff;background:var(--fg-teal-700)}.date-time-popover-footer{justify-content:space-between;align-items:center;gap:14px;padding-top:10px;display:flex}.date-time-popover-footer span{color:#5f7377;min-width:0;font-size:var(--fg-text-xs);font-weight:700;line-height:1.4}.date-time-popover-footer button{border:1px solid var(--fg-teal-700);color:#fff;background:var(--fg-teal-700);min-height:34px;font-size:var(--fg-text-sm);border-radius:9px;padding:0 14px;font-weight:850}.date-time-popover-footer button:hover{border-color:var(--fg-teal-800);background:var(--fg-teal-800)}@keyframes date-time-popover-in{0%{opacity:0;transform:translateY(-4px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.flow-callout{color:#6f5b38;font-size:var(--fg-text-sm);letter-spacing:.04em;text-transform:uppercase;background:#fff8e9;border:1px solid #e5d3ad;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin-top:16px;padding:13px 15px;font-weight:850;display:flex}.flow-callout i{color:#b69a67;font-style:normal}.answer-key-grid{grid-template-columns:repeat(10,minmax(58px,1fr));gap:8px;display:grid}.answer-key-grid label{border:1px solid var(--fg-line);background:#f8f9f6;border-radius:8px;grid-template-columns:23px minmax(0,1fr);align-items:center;gap:5px;min-width:0;padding:6px;display:grid}.answer-key-grid label>span{color:var(--fg-muted);font-size:var(--fg-text-sm);text-align:center;font-weight:850}.answer-key-grid select{border:1px solid var(--fg-line-strong);width:100%;height:36px;color:var(--fg-teal-800);font-size:var(--fg-text-md);text-align:center;background:#fff;border-radius:6px;padding:0 4px;font-weight:850}.layout-badge{color:var(--fg-teal-700);background:var(--fg-teal-50);border-color:#bdd7d1}.builder-actions{background:#f5f6f2;justify-content:space-between;align-items:center;gap:24px;min-height:82px;padding:17px clamp(23px,3vw,34px);display:flex}.builder-actions>div{gap:5px;display:grid}.builder-actions>div strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.builder-actions>div span{color:var(--fg-muted);font-size:var(--fg-text-xs)}.paper-workspace{border:1px solid var(--fg-line);border-radius:var(--fg-radius-lg);background:var(--fg-paper);min-height:680px;box-shadow:var(--fg-shadow-md);grid-template-columns:minmax(300px,.74fr) minmax(480px,1.26fr);display:grid;overflow:hidden}.paper-controls{border-right:1px solid var(--fg-line);background:var(--fg-paper);flex-direction:column;gap:17px;min-width:0;padding:clamp(24px,3vw,34px);display:flex}.sheet-spec{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.sheet-spec div{text-align:center;background:#f4f6f2;border-radius:9px;gap:5px;padding:11px 9px;display:grid}.sheet-spec span{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:850}.sheet-spec strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-md)}.print-guidance{border-left:3px solid var(--fg-amber-500);background:#fff8e9;border-radius:0 9px 9px 0;margin-top:auto;padding:14px}.print-guidance strong{color:#695330;font-size:var(--fg-text-sm)}.print-guidance p{color:#86775e;font-size:var(--fg-text-sm);margin:5px 0 0;line-height:1.5}.paper-preview{background-color:#e8ebe6;background-image:radial-gradient(#cdd3cf .6px,#0000 .6px);background-size:14px 14px;grid-template-rows:auto minmax(0,1fr);min-width:0;padding:24px;display:grid}.paper-preview-toolbar{border-bottom:1px solid var(--fg-line);background:#f9faf7;justify-content:space-between;align-items:center;gap:18px;min-height:58px;margin:-24px -24px 24px;padding:10px 17px;display:flex}.paper-preview-toolbar>span{gap:4px;display:grid}.paper-preview-toolbar strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.paper-preview-toolbar small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.paper-preview-toolbar>div{gap:7px;display:flex}.paper-preview-toolbar button,.paper-preview-toolbar a{border:1px solid var(--fg-line-strong);min-height:33px;color:var(--fg-ink-soft);font-size:var(--fg-text-sm);cursor:pointer;background:#fff;border-radius:7px;align-items:center;padding:0 11px;font-weight:800;text-decoration:none;display:inline-flex}.paper-preview-toolbar a{color:#fff;border-color:var(--fg-teal-800);background:var(--fg-teal-800)}.paper-preview iframe{background:#fff;border:0;justify-self:center;width:min(100%,600px);height:100%;min-height:610px;box-shadow:0 16px 38px #192b302e,0 0 0 1px #192b3014}.preview-placeholder{color:var(--fg-muted);text-align:center;place-self:center;justify-items:center;gap:8px;padding:35px;display:grid}.preview-placeholder>span{width:49px;height:49px;color:var(--fg-amber-700);background:var(--fg-amber-100);font-size:var(--fg-text-xl);border-radius:14px;place-items:center;margin-bottom:5px;display:grid}.preview-placeholder strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-md)}.preview-placeholder p{max-width:310px;color:var(--fg-muted);font-size:var(--fg-text-sm);margin-bottom:0;line-height:1.5}.workflow-status{gap:var(--fg-card-gap);margin-bottom:var(--fg-card-gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.workflow-status article{border:1px solid var(--fg-line);background:var(--fg-paper);border-radius:11px;grid-template-columns:31px 1fr auto;align-items:center;gap:10px;min-width:0;min-height:90px;padding:13px;display:grid}.workflow-status article>span{border:1px solid var(--fg-line-strong);width:31px;height:31px;color:var(--fg-muted);font-size:var(--fg-text-xs);border-radius:50%;place-items:center;font-weight:850;display:grid}.workflow-status article>div{gap:4px;min-width:0;display:grid}.workflow-status strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.workflow-status small{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.35}.workflow-status i{color:var(--fg-muted);font-size:var(--fg-text-xs);text-transform:uppercase;font-style:normal;font-weight:850}.workflow-status article.complete{background:#f2faf6;border-color:#bddccf}.workflow-status article.complete>span{color:#fff;border-color:var(--fg-green-700);background:var(--fg-green-700)}.workflow-status article.complete i{color:var(--fg-green-700)}.workflow-status article.upcoming{background:#fff9ed;border-color:#e5d0a6}.workflow-status article.upcoming>span{color:#fff;border-color:var(--fg-amber-500);background:var(--fg-amber-500)}.workflow-status article.upcoming i{color:var(--fg-amber-700)}.scan-dropzone{border-radius:var(--fg-radius-lg);text-align:center;background:#fffdfac7;border:1px dashed #bfcac6;place-content:center;justify-items:center;min-height:360px;padding:42px;display:grid}.scan-dropzone>span{width:58px;height:58px;color:var(--fg-teal-700);background:var(--fg-teal-100);font-size:var(--fg-text-2xl);border-radius:17px;place-items:center;margin-bottom:17px;display:grid}.scan-dropzone p{max-width:530px;margin:3px auto 20px}.scan-dropzone.disabled{filter:saturate(.7)}.admin-overview-grid{gap:var(--fg-card-gap);margin-top:var(--fg-card-gap);grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr);align-items:start;display:grid}.admin-activity-card,.admin-subject-layout,.subject-list,.people-list{min-width:0}.admin-activity-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);padding:24px}.admin-activity-card h2{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-xl);letter-spacing:-.03em;margin-bottom:5px}.admin-activity-card>p{color:var(--fg-muted);font-size:var(--fg-text-md);margin-bottom:18px;line-height:1.5}.admin-activity-card ul{gap:0;margin:0;padding:0;list-style:none;display:grid}.admin-activity-card li{color:var(--fg-ink-soft);font-size:var(--fg-text-md);border-bottom:1px solid #e8ece9;grid-template-columns:10px 1fr auto;align-items:center;gap:11px;padding:12px 0;display:grid}.admin-activity-card li:last-child{border-bottom:0}.admin-activity-card li:before{content:"";background:var(--fg-teal-600);border-radius:50%;width:8px;height:8px}.admin-activity-card li small{color:var(--fg-muted);font-size:var(--fg-text-xs);white-space:nowrap}.admin-subject-layout{gap:var(--fg-card-gap);grid-template-columns:minmax(270px,.65fr) minmax(0,1.35fr);align-items:start;display:grid}.admin-subject-layout>form,.admin-subject-layout>article,.admin-subject-layout>aside{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);padding:23px}.subject-list{gap:var(--fg-row-gap);display:grid}.subject-card{border:1px solid var(--fg-line);background:var(--fg-paper);border-radius:11px;justify-content:space-between;align-items:center;gap:18px;min-width:0;padding:15px 17px;display:flex;box-shadow:0 3px 13px #152d3409}.subject-card>div,.people-card>div:not(.person-actions){min-width:0}.subject-card h3,.people-card h3{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-md);letter-spacing:-.015em;margin-bottom:4px}.subject-card p,.people-card p{color:var(--fg-muted);font-size:var(--fg-text-sm);text-overflow:ellipsis;margin-bottom:0;line-height:1.45;overflow:hidden}.people-toolbar{margin-bottom:var(--fg-card-gap);border:1px solid var(--fg-line);background:#f7f8f4;border-radius:11px;justify-content:space-between;align-items:center;gap:15px;padding:13px;display:flex}.people-toolbar .form-field,.people-toolbar input,.people-toolbar select{min-width:0}.people-toolbar input{border:1px solid var(--fg-line-strong);width:min(100%,360px);height:40px;color:var(--fg-ink);font-size:var(--fg-text-md);background:#fff;border-radius:8px;padding:0 12px}.people-list{gap:var(--fg-row-gap);display:grid}.people-card{border:1px solid var(--fg-line);background:var(--fg-paper);border-radius:11px;grid-template-columns:43px minmax(0,1fr) auto auto;align-items:center;gap:14px;min-width:0;padding:14px 16px;display:grid;box-shadow:0 3px 13px #152d3409}.people-card>span:first-child,.people-card .person-avatar{width:43px;height:43px;color:var(--fg-teal-700);background:var(--fg-teal-100);font-size:var(--fg-text-sm);border-radius:12px;place-items:center;font-weight:850;display:grid}.person-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.person-actions.student-management-actions{align-items:flex-end}.person-actions.student-management-actions>.button{min-height:36px}.person-actions button,.subject-card button{border:1px solid var(--fg-line-strong);min-height:34px;color:var(--fg-ink-soft);font-size:var(--fg-text-sm);cursor:pointer;background:#fff;border-radius:7px;padding:0 10px;font-weight:800}.person-actions button:hover,.subject-card button:hover{color:var(--fg-teal-800);border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.confirmation-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#061b229e;justify-content:center;align-items:safe center;padding:20px;animation:.14s both fade-in;display:flex;position:fixed;inset:0;overflow-y:auto}.confirmation-backdrop.nested-confirmation{z-index:1100}.confirmation-dialog{border-radius:var(--fg-radius-lg);background:var(--fg-paper);width:min(100%,470px);box-shadow:var(--fg-shadow-lg);border:1px solid #ffffff4d;padding:clamp(23px,4vw,32px);animation:.17s both dialog-in}.confirmation-dialog h2{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-2xl);letter-spacing:-.035em;margin-bottom:9px;line-height:1.08}.confirmation-dialog p{color:var(--fg-muted);font-size:var(--fg-text-md);margin-bottom:22px;line-height:1.6}.confirmation-dialog>div:last-child,.confirmation-dialog .dialog-actions{justify-content:flex-end;gap:9px;display:flex}.schedule-dialog{width:min(100%,720px)}.schedule-dialog-form{gap:16px;display:grid}.schedule-dialog-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.schedule-dialog .date-time-trigger{min-height:70px}.class-dialog{width:min(100%,720px)}.class-dialog-form{gap:16px;display:grid}.class-dialog-options{border:0;min-width:0;margin:0;padding:0}.class-dialog-options>legend{color:var(--fg-ink);font-size:var(--fg-text-sm);margin-bottom:9px;font-weight:850}.class-dialog-options .assessment-class-options{grid-template-columns:repeat(3,minmax(0,1fr))}.class-dialog-context{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:11px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.class-dialog-context span{color:var(--fg-muted);font-size:var(--fg-text-sm);letter-spacing:.06em;text-transform:uppercase;gap:3px;font-weight:750;display:grid}.class-dialog-context span:last-child{text-align:right}.class-dialog-context strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-md);letter-spacing:0;text-transform:none}.class-dialog-context i{color:var(--fg-teal-700);font-style:normal;font-weight:900}.admin-overview-grid{align-items:stretch}.admin-overview-grid>.admin-activity-card{height:100%;min-height:290px}.admin-card-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;display:flex}.admin-card-heading>div{min-width:0}.admin-card-heading .eyebrow{margin-bottom:7px}.admin-card-heading h2{margin-bottom:5px}.admin-card-heading p{max-width:540px;color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0;line-height:1.5}.approval-list{display:grid}.approval-list>div{border-top:1px solid #e7ece9;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 0;display:grid}.approval-list>div>span:nth-child(2){gap:4px;min-width:0;display:grid}.approval-list strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.approval-list small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.people-avatar{width:42px;height:42px;color:var(--fg-teal-700);background:var(--fg-teal-100);font-size:var(--fg-text-sm);letter-spacing:.04em;border-radius:12px;flex:none;place-items:center;font-weight:900;display:grid}.people-avatar.teacher{color:var(--fg-amber-700);background:var(--fg-amber-100)}.people-avatar.admin{color:var(--fg-purple-700);background:var(--fg-purple-100)}.empty-inline{background:#f2f8f5;border:1px solid #cee2da;border-radius:12px;align-items:center;gap:14px;min-height:118px;margin-top:16px;padding:18px;display:flex}.empty-inline>span{color:#fff;background:var(--fg-green-700);width:38px;height:38px;font-size:var(--fg-text-md);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.empty-inline>div{gap:4px;display:grid}.empty-inline strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.empty-inline small{color:var(--fg-muted);font-size:var(--fg-text-sm)}.system-online{min-height:26px;color:var(--fg-green-700);font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase;background:#edf8f2;border:1px solid #b9dccd;border-radius:999px;flex:none;align-items:center;gap:7px;padding:0 10px;font-weight:850;display:inline-flex}.system-online i{background:#4fa47f;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #4fa47f21}.system-facts{border:1px solid var(--fg-line);background:var(--fg-line);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 0 18px;display:grid;overflow:hidden}.system-facts>div{background:#fbfcf9;gap:6px;min-width:0;padding:14px;display:grid}.system-facts dt{color:var(--fg-muted);font-size:var(--fg-text-xs)}.system-facts dd{color:var(--fg-ink);font-size:var(--fg-text-md);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:800;overflow:hidden}.management-note{background:#fff9ed;border:1px solid #e4d6b9;border-radius:10px;align-items:flex-start;gap:10px;padding:13px;display:flex}.management-note>span{color:#fff;background:var(--fg-amber-700);width:22px;height:22px;font-size:var(--fg-text-sm);border-radius:50%;flex:none;place-items:center;font-style:normal;font-weight:900;display:grid}.management-note p{color:#6d624f;font-size:var(--fg-text-xs);margin:0;line-height:1.5}.management-note strong{color:#594d39;font-size:var(--fg-text-sm);margin-bottom:2px;display:block}.catalog-summary{border:1px solid var(--fg-line);background:var(--fg-paper);min-width:224px;box-shadow:var(--fg-shadow-sm);border-radius:12px;grid-template-columns:auto auto 1px auto auto;align-items:baseline;gap:8px;padding:12px 15px;display:grid}.catalog-summary strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-xl)}.catalog-summary span{color:var(--fg-muted);font-size:var(--fg-text-xs);text-transform:uppercase}.catalog-summary i{background:var(--fg-line);justify-self:center;width:1px;height:22px}.subject-request-queue{margin-bottom:var(--fg-card-gap);gap:18px;padding:22px;display:grid}.subject-request-list{gap:9px;display:grid}.subject-request-card{border:1px solid var(--fg-line);background:var(--fg-white);border-radius:11px;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:14px;min-width:0;padding:14px;display:grid}.subject-request-copy{gap:4px;min-width:0;display:grid}.subject-request-copy strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.subject-request-copy small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subject-request-copy>span{color:var(--fg-ink-soft);font-size:var(--fg-text-xs);font-weight:750}.subject-request-card>time{color:var(--fg-muted);font-size:var(--fg-text-xs);white-space:nowrap}.subject-request-actions{gap:7px;display:flex}.subject-create-card{gap:18px;display:grid}.subject-create-card .form-heading,.subject-create-card .form-field,.subject-create-card .management-note{margin:0}.subject-directory{padding:23px}.compact-toggle{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);cursor:pointer;flex:none;align-items:center;gap:8px;font-weight:700;display:inline-flex}.compact-toggle input{width:16px;height:16px;accent-color:var(--fg-teal-700);margin:0}.subject-card{justify-content:initial;grid-template-columns:42px minmax(0,1fr) auto auto;gap:14px;display:grid}.subject-symbol{width:42px;height:42px;color:var(--fg-teal-700);background:var(--fg-teal-100);font-size:var(--fg-text-md);border-radius:12px;place-items:center;font-weight:900;display:grid}.subject-card-copy{align-content:center;gap:4px;display:grid}.subject-card-copy strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.subject-card-copy small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.subject-card.archived{background:#f7f7f3}.subject-card.archived .subject-symbol{color:var(--fg-muted);background:#e9ece9}.approval-callout{color:var(--fg-amber-700);font-size:var(--fg-text-sm);background:#fff9ed;border:1px solid #e5d0a6;border-radius:10px;align-items:center;gap:8px;padding:10px 13px;font-weight:750;display:inline-flex}.approval-callout strong{font-family:var(--fg-display);font-size:var(--fg-text-lg)}.people-toolbar{grid-template-columns:minmax(230px,1fr) auto auto;padding:10px;display:grid}.people-search{align-items:center;min-width:0;display:flex;position:relative}.people-search>span{z-index:1;color:var(--fg-muted);font-size:var(--fg-text-md);pointer-events:none;position:absolute;left:13px}.people-search input{width:100%;max-width:none;padding:0 38px}.people-search>button{width:28px;height:28px;color:var(--fg-muted);font-size:var(--fg-text-lg);background:0 0;border:0;border-radius:7px;position:absolute;right:7px}.filter-tabs{border:1px solid var(--fg-line);background:#eef1ed;border-radius:9px;gap:3px;padding:3px;display:inline-flex}.filter-tabs button{min-height:32px;color:var(--fg-muted);font-size:var(--fg-text-sm);background:0 0;border:0;border-radius:7px;padding:0 11px;font-weight:800}.filter-tabs button.active{color:var(--fg-teal-800);background:#fff;box-shadow:0 2px 7px #152d3417}.result-count{color:var(--fg-muted);font-size:var(--fg-text-sm);white-space:nowrap;padding-right:5px;font-weight:700}.people-card{grid-template-columns:44px minmax(0,1fr) auto;gap:14px;padding:15px 17px}.people-card.disabled{background:#f7f7f4}.people-card>.people-avatar{width:44px;height:44px}.person-identity{gap:4px;min-width:0;display:grid}.person-identity>div{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.person-identity>div>strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.person-identity p{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);margin:0}.person-identity>small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;line-height:1.4;overflow:hidden}.group-management{align-items:flex-end;gap:7px;display:flex}.group-management label{gap:5px;display:grid}.group-management label>span{color:var(--fg-muted);font-size:var(--fg-text-sm);letter-spacing:.05em;text-transform:uppercase;font-weight:800}.group-management select{border:1px solid var(--fg-line-strong);min-width:155px;height:36px;color:var(--fg-ink);font-size:var(--fg-text-md);background:#fff;border-radius:8px;padding:0 30px 0 10px}.protected-account{color:var(--fg-purple-700);background:var(--fg-purple-100);font-size:var(--fg-text-xs);white-space:nowrap;border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font-weight:800;display:inline-flex}.button.small{min-height:36px;font-size:var(--fg-text-sm);padding:0 12px}.button.quiet{color:var(--fg-ink-soft);border-color:var(--fg-line-strong);box-shadow:none;background:0 0}.button.quiet:not(:disabled):hover{color:var(--fg-teal-800);border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.button.quiet.danger{color:var(--fg-red-700);background:#fff8f6;border-color:#e8c2ba}.button.danger.solid{color:#fff;border-color:var(--fg-red-700);background:var(--fg-red-700)}.confirmation-dialog{position:relative}.dialog-close{width:34px;height:34px;color:var(--fg-muted);font-size:var(--fg-text-xl);background:#f0f2ef;border:0;border-radius:9px;place-items:center;display:grid;position:absolute;top:14px;right:14px}.confirmation-icon{color:#fff;background:var(--fg-teal-700);width:46px;height:46px;font-size:var(--fg-text-lg);border-radius:14px;place-items:center;margin-bottom:18px;font-weight:900;display:grid}.confirmation-icon.danger{background:var(--fg-red-700)}.confirmation-icon.warning{color:#fff;background:var(--fg-amber-700)}.confirmation-icon.blue{background:var(--fg-blue-700)}.online-people-dialog{flex-direction:column;width:min(100%,650px);max-height:calc(100dvh - 40px);display:flex}.online-dialog-heading>p:last-child{margin-bottom:18px}.online-people-list{gap:9px;min-height:0;max-height:390px;padding:2px 4px 2px 2px;display:grid;overflow-y:auto}.online-person-row{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:11px;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;display:grid}.online-person-row .people-avatar{width:43px;height:43px;color:var(--fg-teal-700);background:var(--fg-teal-100);font-size:var(--fg-text-sm);border-radius:12px;place-items:center;font-weight:850;display:grid}.online-person-row .people-avatar.teacher{color:var(--fg-blue-700);background:var(--fg-blue-100)}.online-person-copy{gap:3px;min-width:0;display:grid}.online-person-copy strong,.online-person-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.online-person-copy strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.online-person-copy small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.presence-pill{color:#19734e;font-size:var(--fg-text-xs);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#e8f7ef;border-radius:999px;align-items:center;gap:6px;padding:7px 9px;font-weight:850;display:inline-flex}.presence-pill i{background:#28a26d;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #28a26d21}.online-people-empty{min-height:190px;color:var(--fg-muted);background:var(--fg-paper-deep);text-align:center;border:1px dashed #cbd6d2;border-radius:12px;place-content:center;justify-items:center;gap:7px;padding:26px;display:grid}.online-people-empty>span{color:var(--fg-teal-600);font-size:var(--fg-text-3xl)}.online-people-empty strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.online-people-empty small{max-width:310px;font-size:var(--fg-text-xs);line-height:1.5}.online-people-dialog .dialog-actions{margin-top:18px}.assessment-submit-dialog{max-height:calc(100dvh - 40px);overflow-y:auto}.assessment-submit-dialog .eyebrow{margin-bottom:7px}.draft-recovery-dialog{width:min(100%,660px);max-height:calc(100dvh - 40px);overflow-y:auto}.draft-recovery-dialog .eyebrow{margin-bottom:7px}.draft-recovery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.draft-recovery-grid article{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:11px;gap:6px;min-width:0;padding:15px;display:grid}.draft-recovery-grid article.device-copy{background:var(--fg-amber-100);border-color:#d8bc88}.draft-recovery-grid span{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.07em;text-transform:uppercase;font-weight:850}.draft-recovery-grid strong{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-lg)}.draft-recovery-grid small{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.45}.confirmation-dialog p.draft-recovery-note{color:var(--fg-ink-soft);background:var(--fg-teal-50);font-size:var(--fg-text-sm);border-radius:9px;margin:0;padding:11px 13px;line-height:1.5}.submission-confirmation-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.submission-confirmation-summary>div{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:10px;min-width:0;padding:13px 14px}.submission-confirmation-summary dt{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-weight:850}.submission-confirmation-summary dd{color:var(--fg-teal-800);font-family:var(--fg-display);font-size:var(--fg-text-lg);margin:0;font-weight:850}.submission-confirmation-summary .has-unanswered{background:#fff9eb;border-color:#ead3a6}.submission-confirmation-summary .has-unanswered dd{color:var(--fg-amber-700)}.confirmation-dialog .dialog-actions{border-top:1px solid var(--fg-line);padding-top:21px}@media (width<=620px){.draft-recovery-grid{grid-template-columns:1fr}.draft-recovery-dialog .dialog-actions{flex-direction:column;align-items:stretch}.draft-recovery-dialog .dialog-actions .button{width:100%}}.audit-page{min-width:0}.audit-heading-actions{align-items:center;gap:10px;display:flex}.audit-toolbar{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);margin-bottom:12px;padding:14px}.audit-filter-form{grid-template-columns:repeat(5,minmax(120px,1fr));align-items:end;gap:12px;display:grid}.audit-filter-field{gap:7px;min-width:0;display:grid}.audit-filter-field>span{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);letter-spacing:.055em;text-transform:uppercase;font-weight:850}.audit-filter-field select{border:1px solid var(--fg-line-strong);width:100%;height:40px;color:var(--fg-ink);font-size:var(--fg-text-md);background-color:#fff;border-radius:9px;padding:0 34px 0 11px}.audit-filter-actions{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:8px;display:flex}.audit-filter-actions .button,.audit-refresh{white-space:nowrap}.audit-results-bar{min-height:30px;color:var(--fg-muted);font-size:var(--fg-text-xs);justify-content:space-between;align-items:center;gap:12px;padding:0 3px 8px;font-weight:750;display:flex}.audit-results-bar small{color:var(--fg-teal-700);background:var(--fg-teal-50);font-size:var(--fg-text-xs);letter-spacing:.045em;text-transform:uppercase;border-radius:999px;padding:4px 8px;font-weight:850}.audit-record-card{min-height:230px;padding:0;overflow:hidden}.audit-record-card:has(.managed-table-shell){overflow:visible}.audit-record-card>.managed-table-shell>.result-table-toolbar{padding:14px 14px 0}.audit-record-card>.notice{margin:18px}.audit-record-card>.notice .text-button{margin-left:auto}.audit-loading{min-height:230px;color:var(--fg-muted);font-size:var(--fg-text-sm);place-content:center;justify-items:center;gap:12px;display:grid}.audit-loading>span{border:3px solid #dce5e2;border-top-color:var(--fg-teal-700);border-radius:50%;width:25px;height:25px;animation:.7s linear infinite spin}.audit-table-wrap{width:100%;overflow-x:auto}.audit-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:920px}.audit-table th{border-bottom:1px solid var(--fg-line);color:var(--fg-muted);font-size:var(--fg-text-sm);letter-spacing:.07em;text-align:left;text-transform:uppercase;background:#f5f7f4;padding:12px 14px;font-weight:850}.audit-table:not(.managed-data-table) th:first-child,.audit-table.managed-data-table th[data-column-id=event]{width:21%}.audit-table:not(.managed-data-table) th:nth-child(2),.audit-table.managed-data-table th[data-column-id=actor]{width:20%}.audit-table:not(.managed-data-table) th:nth-child(3),.audit-table.managed-data-table th[data-column-id=record]{width:17%}.audit-table:not(.managed-data-table) th:nth-child(4),.audit-table.managed-data-table th[data-column-id=details]{width:27%}.audit-table:not(.managed-data-table) th:nth-child(5),.audit-table.managed-data-table th[data-column-id=created]{width:15%}.audit-table td{min-width:0;color:var(--fg-ink-soft);font-size:var(--fg-text-sm);text-align:left;vertical-align:top;border-bottom:1px solid #e8ece9;padding:14px;line-height:1.45}.audit-table tbody tr:last-child td{border-bottom:0}.audit-table tbody tr:hover{background:#fbfcf9}.audit-event-cell{align-items:center;gap:10px;min-width:0;display:flex}.audit-event-icon{width:34px;height:34px;color:var(--fg-teal-700);background:var(--fg-teal-100);font-size:var(--fg-text-sm);border-radius:10px;flex:none;place-items:center;font-weight:900;display:grid}.audit-event-icon.account{color:var(--fg-blue-700);background:#edf4fb}.audit-event-icon.assessment{color:var(--fg-teal-700);background:var(--fg-teal-100)}.audit-event-icon.submission{color:var(--fg-green-700);background:#edf8f2}.audit-event-icon.paper{color:var(--fg-amber-700);background:var(--fg-amber-100)}.audit-event-icon.subject{color:var(--fg-purple-700);background:var(--fg-purple-100)}.audit-event-icon.system{color:#667274;background:#eef1ef}.audit-event-copy,.audit-actor,.audit-entity{gap:4px;min-width:0;display:grid}.audit-event-copy strong,.audit-actor strong,.audit-entity strong{color:var(--fg-ink);font-size:var(--fg-text-sm);text-overflow:ellipsis;line-height:1.35;overflow:hidden}.audit-event-copy small,.audit-actor small,.audit-entity small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;line-height:1.4;overflow:hidden}.audit-event-copy small{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.audit-detail-list{flex-wrap:wrap;gap:5px;display:flex}.audit-detail{color:var(--fg-muted);font-size:var(--fg-text-xs);background:#f8faf8;border:1px solid #e1e7e4;border-radius:7px;gap:4px;padding:4px 7px;line-height:1.35;display:inline-flex}.audit-detail strong{color:var(--fg-ink-soft)}.audit-time{color:var(--fg-ink-soft);font-size:var(--fg-text-xs);font-weight:700;line-height:1.45;display:block}.audit-empty{box-shadow:none;border:0;border-radius:0;margin:0}.audit-pagination{border-top:1px solid var(--fg-line);background:#fafbf9;justify-content:center;align-items:center;gap:14px;min-height:66px;padding:13px 16px;display:flex}.audit-page-position{min-width:90px;color:var(--fg-muted);font-size:var(--fg-text-xs);text-align:center;font-weight:750}.visually-hidden,.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.teacher-code-input{letter-spacing:.12em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:850;font-size:var(--fg-text-md)!important}.teacher-code-field small{letter-spacing:0}.roster-link{margin-top:14px}.roster-toolbar{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);grid-template-columns:minmax(240px,1fr) minmax(145px,190px) minmax(145px,190px) auto;align-items:end;gap:14px;margin:30px 0 34px;padding:18px;display:grid}.roster-removed-toggle{min-height:42px;color:var(--fg-ink-soft);font-size:var(--fg-text-sm);white-space:nowrap;cursor:pointer;align-items:center;gap:9px;padding:0 4px;font-weight:750;display:inline-flex}.roster-removed-toggle input{width:17px;height:17px;accent-color:var(--fg-teal-700);margin:0}.roster-class-list{gap:38px;display:grid}.roster-class-section .section-heading{margin-bottom:13px}.roster-table{min-width:820px}.roster-table:not(.managed-data-table) td:first-child,.roster-table.managed-data-table td[data-sticky=true]{min-width:150px}.roster-table:not(.managed-data-table) td:nth-child(5){min-width:125px}.roster-table .roster-action-cell{text-align:right}.roster-empty{min-height:240px}.teacher-account-grid{gap:var(--fg-card-gap);grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr);align-items:stretch;display:grid}.teacher-code-card{background:radial-gradient(circle at 90% 4%, #e6ba6730, transparent 38%), var(--fg-paper);align-content:start;gap:24px;display:grid}.teacher-code-card h2,.teacher-profile-card h2{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-xl);letter-spacing:-.025em;margin-bottom:8px}.teacher-code-card>div>p:last-child{max-width:560px;color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0;line-height:1.55}.teacher-code-display{background:var(--fg-teal-50);border:1px solid #a8cec6;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;padding:18px;display:flex}.teacher-code-display input{outline-offset:7px;width:min(100%,310px);min-height:auto;color:var(--fg-teal-800);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:var(--fg-text-2xl);letter-spacing:.12em;background:0 0;border:0;padding:0;font-weight:900;line-height:1}.teacher-code-copy-status{min-height:16px;color:var(--fg-muted);font-size:var(--fg-text-xs);margin:-12px 0 0}.teacher-code-copy-status.copied{color:var(--fg-green-700)}.teacher-code-copy-status.error{color:var(--fg-red-700)}.teacher-code-steps{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);gap:10px;margin:0;padding-left:20px;line-height:1.55;display:grid}.teacher-profile-card{align-content:start;gap:18px;display:grid}.teacher-profile-avatar{width:62px;height:62px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-family:var(--fg-display);font-size:var(--fg-text-xl);border-radius:17px;place-items:center;font-weight:850;display:grid}.teacher-profile-card dl{margin:0;display:grid}.teacher-profile-card dl>div{border-bottom:1px solid var(--fg-line);gap:5px;padding:13px 0;display:grid}.teacher-profile-card dl>div:last-child{border-bottom:0}.teacher-profile-card dt{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:850}.teacher-profile-card dd{color:var(--fg-ink);font-size:var(--fg-text-md);overflow-wrap:anywhere;margin:0;font-weight:750}.teacher-subject-card,.teacher-subject-request-card{grid-column:1/-1;gap:22px;display:grid}.teacher-subject-request-form{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:12px;grid-template-columns:minmax(220px,.7fr) minmax(340px,1.3fr) auto;align-items:end;gap:14px;padding:16px;display:grid}.teacher-subject-request-list{gap:9px;display:grid}.teacher-subject-request-row{border:1px solid var(--fg-line);background:var(--fg-white);border-radius:11px;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:13px;min-width:0;padding:12px 13px;display:grid}.teacher-subject-request-row>div{gap:4px;min-width:0;display:grid}.teacher-subject-request-row>div strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.teacher-subject-request-row>div small{color:var(--fg-muted);font-size:var(--fg-text-sm);line-height:1.45}.teacher-subject-heading{justify-content:space-between;align-items:flex-start;gap:22px;display:flex}.teacher-subject-heading h2{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-xl);letter-spacing:-.025em;margin:0 0 7px}.teacher-subject-heading p:last-child{color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0;line-height:1.5}.subject-total{color:var(--fg-teal-800);background:var(--fg-teal-50);font-size:var(--fg-text-xs);border-radius:999px;flex:none;align-items:baseline;gap:6px;padding:8px 11px;font-weight:800;display:inline-flex}.subject-total strong{font-size:var(--fg-text-md)}.teacher-subject-list{gap:9px;display:grid}.teacher-subject-item{border:1px solid var(--fg-line);background:var(--fg-white);border-radius:11px;display:grid;overflow:hidden}.teacher-subject-row{background:0 0;border:0;border-radius:0;grid-template-columns:38px minmax(180px,1fr) auto auto minmax(92px,auto);align-items:center;gap:13px;min-width:0;padding:12px 13px;display:grid}.teacher-subject-row.archived{background:var(--fg-paper-deep)}.teacher-subject-symbol{width:38px;height:38px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-family:var(--fg-display);font-size:var(--fg-text-md);border-radius:10px;place-items:center;font-weight:900;display:grid}.teacher-subject-row.archived .teacher-subject-symbol{color:var(--fg-muted);background:#e7ebe8}.teacher-subject-copy{gap:4px;min-width:0;display:grid}.teacher-subject-copy strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.teacher-subject-copy small{color:var(--fg-muted);font-size:var(--fg-text-sm);line-height:1.45}.teacher-subject-add{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:12px;grid-template-columns:minmax(220px,.7fr) minmax(340px,1.3fr) auto;align-items:end;gap:12px;padding:16px;display:grid}.teacher-subject-add-classes,.teacher-class-manager{gap:10px;min-width:0;display:grid}.teacher-subject-add-classes>strong,.teacher-class-manager>div:first-child>strong{color:var(--fg-ink-soft);font-size:var(--fg-text-xs);font-weight:800}.teacher-class-manager{border-top:1px solid var(--fg-line);background:#fafbf9;padding:15px}.teacher-class-manager>div:first-child{gap:4px;display:grid}.teacher-class-manager>div:first-child>small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.teacher-class-manager-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.teacher-class-manager-actions>small{color:var(--fg-muted);font-size:var(--fg-text-xs);font-weight:750}.teacher-subject-archive{gap:9px;padding-top:2px;display:grid}.teacher-subject-archive>div:first-child{gap:4px;display:grid}.teacher-subject-archive>div:first-child>strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.teacher-subject-archive>div:first-child>small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.teacher-subject-unavailable{max-width:135px;color:var(--fg-muted);font-size:var(--fg-text-xs);text-align:right;font-weight:750;line-height:1.35}.teacher-subject-note{color:var(--fg-ink-soft);background:var(--fg-teal-50);font-size:var(--fg-text-sm);border-radius:10px;align-items:flex-start;gap:10px;margin:0;padding:13px 14px;line-height:1.5;display:flex}.teacher-subject-note>span:first-child{width:20px;height:20px;color:var(--fg-white);background:var(--fg-teal-700);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.teacher-subject-note>span:last-child{gap:2px;display:grid}.teacher-subject-dialog .student-removal-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.student-removal-dialog .eyebrow{margin-bottom:8px}.student-removal-summary{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:10px;gap:10px;margin:-5px 0 22px;padding:13px;display:grid}.student-removal-summary span{gap:4px;min-width:0;display:grid}.student-removal-summary small{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.07em;text-transform:uppercase;font-weight:850}.student-removal-summary strong{color:var(--fg-ink);font-size:var(--fg-text-sm);overflow-wrap:anywhere}.student-invitation-selector{border:0;gap:12px;margin:0;padding:0;display:grid}.student-invitation-selector>legend,.student-class-subject-picker>legend{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);margin-bottom:6px;font-weight:850}.student-invitation-selector>p{color:var(--fg-muted);font-size:var(--fg-text-sm);margin:-4px 0 2px;line-height:1.5}.student-invitation-list{gap:11px;display:grid}.student-invitation-card{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:12px;gap:12px;padding:14px;display:grid}.student-invitation-heading,.student-invitation-code-row,.student-class-code-row{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.student-invitation-heading>div{gap:3px;min-width:0;display:grid}.student-invitation-heading strong{color:var(--fg-ink);font-size:var(--fg-text-md)}.student-invitation-heading small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.student-invitation-code-row .form-field,.student-class-code-row .form-field{flex:1;min-width:0}.student-invitation-code-row .button,.student-class-code-row .button{flex:none;margin-bottom:1px}.student-invitation-message{color:var(--fg-danger);background:var(--fg-danger-soft);font-size:var(--fg-text-sm);border-radius:9px;padding:9px 11px;line-height:1.45}.student-invitation-subjects,.student-class-subject-picker{border:1px solid var(--fg-line);background:var(--fg-paper);border-radius:10px;gap:9px;margin:0;padding:12px;display:grid}.student-invitation-subjects>div,.student-class-subject-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.student-invitation-subjects>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.student-invitation-subjects label,.student-class-subject-picker>label{border:1px solid var(--fg-line);min-width:0;color:var(--fg-ink-soft);background:var(--fg-paper);font-size:var(--fg-text-sm);cursor:pointer;border-radius:9px;grid-template-columns:19px minmax(0,1fr) 20px;align-items:center;gap:8px;padding:10px;font-weight:750;display:grid}.student-invitation-subjects label.selected,.student-class-subject-picker>label.selected{border-color:color-mix(in srgb, var(--fg-teal-600) 48%, var(--fg-line));color:var(--fg-teal-800);background:var(--fg-teal-50)}.student-invitation-subjects input,.student-class-subject-picker input{width:17px;height:17px;accent-color:var(--fg-teal-700)}.student-invitation-subjects i,.student-class-subject-picker i{color:var(--fg-teal-700);text-align:center;font-style:normal;font-weight:900}.student-invitation-subjects>small{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.45}.student-add-teacher{justify-self:start}.student-class-grid{gap:var(--fg-card-gap);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:28px;display:grid}.student-class-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);min-width:0;box-shadow:var(--fg-shadow-sm);grid-template-columns:46px minmax(0,1fr) auto;align-items:start;gap:13px;padding:18px;display:grid}.class-card-symbol{width:42px;height:42px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-family:var(--fg-display);font-size:var(--fg-text-lg);border-radius:11px;flex:none;place-items:center;font-weight:900;display:grid}.student-class-card>div{gap:4px;min-width:0;display:grid}.student-class-card .eyebrow{margin:0}.student-class-card h2{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-lg);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.student-class-card p:not(.eyebrow){color:var(--fg-ink-soft);font-size:var(--fg-text-sm);margin:0}.student-class-card small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.student-class-layout{align-items:start;gap:var(--fg-card-gap);grid-template-columns:minmax(0,1fr) minmax(340px,.82fr);display:grid}.student-class-join-card,.student-class-request-card{gap:16px;display:grid}.student-class-subject-picker{grid-template-columns:1fr}.student-class-subject-picker>legend{grid-column:1/-1}.student-class-subject-picker>label>span{gap:3px;min-width:0;display:grid}.student-class-subject-picker>label small{color:var(--fg-muted);font-size:var(--fg-text-xs);font-weight:650}.student-class-subject-picker>label.unavailable{opacity:.66;cursor:default}.student-class-request-list,.admin-current-class-list{gap:9px;display:grid}.student-class-request-list>article,.admin-current-class-list>article{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:10px;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:11px;min-width:0;padding:11px;display:grid}.student-class-request-list .class-card-symbol,.admin-current-class-list .class-card-symbol{width:38px;height:38px;font-size:var(--fg-text-md)}.student-class-request-list article>div,.admin-current-class-list article>div{gap:4px;min-width:0;display:grid}.student-class-request-list strong,.admin-current-class-list strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.student-class-request-list small,.admin-current-class-list small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-profile-classes{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.student-profile-classes>span{border:1px solid var(--fg-line);color:var(--fg-ink);background:var(--fg-paper-deep);font-size:var(--fg-text-sm);border-radius:9px;gap:2px;padding:9px 11px;font-weight:800;display:grid}.student-profile-classes small{color:var(--fg-muted);font-size:var(--fg-text-xs);font-weight:650}.teacher-join-request-list{gap:11px;display:grid}.teacher-join-request-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;display:grid}.teacher-join-request-copy{gap:4px;min-width:0;display:grid}.teacher-join-request-copy>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.teacher-join-request-copy p{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);margin:0}.teacher-join-request-copy small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.teacher-join-request-copy em{color:var(--fg-danger);font-size:var(--fg-text-xs);font-style:normal}.teacher-join-request-actions{gap:8px;display:flex}.teacher-subject-name-field{min-width:0;position:relative}.teacher-subject-add>.teacher-subject-name-field{align-self:start}.teacher-subject-suggestions{z-index:25;border:1px solid var(--fg-line-strong);background:var(--fg-paper);box-shadow:var(--fg-shadow-md);border-radius:10px;display:grid;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow:hidden}.teacher-subject-suggestions button{border:0;border-bottom:1px solid var(--fg-line);color:var(--fg-ink);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.teacher-subject-suggestions button:last-child{border-bottom:0}.teacher-subject-suggestions button:hover,.teacher-subject-suggestions button:focus-visible{background:var(--fg-teal-50)}.teacher-subject-suggestions small,.teacher-subject-auto-note{color:var(--fg-muted);font-size:var(--fg-text-xs)}.teacher-subject-auto-note{grid-column:1/-1;line-height:1.45}.admin-class-manager{gap:24px;max-width:1180px;margin:0 auto;display:grid}.admin-class-manager-current,.admin-class-manager-available{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);gap:14px;padding:20px;display:grid}.admin-class-option-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.admin-class-option-list>label{border:1px solid var(--fg-line);background:var(--fg-paper-deep);cursor:pointer;border-radius:10px;grid-template-columns:19px 38px minmax(0,1fr) 20px;align-items:center;gap:10px;min-width:0;padding:12px;display:grid}.admin-class-option-list>label.selected{border-color:color-mix(in srgb, var(--fg-teal-600) 55%, var(--fg-line));background:var(--fg-teal-50)}.admin-class-option-list input{width:17px;height:17px;accent-color:var(--fg-teal-700)}.admin-class-option-list .people-avatar{width:38px;height:38px}.admin-class-option-list label>span:nth-of-type(2){gap:3px;min-width:0;display:grid}.admin-class-option-list strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.admin-class-option-list small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-class-option-list i{color:var(--fg-teal-700);font-style:normal;font-weight:900}.admin-class-manager-actions{border-top:1px solid var(--fg-line);background:var(--fg-canvas);justify-content:flex-end;gap:9px;padding:14px 0 0;display:flex;position:sticky;bottom:-26px}@media (width<=980px){.student-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-class-layout,.admin-class-option-list{grid-template-columns:1fr}}@media (width<=620px){.student-invitation-code-row,.student-class-code-row{flex-direction:column;align-items:stretch}.student-invitation-code-row .button,.student-class-code-row .button{width:100%}.student-invitation-subjects>div,.student-class-grid{grid-template-columns:1fr}.student-class-card{grid-template-columns:42px minmax(0,1fr)}.student-class-card>.status-pill{grid-column:2;justify-self:start}.student-class-request-list>article,.admin-current-class-list>article{grid-template-columns:38px minmax(0,1fr) auto}.student-class-request-list>article>.button{grid-column:1/-1;width:100%}.teacher-join-request-card{grid-template-columns:40px minmax(0,1fr)}.teacher-join-request-actions{grid-column:1/-1}.teacher-join-request-actions .button{flex:1}.admin-class-option-list>label{grid-template-columns:18px 34px minmax(0,1fr) 18px;padding:10px}.admin-class-option-list .people-avatar{width:34px;height:34px}.admin-class-manager-current,.admin-class-manager-available{padding:15px}.admin-class-manager-actions{flex-direction:column-reverse}.admin-class-manager-actions .button{width:100%}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:translateY(7px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1280px){.portal-shell{--sidebar-expanded-width:235px;--sidebar-expanded-padding:14px}.teacher-assessment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.answer-key-grid{grid-template-columns:repeat(8,minmax(58px,1fr))}.workflow-status{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1080px){.auth-layout{grid-template-columns:minmax(330px,.8fr) minmax(480px,1.2fr)}.auth-story{padding:40px}.story-copy h1{font-size:var(--fg-text-hero)}.channel-list{grid-template-columns:1fr}.channel-list article:nth-child(2){display:none}.metric-grid.four,.assessment-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.paper-workspace{grid-template-columns:minmax(270px,.8fr) minmax(400px,1.2fr)}.admin-overview-grid{grid-template-columns:1fr}.audit-filter-form{grid-template-columns:repeat(2,minmax(150px,1fr))}.audit-filter-actions{justify-content:flex-end}.teacher-account-grid{grid-template-columns:1fr}.teacher-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-subject-request-form{grid-template-columns:1fr}.roster-toolbar{grid-template-columns:repeat(2,minmax(150px,1fr))}.roster-removed-toggle{grid-column:1/-1}.teacher-group-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=860px){.portal-shell{--portal-header-height:64px;display:block}.sidebar,.portal-brand-lockup,.sidebar-collapse-toggle{display:none}.portal-topbar{height:var(--portal-header-height);justify-content:space-between;padding:0 18px;display:flex}.topbar-right{flex:none;gap:12px;width:auto;margin-left:auto}.question-section-block>header{top:64px}.mobile-brand{color:var(--fg-ink);align-items:center;gap:9px;display:flex}.mobile-brand .brand-mark{width:32px;height:32px;font-size:var(--fg-text-lg)}.mobile-brand strong{font-family:var(--fg-display);font-size:var(--fg-text-md)}.context-pill{margin:0}.topbar-teacher-code>span,.topbar-user>span:first-child{display:none}.topbar-user .workspace-avatar{width:34px;height:34px}.portal-content{padding:29px 20px 98px}.mobile-navigation{z-index:30;overscroll-behavior-x:contain;scroll-snap-type:x proximity;min-height:67px;padding:7px max(7px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px, env(safe-area-inset-left));border-top:1px solid var(--fg-line);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffdfaf5;grid-auto-columns:minmax(70px,1fr);grid-auto-flow:column;display:grid;position:fixed;inset:auto 0 0;overflow-x:auto;box-shadow:0 -10px 30px #152d3414}.mobile-navigation button{color:#839194;cursor:pointer;scroll-snap-align:center;background:0 0;border:0;border-radius:9px;place-content:center;justify-items:center;gap:4px;min-width:0;min-height:52px;padding:4px;display:grid}.mobile-navigation button.active{color:var(--fg-teal-800);background:var(--fg-teal-50)}.mobile-navigation button>span{font-size:var(--fg-text-md);line-height:1}.mobile-navigation button>small{max-width:74px;font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.dashboard-split,.paper-workspace{grid-template-columns:1fr}.paper-controls{border-right:0;border-bottom:1px solid var(--fg-line)}.paper-preview{min-height:670px}.admin-subject-layout{grid-template-columns:1fr}}@media (width<=760px){:root{--fg-card-gap:16px;--fg-row-gap:10px}.auth-layout{min-height:100vh;display:block;overflow:visible}.auth-story{min-height:auto;padding:24px 22px 30px}.auth-brand .brand-mark{width:35px;height:35px;font-size:var(--fg-text-xl)}.auth-brand strong{font-size:var(--fg-text-lg)}.story-copy{margin:48px 0 0}.story-copy h1{font-size:var(--fg-text-3xl);margin-bottom:14px}.story-copy>p:last-child{font-size:var(--fg-text-md);line-height:1.55}.channel-list,.local-note{display:none}.auth-form-side{padding:20px 14px 38px;display:block;overflow:visible}.auth-card{box-shadow:var(--fg-shadow-sm);border-radius:15px;margin:0 auto}.cloud-auth-card{width:100%;min-width:0;max-width:100%}.cloud-auth-card .auth-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.cloud-auth-card .auth-tabs button{min-width:0;padding-inline:6px}.auth-form{padding:26px 20px}.cloud-onboarding-heading{display:grid}.cloud-inline-loading{min-height:300px}.demo-student-picker-backdrop{padding:10px}.confirmation-dialog.demo-student-picker-dialog{max-height:calc(100dvh - 20px)}.demo-student-picker-heading{padding:23px 58px 17px 19px}.demo-student-picker-heading>span{display:none}.demo-student-picker-toolbar{grid-template-columns:1fr;padding:15px 17px 11px}.demo-student-random{width:100%}.demo-student-group-filters{padding-inline:17px}.confirmation-dialog>.demo-student-picker-results:last-child{grid-template-columns:1fr;padding:0 17px 17px}.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three .span-two{grid-column:1/-1}.split-heading{flex-direction:column;align-items:flex-start;gap:17px}.term-card{width:100%}.student-metrics,.metric-grid,.metric-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-card-grid,.teacher-assessment-grid,.teacher-class-grid,.assessment-schedule-grid,.schedule-dialog-fields{grid-template-columns:1fr}.runner-heading{align-items:flex-start}.runner-instructions{flex-direction:column;align-items:flex-start}.runner-instruction-copy{text-align:left}.result-table-toolbar{flex-wrap:wrap}.result-table-search{flex:100%}.managed-table-mobile-sort{flex:230px;min-width:min(230px,100%);display:grid}.feedback-table,.teacher-results-table{min-width:0;display:block}.feedback-table thead{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.feedback-table tbody{display:grid}.feedback-table tbody>tr{border-bottom:1px solid #e8ece9;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;padding:16px;display:grid}.feedback-table tbody>tr>td{border:0;align-content:start;gap:5px;min-width:0;padding:0;display:grid}.feedback-table tbody>tr>td:before{content:attr(data-label);color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:850}.student-history-table td[data-column-id=assessment],.teacher-results-table td[data-column-id=student],.teacher-results-table td[data-column-id=assessment],.feedback-table td[data-column-id=extension]{grid-column:1/-1}.feedback-table .friendly-date-time{white-space:normal;min-width:0}.feedback-table .comment-review-button{justify-content:center;width:100%}.student-result-review-action{justify-items:stretch}.student-result-review-action>small{text-align:center}.feedback-detail-row,.feedback-detail-row>td{width:100%;display:block}.feedback-detail-row:not(.teacher-feedback-editor-row) .feedback-detail-grid{padding:16px}.feedback-detail-row.student-answer-review-row .review-feedback-grid{padding:0}.feedback-detail-grid{grid-template-columns:1fr}.submitted-sheet-header{flex-direction:column;align-items:stretch;gap:16px;padding:20px}.submitted-sheet-score{justify-items:start;min-width:0}.answer-review-summary{padding:16px 20px 0}.answer-review-guide{flex-direction:column;align-items:flex-start;padding-inline:20px}.answer-review-guide>p{text-align:left;max-width:none}.answer-review-grid{grid-template-columns:1fr;margin:0 20px 20px}.answer-review-column:first-child:not(:last-child){border-right:0}.answer-review-column:not(:last-child) .answer-review-question:last-child{border-bottom:1px solid #e8ece9}.submitted-sheet-comments{padding:20px}.submitted-sheet-footer{padding:14px 20px}.teacher-result-review{padding:16px}.builder-section{grid-template-columns:37px minmax(0,1fr);gap:12px;padding:22px 18px}.delivery-options{grid-template-columns:1fr}.answer-key-grid{grid-template-columns:repeat(5,minmax(56px,1fr))}.builder-actions{flex-direction:column;align-items:flex-start}.builder-actions .button{justify-content:space-between;width:100%}.workflow-status{grid-template-columns:1fr}.profile-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.people-toolbar{grid-template-columns:1fr}.filter-tabs{width:100%;overflow-x:auto}.filter-tabs button{flex:1 0 auto}.result-count{padding:2px 3px}.people-card{grid-template-columns:40px minmax(0,1fr) auto}.people-card .person-actions{border-top:1px solid #e8ece9;grid-column:1/-1;justify-content:flex-start;padding-top:8px}.group-management{flex:100%}.group-management label{flex:1}.group-management select{width:100%}.subject-request-card{grid-template-columns:42px minmax(0,1fr)}.subject-request-card>time{grid-column:2}.subject-request-actions{grid-column:1/-1}.subject-request-actions .button{flex:1}.digital-answer-grid{grid-template-columns:1fr}.digital-answer-column:first-child{border-right:0}.digital-answer-column:not(:last-child) fieldset:last-child{border-bottom:1px solid #e8ece9}.audit-heading-actions{justify-content:space-between;width:100%}.audit-filter-field:nth-child(3),.audit-filter-actions{grid-column:1/-1}.audit-table{table-layout:auto;min-width:0}.audit-table thead{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.audit-table,.audit-table tbody,.audit-table tr,.audit-table td{width:100%;display:block}.audit-table tr{border-bottom:1px solid var(--fg-line);padding:12px 15px}.audit-table tbody tr:last-child{border-bottom:0}.audit-table td{border:0;grid-template-columns:92px minmax(0,1fr);align-items:start;gap:12px;padding:6px 0;display:grid}.audit-table td:before{content:attr(data-label);color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.055em;text-transform:uppercase;padding-top:3px;font-weight:850}.roster-toolbar{grid-template-columns:1fr;margin-block:24px 30px;padding:15px}.roster-removed-toggle{grid-column:auto}.roster-table-wrap{overflow:visible}.roster-table{min-width:0;display:block}.roster-table thead{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.roster-table tbody{display:grid}.roster-table tbody tr{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;padding:17px;display:grid}.roster-table tbody tr+tr{border-top:1px solid var(--fg-line)}.roster-table td,.roster-table td:first-child,.roster-table td:nth-child(5){border:0;align-content:start;gap:5px;min-width:0;padding:0;display:grid}.roster-table td:before{content:attr(data-label);color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:850}.roster-table:not(.managed-data-table) td:first-child,.roster-table:not(.managed-data-table) td:nth-child(5),.roster-table:not(.managed-data-table) td:last-child,.roster-table.managed-data-table td[data-sticky=true],.roster-table.managed-data-table td[data-mobile-wide=true]{grid-column:1/-1}.roster-table .roster-action-cell{text-align:left}.roster-table .roster-action-cell .button{width:100%}.teacher-code-display{flex-direction:column;align-items:stretch}.teacher-code-display .button{width:100%}.teacher-subject-row{grid-template-columns:38px minmax(0,1fr) auto}.teacher-subject-row>.status-pill{grid-column:2;justify-self:start}.teacher-subject-row>.button,.teacher-subject-unavailable{text-align:center;grid-column:1/-1;width:100%;max-width:none}.teacher-subject-add{grid-template-columns:1fr}.teacher-subject-add .button{width:100%}.teacher-subject-request-row{grid-template-columns:38px minmax(0,1fr) auto}.teacher-subject-request-row>.button{grid-column:1/-1;width:100%}.feedback-table.managed-data-table .table-column-header,.roster-table.managed-data-table .table-column-header,.audit-table.managed-data-table .table-column-header{display:none}.feedback-table.managed-data-table [data-sticky=true],.roster-table.managed-data-table [data-sticky=true],.audit-table.managed-data-table [data-sticky=true]{box-shadow:none;position:static}.managed-data-table td[data-mobile-wide=true]{grid-column:1/-1}}@media (width<=540px){:root{--fg-card-gap:14px}.portal-topbar{gap:9px;padding-inline:13px}.mobile-brand strong{display:none}.context-pill{gap:6px;padding:7px 8px}.context-pill small{padding-left:6px}.role-teacher .context-pill{display:none}.topbar-teacher-code{margin-left:auto;padding-inline:9px}.portal-content{padding:25px 14px 92px}.page-heading{margin-bottom:24px}.page-heading h1,.runner-heading h1{font-size:var(--fg-text-3xl)}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.form-field.span-two,.form-grid.three .span-two{grid-column:auto}.role-selector>div,.subject-choice-grid{grid-template-columns:1fr}.teacher-group-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-class-selection legend{flex-direction:column;align-items:flex-start;gap:3px}.auth-form{padding-inline:17px}.demo-student-picker-backdrop{padding:0}.confirmation-dialog.demo-student-picker-dialog{border:0;border-radius:0;width:100%;min-height:100dvh;max-height:100dvh}.demo-student-picker-heading{padding-left:16px}.demo-student-picker-notice{flex-direction:column;align-items:flex-start;margin-inline:16px}.demo-student-picker-toolbar,.demo-student-group-filters,.confirmation-dialog>.demo-student-picker-results:last-child{padding-inline:16px}.student-metrics,.metric-grid,.metric-grid.four{grid-template-columns:1fr}.metric-grid article,.metric-grid .metric-card{padding:14px}.classes-page-summary{grid-template-columns:1fr 1fr;display:grid}.classes-page-summary>span{flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.class-detail-panel{padding:15px 13px}.section-heading{flex-direction:column;align-items:flex-start;gap:6px}.section-heading>.text-button{align-self:flex-start}.result-banner{align-items:flex-start}.assessment-card,.teacher-assessment-card,.panel-card{padding:17px}.profile-card{grid-template-columns:48px 1fr;padding:19px}.profile-monogram{border-radius:14px;width:48px;height:48px}.profile-card dl{grid-template-columns:1fr}.runner-heading{flex-direction:column;gap:13px}.answer-progress{grid-template-columns:auto auto;justify-content:center;align-items:baseline;width:100%}.digital-answer-grid{padding:6px 10px}.digital-answer-grid fieldset{grid-template-columns:31px repeat(5,minmax(32px,1fr));gap:5px;padding:10px 4px}.digital-answer-grid label{justify-self:center;width:32px;min-width:32px;height:32px}.runner-footer{flex-direction:column;align-items:stretch}.runner-footer .button{justify-content:space-between;width:100%}.submission-comment-panel{padding:18px 14px}.submission-comment-heading{align-items:flex-start}.student-review-error{flex-direction:column;align-items:stretch}.pending-answer-review{padding:18px 16px 0}.review-release-notice{flex-wrap:wrap}.review-release-notice>.button{width:100%}.pending-answer-review .submitted-sheet-footer{margin:18px -16px 0}.submitted-sheet-header{padding:18px 16px}.submitted-sheet-header h2{font-size:var(--fg-text-xl)}.answer-review-summary{gap:6px;padding:14px 16px 0}.answer-review-summary article{flex-direction:column;align-items:flex-start;gap:7px;padding:10px}.answer-review-guide{padding:14px 16px}.answer-review-grid{margin:0 16px 16px}.answer-review-question{grid-template-columns:58px minmax(0,1fr);gap:5px;padding:8px 7px}.answer-review-question-number{grid-template-columns:21px minmax(0,1fr);gap:4px}.answer-review-options{gap:2px}.review-option{width:30px;height:30px}.submitted-sheet-comments{padding:18px 16px}.submitted-sheet-section-heading{align-items:flex-start}.submitted-sheet-footer{padding:13px 16px}.submitted-sheet-footer .button{width:100%}.teacher-comment-actions{flex-direction:column-reverse}.teacher-comment-actions .button{width:100%}.builder-section{display:block}.builder-section-number{margin-bottom:16px}.delivery-options>button{grid-template-columns:38px 1fr 21px;padding:13px}.delivery-icon{width:38px;height:38px}.date-time-trigger{grid-template-columns:40px minmax(0,1fr) 24px;gap:10px;padding:11px}.date-time-trigger.has-info{grid-template-columns:40px minmax(0,1fr) 68px}.date-time-trigger-icon{border-radius:11px;width:40px;height:40px}.date-time-trigger-copy strong{font-size:var(--fg-text-sm)}.date-time-info{right:41px}.date-time-info-button{width:36px;height:36px}.date-time-info-tooltip{width:min(285px,100vw - 40px);right:-41px}.date-time-popover{width:min(360px,100vw - 40px)}.date-time-clock{grid-template-columns:minmax(78px,1fr) auto minmax(78px,1fr)}.date-time-period{grid-column:1/-1;grid-template-columns:repeat(2,1fr)}.answer-key-grid{grid-template-columns:repeat(3,minmax(64px,1fr))}.flow-callout{justify-content:flex-start;overflow-x:auto}.flow-callout>*{flex:none}.paper-preview{min-height:520px;padding:14px}.paper-preview-toolbar{flex-direction:column;align-items:flex-start;margin:-14px -14px 14px;padding:12px 14px}.paper-preview-toolbar>div{width:100%}.paper-preview-toolbar button,.paper-preview-toolbar a{flex:1;justify-content:center}.paper-preview iframe{min-height:500px}.scan-dropzone{min-height:320px;padding:30px 18px}.people-toolbar{align-items:stretch}.people-toolbar input{width:100%}.people-card{grid-template-columns:40px minmax(0,1fr)}.people-card>.status-pill,.people-card>.role-pill{justify-self:start}.person-actions{flex-wrap:wrap}.admin-card-heading{flex-direction:column;gap:10px}.admin-card-heading .text-button{align-self:flex-start}.catalog-summary{width:100%;min-width:0}.system-facts{grid-template-columns:1fr}.approval-list>div{grid-template-columns:38px minmax(0,1fr)}.approval-list>div>.button{grid-column:2;justify-self:start}.subject-card{grid-template-columns:38px minmax(0,1fr);align-items:center}.subject-symbol{width:38px;height:38px}.subject-card>.status-pill,.subject-card>.button{grid-column:2;justify-self:start}.group-management{flex-direction:column;align-items:stretch}.person-actions.student-management-actions{align-items:stretch}.person-actions>.button{width:100%}.protected-account{white-space:normal}.confirmation-dialog>div:last-child,.confirmation-dialog .dialog-actions{flex-direction:column-reverse}.confirmation-dialog .button{width:100%}.teacher-subject-heading{flex-direction:column;align-items:flex-start}.teacher-subject-dialog .student-removal-summary{grid-template-columns:1fr}.online-person-row{grid-template-columns:38px minmax(0,1fr);padding:12px}.online-person-row .people-avatar{width:38px;height:38px}.online-person-row .presence-pill{grid-column:2;justify-self:start}.assessment-management-actions .button{flex-basis:100%}.audit-filter-form{grid-template-columns:1fr}.audit-filter-field:nth-child(3),.audit-filter-actions{grid-column:auto}.audit-filter-actions{flex-direction:column;align-items:stretch}.audit-filter-actions .button{width:100%}.audit-table td{grid-template-columns:78px minmax(0,1fr);gap:9px}.audit-pagination{justify-content:space-between;gap:7px;padding-inline:11px}.audit-pagination .button{padding-inline:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.mixed-builder-page{padding-bottom:86px}.builder-loading{min-height:360px;color:var(--fg-ink-soft);place-content:center;justify-items:center;gap:14px;display:grid}.builder-loading>span{border:3px solid var(--fg-teal-100);border-top-color:var(--fg-teal-700);border-radius:50%;width:30px;height:30px;animation:.7s linear infinite spin}.mixed-builder{overflow:visible}.mixed-builder.is-locked input,.mixed-builder.is-locked textarea,.mixed-builder.is-locked select{background:#f3f3ef}.builder-lock-notice{border-radius:var(--fg-radius-md);background:#f7f2fa;border:1px solid #d9c8e5;align-items:flex-start;gap:14px;margin-bottom:18px;padding:16px 18px;display:flex}.builder-lock-notice>span{width:34px;height:34px;color:var(--fg-purple-700);background:var(--fg-purple-100);border-radius:10px;flex:none;place-items:center;display:grid}.builder-lock-notice strong{margin-bottom:4px;display:block}.builder-lock-notice p{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);margin:0;line-height:1.55}.compact-delivery-options{margin-top:18px}.assessment-class-picker{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper-deep);gap:14px;min-width:0;margin:18px 0 0;padding:16px;display:grid}.assessment-class-picker-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.assessment-class-picker-heading strong{font-size:var(--fg-text-md);display:block}.assessment-class-picker-heading p{color:var(--fg-muted);font-size:var(--fg-text-sm);margin:4px 0 0;line-height:1.45}.assessment-class-options{gap:var(--fg-row-gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.assessment-class-options label{border:1px solid var(--fg-line-strong);border-radius:var(--fg-radius-sm);background:var(--fg-white);cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;min-height:72px;padding:12px 14px;transition:border-color .15s,box-shadow .15s,background .15s;display:grid}.assessment-class-options label:hover{border-color:var(--fg-teal-600)}.assessment-class-options label.selected{border-color:var(--fg-teal-600);background:var(--fg-teal-50);box-shadow:inset 0 0 0 1px var(--fg-teal-600)}.assessment-class-options label.archived{color:var(--fg-muted);background:#f4f3ef;border-style:dashed}.assessment-class-options input{opacity:0;pointer-events:none;position:absolute}.assessment-class-options span{gap:3px;min-width:0;display:grid}.assessment-class-options strong{font-family:var(--fg-display);font-size:var(--fg-text-lg)}.assessment-class-options small{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.35}.assessment-class-options i{border:1px solid var(--fg-line-strong);width:25px;height:25px;color:var(--fg-white);background:var(--fg-white);border-radius:50%;place-items:center;font-style:normal;font-weight:900;display:grid}.assessment-class-options label.selected i{border-color:var(--fg-teal-700);background:var(--fg-teal-700)}.assessment-class-options label:focus-within{outline:3px solid color-mix(in srgb, var(--fg-teal-600) 30%, transparent);outline-offset:2px}.assessment-class-summary{color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0}.assessment-class-summary strong{color:var(--fg-ink)}.inline-warning{border:1px solid var(--fg-amber-200);border-radius:var(--fg-radius-sm);color:#75501f;font-size:var(--fg-text-sm);background:#fff9eb;align-items:flex-start;gap:8px 14px;margin-top:14px;padding:13px 15px;line-height:1.5;display:flex}.publication-choice{gap:var(--fg-row-gap);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px;display:grid}.publication-choice>button{border:1px solid var(--fg-line-strong);border-radius:var(--fg-radius-md);min-width:0;min-height:78px;color:var(--fg-ink);text-align:left;background:var(--fg-white);cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:4px 10px;padding:15px 17px;display:grid}.publication-choice>button strong{font-size:var(--fg-text-md)}.publication-choice>button small{color:var(--fg-muted);font-size:var(--fg-text-sm);grid-column:1}.publication-choice>button i{color:var(--fg-teal-700);grid-area:1/2/span 2;align-self:center;font-style:normal;font-weight:900}.publication-choice>button.selected{border-color:var(--fg-teal-600);background:var(--fg-teal-50);box-shadow:inset 0 0 0 1px var(--fg-teal-600)}.assessment-schedule-grid.three-dates{grid-template-columns:repeat(3,minmax(0,1fr))}.question-type-grid{gap:var(--fg-card-gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.question-type-tile{border:1px solid var(--fg-line-strong);border-radius:var(--fg-radius-md);background:var(--fg-white);min-width:0;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative;overflow:hidden}.question-type-tile.selected{border-color:var(--fg-teal-600);box-shadow:inset 0 0 0 1px var(--fg-teal-600), var(--fg-shadow-sm)}.question-type-tile>button:first-child{min-height:154px;color:var(--fg-ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-rows:auto auto minmax(32px,auto) auto;justify-items:start;gap:8px;padding:18px 18px 42px;display:grid}.question-type-tile>button:first-child>span{width:38px;height:38px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-size:var(--fg-text-lg);border-radius:11px;place-items:center;font-weight:900;display:grid}.question-type-tile>button:first-child strong{font-size:var(--fg-text-md)}.question-type-tile>button:first-child small{color:var(--fg-muted);font-size:var(--fg-text-sm);line-height:1.45}.question-type-tile>button:first-child i{color:var(--fg-teal-700);font-size:var(--fg-text-xs);letter-spacing:.05em;text-transform:uppercase;font-style:normal;font-weight:850}.question-type-clear{min-height:34px;color:var(--fg-red-700);font-size:var(--fg-text-sm);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 9px;font-weight:850;position:absolute;bottom:8px;right:8px}.question-type-clear:not(:disabled):hover{background:var(--fg-red-100)}.question-builder-toolbar{border-top:1px solid var(--fg-line);justify-content:space-between;align-items:center;gap:18px;margin-top:20px;padding-top:18px;display:flex}.question-builder-toolbar p{justify-items:end;gap:2px;margin:0;display:grid}.question-builder-toolbar p strong{font-size:var(--fg-text-sm)}.question-builder-toolbar p span{color:var(--fg-muted);font-size:var(--fg-text-sm)}.question-builder-tools{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.question-sections{gap:20px;margin-top:20px;display:grid}.question-section-block{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:#fbfcfa;overflow:visible}.question-section-block>header{z-index:11;border-bottom:1px solid var(--fg-line);border-radius:calc(var(--fg-radius-md) - 1px) calc(var(--fg-radius-md) - 1px) 0 0;background:var(--fg-paper-deep);justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:14px 17px;display:flex;position:sticky;top:72px;box-shadow:0 7px 13px #1330380e}.question-section-heading{align-items:center;gap:12px;min-width:0;display:flex}.question-section-heading>span{width:34px;height:34px;color:var(--fg-teal-800);background:var(--fg-teal-100);border-radius:9px;flex:0 0 34px;place-items:center;font-weight:900;display:grid}.question-section-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.section-collapse-button{min-width:104px}.question-section-block.is-collapsed>header{border-radius:calc(var(--fg-radius-md) - 1px);box-shadow:none;border-bottom:0}.question-section-content[hidden]{display:none}.question-section-block h3{font-size:var(--fg-text-md);margin:0 0 3px}.question-section-block header p{color:var(--fg-muted);font-size:var(--fg-text-xs);margin:0}.inline-option-count{border-bottom:1px solid var(--fg-line);color:var(--fg-ink-soft);font-size:var(--fg-text-sm);justify-content:flex-end;align-items:center;gap:10px;padding:11px 17px;font-weight:750;display:flex}.inline-option-count .themed-select{width:min(230px,100%)}.authoring-question-list{gap:14px;padding:16px;display:grid}.authoring-question-card{border:1px solid var(--fg-line);background:var(--fg-white);border-radius:12px;min-width:0;scroll-margin-top:164px;overflow:hidden;box-shadow:0 4px 14px #13303809}.authoring-question-card>header{border-bottom:1px solid var(--fg-line);background:#f7f8f5;justify-content:space-between;align-items:center;gap:14px;padding:11px 14px;display:flex}.authoring-question-card>header>div{align-items:center;gap:8px;display:flex}.authoring-question-card>header span{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.05em;text-transform:uppercase;font-weight:800}.authoring-question-card>header strong{font-size:var(--fg-text-sm)}.authoring-question-card>header button{min-width:32px;min-height:32px;color:var(--fg-ink-soft);font-size:var(--fg-text-sm);cursor:pointer;background:0 0;border:0;border-radius:7px;font-weight:800}.authoring-question-card>header button:not(:disabled):hover{background:var(--fg-white)}.authoring-question-card>header button.danger{color:var(--fg-red-700)}.question-editor-body{gap:16px;padding:17px;display:grid}.question-prompt-input{min-height:88px!important}.field-label,.field-label-row{color:var(--fg-ink);font-size:var(--fg-text-sm);font-weight:800}.field-label small{color:var(--fg-muted);margin-left:6px;font-weight:600}.field-label-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.mc-option-editor,.accepted-answer-editor,.rubric-editor,.matching-pair-editor{gap:9px;display:grid}.mc-author-option{border:1px solid var(--fg-line);background:#fcfcfa;border-radius:9px;grid-template-columns:18px 30px minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:7px 9px;display:grid}.mc-author-option.selected{background:var(--fg-teal-50);border-color:#a8d0c7}.mc-author-option>b{width:28px;height:28px;color:var(--fg-teal-800);font-size:var(--fg-text-sm);background:var(--fg-white);border:1px solid #bad0ca;border-radius:50%;place-items:center;display:grid}.mc-author-option>input[type=text],.mc-author-option>input:not([type]){border:1px solid var(--fg-line);background:var(--fg-white);border-radius:7px;min-width:0;min-height:38px;padding:0 11px}.true-false-key{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;display:grid}.true-false-key legend{color:var(--fg-ink);font-size:var(--fg-text-sm);grid-column:1/-1;margin-bottom:1px;font-weight:800}.true-false-key label{border:1px solid var(--fg-line);cursor:pointer;background:#fcfcfa;border-radius:10px;grid-template-columns:18px 36px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;min-height:62px;padding:10px 13px;display:grid}.true-false-key label.selected{background:var(--fg-teal-50);box-shadow:inset 0 0 0 1px var(--fg-teal-600);border-color:#a8d0c7}.true-false-key label>span{width:34px;height:34px;color:var(--fg-teal-800);background:var(--fg-white);font-size:var(--fg-text-sm);border:1px solid #bad0ca;border-radius:50%;place-items:center;font-weight:900;display:grid}.true-false-key label strong{font-size:var(--fg-text-md)}.true-false-key label i{color:var(--fg-teal-700);font-size:var(--fg-text-xs);font-style:normal;font-weight:850}.question-settings-row{align-items:end;gap:14px;display:flex}.compact-number-field{flex:0 0 138px;width:138px}.question-settings-row .grow{flex:1}.accepted-answer-editor>label{grid-template-columns:25px minmax(0,1fr) 32px;align-items:center;gap:8px;min-width:0;display:grid}.accepted-answer-editor>label>span{width:25px;height:25px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-size:var(--fg-text-xs);border-radius:50%;place-items:center;font-weight:850;display:grid}.accepted-answer-editor input,.rubric-row input,.matching-author-row input{border:1px solid var(--fg-line-strong);min-width:0;min-height:40px;color:var(--fg-ink);background:var(--fg-white);border-radius:8px;padding:0 11px}.accepted-answer-editor label button,.rubric-row button,.matching-author-row button{width:32px;height:32px;color:var(--fg-red-700);cursor:pointer;background:0 0;border:0;border-radius:7px}.check-setting{border:1px solid var(--fg-line);border-radius:9px;align-items:center;gap:10px;min-height:56px;padding:9px 12px;display:flex}.check-setting>span{gap:2px;display:grid}.check-setting strong{font-size:var(--fg-text-sm)}.check-setting small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.private-answer-field textarea{min-height:105px}.rubric-row{grid-template-columns:minmax(0,1fr) 86px 32px;gap:8px;min-width:0;display:grid}.matching-author-head{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase;grid-template-columns:1fr 1fr;gap:50px;padding-left:37px;font-weight:850;display:grid}.matching-author-row{grid-template-columns:27px minmax(0,1fr) 20px minmax(0,1fr) 32px;align-items:center;gap:8px;min-width:0;display:grid}.matching-author-row>span{width:27px;height:27px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-size:var(--fg-text-xs);border-radius:8px;place-items:center;font-weight:850;display:grid}.matching-author-row>i{color:var(--fg-teal-700);text-align:center;font-style:normal}.section-empty{border:1px dashed var(--fg-line-strong);border-radius:9px;justify-content:space-between;align-items:center;gap:15px;padding:14px;display:flex}.section-empty p{color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0}.question-section-add-footer{border:1px dashed var(--fg-line-strong);background:var(--fg-paper-deep);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.question-section-add-footer>span{color:var(--fg-muted);font-size:var(--fg-text-sm);font-weight:700;line-height:1.45}.question-empty-state{margin-top:0}.ai-import-panel{border-radius:var(--fg-radius-md);background:#faf7fc;border:1px solid #d7cee2;gap:15px;margin-top:20px;padding:20px;display:grid}.ai-import-panel>header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.ai-import-panel h3{font-size:var(--fg-text-md);margin:0 0 5px}.ai-import-panel header p:last-child{max-width:680px;color:var(--fg-ink-soft);font-size:var(--fg-text-sm);margin:0;line-height:1.55}.ai-paste-area{min-height:180px!important;font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;font-size:var(--fg-text-md)!important;line-height:1.5!important}.ai-import-actions{justify-content:flex-end;display:flex}.ai-scope-card{background:#ffffffb8;border:1px solid #cfc3dc;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.ai-scope-card.is-stale{border-color:var(--fg-amber-200);background:#fffaf0}.ai-scope-card>div{gap:7px;display:grid}.ai-scope-card>div>strong{font-size:var(--fg-text-sm)}.ai-scope-card small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.ai-scope-chips{flex-wrap:wrap;gap:6px;display:flex}.ai-scope-chips span{color:var(--fg-purple-700);font-size:var(--fg-text-xs);background:#eee6f5;border-radius:999px;padding:5px 8px;font-weight:800}.ai-preview-status{border:1px solid var(--fg-line);font-size:var(--fg-text-sm);background:var(--fg-white);border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.ai-preview-status.ready{color:var(--fg-green-700);background:#f2faf6;border-color:#acd3c4}.ai-preview-status.needs_review{border-color:var(--fg-amber-200);color:var(--fg-amber-700);background:#fffaf0}.ai-preview-status.cannot_import{color:var(--fg-red-700);background:#fff7f5;border-color:#e6bbb2}.import-issue{border-left:3px solid var(--fg-amber-500);color:var(--fg-ink-soft);font-size:var(--fg-text-sm);background:#ffffffb3;grid-template-columns:minmax(110px,.25fr) minmax(0,1fr);gap:12px;padding:9px 12px;display:grid}.ai-question-preview{gap:10px;display:grid}.ai-preview-toolbar{background:var(--fg-white);border-radius:9px;flex-wrap:wrap;align-items:center;gap:16px 20px;padding:10px 12px;display:flex}.ai-preview-toolbar label{font-size:var(--fg-text-sm);align-items:center;gap:7px;font-weight:750;display:flex}.ai-preview-toolbar small{width:100%;color:var(--fg-muted);font-size:var(--fg-text-xs)}.ai-unexpected-list{border:1px solid var(--fg-amber-200);background:#fffaf0;border-radius:10px;gap:9px;padding:13px;display:grid}.ai-unexpected-list>strong{font-size:var(--fg-text-sm)}.ai-unexpected-list article{border-top:1px solid #7a561f29;justify-content:space-between;align-items:center;gap:14px;padding-top:9px;display:flex}.ai-unexpected-list article>div{align-items:center;gap:9px;display:flex}.ai-unexpected-list article>div:first-child>span{width:32px;height:32px;color:var(--fg-purple-700);background:#eee6f5;border-radius:8px;place-items:center;font-weight:900;display:grid}.ai-unexpected-list p{gap:2px;margin:0;display:grid}.ai-unexpected-list p strong{font-size:var(--fg-text-sm)}.ai-unexpected-list p small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.ai-question-preview>article{border:1px solid var(--fg-line);background:var(--fg-white);border-radius:9px;grid-template-columns:76px minmax(0,1fr);gap:12px;min-width:0;padding:12px;display:grid}.ai-question-preview>article.is-skipped{opacity:.58;background:#f4f3f1}.ai-question-preview article>div{gap:7px;display:grid}.ai-question-preview article>div>span{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:850}.ai-question-preview textarea{border:1px solid var(--fg-line);resize:vertical;border-radius:7px;min-height:60px;padding:9px 10px}.import-select{font-size:var(--fg-text-sm);align-self:start;align-items:center;gap:7px;font-weight:800;display:flex}.ai-question-preview>.button{justify-self:end;margin-top:6px}.builder-review-grid{gap:var(--fg-card-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.builder-review-grid article{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper-deep);gap:5px;min-width:0;padding:16px;display:grid}.builder-review-grid span{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:850}.builder-review-grid strong{font-family:var(--fg-display);font-size:var(--fg-text-2xl)}.builder-review-grid small{color:var(--fg-ink-soft);font-size:var(--fg-text-xs);overflow-wrap:anywhere;line-height:1.45}.builder-validation-summary{margin-top:var(--fg-card-gap);border:1px solid var(--fg-teal-200);border-radius:var(--fg-radius-md);background:var(--fg-teal-50);gap:12px;padding:15px 16px;display:grid}.builder-validation-summary.has-issues{border-color:var(--fg-amber-200);background:#fff9eb}.builder-validation-summary>div{gap:4px;display:grid}.builder-validation-summary>div>strong{font-size:var(--fg-text-sm)}.builder-validation-summary>div>span{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);line-height:1.5}.builder-validation-summary ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.builder-validation-summary li{border-top:1px solid #7a561f26;justify-content:space-between;align-items:center;gap:12px;padding-top:7px;display:flex}.builder-validation-summary li>span{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);gap:2px;line-height:1.4;display:grid}.builder-validation-summary li b{color:var(--fg-ink);font-size:var(--fg-text-xs);letter-spacing:.05em;text-transform:uppercase}.builder-validation-summary li .text-button{font-size:var(--fg-text-sm);flex:none}.builder-conflict-actions{border:1px solid var(--fg-red-200);border-radius:var(--fg-radius-md);background:var(--fg-red-50);justify-content:flex-end;align-items:center;gap:10px;margin:0 0 14px;padding:12px 14px;display:flex}.builder-conflict-actions.subtle{border-color:var(--fg-amber-200);background:#fff9eb;justify-content:space-between}.builder-conflict-actions>span{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);font-weight:700}.builder-sticky-actions{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdfaf5;border:1px solid #cbd5d1e6;border-radius:13px;justify-content:space-between;align-items:center;gap:20px;margin:18px;padding:13px 15px;display:flex;position:sticky;bottom:14px;box-shadow:0 14px 40px #0a262e26}.builder-save-status{gap:3px;min-width:150px;display:grid}.builder-save-status strong{font-size:var(--fg-text-sm)}.builder-save-status span{color:var(--fg-muted);font-size:var(--fg-text-xs)}.builder-footer-workflow{flex:none;gap:4px;display:grid}.builder-footer-workflow>span{max-width:330px;color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-weight:850;overflow:hidden}.builder-footer-workflow-options{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:10px;gap:3px;padding:3px;display:flex}.builder-footer-workflow-options button{min-width:0;min-height:44px;color:var(--fg-ink-soft);font-size:var(--fg-text-sm);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-weight:850;display:inline-flex}.builder-footer-workflow-options button:hover:not(:disabled){color:var(--fg-teal-800);background:var(--fg-white)}.builder-footer-workflow-options button.selected{color:var(--fg-teal-800);background:var(--fg-white);box-shadow:0 1px 5px #0d2d371f}.builder-footer-workflow-options button i{width:12px;color:var(--fg-teal-700);font-style:normal;font-weight:900}.builder-footer-workflow-options button:disabled{cursor:not-allowed;opacity:.5}.builder-action-buttons{justify-content:flex-end;align-items:center;gap:9px;display:flex}.undo-button{text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.mixed-runner-layout{align-items:start;gap:var(--fg-card-gap);grid-template-columns:220px minmax(0,1fr);display:grid}.question-navigator{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);gap:14px;padding:16px;display:grid;position:sticky;top:92px}.question-navigator>div:first-child{gap:3px;display:grid}.question-navigator strong{font-size:var(--fg-text-sm)}.question-navigator small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.question-palette{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.question-palette button{aspect-ratio:1;border:1px solid var(--fg-line-strong);min-width:0;color:var(--fg-ink-soft);background:var(--fg-white);font-size:var(--fg-text-sm);cursor:pointer;border-radius:7px;font-weight:850}.question-palette button.answered{color:var(--fg-green-700);background:var(--fg-green-100);border-color:#a8cfbf}.question-palette button.current{outline:2px solid var(--fg-teal-700);outline-offset:2px}.navigator-key{border-top:1px solid var(--fg-line);color:var(--fg-muted);font-size:var(--fg-text-xs);flex-wrap:wrap;gap:7px 12px;padding-top:10px;display:flex}.navigator-key span{align-items:center;gap:5px;display:inline-flex}.navigator-key i{border:1px solid var(--fg-line-strong);background:var(--fg-white);border-radius:3px;width:8px;height:8px}.navigator-key i.answered{background:var(--fg-green-100);border-color:#a8cfbf}.mixed-question-stage{min-width:0}.student-question-card{gap:24px;min-width:0;padding:30px;display:grid}.student-question-prompt{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-2xl);letter-spacing:-.02em;overflow-wrap:anywhere;text-wrap:balance;margin:0;font-weight:800;line-height:1.18}.student-question-response{min-width:0}.mixed-mc-options{border:0;gap:10px;margin:0;padding:0;display:grid}.mixed-mc-options label{border:1px solid var(--fg-line);background:var(--fg-white);cursor:pointer;border-radius:11px;grid-template-columns:18px 38px minmax(0,1fr);align-items:center;gap:12px;min-width:0;min-height:56px;padding:8px 14px;display:grid}.mixed-mc-options label.selected{border-color:var(--fg-teal-600);background:var(--fg-teal-50);box-shadow:inset 0 0 0 1px var(--fg-teal-600)}.mixed-mc-options label>span{width:36px;height:36px;color:var(--fg-teal-800);background:var(--fg-white);font-size:var(--fg-text-sm);border:2px solid #9fb6b0;border-radius:50%;place-items:center;font-weight:900;display:grid}.mixed-mc-options label.selected>span{color:var(--fg-white);border-color:var(--fg-teal-700);background:var(--fg-teal-700)}.mixed-mc-options label strong{min-width:0;font-size:var(--fg-text-md);overflow-wrap:anywhere;line-height:1.45}.true-false-options{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;display:grid}.true-false-options label{border:2px solid var(--fg-line);background:var(--fg-white);cursor:pointer;border-radius:12px;grid-template-columns:18px 42px minmax(0,1fr) 24px;align-items:center;gap:12px;min-width:0;min-height:78px;padding:12px 15px;display:grid}.true-false-options label.selected{border-color:var(--fg-teal-600);background:var(--fg-teal-50);box-shadow:inset 0 0 0 1px var(--fg-teal-600)}.true-false-options label>span{width:40px;height:40px;color:var(--fg-teal-800);background:var(--fg-white);font-size:var(--fg-text-md);border:2px solid #9fb6b0;border-radius:50%;place-items:center;font-weight:900;display:grid}.true-false-options label.selected>span{color:var(--fg-white);border-color:var(--fg-teal-700);background:var(--fg-teal-700)}.true-false-options label strong{font-size:var(--fg-text-lg)}.true-false-options label i{color:var(--fg-teal-700);font-size:var(--fg-text-lg);font-style:normal;font-weight:900}.written-response-field{gap:8px;display:grid}.written-response-field>span{font-size:var(--fg-text-sm);font-weight:850}.written-response-field input,.written-response-field textarea{border:1px solid var(--fg-line-strong);width:100%;min-height:50px;color:var(--fg-ink);background:var(--fg-white);border-radius:10px;padding:12px 14px;line-height:1.55}.written-response-field textarea{resize:vertical;min-height:180px}.written-response-field small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-align:right}.question-stage-actions{align-items:center;gap:12px;padding:0 30px 18px;display:flex}.mixed-question-navigation{border-top:1px solid var(--fg-line);border-bottom:1px solid var(--fg-line);background:var(--fg-paper-deep);justify-content:space-between;align-items:center;gap:12px;padding:15px 20px;display:flex}.mixed-question-navigation>span{color:var(--fg-muted);font-size:var(--fg-text-xs);font-weight:800}.matching-response{gap:12px;min-width:0;display:grid}.matching-instructions{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);margin:0;line-height:1.55}.matching-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(64px,11vw,140px);min-width:0;padding:8px 0;display:grid;position:relative}.matching-lines{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.matching-lines path{fill:none;stroke-width:3px;stroke-linecap:round}.matching-lines .drag-preview{stroke-dasharray:5 5;opacity:.72}.matching-left-list,.matching-right-list{z-index:2;align-content:start;gap:10px;min-width:0;display:grid;position:relative}.matching-left-list>strong,.matching-right-list>strong{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase}.matching-left-list article,.matching-right-list article{background:var(--fg-white);border:2px solid #0000;border-radius:12px;min-width:0;min-height:62px;padding:3px;display:grid}.matching-left-list article{grid-template-columns:minmax(0,1fr) auto;gap:6px}.matching-right-list article{grid-template-columns:minmax(0,1fr)}.matching-right-list article .matching-choice{width:100%}.matching-left-list article.selected-for-match{border-color:var(--fg-amber-500);box-shadow:0 0 0 3px #e5b45e2b}.matching-left-list article>label{grid-column:1/-1;display:none}.matching-left-list select{border:1px solid var(--fg-line);width:100%;min-height:38px;color:var(--fg-ink-soft);font-size:var(--fg-text-md);background:#fafaf7;border-radius:8px;padding:0 30px 0 9px}.matching-choice{border:2px solid var(--fg-line);min-width:0;min-height:52px;color:var(--fg-ink);background:var(--fg-white);text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:9px;padding:8px 10px;display:grid}.matching-choice.left{touch-action:pan-y;grid-template-columns:24px minmax(0,1fr) 10px}.matching-choice.right{grid-template-columns:10px minmax(0,1fr) 24px}.matching-choice span{min-width:0;font-size:var(--fg-text-md);overflow-wrap:anywhere;line-height:1.4}.matching-choice i{width:24px;height:24px;color:var(--fg-white);background:var(--fg-navy-800);font-size:var(--fg-text-xs);border-radius:50%;place-items:center;font-style:normal;font-weight:900;display:grid}.matching-choice b{color:#9eaaa8;font-size:var(--fg-text-xs)}.matching-choice.left b{justify-self:end}.clear-match{min-height:32px;color:var(--fg-red-700);font-size:var(--fg-text-sm);cursor:pointer;background:0 0;border:0;border-radius:7px;align-self:center;padding:0 7px;font-weight:850}.pair-color-0{stroke:#27766e}.pair-color-border-0{border-color:#27766e!important}.pair-color-1{stroke:#526fa8}.pair-color-border-1{border-color:#526fa8!important}.pair-color-2{stroke:#b06d2d}.pair-color-border-2{border-color:#b06d2d!important}.pair-color-3{stroke:#805f9c}.pair-color-border-3{border-color:#805f9c!important}.pair-color-4{stroke:#b64e62}.pair-color-border-4{border-color:#b64e62!important}.pair-color-5{stroke:#477d3a}.pair-color-border-5{border-color:#477d3a!important}.pair-color-6{stroke:#9a781f}.pair-color-border-6{border-color:#9a781f!important}.pair-color-7{stroke:#477887}.pair-color-border-7{border-color:#477887!important}.pair-color-fill-0{fill:#27766e}.pair-color-fill-1{fill:#526fa8}.pair-color-fill-2{fill:#b06d2d}.pair-color-fill-3{fill:#805f9c}.pair-color-fill-4{fill:#b64e62}.pair-color-fill-5{fill:#477d3a}.pair-color-fill-6{fill:#9a781f}.pair-color-fill-7{fill:#477887}.mobile-matching-instructions{display:none}.answer-review-summary article.pending{color:var(--fg-purple-700);background:var(--fg-purple-100)}.grade-pill.pending{width:auto;color:var(--fg-purple-700);background:var(--fg-purple-100);padding-inline:10px}.mixed-review-question{border-bottom:1px solid var(--fg-line);gap:13px;min-width:0;padding:16px;display:grid}.mixed-review-question>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.mixed-review-question>header span{color:var(--fg-muted);font-size:var(--fg-text-sm);letter-spacing:.06em;text-transform:capitalize;font-weight:850}.mixed-review-question>header strong{font-size:var(--fg-text-sm)}.mixed-review-question.correct>header strong{color:var(--fg-green-700)}.mixed-review-question.incorrect>header strong{color:var(--fg-red-700)}.mixed-review-question.pending>header strong{color:var(--fg-purple-700)}.mixed-review-question>p{color:var(--fg-ink);font-size:var(--fg-text-md);margin:0;font-weight:700;line-height:1.5}.mixed-review-options{gap:6px;display:grid}.mixed-review-options>span{border:1px solid var(--fg-line);min-width:0;color:var(--fg-ink-soft);font-size:var(--fg-text-md);border-radius:8px;grid-template-columns:25px minmax(0,1fr) 20px;align-items:center;gap:8px;padding:7px 9px;display:grid}.mixed-review-options>span b{border:1px solid var(--fg-line-strong);border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.mixed-review-options>span.selected{background:#fff6f4;border-color:#e1afa5}.mixed-review-options>span.correct{background:#f1faf5;border-color:#a9cfbf}.mixed-review-options>span i{color:var(--fg-green-700);font-style:normal;font-weight:900}.review-response-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.review-response-pair>span{border:1px solid var(--fg-line);background:#fafaf7;border-radius:8px;gap:4px;padding:10px;display:grid}.review-response-pair small,.review-written-answer>span{color:var(--fg-muted);font-size:var(--fg-text-sm);letter-spacing:.06em;text-transform:uppercase;font-weight:850}.review-response-pair strong{font-size:var(--fg-text-md);overflow-wrap:anywhere}.review-written-answer{gap:6px;display:grid}.review-written-answer p{border:1px solid var(--fg-line);color:var(--fg-ink-soft);font-size:var(--fg-text-md);white-space:pre-wrap;background:#fafaf7;border-radius:8px;margin:0 0 8px;padding:10px;line-height:1.55}.review-rubric{gap:5px;display:grid}.review-rubric>strong{font-size:var(--fg-text-sm)}.review-rubric>span{background:var(--fg-purple-100);color:var(--fg-purple-700);font-size:var(--fg-text-sm);border-radius:7px;justify-content:space-between;align-items:flex-start;gap:10px;padding:7px 9px;display:flex}.review-matching-pairs{gap:6px;display:grid}.review-matching-pairs>div{border:1px solid var(--fg-line);min-width:0;font-size:var(--fg-text-md);border-radius:8px;grid-template-columns:minmax(0,.8fr) 20px minmax(0,1fr);align-items:center;gap:7px;padding:8px 9px;display:grid}.review-matching-pairs strong{overflow-wrap:anywhere}.review-matching-pairs small{color:var(--fg-green-700);grid-column:3}.mixed-review-question>footer{border-top:1px solid var(--fg-line);justify-content:space-between;align-items:flex-start;gap:12px;padding-top:10px;display:flex}.mixed-review-question>footer strong{font-size:var(--fg-text-sm)}.mixed-review-question>footer span{max-width:70%;color:var(--fg-muted);font-size:var(--fg-text-sm);text-align:right;line-height:1.45}.short-answer-grade-form{background:#faf7fc;border:1px solid #d8cce4;border-radius:9px;grid-template-columns:120px minmax(0,1fr) auto;align-items:end;gap:10px;padding:12px;display:grid}.short-answer-grade-form label{gap:5px;display:grid}.short-answer-grade-form label>span{color:var(--fg-purple-700);font-size:var(--fg-text-sm);font-weight:850}.short-answer-grade-form input,.short-answer-grade-form textarea{min-width:0;min-height:40px;color:var(--fg-ink);background:var(--fg-white);font-size:var(--fg-text-md);border:1px solid #cfbfdc;border-radius:7px;padding:8px 10px}.short-answer-grade-form textarea{resize:vertical;min-height:58px}@media (width<=1080px){.assessment-class-options,.question-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-schedule-grid.three-dates{grid-template-columns:1fr}.builder-sticky-actions{flex-wrap:wrap}.builder-footer-workflow{flex:1 0 100%;order:-1}.builder-footer-workflow>span{max-width:none}.builder-footer-workflow-options{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.mixed-runner-layout{grid-template-columns:180px minmax(0,1fr)}.question-palette{grid-template-columns:repeat(4,1fr)}}@media (width<=860px){.question-section-block>header{top:64px}.builder-sticky-actions{bottom:calc(81px + env(safe-area-inset-bottom))}}@media (width<=760px){.assessment-class-picker-heading{flex-direction:column;align-items:stretch}.assessment-class-picker-heading .button{align-self:flex-start}.assessment-class-options,.class-dialog-options .assessment-class-options,.publication-choice,.builder-review-grid{grid-template-columns:1fr}.question-type-grid{gap:12px}.question-type-tile>button:first-child{min-height:142px}.question-builder-toolbar,.ai-import-panel>header,.builder-sticky-actions{flex-direction:column;align-items:stretch}.question-builder-toolbar p{justify-items:start}.question-builder-tools{width:100%}.ai-scope-card,.ai-unexpected-list article{flex-direction:column;align-items:stretch}.ai-unexpected-list article>div:last-child{flex-wrap:wrap}.builder-action-buttons{flex-wrap:wrap;width:100%}.builder-action-buttons .button{flex:auto}.builder-footer-workflow{width:100%}.builder-footer-workflow-options{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.builder-footer-workflow-options button{padding-inline:8px}.builder-sticky-actions{box-shadow:none;border-width:1px 0 0;border-radius:0;margin:0;position:static}.question-settings-row{flex-direction:column;align-items:stretch}.compact-number-field{flex-basis:auto;width:100%}.matching-author-head{display:none}.matching-author-row{border-bottom:1px solid var(--fg-line);grid-template-columns:27px minmax(0,1fr) 32px;padding-bottom:12px}.matching-author-row>i{grid-column:2;transform:rotate(90deg)}.matching-author-row>input:last-of-type{grid-column:2}.matching-author-row>button{grid-area:1/3}.mixed-runner-layout{grid-template-columns:1fr}.question-navigator{position:static}.question-palette{grid-template-columns:repeat(10,minmax(30px,1fr));overflow-x:auto}.runner-heading{flex-direction:column;align-items:stretch;gap:14px}.runner-heading>div:first-child{min-width:0}.runner-heading h1{max-width:100%;font-size:var(--fg-text-3xl);overflow-wrap:anywhere;text-wrap:balance;line-height:1.08}.answer-progress{grid-template-columns:auto auto;justify-content:center;align-items:baseline;width:100%}.short-answer-grade-form{grid-template-columns:1fr;align-items:stretch}}@media (width<=620px){.desktop-matching-instructions{display:none}.mobile-matching-instructions{display:block}.matching-workspace{grid-template-columns:1fr;gap:18px}.matching-lines,.matching-right-list{display:none}.matching-left-list{gap:14px}.matching-left-list article{grid-template-columns:1fr;gap:11px;padding:8px}.matching-left-list article>label{display:block}.matching-left-list select{min-height:46px;font-size:var(--fg-text-md);padding-inline:12px 34px}.matching-choice.left{pointer-events:none;min-height:52px}.matching-choice.left b{display:none}.clear-match{width:100%;min-height:44px}}@media (width<=540px){.builder-footer-workflow-options button i{display:none}.question-type-grid{grid-template-columns:1fr}.question-type-tile>button:first-child{grid-template-rows:auto auto auto;grid-template-columns:42px minmax(0,1fr);align-items:center;column-gap:12px;min-height:126px;padding-bottom:16px}.question-type-tile>button:first-child>span{grid-row:1/span 2}.question-type-tile>button:first-child small,.question-type-tile>button:first-child i{grid-column:2}.question-type-clear{top:7px;bottom:auto;right:7px}.question-section-block>header{flex-direction:column;align-items:flex-start;min-height:64px;padding:11px 12px}.question-section-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.question-section-actions .button{width:100%;min-height:44px;padding-inline:8px}.question-section-actions .section-collapse-button:only-child{grid-column:1/-1}.question-builder-tools .button{min-height:44px}.authoring-question-list,.question-editor-body{padding:12px}.question-section-add-footer{grid-template-columns:1fr}.question-section-add-footer .button{width:100%}.authoring-question-card>header{flex-direction:column;align-items:flex-start}.authoring-question-card>header>div:last-child{justify-content:flex-end;width:100%}.rubric-row{grid-template-columns:minmax(0,1fr) 68px 32px}.true-false-key,.true-false-options{grid-template-columns:1fr}.ai-import-panel{padding:14px}.ai-question-preview>article,.review-response-pair,.review-matching-pairs>div{grid-template-columns:1fr}.review-matching-pairs small{grid-column:1}.student-question-card{padding:20px 16px}.question-stage-actions{padding-inline:16px}.mixed-question-navigation{flex-wrap:wrap}.mixed-question-navigation .button{flex:1}.mixed-question-navigation>span{text-align:center;order:-1;width:100%}.question-palette{grid-template-columns:repeat(8,minmax(30px,1fr))}}.sba-workspace-page{min-width:0}.sba-context-picker{margin-bottom:var(--fg-card-gap);border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);grid-template-columns:minmax(260px,430px) minmax(220px,1fr);align-items:end;gap:16px;padding:16px 18px;display:grid}.sba-context-picker .form-field{margin:0}.sba-context-picker>p{color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0 0 12px}.sba-status-card{border:1px solid var(--fg-line-strong);background:var(--fg-paper);min-width:210px;box-shadow:var(--fg-shadow-sm);border-radius:13px;gap:4px;padding:15px 18px;display:grid}.sba-status-card>span,.sba-summary-grid article>span{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.09em;text-transform:uppercase;font-weight:850}.sba-status-card strong{color:var(--fg-teal-800);font-size:var(--fg-text-md)}.sba-status-card small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.sba-summary-grid{gap:var(--fg-card-gap);margin-bottom:var(--fg-card-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.sba-summary-grid article{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);min-width:0;box-shadow:var(--fg-shadow-sm);gap:5px;padding:17px 18px;display:grid}.sba-summary-grid strong{min-width:0;color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-lg);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sba-summary-grid small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.sba-submit-card{border:1px solid var(--fg-line);border-radius:var(--fg-radius-lg);background:var(--fg-paper);box-shadow:var(--fg-shadow-md);overflow:hidden}.sba-submit-card>header,.sba-review-editor>header,.sba-detail-heading{border-bottom:1px solid var(--fg-line);justify-content:space-between;align-items:flex-start;gap:22px;padding:21px 23px;display:flex}.sba-submit-card h2,.sba-review-editor h2,.sba-detail-heading h2{color:var(--fg-ink);font-family:var(--fg-display);font-size:var(--fg-text-xl);margin:0 0 5px}.sba-submit-card header p:last-child,.sba-review-editor header p:last-child,.sba-detail-heading p:last-child{color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0;line-height:1.5}.sba-submit-layout{grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);gap:24px;padding:23px;display:grid}.sba-file-panel,.sba-signature-panel{align-content:start;gap:15px;min-width:0;display:grid}.sba-file-drop{border:2px dashed var(--fg-line-strong);min-height:170px;color:var(--fg-ink-soft);background:var(--fg-paper-deep);text-align:center;cursor:pointer;border-radius:13px;place-content:center;justify-items:center;gap:7px;padding:24px;display:grid}.sba-file-drop:hover,.sba-file-drop.has-file{border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.sba-file-drop input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.sba-file-drop>span{width:43px;height:43px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-size:var(--fg-text-lg);border-radius:12px;place-items:center;display:grid}.sba-file-drop strong{overflow-wrap:anywhere;max-width:100%;font-size:var(--fg-text-sm)}.sba-file-drop small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.sba-signature-panel{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:13px;padding:16px}.sba-signature-panel>div:first-child{justify-content:space-between;align-items:center;gap:12px;display:flex}.sba-signature-panel>div:first-child>span{color:var(--fg-ink);font-size:var(--fg-text-sm);font-weight:850}.sba-signature-panel>p{color:var(--fg-muted);font-size:var(--fg-text-xs);margin:-8px 0 0}.signature-pad-canvas,.signature-preview-canvas{border:1px solid var(--fg-line-strong);background:var(--fg-paper);border-radius:10px;width:100%;height:185px;display:block}.signature-pad-canvas{touch-action:none;cursor:crosshair}.signature-preview-canvas{height:150px}.sba-attestation{color:var(--fg-ink);font-size:var(--fg-text-md);cursor:pointer;align-items:flex-start;gap:9px;font-weight:750;line-height:1.45;display:flex}.sba-attestation input{width:18px;height:18px;accent-color:var(--fg-teal-700);flex:none}.sba-signature-panel>small{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.45}.sba-submit-card>footer{border-top:1px solid var(--fg-line);background:var(--fg-paper-deep);justify-content:space-between;align-items:center;gap:16px;padding:14px 23px;display:flex}.sba-submit-card>footer>span{min-width:0;color:var(--fg-muted);font-size:var(--fg-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sba-submit-card>footer>span.file-error{color:var(--fg-red-700);white-space:normal;font-weight:800}.sba-submit-card>footer>div{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:9px;display:flex}.sba-awaiting-response{background:var(--fg-purple-100);border:1px solid #d3c6df;border-radius:12px;align-items:center;gap:14px;padding:17px;display:flex}.sba-awaiting-response.prominent{min-height:110px;padding:23px}.sba-awaiting-response>span{width:38px;height:38px;color:var(--fg-purple-700);font-size:var(--fg-text-lg);background:#ffffffb3;border-radius:11px;flex:none;place-items:center;display:grid}.sba-awaiting-response strong{color:var(--fg-purple-700);font-size:var(--fg-text-sm);margin-bottom:4px;display:block}.sba-awaiting-response p{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);margin:0;line-height:1.5}.sba-awaiting-response.deadline-passed{background:#fff4f1;border-color:#e8c2ba}.sba-awaiting-response.deadline-passed>span,.sba-awaiting-response.deadline-passed strong{color:var(--fg-red-700)}.sba-draft-list{border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);overflow:hidden}.sba-draft-list>button{border:0;border-bottom:1px solid var(--fg-line);width:100%;min-width:0;min-height:76px;color:var(--fg-ink);text-align:left;cursor:pointer;background:0 0;grid-template-columns:39px minmax(0,1fr) auto 20px;align-items:center;gap:13px;padding:13px 16px;display:grid}.sba-draft-list>button:last-child{border-bottom:0}.sba-draft-list>button:hover{background:var(--fg-teal-50)}.sba-draft-number{width:38px;height:38px;color:var(--fg-teal-800);background:var(--fg-teal-100);font-size:var(--fg-text-sm);border-radius:11px;place-items:center;font-weight:900;display:grid}.sba-draft-list button>span:nth-child(2){gap:4px;min-width:0;display:grid}.sba-draft-list button>span:nth-child(2) strong,.sba-draft-list button>span:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sba-draft-list button>span:nth-child(2) strong{font-size:var(--fg-text-md)}.sba-draft-list button>span:nth-child(2) small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.sba-draft-list button>i{color:var(--fg-teal-700);font-size:var(--fg-text-xl);font-style:normal}.sba-draft-detail{border:1px solid var(--fg-line);border-radius:var(--fg-radius-lg);background:var(--fg-paper);max-width:1500px;box-shadow:var(--fg-shadow-sm);margin:0 auto;overflow:hidden}.sba-modal-notice{margin:var(--fg-card-gap) var(--fg-card-gap) 0}.sba-version-nav{padding:12px var(--fg-card-gap);border-top:1px solid var(--fg-line);border-bottom:1px solid var(--fg-line);background:var(--fg-paper-deep);align-items:center;gap:14px;display:flex}.sba-version-nav>span{color:var(--fg-muted);font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase;flex:none;font-weight:850}.sba-version-nav>div{gap:8px;min-width:0;padding:2px;display:flex;overflow-x:auto}.sba-version-nav button{border:1px solid var(--fg-line);min-width:112px;color:var(--fg-ink);background:var(--fg-white);text-align:left;cursor:pointer;border-radius:9px;gap:3px;padding:9px 11px;display:grid}.sba-version-nav button:hover{border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.sba-version-nav button.active{border-color:var(--fg-teal-700);color:var(--fg-teal-800);background:var(--fg-teal-100);box-shadow:0 0 0 2px var(--fg-teal-50)}.sba-version-nav button small{color:var(--fg-muted);font-size:var(--fg-text-xs);font-weight:700}.sba-file-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.sba-document-layout{align-items:start;gap:var(--fg-card-gap);padding:var(--fg-card-gap);background:var(--fg-paper-deep);grid-template-columns:minmax(0,1.5fr) minmax(270px,.5fr);display:grid}.sba-document-preview,.sba-proof-panel{border:1px solid var(--fg-line);background:var(--fg-paper);border-radius:13px;min-width:0;overflow:hidden}.sba-document-preview>header{border-bottom:1px solid var(--fg-line);gap:3px;padding:12px 14px;display:grid}.sba-document-preview header strong{overflow-wrap:anywhere;font-size:var(--fg-text-sm)}.sba-document-preview header small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.sba-document-preview iframe{background:#e8e8e5;border:0;width:100%;height:min(72vh,850px);display:block}.sba-pdf-viewer{background:#e8e8e5;grid-template-rows:auto minmax(0,1fr);height:min(72vh,850px);min-height:460px;display:grid}.sba-pdf-toolbar{z-index:2;border-bottom:1px solid var(--fg-line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdfaf7;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.sba-pdf-page-controls,.sba-pdf-zoom-controls{align-items:center;gap:6px;min-width:0;display:flex}.sba-pdf-page-controls>label{color:var(--fg-muted);font-size:var(--fg-text-xs);text-transform:uppercase;align-items:center;gap:5px;font-weight:800;display:flex}.sba-pdf-page-controls input{border:1px solid var(--fg-line-strong);width:48px;height:34px;color:var(--fg-ink);background:var(--fg-white);text-align:center;font:800 var(--fg-text-sm) var(--fg-display);border-radius:7px;outline:none;padding:0 5px}.sba-pdf-page-controls input:focus-visible{border-color:var(--fg-teal-600);box-shadow:0 0 0 2px var(--fg-teal-100)}.sba-pdf-page-controls small,.sba-pdf-zoom-controls>span{color:var(--fg-muted);font-size:var(--fg-text-xs);white-space:nowrap;font-weight:800}.sba-pdf-scroll-region{overscroll-behavior:contain;background:#e8e8e5;outline:none;min-width:0;min-height:0;padding:16px;overflow:auto}.sba-pdf-scroll-region:focus-visible{box-shadow:inset 0 0 0 3px var(--fg-teal-600)}.sba-pdf-page{place-items:start center;width:max-content;min-width:100%;display:grid}.sba-pdf-page canvas{background:var(--fg-white);max-width:none;display:block;box-shadow:0 5px 22px #1c272b2e}.sba-pdf-status{min-height:100%;color:var(--fg-muted);text-align:center;align-content:center;justify-items:center;gap:8px;padding:28px;display:grid}.sba-pdf-status>span{border:3px solid var(--fg-teal-100);border-top-color:var(--fg-teal-700);border-radius:50%;width:27px;height:27px;animation:.8s linear infinite spin}.sba-pdf-status strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.sba-pdf-status p{max-width:390px;font-size:var(--fg-text-sm);margin:0;line-height:1.5}.sba-pdf-status.error strong{color:var(--fg-red-700)}.sba-document-preview pre{min-height:460px;max-height:72vh;color:var(--fg-ink);background:var(--fg-white);font:var(--fg-text-md)/1.7 ui-monospace, SFMono-Regular, Menlo, monospace;white-space:pre-wrap;margin:0;padding:22px;overflow:auto}.sba-proof-panel{gap:14px;padding:16px;display:grid}.sba-proof-panel h3{font-size:var(--fg-text-md);margin:0 0 5px}.sba-proof-panel p{color:var(--fg-ink-soft);font-size:var(--fg-text-sm);margin:0;line-height:1.5}.sba-proof-panel>small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.sba-proof-panel>article{background:var(--fg-teal-50);border-radius:9px;padding:12px}.sba-proof-panel>article span,.sba-overall-comment>span{color:var(--fg-teal-800);font-size:var(--fg-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:850}.sba-proof-panel>article p{color:var(--fg-ink);white-space:pre-wrap;margin-top:6px}.sba-response-card{margin:var(--fg-card-gap);background:#faf7fc;border:1px solid #cbbdd8;border-radius:13px;gap:15px;padding:18px;display:grid}.sba-response-card>header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.sba-response-card h3{font-size:var(--fg-text-lg);margin:0}.sba-overall-comment{background:var(--fg-white);border-radius:9px;padding:14px}.sba-overall-comment p{color:var(--fg-ink);font-size:var(--fg-text-md);white-space:pre-wrap;margin:7px 0 0;line-height:1.6}.sba-area-feedback{gap:8px;display:grid}.sba-area-feedback>strong,.sba-attachments>strong{font-size:var(--fg-text-sm)}.sba-area-feedback article{border-left:3px solid var(--fg-purple-700);background:var(--fg-white);border-radius:0 9px 9px 0;padding:12px 14px}.sba-area-feedback article span{color:var(--fg-purple-700);font-size:var(--fg-text-xs);font-weight:850}.sba-area-feedback article p{color:var(--fg-ink-soft);font-size:var(--fg-text-md);white-space:pre-wrap;margin:6px 0 0;line-height:1.55}.sba-response-card>footer{color:var(--fg-muted);font-size:var(--fg-text-xs);border-top:1px solid #ded4e7;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:12px;display:flex}.sba-response-card>footer b{color:var(--fg-purple-700)}.sba-attachments{gap:8px;display:grid}.sba-attachments>div{border:1px solid var(--fg-line);background:var(--fg-white);border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.sba-attachments>div>span{gap:3px;min-width:0;display:grid}.sba-attachments b{overflow-wrap:anywhere;font-size:var(--fg-text-sm)}.sba-attachments small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.sba-list-tools,.assessment-roster-tools{justify-content:space-between;align-items:end;gap:14px;margin-bottom:13px;display:flex}.sba-shared-deadline-card{margin-bottom:var(--fg-card-gap);border:1px solid var(--fg-line);border-radius:var(--fg-radius-md);background:var(--fg-paper);box-shadow:var(--fg-shadow-sm);overflow:visible}.sba-shared-deadline-card>header{border-bottom:1px solid var(--fg-line);background:var(--fg-paper-deep);justify-content:space-between;align-items:flex-start;gap:18px;padding:17px 19px;display:flex}.sba-shared-deadline-card h2{font-family:var(--fg-display);font-size:var(--fg-text-lg);margin:0 0 4px}.sba-shared-deadline-card header p:last-child{max-width:720px;color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0;line-height:1.5}.sba-shared-deadline-controls{align-items:start;gap:var(--fg-card-gap);grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);padding:18px 19px;display:grid}.sba-deadline-cohort-picker{border:0;gap:11px;min-width:0;margin:0;padding:0;display:grid}.sba-deadline-cohort-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.sba-deadline-cohort-heading legend{color:#385159;font-size:var(--fg-text-sm);padding:0;font-weight:800}.sba-deadline-cohort-heading small{color:var(--fg-muted);font-size:var(--fg-text-xs);margin-top:3px;line-height:1.4;display:block}.sba-deadline-cohort-heading>div:last-child{flex:none;gap:10px;display:flex}.sba-deadline-cohort-options{overscroll-behavior:contain;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:318px;padding:2px 4px 2px 2px;display:grid;overflow-y:auto}.sba-deadline-cohort-options label{border:1px solid var(--fg-line-strong);border-radius:var(--fg-radius-sm);background:var(--fg-white);cursor:pointer;grid-template-columns:minmax(0,1fr) 25px;align-items:center;gap:10px;min-width:0;min-height:72px;padding:11px 13px;transition:border-color .15s,box-shadow .15s,background .15s;display:grid}.sba-deadline-cohort-options label:hover{border-color:var(--fg-teal-600)}.sba-deadline-cohort-options label.selected{border-color:var(--fg-teal-600);background:var(--fg-teal-50);box-shadow:inset 0 0 0 1px var(--fg-teal-600)}.sba-deadline-cohort-options label:focus-within{outline:3px solid color-mix(in srgb, var(--fg-teal-600) 30%, transparent);outline-offset:1px}.sba-deadline-cohort-options input{opacity:0;pointer-events:none;position:absolute}.sba-deadline-cohort-options span{gap:4px;min-width:0;display:grid}.sba-deadline-cohort-options strong{overflow-wrap:anywhere;color:var(--fg-ink);font-size:var(--fg-text-sm)}.sba-deadline-cohort-options small{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.4}.sba-deadline-cohort-options i{border:1px solid var(--fg-line-strong);width:25px;height:25px;color:var(--fg-white);background:var(--fg-white);border-radius:50%;place-items:center;font-style:normal;font-weight:900;display:grid}.sba-deadline-cohort-options label.selected i{border-color:var(--fg-teal-700);background:var(--fg-teal-700)}.sba-bulk-deadline-editor{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:12px;gap:12px;min-width:0;padding:14px;display:grid}.sba-bulk-deadline-summary{border:1px solid var(--fg-line);border-radius:var(--fg-radius-sm);background:var(--fg-white);gap:4px;padding:11px 12px;display:grid}.sba-bulk-deadline-summary strong{color:var(--fg-ink);font-size:var(--fg-text-sm)}.sba-bulk-deadline-summary small{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.45}.sba-bulk-deadline-summary.mixed{border-color:var(--fg-amber-200);background:#fff9eb}.sba-bulk-deadline-summary.mixed strong{color:var(--fg-amber-700)}.sba-shared-deadline-action{gap:7px;min-width:0;display:grid}.sba-shared-deadline-action>span,.sba-outcome-field>span,.sba-deadline-field>span{color:#385159;font-size:var(--fg-text-sm);letter-spacing:.01em;font-weight:800}.sba-shared-deadline-action .button{justify-content:center;min-height:45px}.sba-shared-deadline-action small{color:var(--fg-muted);font-size:var(--fg-text-xs);line-height:1.4}.sba-bulk-deadline-confirmation>div:nth-child(2){min-width:0}.sba-bulk-deadline-confirmation ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:180px;margin:13px 0;padding:0;list-style:none;display:grid;overflow-y:auto}.sba-bulk-deadline-confirmation li{color:var(--fg-teal-800);background:var(--fg-teal-50);font-size:var(--fg-text-sm);border-radius:8px;padding:8px 10px;font-weight:800}.sba-status-filter{width:min(260px,100%)}.sba-teacher-table{min-width:1120px}.sba-teacher-table .status-pill{white-space:normal;text-align:center;max-width:175px;line-height:1.25}.sba-review-editor{padding:var(--fg-card-gap);border-top:1px solid var(--fg-line);gap:18px;display:grid}.sba-review-editor>header{margin:calc(var(--fg-card-gap) * -1) calc(var(--fg-card-gap) * -1) 0;background:var(--fg-paper-deep)}.sba-comment-list{gap:10px;display:grid}.sba-comment-list>article{border:1px solid var(--fg-line);background:var(--fg-paper-deep);border-radius:10px;grid-template-columns:minmax(190px,.35fr) minmax(0,1fr) auto;align-items:start;gap:10px;min-width:0;padding:12px;display:grid}.sba-comment-list>article>.button{align-self:end}.sba-comment-list textarea{min-height:76px}.sba-review-decision{align-items:start;gap:var(--fg-card-gap);grid-template-columns:minmax(0,1fr) minmax(260px,.45fr);display:grid}.sba-outcome-field,.sba-deadline-field{gap:7px;min-width:0;display:grid}.sba-review-decision .publication-choice{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.sba-deadline-summary{border:1px solid var(--fg-teal-600);background:var(--fg-teal-50);border-radius:10px;align-content:center;gap:5px;min-height:78px;padding:11px 13px;display:grid}.sba-deadline-summary strong{color:var(--fg-teal-800);font-size:var(--fg-text-sm)}.sba-deadline-summary small{color:var(--fg-ink-soft);font-size:var(--fg-text-xs);line-height:1.4}.sba-deadline-summary .button{justify-self:start;margin-top:3px}.sba-deadline-summary.is-missing{background:var(--fg-amber-100);border-color:#d8bc88}.sba-deadline-summary.is-missing strong{color:var(--fg-amber-700)}.sba-deadline-summary.is-complete{border-color:var(--fg-line);background:var(--fg-paper-deep)}.sba-deadline-summary.is-complete strong{color:var(--fg-ink)}.sba-individual-deadline{gap:8px;display:grid}.sba-individual-deadline>.date-time-field>label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sba-individual-deadline>div:last-child{justify-content:space-between;align-items:center;gap:9px;display:flex}.sba-attachment-picker{border:1px dashed var(--fg-line-strong);background:var(--fg-paper-deep);color:var(--fg-ink);font-size:var(--fg-text-sm);border-radius:10px;gap:8px;padding:14px;font-weight:800;display:grid}.sba-attachment-picker>label{color:var(--fg-ink);font-size:var(--fg-text-sm);font-weight:800}.sba-attachment-picker>label small{color:var(--fg-muted);font-size:var(--fg-text-xs)}.sba-attachment-picker .file-selection-status{overflow-wrap:anywhere;color:var(--fg-muted);font-size:var(--fg-text-xs);font-weight:650}.sba-attachment-picker ul{color:var(--fg-muted);font-size:var(--fg-text-xs);gap:4px;margin:0;padding-left:18px;font-weight:650;display:grid}.sba-attachment-picker li{overflow-wrap:anywhere}.sba-review-actions{z-index:5;margin:0 calc(var(--fg-card-gap) * -1) calc(var(--fg-card-gap) * -1);padding:13px var(--fg-card-gap);border-top:1px solid var(--fg-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdfaf5;justify-content:flex-end;gap:9px;display:flex;position:sticky;bottom:-26px}.sba-historical-response{padding:var(--fg-card-gap);border-top:1px solid var(--fg-line);gap:14px;display:grid}.sba-historical-response>h2{font-family:var(--fg-display);margin:0}.sba-historical-response>.sba-response-card{margin:0}.assessment-roster-detail{border:1px solid var(--fg-line);border-radius:var(--fg-radius-lg);background:var(--fg-paper);max-width:1320px;box-shadow:var(--fg-shadow-sm);margin:0 auto;overflow:hidden}.assessment-roster-heading{border-bottom:1px solid var(--fg-line);justify-content:space-between;align-items:flex-start;gap:22px;padding:22px;display:flex}.assessment-roster-heading h2{font-family:var(--fg-display);font-size:var(--fg-text-2xl);margin:0 0 5px}.assessment-roster-heading p:last-child{color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0}.assessment-roster-metrics{grid-template-columns:repeat(3,minmax(74px,1fr));gap:7px;display:grid}.assessment-roster-metrics span{background:var(--fg-teal-50);border-radius:9px;justify-items:center;gap:3px;padding:10px;display:grid}.assessment-roster-metrics strong{color:var(--fg-teal-800);font-size:var(--fg-text-lg)}.assessment-roster-metrics small{color:var(--fg-muted);font-size:var(--fg-text-xs);text-transform:uppercase;font-weight:850}.assessment-roster-tools{padding:16px 20px 4px}.assessment-roster-filter{flex-wrap:wrap;gap:5px;display:flex}.assessment-roster-filter button{border:1px solid var(--fg-line);min-height:38px;color:var(--fg-ink-soft);background:var(--fg-white);font-size:var(--fg-text-sm);cursor:pointer;border-radius:8px;padding:0 12px;font-weight:800}.assessment-roster-filter button.active{color:var(--fg-teal-800);border-color:var(--fg-teal-600);background:var(--fg-teal-50)}.assessment-roster-detail:has(>.managed-table-shell){overflow:visible}.assessment-roster-detail>.managed-table-shell>.result-table-toolbar{margin:8px 20px 0}.assessment-roster-detail>.data-table-wrap,.assessment-roster-detail>.managed-table-shell>.data-table-wrap{width:calc(100% - 40px);margin:12px 20px 20px}.assessment-roster-table{min-width:760px}.recipient-status{color:var(--fg-ink-soft);background:var(--fg-paper-deep);font-size:var(--fg-text-sm);text-transform:uppercase;border-radius:999px;padding:6px 9px;font-weight:850;display:inline-flex}.recipient-status.submitted{color:var(--fg-green-700);background:var(--fg-green-100)}.recipient-status.in_progress{color:var(--fg-blue-700);background:var(--fg-blue-100)}.recipient-status.missing{color:var(--fg-red-700);background:var(--fg-red-100)}.recipient-status.access_removed,.recipient-status.assessment_archived{color:var(--fg-purple-700);background:var(--fg-purple-100)}.assessment-roster-footer{border-top:1px solid var(--fg-line);background:var(--fg-paper-deep);justify-content:space-between;align-items:center;gap:18px;padding:14px 20px;display:flex}.assessment-roster-footer p{color:var(--fg-muted);font-size:var(--fg-text-sm);margin:0}.assessment-roster-footer>div{gap:8px;display:flex}@media (width<=920px){.sba-submit-layout,.sba-document-layout,.sba-review-decision,.sba-shared-deadline-controls{grid-template-columns:1fr}.sba-document-preview iframe,.sba-pdf-viewer{height:62vh;min-height:420px}.sba-comment-list>article{grid-template-columns:1fr;align-items:stretch}}@media (width<=700px){.sba-context-picker{grid-template-columns:1fr;align-items:stretch}.sba-context-picker>p{margin:-4px 0 0}.result-table-toolbar,.sba-list-tools,.assessment-roster-tools,.assessment-roster-heading,.assessment-roster-footer,.sba-submit-card>header,.sba-detail-heading{flex-direction:column;align-items:stretch}.column-order-control>.button,.sba-status-filter{width:100%}.column-order-panel{left:0;right:auto}.fullscreen-result-backdrop{padding:0}.fullscreen-result-dialog{border:0;border-radius:0;height:100dvh}.fullscreen-result-toolbar{min-height:62px;padding-inline:13px}.fullscreen-result-content{padding:10px}.sba-summary-grid{grid-template-columns:1fr}.sba-submit-layout{padding:15px}.sba-submit-card>footer{flex-direction:column;align-items:stretch;padding:14px 15px}.sba-submit-card>footer>div{flex-direction:column-reverse}.sba-submit-card>footer .button{width:100%}.sba-draft-list>button{grid-template-columns:38px minmax(0,1fr) 16px}.sba-draft-list>button>.status-pill{grid-column:2;justify-self:start}.sba-draft-list>button>i{grid-area:1/3/span 2}.sba-document-layout,.sba-review-editor{padding:12px}.sba-modal-notice{margin:12px 12px 0}.sba-version-nav{flex-direction:column;align-items:stretch;padding:12px}.sba-shared-deadline-card>header,.sba-deadline-cohort-heading{flex-direction:column;align-items:stretch}.sba-deadline-cohort-heading>div:last-child{justify-content:flex-start}.sba-deadline-cohort-options,.sba-bulk-deadline-confirmation ul{grid-template-columns:1fr}.sba-pdf-toolbar{flex-direction:column;align-items:stretch}.sba-pdf-page-controls,.sba-pdf-zoom-controls{justify-content:center}.sba-review-editor>header{margin:-12px -12px 0}.sba-review-decision .publication-choice{grid-template-columns:1fr}.sba-attachments>div{flex-direction:column;align-items:stretch}.sba-file-actions{justify-content:stretch}.sba-file-actions .button{flex:1}.sba-review-actions{flex-direction:column-reverse;margin:0 -12px -12px;bottom:-12px}.sba-review-actions .button,.assessment-roster-metrics,.assessment-roster-filter{width:100%}.assessment-roster-filter button{flex:1}.assessment-roster-footer>div{flex-direction:column-reverse}}
