.auth-screen{position:relative;height:100dvh;box-sizing:border-box;overflow:hidden;display:flex;flex-direction:column;padding-top:var(--top-pad);background:linear-gradient(165deg,hsl(26 100% 64%),hsl(38 100% 68%) 45%,hsl(45 100% 74%))}.auth-aurora{position:absolute;inset:-20%;z-index:0;pointer-events:none;filter:blur(60px);opacity:.9}.auth-blob{position:absolute;border-radius:50%;mix-blend-mode:screen;opacity:.85}.auth-blob.b1{width:60vw;height:60vw;left:-10vw;top:-8vh;background:radial-gradient(circle,hsl(15 95% 62%),transparent 68%);animation:authBlob1 22s ease-in-out infinite}.auth-blob.b2{width:55vw;height:55vw;right:-12vw;top:6vh;background:radial-gradient(circle,hsl(45 100% 66%),transparent 66%);animation:authBlob2 26s ease-in-out infinite}.auth-blob.b3{width:70vw;height:70vw;left:6vw;bottom:-22vh;background:radial-gradient(circle,hsl(33 100% 60%),transparent 70%);animation:authBlob3 30s ease-in-out infinite}.auth-blob.b4{width:38vw;height:38vw;right:4vw;bottom:-6vh;background:radial-gradient(circle,hsl(8 90% 64%),transparent 68%);animation:authBlob2 24s ease-in-out infinite reverse}.auth-grain{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.auth-scroll{position:relative;z-index:2;flex:1;min-height:0;display:flex;flex-direction:column;padding:clamp(8px,1.75dvh,14px) 22px clamp(12px,4.5dvh,36px);overflow-y:auto;overflow-x:hidden}.auth-back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:#fff;text-decoration:none;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);border-radius:50px;padding:8px 15px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;animation:authFadeDown .6s ease .15s both}.auth-back:active{transform:scale(.96)}.auth-hero{padding:clamp(6px,2.5dvh,20px) 2px clamp(8px,2.75dvh,22px);flex-shrink:0}.auth-plaque{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:20px;padding:clamp(7px,1.5dvh,12px) 14px;box-shadow:0 14px 36px -14px rgba(80,40,5,.5);opacity:0;animation:authMarkIn .8s cubic-bezier(.22,1.3,.36,1) .1s both}.auth-plaque img{width:clamp(72px,13dvh,104px);height:auto;display:block}.auth-slogan{font-size:clamp(18px,3dvh,24px);line-height:1.12;font-weight:800;color:#fff;letter-spacing:0;margin:clamp(8px,2dvh,16px) 0 0;opacity:0;animation:authFadeUp .6s ease .34s both}.auth-slogan-1{letter-spacing:.13em}.auth-head{font-family:var(--font-fraunces),Georgia,serif;font-size:30px;line-height:1.1;font-weight:600;color:#fff;letter-spacing:-.02em;margin:14px 0 0;opacity:0;animation:authFadeUp .6s ease .42s both}.auth-sub{font-size:14.5px;font-weight:500;color:rgba(255,255,255,.85);margin:clamp(3px,1dvh,8px) 0 0;opacity:0;animation:authFadeUp .6s ease .52s both}.auth-card{margin-top:auto;max-width:440px;width:100%;align-self:center;box-sizing:border-box;background:hsl(var(--hub-surface,40 50% 99%)/.72);backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);border:1px solid rgba(255,255,255,.55);border-radius:28px;box-shadow:0 24px 70px -28px rgba(80,40,5,.6),0 2px 0 hsl(var(--hub-gold,38 95% 55%)/.55) inset;padding:clamp(14px,3dvh,24px) 22px clamp(13px,2.75dvh,22px);opacity:0;animation:authRise .8s cubic-bezier(.22,1.1,.36,1) .45s both}.auth-form{display:flex;flex-direction:column;gap:clamp(2px,.75dvh,6px)}.auth-row{display:flex;gap:12px;align-items:flex-end}.auth-cc-wrap{flex:0 0 auto;padding-bottom:4px}.auth-cc-label{display:block;font-size:12.5px;font-weight:700;color:hsl(var(--hub-text-muted));margin:0 0 6px;letter-spacing:.01em}.auth-field{position:relative;padding-top:clamp(13px,2.5dvh,20px);flex:1;min-width:0}.auth-field input{width:100%;box-sizing:border-box;border:none;border-bottom:1.5px solid hsl(var(--hub-border,35 25% 80%));background:transparent;padding:8px 2px;font-size:16px;font-weight:600;font-family:inherit;color:hsl(var(--hub-text));outline:none;-webkit-text-fill-color:hsl(var(--hub-text));caret-color:hsl(var(--hub-accent))}.auth-field input::-moz-placeholder{color:transparent}.auth-field input::placeholder{color:transparent}.auth-field label{position:absolute;left:2px;top:22px;font-size:16px;font-weight:500;color:hsl(var(--hub-text-muted));pointer-events:none;transform-origin:left center;transition:transform .25s cubic-bezier(.22,1,.36,1),color .25s}.auth-field input:not(:-moz-placeholder)+label{transform:translateY(-22px) scale(.78);color:hsl(var(--hub-accent));font-weight:800}.auth-field input:focus+label,.auth-field input:not(:placeholder-shown)+label{transform:translateY(-22px) scale(.78);color:hsl(var(--hub-accent));font-weight:800}.auth-field:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--hub-gradient,hsl(var(--hub-accent)));transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1)}.auth-field:focus-within:after{transform:scaleX(1)}.auth-field input:focus,.auth-field input:focus-visible{outline:none!important;box-shadow:none!important}.auth-field.pw input{padding-right:42px}.auth-field.code input{text-align:center;font-size:22px;font-weight:800;letter-spacing:.45em;padding-right:2px}.auth-field.code label{left:50%;transform:translateX(-50%)}.auth-field.code input:not(:-moz-placeholder)+label{transform:translateX(-50%) translateY(-22px) scale(.78)}.auth-field.code input:focus+label,.auth-field.code input:not(:placeholder-shown)+label{transform:translateX(-50%) translateY(-22px) scale(.78)}.auth-eye{position:absolute;right:0;bottom:4px;background:none;border:none;cursor:pointer;color:hsl(var(--hub-text-muted));padding:6px;display:flex}.auth-eye:active{transform:scale(.9)}.auth-error{display:none;font-size:13px;font-weight:600;color:hsl(0 72% 48%);background:hsl(0 80% 96%);border:1px solid hsl(0 70% 88%);border-radius:12px;padding:10px 14px;text-align:center;margin-top:14px}.auth-note{font-size:12px;color:hsl(var(--hub-text-muted));text-align:center;margin:12px 0 0;line-height:1.5}.auth-sentto{font-size:14px;color:hsl(var(--hub-text));line-height:1.5;margin-top:2px}.auth-devnote{display:none;font-size:12px;color:hsl(35 90% 36%);background:hsl(45 100% 94%);border:1px solid hsl(45 90% 80%);border-radius:12px;padding:9px 12px;margin-top:12px}.auth-forgot{text-align:right;margin-top:clamp(6px,1.5dvh,12px)}.auth-link{color:hsl(var(--hub-accent));text-decoration:none;padding:0}.auth-link,.auth-secondary{font-size:13px;font-weight:700;background:none;border:none;cursor:pointer;font-family:inherit}.auth-secondary{display:block;margin:14px auto 0;color:hsl(var(--hub-text-muted))}.auth-submit-wrap{display:flex;justify-content:center;margin-top:clamp(10px,2.25dvh,18px)}.auth-submit{width:100%;height:54px;border:none;border-radius:16px;cursor:pointer;font-family:inherit;font-size:15.5px;font-weight:800;color:#fff;background:var(--hub-gradient,hsl(var(--hub-accent)));box-shadow:0 12px 28px -10px hsl(var(--hub-accent)/.7);position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:width .5s cubic-bezier(.7,0,.25,1),border-radius .5s cubic-bezier(.7,0,.25,1),transform .12s ease}.auth-submit:not(.is-loading):active{transform:scale(.98)}.auth-submit.is-loading{width:54px!important;border-radius:50%}.auth-submit .auth-spin{display:none;width:22px;height:22px;border:2.6px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%}.auth-submit.is-loading .auth-label{display:none}.auth-submit.is-loading .auth-spin{display:block;animation:authSpin2 .6s linear infinite}.auth-foot{margin-top:clamp(8px,2.25dvh,18px);text-align:center;font-size:14px;color:hsl(var(--hub-text-muted))}.auth-foot a{color:hsl(var(--hub-accent));font-weight:800;text-decoration:none}.auth-shake{animation:authShake .42s cubic-bezier(.36,.07,.19,.97);opacity:1!important}.auth-success{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;pointer-events:none;clip-path:circle(0 at 50% 88%);transition:clip-path .65s cubic-bezier(.7,0,.2,1);background:linear-gradient(165deg,hsl(28 100% 62%),hsl(42 100% 66%))}.auth-success.is-go{clip-path:circle(150% at 50% 88%);pointer-events:auto}.auth-success .auth-plaque{animation:none;opacity:1}.auth-success .auth-plaque img{width:130px}.auth-success.is-go .auth-plaque{animation:authMarkIn .6s cubic-bezier(.22,1.4,.36,1) .16s both}@keyframes authBlob1{0%,to{transform:translate(0) scale(1)}50%{transform:translate(8vw,5vh) scale(1.12)}}@keyframes authBlob2{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-7vw,6vh) scale(1.1)}}@keyframes authBlob3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(5vw,-5vh) scale(1.15)}}@keyframes authMarkIn{0%{opacity:0;transform:scale(.6) rotate(-6deg)}60%{opacity:1;transform:scale(1.07) rotate(2deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes authFadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes authFadeDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes authRise{0%{opacity:0;transform:translateY(40px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes authSpin2{to{transform:rotate(1turn)}}@keyframes authShake{10%,90%{transform:translateX(-2px)}20%,80%{transform:translateX(4px)}30%,50%,70%{transform:translateX(-9px)}40%,60%{transform:translateX(9px)}}@media (prefers-reduced-motion:reduce){.auth-screen *,.auth-success{animation:none!important;transition:opacity .2s ease,clip-path .3s ease!important}.auth-back,.auth-card,.auth-head,.auth-plaque,.auth-sub{opacity:1!important;transform:none!important}}