:root{color:#1f2937;font-synthesis:none;text-rendering:optimizelegibility;background:#f5f7fa;font-family:system-ui,sans-serif;line-height:1.6}*{box-sizing:border-box}body{margin:0;padding:2rem 1rem}.layout{max-width:48rem;margin:0 auto}main{background:#fff;border:1px solid #dce2e8;border-radius:.5rem;padding:clamp(1rem,4vw,3rem)}header{margin-bottom:1.5rem}.school-name{font-size:1.25rem;font-weight:700}nav ul{flex-wrap:wrap;gap:.5rem 1.5rem;padding:0;list-style:none;display:flex}nav a{padding:.5rem 0;display:inline-block}.account{margin:.25rem 0 0;font-size:.95rem}a{color:#173f35;text-underline-offset:.2em}a[aria-current=page]{font-weight:700;text-decoration-thickness:.2em}:focus-visible{outline-offset:4px;outline:3px solid #175cd3}.skip-link{background:#fff;padding:.5rem 1rem;position:absolute;top:-10rem}.skip-link:focus{top:.5rem}h1,h2{line-height:1.25}h1{color:#173f35;margin-top:0;font-size:clamp(1.75rem,5vw,2.5rem)}h2{font-size:1.25rem}fieldset{border:1px solid #b8c5ce;border-radius:.4rem;min-width:0;margin:1.5rem 0;padding:1rem}legend{padding:0 .4rem;font-weight:700}.form-content{border:0;margin:0;padding:0}.form-field{min-width:0;margin:1rem 0}.form-field label{margin-bottom:.35rem;font-weight:600;display:block}.form-field label span{font-size:.875rem;font-weight:400}input,select,textarea,button{font:inherit}.form-field input,select,textarea{color:#1f2937;background:#fff;border:1px solid #687987;border-radius:.25rem;width:100%;min-width:0;min-height:2.75rem;padding:.55rem}textarea{resize:vertical}button{color:#fff;cursor:pointer;background:#173f35;border:1px solid #173f35;border-radius:.25rem;min-height:2.75rem;padding:.6rem 1rem}button:hover:not(:disabled){color:#fff;background:#245b4c}button:disabled{opacity:.6;cursor:wait}.secondary-button{color:#173f35;background:#fff}.choice{cursor:pointer;align-items:flex-start;gap:.7rem;margin:1rem 0;display:flex}.choice input{accent-color:#173f35;flex:0 0 1.25rem;width:1.25rem;height:1.25rem;margin:.25rem 0}.form-notice{background:#edf5f2;border-left:4px solid #28634f;margin:1rem 0;padding:.8rem 1rem}.error-summary{overflow-wrap:anywhere;border:2px solid #a11919;margin:1rem 0;padding:1rem}.field-error{color:#a11919;margin:.3rem 0;font-weight:600}[aria-invalid=true]{border:2px solid #a11919!important}.field-hint{font-size:.9rem}.turnstile-widget,.table-scroll{max-width:100%;margin:1rem 0;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:34rem}caption{text-align:left;padding-bottom:.5rem;font-weight:700}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #dce2e8;padding:.6rem .75rem .6rem 0}thead th{white-space:nowrap;border-bottom:2px solid #b8c5ce}.reference{overflow-wrap:anywhere;font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,monospace;font-size:.8rem;font-weight:400}.student-list{margin:0;padding-left:1.1rem}.pagination{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:1rem;display:flex}.pagination p{margin:0}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=420px){.form-row{grid-template-columns:1fr;gap:0}fieldset{padding:.75rem}.form-content{padding:0}}
