/* v86 · login + bienvenida reparados, capa final */
html,
body{
  width:100%;
  max-width:100%;
  min-height:100%;
  overflow-x:hidden!important;
}
body.is-login{
  min-height:100svh;
  background:
    radial-gradient(circle at 18% 16%, rgba(126,58,242,.30), transparent 34%),
    radial-gradient(circle at 84% 18%, rgba(34,211,238,.18), transparent 34%),
    radial-gradient(circle at 58% 92%, rgba(245,158,11,.12), transparent 36%),
    linear-gradient(135deg,#070817 0%,#11102a 42%,#062032 100%)!important;
  color:#f8fafc;
}
body.is-login .stars,
body.is-login .nebula{
  position:fixed;
  inset:0;
  pointer-events:none;
  max-width:100vw;
  overflow:hidden;
}
body.is-login .app-shell.login-shell,
body.is-login .login-shell{
  width:100%;
  max-width:100vw;
  min-height:100svh;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:clamp(16px,3vw,40px)!important;
  overflow-x:hidden!important;
  box-sizing:border-box;
}
body.is-login .mct-panel{
  border:1px solid rgba(255,255,255,.16)!important;
  background:
    linear-gradient(145deg,rgba(30,35,62,.90),rgba(8,13,28,.95)),
    radial-gradient(circle at 14% 0%,rgba(103,232,249,.20),transparent 36%),
    radial-gradient(circle at 92% 18%,rgba(167,139,250,.18),transparent 40%)!important;
  box-shadow:0 32px 100px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,255,255,.06)!important;
  backdrop-filter:blur(18px);
}

/* LOGIN */
body.is-login .login-card{
  width:min(440px,calc(100vw - 32px))!important;
  max-width:440px!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:clamp(22px,4vw,34px)!important;
  border-radius:30px!important;
  text-align:left!important;
  overflow:visible!important;
}
body.is-login .login-card .mct-icon.login-yinyang,
body.is-login .login-card .login-yinyang{
  width:76px!important;
  height:76px!important;
  min-width:76px!important;
  margin:0 auto 18px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.is-login .login-yinyang-svg{
  width:100%!important;
  height:100%!important;
  display:block!important;
  overflow:visible!important;
  border-radius:50%!important;
  filter:drop-shadow(0 16px 24px rgba(0,0,0,.36));
}
body.is-login .login-card h1{
  margin:0 0 22px!important;
  color:#f8fafc!important;
  font-size:clamp(2rem,4.5vw,2.55rem)!important;
  line-height:1.02!important;
  letter-spacing:-.055em!important;
  text-align:center!important;
  text-wrap:balance;
}
body.is-login .login-card form,
body.is-login .login-card .mct-form-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:16px!important;
  width:100%!important;
}
body.is-login .login-card label{
  display:grid!important;
  gap:8px!important;
  margin:0!important;
  color:#e5e7eb!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  text-align:left!important;
}
body.is-login .login-card input{
  width:100%!important;
  min-height:52px!important;
  padding:13px 16px!important;
  border-radius:18px!important;
  border:1px solid rgba(148,163,184,.22)!important;
  background:rgba(2,6,23,.76)!important;
  color:#f8fafc!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
}
body.is-login .login-card input:focus{
  border-color:rgba(103,232,249,.70)!important;
  box-shadow:0 0 0 4px rgba(103,232,249,.12), inset 0 1px 0 rgba(255,255,255,.06)!important;
}
body.is-login .login-card .mct-btn,
body.is-login .login-card .btn{
  width:100%!important;
  min-height:54px!important;
  margin-top:2px!important;
  border-radius:18px!important;
  background:#f59e0b!important;
  color:#08111f!important;
  border:0!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
  box-shadow:0 18px 42px rgba(245,158,11,.24)!important;
}
body.is-login .login-card .demo-link{
  width:100%!important;
  min-height:46px!important;
  margin-top:14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:16px!important;
  color:#67e8f9!important;
  text-decoration:none!important;
  font-weight:900!important;
  background:rgba(103,232,249,.08)!important;
  border:1px solid rgba(103,232,249,.18)!important;
}
body.is-login .login-card .demo-link:hover{
  background:rgba(103,232,249,.14)!important;
}

/* BIENVENIDA */
body.is-login .landing-stage{
  position:relative!important;
  z-index:1;
  width:min(1160px,calc(100vw - 32px))!important;
  max-width:1160px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.18fr) minmax(260px,.82fr)!important;
  gap:clamp(18px,3vw,34px)!important;
  align-items:center!important;
  overflow:visible!important;
}
body.is-login .landing-orbit{
  position:absolute!important;
  inset:-18px!important;
  z-index:-1!important;
  pointer-events:none!important;
  overflow:hidden!important;
  border-radius:42px!important;
}
body.is-login .landing-orbit span{
  position:absolute!important;
  display:block!important;
  border-radius:50%!important;
  border:1px solid rgba(103,232,249,.16)!important;
  background:radial-gradient(circle,rgba(103,232,249,.08),transparent 68%)!important;
  box-shadow:0 0 60px rgba(103,232,249,.10)!important;
}
body.is-login .landing-orbit span:nth-child(1){width:min(340px,38vw)!important;height:min(340px,38vw)!important;right:2%!important;top:0!important;}
body.is-login .landing-orbit span:nth-child(2){width:min(210px,30vw)!important;height:min(210px,30vw)!important;left:2%!important;bottom:2%!important;}
body.is-login .landing-orbit span:nth-child(3){width:110px!important;height:110px!important;right:38%!important;bottom:8%!important;background:radial-gradient(circle,rgba(245,158,11,.18),transparent 64%)!important;}
body.is-login .landing-card{
  width:100%!important;
  max-width:100%!important;
  min-height:520px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:clamp(30px,5vw,62px)!important;
  border-radius:36px!important;
  overflow:hidden!important;
}
body.is-login .landing-yinyang{
  width:82px!important;
  height:82px!important;
  margin:0 0 22px!important;
}
body.is-login .landing-kicker{
  margin:0 0 12px!important;
  color:#67e8f9!important;
  text-transform:uppercase!important;
  letter-spacing:.28em!important;
  font-weight:950!important;
  font-size:.86rem!important;
}
body.is-login .landing-card h1{
  margin:0!important;
  max-width:11ch!important;
  color:#f8fafc!important;
  font-size:clamp(3rem,7vw,6.2rem)!important;
  line-height:.92!important;
  letter-spacing:-.08em!important;
  text-wrap:balance!important;
}
body.is-login .landing-copy{
  max-width:720px!important;
  margin:22px 0 0!important;
  color:#cbd5e1!important;
  font-size:clamp(1.02rem,1.5vw,1.22rem)!important;
  line-height:1.65!important;
}
body.is-login .landing-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:28px!important;
}
body.is-login .landing-actions .mct-btn{
  min-height:52px!important;
  padding:0 24px!important;
  border-radius:17px!important;
  text-decoration:none!important;
  font-weight:950!important;
}
body.is-login .landing-actions .mct-btn.primary{
  background:#f59e0b!important;
  color:#08111f!important;
  box-shadow:0 18px 40px rgba(245,158,11,.22)!important;
}
body.is-login .landing-actions .mct-btn.ghost{
  background:rgba(255,255,255,.07)!important;
  color:#eaf6ff!important;
  border:1px solid rgba(255,255,255,.15)!important;
  box-shadow:none!important;
}
body.is-login .landing-insights{
  width:100%!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:16px!important;
}
body.is-login .landing-insights div{
  width:100%!important;
  padding:22px!important;
  border-radius:26px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 20px 60px rgba(0,0,0,.24)!important;
}
body.is-login .landing-insights b{
  display:block!important;
  margin-bottom:6px!important;
  color:#fff!important;
  font-size:1.22rem!important;
}
body.is-login .landing-insights span{
  display:block!important;
  color:#b9c6dc!important;
  line-height:1.5!important;
}

@media (max-width:900px){
  body.is-login .landing-stage{
    grid-template-columns:1fr!important;
    width:min(720px,calc(100vw - 28px))!important;
  }
  body.is-login .landing-card{
    min-height:auto!important;
  }
  body.is-login .landing-card h1{
    max-width:12ch!important;
  }
  body.is-login .landing-insights{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:620px){
  body.is-login .app-shell.login-shell,
  body.is-login .login-shell{
    min-height:100svh;
    padding:12px!important;
  }
  body.is-login .login-card{
    width:min(420px,calc(100vw - 24px))!important;
    padding:20px!important;
    border-radius:24px!important;
  }
  body.is-login .login-card h1{
    font-size:clamp(1.85rem,9vw,2.35rem)!important;
  }
  body.is-login .login-card .mct-icon.login-yinyang{
    width:66px!important;
    height:66px!important;
    min-width:66px!important;
  }
  body.is-login .landing-stage{
    width:calc(100vw - 24px)!important;
    gap:14px!important;
  }
  body.is-login .landing-card{
    padding:22px!important;
    border-radius:24px!important;
  }
  body.is-login .landing-yinyang{
    width:64px!important;
    height:64px!important;
    margin-bottom:16px!important;
  }
  body.is-login .landing-kicker{
    letter-spacing:.18em!important;
    font-size:.76rem!important;
  }
  body.is-login .landing-card h1{
    font-size:clamp(2.25rem,13vw,3.3rem)!important;
    max-width:100%!important;
    line-height:.98!important;
  }
  body.is-login .landing-copy{
    margin-top:16px!important;
    font-size:.98rem!important;
    line-height:1.5!important;
  }
  body.is-login .landing-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    margin-top:20px!important;
  }
  body.is-login .landing-actions .mct-btn{
    width:100%!important;
  }
  body.is-login .landing-insights{
    grid-template-columns:1fr!important;
  }
  body.is-login .landing-insights div{
    padding:15px!important;
    border-radius:18px!important;
  }
}
@media (max-height:620px) and (min-width:700px){
  body.is-login .login-card{
    padding:20px!important;
  }
  body.is-login .login-card .mct-icon.login-yinyang{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    margin-bottom:10px!important;
  }
  body.is-login .login-card h1{
    margin-bottom:14px!important;
    font-size:2rem!important;
  }
  body.is-login .login-card input,
  body.is-login .login-card .mct-btn{
    min-height:46px!important;
  }
}
