/* Admin sign-in: readable touch controls and a scrollable small-screen layout. */
.admin-login-screen[hidden]{display:none!important}
.admin-login-screen{width:100%;min-height:100vh;min-height:100dvh;padding:32px 24px;align-content:center}
.admin-login-card{min-width:0;max-width:100%;border-radius:16px}
.admin-login-card .admin-form{min-width:0;gap:20px;margin-top:24px}
.admin-login-card label{min-width:0;font-size:14px;gap:8px}
.admin-login-card input{display:block;width:100%;min-width:0;max-width:100%;min-height:50px;padding:12px 14px;font-size:16px;line-height:1.5;border-radius:8px}
.admin-login-card form .button{width:100%;min-height:50px;font-size:16px;border-radius:8px;margin-top:4px}
.admin-login-card input:focus-visible,.admin-login-card button:focus-visible{outline:3px solid #6b9d83;outline-offset:3px}
@media(max-width:600px){
 .admin-login-screen{padding: max(24px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
 .admin-login-card{width:100%;max-width:420px;padding:28px 22px;box-shadow:0 10px 35px #25352e0c}
 .admin-login-card .logo{font-size:30px}
 .admin-login-card h1{font-size:25px;margin-top:24px;line-height:1.4}
 .admin-login-card>p{font-size:14px;line-height:1.7;overflow-wrap:anywhere}
 .admin-body .admin-message{inset-inline:16px;top:max(12px,env(safe-area-inset-top));max-width:none;padding:12px 16px;font-size:14px;overflow-wrap:anywhere}
}
@media(max-height:600px){.admin-login-screen{align-content:start;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:24px}.admin-login-card{margin-inline:auto}}
