@charset "UTF-8";
:root{color-scheme:dark;font-family:Inter,"Segoe UI",Arial,sans-serif;color:#ececf5;background:#10121b;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}a,button,input{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #a99aef;outline-offset:4px}[hidden]{display:none!important}
.login-shell{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:max(24px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));background:radial-gradient(ellipse at 50% 12%,#35294e55,transparent 58%)}
.login-card{width:100%;max-width:432px;padding:36px;border:1px solid #34384c;border-radius:24px;background:#1a1d2a;box-shadow:0 24px 80px #0003}
.brand{display:flex;align-items:center;gap:10px;width:max-content;text-decoration:none;color:#fff;font-size:31px;font-weight:700;letter-spacing:-1.2px}.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#8d7ded;font:27px Georgia,serif;letter-spacing:-2px;padding-right:2px}.brand-dot{color:#a398ed}
.login-heading{margin:35px 0 27px}.login-heading h1{font-size:27px;font-weight:600;letter-spacing:-.6px;margin:0;line-height:1.25}
form>label{display:block;margin-bottom:10px;font-size:13px;font-weight:500;color:#d1cde0}.password-field{display:flex;align-items:center;background:#121622;border:1px solid #41465e;border-radius:11px;overflow:hidden}.password-field:focus-within{border-color:#a99aef;box-shadow:0 0 0 3px #a99aef1a}.password-field input{min-width:0;width:100%;min-height:52px;padding:13px 14px;border:0;outline:none;background:transparent;color:#f0eafa;font-size:16px}.password-toggle{flex-shrink:0;align-self:stretch;padding:0 13px;border:0;background:transparent;color:#c1b2ed;font-size:12px;min-width:76px;min-height:48px}.password-toggle:hover{background:#a99aef0d}.password-toggle:focus-visible{outline-offset:-4px;border-radius:8px}.login-error{font-size:13px;line-height:1.6;color:#f4aca4;margin:12px 0 0;overflow-wrap:anywhere}
.submit-button{width:100%;min-height:50px;margin-top:22px;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px;border:1px solid #8370e6;border-radius:10px;background:#7560df;color:#fff;font-weight:600;font-size:14px;transition:background .15s}.submit-button:hover{background:#806be9}.submit-button:disabled{opacity:.65;cursor:wait}.submit-button span{font-size:20px;font-weight:400;line-height:1}
@media(max-width:480px){.login-card{padding:28px 24px;border-radius:20px}.login-heading{margin-top:30px}.login-heading h1{font-size:25px}}
@media(max-height:600px){.login-shell{place-items:start center;padding-top:20px;padding-bottom:20px}.login-card{padding-top:24px;padding-bottom:24px}.login-heading{margin-top:24px;margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
