@font-face {
  font-family: "Univers LT W04_55 Roman1475960";
  src: url("../fonts/1475960/938b61cf-8b60-408a-a252-531fc37ebeb3.woff2")
      format("woff2"),
    url("../fonts/1475960/df8a7a82-1b14-40c7-b6f8-7e2bac922b27.woff")
      format("woff");
}

@font-face {
  font-family: "Univers LT W04_65 Bold1475972";
  src: url("../fonts/1475972/73d8af9e-4b82-4953-81a5-8941aed30297.woff2")
      format("woff2"),
    url("../fonts/1475972/19ff06fe-d0c5-4294-a237-a4c9b85312b8.woff")
      format("woff");
}
@font-face {
  font-family: "Univers LT W04_75 Black1475984";
  src: url("../fonts/1475984/a9188c70-fecb-4816-b42a-0264b6fdc056.woff2")
      format("woff2"),
    url("../fonts/1475984/7a9f2106-9430-45ff-9259-be54d516525d.woff")
      format("woff");
}

@font-face {
  font-family: "Univers LT W01_47 Light1475998";
  src: url("../fonts/1475998/30d23194-f646-428e-9323-c85f8aea47ed.eot?#iefix");
  src: url("../fonts/1475998/30d23194-f646-428e-9323-c85f8aea47ed.eot?#iefix")
      format("eot"),
    url("../fonts/1475998/58c01d2a-ce4a-4360-a61f-761e91aa67c0.woff2")
      format("woff2"),
    url("../fonts/1475998/ccd9698a-60c5-48f7-acbe-5352b4aa81d4.woff")
      format("woff"),
    url("../fonts/1475998/ba8ec1ac-e90e-4cea-bda8-85f718fb8fd0.ttf")
      format("truetype");
}

@font-face {
  font-family: "Univers LT W01_57 Condensed";
  src: url("../fonts/1476004/4a916908-f6f7-4df6-90a1-176fb83137d9.eot?#iefix");
  src: url("../fonts/1476004/4a916908-f6f7-4df6-90a1-176fb83137d9.eot?#iefix")
      format("eot"),
    url("../fonts/1476004/bf8f8741-5f64-4db9-a877-a44624092e68.woff2")
      format("woff2"),
    url("../fonts/1476004/7ce02c2c-45d4-4dee-90f2-f8034e29ac24.woff")
      format("woff"),
    url("../fonts/1476004/0955c906-88fc-47e8-8ea2-0765bdf88050.ttf")
      format("truetype");
}

@font-face {
  font-family: "Univers LT W01_67 Bold 1476016";
  src: url("../fonts/1476016/7815db54-3fc9-46f7-a082-a7db4c26b44d.eot?#iefix");
  src: url("../fonts/1476016/7815db54-3fc9-46f7-a082-a7db4c26b44d.eot?#iefix")
      format("eot"),
    url("../fonts/1476016/3bdb4597-ff70-447c-8620-8836686bf840.woff2")
      format("woff2"),
    url("../fonts/1476016/5599ac9f-d136-4277-aeee-f82aac5d527f.woff")
      format("woff"),
    url("../fonts/1476016/ae81ec98-60d0-408d-960f-8c3f9f74e6c7.ttf")
      format("truetype");
}

@font-face {
  font-family: "Linotype Univers W05_520 Md Cn";
  src: url("../fonts/5363406/f8a7842b-dea8-49b8-b6d5-6746f61efecf.eot?#iefix");
  src: url("../fonts/5363406/f8a7842b-dea8-49b8-b6d5-6746f61efecf.eot?#iefix")
      format("eot"),
    url("../fonts/5363406/f593d393-4c48-40b9-92b3-b1ff0ea16de4.woff2")
      format("woff2"),
    url("../fonts/5363406/8cc01e23-179f-4455-9ea7-16a0e517b7d8.woff")
      format("woff"),
    url("../fonts/5363406/bd825b48-a8d2-47de-93ac-34cd4c503263.ttf")
      format("truetype");
}

html,
body {
  margin: 0;
  padding: 0;
  font-family: "Univers LT W01_57 Condensed";
}

.shadow_black {
  -webkit-box-shadow: 0 0 6px 3px #000;
  -moz-box-shadow: 0 0 6px 3px #000;
  box-shadow: 0 0 6px 3px #000;
}

.message,
#scan_code {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 50rem;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
}

.message {
  width: 70rem;
  font-size: 2rem;
}

#scan_code > .logo > img {
  width: 10rem;
}

#topic {
  font-size: 4rem;
  margin-bottom: 4rem;
}

#scanner img {
  width: 100%;
  max-width: 30rem;
}

#topic_subline {
  font-size: 3rem;
  text-transform: uppercase;
  margin-top: -8rem;
}

#logo {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 5rem;
  text-align: center;
  z-index: 500;
  background-color: rgb(21, 20, 27);
}

#logo > img {
  margin-top: 1rem;
  height: 4rem;
}

#candidates {
  display: grid;
  margin-top: 5rem;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 0;
  align-items: stretch;
  padding-bottom: 10rem;
}

.candidate > img {
  height: 100%;
  width: 100%;
  display: inline-block;
}

.candidate {
  display: block;
  position: relative;
  margin: 0;
  padding: 0;
  z-index: 1;
}

.inactive {
  display: none;
}

.active {
  display: inline;
}

.overlay::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #d19800;
  opacity: 0.4;
  z-index: 100;
}

.overlay h1 {
  display: block;
  position: absolute;
  margin: 0;
  padding: 0;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 7rem;
  color: #d19800;
  z-index: 500;
}

#toolbar {
  position: fixed;
  display: grid;
  width: calc(100% - 2rem);
  max-width: 35rem;
  grid-template-columns: 1.75fr 1.25fr;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  height: 7rem;
  text-align: center;
  z-index: 1000;
}

#toolbar_info {
  width: 100%;
  height: 2rem;
  padding: 1.5rem 0;
  border-top-left-radius: 1rem;
  border-bottom-left-radius: 1rem;
  background-color: rgb(21, 20, 27);
  font-size: 1.8rem;
  color: white;
  z-index: 2000;
}

#remaining_votes {
  display: inline;
}

#toolbar > button {
  width: 100%;
  height: 5rem;
  padding-left: 1.5rem;
  font-family: "Univers LT W01_57 Condensed";
  font-size: 1.4rem;
  border-top-right-radius: 1rem;
  border-bottom-right-radius: 1rem;
  border: none;
  background-color: rgb(209, 153, 0);
  text-align: left;
  color: white;
  z-index: 1500;
}

#toolbar > button:hover {
  cursor: pointer;
}

.vote_text {
  display: block;
  width: 4rem;
}

.vote_text::after {
  position: absolute;
  top: 1.1rem;
  right: 1rem;
  font: var(--fa-font-regular);
  content: "\f324";
  font-size: 3rem;
}

@media (max-width: 768px) {
  .message {
    width: calc(100% - 4rem);
    padding: 2rem;
    font-size: 1rem;
  }
  #scan_code {
    width: calc(100% - 4rem);
    padding: 2rem;
  }

  #scan_code > .logo > img {
    width: 8rem;
  }

  #topic {
    font-size: 1.75rem;
    margin-bottom: 5rem;
  }

  #scanner img {
    width: 100%;
  }

  #topic_subline {
    font-size: 1.75rem;
    margin-top: -5rem;
  }

  .shadow_black {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
  }

  #logo {
    height: 4.25rem;
  }

  #logo > img {
    margin-top: 0.75rem;
    height: 3.5rem;
  }

  #candidates {
    padding-bottom: 14rem;
  }

  #toolbar {
    display: grid;
    row-gap: 0;
    max-width: calc(100% - 3rem) !important;
    height: 12rem;
    grid-template-columns: 1fr;
    grid-template-rows: 5rem 5rem;
  }

  #toolbar_info {
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    -webkit-box-shadow: 0 -2px 0 6px 3px #000;
    -moz-box-shadow: 0 -2px 6px 3px #000;
    box-shadow: 0 -2px 6px 3px #000;
  }

  #toolbar > button {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
    -webkit-box-shadow: 0 2px 0 6px 3px #000;
    -moz-box-shadow: 0 2px 6px 3px #000;
    box-shadow: 0 2px 6px 3px #000;
  }

  .vote_text {
    width: 15rem;
  }

  .vote_text::after {
    top: 6.25rem;
    font-size: 3rem;
  }

  .btn-green,
  .btn-red {
    margin-bottom: 1.5rem !important;
  }
}
