:root{color-scheme:light;--forest:#153f36;--green:#246453;--cream:#f6f4ed;--paper:#fffefa;--line:#d8ddd4;--ink:#20372f;--muted:#65766d;--gold:#d7b569;--danger:#c42732;--reading:19px;--split:50%}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;border:1px solid #bdc9bd;border-radius:8px;background:var(--paper);color:var(--ink);padding:10px 16px;font-weight:600;transition:background .15s,border-color .15s}button:hover{background:#edf2e9;border-color:#698675}button:disabled{cursor:default;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #c19235;outline-offset:3px}.primary{background:var(--forest);border-color:var(--forest);color:white}.primary:hover{background:#246453;color:white}.danger{background:var(--danger);border:2px solid #9f1423;color:white;box-shadow:0 0 0 4px #c4273212}.danger:hover{background:#a91626;color:white}.quiet{background:transparent;border-color:transparent}.small{font-size:13px}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:750;color:#687b65}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.03em}h1{font-size:38px;line-height:1.12}h2{font-size:25px}h3{font-size:18px}input,select,textarea{border:1px solid #aebeb0;border-radius:7px;background:white;color:#172e26;padding:12px;width:100%}label{display:block;font-size:13px;font-weight:650;margin-bottom:7px}textarea{resize:vertical;line-height:1.65}a{color:var(--green)}.loading{text-align:center;padding:20vh 20px}.brand-icon{font-size:35px;color:var(--gold)}.brand{display:flex;gap:11px;align-items:center;font-size:18px;font-weight:750;line-height:1.1}.brand small{display:block;font-size:10px;letter-spacing:.17em;margin-top:6px;color:#d4dfd2;font-weight:500}.masthead{height:78px;background:var(--forest);color:white;padding:14px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.masthead .eyebrow{color:#d1ddc8}.masthead button{color:var(--forest)}.masthead .danger{color:white}.portal-wrap{max-width:1120px;margin:60px auto 30px;padding:0 28px;display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:start}.portal-copy{padding-top:14px}.portal-copy h1{font-family:Georgia,'Times New Roman',serif;font-size:53px;font-weight:500;margin:18px 0 22px}.portal-copy>p{max-width:490px;color:var(--muted);font-size:17px;line-height:1.7}.exam-facts{display:flex;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:32px;padding:23px 0;gap:38px}.exam-facts strong{display:block;font-size:27px;font-weight:650;line-height:1.15}.exam-facts span{font-size:12px;color:var(--muted)}.section-list{list-style:none;padding:0;margin:22px 0}.section-list li{padding:10px 0;display:flex;gap:14px;align-items:center}.section-list b{font-size:12px;display:grid;place-items:center;border:1px solid #c5d1c1;border-radius:50%;width:27px;height:27px}.section-list span{margin-left:auto;font-size:13px;color:var(--muted)}.entry-card{border:1px solid #d3dbcd;background:var(--paper);border-radius:16px;padding:30px;box-shadow:0 14px 40px #17392b07}.entry-card h2{margin-bottom:7px}.entry-card .field{margin:22px 0}.entry-card button[type=submit]{width:100%;margin-top:3px}.entry-switch{text-align:center;margin:18px 0 0}.entry-switch button{font-size:13px;text-decoration:underline}.error{padding:11px 14px;background:#fff0ee;border:1px solid #efc5bf;border-radius:7px;color:#922032;font-size:14px;margin:14px 0}.notice{padding:16px 18px;background:#eef2e8;border-left:3px solid #718d5e;margin:18px 0;font-size:14px}.warning{background:#fff5da;border-color:#c08e20;color:#694b0d}.preflight{max-width:780px;margin:36px auto;padding:34px;background:var(--paper);border:1px solid var(--line);border-radius:14px}.preflight h1{font-size:32px}.preflight li{margin-bottom:11px}.preflight .actions{display:flex;justify-content:space-between;gap:20px;margin-top:26px}.preflight .identity{font-size:18px;border-bottom:1px solid var(--line);padding-bottom:16px}.preflight .checkline{display:flex;gap:12px;font-size:14px;margin:24px 0}.checkline input{width:20px;flex-shrink:0}.exam{height:100dvh;display:flex;flex-direction:column;background:white}.exam .masthead{height:72px;flex-shrink:0;padding:10px 24px}.exam-meta{display:flex;gap:22px;align-items:center}.clock{text-align:center;font-variant-numeric:tabular-nums;min-width:100px}.clock strong{display:block;font-size:25px;line-height:1.05}.clock span{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.clock.urgent{color:#ffd1c7}.submit-exam{min-width:155px;animation:submit-glow 3s ease-in-out infinite}@keyframes submit-glow{50%{box-shadow:0 0 0 5px #f3999928}}.section-tabs{display:flex;align-items:center;gap:4px;padding:9px 24px;background:#f2f4ed;border-bottom:1px solid var(--line);flex-shrink:0}.section-tabs button{padding:8px 16px;border-color:transparent;background:transparent;font-size:13px}.section-tabs button.active{background:white;border-color:#a9bfaa;color:#234e3b;box-shadow:0 2px 4px #163d2510}.section-tabs button small{font-weight:400;margin-left:8px;color:var(--muted)}.section-tabs .progress-label{margin-left:auto;font-size:12px;color:var(--muted)}.exam-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 26px;border-bottom:1px solid var(--line);gap:12px;flex-shrink:0}.question-title{display:flex;align-items:center;gap:11px;font-size:13px}.question-title b{font-size:16px}.question-title .flag{padding:6px 10px;font-size:12px}.flag.active{background:#fff1bc;border-color:#c69c37;color:#735208}.tools{display:flex;align-items:center;gap:6px}.tools button{font-size:12px;padding:6px 10px}.tools .font-size{font-size:11px;color:var(--muted);min-width:33px;text-align:center}.question-body{display:grid;grid-template-columns:minmax(0,var(--split)) 8px minmax(0,1fr);flex:1;min-height:0;font-size:var(--reading);background:#fff}.question-body article,.question-body .answer-pane{padding:28px 36px;overflow:auto;scrollbar-gutter:stable;min-width:0}.question-body .passage-pane{background:#fffefa}.source-content{line-height:1.7;overflow-wrap:break-word}.source-content p{margin:0 0 1.1em}.source-content ul,.source-content ol{padding-left:1.5em}.source-content table{border-collapse:collapse;width:100%;font-size:.85em;margin:15px 0}.source-content td,.source-content th{border:1px solid #899c8a;padding:5px 7px;text-align:left}.source-content img,.graphic{max-width:100%;height:auto;display:block;margin:10px auto 22px}.source-content svg{max-width:100%;height:auto}.divider{cursor:col-resize;background:#eef1e9;border-left:1px solid var(--line);border-right:1px solid var(--line);display:grid;place-items:center;color:#95a48d}.divider::before{content:'⋮';font-size:22px}.divider:hover,.divider:focus-visible{background:#d9e4d5}.prompt{font-weight:600;margin:0 0 23px;line-height:1.6}.choice-row{display:flex;align-items:stretch;gap:6px;margin:12px 0}.choice{flex:1;display:flex;align-items:flex-start;text-align:left;font-size:inherit;font-weight:400;line-height:1.5;padding:13px 15px;background:white;border:1px solid #bac8bb;border-radius:9px;gap:13px}.choice-letter{flex:0 0 28px;border:1px solid #829782;border-radius:50%;height:28px;display:grid;place-items:center;font-size:14px;font-weight:600;margin-top:1px}.choice.selected{border:2px solid #31634d;background:#edf4eb;padding:12px 14px}.choice.selected .choice-letter{background:var(--forest);color:white;border-color:var(--forest)}.choice-row.eliminated .choice{opacity:.52}.choice-row.eliminated .choice-text{text-decoration:line-through;text-decoration-thickness:1px}.eliminate{width:36px;flex-shrink:0;background:transparent;border:0;padding:0;font-size:19px;color:#73806f}.eliminate.active{color:#a42532}.clear-answer{font-size:12px;padding:6px 9px;margin-top:6px}.notes{margin-top:24px;border-top:1px solid var(--line);padding-top:15px;font-size:13px}.notes summary{cursor:pointer;color:#52664f}.notes textarea{min-height:85px;margin-top:10px;font-size:14px}.essay-tools{display:flex;align-items:center;gap:8px;border:1px solid #b5c6b6;border-bottom:0;background:#eff4eb;padding:9px 12px;font-size:12px;flex-wrap:wrap}.essay-tools output{margin-left:auto;color:#50694f}.essay-editor{border:1px solid #9ab19f;border-radius:0 0 7px 7px;min-height:380px;resize:vertical;padding:18px;font-size:var(--reading);line-height:1.75;display:block}.essay-hint{font-size:12px;color:var(--muted);margin-top:8px}.question-body.essay .passage-pane{background:#f6f7f2}.exam-footer{padding:13px 24px;border-top:1px solid var(--line);display:flex;gap:20px;align-items:center;justify-content:space-between;background:#f6f6f0;flex-shrink:0}.student-label{font-size:13px;font-weight:700;min-width:190px}.save-state{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:3px}.save-state.pending{color:#916716}.save-state.failed{color:#a32731}.nav-buttons{display:flex;gap:10px;min-width:220px;justify-content:flex-end}.nav-buttons button{min-width:96px}.question-menu{font-size:13px;min-width:180px}.question-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(43px,1fr));gap:8px;margin:15px 0 25px}.question-grid button{position:relative;padding:9px 4px;font-size:13px}.question-grid button.answered{background:#e4efdf;border-color:#83a47e}.question-grid button.current{outline:2px solid #174735;outline-offset:2px}.question-grid button.flagged::after{content:'⚑';position:absolute;right:1px;top:-7px;color:#9b740c;font-size:14px}.grid-key{font-size:12px;display:flex;gap:18px;color:var(--muted)}.completion{max-width:640px;margin:9vh auto;padding:35px;background:var(--paper);border:1px solid var(--line);border-radius:14px;text-align:center}.completion .seal{font-size:40px;color:var(--green);margin-bottom:20px}.completion h1{font-family:Georgia,serif;font-size:35px;font-weight:500}.completion dl{display:grid;grid-template-columns:1fr 1fr;text-align:left;background:#edf1e8;padding:20px;border-radius:8px;gap:8px;font-size:14px}.completion dd{margin:0;text-align:right}dialog{padding:0;border:1px solid #b7c7b5;border-radius:13px;box-shadow:0 24px 80px #0b251b40;width:min(660px,calc(100vw - 30px));max-height:85dvh;color:var(--ink);background:var(--paper)}dialog::backdrop{background:#0b251b88}.modal-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:18px 24px}.modal-header h2{font-size:23px;margin:0}.modal-body{padding:22px 24px;max-height:60dvh;overflow:auto}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:15px 24px;border-top:1px solid var(--line);flex-wrap:wrap}.modal-actions .danger{margin-left:auto}#toast{position:fixed;bottom:93px;left:50%;transform:translateX(-50%);max-width:min(520px,90vw);padding:12px 20px;border-radius:8px;background:#203e32;color:white;box-shadow:0 4px 25px #102b2233;z-index:120;font-size:14px}#guard{position:fixed;inset:0;z-index:95;display:grid;place-items:center;background:#14352eea;backdrop-filter:blur(5px);padding:25px}.guard-card{max-width:550px;background:var(--paper);border:1px solid #e2e7d5;border-radius:16px;padding:35px;text-align:center;box-shadow:0 24px 60px #0003}.guard-card h2{font-size:28px}.guard-card .clock{font-size:17px;color:#8b4e16;margin:20px}.guard-card p{color:var(--muted)}.guard-card .shield{font-size:33px;color:#709064;margin-bottom:16px}.teacher-main{max-width:1500px;margin:0 auto;padding:24px}.teacher-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.teacher-heading h1{font-size:29px;margin:0}.teacher-actions{display:flex;gap:8px}.roster-section{border:1px solid var(--line);background:var(--paper);border-radius:12px;overflow:hidden}.roster-group{padding:14px 18px}.roster-group+.roster-group{border-top:1px solid var(--line)}.roster-group h3{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#647759;margin:0 0 10px}.roster{display:flex;gap:8px;flex-wrap:wrap;max-height:230px;overflow:auto;padding:3px}.student-chip{display:flex;gap:9px;align-items:center;font-weight:600;text-align:left;font-size:14px;padding:9px 12px;background:#f1f6ed;border:1px solid #bacfb4;min-width:140px}.student-chip span.icon{font-size:20px}.student-chip small{display:block;font-size:10px;font-weight:400;color:#687c5f}.student-chip.attention{background:#fff3d4;border-color:#d6b25c}.student-chip.disconnected{background:#eaf1f8;border-color:#aac4db}.student-chip.selected{outline:2px solid var(--forest);outline-offset:1px}.teacher-panels{display:grid;grid-template-columns:1fr 370px;gap:24px;margin-top:24px}.teacher-panel{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:24px;min-width:0}.teacher-panel h2{font-size:22px;margin-bottom:8px}.teacher-panel .empty{padding:60px 15px;text-align:center;color:var(--muted)}.score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.score-grid>div{padding:15px 10px;background:#eef3e9;border:1px solid #d5e0ce;border-radius:7px}.score-grid strong{display:block;font-size:26px}.score-grid small{font-size:11px;color:#586e51}.score-grid .total{background:var(--forest);color:white}.score-grid .total small{color:#d2dfcc}.status-line{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:14px 0}.pill{display:inline-block;border:1px solid #bacab3;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:650;background:#edf3e7}.pill.warning{background:#fff2d5;border-color:#d9bc75}.teacher-controls{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0;border-bottom:1px solid var(--line);padding-bottom:18px}.teacher-controls button{font-size:12px}.response-list details{border-bottom:1px solid var(--line);padding:12px 0}.response-list summary{font-size:13px;cursor:pointer;display:flex;gap:12px;align-items:center}.response-list summary span{margin-left:auto;font-size:12px;color:var(--muted)}.response-list .review-source{padding:20px 10px;font-size:16px;line-height:1.65}.review-answer{border-left:3px solid #779869;background:#f0f4eb;padding:15px;white-space:pre-wrap;font-size:15px;margin:15px 0}.review-choice{padding:8px 12px;margin:6px 0;border:1px solid #d7dfd1;border-radius:5px;font-size:14px}.review-choice.selected{background:#e5f0df;border-color:#7a9a69}.event-list{font-size:12px;max-height:65vh;overflow:auto}.event{border-left:2px solid #c5d4bd;padding:0 0 18px 14px;position:relative}.event::before{content:'';position:absolute;left:-5px;top:5px;width:8px;height:8px;background:#bd9b43;border-radius:50%}.event time{display:block;color:var(--muted);font-size:11px}.event strong{display:block;margin:2px 0;font-size:12px}.event p{margin:0;color:var(--muted);overflow-wrap:anywhere}.monitor-note{font-size:12px;color:var(--muted);line-height:1.6;padding-top:18px;border-top:1px solid var(--line);margin-top:15px}.teacher-summary{display:flex;gap:23px;font-size:13px;color:var(--muted);margin-bottom:18px}.rubric-row{display:grid;grid-template-columns:1fr 85px;gap:15px;align-items:center;margin:12px 0}.rubric-row label{margin:0}.rubric-feedback{font-size:13px;white-space:pre-wrap;line-height:1.65}.conflict{background:#fff3de;border:1px solid #d4b374;padding:16px;border-radius:8px;font-size:13px}.fatal{padding:30px}.native-mark,mark{background:#f6df75;color:inherit}::highlight(exam-highlight){background:#f6df75;color:inherit}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:1000px){.portal-wrap{gap:35px}.portal-copy h1{font-size:43px}.question-body article,.question-body .answer-pane{padding:24px}.tools{gap:2px}.tools button{padding:6px 7px}.teacher-panels{grid-template-columns:1fr 300px}.exam .brand{font-size:15px}.exam-meta{gap:13px}.student-label{min-width:140px}}@media(max-width:760px){.masthead{padding:14px 18px}.portal-wrap{display:block;margin-top:25px;padding:0 20px}.portal-copy{padding:0}.portal-copy h1{font-size:38px}.exam-facts{margin-top:20px}.entry-card{margin:25px 0}.section-list{display:none}.preflight{margin:20px 15px;padding:25px}.exam .masthead{height:auto;min-height:70px;padding:10px 12px}.exam .brand small{font-size:8px}.exam .brand-icon{display:none}.exam-meta{gap:10px}.clock{min-width:72px}.clock strong{font-size:22px}.submit-exam{min-width:0;font-size:12px;padding:10px}.section-tabs{padding:8px 10px;gap:1px}.section-tabs button{padding:7px 9px;font-size:12px}.section-tabs button small,.progress-label{display:none}.exam-toolbar{padding:8px 12px;flex-wrap:wrap;gap:5px}.question-title{font-size:12px}.tools button{font-size:11px}.question-body{display:block;overflow:auto}.question-body article,.question-body .answer-pane{overflow:visible;padding:22px}.question-body .passage-pane{border-bottom:1px solid var(--line)}.divider{display:none}.exam-footer{padding:10px 12px;gap:6px;flex-wrap:wrap}.student-label{min-width:110px;font-size:11px}.nav-buttons{min-width:0;gap:5px}.nav-buttons button{min-width:0;padding:9px 11px;font-size:12px}.question-menu{min-width:0;padding:9px 11px;font-size:11px}.essay-editor{min-height:350px}.teacher-main{padding:15px}.teacher-panels{grid-template-columns:1fr}.teacher-heading{align-items:flex-start}.teacher-heading h1{font-size:24px}.teacher-actions{flex-wrap:wrap}.score-grid{gap:6px}.score-grid strong{font-size:21px}.teacher-panel{padding:18px}.teacher-summary{gap:12px;flex-wrap:wrap}.completion{margin:30px 15px;padding:28px}.preflight .actions{flex-wrap:wrap}}@media print{body{display:none!important}}

.data-figure{margin:10px 0 26px;max-width:100%}.table-scroll{overflow-x:auto}.data-figure table{min-width:420px}.data-figure caption{font-size:.95em;font-weight:650;text-align:center;margin-bottom:12px;line-height:1.4}.bar-figure{max-width:560px;margin-left:auto;margin-right:auto}.review-source table{border-collapse:collapse;width:100%;font-size:.85em}.review-source th,.review-source td{border:1px solid #839783;padding:6px}.review-source svg{max-width:100%;height:auto}

.figure-tools{display:flex;justify-content:flex-end;margin:-12px 0 12px}.figure-tools button{padding:5px 8px;color:#416448}#line-reader{position:fixed;pointer-events:none;background:#e7ec8c30;border-top:2px solid #6d8b66;border-bottom:2px solid #6d8b66;z-index:30}.tools button[aria-pressed="true"]{background:#e6efdf;border-color:#77946d}.figure-dialog{width:min(1100px,calc(100vw - 30px))}.figure-dialog .modal-body{max-height:72dvh}.enlarged-figure{font-size:23px}.enlarged-figure .data-figure,.enlarged-figure .bar-figure{max-width:none}.enlarged-figure svg{display:block;width:100%;max-height:64vh}.enlarged-figure table{min-width:650px}

/* Midterm student reading tools and private teacher reminders — U0192. */
.highlight-palette{position:fixed;z-index:85;display:flex;gap:5px;align-items:center;padding:7px;background:#fffefa;border:1px solid #9db39e;border-radius:11px;box-shadow:0 5px 22px #143c3330;max-width:calc(100vw - 16px)}.highlight-palette button{width:36px;height:36px;min-width:36px;padding:0;border:1px solid #788875;border-radius:6px;font-size:17px;color:#183a30}.highlight-palette .highlight-swatch span{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:3px}.highlight-palette .yellow,.native-mark.highlight-yellow{background:#f6df75}.highlight-palette .green,.native-mark.highlight-green{background:#bde5bd}.highlight-palette .blue,.native-mark.highlight-blue{background:#b9ddf5}.highlight-palette .pink,.native-mark.highlight-pink{background:#f3bfd3}.highlight-palette .highlight-erase{margin-left:4px;background:white}.highlight-palette .quiet{border-color:transparent;color:#5e7164}::highlight(exam-highlight-yellow){background:#f6df75;color:inherit}::highlight(exam-highlight-green){background:#bde5bd;color:inherit}::highlight(exam-highlight-blue){background:#b9ddf5;color:inherit}::highlight(exam-highlight-pink){background:#f3bfd3;color:inherit}.eliminate{min-width:42px;min-height:44px;border:1px solid transparent;border-radius:8px}.eliminate:hover{background:#fff0ef;border-color:#d6b2b3}.eliminate.active{background:#f9e8e9;border-color:#e0b5bb}.student-reminder{position:fixed;z-index:110;right:20px;top:88px;width:min(470px,calc(100vw - 30px));padding:16px 18px;display:flex;gap:15px;align-items:flex-start;background:#fff7d8;border:2px solid #cfb15d;border-radius:12px;box-shadow:0 7px 28px #203c2533}.student-reminder strong{font-size:13px;color:#58430e}.student-reminder p{margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.5}.student-reminder button{padding:7px 10px;font-size:12px;flex-shrink:0}.student-reminder>div{min-width:0;max-height:35vh;overflow:auto}@media(max-width:760px){.highlight-palette button{width:34px;min-width:34px;height:38px}.student-reminder{top:78px;right:15px;padding:12px;gap:10px}}

/* U0192: isolated midterm teacher controls; TOEFL classroom attention palette. */
.registration-control{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;background:var(--paper);border:1px solid var(--line);border-radius:10px;margin-bottom:18px}.registration-control small{display:block;color:var(--muted);margin-top:4px;font-size:12px}.registration-control button{flex-shrink:0}.student-chip{min-width:180px;max-width:100%;gap:10px;color:#213b39}.student-chip.focused{background:#e8f6ed;border-color:#acd8bb}.student-chip.attention{background:#fff3c8;border-color:#dcc36e}.student-chip.disconnected{background:#e6f1fd;border-color:#abc8eb}.student-chip.submitted{background:#f1f3ef;border-color:#c7d1c2}.student-chip .student-chip-text{min-width:0}.student-chip strong{font-size:14px;font-weight:800;letter-spacing:.02em;overflow-wrap:anywhere}.student-chip small{color:#40584e;white-space:normal}.student-chip .current-progress{font-size:12px;font-weight:700;margin:2px 0}.activity-face{display:inline-block;flex:0 0 25px;width:25px;height:25px;filter:drop-shadow(0 0 3px currentColor);font-size:23px;line-height:25px;text-align:center}.activity-face::before{content:"";display:block;width:100%;height:100%;background:currentColor;mask-size:contain;mask-position:center;mask-repeat:no-repeat}.student-chip.focused .activity-face{color:#03cc55}.student-chip.attention .activity-face{color:#edba00}.student-chip.disconnected .activity-face{color:#168cff}.student-chip.submitted .activity-face{color:#527252;filter:none}.student-chip.submitted .activity-face::before{display:none}.teacher-controls .delete-record{color:#a3202c;border-color:#d59ba0;margin-left:auto;background:#fff7f6}.teacher-controls .delete-record:hover{background:#ffefed;border-color:#b32c38}.latest-reminder{padding:12px 15px;border-left:3px solid #7a9b75;background:#f0f5ec;margin:0 0 18px;font-size:13px}.latest-reminder p{white-space:pre-wrap;margin:5px 0}.latest-reminder small{color:var(--muted)}.reminder-presets{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.reminder-presets button{padding:7px 10px;font-size:12px}.roster{overscroll-behavior:contain}:fullscreen .teacher-main .roster-section{position:sticky;top:0;z-index:15;box-shadow:0 5px 18px #153f3617}:fullscreen .teacher-main .roster{max-height:min(190px,20vh)}@media(max-width:760px){.registration-control{align-items:flex-start;flex-wrap:wrap}.student-chip{min-width:160px}.teacher-controls .delete-record{margin-left:0}.activity-face{flex-basis:23px;width:23px;height:23px}}
.student-chip.focused .activity-face::before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Cpath%20d%3D%22M8%2014c1.5%203%206.5%203%208%200%22/%3E%3Cpath%20d%3D%22M8.5%208.5h.01M15.5%208.5h.01%22%20stroke-width%3D%223%22/%3E%3C/svg%3E")}
.student-chip.attention .activity-face::before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Cpath%20d%3D%22M8%2016c1.5-3%206.5-3%208%200%22/%3E%3Cpath%20d%3D%22M8.5%208.5h.01M15.5%208.5h.01%22%20stroke-width%3D%223%22/%3E%3C/svg%3E")}
.student-chip.disconnected .activity-face::before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%203v5m8-5v5M6%208h12v4a6%206%200%200%201-12%200V8zm6%2010v3m-3%200h6%22/%3E%3C/svg%3E")}

/* U0195 — compact, independently expandable teacher record and typed definitions. */
.teacher-empty{padding:22px 4px;margin:0;color:var(--muted);font-size:13px}.teacher-record{margin-top:18px;max-width:1050px;padding:20px}.student-record-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.student-record-heading h2{margin:0}.student-record-heading .eyebrow{margin:0 0 4px}.student-record-heading>button{font-size:22px;padding:0 10px}.teacher-category{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fffefa;overflow:hidden}.teacher-category>summary{display:flex;justify-content:space-between;gap:16px;align-items:center;cursor:pointer;padding:14px 17px;list-style:none;background:#f2f5ed}.teacher-category>summary::-webkit-details-marker{display:none}.teacher-category>summary strong{font-size:14px}.teacher-category>summary small{display:block;font-size:12px;color:var(--muted);margin-top:2px}.category-chevron{font-size:22px;transition:transform .15s}.teacher-category[open] .category-chevron{transform:rotate(180deg)}.teacher-category-body{padding:0 17px 18px}.teacher-category-body .teacher-controls{border-bottom:0;margin:15px 0 0;padding-bottom:0}.teacher-category-body .event-list{padding-top:18px;max-height:50vh}.teacher-category-body .response-list{margin-top:12px}.teacher-category .score-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.teacher-category .score-grid strong{font-size:23px}.definition-label{font-size:16px;margin-bottom:12px}.definition-editor{font-size:var(--reading);line-height:1.75;min-height:140px;max-width:100%;resize:vertical}.definition-hint,.year-test-note{font-size:13px;color:var(--muted);margin-top:12px}.question-body.definition .passage-pane{background:#f6f7f2}.question-body.definition .source-content{font-size:1.15em}.teacher-category summary:focus-visible{outline:3px solid #c19235;outline-offset:-3px}@media(max-width:760px){.teacher-record{padding:14px}.teacher-category>summary{padding:12px}.teacher-category-body{padding:0 12px 14px}.teacher-category .score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* U0199 — five aligned vocabulary pairs per page and separate bonus assessment. */
.vocabulary-page{flex:1;min-height:0;overflow:auto;background:#fffefa;padding:22px 30px;font-size:var(--reading)}.vocabulary-page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;max-width:1120px;margin:0 auto 18px;font-size:15px}.vocabulary-page-heading p{margin:5px 0 0;color:var(--muted);font-size:13px}.vocabulary-page-heading>span{font-size:13px;color:var(--muted);white-space:nowrap}.vocabulary-columns,.vocabulary-row{display:grid;grid-template-columns:minmax(160px,35%) minmax(0,1fr);max-width:1120px;margin:auto;gap:26px}.vocabulary-columns{padding:0 14px 10px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.vocabulary-row{padding:12px 14px;border-top:1px solid var(--line);border-left:3px solid transparent}.vocabulary-row.current{background:#f2f6ee;border-left-color:#567b57}.vocabulary-word{display:flex;align-items:flex-start;gap:15px;padding-top:14px;min-width:0}.vocabulary-number{font-size:13px;color:var(--muted);min-width:22px;padding-top:3px;font-variant-numeric:tabular-nums}.vocabulary-word-label{margin:0;font-size:1.06em;line-height:1.4;cursor:text;font-weight:650;overflow-wrap:anywhere}.vocabulary-input{display:block;min-height:66px;max-height:220px;resize:vertical;margin:0;padding:10px 13px;font-size:var(--reading);line-height:1.4}.vocabulary-row-tools{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-top:5px}.vocabulary-row-tools>button{font-size:11px;padding:2px 4px;color:var(--muted)}.vocabulary-row-tools>button[aria-pressed="true"]{color:#875e05}.vocabulary-notes{font-size:12px;min-width:70px;max-width:75%;color:var(--muted);text-align:right}.vocabulary-notes summary{cursor:pointer;padding:3px}.vocabulary-notes textarea{font-size:13px;min-height:58px;margin-top:6px;text-align:left}.five-part-exam .section-tabs{flex-wrap:wrap}.bonus-score-summary{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;padding:15px;background:#f6f1e2;border:1px solid #ded2b2;border-radius:8px}.bonus-score-summary strong{display:block;font-size:23px}.bonus-score-summary span{font-size:12px;color:var(--muted)}.teacher-category .score-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}@media(max-width:760px){.vocabulary-page{padding:16px 12px}.vocabulary-page-heading{margin-bottom:14px;gap:10px}.vocabulary-columns,.vocabulary-row{grid-template-columns:minmax(95px,33%) minmax(0,1fr);gap:10px}.vocabulary-row{padding:10px 5px}.vocabulary-word{gap:7px}.vocabulary-number{min-width:16px;font-size:11px}.vocabulary-word-label{font-size:.92em}.vocabulary-input{padding:9px;font-size:var(--reading)}.vocabulary-page-heading strong{font-size:13px}.vocabulary-columns{font-size:10px;padding:0 5px 8px}.bonus-score-summary{gap:10px}.five-part-exam .section-tabs{gap:2px}}

/* U0204 — concise entry, scoped staff administration and isolated previews. */
.compact-entry{max-width:1050px;align-items:center;gap:76px;margin-top:70px}.compact-entry .portal-copy h1{font-size:50px;max-width:440px;line-height:1.08;margin-bottom:22px}.compact-entry .portal-copy>p:last-child{max-width:360px;font-size:18px;line-height:1.6}.compact-entry .entry-card{padding:28px 32px}.compact-entry .entry-card h2{font-size:25px;margin-bottom:22px}.compact-entry .entry-card details{margin:0 0 18px}.compact-entry .entry-card details input{margin-top:6px}.staff-name{align-self:center;font-size:13px;color:var(--muted);margin-right:6px}.staff-scope{font-size:13px;color:var(--muted);margin:8px 0 0}.administrator-tools{margin-bottom:18px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px;align-items:start}.administrator-tools .teacher-category{margin:0}.preview-controls{border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:16px 18px;display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}.preview-controls strong{font-size:14px}.preview-controls small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.teacher-account-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid var(--line)}.teacher-account-row:last-child{border-bottom:0}.teacher-account-row strong{font-size:14px}.teacher-account-row small{display:block;line-height:1.6;color:var(--muted);font-size:12px;margin-top:5px}.teacher-account-row .teacher-actions{flex-shrink:0}.teacher-account-row button{font-size:12px;padding:7px 10px}.delete-record{color:#a3202c;border-color:#d59ba0;background:#fff7f6}.account-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:15px}.permission-group{border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin:18px 0}.permission-group legend{font-size:13px;font-weight:700;padding:0 6px}.permission-group .checkline{margin:10px 0}.grading-hint{color:var(--muted);font-size:13px;margin:0 0 18px}.grade-table-panel{border:1px solid var(--line);border-radius:11px;background:var(--paper);padding:18px;margin-bottom:20px}.grade-table-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.grade-table-heading h2{font-size:20px;margin:0 0 6px}.grade-table-heading p{margin:0 0 15px}.grade-table-heading>button{font-size:22px;padding:0 8px}.grade-table-scroll{overflow:auto;max-height:60vh}.grade-table-scroll table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;white-space:nowrap}.grade-table-scroll th,.grade-table-scroll td{border-bottom:1px solid var(--line);padding:10px 12px}.grade-table-scroll thead th{background:#edf3e7;position:sticky;top:0;z-index:1}.grade-table-scroll tbody th{font-weight:650}.grade-table-scroll tbody tr:nth-child(even){background:#f8faf5}.objective-grade-list{max-height:38vh;overflow:auto;border-bottom:1px solid var(--line);margin-bottom:16px;padding-right:10px}.preview-label{font-size:12px;color:#7c5b16;font-weight:700;margin-left:auto;padding:8px 12px;background:#fff2d5;border:1px solid #dac383;border-radius:6px}.preview-answer-key{font-size:13px;line-height:1.6;background:#edf6e8;border:1px solid #acc8a1;border-radius:7px;padding:10px 13px;margin:0 0 16px;color:#2e532d;white-space:pre-wrap}.vocabulary-answer .preview-answer-key{margin:9px 0 0;font-size:12px}.choice.preview-correct{outline:2px solid #639957;outline-offset:2px}.choice.preview-correct .choice-letter{background:#e2f1da;color:#2f5b2f}.exam-meta #exit-preview,.exam-meta #preview-keys{font-size:12px;padding:8px 10px}.preview-label+.exam-meta .clock strong{font-size:22px}.preview-label+.exam-meta .clock{min-width:85px}.preview-label+.exam-meta{gap:12px}
@media(max-width:1050px){.administrator-tools{grid-template-columns:1fr}.preview-label{display:none}.exam-meta #preview-keys{max-width:100px}.compact-entry{gap:40px}.compact-entry .portal-copy h1{font-size:44px}}
@media(max-width:760px){.compact-entry{margin-top:35px}.compact-entry .portal-copy h1{font-size:36px;margin-bottom:12px}.compact-entry .portal-copy>p:last-child{font-size:16px}.compact-entry .entry-card{padding:24px}.staff-name{display:none}.teacher-heading{flex-wrap:wrap}.teacher-account-row{flex-wrap:wrap}.account-fields{grid-template-columns:1fr}.preview-controls .teacher-actions{width:100%}.preview-controls .teacher-actions button{flex:1}.exam-meta:has(#exit-preview){flex-wrap:wrap;justify-content:flex-end;gap:5px}.exam-meta #exit-preview,.exam-meta #preview-keys{font-size:10px;padding:6px;max-width:90px}.exam-meta:has(#exit-preview) .clock{display:none}.grade-table-panel{padding:12px}.preview-answer-key{font-size:12px}}

/* Year 11 current vocabulary paper: ten aligned words and horizontal choices. */
.vocabulary-choice-page{padding:12px 24px 20px}.vocabulary-choice-page .vocabulary-page-heading{padding:0 0 10px;align-items:center;max-width:none;margin-bottom:8px}.vocabulary-choice-page .vocabulary-columns,.vocabulary-choice-row{display:grid;grid-template-columns:minmax(145px,20%) minmax(0,1fr);gap:16px}.vocabulary-choice-page .vocabulary-columns{padding:5px 10px;font-size:11px;max-width:none}.vocabulary-choice-row{padding:10px;border-top:1px solid var(--line);border-left:3px solid transparent;align-items:start}.vocabulary-choice-row.current{border-left-color:var(--green);background:#f3f7ef}.vocabulary-choice-row .vocabulary-word{gap:10px;padding-top:7px;min-width:0;align-items:baseline}.vocabulary-choice-row .vocabulary-word-label{font-size:var(--reading);line-height:1.4}.vocabulary-choice-row .vocabulary-answer{min-width:0}.vocabulary-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:stretch;font-size:var(--reading)}.vocabulary-choices .choice-row{margin:0;gap:1px;min-width:0}.vocabulary-choices .choice{min-width:0;padding:7px 6px;gap:6px;border-width:2px;border-color:#bac8bb;border-radius:6px;line-height:1.4}.vocabulary-choices .choice.selected{padding:7px 6px;border-color:#31634d}.vocabulary-choices .choice-letter{flex-basis:20px;width:20px;height:20px;font-size:11px;margin-top:3px}.vocabulary-choices .choice-text{overflow-wrap:anywhere}.vocabulary-choices .eliminate{width:26px;font-size:18px}.vocabulary-choice-row .vocabulary-row-tools{gap:5px;padding-top:3px;align-items:start}.vocabulary-choice-row .vocabulary-row-tools>button{font-size:11px;padding:2px 6px;white-space:nowrap}.vocabulary-choice-row .vocabulary-notes{flex:1;min-width:0;font-size:11px}.vocabulary-choice-row .vocabulary-notes summary{padding:2px 6px}.vocabulary-choice-row .vocabulary-notes textarea{font-size:var(--reading);min-height:65px}.vocabulary-choice-row .preview-answer-key{margin:5px 0 0;padding:5px 8px;font-size:12px}.vocabulary-choice-page .vocabulary-page-heading strong{font-size:14px}.vocabulary-choice-page .vocabulary-page-heading>span{white-space:nowrap;font-size:12px}
@media(max-width:900px){.vocabulary-choice-page{padding:10px 12px}.vocabulary-choice-page .vocabulary-columns,.vocabulary-choice-row{grid-template-columns:minmax(115px,22%) minmax(0,1fr);gap:10px}.vocabulary-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.vocabulary-choice-row .vocabulary-row-tools{flex-wrap:wrap}}
@media(max-width:520px){.vocabulary-choice-page .vocabulary-columns,.vocabulary-choice-row{grid-template-columns:minmax(80px,25%) minmax(0,1fr);gap:7px}.vocabulary-choice-row{padding:8px 3px}.vocabulary-choice-row .vocabulary-word{gap:5px;flex-wrap:wrap}.vocabulary-choices .choice{gap:4px;padding:6px 4px}.vocabulary-choices .choice.selected{padding:6px 4px}.vocabulary-choices .choice-letter{flex-basis:17px;width:17px;height:17px;font-size:10px}.vocabulary-choices .eliminate{width:23px}.vocabulary-choice-page .vocabulary-page-heading{gap:10px}}

/* Dedicated invigilator display; classroom teacher and student layouts stay independent. */
.invigilator-screen{min-height:100dvh;display:flex;flex-direction:column;background:#f5f7f1;color:var(--ink);padding:0 26px 22px}.invigilator-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid #cfdbce}.invigilator-header>div:first-child{display:flex;align-items:baseline;gap:14px}.invigilator-header strong{font-size:17px}.invigilator-header span{font-size:12px;color:var(--muted)}.invigilator-controls{display:flex;align-items:center;gap:8px}.invigilator-controls button{padding:5px 9px;font-size:12px;white-space:nowrap}.invigilator-controls .offline{color:#1b69a5}.invigilator-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;padding:23px 0 20px;border-bottom:1px solid #cfdbce}.invigilator-entry .eyebrow{margin-bottom:7px}.invigilator-entry a{display:block;font-size:clamp(17px,1.9vw,32px);font-weight:750;line-height:1.3;overflow-wrap:anywhere;text-decoration:none;color:#184b3b}.invigilator-entry p:last-child{margin:10px 0 0;font-size:clamp(15px,1.3vw,23px);line-height:1.5}.invigilator-code{min-width:220px;text-align:center;border:1px solid #abc1a7;background:#fffefa;border-radius:12px;padding:12px 25px}.invigilator-code>span{display:block;font-size:13px;font-weight:700;color:#5b7354}.invigilator-code>strong{display:block;font:800 clamp(38px,4.6vw,74px)/1.1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;margin:5px -.12em 2px 0;color:#164b36}.invigilator-code>small{display:block;font-size:11px;color:var(--muted)}.invigilator-code>small:empty{display:none}.invigilator-roster{flex:1;min-height:0}.invigilator-roster-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px;padding:18px 0 12px}.invigilator-roster-heading h1{font-size:22px;margin:0;letter-spacing:-.02em}.invigilator-roster-heading h1>span{display:inline-block;font-size:14px;margin-left:8px;color:var(--muted);font-weight:500}.invigilator-roster-heading p{font-size:12px;color:var(--muted);margin:0}.invigilator-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));align-content:start;gap:13px;max-width:100%}.invigilator-card.student-chip{--status-bg:#e8f6e4;--status-border:#97bf8b;--status-ink:#1c522f;position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 9px;min-width:0;min-height:164px;border:2px solid var(--status-border);border-radius:12px;background:var(--status-bg);color:var(--status-ink);padding:16px 17px;box-shadow:0 2px 5px #143d2310;transition:background-color .15s,border-color .15s;opacity:1;text-align:left}.invigilator-card.student-chip:hover:not(:disabled){outline:2px solid #386d4c;outline-offset:2px;background:var(--status-bg)}.invigilator-card.student-chip.attention{--status-bg:#fff2c9;--status-border:#d2b441;--status-ink:#73560d}.invigilator-card.student-chip.disconnected{--status-bg:#dfedfc;--status-border:#96badf;--status-ink:#20547c}.invigilator-card.student-chip.submitted{--status-bg:#edf1e8;--status-border:#bccbb2;--status-ink:#527252}.invigilator-person{display:flex;align-items:center;gap:9px;min-width:0}.invigilator-card .activity-face{flex:0 0 35px;width:35px;height:35px;font-size:32px;line-height:35px;filter:none}.invigilator-card .invigilator-name{font-size:clamp(30px,2.4vw,36px);line-height:1.25;font-weight:800;overflow-wrap:anywhere;word-break:keep-all}.invigilator-count{grid-column:2;grid-row:1/4;text-align:center;align-self:center;min-width:62px}.invigilator-count>strong{font-size:clamp(36px,3.5vw,58px);line-height:1;font-weight:800;font-variant-numeric:tabular-nums}.invigilator-count>span{display:block;font-size:10px;font-weight:600;margin-top:5px}.invigilator-progress{grid-column:1;font-size:13px;font-weight:600;line-height:1.4;padding-top:8px}.invigilator-state{grid-column:1;font-size:12px;font-weight:500}.invigilator-help-note{grid-column:1/-1;min-height:17px;font-size:11px;font-weight:700;color:inherit}.invigilator-empty{grid-column:1/-1;padding:45px 20px;text-align:center;border:1px dashed #b7cab1;border-radius:12px;color:var(--muted)}.invigilator-card.help-flash{animation:invigilator-help-flash 700ms linear 3}.invigilator-card.help-flash .activity-face{color:inherit}.master-help-inbox{margin:0 0 18px;background:#f8f2ff;border:1px solid #d6c1e8;border-radius:10px;padding:13px 18px}.help-inbox-heading{display:flex;justify-content:space-between;align-items:center;gap:14px}.help-inbox-heading h2{font-size:17px;margin:0}.help-inbox-heading h2>span{display:inline-block;min-width:24px;text-align:center;margin-left:6px;background:#7853a4;color:white;border-radius:20px;padding:1px 6px;font-size:12px}.master-help-inbox>p{margin:7px 0 0}.help-request-list{list-style:none;padding:0;margin:10px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:9px}.help-request-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;background:white;border:1px solid #ddcce9;border-radius:7px;padding:10px 12px}.help-request-list li strong{font-size:17px}.help-request-list li span,.help-request-list li small{display:block;font-size:11px;color:var(--muted)}.help-request-list li button{font-size:12px;padding:7px 10px;flex-shrink:0}.preview-controls .teacher-actions{flex-wrap:wrap}.preview-controls [data-invigilator-preview]{font-size:12px}
@keyframes invigilator-help-flash{0%,49%{background:#7853a4;border-color:#5c398b;color:white}50%,100%{background:var(--status-bg);border-color:var(--status-border);color:var(--status-ink)}}
@media(min-width:1700px){.invigilator-screen{padding-left:38px;padding-right:38px}.invigilator-grid{grid-template-columns:repeat(auto-fit,minmax(285px,1fr));gap:16px}.invigilator-card.student-chip{min-height:180px;padding:19px 21px}.invigilator-card .activity-face{width:42px;height:42px;flex-basis:42px;line-height:42px}.invigilator-progress{font-size:16px}.invigilator-state{font-size:14px}.invigilator-count>span{font-size:12px}}
@media(max-width:760px){.invigilator-screen{padding:0 13px 18px}.invigilator-header{align-items:flex-start;flex-wrap:wrap;gap:9px}.invigilator-header>div:first-child{flex-wrap:wrap;gap:5px 12px}.invigilator-controls{margin-left:auto;flex-wrap:wrap}.invigilator-entry{grid-template-columns:minmax(0,1fr);gap:15px;padding:17px 0}.invigilator-code{justify-self:start;min-width:200px;padding:9px 22px}.invigilator-roster-heading{align-items:flex-start;flex-direction:column;gap:5px}.invigilator-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.invigilator-card.student-chip{min-height:148px}.invigilator-card .invigilator-name{font-size:30px}.invigilator-count>strong{font-size:43px}}
@media(prefers-reduced-motion:reduce){.invigilator-card.help-flash{animation:none;outline:3px solid #7853a4;outline-offset:1px}.invigilator-card.help-flash .invigilator-help-note{color:#63348b}.invigilator-card.student-chip{transition:none}}

/* Master-approved temporary QR access. The screen approval and teacher scope stay explicit. */
.qr-entry-button{width:100%;margin-top:6px}.qr-login-note{font-size:14px;color:var(--muted,#60716a);line-height:1.5;margin:10px 0 16px}.qr-divider{display:flex;align-items:center;gap:12px;color:#6f7c75;font-size:12px;margin:20px 0}.qr-divider:before,.qr-divider:after{content:"";height:1px;background:#dce3dc;flex:1}.qr-page{max-width:960px;margin:40px auto;padding:0 24px 60px}.qr-card{background:#fff;border:1px solid #d8e0d9;border-radius:22px;padding:clamp(24px,4vw,48px);box-shadow:0 12px 32px #183c2810}.qr-card h1{font-size:clamp(28px,3.5vw,42px);line-height:1.15;margin:8px 0 20px}.qr-card>p,.qr-card form p{line-height:1.6}.qr-card input:not([type=checkbox]),.qr-card select{width:100%;min-height:48px}.qr-card label:not(.checkline){display:block;font-weight:650;margin:20px 0 8px}.qr-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.qr-actions button{min-height:44px}.qr-device-label{font-size:20px;font-weight:700;overflow-wrap:anywhere}.qr-wait-layout{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:30px;align-items:center;margin:24px 0}.qr-wait-layout:not(:has(.qr-symbol-wrap)){grid-template-columns:1fr}.qr-symbol-wrap{max-width:320px;margin:0 auto;min-width:220px}.qr-symbol{display:block;width:100%;height:auto;background:white;border:1px solid #e2e8e2;border-radius:12px}.qr-matching-code{display:block;font-size:clamp(34px,5vw,48px);letter-spacing:.13em;color:#173c2c;font-variant-numeric:tabular-nums;margin:8px 0;overflow-wrap:anywhere}.qr-state{font-weight:700;background:#eef4ed;color:#234e36;border-radius:10px;padding:12px 16px}.qr-expiry{font-variant-numeric:tabular-nums;color:#526259}.qr-expired{color:#9a312a}.qr-session-banner{font-size:12px;color:#496359;background:#edf3ed;padding:7px 10px;border-radius:20px;white-space:nowrap}.master-qr-inbox{border:1px solid #c7d6ce;border-radius:16px;background:#f5f8f3;padding:20px;margin:20px 0}.qr-inbox-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.qr-inbox-heading h2{font-size:20px;margin:0}.qr-inbox-heading p{font-size:13px;color:#5b6d62;margin:6px 0}.qr-request-list{display:grid;gap:10px}.qr-request-card{display:flex;align-items:center;justify-content:space-between;gap:16px;background:white;border:1px solid #dce5dc;border-radius:12px;padding:16px}.qr-request-card strong{font-size:16px;overflow-wrap:anywhere}.qr-request-card .pill{margin-left:8px}.qr-request-card p{font-size:13px;margin:6px 0;line-height:1.5}.qr-request-card small{color:#617367;font-variant-numeric:tabular-nums}.qr-request-card .qr-actions{flex-shrink:0;margin:0}.qr-fixed-teacher{padding:14px;border:1px solid #d7e1d7;border-radius:10px;line-height:1.6}.qr-scope-note{font-size:14px;color:#3a5c46}.qr-approval-code{padding:14px 0}.qr-card .checkline{align-items:flex-start}.qr-card .checkline input{margin-top:4px}.qr-card .checkline span{line-height:1.5}.qr-card #qr-error{margin-top:16px}
@media(max-width:700px){.qr-page{margin:20px auto;padding:0 14px 30px}.qr-card{border-radius:16px;padding:22px}.qr-wait-layout{grid-template-columns:1fr;gap:18px}.qr-symbol-wrap{max-width:280px;width:100%;min-width:0}.qr-matching-code{font-size:36px}.qr-inbox-heading{align-items:flex-start}.qr-request-card{align-items:stretch;flex-direction:column}.qr-request-card .qr-actions{margin-top:4px}.master-qr-inbox{padding:15px}.qr-session-banner{white-space:normal}.teacher-main .teacher-actions{flex-wrap:wrap}.teacher-heading{flex-wrap:wrap}.administrator-tools{min-width:0}.qr-card select{font-size:16px}.qr-card input:not([type=checkbox]){font-size:16px}}

/* The same room deadline drives the classroom display and student clocks. */
.room-clock-panel { display:flex; flex-wrap:wrap; gap:12px 24px; align-items:center; justify-content:space-between; padding:14px 24px; margin-top:14px; border:1px solid #c3d3bf; border-radius:12px; background:#eff5ed; }
.room-clock-panel .eyebrow { margin:0 0 4px; }
.room-clock,.waiting-clock strong { display:block; font:750 clamp(32px,4.4vw,72px)/1.08 ui-monospace,monospace; letter-spacing:-.03em; color:#184b3b; font-variant-numeric:tabular-nums; }
.room-clock-panel button { font-size:clamp(17px,1.6vw,24px); padding:12px 28px; }
.waiting-room { max-width:680px; }
.waiting-clock { margin:26px 0 14px; padding:16px 22px; border-left:4px solid #509061; background:#eff5ed; }
.waiting-clock span { display:block; margin-top:6px; color:var(--muted); }
#waiting-connection { color:var(--muted); }
.teacher-paper-preview .choice:disabled { color:inherit; opacity:1; cursor:default; }
.teacher-paper-preview .notes,.teacher-paper-preview .vocabulary-notes,.teacher-paper-preview .essay-hint,.teacher-paper-preview .definition-hint,.teacher-paper-preview [data-vocabulary-flag],.teacher-paper-preview [data-vocabulary-clear],.teacher-paper-preview [data-definition-flag],.teacher-paper-preview .eliminate,.teacher-paper-preview #flag,.teacher-paper-preview #clear-answer,.teacher-paper-preview #highlight,.teacher-paper-preview #undo-highlight { display:none; }
