.x_mobile_list {
  width: 100%;
}

.x_mobile_list .option {
  width: 100%;
  border-bottom: 1px solid #eee;
  padding-top: 1em;
  padding-bottom: 1em;
  cursor: pointer;
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
}

.x_mobile_list .option[data-index="0"] {
  border-top: 1px solid #eee;
}

.x_mobile_list .option.disabled {
}

.x_mobile_list .option.disabled .label {
  color: #aaa;
  text-align: center;
}

.x_mobile_list .option .label {
  border:0;
  padding-left:0.5em;
  text-align: left;
  line-height: 1.2;
  vertical-align:top;
  display: flex;
  flex-direction: column;
  width: calc(100% - 3em);
}

.x_mobile_list .option .visual {
  width: 3em;
  height: 3em;
  display:inline-block;
  background:#ddd;
  text-align:center;
  margin-right:0.5em;
  border-radius: 50%;
  vertical-align:top;
}

.x_mobile_list .option .visual .icon {
  height: 3em;
  display:flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  box-sizing:border-box
}

.x_mobile_list .option .visual .icon i {
  display:block;
  color:#222;
  font-size: 1.5em;
}

.x_mobile_list .option .primary-label {}
.x_mobile_list .option .secondary-label {
  color: #888;
  width: 250px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.x_mobile_list .search_input {
  max-width: none;
  width: 100%;
  margin-top: 1em;;
  margin-bottom:1em;
  padding:1em;
}

.x_mobile_list .option[data-selection="selected"] .label .primary-label {
  font-weight: bold;
}

.x_mobile_list .option[data-selection="selected"] .visual  {
  background-color: var(--primary);
}

.x_mobile_list .option[data-selection="selected"] .visual .icon i {
  color: white;
}

.x_mobile_list .option[data-selection="selected"] .visual .icon i::before {
  content: "\f00c";
}