
body {
  font: 100% sans-serif;
  padding: 0 16px;
}

div.section {
  position: absolute;
  padding-bottom: 16px;
}

div.section div.wrapper {
  position: relative;
  width: 100%;
}

div.section div.wrapper div.content {
  position: absolute;
  top: 0; left: 0; right: 0;
  display: flex;
  flex-direction: column;
}

div.par {
  margin-bottom: 12px;
}

div.block-reference,div.item-reference {
  margin-bottom: 8px;
}

div.item {
  width: 100%;
  height: 100%;
}

img.item_image,video.item_video {
  object-fit: scale-down;
  width: 100%;
  height: 100%;
}

div.item_audio {
  display: flex;
  justify-content: center;
  align-items: center;
}

audio.item_audio {
  width: 75%;
}

object.item_document {
  object-fit: fill;
  width: 100%;
  height: 100%;
}

div.item-selector {
  height: 100px;
  width: 100%;
  white-space: nowrap;
  scroll-behavior: smooth;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  scroll-padding: 0 10px;
}

div.item-thumbnail {
  display: inline-block;
  height: 100px;
  width: 150px;
  scroll-snap-align: center;
  scroll-snap-stop: always;
}

div.item-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

div.input-score {
  display: flex;
  justify-content: center;
  align-items: center;
}

div.input-score * {
  flex: 1;
}

div.input-score input[type="text"],input[type="number"] {
  height: 24px;
}

div.input-score input:not([type="submit"]) {
  width: 50px;
}

div.input-score input[type="text"] {
  width: 95%;
}

div.input-score:not(:last-child) {
  margin-bottom: 8px;
}

/* TODO: move to custom css */
div.ref_main_files_caption {
  display: block;
  margin: 0 auto;
}
