/* MiCerebro — cambio obligatorio de contraseña temporal. */
.account-onboarding {
  position: fixed;
  inset: 0;
  z-index: 5000;
  display: grid;
  place-items: center;
  padding: max(18px, env(safe-area-inset-top)) 16px max(18px, env(safe-area-inset-bottom));
  color: #edf7ff;
  background:
    radial-gradient(720px 480px at 50% 28%, rgba(21, 143, 190, .22), transparent 72%),
    radial-gradient(540px 380px at 78% 75%, rgba(112, 68, 220, .14), transparent 74%),
    rgba(1, 5, 13, .96);
  backdrop-filter: blur(20px) saturate(120%);
}
.account-onboarding[hidden] { display: none !important; }
.account-onboarding-card {
  width: min(470px, 100%);
  padding: 24px;
  border: 1px solid rgba(72, 189, 230, .27);
  border-radius: 25px;
  background:
    radial-gradient(380px 210px at 100% 0, rgba(100, 73, 222, .16), transparent 70%),
    linear-gradient(145deg, rgba(8, 24, 44, .98), rgba(3, 12, 27, .98));
  box-shadow: 0 35px 110px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.035);
}
.account-onboarding-mark {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin-bottom: 16px;
  border: 1px solid rgba(64, 195, 234, .34);
  border-radius: 19px;
  background: url('/neural-logo.svg') center/52px no-repeat, rgba(13, 92, 128, .19);
  box-shadow: 0 0 38px rgba(35, 177, 229, .16);
}
.account-onboarding small {
  display: block;
  margin-bottom: 6px;
  color: #55ccef;
  font: 600 10px/1 Sora, sans-serif;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.account-onboarding h1 { margin: 0; color: #f5fbff; font-size: 25px; }
.account-onboarding p { margin: 9px 0 18px; color: #92a4bf; font-size: 13px; line-height: 1.55; }
.account-onboarding label { margin: 11px 0 5px; color: #b3c2d7; font-size: 11px; }
.account-onboarding input {
  width: 100%;
  min-height: 50px;
  border: 1px solid rgba(98, 155, 223, .22);
  border-radius: 14px;
  padding: 0 13px;
  color: #eff8ff;
  background: rgba(2, 10, 23, .80);
  font-size: 16px;
}
.account-onboarding input:focus { outline: 3px solid rgba(54, 210, 242, .23); border-color: rgba(54, 210, 242, .48); }
.account-onboarding-requirements { margin: 10px 0 16px; color: #7487a3; font-size: 10.5px; line-height: 1.5; }
.account-onboarding button {
  width: 100%;
  min-height: 50px;
  border: 1px solid rgba(81, 207, 249, .40);
  border-radius: 15px;
  color: #fff;
  background: linear-gradient(135deg, #0b9cdf, #315ce3 58%, #714cdb);
  box-shadow: 0 13px 32px rgba(26, 104, 229, .23);
  font: 600 13px Sora, sans-serif;
}
.account-onboarding button:disabled { opacity: .55; cursor: wait; }
.account-onboarding-message { min-height: 20px; margin: 11px 2px 0; color: #ff9eaa; font-size: 12px; }
.account-onboarding-message.ok { color: #83e2bd; }
body.account-onboarding-open { overflow: hidden !important; }

@media (max-width: 560px) {
  .account-onboarding { align-items: stretch; padding: 0; }
  .account-onboarding-card {
    width: 100%;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border: 0;
    border-radius: 0;
    padding: calc(22px + env(safe-area-inset-top)) 18px calc(22px + env(safe-area-inset-bottom));
  }
}
