/* Annuaire des équipes : une carte par équipe, logo rond, nom, effectif, rang de la saison */

.dir-head {
  display: grid;
  gap: 1rem;
  margin-bottom: 1.6rem;
}

.dir-search {
  max-width: 24rem;
}

.dir-search-box {
  position: relative;
}

.dir-search-box .icon {
  position: absolute;
  left: 0.9rem;
  top: 50%;
  width: 1.1rem;
  height: 1.1rem;
  transform: translateY(-50%);
  color: var(--dim);
  pointer-events: none;
}

.dir-search-box input {
  padding-left: 2.6rem;
}

.dir-count {
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 0.78rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--dim);
}

.dir-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 20rem), 1fr));
}

.dir-card {
  display: flex;
  align-items: flex-start;
  gap: 1.1rem;
  height: 100%;
  padding: 1.2rem 1.3rem;
}

.dir-card:hover,
.dir-card:focus-visible {
  border-image-source: url("../../img/ui/frame-card-on.svg");
}

.dir-logo {
  flex: none;
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 50%;
  object-fit: cover;
  background: #0c0919;
  box-shadow: 0 0 0 1px rgba(255, 43, 214, 0.6), 0 0 18px rgba(255, 43, 214, 0.3);
}

.dir-ini {
  display: grid;
  place-items: center;
  font-family: var(--font-display);
  font-size: 1.7rem;
  color: #fff;
  background: linear-gradient(135deg, rgba(255, 43, 214, 0.55), rgba(139, 43, 255, 0.65));
}

.dir-body {
  display: grid;
  gap: 0.45rem;
  justify-items: start;
  min-width: 0;
}

.dir-name {
  font-family: var(--font-display);
  font-size: 1.15rem;
  line-height: 1.15;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.dir-card:hover .dir-name,
.dir-card:focus-visible .dir-name {
  color: var(--mag-hi);
}

.dir-meta {
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--dim);
}

.dir-bio {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: 0.9rem;
  line-height: 1.5;
  color: #d5d0e6;
  overflow-wrap: anywhere;
}

.dir-empty .empty:not(:has(a))::before {
  content: "Aucune équipe inscrite pour le moment.";
}
