.classroom{display:grid;gap:24px;min-width:0;max-width:100%;padding-bottom:20px}
.classroom *{box-sizing:border-box;min-width:0;overflow-wrap:anywhere}
.classroom-stack,.classroom-card{display:grid;gap:18px}
.classroom-card{padding:20px;border:1px solid var(--line);border-radius:16px}
.classroom-card h4,.classroom-card p{margin:0}
.classroom-body,.classroom-quote{white-space:pre-wrap;line-height:1.75}
.classroom-quote{font-family:Georgia,serif}
.classroom-meta,.classroom-intro{line-height:1.6}
.classroom-actions,.classroom-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:start}
.classroom button,.classroom a.outlined-btn{max-width:100%;white-space:normal;line-height:1.5;height:auto;min-height:46px}
.classroom-field{display:grid;gap:10px;margin:0;font-size:16px;line-height:1.5}
.classroom-field input,.classroom-field textarea,.classroom-field select{width:100%;max-width:100%;min-height:46px;font-size:16px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink)}
.classroom-field textarea{min-height:160px;resize:vertical}
.classroom-field:has(input[type=checkbox]){display:flex;align-items:start;gap:12px}
.classroom-field:has(input[type=checkbox])>span{order:2;flex:1}
.classroom-field input[type=checkbox]{width:24px;min-width:24px;min-height:24px;height:24px;margin-top:3px}
.classroom-evidence,.classroom-report{padding:16px;border:1px solid var(--line);border-radius:10px}
.classroom summary{cursor:pointer;min-height:44px;line-height:1.5;font-weight:700}
.classroom summary+*{margin-top:16px}
.classroom-status:empty{display:none}
.classroom-launch{display:grid;gap:14px;padding:20px;border:1px solid var(--line);border-radius:16px;margin-block:20px}
.classroom-launch p,.classroom-launch h3{margin:0}
.classroom-launch button{white-space:normal;max-width:100%;height:auto;min-height:46px}
@media(max-width:600px){.classroom-actions,.classroom-filters{display:grid;grid-template-columns:minmax(0,1fr)}.classroom-actions>button,.classroom-filters>button{width:100%}.classroom-card{padding:16px}.classroom{gap:20px}}

/* Same information hierarchy across devices; wider screens gain room, not extra navigation. */
.dialog:has(.classroom){width:min(1100px,96vw);max-height:92dvh}
.classroom{max-width:1020px;margin-inline:auto}
.classroom>nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.classroom>nav>button{width:100%}
.classroom-body,.classroom-quote,.classroom-intro,.classroom-reading-guide{max-width:72ch;line-height:1.75}
.classroom-filters{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;align-items:end}
.classroom-list-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.classroom-list-grid>.classroom-more,.classroom-list-grid>p{grid-column:1/-1}
.classroom-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.classroom .classroom-field{margin:0;font-size:15px;letter-spacing:normal;line-height:1.6}
.classroom .classroom-field>span{font-size:14px;letter-spacing:normal;font-weight:650;color:var(--ink)}
.classroom form{max-width:850px;width:100%}
.classroom-status,.classroom-notice{white-space:pre-wrap;line-height:1.65}
.classroom-notice{padding:16px;border-inline-start:4px solid var(--gold);background:var(--card);border-radius:8px}
.classroom-reading-guide{padding-block:8px;color:var(--ink)}
.classroom p{font-size:16px}
.classroom .classroom-meta{font-size:14px}
.classroom :is(button,a.outlined-btn,a.primary-btn){font-size:14px}
.classroom h3{font-size:24px;line-height:1.35}
.classroom h4{font-size:20px;line-height:1.4}
.classroom h3[tabindex="-1"]:focus{outline:none}
.classroom button:focus-visible,.classroom summary:focus-visible,.classroom select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:800px){.classroom-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.classroom-filters>button{grid-column:1/-1}.classroom>nav{grid-template-columns:minmax(0,1fr)}.classroom-list-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.dialog:has(.classroom){width:100%;max-height:94dvh}.classroom-filters,.classroom-form-grid{grid-template-columns:minmax(0,1fr)}.classroom-card{gap:16px}.classroom-actions>button{width:100%}}
@media(prefers-reduced-motion:reduce){.classroom *{scroll-behavior:auto}}
