/* EduTracker identity and form treatment adapted from EduLibrary docs/html/auth.
   This stylesheet is loaded only by the login page. */
:root{font-family:Inter,"Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;color:#23252a;background:#141518;font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0;min-height:100svh}button,input{font:inherit}button{cursor:pointer}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}[hidden]{display:none!important}
.scene{position:fixed;inset:0;overflow:hidden;pointer-events:none;background:#101115}
.scene-hangar{position:absolute;inset:-35px}.scene-hangar img{width:100%;height:100%;object-fit:cover;object-position:38% center;user-select:none}
.scene-blueprint{position:absolute;left:5%;top:8%;width:60%;height:60%;color:#e4535b;opacity:.34}.scene-blueprint svg{width:100%;height:100%;stroke:currentColor;stroke-linecap:butt}
.scene-art{position:absolute;width:62vw;max-width:1450px;left:1vw;bottom:9vh;filter:drop-shadow(0 22px 15px #000b)}
.scene-art img{display:block;width:100%;height:auto;user-select:none}
.scene-shade{position:absolute;inset:0;background:linear-gradient(90deg,transparent 42%,#090b1040 62%,#090b10c9 100%),linear-gradient(180deg,#090b1040,transparent 30%,transparent 80%,#090b1055)}
.brand{position:absolute;z-index:2;top:40px;left:48px;display:flex;gap:12px;align-items:center;color:#fff}.brand-mark{display:grid;place-items:center;width:43px;height:43px;background:#e63246;border-radius:12px;font-size:28px;letter-spacing:-2px;font-weight:850;padding-right:3px;box-shadow:0 6px 24px #e6324626}.brand-word{font-size:21px;font-weight:750;letter-spacing:-.7px}.brand-word>span{display:block;font-size:11px;font-weight:450;letter-spacing:2px;margin-top:4px;color:#c3c3c9}
.entry{position:relative;z-index:1;min-height:100svh;display:flex;align-items:center;justify-content:flex-end;padding:130px clamp(40px,9vw,180px) 100px 32px}
.login-card{width:400px;max-width:100%;padding:42px 36px 38px;border:1px solid #fff9;border-radius:22px;background:#f9f9faf5;box-shadow:0 32px 100px #0005,0 2px 6px #0002;backdrop-filter:blur(24px)}
h1{font-size:28px;line-height:1.2;letter-spacing:-1px;font-weight:730;margin:0 0 32px}.field{margin-bottom:22px}label{display:block;margin-bottom:9px;font-size:12px;font-weight:650;color:#41444a}input:not([type=hidden]){width:100%;min-height:52px;padding:13px 15px;color:#23252a;border:1px solid #dcdde2;border-radius:10px;background:#fff;font-size:16px;transition:border-color .16s,box-shadow .16s}input:focus{outline:0;border-color:#e63246;box-shadow:0 0 0 4px #e6324612}input[aria-invalid=true]{border-color:#c92c40}.password-control{position:relative}.password-control input{padding-right:52px}.password-toggle{position:absolute;right:5px;top:4px;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:#727681}.password-toggle:hover{background:#f0f0f3;color:#23252a}.eye-slash{display:none}.password-toggle[aria-pressed=true] .eye-slash{display:block}
.submit{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;margin-top:30px;padding:0 18px;border:1px solid #cf263b;border-radius:10px;background:#cf263b;color:#fff;font-size:14px;font-weight:650;box-shadow:0 6px 16px #cf263b22;transition:background .18s,box-shadow .18s}.submit:hover{background:#b72034;box-shadow:0 8px 24px #cf263b33}.submit:active{background:#a51d2f}button:focus-visible{outline:3px solid #e6324670;outline-offset:4px}.login-error{font-size:13px;line-height:1.5;color:#ae2638;background:#fff0f1;border:1px solid #f6d3d8;border-radius:8px;padding:10px 12px;margin:0}
@media(max-width:1000px){.entry{padding-right:5vw}.scene-art{width:76vw;left:-14vw;bottom:12vh}.scene-hangar img{object-position:30% center}}
@media(max-width:650px){.brand{top:28px;left:28px}.entry{padding:clamp(300px,44svh,400px) 24px 40px;justify-content:center;align-items:flex-start}.login-card{padding:30px 28px;border-radius:20px}.scene-art{width:94vw;left:3vw;top:115px;bottom:auto;max-width:none}.scene-hangar{inset:0 -35px auto;height:350px}.scene-hangar img{object-position:25% center}.scene-blueprint{top:50px;left:-10%;width:115%;height:350px;opacity:.25}.scene-shade{background:linear-gradient(180deg,#090b1040,transparent 15%,#090b1022 32%,#090b10dd 70%,#090b10f5)}h1{font-size:26px}}
@media(max-height:600px) and (min-width:651px){.entry{padding-top:105px;padding-bottom:32px}.brand{top:24px}.login-card{padding:25px 32px}h1{margin-bottom:22px}.field{margin-bottom:16px}.submit{margin-top:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}.scene [data-depth]{transform:none!important}}
