#loginAuditBell { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 38px; min-width: 38px; padding: 0; }
#loginAuditBell[hidden], .login-audit-count[hidden], .login-audit-toast[hidden] { display: none; }
#loginAuditBell img { width: 20px; height: 20px; }
body.theme-dark #loginAuditBell img { filter: invert(1); }
.login-audit-count { position: absolute; top: -7px; right: -6px; min-width: 19px; height: 19px; padding: 0 3px; border-radius: 10px; background: #b42332; color: #fff; font-size: 11px; line-height: 19px; text-align: center; }
.login-audit-dialog { width: min(1000px, calc(100% - 24px)); max-height: 88dvh; padding: 0; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); color: var(--text); box-shadow: 0 16px 48px #0003; }
.login-audit-dialog::backdrop { background: #0007; }
.login-audit-dialog button, .login-audit-dialog input, .login-audit-dialog select, .login-audit-toast button { background: var(--panel-2); color: var(--text); border: 1px solid var(--line); height: 36px; font: inherit; }
.login-audit-dialog button:disabled { opacity: .5; cursor: default; }
.login-audit-head, .login-audit-foot { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding: 16px 18px; }
.login-audit-head { border-bottom: 1px solid var(--line); }
.login-audit-head h2 { margin: 0; font-size: 19px; }
.login-audit-head p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.login-audit-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; padding: 14px 18px; }
.login-audit-filters label { display: grid; gap: 5px; font-size: 12px; color: var(--muted); }
.login-audit-filters input { min-width: 0; width: 240px; max-width: 100%; }
.login-audit-status { margin: 0; padding: 0 18px 12px; color: var(--muted); font-size: 13px; }
.login-audit-table-wrap { overflow: auto; max-height: 48dvh; border-block: 1px solid var(--line); }
.login-audit-table { border-collapse: collapse; width: 100%; font-size: 13px; color: var(--text); }
.login-audit-table th, .login-audit-table td { padding: 11px 18px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.login-audit-table th { position: sticky; top: 0; background: var(--panel-2); font-size: 12px; color: var(--muted); z-index: 1; }
.login-audit-table td:first-child { min-width: 164px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.login-audit-table td:nth-child(2), .login-audit-table td:nth-child(3) { min-width: 145px; max-width: 280px; overflow-wrap: anywhere; }
.login-audit-outcome { display: inline-block; padding: 3px 7px; border-radius: 4px; white-space: nowrap; font-size: 12px; font-weight: 600; }
.login-audit-success { background: #dcf4e8; color: #12603e; }
.login-audit-failure { background: #ffe3e6; color: #a01e32; }
.login-audit-pages { display: flex; align-items: center; gap: 10px; font-size: 13px; }
.login-audit-foot { color: var(--muted); font-size: 12px; }
.login-audit-toast { position: fixed; right: 20px; bottom: 20px; z-index: 1500; display: flex; gap: 15px; align-items: center; max-width: min(430px, calc(100% - 32px)); padding: 14px 16px; border: 1px solid var(--line); border-left: 4px solid #09876e; border-radius: 6px; background: var(--panel); color: var(--text); box-shadow: 0 8px 26px #0002; }
.login-audit-toast span { overflow-wrap: anywhere; font-size: 14px; }
.login-audit-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 18px 12px; }
.login-audit-actions .login-audit-status { padding: 0; }
.login-audit-actions button, .login-audit-table button { flex-shrink: 0; white-space: nowrap; }
.login-audit-dialog .login-audit-danger { color: #b42332; border-color: #dbb5bb; }
body.theme-dark .login-audit-dialog .login-audit-danger { color: #ffa4ae; border-color: #81515a; }
.login-audit-verify { width: min(440px, calc(100% - 24px)); padding: 22px; box-sizing: border-box; }
.login-audit-verify h2 { margin: 0 0 16px; font-size: 19px; }
.login-audit-verify p { font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
.login-audit-verify label { display: grid; gap: 8px; font-size: 13px; }
.login-audit-verify input { width: 100%; min-width: 0; box-sizing: border-box; }
.login-audit-verify [data-warning] { color: var(--muted); }
.login-audit-verify [data-error] { color: #b42332; min-height: 20px; }
body.theme-dark .login-audit-verify [data-error] { color: #ffa4ae; }
.login-audit-confirm-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
@media (max-width: 520px) {
  .login-audit-head, .login-audit-foot, .login-audit-filters { padding: 12px; }
  .login-audit-filters label:first-child { width: 100%; }
  .login-audit-filters input { width: 100%; }
  .login-audit-pages { width: 100%; justify-content: space-between; gap: 5px; }
  .login-audit-pages button { padding-inline: 8px; font-size: 12px; }
  .login-audit-table th, .login-audit-table td { padding: 10px 12px; }
}
