.review-page{width:calc(100% - 48px);max-width:2200px}.review-header{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:16px;display:flex}.review-header h1{margin:4px 0}.review-header p{color:var(--muted);font-size:var(--text-md);margin:0}.review-tabs,.review-students{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.review-tabs button,.review-students button{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;font:inherit;font-size:var(--text-sm);padding:7px 14px}.review-tabs button{border-radius:var(--radius-md);width:38px;height:38px;padding:0;font-weight:700}.review-tabs button.active,.review-students button.active{border-color:var(--accent);color:var(--accent)}.review-tabs button.active{border-color:var(--forest);background:var(--forest);color:var(--on-accent)}.review-students button.done{background:var(--soft-green)}.review-students button.idle{color:var(--muted)}.review-statement-pane{margin-bottom:18px}.review-statement-body{align-items:flex-start;gap:20px;display:flex}.review-statement-text{flex:auto;min-width:0}.review-statement-assets{flex-direction:column;flex:none;gap:10px;max-width:280px;display:flex}.review-statement-assets img{border:1px solid var(--line);background:var(--drawing-paper);cursor:zoom-in;object-fit:contain;width:auto;max-width:280px;height:auto;max-height:200px;display:block}@media (max-width:900px){.review-statement-body{flex-direction:column}.review-statement-assets{max-width:100%}}.review-main{grid-template-columns:minmax(0,1fr) minmax(300px,400px) minmax(260px,340px);align-items:start;gap:18px;display:grid}.review-side{gap:18px;display:grid}@media (max-width:1500px){.review-main{grid-template-columns:minmax(0,1fr) minmax(280px,360px)}}@media (max-width:1100px){.review-main{grid-template-columns:minmax(0,1fr)}}.review-board-pane .statement-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.review-pane{border:1px solid var(--line);background:var(--card);padding:18px 20px}.review-pane h2{font-size:var(--text-base);margin:0 0 8px}.review-pane h2+*{margin-top:0}.review-pane>h2:not(:first-child){margin-top:20px}.review-time{color:var(--muted);font-size:var(--text-sm);margin-left:12px}.review-reference{border-left:3px solid var(--accent);background:var(--paper);padding:10px 14px}.review-answer{gap:6px;margin:0 0 10px;display:grid}.review-answer>div{gap:10px;display:flex}.review-answer dt{min-width:84px;color:var(--muted);font-size:var(--text-sm)}.review-answer dd{margin:0;font-weight:700}.review-auto{color:var(--muted);font-size:var(--text-sm);margin:0 0 12px}.review-photos{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.review-photos img{border:1px solid var(--line);width:100%;max-width:260px;height:auto}.review-board{border:1px solid var(--line);width:100%;height:clamp(460px,68vh,1000px)}.review-grade{border:1px solid var(--line);background:var(--card);align-items:start;gap:14px;padding:18px 20px;display:grid}.review-grade label{color:var(--muted);font-size:var(--text-sm);gap:6px;font-weight:700;display:grid}.review-grade input,.review-grade textarea{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);background:var(--card);font:inherit;padding:10px 12px;font-weight:400}.review-max{color:var(--muted);font-size:var(--text-sm);font-weight:400}.review-grade-actions{flex-wrap:wrap;grid-column:1/-1;gap:12px;display:flex}.assessment-item-actions a{border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:var(--text-sm);padding:6px 12px;text-decoration:none}.assessment-item-actions a:hover{border-color:var(--accent)}.review-board-pane.fullscreen{z-index:40;border:none;flex-direction:column;margin:0;display:flex;position:fixed;inset:0}.review-board-pane.fullscreen .review-board{flex:1;height:auto;max-height:none}.review-thumbs{flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.review-thumbs button{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;padding:0;line-height:0;display:block;overflow:hidden}.review-thumbs button:hover,.review-thumbs button:focus-visible{outline:2px solid var(--forest);outline-offset:1px}.review-thumbs img{object-fit:cover;width:84px;height:108px;display:block}.review-thumb-file{width:84px;height:108px;color:var(--muted-strong);font-size:var(--text-2xs);overflow-wrap:anywhere;align-items:center;padding:8px;line-height:1.3;display:flex}.review-history{border-top:1px dashed var(--line);margin-top:12px;padding-top:10px}.review-history summary{color:var(--muted);cursor:pointer;font-size:var(--text-sm)}.review-grade h2{font-size:var(--text-base);grid-column:1/-1;margin:0}.dashboard-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.dashboard-row{border:1px solid var(--line);background:var(--card);justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.dashboard-row-title{font-size:var(--text-base);color:inherit}a.dashboard-row-title:hover{color:var(--accent)}.dashboard-row-meta{color:var(--muted);font-size:var(--text-sm);margin:4px 0 0}.dashboard-row-idle{font-size:var(--text-sm);margin:6px 0 0}.dashboard-overdue{color:var(--danger)}@media (max-width:640px){.dashboard-row{flex-direction:column;align-items:flex-start}}.report-head{gap:8px;margin-bottom:18px;display:grid}.report-subtitle{color:var(--muted-strong)}.report-facts{flex-wrap:wrap;gap:18px;margin:0;display:flex}.report-facts div{gap:2px;display:grid}.report-facts dt{color:var(--muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em}.report-facts dd{margin:0}.report-print{justify-self:start}.report-table th[scope=row]{text-align:left}.report-reference{color:var(--muted-strong)}.report-note{color:var(--muted);font-size:var(--text-xs)}.report-row.verdict-right{background:var(--grid-right)}.report-row.verdict-wrong{background:var(--grid-wrong)}.report-row.verdict-partial{background:var(--grid-partial)}.report-total{font-size:var(--text-lg);margin:16px 0}.report-comments h2{font-size:var(--text-lg)}.report-comments ul{gap:6px;padding-left:18px;display:grid}@media print{.site-header,.teacher-nav,.back-link,.report-student-link,.report-print{display:none}.report-page{padding:0}}.report-student-link{font-size:var(--text-sm);justify-self:start}
.markdown-table-frame{max-width:100%;margin:10px 0}.markdown-table{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--ink) 35%, transparent) color-mix(in srgb, var(--ink) 8%, transparent);max-width:100%;overflow-x:auto}.markdown-table-rail{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--ink) 8%, transparent);pointer-events:none;height:4px;margin-top:6px}.markdown-table-thumb{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--ink) 35%, transparent);min-width:12px;height:100%;display:block}.markdown-table table{border-collapse:collapse;width:auto;min-width:100%}.markdown-table :is(th,td){border:1px solid var(--line);white-space:nowrap;vertical-align:middle;padding:6px 10px}.markdown-table th{background:color-mix(in srgb, var(--ink) 6%, transparent);font-weight:700}.markdown-inline{display:inline}.markdown-inline+.markdown-inline:before{content:" "}

