body:not(.admin-authenticated) .page-edit-toggle,
body:not(.admin-authenticated) .edit-mode-hint { display: none !important; }
.admin-login { width: min(380px, calc(100vw - 48px)); box-sizing: border-box; padding: 32px; border: 1px solid #363636; border-radius: 16px; background: #141414; color: #eee; box-shadow: 0 24px 100px #0009; }
.admin-login::backdrop { background: #000b; backdrop-filter: blur(6px); }
.admin-login h2 { margin: 0 0 12px; font-size: 23px; }
.admin-intro { color: #aaa; font-size: 13px; line-height: 1.7; margin-bottom: 24px; }
.admin-login label { display: block; font-size: 13px; margin: 16px 0; }
.admin-login label[hidden] { display: none; }
.admin-login input { box-sizing: border-box; width: 100%; margin-top: 8px; padding: 12px; border: 1px solid #444; border-radius: 6px; background: #090909; color: #fff; font: inherit; }
.admin-login input:focus { outline: 1px solid #ddd; }
.admin-login button { cursor: pointer; font: inherit; }
.admin-close { position: absolute; right: 16px; top: 12px; border: 0; background: none; color: #aaa; font-size: 25px !important; }
.admin-submit { width: 100%; border: 0; border-radius: 6px; padding: 12px; background: #eee; color: #111; }
.admin-submit:disabled { opacity: .5; cursor: wait; }
.admin-error { min-height: 20px; color: #eaa49c; font-size: 13px; line-height: 1.5; }
.admin-logout { position: fixed; bottom: 22px; left: 22px; z-index: 100; padding: 8px 12px; border: 1px solid #444; border-radius: 5px; background: #141414; color: #bbb; cursor: pointer; }
.admin-logout[hidden] { display: none; }
