@property --login-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.login-stage{--mx:.5;--my:.5;--login-cyan:#7dd3fc;--login-indigo:#818cf8;--login-violet:#c084fc;--login-core:#e0f2fe;color:#f8fafc;font-family:var(--font-login-body), ui-sans-serif, system-ui, sans-serif;isolation:isolate;background:#04060f;position:fixed;inset:0;overflow:hidden}.login-stage *,.login-stage :before,.login-stage :after{box-sizing:border-box}.login-vignette{pointer-events:none;z-index:0;background:radial-gradient(80% 60% at 50% 42%,#25378c59,#0000 62%),radial-gradient(70% 50% at 50% 100%,#4c1d9547,#0000 55%),linear-gradient(#050814 0%,#070b1c 48%,#0a0618 100%);position:absolute;inset:0}.login-parallax{pointer-events:none;z-index:1;transform:translate3d(calc((var(--mx) - .5) * 36px), calc((var(--my) - .5) * 24px), 0);transition:transform .45s cubic-bezier(.22,1,.36,1);position:absolute;inset:-12%}.login-orb{filter:blur(80px);opacity:.72;mix-blend-mode:screen;border-radius:50%;position:absolute}.login-orb-a{background:radial-gradient(circle,#38bdf88c,#2563eb14 62%,#0000 74%);width:min(52vw,640px);height:min(52vw,640px);animation:22s ease-in-out infinite login-drift-a;top:-8%;left:8%}.login-orb-b{background:radial-gradient(circle,#a78bfa80,#4c1d951f 60%,#0000 74%);width:min(48vw,580px);height:min(48vw,580px);animation:26s ease-in-out infinite login-drift-b;top:18%;right:-4%}.login-orb-c{background:radial-gradient(circle,#6366f18c,#0ea5e91a 58%,#0000 74%);width:min(42vw,480px);height:min(42vw,480px);animation:19s ease-in-out infinite login-drift-c;bottom:-12%;left:32%}.login-grid{transform-origin:top;pointer-events:none;z-index:2;background-image:linear-gradient(#818cf829 1px,#0000 1px),linear-gradient(90deg,#818cf829 1px,#0000 1px);background-size:72px 72px;height:58%;animation:28s linear infinite login-grid-scroll;position:absolute;bottom:-18%;left:-20%;right:-20%;transform:perspective(620px)rotateX(62deg);-webkit-mask-image:linear-gradient(#0000 22%,#0000008c);mask-image:linear-gradient(#0000 22%,#0000008c)}.login-particles{pointer-events:none;z-index:3;width:100%;height:100%;position:absolute;inset:0}.login-spotlight{pointer-events:none;z-index:4;background:radial-gradient(520px circle at calc(var(--mx) * 100%) calc(var(--my) * 100%), #7dd3fc1a, transparent 42%);position:absolute;inset:0}.login-scan{pointer-events:none;z-index:5;mix-blend-mode:multiply;opacity:.35;background:repeating-linear-gradient(#0000,#0000 3px,#0206171f 3px 4px);position:absolute;inset:0}.login-scan:after{content:"";background:linear-gradient(#0000,#bae6fd0b,#0000);height:28%;animation:9s ease-in-out infinite login-scan-sweep;position:absolute;left:0;right:0}.login-noise{pointer-events:none;z-index:6;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.login-hud{pointer-events:none;z-index:8;position:absolute;inset:18px}.login-hud-corner{border:0 solid #bae6fd73;width:42px;height:42px;position:absolute}.login-hud-tl{border-top-width:1.5px;border-left-width:1.5px;top:0;left:0}.login-hud-tr{border-top-width:1.5px;border-right-width:1.5px;top:0;right:0}.login-hud-bl{border-bottom-width:1.5px;border-left-width:1.5px;bottom:0;left:0}.login-hud-br{border-bottom-width:1.5px;border-right-width:1.5px;bottom:0;right:0}.login-hud-meta{letter-spacing:.22em;text-transform:uppercase;color:#bae6fd8c;font-size:.68rem;font-weight:500;position:absolute}.login-hud-meta-tl{top:10px;left:54px}.login-hud-meta-tr{font-variant-numeric:tabular-nums;top:10px;right:54px}.login-hud-meta-bl{bottom:10px;left:54px}.login-hud-meta-br{align-items:center;gap:8px;display:inline-flex;bottom:10px;right:54px}.login-hud-dot{background:#4ade80;border-radius:50%;width:6px;height:6px;animation:2.2s ease-in-out infinite login-pulse-dot;box-shadow:0 0 10px #4ade80}.login-shell{z-index:10;justify-content:center;align-items:center;min-height:100%;padding:72px 20px 80px;display:flex;position:relative}.login-stack{flex-direction:column;align-items:center;width:min(440px,100%);display:flex}.login-mark{place-items:center;width:108px;height:108px;margin-bottom:22px;animation:.9s cubic-bezier(.22,1,.36,1) both login-enter;display:grid;position:relative}.login-mark-ring,.login-mark-ring-delayed{border:1px solid #a5b4fc2e;border-radius:50%;animation:6.5s ease-out infinite login-ring;position:absolute;inset:-10px}.login-mark-ring-delayed{border-color:#38bdf81f;animation-delay:1.6s;inset:-22px}.login-mark-glow{filter:blur(10px);background:radial-gradient(circle,#ffffff8c,#7dd3fc2e 42%,#0000 68%);border-radius:28px;animation:3.4s ease-in-out infinite login-core-pulse;position:absolute;inset:8px}.login-mark-img{object-fit:contain;filter:drop-shadow(0 8px 16px #818cf840);width:88px;height:88px;animation:5.5s ease-in-out infinite login-float;position:relative}.login-kicker{letter-spacing:.34em;text-transform:uppercase;color:#bae6fdb3;margin:0 0 8px;font-size:.72rem;font-weight:600;animation:.9s cubic-bezier(.22,1,.36,1) 80ms both login-enter}.login-brand{font-family:var(--font-login-display), var(--font-login-body), sans-serif;letter-spacing:-.06em;background:linear-gradient(#fff 10%,#c7d2fe 55%,#7dd3fc 100%);color:#0000;text-shadow:none;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(2.6rem,8vw,3.4rem);font-weight:800;line-height:.95;animation:.9s cubic-bezier(.22,1,.36,1) .14s both login-enter}.login-tagline{color:#cbd5e1b8;letter-spacing:.01em;margin:12px 0 28px;font-size:.98rem;font-weight:400;animation:.9s cubic-bezier(.22,1,.36,1) .2s both login-enter}.login-card{-webkit-backdrop-filter:blur(28px)saturate(1.35);width:100%;transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transform-style:preserve-3d;background:linear-gradient(#0f17349e,#080c1cb8);border:1px solid #bae6fd1f;border-radius:26px;padding:28px 26px 24px;transition:transform .18s ease-out;animation:.95s cubic-bezier(.22,1,.36,1) .26s both login-enter;position:relative;box-shadow:inset 0 1px #ffffff14,0 30px 80px #0206178c,0 0 80px #6366f129}.login-card:before{content:"";border-radius:inherit;background:conic-gradient(from var(--login-angle), transparent 0deg, transparent 220deg, #7dd3fcf2 270deg, #c084fcf2 300deg, #818cf833 330deg, transparent 360deg);-webkit-mask-composite:xor;pointer-events:none;padding:1px;animation:5.5s linear infinite login-spin-angle;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.login-card--error{animation:.48s cubic-bezier(.36,.07,.19,.97) both login-shake}.login-form{flex-direction:column;gap:16px;display:flex}.login-alert{color:#fca5a5;background:#ef44441f;border:1px solid #f8717159;border-radius:14px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.875rem;line-height:1.45;display:flex}.login-field{flex-direction:column;gap:8px;display:flex}.login-label{letter-spacing:.08em;text-transform:uppercase;color:#e2e8f0c7;font-size:.78rem;font-weight:600}.login-control{align-items:center;display:flex;position:relative}.login-control-icon{color:#94a3b8d9;pointer-events:none;transition:color .2s,filter .2s;display:flex;position:absolute;left:14px}.login-stage .login-input{color:#f8fafc;background:#0206178c;border:1px solid #94a3b82e;border-radius:14px;outline:none;width:100%;padding:14px 44px;font-size:.95rem;transition:border-color .2s,box-shadow .2s,background .2s}.login-stage .login-input::placeholder{color:#94a3b88c}.login-stage .login-input:hover:not(:disabled){border-color:#a5b4fc61}.login-stage .login-input:focus{background:#080c20c7;border-color:#7dd3fcb3;box-shadow:0 0 0 4px #38bdf81f,0 0 28px #6366f12e}.login-control:focus-within .login-control-icon{color:#7dd3fc;filter:drop-shadow(0 0 6px #7dd3fcb3)}.login-stage .login-input:disabled{opacity:.6}.login-eye{color:#94a3b8e6;cursor:pointer;background:0 0;border:none;border-radius:10px;place-items:center;width:36px;height:36px;padding:0;display:grid;position:absolute;right:6px}.login-stage .login-eye:hover:not(:disabled){color:#e2e8f0;background:#94a3b81a}.login-stage .login-submit{letter-spacing:.04em;text-transform:uppercase;color:#08101f;cursor:pointer;background:linear-gradient(#f8fbff 0%,#c7d2fe 42%,#818cf8 100%);border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;height:50px;margin-top:6px;padding:0 18px;font-size:.95rem;font-weight:700;transition:transform .18s,box-shadow .18s,filter .18s;display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff40,0 10px 28px #6366f161,0 0 40px #7dd3fc38}.login-stage .login-submit:before{content:"";background:linear-gradient(110deg,#0000 20%,#ffffff8c 48%,#0000 72%);animation:3.8s ease-in-out infinite login-sheen;position:absolute;inset:0;transform:translate(-130%)}.login-stage .login-submit:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);box-shadow:inset 0 0 0 1px #ffffff52,0 14px 36px #6366f180,0 0 56px #7dd3fc52}.login-stage .login-submit:active:not(:disabled){transform:translateY(0)}.login-stage .login-submit:disabled{opacity:.78;cursor:wait}.login-submit-label{align-items:center;gap:8px;display:inline-flex;position:relative}.login-spin{animation:.85s linear infinite login-spin}.login-footnote{text-align:center;letter-spacing:.12em;text-transform:uppercase;color:#94a3b88c;margin:16px 0 0;font-size:.75rem}@keyframes login-drift-a{0%,to{transform:translate(0)scale(1)}50%{transform:translate(40px,28px)scale(1.08)}}@keyframes login-drift-b{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-36px,22px)scale(1.1)}}@keyframes login-drift-c{0%,to{transform:translate(0)scale(1)}50%{transform:translate(24px,-30px)scale(1.06)}}@keyframes login-grid-scroll{0%{background-position:0 0}to{background-position:0 72px}}@keyframes login-scan-sweep{0%,to{opacity:.2;transform:translateY(-30%)}50%{opacity:.7;transform:translateY(180%)}}@keyframes login-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes login-core-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}@keyframes login-ring{0%{opacity:.55;transform:scale(.86)}to{opacity:0;transform:scale(1.18)}}@keyframes login-enter{0%{opacity:0;filter:blur(8px);transform:translateY(18px)scale(.98)}to{opacity:1;filter:none;transform:none}}@keyframes login-spin-angle{to{--login-angle:360deg}}@keyframes login-sheen{0%,55%{transform:translate(-130%)}80%,to{transform:translate(130%)}}@keyframes login-spin{to{transform:rotate(360deg)}}@keyframes login-pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.75)}}@keyframes login-shake{10%,90%{transform:perspective(1100px)translate(-2px)}20%,80%{transform:perspective(1100px)translate(4px)}30%,50%,70%{transform:perspective(1100px)translate(-7px)}40%,60%{transform:perspective(1100px)translate(7px)}}@media (max-width:720px){.login-hud{inset:12px}.login-hud-meta-tl,.login-hud-meta-tr,.login-hud-meta-bl,.login-hud-meta-br{letter-spacing:.12em;font-size:.6rem}.login-hud-meta-tl,.login-hud-meta-bl{left:46px}.login-hud-meta-tr,.login-hud-meta-br{right:46px}.login-grid{opacity:.45}.login-card{transform:none}}@media (prefers-reduced-motion:reduce){.login-orb,.login-grid,.login-scan:after,.login-mark-img,.login-mark-glow,.login-mark-ring,.login-mark-ring-delayed,.login-card,.login-card:before,.login-stage .login-submit:before,.login-hud-dot,.login-kicker,.login-brand,.login-tagline,.login-mark{animation:none!important}.login-parallax,.login-card{transition:none!important;transform:none!important}.login-particles{display:none}}