/* Module passkey_login */

[data-passkey-login][hidden],
[data-passkey-manage][hidden],
[data-passkey-login] [hidden],
[data-passkey-manage] [hidden] {
  display: none !important;
}

/* Bouton de connexion -------------------------------------------------------- */

.passkey-login {
  margin-top: 1.5rem;
}

.passkey-login__separator {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1rem;
  font-size: 0.8125rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.passkey-login__separator::before,
.passkey-login__separator::after {
  content: '';
  flex: 1;
  border-top: 1px solid currentColor;
  opacity: 0.35;
}

.passkey-login__button,
.passkey-login-panel__add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}

.passkey-login__button.btn-block {
  display: flex;
}

/* Bouton « fantôme » de l'espace client : couleur héritée du .text-muted du thème dans tous les états,
   pour rester lisible quel que soit le fond des panneaux du thème. */
.passkey-login__button--ghost,
.passkey-login__button--ghost:hover,
.passkey-login__button--ghost:focus,
.passkey-login__button--ghost:active {
  color: inherit !important;
  background-color: transparent !important;
  border: 1px solid currentColor !important;
  box-shadow: none !important;
}

.passkey-login__button--ghost:hover,
.passkey-login__button--ghost:focus {
  background-color: rgba(127, 127, 127, 0.12) !important;
}

.passkey-login-icon {
  flex-shrink: 0;
}

.passkey-login__message {
  margin: 0.75rem 0 0;
}

/* Liste des passkeys (profils) ----------------------------------------------- */

.passkey-login-list {
  list-style: none;
  margin: 0 0 1rem;
  padding: 0;
}

.passkey-login-list__item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem 1rem;
  padding: 0.75rem 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.passkey-login-list__item:last-child {
  border-bottom: 0;
}

.passkey-login-list__main {
  flex: 1 1 12rem;
  min-width: 0;
}

.passkey-login-list__name {
  font-weight: 600;
  overflow-wrap: anywhere;
}

.passkey-login-list__badge {
  margin-left: 0.375rem;
  vertical-align: middle;
}

.passkey-login-list__meta {
  margin-top: 0.125rem;
  font-size: 0.8125rem;
}

.passkey-login-list__actions {
  display: flex;
  flex-shrink: 0;
  gap: 0.375rem;
}

.passkey-login-add {
  margin-top: 0.5rem;
}

.passkey-login-add__actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
}

.passkey-login-panel__message {
  margin: 1rem 0 0;
}
