@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap');
:root{--pink:#f5368d;--rose:#cb1f70;--purple:#8b5cf6;--ink:#221529;--muted:#756c7c;--line:#ecdee7;--white:#fff;--error:#b4233c}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Manrope,system-ui,sans-serif}html{background:#fff8fc}body.auth-royal{min-height:100vh;min-height:100dvh;padding:28px;display:grid;place-items:center;color:var(--ink);overflow-x:hidden;background:radial-gradient(circle at 5% 8%,rgba(255,104,170,.2),transparent 28%),radial-gradient(circle at 95% 4%,rgba(139,92,246,.16),transparent 27%),linear-gradient(145deg,#fff 0%,#fff8fc 55%,#f7f3ff)}body.auth-royal:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.5;background-image:linear-gradient(rgba(228,52,137,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(139,92,246,.025) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(#000,transparent 90%)}a{text-decoration:none}.auth-particles{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.auth-particle{position:absolute;bottom:-20px;border-radius:50%;background:linear-gradient(135deg,var(--pink),var(--purple));filter:blur(.3px);animation:particleUp linear infinite}@keyframes particleUp{0%{transform:translateY(5vh) scale(.3);opacity:0}20%,70%{opacity:.38}100%{transform:translateY(-110vh) translateX(55px) scale(1.4);opacity:0}}
.auth-shell{position:relative;z-index:2;width:min(1120px,100%);min-height:680px;display:grid;grid-template-columns:1.07fr .93fr;border:1px solid rgba(236,211,226,.85);border-radius:42px;background:rgba(255,255,255,.73);backdrop-filter:blur(25px);box-shadow:0 35px 100px rgba(100,40,82,.16),inset 0 1px #fff;overflow:hidden;animation:shellEnter .8s cubic-bezier(.2,.8,.2,1) both}@keyframes shellEnter{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}
.auth-story{position:relative;padding:58px;overflow:hidden;background:linear-gradient(145deg,#f72c87 0%,#e3349b 45%,#9c5cf3 100%);color:#fff}.auth-story:before,.auth-story:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.2);border-radius:50%;animation:orbit 18s linear infinite}.auth-story:before{width:570px;height:570px;right:-220px;bottom:-240px}.auth-story:after{width:380px;height:380px;right:-110px;bottom:-125px;animation-direction:reverse;animation-duration:13s}@keyframes orbit{to{transform:rotate(360deg)}}.story-home{position:relative;z-index:3;color:#fff;font:800 26px 'Plus Jakarta Sans';letter-spacing:-1px}.story-home:before{content:"";display:inline-block;width:13px;height:13px;margin-right:9px;border-radius:5px;background:#fff;box-shadow:8px -6px 0 rgba(255,255,255,.55);transform:rotate(18deg)}.story-copy{position:relative;z-index:3;max-width:470px;margin-top:58px}.story-copy span{font-size:11px;font-weight:800;letter-spacing:.22em;color:#ffe4f1}.story-copy h2{font:800 clamp(38px,4vw,58px)/1.08 'Plus Jakarta Sans';letter-spacing:-3px;margin:15px 0 20px}.story-copy p{max-width:430px;color:rgba(255,255,255,.83);font-size:15px;line-height:1.8}.story-orbit{position:absolute;z-index:2;width:350px;height:350px;right:-25px;bottom:-28px;border:1px dashed rgba(255,255,255,.35);border-radius:50%;animation:storyFloat 6s ease-in-out infinite}.story-orbit img{position:absolute;width:245px;height:245px;object-fit:contain;left:50%;top:50%;transform:translate(-50%,-50%);filter:drop-shadow(0 25px 35px rgba(94,11,68,.24))}.story-orbit i{position:absolute;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 0 7px rgba(255,255,255,.12)}.story-orbit i:nth-child(1){left:34px;top:65px}.story-orbit i:nth-child(2){right:20px;top:150px;width:8px;height:8px}.story-orbit i:nth-child(3){left:130px;bottom:4px;width:6px;height:6px}@keyframes storyFloat{50%{transform:translateY(-12px) rotate(2deg)}}.story-note{position:absolute;z-index:4;padding:12px 16px;border:1px solid rgba(255,255,255,.26);border-radius:16px;background:rgba(255,255,255,.18);backdrop-filter:blur(14px);box-shadow:0 14px 35px rgba(75,14,60,.15);animation:noteFloat 4.5s ease-in-out infinite}.story-note b,.story-note small{display:block}.story-note b{font-size:13px}.story-note small{font-size:9px;color:rgba(255,255,255,.72);margin-top:2px}.note-one{left:42px;bottom:145px}.note-two{right:40px;bottom:315px;animation-delay:-2.2s}@keyframes noteFloat{50%{transform:translateY(-10px)}}
.auth-card{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:43px clamp(28px,4vw,55px);background:rgba(255,255,255,.88);overflow-y:auto}.auth-card:before{content:"SNAPERA";position:absolute;top:25px;right:30px;font:800 9px 'Plus Jakarta Sans';letter-spacing:.2em;color:var(--rose);padding:7px 10px;border-radius:99px;background:#fff0f7}.auth-corner{display:none}.auth-brand{text-align:center;margin:3px 0 28px}.auth-logo-ring{width:100px;height:100px;margin:0 auto 10px;display:grid;place-items:center;border:1px solid #f0dbe7;border-radius:27px;background:linear-gradient(145deg,#fff5fa,#f1eaff);box-shadow:0 15px 38px rgba(207,42,126,.16);animation:logoFloat 4s ease-in-out infinite}.auth-logo{width:95px;height:95px;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(176,33,111,.12))}@keyframes logoFloat{50%{transform:translateY(-6px) rotate(2deg)}}.auth-brand h1{margin:0;font:800 29px 'Plus Jakarta Sans';letter-spacing:-1.3px;background:linear-gradient(110deg,var(--rose),var(--purple));background-clip:text;color:transparent}.auth-brand p{margin:6px 0 0;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.auth-divider{width:46px;height:4px;margin:14px auto 0;border-radius:5px;background:linear-gradient(90deg,var(--pink),var(--purple))}.auth-form{width:100%}.auth-field{margin-bottom:15px}.auth-field>label,.auth-label{display:block;margin:0 0 7px 3px;color:#59485e;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.auth-input-wrap{position:relative}.auth-input-wrap>svg{position:absolute;z-index:2;left:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--pink);pointer-events:none}.auth-input{width:100%;height:52px;padding:0 46px;border:1px solid var(--line);border-radius:16px;outline:none;background:#fdfafd;color:var(--ink);font:600 13px Manrope;transition:.25s}.auth-input::placeholder{color:#aaa0ac;font-weight:500}.auth-input:hover{border-color:#e8bfd4}.auth-input:focus{border-color:var(--pink);background:#fff;box-shadow:0 0 0 4px rgba(245,54,141,.1);transform:translateY(-1px)}.auth-eye{position:absolute;z-index:3;right:7px;top:50%;transform:translateY(-50%);width:39px;height:39px;display:grid;place-items:center;border:0;border-radius:12px;background:transparent;color:var(--rose);cursor:pointer}.auth-eye:hover{background:#fff0f7}.auth-eye svg{width:18px;height:18px}.auth-meta{display:flex;justify-content:space-between;align-items:center;margin:3px 2px 17px;color:var(--muted);font-size:11px}.auth-remember{display:flex;gap:7px;align-items:center}.auth-remember input,.auth-terms input{accent-color:var(--pink)}.auth-link{color:var(--rose);font-size:11px;font-weight:800}.auth-link:hover{text-decoration:underline}.auth-submit{position:relative;width:100%;height:56px;border:0;border-radius:17px;display:flex;align-items:center;justify-content:center;gap:11px;overflow:hidden;background:linear-gradient(110deg,var(--pink),var(--purple));background-size:180% 100%;color:#fff;font:800 13px Manrope;letter-spacing:.05em;text-transform:uppercase;box-shadow:0 14px 32px rgba(207,42,128,.26);cursor:pointer;transition:.25s;animation:buttonGlow 4s ease-in-out infinite}.auth-submit:before{content:"";position:absolute;inset:-80%;background:linear-gradient(100deg,transparent 42%,rgba(255,255,255,.37),transparent 58%);transform:translateX(-55%);animation:buttonShine 4s infinite}.auth-submit span,.auth-submit svg{position:relative;z-index:2}.auth-submit svg{width:19px;height:19px;transition:.3s}.auth-submit:hover{transform:translateY(-3px);box-shadow:0 19px 40px rgba(207,42,128,.36)}.auth-submit:hover svg{transform:translateX(5px)}.auth-submit:disabled{opacity:.65;cursor:wait;transform:none}@keyframes buttonShine{0%,62%{transform:translateX(-55%)}85%,100%{transform:translateX(55%)}}@keyframes buttonGlow{50%{background-position:100% 0}}.auth-spinner{animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-footlinks{display:flex;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid #efe4eb;font-size:11px}.auth-footlinks span{color:var(--muted)!important}.auth-alert{display:flex;align-items:flex-start;gap:9px;margin-bottom:15px;padding:12px 14px;border:1px solid #f0b8c4;border-radius:13px;background:#fff3f5;color:var(--error);font-size:11px;line-height:1.5}.auth-alert svg{flex:0 0 auto;color:var(--error)}.auth-toast{position:fixed;z-index:100;top:20px;left:50%;transform:translate(-50%,-20px);display:flex;align-items:center;gap:10px;max-width:90vw;padding:12px 16px;border:1px solid #e9dae3;border-radius:14px;background:#fff;color:var(--ink);box-shadow:0 15px 45px rgba(76,32,64,.18);font-size:12px;opacity:0;pointer-events:none;transition:.3s}.auth-toast.show,.auth-toast.is-visible{opacity:1;transform:translate(-50%,0)}.auth-toast.is-error{color:var(--error);border-color:#efb5c1}.auth-toast svg{width:18px;height:18px}.auth-captcha-head{display:flex;justify-content:space-between;align-items:center}.auth-captcha-timer{font-size:9px;color:#9b8f9e}.auth-captcha-row{display:grid;grid-template-columns:1fr 44px;gap:8px}.auth-captcha-box{min-height:50px;display:grid;place-items:center;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,#fff9fc,#f4efff);color:var(--rose);font-weight:800;letter-spacing:.22em;cursor:pointer;user-select:none}.auth-captcha-refresh{border:0;border-radius:14px;background:#fff0f7;color:var(--rose);cursor:pointer}.auth-captcha-refresh svg{width:19px;height:19px}.auth-captcha-input{margin-top:8px;padding-left:15px}.auth-terms{display:flex;gap:9px;align-items:flex-start;margin:2px 0 15px;padding:11px 12px;border:1px solid #eee2e9;border-radius:13px;background:#fffafd;color:var(--muted);font-size:10px;line-height:1.5}
@media(max-width:900px){body.auth-royal{padding:18px}.auth-shell{width:min(510px,100%);grid-template-columns:1fr;min-height:0}.auth-story{min-height:220px;padding:35px}.story-copy{margin-top:25px;max-width:310px}.story-copy h2{font-size:34px;letter-spacing:-2px;margin:10px 0}.story-copy p{font-size:12px;line-height:1.6}.story-orbit{width:225px;height:225px;right:-25px;bottom:-65px}.story-orbit img{width:155px;height:155px}.story-note{display:none}.auth-card{padding:42px 36px}.auth-logo-ring{width:88px;height:88px}.auth-logo{width:84px;height:84px}}
@media(max-width:520px){body.auth-royal{padding:0;display:block}.auth-shell{width:100%;border:0;border-radius:0;box-shadow:none;background:#fff}.auth-story{min-height:174px;padding:25px 23px;border-radius:0 0 35px 35px}.story-home{font-size:22px}.story-copy{margin-top:21px}.story-copy h2{font-size:27px;margin:7px 0}.story-copy p{display:none}.story-orbit{width:175px;height:175px;right:-25px;bottom:-70px;opacity:.88}.story-orbit img{width:125px;height:125px}.auth-card{min-height:calc(100dvh - 174px);padding:39px 21px 27px}.auth-card:before{top:16px;right:19px}.auth-brand{margin-bottom:24px}.auth-brand h1{font-size:25px}.auth-input{height:50px}.auth-footlinks{padding-bottom:5px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}}
