/* PM24 V386 — final auth alignment polish.
   Presentation only: no OTP, session, routing or validation changes. */

/* Public Staff/Owner secure login: remove inherited two-column grid so the
   single login card is truly centered on desktop, and keep it slightly above
   the vertical midpoint for a balanced production layout. */
body.public-login .pgm-login-simple-grid{
  grid-template-columns:minmax(0,1fr)!important;
  justify-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.public-login .pgm-login-simple-wrap{
  grid-column:1!important;
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
  justify-content:center!important;
}

@media (min-width:901px){
  body.public-login .pgm-login-pro{
    grid-template-rows:64px minmax(0,1fr) 42px!important;
  }
  body.public-login .pgm-login-pro-nav-logo-only{
    height:64px!important;
    min-height:64px!important;
    padding:6px 20px!important;
  }
  body.public-login .pgm-login-pro-brand{
    width:88px!important;
    max-width:88px!important;
    height:48px!important;
  }
  body.public-login .pgm-login-pro-brand .pm24-login-logo{
    width:84px!important;
    max-width:84px!important;
    height:46px!important;
    max-height:46px!important;
  }
  body.public-login .pgm-login-simple-grid{
    min-height:calc(100dvh - 106px)!important;
    padding:14px 24px 22px!important;
    align-items:center!important;
  }
  body.public-login .pgm-login-simple-wrap{
    transform:translateY(-18px)!important;
  }
  body.public-login .pgm-login-simple-wrap .pgm-login-pro-card{
    margin-inline:auto!important;
  }
}

@media (max-width:900px){
  body.public-login .pgm-login-simple-wrap{
    transform:none!important;
  }
}

/* Admin Forgot Password: keep the premium split panel but place it closer to
   the header/alert instead of vertically centering it too low on the page. */
body.admin-auth-page .admin-auth-main:has(.admin-recovery-stage){
  min-height:calc(100vh - 88px)!important;
  padding-top:12px!important;
  padding-bottom:24px!important;
  align-items:start!important;
  align-content:start!important;
  row-gap:10px!important;
}
body.admin-auth-page .admin-auth-main:has(.admin-recovery-stage)>.toast{
  margin-top:0!important;
  margin-bottom:8px!important;
}
body.admin-auth-page .admin-recovery-stage{
  width:100%!important;
  margin-top:0!important;
  align-self:start!important;
}

@media (max-width:760px){
  body.admin-auth-page .admin-auth-main:has(.admin-recovery-stage){
    min-height:auto!important;
    padding-top:8px!important;
    padding-bottom:18px!important;
    row-gap:7px!important;
  }
  body.admin-auth-page .admin-auth-main:has(.admin-recovery-stage)>.toast{
    margin-bottom:6px!important;
  }
  body.admin-auth-page .admin-recovery-stage{
    border-radius:20px!important;
  }
}
