[hidden]{display:none!important}
body{background:#fff;color:#171717}
.admin-login-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 6vw;border-bottom:1px solid #e5e5e5}
.admin-login-header img{display:block;width:160px;height:auto}
.admin-login-header a{color:#171717;font-size:14px;text-decoration:none}
.admin-login-card{max-width:480px;padding:44px 28px;margin:40px auto;font-size:16px;line-height:1.6}
.admin-eyebrow{font-size:12px;letter-spacing:.15em}
.admin-login-card h1{font:400 42px/1.15 Georgia,serif;margin:16px 0}
.admin-login-card label{display:block;margin-top:20px;font-weight:600;font-size:14px}
.admin-login-card input{display:block;width:100%;min-height:48px;border:1px solid #aaa;border-radius:6px;background:#fff;font:inherit;font-size:16px;color:#171717;padding:12px;margin-top:6px}
.admin-password-wrap{display:flex;align-items:center;gap:8px}.admin-password-wrap input{min-width:0;flex:1}
.admin-password-wrap button{padding:12px;min-height:44px;font-size:14px;background:white;border:1px solid #ddd}
.admin-submit{width:100%;min-height:50px;border-radius:6px;background:#111;color:#fff;border:1px solid #111;padding:12px;font-size:16px;font-weight:600;margin-top:24px}
.admin-submit:disabled{opacity:.55}
.admin-login-options{display:flex;gap:12px;flex-wrap:wrap}
.admin-login-options button{background:white;color:#222;border:0;text-decoration:underline;text-underline-offset:4px;padding:10px 0;font-size:14px}
.admin-access-note,#admin-password-hint{font-size:14px;color:#666}
#admin-message{min-height:24px;font-size:15px}#admin-message.error{color:#a52121}
.admin-login-card :focus-visible,.admin-login-header a:focus-visible{outline:2px solid #111;outline-offset:4px}
.admin-session-bar{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:14px 24px;background:#f2f2f2;font-size:14px;line-height:1.5}
.admin-session-bar p{margin:0}.admin-session-bar button{background:#111;color:white;padding:12px 18px;white-space:nowrap;min-height:44px}
@media(max-width:520px){.admin-login-header{padding:20px;flex-wrap:wrap}.admin-login-card{margin:12px auto;padding:30px 20px}.admin-login-card h1{font-size:36px}.admin-session-bar{align-items:flex-start;flex-direction:column}}
