:root{color:#1f2328;background:#fff;font-family:system-ui,Segoe UI,Roboto,sans-serif;line-height:1.5}body{margin:0}main{max-width:60rem;margin:0 auto;padding:1.5rem}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.login{max-width:22rem}.login form{gap:1rem;display:grid}.login label{gap:.25rem;display:grid}input,button{font:inherit;padding:.4rem .6rem}[role=alert]{color:#b42318;margin:0}.brand{color:inherit;font-size:1.25rem;font-weight:600;text-decoration:none}.items{padding-left:1.25rem}.items li{margin:.25rem 0}.actions button,.inline button{margin-left:.25rem}.inline{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.stack{gap:.5rem;max-width:30rem;display:grid}.stack label{gap:.25rem;display:grid}textarea{font:inherit;padding:.4rem .6rem}fieldset{border:0;margin:0;padding:0}legend{margin-right:.5rem;padding:0}select{font:inherit;padding:.4rem .6rem}summary{cursor:pointer;margin:.5rem 0}.statuses{padding:0;list-style:none}.statuses li{margin:.25rem 0}.stack .inline label{align-items:center;gap:.25rem;margin-right:.75rem;display:inline-flex}.grade-and-note{margin-left:1.5rem}.grade-and-note summary{margin:.125rem 0;font-size:.9rem}.grade-and-note .stack{margin-bottom:.5rem}.grade-and-note input{max-width:10rem}
