/* Noob News — tela de login, cadastro e senha */
@keyframes nl-float{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-14px) rotate(8deg)}}
@keyframes nl-glow{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes nl-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

body.login{margin:0;min-height:100vh;display:flex;background:#F6F3FA;font-family:'DM Sans',system-ui,sans-serif;color:#1B1028}
body.login *{box-sizing:border-box}

/* Vitrine (lado esquerdo) */
.nl-side{position:relative;overflow:hidden;flex:1 1 50%;display:flex;flex-direction:column;justify-content:space-between;gap:40px;padding:48px clamp(32px,5vw,72px);background:#160626;color:#fff}
.nl-glow{position:absolute;border-radius:50%;pointer-events:none;animation:nl-glow 6s ease-in-out infinite}
.nl-glow-a{width:720px;height:720px;left:-260px;top:-300px;background:radial-gradient(circle,rgba(161,0,176,.55),rgba(161,0,176,0) 65%)}
.nl-glow-b{width:620px;height:620px;right:-240px;bottom:-280px;background:radial-gradient(circle,rgba(255,194,14,.35),rgba(255,194,14,0) 65%);animation-delay:-3s}
.nl-logo{position:relative;display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}
.nl-logo:focus-visible{outline:3px solid #FFF200;outline-offset:6px;border-radius:12px}
.nl-logo img{height:46px;width:auto;filter:drop-shadow(0 8px 18px rgba(255,242,0,.3))}
.nl-logo-txt{display:flex;flex-direction:column;line-height:1}
.nl-logo-name{font-family:Sora,system-ui,sans-serif;font-weight:800;font-size:28px;letter-spacing:-.02em}
.nl-logo-name span{color:#FFF200}
.nl-logo-tag{font-size:11px;color:#B9A6D1;letter-spacing:.14em;margin-top:5px;text-transform:uppercase}
.nl-pitch{position:relative;display:flex;flex-direction:column;gap:28px;max-width:520px}
.nl-pitch h2{margin:0;font-family:Sora,system-ui,sans-serif;font-weight:800;font-size:clamp(34px,4vw,54px);line-height:1.05;letter-spacing:-.03em}
.nl-pitch h2 span{background:linear-gradient(90deg,#FFF200,#FFC20E);-webkit-background-clip:text;background-clip:text;color:transparent}
.nl-perks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.nl-perks li{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);font-size:16px;color:#E3D6F2}
.nl-perks li::before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:#FFF200;box-shadow:0 0 12px #FFF200}
.nl-perks b{color:#fff}
.nl-coins{position:absolute;right:clamp(16px,5vw,64px);top:50%;width:200px;height:260px;margin-top:-130px;pointer-events:none}
.nl-coin{position:absolute;filter:drop-shadow(0 18px 30px rgba(0,0,0,.45));animation:nl-float 5s ease-in-out infinite}
.nl-c1{width:110px;right:0;top:0}
.nl-c2{width:70px;left:10px;top:110px;animation-delay:-1.6s;opacity:.85}
.nl-c3{width:50px;right:30px;bottom:0;animation-delay:-3.2s;opacity:.7}

/* Formulário (lado direito) */
#login{flex:1 1 50%;width:auto;margin:0;padding:48px 24px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0}
#login>*{width:100%;max-width:420px}
#login h1{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.login .message,.login .notice,.login .success,.login #login_error{margin:0 0 18px;padding:14px 18px;border:0;border-radius:16px;box-shadow:none;font-size:15px;line-height:1.5;animation:nl-in .5s ease both}
.login .message,.login .notice-info,.login .success{background:#fff;color:#5E4E70;border:1px solid #EEE7F7}
.login #login_error,.login .notice-error{background:#FFF0F4;color:#8A1538;border:1px solid #FFD0DC}
.login #login_error a{color:#8A1538}
.login .nl-msg{background:none;border:0;padding:0;margin:0 0 22px;font-size:15px;color:#5E4E70}
.login .nl-msg b{display:block;font-family:Sora,system-ui,sans-serif;font-weight:800;font-size:30px;line-height:1.15;letter-spacing:-.02em;color:#1B1028;margin-bottom:6px}
.login .message a,.login .nl-msg a{color:#8E00C2;font-weight:700;text-decoration:none;border-bottom:2px solid #FFC20E}
.login .message a:hover{color:#5A00A0}

.login form{margin:0;padding:30px;border:0;border-radius:26px;background:#fff;box-shadow:0 40px 80px -40px rgba(60,10,90,.45),0 0 0 1px #EEE7F7;overflow:visible;animation:nl-in .5s ease .05s both}
.login form p{margin:0 0 16px}
.login label{font-size:14px;font-weight:600;color:#5E4E70;margin-bottom:6px;display:inline-block}
.login form .input,.login input[type=text],.login input[type=password],.login input[type=email]{width:100%;height:54px;margin:0;padding:0 16px;font-size:16px;color:#1B1028;background:#F6F3FA;border:1.5px solid #E4D8F2;border-radius:14px;box-shadow:none;transition:border-color .2s,box-shadow .2s,background .2s}
.login form .input:focus,.login input[type=text]:focus,.login input[type=password]:focus,.login input[type=email]:focus{outline:none;background:#fff;border-color:#A100B0;box-shadow:0 0 0 4px rgba(161,0,176,.14)}
.login .user-pass-wrap{margin-bottom:16px}
.login .wp-pwd{position:relative}
.login .wp-pwd input{padding-right:52px}
.login .button.wp-hide-pw{position:absolute;right:6px;top:50%;transform:translateY(-50%);height:42px;width:42px;min-width:0;border:0;border-radius:10px;background:none;color:#7600D2;box-shadow:none}
.login .button.wp-hide-pw:hover,.login .button.wp-hide-pw:focus{background:#F1EAF9;color:#A100B0;box-shadow:none}
.login .forgetmenot{float:none;display:flex;align-items:center;margin:4px 0 20px!important}
.login .forgetmenot label{margin:0;display:flex;align-items:center;gap:8px;font-weight:500}
.login input[type=checkbox]{width:20px;height:20px;border-radius:6px;border:1.5px solid #CDB8E6;box-shadow:none}
.login input[type=checkbox]:checked::before{margin:-2px 0 0 -2px}
.login input[type=checkbox]:focus{border-color:#A100B0;box-shadow:0 0 0 3px rgba(161,0,176,.18)}
.login .submit{float:none;margin:0!important;padding:0}
.login .button-primary,.wp-core-ui .button-primary.button-large{float:none;display:block;width:100%;height:56px;min-height:56px;padding:0 24px;border:0;border-radius:999px;background:linear-gradient(90deg,#FFF200,#FFC20E);color:#1B1028;font-family:Sora,system-ui,sans-serif;font-weight:800;font-size:16px;text-shadow:none;box-shadow:0 18px 34px -16px rgba(255,170,0,.9);cursor:pointer;transition:transform .15s,filter .2s,box-shadow .2s}
.login .button-primary:hover,.login .button-primary:focus{background:linear-gradient(90deg,#FFF200,#FFB800);color:#1B1028;filter:brightness(1.03);transform:translateY(-2px);box-shadow:0 22px 40px -16px rgba(255,170,0,1)}
.login .button-primary:focus{outline:3px solid #7600D2;outline-offset:3px}
.login .button-primary:active{transform:translateY(0)}
.login #reg_passmail{font-size:14px;color:#7A6A8C}
.login .indicator-hint,.login .pw-weak{font-size:13px}
.login #pass-strength-result{border-radius:10px}

.login #nav,.login #backtoblog{margin:18px 0 0;padding:0;text-align:center;font-size:14px;color:#B9A6D1}
.login #nav a,.login #backtoblog a{color:#5E4E70!important;font-weight:600;text-decoration:none}
.login #nav a:hover,.login #backtoblog a:hover{color:#8E00C2!important}
.login #nav a:first-child{color:#8E00C2!important}
.login #backtoblog{margin-top:8px}
.login .privacy-policy-page-link{text-align:center;margin:16px 0 0}
.login .language-switcher{display:none}

@media (max-width:900px){
	body.login{flex-direction:column}
	.nl-side{flex:none;gap:18px;padding:24px 20px 28px}
	.nl-pitch h2{font-size:26px}
	.nl-perks,.nl-coins{display:none}
	#login{flex:none;padding:28px 16px 40px}
	.login form{padding:22px}
	.login .nl-msg b{font-size:24px}
}
@media (prefers-reduced-motion:reduce){
	.nl-glow,.nl-coin,.login form,.login .message,.login #login_error{animation:none}
}
.login form p,.login .user-pass-wrap{margin-bottom:18px}
@media (max-width:1240px){.nl-coins{display:none}}
#login form p:not(.submit),#login .user-pass-wrap{margin:0 0 18px}
