:root{--auth-ink:#173d33;--auth-muted:#66766b;--auth-paper:#f4f1e9;--auth-white:#fffdf8;--auth-line:#d8ded2;--auth-accent:#b85331}*{box-sizing:border-box}.school-auth-page{margin:0;background:var(--auth-paper);color:var(--auth-ink);font:15px/1.6 Manrope,'Segoe UI',Arial,sans-serif}.school-auth-page button,.school-auth-page input{font:inherit}.school-auth-page a{color:inherit}.school-auth-page [hidden]{display:none!important}.auth-header{max-width:1190px;margin:auto;min-height:110px;width:calc(100% - 64px);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--auth-line)}.auth-home{font-size:12px;font-weight:750;text-decoration:none;white-space:nowrap}.auth-home span{margin-left:10px}.auth-layout{max-width:1120px;width:calc(100% - 64px);margin:52px auto;display:grid;grid-template-columns:1.05fr 1fr;align-items:stretch;gap:64px}.auth-story{min-height:620px;position:relative;border-radius:24px;overflow:hidden;background:var(--auth-ink)}.auth-story>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:60% center}.auth-story::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#102b22f0,transparent 85%)}.auth-story-copy{position:absolute;bottom:42px;left:38px;right:24px;z-index:1;color:var(--auth-white)}.auth-story-copy>p{font-size:10px;letter-spacing:1.7px;font-weight:700;opacity:.85}.auth-story-copy h2{font-size:49px;line-height:1.1;letter-spacing:-1.8px;margin:22px 0}.auth-story-copy>span{font-size:13px;line-height:1.8;color:#d6dfd0}.auth-card{align-self:center;min-width:0;padding:25px 0}.auth-eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:800;color:var(--auth-accent);margin:0 0 16px}.auth-card h1{font-size:38px;letter-spacing:-1.4px;line-height:1.15;margin:0 0 16px;outline:none}.auth-description{color:var(--auth-muted);margin:0 0 30px;font-size:14px;max-width:390px}.auth-form{display:flex;flex-direction:column}.auth-form label{font-size:12px;font-weight:800;margin:0 0 8px}.auth-form>input,.auth-password{margin-bottom:21px}.auth-form input{width:100%;height:54px;min-width:0;border:1px solid #c4cfbf;border-radius:10px;background:var(--auth-white);color:var(--auth-ink);padding:13px 15px;box-shadow:0 1px 3px #173d3305;font-size:15px}.auth-form input:focus{outline:2px solid #66836a;outline-offset:2px}.auth-form input::placeholder{color:#8a9587}.auth-form input:read-only{opacity:.7}.auth-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.auth-text-button{border:0;background:none;color:var(--auth-ink);padding:3px 0;font-size:12px!important;font-weight:750!important;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.auth-label-row .auth-text-button{font-size:11px!important}.auth-password{display:flex;position:relative}.auth-password input{padding-right:89px}.auth-password>button{position:absolute;right:13px;top:0;height:54px;max-width:73px;border:0;padding:0;background:none;color:#58715c;font-size:10px;font-weight:800;cursor:pointer}.auth-submit{min-height:54px;border:1px solid var(--auth-ink);border-radius:10px;background:var(--auth-ink);color:var(--auth-white);display:flex;align-items:center;justify-content:space-between;padding:14px 19px;margin-top:6px;font-size:13px!important;font-weight:800!important;cursor:pointer}.auth-submit span{font-size:21px;font-weight:400;line-height:1}.auth-submit:hover{background:#285744}.auth-first{display:flex;gap:14px;align-items:baseline;justify-content:center;margin-top:21px;font-size:12px;color:var(--auth-muted)}.auth-footer{border-top:1px solid var(--auth-line);padding-top:22px;margin-top:30px;display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--auth-muted)}.auth-footer p{margin:0}.auth-footer a{align-self:flex-start;text-underline-offset:3px;font-size:11px}.auth-hint{font-size:11px;color:var(--auth-muted);line-height:1.6;margin:-12px 0 20px}.auth-email-row{display:flex;align-items:baseline;justify-content:space-between;gap:15px;padding:12px 14px;background:#e8eddf;border-radius:9px;margin:0 0 24px}.auth-email-row span{font-size:13px;overflow-wrap:anywhere;min-width:0}.auth-email-row button{flex-shrink:0;font-size:10px!important}.auth-form .auth-code-input{font-size:28px;letter-spacing:9px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums;height:65px;padding-left:24px}.auth-code-input::placeholder{color:#a3afa0;font-weight:500}.auth-resend{margin-top:17px;align-self:center}.auth-back{margin-top:20px;align-self:center;font-size:11px!important;color:var(--auth-muted)}.auth-error,.auth-notice{border-radius:9px;padding:13px 15px;font-size:12px;line-height:1.65}.auth-error{color:#883f2d;background:#f9e9dc;border:1px solid #e6c6ae;margin:18px 0 0}.auth-notice{color:#39573c;background:#e8efdf;border:1px solid #cddabf;margin:0 0 21px}.auth-busy{font-size:12px;color:var(--auth-muted);margin:16px 0 0}.auth-card button:disabled{opacity:.5;cursor:wait}.auth-resend:disabled{cursor:default;text-decoration:none}.auth-card button:focus-visible,.auth-header a:focus-visible,.auth-footer a:focus-visible{outline:2px solid var(--auth-accent);outline-offset:4px}.auth-page-footer{max-width:1190px;width:calc(100% - 64px);margin:0 auto;padding:24px 0 28px;border-top:1px solid var(--auth-line);font-size:10px;color:var(--auth-muted)}.auth-skip{position:fixed;left:20px;top:-100px;padding:12px 16px;background:white;z-index:10}.auth-skip:focus{top:15px}@media(max-width:950px){.auth-layout{gap:35px}.auth-story{min-height:590px}.auth-story-copy{left:26px;bottom:30px}.auth-story-copy h2{font-size:39px}.auth-card h1{font-size:33px}}@media(max-width:720px){.auth-header{min-height:90px;width:calc(100% - 36px)}.auth-home{font-size:10px}.auth-layout{display:block;width:calc(100% - 40px);max-width:470px;margin:34px auto 42px}.auth-story{display:none}.auth-card{padding:0}.auth-card h1{font-size:35px}.auth-description{font-size:14px;margin-bottom:28px}.auth-form input{font-size:16px}.auth-form .auth-code-input{font-size:28px}.auth-page-footer{width:calc(100% - 40px);font-size:9px}.auth-footer{margin-top:27px}.auth-first{gap:11px}.auth-header .school-brand-name{font-size:19px}}@media(max-width:360px){.auth-card h1{font-size:31px}.auth-home{font-size:9px}.auth-home span{display:none}.auth-form .auth-code-input{letter-spacing:6px}.auth-first{font-size:11px}.auth-first .auth-text-button{font-size:11px!important}}
