.login-card {
  background: rgba(255, 255, 255, .7);
  transform: translateY(clamp(-140px, -12vh, -70px));
}

.login-card h1 {
  display: flex;
  align-items: center;
  gap: 13px;
}

.login-card h1 img {
  width: 58px;
  height: 36px;
  object-fit: contain;
}

.sidebar .brand {
  display: flex;
  align-items: center;
  gap: 10px;
}

.sidebar .brand img {
  width: 52px;
  height: 32px;
  object-fit: contain;
}

@media (max-height: 680px) {
  .login-card { transform: translateY(-28px); }
}

.master-secure-login { transform:none; margin:24px auto; max-width:460px; }
.login-shell:has(.master-secure-login) { min-height:100dvh; height:auto; overflow:auto; padding:24px 12px; }
.master-secure-login h2 { margin:8px 0; }
.master-secure-login p { font-size:14px; line-height:1.65; color:#52647c; }
.master-secure-login #login-error { color:#b91c1c; font-size:14px; }
.master-totp-qr { display:block; width:220px; max-width:100%; margin:12px auto; }
.master-totp-secret { display:block; overflow-wrap:anywhere; padding:10px; background:#eef4ff; font-size:14px; }
.master-recovery-codes { white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; line-height:1.8; background:#eef4ff; padding:12px; }
.master-recovery-confirm { display:flex; align-items:center; gap:8px; margin:12px 0; font-size:14px; }
.master-recovery-confirm input { width:auto; }
.master-secure-login button[type="button"] { width:100%; padding:10px 14px; margin-top:8px; border:1px solid #bdcde5; border-radius:8px; background:#f3f7ff; color:#233c64; cursor:pointer; }
