/* AdminOrdering-only passkey login presentation; no shared application styles are changed. */
body.login_body #admin-passkey-login { width:min(100%,520px); margin: 48px auto 24px; padding: 18px 28px 22px; box-sizing:border-box; border-radius:8px; border:1px solid #d8d8d8; background:#fff; box-shadow:0 2px 10px rgba(0,0,0,.12); text-align:center; }
body.login_body .admin-passkey-divider { display:flex; align-items:center; gap:14px; margin: 0 0 22px; color:#545454; font-weight:600; }
body.login_body .admin-passkey-divider::before, body.login_body .admin-passkey-divider::after {content:""; height:1px; background:#ccc; flex:1;}
body.login_body .admin-passkey-divider span {background:#fff; padding:0 10px;}
body.login_body #admin-passkey-login-button {display:flex; justify-content:center; align-items:center; gap:12px; width:100%; min-height:54px; padding:10px 16px; border:2px solid #e46b00; border-radius:7px; background:#fff6ec; color:#171717; font:inherit; font-size:19px; font-weight:700; cursor:pointer; transition:background .15s ease,box-shadow .15s ease;}
body.login_body #admin-passkey-login-button:hover {background:#ffebd7;}
body.login_body #admin-passkey-login-button:focus-visible {outline:3px solid #155aa4; outline-offset:3px;}
body.login_body #admin-passkey-login-button:disabled {cursor:wait; opacity:.7;}
body.login_body .admin-passkey-help {margin:12px 0 0; color:#555; font-size:14px; line-height:1.5;}
body.login_body #admin-passkey-login-status {margin:10px 0 0; min-height:0; color:#8b0000; font-size:14px; line-height:1.45;}
body.login_body #admin-passkey-login-status:empty {display:none;}
@media(max-width:550px) {body.login_body #admin-passkey-login {padding:16px;} body.login_body #admin-passkey-login-button {font-size:17px;}}

/* Override admin shell height and clipping rules on the standalone login page. */
html:has(body.login_body) { height: auto; min-height: 100%; overflow-x: hidden; overflow-y: auto; }
body.login_body { height: auto; min-height: 100vh; min-height: 100dvh; overflow-x: hidden; overflow-y: auto; }
body.login_body .login-body-container { height: auto; min-height: 100vh; min-height: 100dvh; overflow: visible; }
body.login_body .login-main { flex: 1 0 auto; justify-content: center; min-height: 0; padding-bottom: max(48px, env(safe-area-inset-bottom)); }
body.login_body #admin-passkey-login { flex-shrink: 0; }
@media (max-height: 760px) {
  body.login_body .login-main { justify-content: flex-start; }
}

/* Prominent modal for automatically started passkey authentication. */
body.login_body.admin-passkey-prompt-open {overflow:hidden;}
body.login_body .admin-passkey-progress[hidden] {display:none !important;}
body.login_body .admin-passkey-progress {position:fixed; inset:0; z-index:2147483000; display:flex; align-items:center; justify-content:center; padding:20px; box-sizing:border-box; background:rgba(12,24,37,.76);}
body.login_body .admin-passkey-progress-panel {width:min(100%,440px); padding:30px 28px; border-radius:14px; box-sizing:border-box; background:#fff; color:#17212c; box-shadow:0 16px 55px rgba(0,0,0,.4); text-align:center;}
body.login_body .admin-passkey-progress-icon {font-size:36px; line-height:1.4;}
body.login_body #admin-passkey-progress-title {font-size:23px; font-weight:700; line-height:1.3; margin:8px 0 16px; color:#17212c;}
body.login_body #admin-passkey-progress-description {font-size:16px; line-height:1.5; margin:0 0 20px; color:#374151;}
body.login_body .admin-passkey-progress-spinner {width:34px; height:34px; border:4px solid #e5e7eb; border-top-color:#e46b00; border-radius:50%; animation:admin-passkey-spin .85s linear infinite; margin:0 auto 23px;}
@keyframes admin-passkey-spin {to {transform:rotate(360deg);}}
body.login_body #admin-passkey-progress-cancel {min-height:46px; width:100%; border:1px solid #b6bec8; border-radius:7px; background:#fff; color:#17212c; font:inherit; font-size:17px; font-weight:600; cursor:pointer;}
body.login_body #admin-passkey-progress-cancel:hover {background:#f1f4f7;}
body.login_body #admin-passkey-progress-cancel:focus-visible {outline:3px solid #155aa4; outline-offset:2px;}
@media(prefers-reduced-motion:reduce) {body.login_body .admin-passkey-progress-spinner {animation:none;}}
