
/* Login page — scoped mobile improvements (safe, additive) */
#auth-section { min-height: 100dvh; height: auto; padding: clamp(16px, 5vw, 32px) 16px; }
@supports (height: 100svh) { #auth-section { min-height: 100svh; } }

#auth-section .auth-title { font-size: clamp(1.6rem, 6vw, 2.5rem); margin-bottom: clamp(12px, 3vw, 24px); }
#auth-section .auth-logo img { max-width: clamp(160px, 55vw, 260px); width: 100%; height: auto; }

#auth-section .auth-card { width: min(90%, 480px); padding: clamp(16px, 4vw, 28px); border-radius: 16px; }
#auth-section .auth-card input[type="email"],
#auth-section .auth-card input[type="password"],
#auth-section .auth-card button { width: 100%; padding: clamp(12px, 3.5vw, 15px); border-radius: 12px; }

#auth-section .auth-card button { font-weight: 700; }
#auth-section .auth-card label { width: 100%; gap: .6rem; }

@media (max-width: 380px) { #auth-section .auth-card { padding: 14px; border-radius: 14px; } }
@media (orientation: landscape) and (max-width: 900px) { #auth-section { padding-top: 8vh; } }

#auth-section .auth-card input:focus, #auth-section .auth-card button:focus {
  outline: 3px solid #3ba0ff; outline-offset: 2px;
}
