/* RioPing V18.7 Dark Login — scoped strictly to unauthenticated page */
body:has(#login:not([hidden])){background:radial-gradient(ellipse at 50% 12%,#342077 0%,transparent 38%),radial-gradient(ellipse at 100% 75%,#142c77 0%,transparent 45%),#07091f!important;color:#f9f7ff!important}
body:has(#login:not([hidden])) .shell{max-width:660px!important}
body:has(#login:not([hidden])) .shell>header,body:has(#login:not([hidden])) .shell>main>.hero{display:none!important}
body:has(#login:not([hidden])) .shell>footer{display:none!important}
#login.rio-welcome-glass{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,rgba(28,19,73,.97),rgba(8,14,43,.98))!important;border:1px solid #8249fa!important;border-radius:28px!important;box-shadow:0 0 0 1px rgba(68,149,255,.17),0 22px 70px #020315,0 0 40px rgba(115,50,255,.28)!important;color:#f8f6ff!important;padding:clamp(20px,5vw,34px)!important;margin:20px auto 30px!important;max-width:550px!important}
#login.rio-welcome-glass:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#a84dff,#6037fa,#2bc7ff)!important}
#login .rio-welcome-kicker{font-size:11px!important;letter-spacing:3px!important;color:#ad9dff!important}
#login .login-brand{margin:12px auto!important;gap:8px!important}
#login .login-brand img{width:70px!important;height:70px!important;object-fit:contain!important;background:radial-gradient(circle,#1d3c7d,#070b26)!important;border:1px solid #6850ca!important;box-shadow:0 0 25px #5329b977!important;border-radius:20px!important}
#login .login-brand strong{color:#fff!important;font-size:27px!important}
#login h2{color:#fff!important;font-size:clamp(21px,5vw,28px)!important;margin:10px 0!important}
#login .rio-welcome-subtitle,#login .muted{color:#bcb4d9!important}
#login .rio-login-switch{background:#101432!important;border:1px solid #453579!important;border-radius:18px!important;padding:5px!important;margin:18px 0!important;display:flex!important}
#login .rio-login-switch button{flex:1!important;color:#bcb4ed!important;background:transparent!important;border:0!important;border-radius:13px!important;font-size:14px!important;min-width:0!important;padding:12px 5px!important}
#login .rio-login-switch button[aria-selected="true"]{background:linear-gradient(110deg,#a449fa,#5030f5)!important;color:#fff!important;box-shadow:0 4px 18px #7539e855!important}
#login label{color:#ece7ff!important;font-size:14px!important}
#login input[type=email],#login input[type=password],#login input[type=text],#login #login-code{background:#121b3d!important;color:#fff!important;border:1px solid #6250b0!important;border-radius:14px!important;min-height:52px!important;font-size:16px!important;box-shadow:none!important}
#login input::placeholder{color:#aaa5ca!important;opacity:1!important}
#login input:focus-visible{outline:2px solid #51baff!important;outline-offset:1px!important}
#login #rio-password-form button[type=submit],#login #code-form button[type=submit]{background:linear-gradient(105deg,#a348ff,#6233fa 55%,#168af9)!important;color:white!important;border:1px solid #9d6cff!important;border-radius:15px!important;min-height:52px!important;box-shadow:0 8px 25px #6228ef55!important}
#login #rio-toggle-password{color:#f0eaff!important;background:#28234f!important;border:1px solid #6553a3!important}
#login #code-form p{color:#d4c9f6!important}
#login .rio-welcome-security{background:rgba(77,64,144,.2)!important;border:1px solid #403878!important;color:#c5c1e8!important;border-radius:13px!important}
#login .rio-v187-legal{text-align:center;color:#aca6cf;font-size:12px;margin:22px 0 0}
#login .rio-v187-botnote{color:#c9c1ee;font-size:13px;line-height:2}
#login .rio-v187-botnote code{direction:ltr;unicode-bidi:isolate;color:#c4a5ff}
@media(max-width:600px){body:has(#login:not([hidden])) .shell{padding:10px!important}#login.rio-welcome-glass{margin:8px auto 20px!important;padding:19px!important;border-radius:22px!important}#login .login-brand img{width:62px!important;height:62px!important}}
@media(prefers-reduced-motion:reduce){#login *{animation:none!important;transition:none!important}}
