:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#352742;background:#faf7f2;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}header{max-width:1020px;margin:auto;padding:24px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:8px;align-items:center;text-decoration:none;font-weight:900;font-size:27px;color:inherit}select{border:1px solid #a49aab;border-radius:24px;padding:9px 12px;background:#fffdf9;color:inherit;font:inherit;max-width:145px}main{max-width:530px;margin:6vh auto 40px;padding:0 20px}.card{background:#fffdf9;border:1.5px solid #695774;border-radius:28px;padding:32px;box-shadow:0 5px 0 #352742}.mark{font-size:34px;color:#76518e;margin-bottom:20px}h1{font-size:clamp(26px,6vw,34px);line-height:1.15;letter-spacing:-1px;margin:0 0 18px}p{line-height:1.65;color:#6c6075;overflow-wrap:anywhere}label{display:block;font-size:14px;font-weight:650;margin:22px 0 8px}header label{margin:0}input{width:100%;font:inherit;font-size:18px;background:#fff;border:1px solid #a49aab;border-radius:12px;padding:14px;color:#352742}input:focus-visible,button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #9475b7;outline-offset:3px}button,.primary{font:inherit;cursor:pointer}button[type=submit],.primary{display:flex;align-items:center;justify-content:space-between;width:100%;background:#352742;color:white;border:0;border-radius:14px;padding:15px 18px;margin-top:20px;font-weight:700;text-decoration:none;box-shadow:0 4px 0 #b5a0c8}.primary{justify-content:center}.secondary{background:transparent;border:0;padding:12px 0;color:#684383;text-decoration:underline;text-underline-offset:4px;font-size:14px}button:disabled{opacity:.55;cursor:wait}.actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:10px}.note{font-size:12px;margin-top:23px}.school,.back{display:block;text-align:center;line-height:1.6;font-size:13px;margin:24px 4px;color:#665174}.back{margin-top:12px}#code{font-size:28px;letter-spacing:8px;font-variant-numeric:tabular-nums}#destination{display:block;color:#352742}#error{border-left:3px solid #a13e4f;padding-left:12px;color:#8c2438;font-size:14px}#logout{display:block;margin:16px auto 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:400px){.card{padding:25px}header{padding:20px}main{margin-top:3vh}}

h1[tabindex="-1"]:focus{outline:none}
