/* Centered auth layout + intro animations */


.page-auth .auth-viewport {
  min-height: calc(100vh - 120px);
  display: grid;
  place-items: center;
  padding: 24px 16px;
}

.page-auth .card {
  width: 100%;
  max-width: 560px;             /* a bit wider */
  border-radius: 14px;
}

/* BIG logo above the form title */
.auth-logo {
  display: block;
  height: 120px;                 /* ← bigger logo; tweak if needed */
  width: auto;
  margin: 6px auto 5px;        /* centered above title */
  filter: drop-shadow(0 1px 1px rgba(0,0,0,.12));
}

/* Uppercase, centered page header */
.auth-title {
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 900;
  font-size: 22px;
  line-height: 1.1;
  text-align: center;           /* centered */
  margin: 20px 0 20px;
}

/* Subtitle/intro text */
.auth-intro {
  color: var(--muted);
  text-align: center;           /* centered */
  margin: 0 0 16px;
}

.auth-tslogan {
    padding: -20px 0px;
    color: var(--muted);
    text-align: center;
    font-size: 1.2rem;
    font-weight: 600;
    margin: 0 0 12px;
}

.auth-slogan{
    color: var(--muted);
    text-align: left;
    font-size: 0.75rem;
    margin: 0 0 8px;
    padding: 0px 35px;
}

/* Animations */
.fx-pop { animation: fxPopIn .5s cubic-bezier(.2,.8,.2,1) both; transform-origin: 50% 42%; }
.fx-fade { animation: fxFadeUp .6s ease-out .08s both; }

@keyframes fxPopIn { 0%{opacity:0;transform:translateY(10px) scale(.98);} 100%{opacity:1;transform:translateY(0) scale(1);} }
@keyframes fxFadeUp { 0%{opacity:0;transform:translateY(8px);} 100%{opacity:1;transform:translateY(0);} }

/* Slightly larger inputs/buttons on auth pages */
.page-auth .input { padding: 12px 14px; font-size: 15px; }
.page-auth .btn { padding: 10px 16px; font-weight: 700; }
