﻿.nx-login { position:relative; overflow:hidden; color:#eef6ff; background:radial-gradient(ellipse at 80% 40%,#05266b55,transparent 65%),#020d18; padding:132px 0 65px; min-height:calc(100vh - 80px); }
.nx-login-grid { width:min(1460px,calc(100% - 64px)); margin:auto; display:grid; grid-template-columns:1.45fr 1fr; gap:36px; align-items:center; }
.nx-login-story { position:relative; min-width:0; padding:20px 0; }.nx-login-kicker { color:#00d0ff; font-size:11px; letter-spacing:2.6px; font-weight:700; display:flex; align-items:center; gap:15px; }.nx-login-kicker::before { content:''; width:36px; height:2px; background:#00cafa; }
.nx-login-story h1 { position:relative; z-index:1; margin:24px 0 14px; font-size:clamp(38px,4vw,60px); line-height:1.05; letter-spacing:-1.8px; font-weight:800; max-width:650px; }.nx-login-story h1 span { display:block; font-size:1.2em; background:linear-gradient(100deg,#05ddf7,#097bff,#4d37eb); background-clip:text; -webkit-text-fill-color:transparent; }.nx-login-story > p { position:relative; z-index:1; color:#adc7dd; font-size:17px; line-height:1.6; max-width:535px; margin:0 0 36px; }
.nx-login-features { position:relative; z-index:1; display:grid; gap:28px; width:46%; }.nx-login-features > div { display:flex; gap:18px; align-items:center; }.nx-login-features i { width:65px; height:68px; flex:0 0 auto; border:1px solid #05bafa; border-radius:16px; display:grid; place-items:center; background:linear-gradient(140deg,#023f63,#0a1244); color:#00ccff; font-size:35px; font-style:normal; box-shadow:inset -1px -1px #4341ed; }.nx-login-features strong { display:block; font-size:16px; line-height:1.4; }.nx-login-features small { display:block; color:#a9c3da; font-size:13px; line-height:1.6; margin-top:5px; }
.nx-login-art { position:absolute; right:-10px; bottom:0; width:57%; max-height:510px; filter:drop-shadow(0 0 16px #0064ff30); }
.nx-login-card { position:relative; min-width:0; padding:34px; border:1px solid #00bdf4; border-radius:18px; background:radial-gradient(ellipse at 100% 0,#04398644,transparent 50%),linear-gradient(135deg,#031726,#020d17); box-shadow:inset 0 1px #35d5ff40,0 20px 60px #0004; }
.nx-login-card h2 { margin:25px 0 9px; font-size:31px; letter-spacing:-.8px; }.nx-login-intro { margin:0 0 26px; color:#acc6dc; font-size:15px; line-height:1.6; }
.nx-login-form { display:grid; gap:18px; }.nx-login-field { display:grid; gap:10px; }.nx-login-field label { font-size:13px; font-weight:700; }.nx-login-field input { display:block; width:100%; height:53px; padding:0 16px; border:1px solid #33749f; border-radius:10px; background:linear-gradient(100deg,#071e31,#092038); color:#f0f8ff; font:inherit; font-size:14px; outline:none; }.nx-login-field input::placeholder { color:#8ba9c1; opacity:1; }.nx-login-field input:focus { border-color:#30cdff; box-shadow:0 0 0 3px #0aaddf22; }.nx-login-field input[aria-invalid] { border-color:#ff929f; }
.qv-password-wrap { position:relative; }.nx-login-field .qv-password-wrap input { padding-right:50px; }.qv-password-toggle { position:absolute; top:50%; right:6px; transform:translateY(-50%); display:grid; place-items:center; width:40px; height:40px; padding:0; border:0; border-radius:7px; background:transparent; color:#aed1ec; cursor:pointer; }.qv-password-toggle svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }.qv-password-toggle .eye-off { display:none; }.qv-password-toggle.is-visible .eye-on { display:none; }.qv-password-toggle.is-visible .eye-off { display:block; }
.nx-login .nx-login-forgot { color:#00caff; font-size:12px; font-weight:700; }.nx-login-submit { display:flex; align-items:center; justify-content:center; gap:18px; min-height:54px; padding:10px; border:1px solid #3b6cfb; border-radius:10px; background:linear-gradient(105deg,#00b6ef,#2056ff,#9132f5); color:white; font:inherit; font-size:15px; font-weight:700; cursor:pointer; }.nx-login-submit span { font-size:22px; }.nx-login-submit:hover { filter:brightness(1.12); }.nx-login button:focus-visible,.nx-login a:focus-visible { outline:2px solid #69dcff; outline-offset:4px; }
.nx-login-errors { border:1px solid #8d3d56; border-radius:9px; padding:12px; background:#471b2b55; color:#ffb5c0; font-size:13px; line-height:1.6; }.nx-login-error { color:#ffabb6; font-size:12px; line-height:1.5; }
.nx-login-divider { display:flex; align-items:center; gap:16px; margin:24px 0; color:#8ca9c3; font-size:11px; }.nx-login-divider::before,.nx-login-divider::after { content:''; height:1px; flex:1; background:#213d52; }.nx-login-register { text-align:center; color:#acc5da; font-size:13px; line-height:1.6; margin:0; }.nx-login-register a { color:#00caff; font-weight:700; }
.nx-login-assurances { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:30px; }.nx-login-assurances > div { display:flex; align-items:center; gap:8px; }.nx-login-assurances > div + div { border-left:1px solid #112d43; padding-left:10px; }.nx-login-assurances > div > span { flex:0 0 auto; display:grid; place-items:center; width:30px; height:33px; border:1px solid #17618e; border-radius:50%; background:#053451; color:#00c7ff; font-size:20px; }.nx-login-assurances p { margin:0; }.nx-login-assurances strong { display:block; font-size:8px; line-height:1.5; font-weight:600; }.nx-login-assurances small { display:block; font-size:7px; color:#9cb8d0; line-height:1.6; margin-top:3px; }
@media (max-width:1150px) { .nx-login-grid { grid-template-columns:1fr 1fr; gap:25px; }.nx-login-story h1 { font-size:43px; }.nx-login-story > p { font-size:14px; }.nx-login-art { opacity:.45; width:65%; }.nx-login-features { width:80%; }.nx-login-features > div { max-width:290px; }.nx-login-card { padding:27px; }.nx-login-features strong { font-size:14px; }.nx-login-features i { width:50px; height:55px; }.nx-login-assurances { gap:6px; }.nx-login-assurances > div { display:block; }.nx-login-assurances p { margin-top:7px; } }
@media (max-width:800px) { .nx-login { padding:115px 0 45px; }.nx-login-grid { max-width:580px; grid-template-columns:1fr; gap:25px; }.nx-login-story { padding:0; }.nx-login-story h1 { font-size:39px; }.nx-login-story > p { margin-bottom:0; }.nx-login-features,.nx-login-art { display:none; }.nx-login-card { padding:28px; }.nx-login-assurances > div { display:flex; }.nx-login-assurances p { margin-top:0; } }
@media (max-width:420px) { .nx-login-grid { width:calc(100% - 28px); }.nx-login-kicker { font-size:9px; letter-spacing:1.5px; }.nx-login-story h1 { font-size:34px; margin-top:18px; }.nx-login-story > p { font-size:12px; }.nx-login-card { padding:22px 18px; }.nx-login-card h2 { font-size:27px; }.nx-login-intro { font-size:13px; }.nx-login-field input { font-size:12px; }.nx-login-assurances > div { display:block; }.nx-login-assurances p { margin-top:6px; } }
