@import url("https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,500;12..96,600;12..96,700;12..96,800&display=swap");.auth-root{--paper:#f7f9ff;--paper-2:#eef3fe;--surface:#ffffff;--royal:#0033a0;--royal-bright:#1d5cff;--sky:#4ea9ff;--violet:#7c3aed;--mint:#10b981;--text-hi:#0a1638;--text-mid:#4b5a7d;--line:rgba(29,92,255,0.13);--glass:rgba(255,255,255,0.72);--danger:#e11d48;background:var(--paper);color:var(--text-hi);font-family:var(--font-body,"Inter"),system-ui,sans-serif;overflow-x:clip}.auth-root ::-moz-selection{background:rgba(78,169,255,.3);color:#0a1638}.auth-root ::selection{background:rgba(78,169,255,.3);color:#0a1638}.auth-display{font-family:"Bricolage Grotesque",var(--font-body,"Inter"),system-ui,sans-serif}.auth-aurora{position:absolute;inset:0;overflow:hidden;pointer-events:none}.auth-blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.3;will-change:transform}.auth-blob-a{width:46vw;height:46vw;left:-14vw;top:-16vw;background:radial-gradient(circle at 30% 30%,var(--sky),transparent 65%);animation:auth-drift-a 26s ease-in-out infinite alternate}.auth-blob-b{width:40vw;height:40vw;right:-14vw;top:-6vw;background:radial-gradient(circle at 60% 40%,#a78bfa,transparent 65%);opacity:.22;animation:auth-drift-b 32s ease-in-out infinite alternate}.auth-blob-c{width:34vw;height:34vw;left:30vw;bottom:-18vw;background:radial-gradient(circle at 50% 50%,#67e8f9,transparent 62%);opacity:.22;animation:auth-drift-a 30s ease-in-out 4s infinite alternate-reverse}@keyframes auth-drift-a{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(5vw,4vw,0) scale(1.1)}to{transform:translate3d(-3vw,7vw,0) scale(.96)}}@keyframes auth-drift-b{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-6vw,5vw,0) scale(1.12)}}.auth-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(29,92,255,.05) 1px,transparent 0),linear-gradient(90deg,rgba(29,92,255,.05) 1px,transparent 0);background-size:56px 56px;mask-image:radial-gradient(ellipse 90% 80% at 50% 20%,black 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 90% 80% at 50% 20%,black 30%,transparent 75%)}.auth-panel{position:relative;overflow:hidden;color:#fff;background:radial-gradient(120% 140% at 0 0,#3f8cff 0,#1d5cff 42%,#0c3bd6 100%);isolation:isolate}.auth-panel:before{background:radial-gradient(44rem 22rem at 110% -20%,rgba(255,255,255,.32),transparent 55%),radial-gradient(30rem 18rem at -10% 120%,rgba(89,227,255,.35),transparent 60%)}.auth-panel:after,.auth-panel:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}.auth-panel:after{background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 0);background-size:40px 40px;mask-image:radial-gradient(120% 100% at 100% 0,black,transparent 72%);-webkit-mask-image:radial-gradient(120% 100% at 100% 0,black,transparent 72%)}.auth-chip{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 16px 40px rgba(4,20,70,.35),inset 0 1px 0 rgba(255,255,255,.25)}@keyframes auth-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.auth-chip-float{animation:auth-bob 6s ease-in-out infinite}.auth-chip-float-2{animation:auth-bob 7.5s ease-in-out 1.2s infinite}.auth-card{background:var(--glass);border:1px solid rgba(255,255,255,.85);box-shadow:0 24px 64px -16px rgba(10,30,90,.18),0 8px 32px rgba(10,30,90,.08),inset 0 1px 0 rgba(255,255,255,.9);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:20px}.auth-field{width:100%;min-height:48px;padding:0 14px 0 44px;border-radius:12px;font-size:.92rem;background:#ffffff;border:1px solid rgba(29,92,255,.18);color:var(--text-hi);transition:border-color .25s ease,box-shadow .25s ease}.auth-field::-moz-placeholder{color:rgba(75,90,125,.45)}.auth-field::placeholder{color:rgba(75,90,125,.45)}.auth-field:focus{outline:none;border-color:rgba(29,92,255,.6);box-shadow:0 0 0 4px rgba(78,169,255,.16)}.auth-field[aria-invalid=true]{border-color:rgba(225,29,72,.5)}.auth-field[aria-invalid=true]:focus{box-shadow:0 0 0 4px rgba(225,29,72,.12)}.auth-icon{color:rgba(75,90,125,.55);transition:color .25s ease}.auth-field-wrap:focus-within .auth-icon{color:var(--royal-bright)}.auth-btn{position:relative;isolation:isolate;display:flex;width:100%;align-items:center;justify-content:center;gap:8px;min-height:50px;border-radius:14px;font-size:.95rem;font-weight:600;background:linear-gradient(135deg,var(--royal-bright),var(--sky));color:#fff;box-shadow:0 8px 28px rgba(29,92,255,.35),inset 0 1px 0 rgba(255,255,255,.25);transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s ease,opacity .2s ease;overflow:hidden}.auth-btn:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);background-size:250% 100%;background-position:200% 0;transition:background-position .7s ease;z-index:1}.auth-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 40px rgba(29,92,255,.45),inset 0 1px 0 rgba(255,255,255,.25)}.auth-btn:hover:not(:disabled):after{background-position:-50% 0}.auth-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.auth-btn:disabled{opacity:.65;cursor:not-allowed}.auth-btn:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(78,169,255,.3),0 8px 28px rgba(29,92,255,.35)}.auth-link{font-weight:600;color:var(--royal-bright);text-underline-offset:4px;transition:color .2s ease}.auth-link:hover{color:var(--royal);text-decoration:underline}.auth-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:auth-spin .7s linear infinite}@keyframes auth-spin{to{transform:rotate(1turn)}}@keyframes auth-shake-x{0%,to{transform:translateX(0)}20%{transform:translateX(-7px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}.auth-shake{animation:auth-shake-x .45s cubic-bezier(.36,.07,.19,.97)}@keyframes auth-rise-in{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.auth-in{opacity:0;animation:auth-rise-in .8s cubic-bezier(.16,1,.3,1) forwards}@media (prefers-reduced-motion:reduce){.auth-root *,.auth-root :after,.auth-root :before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.auth-in{opacity:1!important;transform:none!important}}