/* The form behind the bot's link. One decision per screen: which name is you. */

.dlink {
  display: flex;
  flex-direction: column;
  gap: var(--space-lg);
  max-width: 34rem;
}

.dlink__header {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
}

.dlink__title {
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  font-weight: 600;
  margin: 0;
}

/* The league name is a name, so it stays cased as written — mono and muted is
   enough to read it as context rather than content. */
.dlink__meta {
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  letter-spacing: 0.04em;
  color: var(--text-secondary);
  margin: 0;
}

.dlink__error {
  border: 1px solid var(--coral-500);
  border-radius: var(--radius-md);
  background: var(--coral-50);
  color: var(--coral-700);
  padding: var(--space-sm) var(--space-md);
  margin: 0;
}

.dlink__form {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  margin: 0;
}

.dlink__subtitle {
  font-family: var(--font-display);
  font-size: var(--text-lg);
  font-weight: 600;
  margin: 0;
}

.dlink__list {
  display: flex;
  flex-direction: column;
  gap: 1px;
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 22rem;
  overflow-y: auto;
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  background: var(--surface-sunk);
}

.dlink__option {
  background: var(--surface-card);
}

.dlink__label {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-sm) var(--space-md);
  cursor: pointer;
  transition: background var(--dur-fast) var(--ease-out);
}

.dlink__label:hover {
  background: var(--surface-sunk);
}

.dlink__radio {
  margin: 0;
  flex: none;
}

.dlink__name {
  font-weight: 500;
}

.dlink__empty,
.dlink__none {
  color: var(--text-secondary);
  margin: 0;
}

.dlink__new {
  border-top: 1px solid var(--border-default);
  padding-top: var(--space-md);
}

.dlink__new-summary {
  cursor: pointer;
  font-weight: 500;
  margin-bottom: var(--space-md);
}
