/* Authentication pages */
.auth-background,.auth-page{
  min-height:100vh;
  min-height:100dvh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:2rem;
  background:radial-gradient(circle at 78% 18%,rgba(33,190,211,.18),transparent 30%),var(--cp-gradient-primary);
}
.auth-container,.login-container{
  width:min(100%,460px);
  min-width:0;
  margin:0 auto;
}
.auth-card,.login-form{
  width:100%;
  min-width:0;
  padding:2rem;
  border:1px solid rgba(190,204,222,.7);
  border-radius:var(--cp-radius-lg);
  background:rgba(255,255,255,.98);
  box-shadow:var(--cp-shadow-lg);
}
.auth-card .title,
.auth-card h1,
.auth-card h2{
  max-width:100%;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.auth-card .field,
.auth-card .control,
.auth-card form{
  width:100%;
  min-width:0;
}
.auth-card .input,
.auth-card .textarea,
.auth-card .select,
.auth-card .select select{
  width:100%;
  max-width:100%;
  min-width:0;
}
.auth-card .button,
.login-form .button{
  width:100%;
  max-width:100%;
  white-space:normal;
  height:auto;
  min-height:2.5em;
  text-align:center;
}
.auth-logo{text-align:center;margin-bottom:1.25rem}.auth-logo img{width:min(280px,80%);height:auto;margin:auto}.auth-brand{margin-bottom:.25rem;color:var(--cp-text-heading);font-size:1.8rem;font-weight:700;text-align:center}.auth-tagline,.auth-description{color:var(--cp-text-secondary);text-align:center}.auth-header{margin-bottom:1.5rem;text-align:center}.auth-title{color:var(--cp-text-heading);font-size:1.55rem;font-weight:700}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-input-group{position:relative}.password-toggle{position:absolute;top:50%;right:.8rem;transform:translateY(-50%);color:var(--cp-text-muted);cursor:pointer}.auth-options{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:var(--cp-font-size-sm)}.auth-checkbox{display:flex;align-items:center;gap:.45rem}
@media(max-width:520px){
  .auth-background,.auth-page{
    align-items:flex-start;
    padding:clamp(1rem,4vw,1.5rem);
  }
  .auth-container,.login-container{
    width:100%;
  }
  .auth-card,.login-form{
    padding:1.35rem;
  }
}
@media(max-width:360px){
  .auth-background,.auth-page{padding:.75rem}
  .auth-card,.login-form{padding:1rem}
  .auth-card .title{font-size:1.75rem}
}
