.classroom-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-block-end:18px}
.classroom-intro h2{margin:0;overflow-wrap:anywhere}
.classroom-intro p{color:var(--muted);margin:4px 0 0}
.classroom-meet{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;flex:none}
.classroom-grid,.classroom-lesson{display:grid;gap:16px;align-items:start}
.classroom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.classroom-lesson{grid-template-columns:minmax(0,1.85fr) minmax(250px,1fr)}
.classroom-lesson-main,.classroom-aside,.classroom-card,.classroom-entries{display:grid;gap:12px;min-width:0}
.classroom-card[hidden],.classroom-lesson[hidden]{display:none}
.classroom-card h3,.classroom-card h4,.classroom-card p{margin:0}
.classroom-card label{font-weight:600}
.classroom-card input:not([type=checkbox]),.classroom-card textarea{width:100%;min-width:0}
.classroom-card textarea{resize:vertical}
.classroom-card form{border-block-start:1px solid var(--line);padding-block-start:14px;margin-block-start:4px}
.classroom-consent{display:flex;align-items:flex-start;gap:8px;font-size:.875rem;line-height:1.65}
.classroom-consent input{flex:none;margin-block-start:.35em;min-height:0;width:18px;height:18px;accent-color:var(--primary)}
.classroom-heading,.classroom-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.classroom-heading{justify-content:space-between}
.classroom-actions code{overflow-wrap:anywhere;background:var(--accent-soft);padding:8px 12px;border-radius:8px}
.classroom-prompt{padding:16px;background:var(--accent-soft);border-radius:12px;font-family:var(--english-font,Georgia,serif);font-size:clamp(1.25rem,2.8vw,1.85rem);line-height:1.45;overflow-wrap:anywhere}
#classroom-current{display:grid;gap:12px}
#classroom-current[hidden],#classroom-meter[hidden]{display:none}
#classroom-meter meter{width:min(170px,65%);accent-color:var(--primary)}
#classroom-meter time{font-variant-numeric:tabular-nums;direction:ltr}
.classroom-correction{background:var(--accent-soft);padding:12px;border-radius:10px;overflow-wrap:anywhere}
.classroom-correction p,.classroom-correction .classroom-actions{margin-block-start:8px}
#classroom-draft-status:empty{display:none}
#classroom-draft-meter[hidden]{display:none}
#classroom-draft-meter meter{width:min(170px,65%);accent-color:var(--primary)}
#classroom-draft-meter time{font-variant-numeric:tabular-nums;direction:ltr}
.classroom-score{background:var(--accent-soft);color:var(--accent-ink);padding:6px 14px;border-radius:12px;font-size:1.4rem}
.classroom-scores{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.classroom-answer-scores{grid-template-columns:repeat(2,minmax(0,1fr))}
.classroom-scores .score-metric strong{display:block;font-size:1.125rem;color:var(--accent-ink)}
#classroom-result{scroll-margin-block-start:12px}
#classroom-audio{width:100%;min-width:0}
.classroom-entry{display:grid;gap:4px;text-align:start;min-width:0;overflow-wrap:anywhere;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
button.classroom-entry:hover,button.classroom-entry[aria-pressed=true]{background:var(--accent-soft);border-color:var(--input-border)}
.classroom-entry small{color:var(--muted)}
.classroom-entries{gap:7px}
.classroom-card details>.classroom-entries{max-height:20rem;overflow:auto;padding-block:6px;overscroll-behavior:contain}
.classroom-card details>summary{cursor:pointer;padding-block:8px}
.classroom-footer{margin-block-start:14px}
.classroom-status{padding:12px 16px;border:1px solid var(--line);background:var(--accent-soft);border-radius:10px;color:var(--ink)}
.classroom-status[data-error=true]{border-color:var(--input-border);font-weight:600}
.classroom-entry:focus-visible,.classroom-card summary:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
@media(max-width:1020px){.classroom-lesson{grid-template-columns:minmax(0,1fr)}}
@media(max-width:800px){.sidebar nav [data-page="classroom"]{display:none!important}}
@media(max-width:620px){
 .classroom-grid{grid-template-columns:minmax(0,1fr)}
 .classroom-scores{grid-template-columns:repeat(2,minmax(0,1fr))}
 .classroom-intro{align-items:flex-start;flex-wrap:wrap}
}
