/* Projeto X V39 — autenticação isolada e estável */
html,body{max-width:100%;overflow-x:hidden}
body.auth-v39,
body.auth-v39 *{box-sizing:border-box}
body.auth-v39{
  margin:0!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  display:block!important;
  background:#080b10!important;
  color:#f7f8fb!important;
  font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  overflow-x:hidden!important;
}
body.auth-v39 a{color:inherit;text-decoration:none}
body.auth-v39 img{display:block;max-width:100%}
body.auth-v39 .px39-auth-shell{
  width:min(1240px,calc(100% - 48px))!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  margin:0 auto!important;
  padding:34px 0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr)!important;
  gap:28px!important;
  align-items:stretch!important;
  position:relative!important;
}
body.auth-v39 .px39-auth-shell:before,
body.auth-v39 .px39-auth-shell:after{content:none!important;display:none!important}
body.auth-v39 .px39-auth-showcase,
body.auth-v39 .px39-auth-form{
  min-width:0!important;
  border:1px solid #202631!important;
  border-radius:28px!important;
  overflow:hidden!important;
}
body.auth-v39 .px39-auth-showcase{
  position:relative!important;
  min-height:680px!important;
  padding:38px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:30px!important;
  background:
    radial-gradient(circle at 16% 18%,rgba(75,101,255,.17),transparent 34%),
    radial-gradient(circle at 88% 86%,rgba(255,91,91,.10),transparent 31%),
    linear-gradient(180deg,#0b0f16 0%,#0a0d13 100%)!important;
}
body.auth-v39 .px39-auth-showcase:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  opacity:.22!important;
  background-image:radial-gradient(rgba(255,255,255,.23) .65px,transparent .65px)!important;
  background-size:30px 30px!important;
  mask-image:linear-gradient(to bottom,#000,transparent 86%)!important;
}
body.auth-v39 .px39-auth-brand{
  position:relative!important;
  z-index:2!important;
  display:inline-flex!important;
  align-items:center!important;
  align-self:flex-start!important;
  gap:11px!important;
  max-width:100%!important;
}
body.auth-v39 .px39-auth-brand img{width:40px!important;height:40px!important;object-fit:contain!important;flex:0 0 40px!important}
body.auth-v39 .px39-auth-brand span{min-width:0!important}
body.auth-v39 .px39-auth-brand b{display:block!important;color:#fff!important;font-size:1rem!important;line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.auth-v39 .px39-auth-brand small{display:block!important;margin-top:3px!important;color:#7f8998!important;font-size:.67rem!important;text-transform:uppercase!important;letter-spacing:.13em!important;white-space:nowrap!important}
body.auth-v39 .px39-auth-copy{
  position:relative!important;
  z-index:2!important;
  margin:auto 0 0!important;
  max-width:660px!important;
}
body.auth-v39 .px39-auth-kicker{
  display:inline-flex!important;
  padding:8px 11px!important;
  border:1px solid #262d39!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.035)!important;
  color:#a8b0bd!important;
  font-size:.67rem!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
body.auth-v39 .px39-auth-copy h2{
  max-width:12ch!important;
  margin:18px 0 16px!important;
  color:#f8fafc!important;
  font-size:clamp(2.7rem,4.4vw,4.8rem)!important;
  line-height:.96!important;
  letter-spacing:-.055em!important;
  font-weight:800!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body.auth-v39 .px39-auth-copy p{
  max-width:590px!important;
  margin:0!important;
  color:#98a2b3!important;
  font-size:.96rem!important;
  line-height:1.7!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body.auth-v39 .px39-auth-gallery{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
}
body.auth-v39 .px39-auth-gallery a{
  display:block!important;
  min-width:0!important;
  aspect-ratio:4/5!important;
  overflow:hidden!important;
  border:1px solid #272e39!important;
  border-radius:14px!important;
  background:#11161e!important;
  box-shadow:0 16px 34px rgba(0,0,0,.18)!important;
}
body.auth-v39 .px39-auth-gallery img{width:100%!important;height:100%!important;object-fit:cover!important}
body.auth-v39 .px39-auth-benefits{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:9px!important;
}
body.auth-v39 .px39-auth-benefits span{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  max-width:100%!important;
  padding:9px 11px!important;
  border:1px solid #252c36!important;
  border-radius:999px!important;
  background:#0e131a!important;
  color:#a9b2bf!important;
  font-size:.72rem!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
body.auth-v39 .px39-auth-benefits svg{width:14px!important;height:14px!important;color:#33d69f!important;flex:0 0 auto!important}
body.auth-v39 .px39-auth-form{
  min-height:680px!important;
  padding:38px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#0d1219!important;
}
body.auth-v39 .px39-auth-mobile-head{display:none!important}
body.auth-v39 .px39-auth-card{
  position:relative!important;
  grid-column:auto!important;
  width:min(440px,100%)!important;
  max-width:440px!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:30px!important;
  border:1px solid #27303c!important;
  border-radius:20px!important;
  background:#121821!important;
  color:#f8fafc!important;
  box-shadow:0 24px 70px rgba(0,0,0,.24)!important;
  overflow:hidden!important;
  backdrop-filter:none!important;
}
body.auth-v39 .px39-auth-card:before,
body.auth-v39 .px39-auth-card:after{content:none!important;display:none!important}
body.auth-v39 .px39-auth-card .auth-card-kicker{
  display:block!important;
  margin:0 0 8px!important;
  color:#8294ff!important;
  font-size:.68rem!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
body.auth-v39 .px39-auth-card h1{
  margin:0 0 10px!important;
  color:#f8fafc!important;
  font-size:2rem!important;
  line-height:1.06!important;
  letter-spacing:-.04em!important;
  font-weight:800!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body.auth-v39 .px39-auth-card>p{
  margin:0 0 20px!important;
  color:#929cab!important;
  font-size:.88rem!important;
  line-height:1.6!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body.auth-v39 .px39-auth-card>p strong{color:#e8edf5!important}
body.auth-v39 .px39-auth-card form{display:block!important;width:100%!important;margin:0!important}
body.auth-v39 .px39-auth-card label{
  display:block!important;
  margin:13px 0 7px!important;
  color:#d9dee7!important;
  font-size:.76rem!important;
  line-height:1.2!important;
  font-weight:700!important;
}
body.auth-v39 .px39-auth-card .input{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:50px!important;
  margin:0!important;
  padding:0 14px!important;
  border:1px solid #2a3340!important;
  border-radius:12px!important;
  background:#0b1017!important;
  color:#f8fafc!important;
  font-size:.9rem!important;
  line-height:1!important;
  outline:0!important;
  box-shadow:none!important;
}
body.auth-v39 .px39-auth-card .input::placeholder{color:#687384!important;opacity:1!important}
body.auth-v39 .px39-auth-card .input:focus{border-color:#6678ff!important;box-shadow:0 0 0 4px rgba(102,120,255,.12)!important}
body.auth-v39 .px39-auth-card .btn.full{
  width:100%!important;
  height:50px!important;
  margin:18px 0 0!important;
  padding:0 16px!important;
  border:0!important;
  border-radius:12px!important;
  background:linear-gradient(90deg,#526aff,#765cff)!important;
  color:#fff!important;
  font-size:.84rem!important;
  font-weight:800!important;
  box-shadow:0 12px 28px rgba(82,106,255,.22)!important;
  transform:none!important;
}
body.auth-v39 .px39-auth-card .btn.full:before{display:none!important}
body.auth-v39 .px39-auth-card .btn.full:hover{filter:brightness(1.06)!important;transform:translateY(-1px)!important}
body.auth-v39 .px39-auth-card .muted{
  margin:16px 0 0!important;
  color:#8993a2!important;
  font-size:.8rem!important;
  line-height:1.5!important;
  text-align:center!important;
}
body.auth-v39 .px39-auth-card .bright-link{color:#a8b2ff!important;text-decoration:none!important;font-weight:800!important}
body.auth-v39 .px39-auth-card .bright-link:hover{text-decoration:underline!important}
body.auth-v39 .google-login-btn{
  width:100%!important;
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  margin:0!important;
  border:1px solid #2b3441!important;
  border-radius:12px!important;
  background:#0b1017!important;
  color:#f8fafc!important;
  font-size:.82rem!important;
  font-weight:700!important;
}
body.auth-v39 .google-login-btn span{color:#4285f4!important;font-weight:900!important}
body.auth-v39 .or-line{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin:18px 0!important;
  color:#6f7987!important;
  font-size:.68rem!important;
}
body.auth-v39 .or-line:before,body.auth-v39 .or-line:after{content:""!important;display:block!important;height:1px!important;flex:1!important;background:#27303a!important}
body.auth-v39 .or-line span{white-space:nowrap!important}
body.auth-v39 .alert{margin:12px 0!important;padding:12px 14px!important;border-radius:12px!important;font-size:.8rem!important;line-height:1.45!important}
body.auth-v39 .alert.bad{background:#35171b!important;color:#ffb0b6!important}
body.auth-v39 .alert.warn{background:#34270e!important;color:#f9d77a!important}

/* widgets stay outside the layout */
body.auth-v39 .px31-ai-support{right:14px!important;bottom:14px!important;z-index:1500!important}

@media(max-width:1050px){
  body.auth-v39 .px39-auth-shell{
    width:min(620px,calc(100% - 32px))!important;
    padding:24px 0!important;
    grid-template-columns:1fr!important;
    align-items:center!important;
  }
  body.auth-v39 .px39-auth-showcase{display:none!important}
  body.auth-v39 .px39-auth-form{
    min-height:calc(100vh - 48px)!important;
    min-height:calc(100dvh - 48px)!important;
    padding:28px!important;
    flex-direction:column!important;
    gap:22px!important;
  }
  body.auth-v39 .px39-auth-mobile-head{display:block!important;width:min(440px,100%)!important}
  body.auth-v39 .px39-auth-mobile-head a{display:inline-flex!important;align-items:center!important;gap:9px!important;color:#fff!important}
  body.auth-v39 .px39-auth-mobile-head img{width:34px!important;height:34px!important}
  body.auth-v39 .px39-auth-mobile-head b{font-size:.95rem!important}
}
@media(max-width:640px){
  body.auth-v39 .px39-auth-shell{width:100%!important;padding:0!important}
  body.auth-v39 .px39-auth-form{min-height:100vh!important;min-height:100dvh!important;border:0!important;border-radius:0!important;padding:24px 16px 92px!important;justify-content:center!important}
  body.auth-v39 .px39-auth-card{padding:24px!important;border-radius:18px!important}
  body.auth-v39 .px39-auth-card h1{font-size:1.75rem!important}
  body.auth-v39 .px31-ai-support{right:10px!important;bottom:10px!important}
}
