:root{--welcome-primary:#713CFF;--welcome-accent:#8B5CFF;--welcome-deep:#4D22C7;--welcome-black:#121217;--welcome-bg:#FAF9FF}
.onboarding-screen{position:fixed;inset:0;z-index:100;display:grid;grid-template-rows:auto minmax(230px,1fr) auto auto auto auto;align-items:center;width:100%;min-height:100dvh;padding:max(22px,env(safe-area-inset-top)) 24px calc(22px + env(safe-area-inset-bottom));overflow:hidden;background:var(--welcome-bg);color:var(--welcome-black);transition:opacity .22s ease,transform .22s ease}
.onboarding-screen.splash-leaving{opacity:0;transform:translateY(-8px);pointer-events:none}.onboarding-top{display:flex;align-items:center;justify-content:space-between;width:min(100%,430px);margin:auto}.onboarding-top img{width:66px;height:66px;object-fit:contain}.onboarding-top span{color:#756f80;font-size:9px;font-weight:700}
.onboarding-visual{position:relative;align-self:stretch;display:grid;place-items:center;width:min(100%,430px);min-height:0;margin:auto;isolation:isolate}.onboarding-visual:before{content:"";position:absolute;width:min(72vw,315px);aspect-ratio:1;border-radius:50%;background:linear-gradient(145deg,#EEE8FF,#D7C8FF);box-shadow:inset 0 0 0 1px #fff,0 24px 55px rgba(77,34,199,.13);z-index:-2}.onboarding-visual:after{content:"";position:absolute;width:min(58vw,255px);aspect-ratio:1;border:1px dashed rgba(113,60,255,.42);border-radius:50%;z-index:-1}.onboarding-visual img{display:block;width:min(76vw,350px);height:min(47vh,430px);object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 24px rgba(18,18,23,.13))}.visual-orbit{position:absolute;border-radius:50%;background:#fff;box-shadow:0 10px 24px rgba(77,34,199,.14)}.orbit-one{width:15px;height:15px;right:12%;top:26%}.orbit-two{width:9px;height:9px;left:15%;bottom:22%;background:var(--welcome-accent)}
.onboarding-copy{width:min(100%,430px);margin:2px auto 0;text-align:center}.onboarding-copy small{display:block;margin-bottom:7px;color:var(--welcome-primary);font-size:9px;font-weight:900}.onboarding-copy h1{margin:0;color:var(--welcome-black);font-size:clamp(25px,7vw,34px);line-height:1.35;letter-spacing:-.7px}.onboarding-copy p{margin:9px 0 0;color:#716b79;font-size:11px;line-height:1.9}
.onboarding-dots{display:flex;direction:ltr;justify-content:center;gap:7px;margin:17px 0}.onboarding-dots i{width:7px;height:7px;border-radius:99px;background:#D9D4DF}.onboarding-dots i.active{width:28px;background:var(--welcome-primary)}.onboarding-start{display:flex;align-items:center;justify-content:space-between;width:min(100%,430px);min-height:58px;margin:auto;padding:0 20px;border:0;border-radius:18px;background:linear-gradient(135deg,var(--welcome-primary),var(--welcome-accent));color:#fff;box-shadow:0 12px 28px rgba(113,60,255,.28);font-size:14px;font-weight:900;cursor:pointer}.onboarding-start b{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:rgba(255,255,255,.18);font-size:19px}.onboarding-account{margin:13px auto 0;border:0;background:transparent;color:#77717e;font-size:9px;cursor:pointer}.onboarding-account b{color:var(--welcome-deep)}
.auth-page{position:fixed!important;inset:0!important;z-index:90!important;display:block!important;min-height:100dvh!important;padding:max(20px,env(safe-area-inset-top)) 20px 0!important;overflow-x:hidden!important;overflow-y:auto!important;background:var(--welcome-bg)!important}.auth-page.hidden{display:none!important}.login-head{display:flex;align-items:center;justify-content:space-between;width:min(100%,430px);margin:auto}.login-head img{width:66px;height:66px;object-fit:contain}.login-head button{display:grid;place-items:center;width:40px;height:40px;border:1px solid #E6E0EF;border-radius:13px;background:#fff;color:var(--welcome-black);font-size:19px;cursor:pointer}.login-intro{width:min(100%,430px);margin:24px auto 24px;text-align:right}.login-intro small{color:var(--welcome-primary);font-size:10px;font-weight:900}.login-intro h1{margin:4px 0 3px;color:var(--welcome-black);font-size:32px;line-height:1.35}.login-intro p{margin:0;color:#8B8590;font-size:10px}
.login-surface{position:relative;width:calc(100% + 40px);min-height:calc(100dvh - 178px);margin-inline:-20px;padding:42px 20px calc(26px + env(safe-area-inset-bottom));overflow:hidden;background:linear-gradient(155deg,var(--welcome-primary),var(--welcome-deep));border-radius:48% 0 0 0 / 90px 0 0 0}.login-surface:before{content:"";position:absolute;top:20px;left:-90px;width:230px;height:230px;border:38px solid rgba(255,255,255,.07);border-radius:50%}.login-surface .auth-card{position:relative!important;width:min(100%,430px)!important;margin:auto!important;padding:22px!important;border:1px solid rgba(255,255,255,.34)!important;border-radius:24px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 24px 60px rgba(18,18,23,.2)!important}.login-surface .auth-card:before{display:none!important}.login-surface .auth-card label{margin-top:0!important;margin-bottom:15px!important;color:var(--welcome-black)!important}.login-surface .auth-card label>span{font-size:10px!important}.login-surface .auth-card input{min-height:54px!important;border:1px solid #E5DEEF!important;border-radius:15px!important;background:#fff!important}.login-surface .auth-card input:focus{border-color:var(--welcome-primary)!important;box-shadow:0 0 0 4px rgba(113,60,255,.12)!important}.login-surface .forgot-password{margin:-4px 2px 3px!important;color:var(--welcome-deep)!important}.login-surface .auth-card .btn.primary{min-height:54px!important;margin-top:14px!important;border-radius:15px!important;background:linear-gradient(135deg,var(--welcome-primary),var(--welcome-accent))!important;color:#fff!important;box-shadow:0 10px 22px rgba(113,60,255,.24)!important}.login-surface .auth-register{border-color:#ECE6F3!important}.login-surface .auth-register button{color:var(--welcome-deep)!important}.login-legal{position:relative;width:min(90%,400px);margin:20px auto 0;color:rgba(255,255,255,.82);font-size:8px;line-height:1.9;text-align:center}.login-legal a{color:#fff;font-weight:800}
@media(max-height:720px){.onboarding-screen{grid-template-rows:auto minmax(190px,1fr) auto auto auto auto;padding-top:max(14px,env(safe-area-inset-top))}.onboarding-visual img{height:min(39vh,300px)}.onboarding-copy h1{font-size:24px}.onboarding-dots{margin:10px 0}.onboarding-start{min-height:52px}.login-intro{margin:20px auto 16px}.login-surface{padding-top:31px}.login-surface .auth-card{padding:18px!important}.login-surface .auth-card input{min-height:48px!important}.login-surface .auth-card label{margin-bottom:10px!important}}
