.group {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 120px;
  height: 100px;
  padding: 8px 12px;
  font-size: 12px;
  background: #fff;
  border: 1.5px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  cursor: pointer;

  &:hover:not(.disabled) {
    border-color: #165dff;
  }

  .iconWrap {
    margin-bottom: 8px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .icon {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }

  .iconPlaceholder {
    width: 40px;
    height: 40px;
    background: #f0f0f0;
    border-radius: 4px;
  }

  .label {
    color: #1f2533;
    line-height: 20px;
    text-align: center;
  }
}

.active {
  background-color: #fafcff;
  border: 1.5px solid #165dff;
  position: relative;

  &::before {
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border-right: 16px solid #165dff;
    border-bottom: 16px solid transparent;
    content: '';
  }

  &::after {
    position: absolute;
    top: 1.5px;
    right: 1.5px;
    display: block;
    width: 6px;
    height: 4px;
    border-bottom: 1.5px solid #fff;
    border-left: 1.5px solid #fff;
    transform: rotate(-45deg);
    content: '';
  }
}

.disabled {
  cursor: not-allowed;
  background: rgba(0, 0, 0, 0.04);

  .label {
    color: #707680;
  }

  &:hover {
    border-color: rgba(0, 0, 0, 0.06);
  }
}
