:root{color:#1b1420;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f4f1f7;font-family:Public Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#f4f1f7;min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}.app-shell{min-height:100vh}.top-bar{color:#fff;background:#461d7c;border-bottom:4px solid #fdd023;min-height:66px}.top-bar-inner{flex-wrap:wrap;align-items:center;gap:16px;max-width:1180px;min-height:66px;margin:0 auto;padding:0 20px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#3a1667;background:#fdd023;border-radius:9px;place-items:center;width:36px;height:36px;font-weight:700;display:grid}.brand strong,.brand small{display:block}.brand small,.metric-card small,.table-row span,.page-subtitle,.page-block p,.panel p{color:#6b6076}.top-bar .brand small{color:#ffffffd1}.nav-list{flex-wrap:wrap;flex:420px;align-items:center;gap:6px;display:flex}.nav-list a{color:#fff;border-radius:999px;align-items:center;min-height:42px;padding:0 12px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.nav-list a.active,.nav-list a:hover{color:#3a1667;background:#fdd023}.content{max-width:1180px;margin:0 auto;padding:26px 20px 40px}.auth-page{background:#461d7c;place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fff;border-radius:18px;justify-items:center;gap:18px;width:min(100%,430px);padding:36px 32px;display:grid;box-shadow:0 24px 60px #1b14203d}.auth-logo{color:#3a1667;background:#fdd023;border-radius:14px;place-items:center;width:56px;height:56px;font-size:20px;font-weight:800;display:grid}.auth-card h1{text-align:center;margin:0}.auth-school,.auth-helper{color:#7a6e85;text-align:center;margin:0;font-size:14px;line-height:1.55}.google-signin-button{color:#1b1420;cursor:pointer;background:#fff;border:1px solid #c9c0d4;border-radius:11px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:54px;font-size:16.5px;font-weight:700;display:flex}.google-signin-button:hover{background:#faf8fc}.google-signin-button span{color:#fff;background:#461d7c;border-radius:999px;place-items:center;width:22px;height:22px;font-size:13px;font-weight:800;display:grid}.domain-table,.auth-error-panel{border-radius:11px;width:100%}.domain-table{background:#faf8fc;border:1px solid #ede8f2;gap:7px;padding:14px 16px;display:grid}.domain-table div{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.domain-table strong{color:#7a6e85;flex:0 0 78px;font-size:13px}.domain-table code{color:#1b1420;font-size:14px;font-weight:700}.auth-error-panel{color:#a32020;background:#fdecec;border:1px solid #f0c4c4;gap:5px;padding:13px 15px;display:grid}.auth-error-panel p{color:#6e2a2a;margin:0;font-size:14px;line-height:1.45}.demo-auth-row{gap:10px;width:100%;display:flex}.page-stack{gap:22px;max-width:1180px;display:grid}.teacher-home{gap:22px}.teacher-home-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.teacher-home-actions{flex-wrap:wrap;gap:11px;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.eyebrow{color:#6b6076;letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:700}h1,h2,p{margin-top:0}h1{color:#1b1420;margin-bottom:0;font-family:Archivo,Public Sans,sans-serif;font-size:31px;font-weight:600;line-height:1.15}h2{color:#1b1420;font-family:Archivo,Public Sans,sans-serif;font-size:18px;font-weight:600}.status-pill{color:#461d7c;background:#fff;border:1px solid #d8d0e0;border-radius:999px;align-items:center;min-height:30px;padding:0 10px;font-size:13px;font-weight:700;display:inline-flex}.status-pill.ready{color:#235a37;background:#f3fbf6;border-color:#9cc9ae}.readiness-panel{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;display:grid}.drive-status{justify-items:end;gap:8px;display:grid}.drive-status small{color:#627174;font-weight:700}.metric-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.metric-card,.panel,.page-block,.table-panel{background:#fff;border:1px solid #e5e0ea;border-radius:13px;box-shadow:0 1px 2px #1b14200a}.metric-card{gap:8px;min-height:126px;padding:18px;display:grid}.metric-card span{color:#6b6076;font-weight:700}.metric-card strong{color:#1b1420;font-family:Archivo,Public Sans,sans-serif;font-size:32px;font-weight:600}.panel,.page-block{padding:22px}.setup-card,.grader-strip,.review-inbox,.class-home-card{background:#fff;border:1px solid #e5e0ea;box-shadow:0 1px 2px #1b14200a}.setup-card{border-left:5px solid #461d7c;border-radius:14px;gap:15px;padding:22px;display:grid}.setup-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.setup-card-header h2,.review-inbox h2{margin:0 0 4px;font-size:19px}.setup-card-header p,.review-inbox p{color:#6b6076;margin:0;font-size:15px}.setup-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.setup-row{background:#fff;border:1px solid #e5e0ea;border-radius:11px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:11px 13px;display:grid}.setup-row.done{background:#f3fbf6;border-color:#c7e5d2}.setup-row strong,.setup-row small{display:block}.setup-row small{color:#6b6076;margin-top:3px;font-size:14px}.setup-state{color:#1f5c3b;border:2px solid #c9c0d4;border-radius:999px;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.setup-row.done .setup-state{color:#fff;background:#49a66b;border-color:#49a66b}.grader-strip{border-radius:13px;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 20px;display:grid}.grader-strip.running{background:#f3fbf6;border-color:#9cc9ae}.grader-strip.offline{background:#fff6f6;border-color:#d69595}.grader-strip strong,.grader-strip small{display:block}.grader-strip small{color:#6b6076;margin-top:4px}.grader-dot{background:#49a66b;border-radius:999px;width:12px;height:12px}.grader-strip.offline .grader-dot{background:#a32020}.review-inbox{border-left:5px solid #fdd023;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;display:flex}.class-grid-modern{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;display:grid}.class-home-card{color:#1b1420;border-radius:13px;gap:13px;text-decoration:none;display:grid;overflow:hidden}.class-banner{color:#fff;gap:4px;min-height:88px;padding:17px;display:grid}.class-banner strong{font-family:Archivo,Public Sans,sans-serif;font-size:19px;font-weight:600}.class-banner small{color:#ffffffd6;font-weight:700}.banner-1{background:#461d7c}.banner-2{background:#5a2a8c}.banner-3{background:#613f8f}.banner-4{background:#3a1667}.review-count{color:#461d7c;padding:4px 18px 0;font-family:Archivo,Public Sans,sans-serif;font-size:42px;font-weight:600}.review-label{color:#6b6076;padding:0 18px;font-weight:700}.class-chip-row{flex-wrap:wrap;gap:8px;padding:0 18px 18px;display:flex}.class-chip-row span{color:#6b6076;background:#f4f1f7;border-radius:999px;min-height:30px;padding:6px 10px;font-size:13px;font-weight:700}.page-subtitle{margin:8px 0 0;font-weight:700}.page-block{max-width:760px}.page-block.narrow{max-width:560px}.notice-error{color:#a32020;background:#fdecec;border:1px solid #f0c4c4;border-radius:9px;padding:12px}.notice-success{color:#1f5c3b;background:#f1faf5;border:1px solid #c5e3d2;border-radius:9px;margin-top:14px;padding:12px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:14px;display:grid}.form-grid label{color:#5e5468;gap:6px;font-weight:700;display:grid}.form-grid input[type=text],.form-grid input:not([type]),.assignment-form input,.assignment-form select,.assignment-form textarea,.upload-form input{color:#172426;background:#fff;border:1px solid #d8d0e0;border-radius:9px;min-height:42px;padding:0 13px;font-size:16px}.assignment-form textarea{resize:vertical;min-height:88px;padding:10px}.checkbox-label{align-content:center;min-height:42px}.checkbox-label input{margin-right:8px}.class-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.assignment-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:14px;display:grid}.assignment-builder-shell{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start;gap:18px;display:grid}.assignment-builder-shell[hidden]{display:none}.assignment-builder-shell>h2,.assignment-builder-shell>.notice-success,.assignment-builder-shell>.notice-error{grid-column:1/-1}.assignment-builder-form{background:#fff;border:1px solid #e5e0ea;border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));padding:22px;box-shadow:0 1px 2px #1b14200a}.assignment-step-title{align-items:flex-start;gap:12px;padding-top:6px;display:flex}.assignment-step-title h2{margin:0 0 4px;font-size:19px}.assignment-step-title p{color:#6b6076;margin:0;font-size:15px}.step-badge{color:#fff;background:#461d7c;border-radius:999px;flex:none;place-items:center;width:29px;height:29px;font-size:14.5px;font-weight:800;display:grid}.segmented-control{flex-wrap:wrap;gap:8px;display:flex}.segmented-control button{color:#461d7c;cursor:pointer;background:#fff;border:1px solid #d8d0e0;border-radius:10px;min-height:44px;padding:0 14px;font-size:15px;font-weight:700}.segmented-control button.active{color:#fff;background:#461d7c;border-color:#461d7c}.late-policy-row,.tutorial-video-row{grid-template-columns:minmax(170px,1fr) minmax(170px,1fr);align-items:end;gap:14px;display:grid}.class-pick-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.class-pick-list .checkbox-chip{justify-content:flex-start;min-height:58px}.class-pick-list strong,.class-pick-list small{display:block}.class-pick-list small{color:#6b6076;margin-top:2px;font-size:13px}.points-budget{background:#faf8fc;border:1px solid #ede8f2;border-radius:11px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:13px;display:grid}.points-budget span{color:#5e5468;font-weight:700}.points-budget strong{color:#461d7c;font-family:Archivo,Public Sans,sans-serif;font-size:18px}.progress-track{background:#ede8f2;border-radius:999px;grid-column:1/-1;height:10px;overflow:hidden}.progress-track span{border-radius:inherit;background:#461d7c;height:100%;display:block}.skill-domain-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.skill-domain-card{background:#fff;border:1px solid #ede8f2;border-radius:10px;gap:3px;padding:12px;display:grid}.skill-domain-card strong{color:#1b1420;font-size:15px}.skill-domain-card small{color:#6b6076;font-size:13px}.scoring-row{justify-content:flex-start}.scoring-row span{flex:auto}.star-button{color:#9a8fa6;cursor:pointer;background:#fff;border:1px solid #d8d0e0;border-radius:999px;place-items:center;width:34px;min-width:34px;height:34px;display:grid}.star-button.active{color:#7a5800;background:#fff6d6;border-color:#fdd023}.star-button:disabled{cursor:not-allowed;opacity:.55}.assignment-preview-rail{background:#fff;border:1px solid #e5e0ea;border-radius:14px;gap:13px;padding:20px;display:grid;position:sticky;top:86px;box-shadow:0 1px 2px #1b14200a}.assignment-preview-rail h2,.assignment-preview-rail p{margin:0}.assignment-preview-rail dl{gap:10px;margin:0;display:grid}.assignment-preview-rail div{border-top:1px solid #ede8f2;padding-top:10px}.assignment-preview-rail dt{color:#5e5468;font-size:13px;font-weight:700}.assignment-preview-rail dd{color:#1b1420;margin:3px 0 0;font-weight:700}.upload-form{grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:14px;display:grid}.assignment-form label,.upload-form label{color:#526569;gap:6px;font-weight:700;display:grid}.assignment-form-wide{grid-column:1/-1}.scoring-builder{background:#f8fafb;border:1px solid #d8e0e2;border-radius:8px;gap:16px;padding:16px;display:grid}.scoring-builder legend{color:#526569;padding:0 6px;font-weight:700}.scoring-group-grid,.scoring-option-grid,.checklist-grid,.file-option-grid{gap:10px;display:grid}.scoring-group-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.scoring-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.checkbox-chip,.scoring-option-panel{background:#fff;border:1px solid #d8e0e2;border-radius:6px}.checkbox-chip{color:#214e57;align-items:center;gap:8px;min-height:42px;padding:0 12px;font-weight:700;display:flex}.checkbox-chip input,.checkbox-label.compact input{flex:none}.scoring-option-panel{gap:10px;padding:14px;display:grid}.scoring-option-panel h3{color:#172426;margin:0;font-size:.98rem}.checklist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.file-option-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.checkbox-label.compact{color:#526569;align-items:center;gap:8px;min-height:34px;font-weight:700;display:flex}.checkbox-label.compact input{margin-right:0}.assignment-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.locked-field{color:#526569;background:#f8fafb;border:1px solid #d8e0e2;border-radius:6px;align-items:center;min-height:42px;padding:0 12px;font-weight:700;display:grid}.class-card{background:#fff;border:1px solid #d8e0e2;border-radius:8px;gap:16px;padding:18px;display:grid}.class-card h2{margin-bottom:4px}.class-card p{color:#627174;margin-bottom:0}.section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.class-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.class-meta div{background:#f8fafb;border:1px solid #e1e8ea;border-radius:6px;padding:12px}.class-meta dt{color:#526569;font-size:.82rem;font-weight:700}.class-meta dd{color:#172426;margin:4px 0 0;font-weight:700}.fine-print{font-size:.9rem}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.status-surface{align-content:start;gap:14px;display:grid}.detail-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.detail-meta.compact{grid-template-columns:repeat(2,minmax(0,160px))}.detail-meta div{background:#f8fafb;border:1px solid #e1e8ea;border-radius:6px;min-height:72px;padding:12px}.detail-meta dt{color:#526569;font-size:.82rem;font-weight:700}.detail-meta dd{color:#172426;margin:4px 0 0;font-weight:700}.status-table{border:1px solid #e1e8ea;border-radius:8px;margin-top:16px;display:grid;overflow:hidden}.status-table-row{border-top:1px solid #e6ecee;grid-template-columns:minmax(96px,1fr) minmax(72px,.5fr) minmax(140px,1fr) minmax(160px,1fr) minmax(96px,.8fr) minmax(84px,.6fr) minmax(120px,.9fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.status-table-row:first-child{border-top:0}.status-table-row.heading{color:#526569;background:#f8fafb;font-size:.86rem;font-weight:700}.status-table.compact .status-table-row{grid-template-columns:minmax(72px,.5fr) minmax(140px,1fr) minmax(160px,1fr) minmax(96px,.8fr) minmax(84px,.6fr) minmax(120px,.9fr)}.status-list{gap:10px;display:grid}.status-list-item{background:#f8fafb;border:1px solid #e1e8ea;border-radius:6px;gap:4px;padding:12px;display:grid}.status-list-item strong{color:#172426;text-transform:capitalize}.status-list-item span,.empty-state{color:#627174}.feedback-review{gap:8px;margin-top:6px;display:grid}.feedback-review textarea{resize:vertical;width:100%;min-height:84px;font:inherit;color:#172426;background:#fff;border:1px solid #cbdadd;border-radius:6px;padding:10px}.student-feedback-card{background:#fff;border:1px solid #c7d8dc;border-radius:6px;gap:14px;padding:14px;display:grid}.feedback-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.feedback-card-heading h3{color:#172426;margin:0;font-size:1rem}.feedback-sections{gap:12px;display:grid}.feedback-section{gap:6px;display:grid}.feedback-section h4{color:#172426;margin:0;font-size:.92rem}.feedback-section ul{color:#526569;gap:4px;margin:0;padding-left:18px;display:grid}.feedback-section p{color:#526569;margin:0}.heatmap-list{gap:10px;display:grid}.heatmap-row{background:#f8fafb;border:1px solid #e1e8ea;border-radius:6px;grid-template-columns:minmax(150px,1fr) minmax(160px,2fr) minmax(84px,auto);align-items:center;gap:12px;padding:12px;display:grid}.heatmap-row div:first-child,.heatmap-values{gap:3px;display:grid}.heatmap-row strong{color:#172426}.heatmap-row span{color:#627174;font-size:.9rem}.heatmap-bar{background:#dce7e9;border-radius:999px;height:10px;overflow:hidden}.heatmap-bar span{background:#bd6f49;height:100%;display:block}.heatmap-values{justify-items:end}.rubric-weighting{gap:10px;display:grid}.rubric-weighting-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.rubric-weighting h4{color:#172426;margin:0 0 6px;font-size:.92rem}.rubric-weighting ul{color:#526569;gap:4px;margin:0;padding-left:18px;display:grid}.rubric-weighting p,.rubric-weighting span{color:#627174;margin:0}.inline-actions{flex-wrap:wrap;gap:12px;display:flex}.resource-surface,.resource-list{gap:10px;display:grid}.resource-surface{background:#f8fafb;border:1px solid #e1e8ea;border-radius:6px;padding:12px}.resource-item{background:#fff;border:1px solid #d8e0e2;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.resource-item strong,.resource-item span{display:block}.resource-item strong{color:#172426}.resource-item span{color:#627174;margin-top:2px;font-size:.9rem}.table-panel{overflow:hidden}.table-row{border-top:1px solid #e6ecee;grid-template-columns:minmax(180px,1.5fr) repeat(3,minmax(120px,1fr));align-items:center;gap:16px;padding:16px 18px;display:grid}.table-row:first-child{border-top:0}.primary-button{color:#fff;background:#461d7c;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-size:15.5px;font-weight:600;text-decoration:none;display:inline-flex}.primary-button:disabled{cursor:not-allowed;opacity:.65}.button-row{flex-wrap:wrap;gap:10px;display:flex}.secondary-button{color:#461d7c;background:#fff;border:1px solid #d8d0e0;border-radius:10px;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-size:15.5px;font-weight:600;text-decoration:none;display:inline-flex}.secondary-button:disabled,.text-button:disabled{cursor:not-allowed;opacity:.6}.danger-button{color:#8f2424;border-color:#d89c9c}.text-button{color:#461d7c;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-weight:700}.account-panel{color:#fff;flex-wrap:wrap;align-items:center;gap:4px;margin-left:auto;padding:6px 0;display:flex}.account-panel span{font-weight:700}.account-panel small{color:#ffffffc7;font-family:IBM Plex Mono,monospace}.account-panel .text-button{color:#fdd023}.status-strip.ready{background:#f1faf5;border-color:#c5e3d2}.status-strip.danger{background:#fdecec;border-color:#f0c4c4}.numbered-panel ol,.sequence-list{gap:12px;display:grid}.sequence-row{color:inherit;background:#fff;border:1px solid #ede8f2;border-radius:12px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;text-decoration:none;display:grid}.sequence-row.is-disabled{color:#9a8fa6;background:#faf8fc}.sequence-row h3{color:#1b1420;margin:0 0 4px;font-family:Archivo,Public Sans,sans-serif;font-size:17px}.sequence-row p{margin:0}.sequence-number{color:#461d7c;background:#eee6f7;border-radius:12px;place-items:center;width:42px;height:42px;font-family:Archivo,Public Sans,sans-serif;font-size:18px;font-weight:700;display:grid}.student-home{gap:20px}.student-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.student-progress-card{gap:10px;display:grid}.due-urgent{color:#b4530a}.student-step-list{gap:14px;display:grid}.student-step-card{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:16px;display:grid}.student-note,.late-note,.video-callout{background:#faf8fc;border:1px solid #ede8f2;border-radius:11px;margin-top:12px;padding:13px 15px}.late-note{color:#5c5030;background:#fff9e3;border-color:#f2df9b}.video-callout{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.video-callout p,.student-note,.late-note{margin-bottom:0}.turn-in-card{background:#fcfbfd;border-color:#d6c6ea}.student-upload-form{grid-template-columns:minmax(240px,1fr) auto;margin-top:12px}.drop-zone{text-align:center;background:#fff;border:2px dashed #d8d0e0;border-radius:13px;justify-items:center;gap:7px;min-height:140px;padding:20px;display:grid}.drop-zone span:first-child{color:#1b1420;font-family:Archivo,Public Sans,sans-serif;font-size:18px;font-weight:600}.drop-zone small{color:#6b6076;font-size:15px}.file-input-label{color:#5e5468;font-size:15px;font-weight:700}.attempt-tile-list{gap:12px;display:grid}.attempt-tile{background:#fff;border:1px solid #ede8f2;border-radius:12px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.attempt-tile h3,.attempt-tile p{margin:0}.attempt-tile h3{color:#1b1420;font-family:Archivo,Public Sans,sans-serif;font-size:17px}.attempt-chip-stack{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.mono-text{color:#1b1420;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:14px}.student-feedback-surface{gap:14px;display:grid}.student-feedback-hero{color:#fff;background:#461d7c;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:24px;display:grid}.student-feedback-hero h2,.student-feedback-hero p,.student-feedback-hero .eyebrow{color:#fff}.student-feedback-hero h2{margin:0 0 6px;font-size:26px}.score-block{justify-items:end;gap:2px;min-width:128px;display:grid}.score-block strong{color:#fff;font-family:Archivo,Public Sans,sans-serif;font-size:44px;font-weight:700}.score-block span,.score-block small{color:#ffffffd6}.score-block small{text-decoration:line-through}.override-banner{background:#f1faf5;border:1px solid #c5e3d2;border-left:5px solid #1f7a4d;border-radius:13px;gap:5px;padding:15px 18px;display:grid}.override-banner strong{color:#1f5c3b}.override-banner p{color:#2e5741;margin:0}.attempt-bars{gap:10px;margin:12px 0;display:grid}.attempt-bar-row{grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;gap:12px;display:grid}.attempt-bar-row span,.attempt-bar-row strong{color:#5e5468;font-size:14px;font-weight:700}.feedback-change-list{gap:9px;display:grid}.feedback-change-row{background:#faf8fc;border:1px solid #ede8f2;border-radius:11px;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:10px;padding:11px 13px;display:grid}.feedback-change-row span{border-radius:999px;place-items:center;min-height:28px;font-size:12px;font-weight:800;display:inline-grid}.feedback-change-row p{margin:0}.feedback-change-row.fixed{background:#f1faf5;border-color:#c5e3d2}.feedback-change-row.fixed span{color:#1f5c3b;background:#d8ede2}.feedback-change-row.missing{background:#fef7f7;border-color:#f0c4c4}.feedback-change-row.missing span{color:#a32020;background:#fdecec}.feedback-change-row.refine{background:#fef9f4;border-color:#f5e3d2}.feedback-change-row.refine span{color:#c9741f;background:#fdf1e7}.hint-card{background:#fffdf2;border-color:#f2df9b}.hint-ladder{gap:10px;margin-top:12px;display:grid}.hint-row{background:#fff;border:1px solid #f0da92;border-radius:11px;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:12px;padding:12px;display:grid}.hint-row.locked{opacity:.62}.hint-row strong,.hint-row p{margin:0}.reflection-card{gap:12px;display:grid}.reflection-card label{color:#5e5468;gap:8px;font-weight:700;display:grid}.reflection-card textarea{color:#5e5468;resize:vertical;background:#faf8fc;border:1px solid #d8d0e0;border-radius:9px;min-height:88px;padding:12px 13px;font-size:16px}.skill-badge-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;display:grid}.skill-badge{color:#6b6076;background:#faf8fc;border:1px solid #ede8f2;border-radius:12px;gap:4px;min-height:76px;padding:13px;display:grid}.skill-badge strong{color:#7a5800;text-transform:uppercase;font-size:13px}.skill-badge.met{color:#3a1667;background:#fff9e3;border-color:#f2df9b}.section-heading-row,.table-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:0 0 14px;display:flex}.setting-panel{flex-wrap:wrap;justify-content:space-between;gap:18px;display:flex}.progress-bar{background:#ede8f2;border-radius:999px;height:10px;overflow:hidden}.progress-bar span{border-radius:inherit;background:#461d7c;height:100%;display:block}.toggle-button{background:#c9c0d4;border:0;border-radius:999px;width:52px;height:30px;padding:3px;position:relative}.toggle-button span{background:#fff;border-radius:999px;width:24px;height:24px;transition:transform .16s;display:block}.toggle-button.on{background:#461d7c}.toggle-button.on span{transform:translate(22px)}.stacked-form{gap:14px;display:grid}.stacked-form label{color:#5e5468;gap:8px;font-weight:700;display:grid}.rollbook-grid{overflow-x:auto}.rollbook-row{border-top:1px solid #ede8f2;grid-template-columns:minmax(160px,1.2fr) repeat(6,minmax(90px,1fr));min-width:720px;display:grid}.rollbook-row span{min-height:44px;padding:12px}.rollbook-row.heading{color:#5e5468;background:#faf8fc;font-weight:700}.bonus-cell{color:#1f5c3b;background:#f4fbf7;font-weight:700}.review-layout{grid-template-columns:minmax(220px,290px) minmax(0,1fr);gap:16px;display:grid}.review-row{border-left:4px solid #461d7c;padding:10px 0 10px 12px}.class-hero{color:#fff;background:#461d7c;border-radius:18px;gap:10px;padding:24px;display:grid}.class-hero h1,.class-hero p,.class-hero .eyebrow{color:#fff}.tabs{border-bottom:1px solid #e5e0ea;gap:2px;display:flex;overflow:auto hidden}.tabs a{color:#7a6e85;white-space:nowrap;border-bottom:3px solid #0000;padding:13px 17px;font-size:15.5px;font-weight:600;text-decoration:none}.tabs a:hover,.tabs a:focus{color:#461d7c;border-bottom-color:#fdd023}@media (width<=820px){.top-bar-inner{align-items:flex-start;padding:12px 20px}.content{padding:20px}.metric-grid,.table-row,.form-grid,.assignment-builder-shell,.late-policy-row,.tutorial-video-row,.class-list,.detail-grid,.detail-meta,.readiness-panel,.assignment-form,.upload-form,.scoring-group-grid,.scoring-option-grid,.file-option-grid,.assignment-list,.student-progress-grid,.student-step-card,.attempt-tile,.student-feedback-hero,.attempt-bar-row,.feedback-change-row,.hint-row,.class-meta{grid-template-columns:1fr}.section-heading,.page-header{display:grid}.status-table{overflow-x:auto}.status-table-row{min-width:680px}.resource-item,.heatmap-row,.rubric-weighting-grid,.review-layout,.sequence-row{grid-template-columns:1fr}.drive-status{justify-items:start}.assignment-form-wide{grid-column:auto}}
