/* N1.7.4.6.1 — Corrección real: marco integrado y flujo de vórtice en movimiento. */
/* El marco es un panel vertical de relación 2:3, no puede comprimirse en un recuadro casi cuadrado. */
.login-shell.ancestral-mode .login-card {
  box-sizing:border-box;
  width:min(100%,426px);
  min-height:620px;
  margin-left:auto;
  padding:65px 60px 48px;
  border:0;
  border-image:none;
  border-radius:0;
  background-color:transparent;
  background-image:url('/assets/runtime/portal-frame-caelytte.webp');
  background-position:center;
  background-repeat:no-repeat;
  background-size:100% 100%;
  box-shadow:none;
}
.ancestral-mode .ancestral-brand img {width:min(100%,265px)}
.ancestral-mode .login-card > .ancestral-subtitle{margin-top:-4px}
.ancestral-mode .login-card > .ancestral-welcome{margin-bottom:13px}
.ancestral-mode .login-card > label {margin:7px 0 5px}
.ancestral-mode .account-panel{margin-top:9px}
.ancestral-mode #account-status {min-height:16px;margin-top:10px}
/* El canvas añade corrientes fluidas. Una imagen gira como fallback cuando no hay WebGL. */
.ancestral-vortex-elliptic {isolation:isolate}
.ancestral-vortex-canvas {
  position:absolute;inset:0;width:100%;height:100%;display:block;
  opacity:0;pointer-events:none;z-index:2;
}
.ancestral-vortex-canvas.is-active {opacity:1}
.ancestral-vortex-elliptic:has(.ancestral-vortex-canvas.is-active) img {opacity:0}
.ancestral-vortex-elliptic img {animation-duration:5.5s}
.ancestral-vortex::after{animation-duration:2.15s}
.ancestral-portal-light{animation-duration:2.6s}
.ancestral-particles i{animation-duration:3.7s}
@media(max-height:780px) and (min-width:801px){
  .login-shell.ancestral-mode .login-card{padding:60px 58px 42px;min-height:600px;max-width:420px}
  .ancestral-mode .ancestral-brand img{width:min(100%,250px)}
}
@media(max-height:620px) and (min-width:801px){
  .login-shell.ancestral-mode{justify-content:safe flex-start;align-items:flex-end;overflow-y:auto}
  .login-shell.ancestral-mode .login-card{margin-block:10px;min-height:600px}
}
@media(max-width:800px){
  .login-shell.ancestral-mode{justify-content:safe flex-start;overflow-y:auto}
  .login-shell.ancestral-mode .login-card{
    width:min(100%,420px);max-width:420px;min-height:600px;
    padding:62px clamp(42px,11vw,54px) 42px;
    margin:auto;
  }
}
@media(max-width:440px){
  .login-shell.ancestral-mode .login-card{min-height:570px;padding:59px 47px 39px}
  .ancestral-mode .ancestral-brand img{width:min(100%,230px)}
  .ancestral-mode .login-card .account-panel{margin-top:5px}
}
@media(prefers-reduced-motion:reduce){
  .ancestral-vortex-canvas{display:none!important}
  .ancestral-vortex-elliptic img{opacity:1!important;animation:none!important}
}

/* N3.7.4.5: stop hidden fallback rotation once the original shader canvas is active. */
.login-shell.ancestral-mode .ancestral-vortex-elliptic:has(.ancestral-vortex-canvas.is-active)>img {animation:none!important}
