*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f3f7fb;color:#172c46}a{color:#1753a0;text-underline-offset:3px}button,input,select{font:inherit}button,.button{cursor:pointer;display:inline-block;border:1px solid transparent;border-radius:10px;padding:12px 18px;background:#185bb5;color:#fff;font-weight:700;text-align:center;text-decoration:none}button:hover,.button:hover{background:#104787}button:disabled{cursor:wait;opacity:.65}button.secondary{background:transparent;color:inherit;border-color:#8eabc6}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #aa6600;outline-offset:3px}[hidden]{display:none!important}.skip-school{position:absolute;left:12px;top:-90px;padding:12px;background:#fff;z-index:10000}.skip-school:focus{top:12px}.school-access{max-width:1180px;margin:44px auto 64px;padding:0 24px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.school-intro h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.12;letter-spacing:-.04em;margin:12px 0 20px}.school-intro>p:not(.eyebrow){max-width:470px}.back-link{display:inline-block;margin-bottom:28px}.eyebrow{font-size:.8rem;letter-spacing:.13em;font-weight:800;color:#30618b}.setup-steps{padding-left:26px;margin:30px 0}.setup-steps li{padding:0 0 20px 8px}.setup-steps li::marker{font-weight:800;color:#1753a0}.setup-steps span{display:block;color:#46617c}.free-note{font-weight:700;color:#136340}.student-entry{border-top:1px solid #c5d4e3;margin-top:28px;padding-top:22px}.student-entry p{margin:6px 0 12px}.small{font-size:.875rem;color:#456079}.school-auth{min-width:0;padding:30px;border:1px solid #d2deea;border-radius:22px;background:#fff;box-shadow:0 12px 40px #193c6810}.school-auth h2{line-height:1.25;margin:26px 0 12px;font-size:1.65rem}.school-auth p{color:#39536c}.access-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;background:#eef3f9;border-radius:12px}.access-tabs a{padding:10px 8px;border-radius:8px;text-align:center;font-size:.9rem;font-weight:700;text-decoration:none}.access-tabs a[aria-current="page"]{background:#fff;color:#163f73;box-shadow:0 1px 5px #173c6420}.school-auth label:not(.check){display:block;font-weight:650;margin:17px 0 6px}.school-auth input:not([type="checkbox"]),.school-auth select{width:100%;min-height:48px;background:#fff;color:#172c46;border:1px solid #90a8c0;border-radius:9px;padding:10px 12px}.school-auth input[type="checkbox"]{width:20px;height:20px;flex-shrink:0;margin:3px 0;accent-color:#185bb5}.check{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;margin:20px 0}.school-auth form>button[type="submit"],#open-school{width:100%;margin-top:20px}.password-field{display:flex;gap:8px;align-items:stretch}.password-field input{min-width:0}.show-password{padding:8px 12px;background:#edf3fa;color:#174879;border-color:#afc5dc;font-size:.85rem}.show-password:hover{background:#dbe8f6}.help-links{display:flex;flex-wrap:wrap;gap:10px 22px;font-size:.875rem;margin:18px 0}.access-message{border-radius:10px;padding:12px 14px;background:#edf4ff;color:#194578;overflow-wrap:anywhere;margin-bottom:18px}.access-message[data-state="error"]{background:#fff0ef;color:#9d2720;border:1px solid #dfaba7}.access-message[data-state="success"]{background:#eaf8ef;color:#175e36;border:1px solid #9ccbad}@media(max-width:760px){.school-access{display:flex;flex-direction:column;margin:24px auto 40px;padding:0 16px;gap:28px}.school-intro,.school-auth{width:100%}.school-auth{padding:22px 18px;order:1}.school-intro{order:0}.school-intro h1{font-size:2rem}.school-intro .setup-steps{display:none}.back-link{margin-bottom:12px}.student-entry{margin-top:14px;padding-top:12px}.school-intro>p{margin:10px 0}.school-intro .student-entry p{display:none}.school-auth h2{font-size:1.45rem}}@media(prefers-reduced-motion:no-preference){button,a{transition:background .15s}}html[data-theme="dark"] body{background:#0d1928;color:#e5edf6}html[data-theme="dark"] .school-auth{background:#17283b;border-color:#40566e}html[data-theme="dark"] .school-auth p,html[data-theme="dark"] .small,html[data-theme="dark"] .setup-steps span{color:#c0cfdf}html[data-theme="dark"] a{color:#9cc9ff}html[data-theme="dark"] .access-tabs{background:#0d1928}html[data-theme="dark"] .access-tabs a[aria-current="page"]{background:#294560;color:#fff}