:root{--auth-ink:#162035;--auth-muted:#69758d;--auth-blue:#3d76e8;--auth-violet:#7168d9;--auth-line:rgba(43,63,105,.1)}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:"DM Sans","Manrope",system-ui,sans-serif;color:var(--auth-ink);background:#fff}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.visitor-auth{min-height:100vh;background:#fff}
.auth-shell{min-height:100vh}
.auth-shell__panel{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:linear-gradient(90deg,#f2f5fc 0 50%,#fff 50% 100%)}
.auth-shell__story{position:relative;display:flex;min-width:0;min-height:100vh;overflow:hidden;flex-direction:column;align-items:center;padding:48px 7%;background:radial-gradient(circle at 18% 12%,rgba(102,137,230,.12),transparent 270px),radial-gradient(circle at 88% 82%,rgba(139,110,216,.1),transparent 260px),#f2f5fc}
.auth-shell__brand{align-self:flex-start;display:inline-flex;position:relative;z-index:5;align-items:center;min-height:48px;color:var(--auth-ink);font-size:22px;font-weight:600}
.auth-shell__brand img{width:auto;max-width:196px;height:48px;object-fit:contain}
.auth-shell__story-content{width:100%;max-width:520px;margin:auto;text-align:center;position:relative;z-index:2}
.auth-shell__eyebrow{display:inline-flex;margin-top:2px;color:#4972d7;font-size:10px;font-weight:600;letter-spacing:.16em}
.auth-shell__story h1{max-width:500px;margin:15px auto 13px;color:var(--auth-ink);font-size:clamp(34px,2.8vw,46px);font-weight:400;line-height:1.06;letter-spacing:-.048em}
.auth-shell__story p{max-width:430px;margin:0 auto;color:#758198;font-size:13px;font-weight:400;line-height:1.75}
.auth-shell__notes{position:relative;z-index:2;display:flex;flex-wrap:wrap;justify-content:center;gap:22px;color:#758198;font-size:10.5px;font-weight:400}
.auth-shell__notes i{margin-right:6px;color:#36b98a}
.auth-shell__form{display:flex;min-width:0;min-height:100vh;align-items:center;justify-content:center;padding:54px 8%;background:#fff}
.auth-shell__form-inner{width:100%;max-width:440px}
.auth-shell__mobile-brand{display:none}
.auth-shell__mobile-brand img{width:auto;max-width:164px;height:42px;object-fit:contain}
.auth-page{width:100%}
.auth-card-head{padding-bottom:28px}
.auth-card-head h2{margin:0;color:var(--auth-ink);font-size:31px;font-weight:400;line-height:1.15;letter-spacing:-.045em}
.auth-card-head p{margin:7px 0 0;color:var(--auth-muted);font-size:13px;font-weight:400;line-height:1.65}
.auth-form{display:grid;gap:16px}
.auth-field{display:grid;gap:7px}
.auth-field label{color:#4f5c73;font-size:13px;font-weight:600;line-height:1.2}
.auth-optional{color:#98a1b1;font-size:11px;font-weight:400}
.auth-input-wrap{position:relative}
.auth-input-icon{position:absolute;top:0;bottom:0;left:0;display:flex;width:46px;align-items:center;justify-content:center;color:#a0a9ba;font-size:14px;pointer-events:none}
.auth-input-wrap input{display:block;width:100%;height:52px;padding:0 46px;border:1px solid var(--auth-line);border-radius:15px;outline:0;background:#f1f4fa;color:var(--auth-ink);font-size:13px;font-weight:400;box-shadow:none;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}
.auth-input-wrap input::placeholder{color:#9aa4b5}
.auth-input-wrap input:focus{border-color:rgba(61,118,232,.35);background:#fff;box-shadow:0 0 0 4px rgba(61,118,232,.07)}
.auth-password-toggle{position:absolute;top:0;right:0;width:48px;height:52px;border:0;background:transparent;color:#98a2b4;cursor:pointer;font-size:14px}
.auth-password-toggle:hover{color:#526078}
.auth-options{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:1px}
.auth-options--login{justify-content:flex-end}
.auth-options a{color:#667188;font-size:12.5px;font-weight:500;text-decoration:underline;text-underline-offset:4px}
.auth-options a:hover{color:#315fc8}
.auth-submit{width:100%;min-height:50px;margin-top:1px;border:1px solid rgba(255,255,255,.2);border-radius:15px;background:linear-gradient(135deg,#3d76e8,#6b70dc);color:#fff;font-size:13px;font-weight:500;box-shadow:0 18px 34px -22px rgba(51,88,198,.78);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}
.auth-submit:hover{transform:translateY(-1px);box-shadow:0 22px 38px -20px rgba(51,88,198,.85)}
.auth-submit:active{transform:translateY(0)}
.auth-switch{position:relative;margin-top:18px;padding-top:18px;border-top:1px solid rgba(51,72,116,.08);text-align:center}
.auth-switch a{display:inline-flex;align-items:center;justify-content:center;color:#667188;font-size:12px;font-weight:400}
.auth-switch a:hover{color:#315fc8}
.auth-alert{display:flex;align-items:flex-start;gap:11px;margin:0 0 17px;padding:13px 14px;border:1px solid;border-radius:14px;font-size:12px;line-height:1.55}
.auth-alert i{margin-top:2px}
.auth-alert div{display:grid;gap:2px}.auth-alert strong{font-weight:600}.auth-alert span{font-weight:400}
.auth-alert--error{border-color:rgba(225,75,91,.15);background:#fff4f5;color:#b63d4b}
.auth-alert--success{border-color:rgba(46,169,125,.16);background:#f2fbf7;color:#268362}
.auth-alert--info{border-color:rgba(61,118,232,.14);background:#f2f6ff;color:#466bc5}
.auth-security-note,.auth-password-hint{color:#768298;font-size:11.5px;font-weight:400;line-height:1.6}
.auth-security-note{display:flex;align-items:flex-start;gap:9px;padding:13px 14px;border-radius:14px;background:#f6f8fc}
.auth-security-note i{margin-top:3px;color:#6683d8}
.auth-password-hint{margin-top:1px;padding:11px 13px;border-radius:12px;background:#f6f8fc}
.auth-terms{position:relative;display:flex;align-items:flex-start;gap:11px;overflow:hidden;padding:13px 14px;border:1px solid rgba(62,81,122,.07);border-radius:14px;background:linear-gradient(135deg,#f7f9fd,#f2f5fb);cursor:pointer;transition:border-color .25s ease,background .25s ease,box-shadow .25s ease}
.auth-terms input{appearance:none;flex:0 0 21px;width:21px;height:21px;margin:0;border:1px solid #c8d0de;border-radius:7px;background:#fff;cursor:pointer;position:relative}
.auth-terms input:checked{border-color:#4a76df;background:linear-gradient(135deg,#3d76e8,#6b70dc)}
.auth-terms input:checked:after{content:"";position:absolute;left:6px;top:3px;width:6px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.auth-terms span{color:#667188;font-size:12px;font-weight:400;line-height:1.65}
.auth-terms a{color:#466bc5;font-weight:500}.auth-terms a:hover{color:#2859c7}
.auth-terms:has(input:checked){border-color:rgba(61,118,232,.18);background:linear-gradient(135deg,rgba(237,244,255,.95),rgba(241,238,255,.85));box-shadow:0 14px 28px -25px rgba(45,73,151,.65)}
.auth-page--register .auth-card-head{padding-bottom:22px}
.auth-page--register .auth-form{gap:13px}

.auth-shell__art{position:relative;width:460px;height:460px;margin:0 auto 22px}
.auth-home-disc{position:absolute;z-index:4;display:grid;width:172px;height:172px;top:50%;left:50%;place-items:center;border-radius:50%;background:repeating-radial-gradient(circle,#202b42 0 6px,#2b3854 7px 10px);box-shadow:0 38px 70px -38px rgba(24,37,66,.72);transform:translate(-50%,-50%);animation:authHomeDiscFloat 5s ease-in-out infinite}
.auth-home-disc:before{content:"";position:absolute;width:65px;height:65px;border:9px solid #88a1eb;border-radius:50%;background:#f4f6ff}
.auth-home-disc b{position:relative;z-index:2;margin-left:3px;color:#356ee6;font-size:12px;font-weight:500}
.auth-home-orbit{position:absolute;top:50%;left:50%;border:1px solid rgba(73,109,207,.17);border-radius:50%;transform:translate(-50%,-50%)}
.auth-home-orbit i{position:absolute;display:block;width:10px;height:10px;top:-5px;left:50%;border-radius:50%;background:#6e91ed;box-shadow:0 0 0 7px rgba(110,145,237,.1)}
.auth-home-orbit--a{width:255px;height:255px;animation:authHomeOrbit 12s linear infinite}
.auth-home-orbit--b{width:340px;height:340px;animation:authHomeOrbit 18s linear infinite reverse}
.auth-home-orbit--c{width:425px;height:425px;animation:authHomeOrbit 25s linear infinite}
.auth-home-orbit--b i{top:50%;right:-5px;left:auto;background:#9c7ddd;box-shadow:0 0 0 7px rgba(156,125,221,.09)}
.auth-home-orbit--c i{top:auto;bottom:27px;left:23.7%;background:#50b79c;box-shadow:0 0 0 7px rgba(80,183,156,.09)}
.auth-home-note{position:absolute;z-index:5;display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.82);border-radius:14px;background:rgba(255,255,255,.68);box-shadow:0 20px 45px -28px rgba(23,32,51,.6);backdrop-filter:blur(14px);color:#356ee6;font-size:18px;font-weight:500}
.auth-home-note--one{top:12%;right:9%;animation:authHomeNote 4.5s ease-in-out infinite}
.auth-home-note--two{bottom:12%;left:5%;color:#8b6dcc;font-size:13px;animation:authHomeNote 5.5s ease-in-out infinite reverse}
@keyframes authHomeOrbit{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes authHomeDiscFloat{0%,100%{transform:translate(-50%,-50%) translateY(-5px) rotate(-2deg)}50%{transform:translate(-50%,-50%) translateY(8px) rotate(3deg)}}
@keyframes authHomeNote{50%{transform:translateY(-12px) rotate(4deg)}}

@media(max-width:1150px) and (min-width:901px){.auth-shell__art{width:390px;height:390px}.auth-home-orbit--a{width:225px;height:225px}.auth-home-orbit--b{width:295px;height:295px}.auth-home-orbit--c{width:370px;height:370px}.auth-home-disc{width:155px;height:155px}.auth-shell__story{padding-inline:5%}.auth-shell__form{padding-inline:6%}}
@media(max-width:900px){.auth-shell__panel{grid-template-columns:1fr;background:#fff}.auth-shell__story{display:none}.auth-shell__form{min-height:100vh;padding:38px 24px 46px}.auth-shell__mobile-brand{display:flex;width:100%;align-items:center;justify-content:flex-start;margin:0 0 34px}.auth-shell__mobile-brand span{font-size:22px;font-weight:600}}
@media(max-width:600px){.auth-shell__form{padding:28px 20px 42px}.auth-shell__mobile-brand{margin-bottom:28px}.auth-shell__mobile-brand img{max-width:152px;height:39px}.auth-card-head h2{font-size:28px}.auth-card-head{padding-bottom:22px}}
@media(prefers-reduced-motion:reduce){.auth-home-disc,.auth-home-orbit,.auth-home-note{animation:none!important}}


/* Auth entrance polish */
.auth-shell__story::before{content:"";position:absolute;width:430px;height:430px;left:-190px;top:25%;border-radius:50%;background:rgba(91,128,229,.075);filter:blur(50px);animation:authAura 9s ease-in-out infinite alternate;pointer-events:none}
.auth-shell__story::after{content:"";position:absolute;width:360px;height:360px;right:-160px;bottom:2%;border-radius:50%;background:rgba(139,110,216,.065);filter:blur(52px);animation:authAura 11s ease-in-out infinite alternate-reverse;pointer-events:none}
.auth-shell__brand{transition:opacity .22s ease,transform .22s ease}.auth-shell__brand:hover{opacity:.82;transform:translateY(-1px)}
.auth-shell__form-inner{animation:authFormEnter .65s cubic-bezier(.22,.72,.2,1) both}
.auth-input-wrap{transition:transform .22s ease}.auth-field:focus-within .auth-input-wrap{transform:translateY(-1px)}
.auth-input-icon{transition:color .2s ease,transform .2s ease}.auth-field:focus-within .auth-input-icon{color:#4c75dd;transform:scale(1.04)}
.auth-submit{position:relative;overflow:hidden}.auth-submit:after{content:"";position:absolute;width:80px;height:180%;top:-40%;left:-120px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:rotate(16deg);transition:left .58s cubic-bezier(.22,.72,.2,1)}.auth-submit:hover:after{left:calc(100% + 40px)}
@keyframes authAura{from{transform:translate3d(-8px,-6px,0) scale(.94)}to{transform:translate3d(18px,12px,0) scale(1.08)}}
@keyframes authFormEnter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.auth-shell__story::before,.auth-shell__story::after{display:none}}
@media(prefers-reduced-motion:reduce){.auth-shell__story::before,.auth-shell__story::after,.auth-shell__form-inner{animation:none!important}.auth-field:focus-within .auth-input-wrap{transform:none}}
.auth-turnstile{display:flex;min-height:65px;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(62,81,122,.07);border-radius:14px;background:#f7f9fd;padding:8px}.auth-turnstile .cf-turnstile{width:100%;max-width:100%}
.auth-turnstile .g-recaptcha,.auth-turnstile .h-captcha{max-width:100%}@media(max-width:380px){.auth-turnstile .g-recaptcha,.auth-turnstile .h-captcha{transform:scale(.9);transform-origin:center}}

.auth-google{display:flex;width:100%;min-height:50px;align-items:center;justify-content:center;gap:11px;border:1px solid rgba(43,63,105,.13);border-radius:15px;background:#fff;color:#263149;font-size:13px;font-weight:500;box-shadow:0 10px 26px -24px rgba(27,43,78,.6);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease}
.auth-google:hover{border-color:rgba(61,118,232,.25);background:#f9fbff;box-shadow:0 16px 30px -24px rgba(42,75,155,.65);transform:translateY(-1px)}
.auth-google-icon{display:grid;width:21px;height:21px;place-items:center;flex:0 0 21px}.auth-google-icon svg{display:block;width:20px;height:20px}
.auth-divider{display:flex;align-items:center;gap:12px;margin:17px 0;color:#99a2b2;font-size:10.5px;font-weight:400}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:rgba(51,72,116,.08)}.auth-divider span{white-space:nowrap}
.auth-google-note{margin:8px 4px 0;color:#8b95a7;font-size:10.5px;line-height:1.55;text-align:center}

.auth-card-head--phone{padding-bottom:18px}.auth-card-head--phone h2{font-size:26px}.auth-card-head--phone p{max-width:420px}.auth-phone-notice{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px;padding:14px 15px;border:1px solid #dce8fa;border-radius:16px;background:linear-gradient(135deg,#f5f8ff,#f1f5ff);color:#4f668e;font-size:12px;font-weight:400;line-height:1.7;box-shadow:0 12px 28px -26px rgba(60,88,151,.5)}.auth-phone-notice i{flex:none;margin-top:3px;font-size:15px;color:#4b78ca}.auth-phone-notice span{flex:1}.auth-form .auth-field:first-child{margin-top:0}

.auth-phone-field{display:grid;gap:8px;min-width:0}.auth-international-input{display:flex;align-items:center;min-width:0;min-height:52px;border:1px solid var(--auth-line);border-radius:15px;background:#f1f4fa;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.auth-international-input:focus-within{border-color:rgba(61,118,232,.35);background:#fff;box-shadow:0 0 0 4px rgba(61,118,232,.07)}.auth-phone-country-inline{position:relative;display:flex;align-items:center;flex:0 0 137px;min-width:0;min-height:50px;border-right:1px solid #dbe3f1}.auth-phone-country-icon{position:absolute;left:13px;z-index:1;color:#8191ad;pointer-events:none;font-size:13px}.auth-phone-country-inline select{position:relative;width:100%;min-width:0;min-height:50px;padding:0 25px 0 34px;border:0;outline:0;appearance:none;background:transparent;color:#435a82;font:inherit;font-size:12.5px;cursor:pointer}.auth-phone-chevron{position:absolute;right:11px;pointer-events:none;color:#8191ad;font-size:10px}.auth-international-input input{flex:1;min-width:0;width:0;height:50px;padding:0 14px!important;border:0!important;border-radius:0 15px 15px 0;background:transparent!important;box-shadow:none!important}.auth-international-input input:focus{outline:0;box-shadow:none!important}@media(max-width:380px){.auth-phone-country-inline{flex-basis:121px}.auth-phone-country-icon{left:10px}.auth-phone-country-inline select{padding-left:29px;padding-right:19px;font-size:11.5px}.auth-phone-chevron{right:7px}.auth-international-input input{padding-inline:9px!important}}

.auth-login-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 18px;min-width:0;margin:0;padding:1px 0 0}.auth-remember{position:relative;display:inline-flex;align-items:center;gap:10px;min-height:24px;max-width:100%;color:#59677f;font-size:12.5px;line-height:1.4;cursor:pointer;user-select:none}.auth-remember input{position:absolute;left:0;top:50%;width:20px;height:20px;margin:0;transform:translateY(-50%);opacity:0;cursor:pointer}.auth-remember-box{display:flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;border:1px solid #cdd8ec;border-radius:6px;background:#f5f8ff;color:transparent;font-size:10px;transition:background .2s,border-color .2s,box-shadow .2s}.auth-remember:hover .auth-remember-box{border-color:#7798e7}.auth-remember input:checked+.auth-remember-box{border-color:#4774dd;background:#4774dd;color:#fff}.auth-remember input:focus-visible+.auth-remember-box{outline:2px solid #4774dd;outline-offset:3px}.auth-forgot-link{color:#59677f;font-size:12.5px;font-weight:500;line-height:1.4;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.auth-forgot-link:hover{color:#315fc8}@media(max-width:380px){.auth-login-actions{gap:10px}.auth-forgot-link{white-space:normal}}

.auth-name-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;min-width:0}.auth-name-row .auth-field{min-width:0}@media(max-width:420px){.auth-name-row{grid-template-columns:1fr}}
