
.cross-callout {
  display: grid;
  /* minmax(0, 1fr) : un libellé long ne fait pas déborder la page. */
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--gap-sm);
  /* Largeur de .auth-card, pour aligner les bords. */
  width: min(520px, 100%);
  padding: 12px 16px;
  min-height: 56px;
  margin-top: var(--gap-xs);
  border: 1px solid var(--glass-brd);
  border-radius: var(--r);
  background: var(--glass);
  text-decoration: none;
  transition: border-color var(--dur) var(--ease), transform var(--dur) var(--ease);
}

.cross-callout:hover {
  border-color: var(--emerald);
  transform: translateY(-1px);
}

.cross-callout:focus-visible {
  outline: 2px solid var(--emerald);
  outline-offset: 3px;
}

.cross-callout__icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: var(--r);
  background: var(--yellow-dim);
  color: var(--emerald);
}

.cross-callout__icon svg {
  width: 18px;
  height: 18px;
}

.cross-callout__body {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.cross-callout__title {
  font-size: .88rem;
  font-weight: 600;
  color: var(--ink);
}

.cross-callout__hint {
  font-size: .78rem;
  color: var(--muted);
}

.cross-callout__chevron {
  display: grid;
  place-items: center;
  color: var(--muted);
  transition: transform var(--dur) var(--ease), color var(--dur) var(--ease);
}

.cross-callout__chevron svg {
  width: 18px;
  height: 18px;
}

.cross-callout:hover .cross-callout__chevron {
  color: var(--emerald);
  transform: translateX(2px);
}

/* Écran d'authentification sans défilement : la précision cède quand la hauteur manque. */
@media (max-height: 700px) {
  .cross-callout {
    min-height: 48px;
    padding: 10px 14px;
  }

  .cross-callout__hint {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cross-callout,
  .cross-callout__chevron {
    transition: none;
  }

  .cross-callout:hover,
  .cross-callout:hover .cross-callout__chevron {
    transform: none;
  }
}
