/* Accounts: the signed-in user in the top bar, the admin page, the password page. */
a.brand { color: inherit; text-decoration: none; }
.kbd-hint {
  margin: 10px 0 0; padding: 8px 12px; border-radius: var(--radius-sm); font-size: .86rem;
  background: var(--warn-bg); color: var(--warn); border: 1px solid rgba(255, 201, 77, .35);
}
.login-foot a { color: var(--muted); }
.login-foot a:hover { color: var(--text); }

.me {
  display: inline-flex; flex-direction: column; align-items: flex-end; line-height: 1.15;
  font-size: .84rem; color: var(--muted); max-width: 180px;
}
.me strong { color: var(--text); font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.me span { font-size: .72rem; color: var(--faint); }
@media (max-width: 760px) { .me { display: none; } }

.hero-compact { padding: 38px 0 22px; }
.admin-page h2 { font-size: 1.08rem; margin: 0 0 14px; }
.admin-panel { padding: 22px 24px; margin-top: 18px; }
.add-form { display: grid; grid-template-columns: 1.3fr 1fr .8fr auto; gap: 12px; align-items: end; }
.add-form label { display: grid; gap: 6px; font-size: .84rem; font-weight: 600; color: var(--muted); }
.add-form input, .add-form select {
  width: 100%; padding: 10px 12px; border-radius: var(--radius-sm); border: 1px solid var(--line-strong);
  background: rgba(4, 16, 34, .55); color: var(--text); font: inherit; font-weight: 400;
}
.add-form input:focus, .add-form select:focus { border-color: var(--cyan); outline: none; box-shadow: 0 0 0 4px rgba(92, 200, 255, .16); }
.add-form .btn { height: 42px; }
@media (max-width: 760px) { .add-form { grid-template-columns: 1fr; } }

.admin-alert {
  margin: 14px 0 0; padding: 10px 14px; border-radius: var(--radius-sm);
  background: var(--bad-bg); color: var(--bad); border: 1px solid rgba(255, 123, 123, .35); font-size: .92rem;
}
.secret {
  margin-top: 16px; padding: 16px 18px; border-radius: var(--radius-sm);
  background: var(--ok-bg); border: 1px solid rgba(61, 220, 151, .35);
}
.secret p:first-child { font-weight: 600; }
.secret-row { display: flex; gap: 10px; align-items: center; margin: 10px 0; flex-wrap: wrap; }
.secret-row code {
  font-size: 1.25rem; letter-spacing: .06em; padding: 6px 12px; border-radius: 8px;
  background: rgba(4, 16, 34, .6); color: var(--text); user-select: all;
}

.table-wrap { overflow-x: auto; }
.users { width: 100%; border-collapse: collapse; font-size: .92rem; }
.users th { text-align: start; font-size: .76rem; font-weight: 600; color: var(--faint); text-transform: uppercase; letter-spacing: .06em; padding: 0 10px 10px; }
.users td { padding: 11px 10px; border-top: 1px solid var(--line); vertical-align: middle; }
.users tr.inactive td:not(.u-actions) { opacity: .5; }
.u-name { font-weight: 600; }
.u-user { color: var(--muted); font-family: ui-monospace, Consolas, monospace; font-size: .86rem; }
.u-status.ok { color: var(--ok); }
.u-status.pending { color: var(--warn); }
.u-status.off { color: var(--faint); }
.u-when { color: var(--muted); white-space: nowrap; }
.u-actions { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.u-actions .btn { padding: 5px 11px; font-size: .8rem; }
.btn.danger { color: var(--bad); border-color: rgba(255, 123, 123, .35); }
.btn.danger:hover { background: var(--bad-bg); color: var(--bad); }
.builtin-note { margin-top: 14px; font-size: .84rem; }
