:root{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;color:#163748;background:#f4f9fa;color-scheme:light}
*{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:#086c7b}header{background:#12394c;color:#fff}header .wrap{max-width:1060px;margin:auto;padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}header a{color:#fff}header strong{font-size:1.32rem}header small{display:block;color:#d7e7eb;margin-top:4px}main{max-width:1060px;margin:auto;padding:25px 20px 56px}p{line-height:1.56}h1{font-size:clamp(1.6rem,3vw,2.25rem);margin:.2em 0 .6em}h2{font-size:1.25rem}
.badge{display:inline-block;border-radius:30px;padding:5px 10px;background:#dcf1eb;color:#145d50;font-size:.82rem;font-weight:700}.notice{border:1px solid #b2d8d1;background:#e8f6f3;border-radius:12px;padding:14px 17px}.alert{border:1px solid #d98975;background:#fff1ee;border-radius:9px;padding:13px}.good{border:1px solid #94cba4;background:#e8f5ed;border-radius:9px;padding:13px}.card{background:#fff;border:1px solid #d5e3e7;border-radius:13px;margin:14px 0;padding:18px;box-shadow:0 3px 10px #1438490b}.student{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.muted{color:#506d79;font-size:.9rem}.student-name{display:block;font-size:1.1rem;margin-bottom:4px}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.button,button{display:inline-block;border:0;border-radius:8px;font:inherit;font-weight:650;cursor:pointer;padding:10px 15px;background:#087d88;color:#fff;text-decoration:none}.button.secondary,button.secondary{color:#16394a;background:#d9e9eb}.button:hover,button:hover{filter:brightness(.93)}.notes{background:#f4f9fa;border-radius:9px;padding:12px 14px;margin-top:15px}.notes li{margin:6px 0;overflow-wrap:anywhere}textarea,input[type=search]{width:100%;font:inherit;border:1px solid #95b5be;border-radius:8px;padding:10px;background:#fff}textarea{min-height:75px;resize:vertical;max-width:700px}label{display:block;font-weight:650;margin:12px 0 6px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin:22px 0 12px}.toolbar input{max-width:350px}.inline{display:inline}.small{font-size:.9rem}.intro{max-width:760px}.step-list{padding-left:22px;line-height:1.8}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:640px){main{padding:18px 14px 32px}header .wrap{padding:15px}h1{font-size:1.65rem}.card{padding:14px}}
