#wrapper {
  min-height: calc(100vh - 20px);
  margin-bottom: 10px;
  margin-top: 10px;
}

#main {
  border-left: 1px solid silver;
  min-height: calc(100vh - 90px);
}

.img-row {
  margin-bottom: 20px;
}

.clickable {
  cursor: pointer;
}

.img-preview {
  background-color: #f7f7f7;
  overflow: hidden;
  width: 100%;
  text-align: center;
  height: 200px;
}

.hidden {
  display: none;
}

.thumbnail {
  max-width: 210px;
  max-height: 210px;
  margin-bottom: 10px;
}

.square {
  width: 100%;
  padding-bottom: 100%;
  position: relative;
}
.square > img, .square > .icon-container {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  max-width: 100%;
}

.icon-container {
  width: 100%;
  height: 100%;
  text-align: center;
  margin: 0 auto;
}
.icon-container:before {
  content: '';
  display: inline-block;
  vertical-align: middle ;
  height: 100%;
}
.icon-container > i {
  display: inline-block;
  vertical-align: middle;
}
