.page-module__E0kJGG__main{z-index:1;text-align:center;background:radial-gradient(circle at 40% 10%,#818cf824,#0000 28%),linear-gradient(#120826 0%,#09090b 45%,#06030f 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex;position:relative}.page-module__E0kJGG__loginContainer{flex-direction:column;align-items:center;gap:1.5rem;display:flex;position:relative}.page-module__E0kJGG__keyhole{color:#a1a1aa;text-shadow:0 0 18px #818cf859;width:6.5rem;height:6.5rem;line-height:1;transition:transform .6s,color .6s,text-shadow .6s;display:inline-block;position:relative}.page-module__E0kJGG__keyhole svg{width:100%;height:100%;display:block}.page-module__E0kJGG__keyholeUnlocked{color:#7dd3fc;text-shadow:0 0 22px #7dd3fc73;transform:scale(1.05)}.page-module__E0kJGG__keyholeUnlocking{animation:2.1s forwards page-module__E0kJGG__unlockGlow}.page-module__E0kJGG__keyholeUnlocking [data-part=shackle]{transform-origin:32px 28px;animation:1.7s cubic-bezier(.22,.75,.3,1) forwards page-module__E0kJGG__openShackle}.page-module__E0kJGG__keyholeUnlocking [data-part=body]{transform-origin:50%;animation:1.7s cubic-bezier(.22,.75,.3,1) forwards page-module__E0kJGG__bodyBounce}.page-module__E0kJGG__keyholeUnlocking [data-part=keyhole]{animation:1.7s forwards page-module__E0kJGG__keyholeFlash}.page-module__E0kJGG__keyholeUnlocking [data-part=keyhole-detail]{opacity:0;animation:1.7s forwards page-module__E0kJGG__keyLineFade}.page-module__E0kJGG__form{width:100%;position:relative}@keyframes page-module__E0kJGG__flyKey{0%{opacity:1;transform:translate(-50%)translateY(0)scale(1)}20%{transform:translate(-50%)translateY(-20px)scale(1.05)}45%{transform:translate(-50%)translateY(-48px)scale(1.1)}70%{opacity:.75;transform:translate(-50%)translateY(-95px)scale(.8)}85%{opacity:.4;transform:translate(-50%)translateY(-108px)scale(.64)}to{opacity:0;transform:translate(-50%)translateY(-110px)scale(.58)}}@keyframes page-module__E0kJGG__unlockGlow{0%{color:#a1a1aa;text-shadow:0 0 18px #818cf859}40%{color:#9d82ff;text-shadow:0 0 24px #9d82ff59}70%{color:#c4b5fd;text-shadow:0 0 30px #c4b5fd59}to{color:#9d82ff;text-shadow:0 0 22px #9d82ff59}}@keyframes page-module__E0kJGG__keyLineFade{0%{opacity:1}50%{opacity:.5}to{opacity:0}}.page-module__E0kJGG__input{color:var(--foreground);text-align:center;width:22rem;max-width:100%;font-size:1.55rem;font-family:var(--font-space-mono);letter-spacing:.24em;background:0 0;border:none;border-bottom:2px solid #ffffff2e;outline:none;padding:.9rem .5rem;transition:border-color .3s,color .3s,transform .4s,opacity .4s}.page-module__E0kJGG__input:focus{border-bottom-color:var(--primary)}.page-module__E0kJGG__inputError{color:#fb7185;border-bottom-color:#fb7185}.page-module__E0kJGG__inputLocked{opacity:.55;transform:scale(.98)}.page-module__E0kJGG__shake{animation:.5s cubic-bezier(.36,.07,.19,.97) both page-module__E0kJGG__shake}.page-module__E0kJGG__errorText{color:#fb7185;letter-spacing:.1em;text-transform:uppercase;width:100%;margin-top:1rem;font-size:.95rem;position:absolute;top:100%;left:50%;transform:translate(-50%)}.page-module__E0kJGG__hiddenSubmit{display:none}@media (max-width:768px){.page-module__E0kJGG__main{padding:1.5rem}.page-module__E0kJGG__loginContainer{gap:1.5rem;width:min(100%,28rem)}.page-module__E0kJGG__keyhole{width:6rem;height:6rem}.page-module__E0kJGG__input{width:min(90vw,26rem);padding:.9rem .5rem;font-size:1.4rem}.page-module__E0kJGG__errorText{margin-top:.75rem;font-size:.85rem}}@keyframes page-module__E0kJGG__unlockPulse{0%{transform:scale(1)}30%{transform:scale(1.15)rotate(4deg)}60%{transform:scale(.95)rotate(-4deg)}to{transform:scale(1.18)rotate(0)}}@keyframes page-module__E0kJGG__openShackle{0%{transform:rotate(0)translateY(0)}40%{transform:rotate(-20deg)translateY(-6px)}70%{transform:rotate(-6deg)translateY(-3px)}to{transform:rotate(-12deg)translateY(-10px)}}@keyframes page-module__E0kJGG__bodyBounce{0%{transform:scale(1)}40%{transform:scale(.98)}70%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes page-module__E0kJGG__keyholeFlash{0%{opacity:1;transform:scale(1)}30%{opacity:.9;transform:scale(1.25)}60%{opacity:.7;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes page-module__E0kJGG__shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-8px)}40%,60%{transform:translate(8px)}}
