:root{color:#1d2433;background:#f3f5f9;font-family:system-ui,sans-serif}body{margin:0}.shell{max-width:44rem;margin:0 auto;padding:1.5rem}header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}h1{margin:0;font-size:1.4rem}.actions{gap:.5rem;display:flex}button{font:inherit;cursor:pointer;background:#fff;border:1px solid #9aa5b8;border-radius:.4rem;padding:.45rem .9rem}button[type=submit]{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.card{background:#fff;border-radius:.6rem;margin-top:1.5rem;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #0002}h2{margin:0 0 1rem;font-size:1.1rem}form{gap:.8rem;max-width:22rem;display:grid}label{gap:.25rem;display:grid}input{font:inherit;border:1px solid #9aa5b8;border-radius:.4rem;padding:.45rem}dl{grid-template-columns:max-content 1fr;gap:.6rem 1.25rem;margin:0;display:grid}dt{color:#5b6476}dd{margin:0}.number{font-size:2.2rem;font-weight:700;line-height:1}[role=alert],.alert{color:#b42318}.shell.wide{max-width:84rem}.tabs{gap:.5rem;margin-top:1rem;display:flex}.tabs button[aria-pressed=true]{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.muted{color:#5b6476}.ok{color:#0a7a3f}.grading .actions{flex-wrap:wrap;margin:.6rem 0}.grading progress{width:100%;height:.6rem}.grading .columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1rem;display:grid}@media (width<=62rem){.grading .columns{grid-template-columns:1fr}}.grading .columns .card{margin-top:1rem}.messages{gap:.5rem;max-height:72vh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.messages li{background:#eef1f6;border-radius:.5rem;padding:.5rem .75rem}.messages li.from-us{background:#e4edff}.messages .meta{color:#5b6476;font-size:.8rem}.messages .msgno{color:#1d4ed8;min-width:1.6rem;font-weight:700;display:inline-block}.messages .body{white-space:pre-wrap;overflow-wrap:anywhere;margin:.25rem 0 0}.questionnaire{max-width:none}.questionnaire fieldset{border:1px solid #d5dbe6;border-radius:.5rem;gap:.4rem;margin:0 0 .8rem;padding:.6rem .8rem;display:grid}.questionnaire legend{padding:0 .3rem;font-weight:600}.questionnaire .help{color:#5b6476;margin:0;font-size:.85rem}.questionnaire .options{flex-wrap:wrap;gap:.3rem 1rem;display:flex}.questionnaire .option{align-items:center;gap:.35rem;display:flex}.questionnaire .inline{align-items:center;gap:.5rem;display:flex}.questionnaire input[type=number]{width:5rem}.questionnaire textarea{font:inherit;box-sizing:border-box;border:1px solid #9aa5b8;border-radius:.4rem;width:100%;padding:.4rem}.questionnaire .struggled{color:#5b6476;font-size:.85rem}
