body{margin:0;background:#fbfafa;color:#3a3d42;font:400 15px/22px Assistant,-apple-system,system-ui,sans-serif}
header{background:#1a1b1f;color:#eef1f2;padding:18px 24px;border-bottom:3px solid #d4a418;font-weight:650}
main{padding:24px;max-width:560px}h1{font-size:20px;margin:0 0 12px}
.button{display:inline-block;background:#1a1b1f;color:#eef1f2;border:0;border-radius:8px;padding:10px 16px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
.button.secondary{background:#e7e6e6;color:#3a3d42}
label{display:block;margin:0 0 14px;font-weight:600}input,select{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:9px;font:inherit;border:1px solid #c9c8c8;border-radius:6px}
main>h2{margin-top:22px}#status{min-height:22px}#status.error{color:#a3261c}a{color:#9a7611}
main.wide,main{max-width:1560px}main>p,main>h1{max-width:1040px}h2{font-size:16px;margin:0 0 6px}h3{font-size:14px;margin:12px 0 4px}table{border-collapse:collapse;margin:12px 0 18px;width:100%}th,td{text-align:left;padding:7px 8px;border-bottom:1px solid #e7e6e6}
.trial{background:#fdf6df;border:1px solid #e8d28a;border-radius:8px;padding:9px 12px}.warn{background:#fdecea;border:1px solid #efb9b3;border-radius:8px;padding:9px 12px;margin:10px 0}.ok{color:#1c7a3e;font-weight:600}
.stats{display:flex;flex-wrap:wrap;gap:18px;margin:14px 0}.stats div{font-size:13px}.stats b{display:block;font-size:18px}
.head,.line>summary{display:grid;grid-template-columns:minmax(200px,2.4fr) repeat(10,minmax(72px,1fr)) minmax(112px,1.2fr);gap:14px;align-items:center;padding:8px}.n{text-align:right}.small{font-size:13px;color:#777}
.process{background:#e3f4e8;border:1px solid #a9d8b8;border-radius:10px;padding:12px 16px;margin:14px 0}.tools{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start;margin:14px 0 6px}#search{max-width:260px;margin:0}.filters{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid #c9c8c8;background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;cursor:pointer}.chip.on{background:#1a1b1f;color:#eef1f2;border-color:#1a1b1f}
.students{font-size:14px;margin:4px 0 10px}.students td,.students th{padding:4px 8px}.extra-box summary{list-style:none;display:inline-block}.extra-box summary::-webkit-details-marker{display:none}.extra-box[open]{flex-basis:100%}.extra-box .method{max-width:420px}.head{font-size:12px;color:#777;border-bottom:1px solid #c9c8c8}
.line>summary{cursor:pointer;list-style:none}.line>summary::-webkit-details-marker{display:none}.line{border-bottom:1px solid #e7e6e6}.who{font-weight:600}.total{font-weight:600}.body{padding:4px 8px 16px}
.tag{display:inline-block;background:#e7e6e6;border-radius:999px;padding:1px 9px;font-size:12px}.tag.bad{background:#fdecea;color:#a3261c}.tag.good{background:#e3f4e8;color:#1c7a3e}.blocks{color:#a3261c;margin:6px 0}
.needs{background:#fdecea;border:2px solid #d9534f;border-radius:10px;padding:14px 16px;margin:14px 0}.needs h3{margin-top:14px}.needs p{margin:2px 0 6px}
.attention{background:#fff;border-radius:6px;margin:6px 0 10px;font-size:14px}.attention td,.attention th{padding:6px 8px}.dupes{margin-top:12px}.dupes summary{display:block;padding:4px 0;font-size:14px}
.picker{position:relative;margin:0 0 14px}.picker label{margin:0}.options{list-style:none;margin:4px 0 0;padding:4px;max-height:220px;overflow:auto;background:#fff;border:1px solid #c9c8c8;border-radius:6px}.option{display:block;width:100%;text-align:left;background:none;border:0;padding:7px 8px;font:inherit;border-radius:4px;cursor:pointer}.option:hover,.option:focus{background:#f3f2f2}.form-error{color:#a3261c;margin:8px 0 0;font-weight:600}
.sort{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left}.sort.n{text-align:right}.sort:hover{color:#1a1b1f;text-decoration:underline}.sort[aria-pressed="true"]{color:#1a1b1f;font-weight:700}
.brex{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.brex .ref{max-width:240px;margin:0}.pick select{display:inline-block;width:auto;max-width:300px;margin:0}
.button.small{padding:5px 10px;font-size:13px}button:disabled{opacity:.45;cursor:not-allowed}.check{display:flex;gap:8px;align-items:center;font-weight:500;margin:8px 0}.check input{width:auto;margin:0}
.method,.approve{background:#f3f2f2;border-radius:8px;padding:10px;margin-top:10px}.method select,.method input.ref{max-width:320px;margin:6px 0}
@media (max-width:1180px){.attention,.students{display:block;overflow-x:auto}.head{display:flex;flex-wrap:wrap;gap:6px 12px}.sort.n{text-align:left}.line>summary{grid-template-columns:1fr 1fr}.line>summary .n{text-align:left}.who{grid-column:1/-1}}