body {
  margin: 0;
  background: #f8fafb;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.auth-wrapper {
  width: 100vw;
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding-top: 4vh;
  padding-bottom: 2vh;
}
.login-container, .register-container {
  max-width: 320px;
  width: 100%;
  border-radius: 1.5rem;
  margin: 0 auto;
  background: #fff;
}
@media (max-width: 400px) {
  .login-container, .register-container {
    max-width: 98vw;
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }
}
.card {
  box-shadow: 0 4px 24px rgba(0,0,0,0.08), 0 1.5px 4px rgba(0,0,0,0.04);
}
footer {
  position: static !important;
  bottom: auto !important;
  width: 100vw;
  margin-top: 0;
  z-index: auto;
} 