

/* ===== BASE (same in every variant: centered, same logo, same margins) ===== */
@property --nx-ang{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes nxIn{from{opacity:0;transform:scale(.86) translateY(24px)}to{opacity:1;transform:none}}
#login_wrap,#intro_top{width:100%;height:100vh;min-height:100vh;position:relative}
#intro_top{display:table!important;table-layout:fixed;overflow:hidden;background:var(--bg);z-index:1}
.nx_bg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
#intro_top>.bcell_mid{display:table-cell!important;width:100%;height:100vh;vertical-align:middle;text-align:var(--al,center);padding:20px var(--px,20px);box-sizing:border-box;position:relative;z-index:2}
#login_all{text-align:center;animation:nxIn .7s cubic-bezier(.2,1.25,.4,1) both;width:var(--w,400px);max-width:calc(100vw - 40px);min-height:400px;box-sizing:border-box;margin:var(--m,0 auto);display:block;padding:32px 28px!important;position:relative;isolation:isolate;overflow:hidden;color:var(--txt);background:var(--card);border-radius:var(--r);border:1px solid var(--line);box-shadow:var(--glow)}
#login_all>*{position:relative;z-index:3}
#login_logo{height:70px;max-width:190px;object-fit:contain;filter:drop-shadow(0 0 9px var(--a))}
.login_text{text-shadow:0 0 12px var(--a)}
.cbg_extra_lines{display:none}
.cbg_neon_button,.nx_google{width:100%;max-width:330px;margin:7px auto;box-sizing:border-box;cursor:pointer;color:var(--txt)!important;transition:transform .2s,box-shadow .2s,filter .2s}
.cbg_neon_button{border:1px solid var(--a)!important;border-radius:var(--rb)!important;background:var(--btn)!important;box-shadow:0 0 14px var(--a2)}
.cbg_neon_button:hover{transform:translateY(-2px);box-shadow:0 0 24px var(--a),0 0 34px var(--b2)!important}
.nx_google{display:flex;align-items:center;justify-content:center;gap:10px;padding:13px 16px;font:600 15px/1 inherit;background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:var(--rb)}
.nx_google:hover{transform:translateY(-2px);border-color:var(--b);box-shadow:0 0 20px var(--b2)}
.nx_google svg{background:#fff;border-radius:50%;padding:4px;box-sizing:content-box}
.nx_or{max-width:330px;margin:4px auto;display:flex;align-items:center;gap:10px;font-size:12px;opacity:.6}
.nx_or:before,.nx_or:after{content:"";flex:1;height:1px;background:var(--line)}
.cbg_muted{opacity:.72}
.cbg_register_link{color:var(--a)!important;text-shadow:0 0 9px var(--a);transition:color .2s}
.cbg_register_link:hover{color:var(--b)!important}
#intro_lang{position:absolute;top:10px;right:20px;width:40px;height:40px;z-index:5}
/* real CodyChat popup (login/register form) - centered */
.cbg_neon_popup{position:fixed!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:400px!important;max-width:calc(100vw - 30px)!important;min-height:400px!important;max-height:calc(100vh - 30px)!important;margin:0!important;box-sizing:border-box;overflow:auto!important;z-index:99999!important;border-radius:var(--r)!important}
form.cbg_neon_form{position:relative!important;isolation:isolate;overflow:hidden!important;width:100%!important;max-width:100%!important;min-height:360px;box-sizing:border-box;padding:26px!important;margin:0!important;border-radius:var(--r)!important;background:var(--card)!important;border:1px solid var(--line)!important;box-shadow:var(--glow)!important;color:var(--txt)!important}
form.cbg_neon_form>*{position:relative;z-index:3}
form.cbg_neon_form input:not([type=hidden]),form.cbg_neon_form select,form.cbg_neon_form textarea{box-sizing:border-box!important;max-width:100%!important;color:var(--txt)!important;background:rgba(255,255,255,.05)!important;border:1px solid var(--line)!important;border-radius:var(--rb)!important;outline:0!important;transition:.2s!important}
form.cbg_neon_form input:not([type=hidden]):focus,form.cbg_neon_form select:focus{border-color:var(--a)!important;box-shadow:0 0 16px var(--a2)!important}
form.cbg_neon_form ::placeholder{color:var(--txt)!important;opacity:.45!important}
form.cbg_neon_form .cbg_neon_submit,form.cbg_neon_form button[type=submit],form.cbg_neon_form input[type=submit]{border:1px solid var(--a)!important;border-radius:var(--rb)!important;background:var(--btn)!important;color:var(--txt)!important;font-weight:700!important;box-shadow:0 0 14px var(--a2)!important}
form.cbg_neon_form .cbg_neon_submit:hover{transform:translateY(-2px);filter:brightness(1.15)}
form.cbg_neon_form a:hover{color:var(--a)!important}
.section{width:100%;margin:0 auto}.section_content{width:100%;max-width:1100px;margin:0 auto}
@media(max-width:600px){#intro_top>.bcell_mid{padding:12px}#login_all{width:calc(100vw - 24px);padding:25px 18px!important}#login_logo{height:58px}
.cbg_neon_popup{width:calc(100vw - 20px)!important;min-height:0!important}form.cbg_neon_form{min-height:0;padding:22px 18px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important}}

.nx_toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#0b0b12;color:#fff;padding:12px 16px;border-radius:10px;z-index:100000;border:1px solid var(--a);max-width:90vw;font:14px/1.4 system-ui;box-shadow:0 0 20px var(--a2)}

.nx_cv{position:absolute;inset:0;z-index:6;pointer-events:none;overflow:hidden}
@keyframes nxUp{from{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:none}}
@property --nx-r{syntax:"<length>";inherits:false;initial-value:0px}

:root{--bg:#05050d;--card:linear-gradient(160deg,#150a3a,#062a4a,#3a0a4a);--txt:#fff;--a:#7df9ff;--b:#ff6bf5;--a2:rgba(125,249,255,.4);--b2:rgba(255,107,245,.4);--line:rgba(255,255,255,.2);--r:46px;--rb:16px;--btn:linear-gradient(90deg,rgba(125,249,255,.3),rgba(255,107,245,.3));--glow:0 0 0 2px #2b2b3a,0 0 40px var(--a2),0 0 90px var(--b2);--w:340px}
.glow{position:absolute;left:50%;top:50%;width:70vmin;height:70vmin;transform:translate(-50%,-50%);background:conic-gradient(var(--a),var(--b),var(--a));filter:blur(90px);opacity:.35;animation:rot 12s linear infinite}
@keyframes rot{to{transform:translate(-50%,-50%) rotate(360deg)}}
#login_all{border:10px solid #0b0b12;min-height:560px!important;background:var(--card);background-size:200% 200%;animation:nxIn .7s both,flo 6s ease-in-out infinite;padding-top:64px!important}
@keyframes flo{50%{transform:translateY(-10px)}}
#login_all:before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);width:110px;height:24px;background:#0b0b12;border-radius:0 0 16px 16px;z-index:5}
#login_all:after{content:"";position:absolute;left:50%;bottom:8px;transform:translateX(-50%);width:110px;height:4px;border-radius:9px;background:#fff;opacity:.5;z-index:5}
@media(max-height:700px){#login_all{min-height:0!important}}
