@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&display=swap");
* {
  padding: 0;
  border: 0;
  margin: 0;
  box-sizing: border-box;
  outline: 0;
  text-decoration: none;
  color: inherit;
}

html, body {
  min-width: 100%;
  min-height: 100vh;
}

body {
  font-family: "Roboto", sans-serif;
  color: hsl(0deg, 0%, 15%);
  fill: hsl(0deg, 0%, 15%);
  display: flex;
  flex-direction: column;
}

main {
  flex-grow: 1;
  padding: 1rem;
}

a:visited {
  color: inherit;
}

.animate {
  animation-duration: 0.5s;
}

.hidden {
  display: none !important;
}

.alert {
  color: red;
}
.alert:hover {
  color: red;
  pointer-events: none;
}

header {
  padding: 1rem 2rem 0rem;
}

nav {
  display: flex;
  flex-direction: column;
  color: #007c70;
  border: 0.125rem solid #007c70;
  border-radius: 0.5rem;
  font-weight: 500;
}
nav:hover, nav:focus-within {
  background-color: hsl(0deg, 0%, 90%);
  border-color: hsl(174deg, 100%, 29%);
}
nav.open:hover, nav.open:focus-within {
  background-color: #fff;
  border-color: #007c70;
}
nav.open .openMenu {
  border-color: #007c70;
}
nav.open .openMenu:hover, nav.open .openMenu:focus {
  border-color: hsl(174deg, 100%, 29%);
  background-color: hsl(0deg, 0%, 90%);
}
nav.open .content {
  max-height: 10rem;
  animation-name: menuOpenAnimation;
}
nav .content {
  max-height: 0;
  overflow-y: hidden;
  animation-name: menuCloseAnimation;
}
nav ul {
  list-style: none;
}
nav li:hover, nav li:focus-within a {
  color: hsl(174deg, 100%, 29%);
  background-color: hsl(0deg, 0%, 90%);
  border-color: hsl(174deg, 100%, 29%);
}
nav li:last-of-type {
  border-bottom-right-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
}
nav li:last-of-type a {
  border-bottom-color: transparent;
  border-bottom-right-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
}
nav li a {
  display: block;
  padding: 0.5rem 1rem 0.375rem;
  border-bottom: 0.125rem solid #007c70;
}

.openMenu {
  border-top-right-radius: 0.5rem;
  border-top-left-radius: 0.5rem;
  padding: 0.5rem 1rem;
  border-bottom: 0.125rem solid transparent;
  transition: border-color 0.3s linear;
}

@media only screen and (min-width: 1023px) {
  nav:hover, nav:focus-within {
    background-color: inherit;
    border-color: inherit;
  }
  nav .openMenu {
    display: none;
  }
  nav ul {
    display: flex;
    justify-content: center;
  }
  nav li {
    margin-right: 1rem;
  }
  nav li a {
    border-color: transparent;
  }
  nav li a:focus {
    border-color: transparent;
  }
  nav li:last-of-type {
    border-radius: 0;
  }
  nav li:last-of-type a {
    border-radius: 0;
  }
  nav .content {
    max-height: inherit;
  }
}
@keyframes menuOpenAnimation {
  from {
    max-height: 0;
  }
  to {
    max-height: 10rem;
  }
}
@keyframes menuCloseAnimation {
  from {
    max-height: 10rem;
  }
  to {
    max-height: 0;
  }
}
.modal {
  position: fixed;
  display: none;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: hsla(0deg, 0%, 0%, 0.1);
  overflow-y: auto;
}
.modal.show {
  display: block;
}

.errorMessage a {
  font-weight: bold;
}
.errorMessage a:hover, .errorMessage a:focus {
  color: #007c70;
}

.modal-dialog {
  margin: 2rem auto;
  max-width: min(100% - 4rem, 40rem);
  background-color: #fff;
  border-radius: 0.5rem;
}

.modal-content {
  position: relative;
  padding: 1rem;
}

form {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
form div {
  width: 100%;
}
form div:focus-within label {
  color: #007c70;
  fill: #007c70;
}
form div + div {
  margin-top: 1rem;
}
form input {
  display: block;
  width: 100%;
  font-size: 1rem;
}
form label {
  font-weight: 500;
  display: flex;
  align-items: baseline;
}
form label:hover {
  color: #007c70;
  fill: #007c70;
}
form label + input, form label + select, form label ~ span.select2 {
  margin-top: 0.5rem;
}

.deleteForm {
  display: flex;
  align-items: center;
}
.deleteForm label {
  flex-grow: 1;
}
.deleteForm label:hover {
  color: inherit;
}

button {
  padding: 0.5rem 0.75rem;
  display: flex;
  align-items: center;
  background-color: #007c70;
  color: hsl(0deg, 0%, 95%);
  fill: hsl(0deg, 0%, 95%);
  border: 0.125rem solid hsl(174deg, 100%, 19%);
  border-radius: 0.5rem;
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
}
button.disable, button:disabled {
  background-color: hsl(0deg, 0%, 80%);
  border-color: hsl(0deg, 0%, 70%);
  cursor: default;
}
button.disable:hover, button.disable:focus, button:disabled:hover, button:disabled:focus {
  background-color: hsl(0deg, 0%, 80%);
  border-color: hsl(0deg, 0%, 70%);
  fill: hsl(0deg, 0%, 95%);
}
button:hover, button:focus {
  background-color: hsl(174deg, 100%, 29%);
  border-color: #007c70;
  color: hsl(0deg, 0%, 90%);
  fill: hsl(0deg, 0%, 90%);
}
button img {
  width: 1rem;
}
button svg {
  width: 1rem;
  fill: inherit;
}
button svg + span {
  margin-left: 0.5rem;
}

input[type=text], input[type=password], input[type=number], input[type=date], textarea {
  padding: 0.375rem;
  border: 0.125rem solid hsl(0deg, 0%, 85%);
  border-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
input[type=text]:focus, input[type=password]:focus, input[type=number]:focus, input[type=date]:focus, textarea:focus {
  border-color: hsl(174deg, 100%, 29%);
}

textarea {
  width: 100%;
  height: 10rem;
  resize: none;
  font-size: 1rem;
}

.closeIcon {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background-color: inherit;
  border: 0;
  padding: 0.25rem;
  fill: hsl(0deg, 0%, 80%);
}
.closeIcon:hover, .closeIcon:focus {
  background-color: inherit;
  fill: hsl(0deg, 0%, 70%);
}
.closeIcon svg, .closeIcon img {
  width: 0.75rem;
}

h2 {
  font-size: 1.25rem;
  color: #007c70;
  margin-bottom: 0.75rem;
}

.error label {
  padding: 1.5rem 0;
  color: hsl(0deg, 100%, 40%);
  fill: hsl(0deg, 100%, 40%);
  display: flex;
  align-items: center;
}
.error label svg, .error label img {
  max-width: 1.5rem;
}
.error label span {
  margin-left: 0.5rem;
}

fieldset {
  width: 100%;
  margin: 0.5rem 1rem;
  padding: 0.5rem;
  border: 0.125rem solid #007c70;
  border-radius: 0.5rem;
}
fieldset legend {
  color: #007c70;
  margin-left: 1rem;
  font-weight: 500;
  padding: 0 0.25rem;
}
fieldset div {
  display: block;
}
fieldset.nav div {
  display: flex;
  align-items: center;
}
fieldset.nav div button {
  margin-left: 0.5rem;
}

.select2 {
  width: 100% !important;
  font-size: 1rem;
}

.select2-selection__rendered {
  padding-top: 3px;
}

.select2-container--default .select2-selection--single {
  border: 0.125rem solid hsl(0deg, 0%, 80%);
  height: 37px;
}
.select2-container--default .select2-selection--single:hover, .select2-container--default .select2-selection--single:focus, .select2-container--default .select2-selection--single[aria-expanded=true] {
  border-color: hsl(174deg, 100%, 29%);
}
.select2-container--default .select2-selection--single:hover .select2-selection__clear, .select2-container--default .select2-selection--single:focus .select2-selection__clear, .select2-container--default .select2-selection--single[aria-expanded=true] .select2-selection__clear {
  color: #007c70;
}
.select2-container--default .select2-selection--single:hover .select2-selection__clear:hover, .select2-container--default .select2-selection--single:focus .select2-selection__clear:hover, .select2-container--default .select2-selection--single[aria-expanded=true] .select2-selection__clear:hover {
  color: hsl(174deg, 100%, 29%);
}
.select2-container--default .select2-selection--single:hover .select2-selection__arrow b, .select2-container--default .select2-selection--single:focus .select2-selection__arrow b, .select2-container--default .select2-selection--single[aria-expanded=true] .select2-selection__arrow b {
  border-color: hsl(174deg, 100%, 29%) transparent transparent transparent;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 35px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-width: 5px 4px 0 4px;
  border-color: hsl(0deg, 0%, 80%) transparent transparent transparent;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-width: 5px 4px 0 4px;
  border-color: hsl(174deg, 100%, 29%) transparent transparent transparent;
}

.select2-dropdown {
  border-width: 0.125rem;
  border-color: hsl(174deg, 100%, 29%);
}

.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 0.125rem solid hsl(0deg, 0%, 80%);
}
.select2-container--default .select2-search--dropdown .select2-search__field:focus {
  border-color: hsl(174deg, 100%, 29%);
}

.select2-selection__clear {
  color: hsl(0deg, 0%, 80%);
}
.select2-selection__clear:hover, .select2-selection__clear:focus {
  color: hsl(174deg, 100%, 29%);
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  padding: 0 5px 0 0;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice button {
  margin: 0.125rem 0.25rem 0.125rem 0.125rem;
  padding: 0.25rem 0.5rem;
  color: hsl(0deg, 0%, 95%);
}

select {
  width: 100%;
  background-color: transparent;
  background-image: url("../img/icons/arrow-down.svg");
  background-repeat: no-repeat;
  background-position: calc(100% - 0.5rem);
  font-size: 1rem;
  padding: 0.375rem;
  border: 0.125rem solid hsl(0deg, 0%, 80%);
  border-radius: 0.25rem;
  appearance: none;
  cursor: pointer;
}
select:hover, select:focus {
  border-color: hsl(174deg, 100%, 29%);
  background-image: url("../img/icons/arrow-down-selected.svg");
}
select:disabled {
  background-image: none;
  cursor: not-allowed;
  color: hsl(0deg, 0%, 80%);
}
select:disabled:hover, select:disabled:focus {
  border-color: hsl(0deg, 0%, 80%);
  background-image: none;
}
select[multiple] {
  background-image: none;
  padding: 0.25rem;
}
select option {
  padding: 0.125rem 0.5rem;
  border-radius: 0.25rem;
  margin: 0.125rem 0.375rem 0.125rem 0;
}
select option:first-of-type {
  margin-top: 0;
}
select option:last-of-type {
  margin-bottom: 0;
}

label {
  cursor: pointer;
}
label svg, label img {
  width: 1rem;
  fill: inherit;
  margin-left: 0.5rem;
}
label svg + span {
  margin-left: 0.5rem;
}

[aria-disabled=true] {
  display: none;
}

@media only screen and (min-width: 1023px) {
  .grid {
    display: grid;
    grid-template-columns: auto auto auto auto;
    grid-gap: 1rem;
  }
  .grid div + div {
    margin-top: 0;
  }
  .grid div:last-of-type {
    align-self: end;
  }
}
.menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0.5rem 1rem;
  border-bottom: 1px solid hsl(0deg, 0%, 80%);
}
.menu > span {
  flex: 1;
  font-weight: 500;
  margin-left: 0.5rem;
}
.menu a:hover, .menu a:focus {
  color: hsl(174deg, 100%, 29%);
}

.accordion {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 0.25rem solid transparent;
  margin: 1rem 1rem 1rem 0.5rem;
}
.accordion.open {
  padding-bottom: 0.5rem;
  border-color: #007c70;
}
.accordion.open .content {
  max-height: 30rem;
  overflow-y: scroll;
}
.accordion.open .newButton {
  margin-bottom: 0.5rem;
}
.accordion .openMenu {
  flex-grow: 1;
  display: block;
  font-weight: 500;
}
.accordion .openMenu:hover, .accordion .openMenu:focus {
  color: #007c70;
}
.accordion .content {
  max-height: 0;
  overflow-y: hidden;
  width: 100%;
  display: flex;
  flex-direction: column;
}
.accordion .content div {
  padding: 0.125rem 0.5rem 0;
  display: flex;
  flex-direction: row;
}
.accordion .content label {
  flex-grow: 1;
  padding: 0 0.5rem;
}
.accordion .editButton {
  margin: 0 1rem;
}

.results .header {
  margin: 1rem 1.5rem;
  display: flex;
  align-items: center;
}
.results .body {
  margin: 1rem 1.5rem;
  display: block;
  align-items: center;
  overflow-x: scroll;
  max-height: calc(100vh - 28.5rem);
}
.results .accessList {
  max-height: calc(100vh - 13rem);
}
.results form {
  flex-grow: 1;
  justify-content: center;
}
.results .pagination {
  padding: 0 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  fill: #007c70;
  width: auto;
  white-space: nowrap;
}
.results .pagination.disable label {
  color: hsl(0deg, 0%, 80%);
  fill: hsl(0deg, 0%, 80%);
  cursor: default;
}
.results .pagination.disable input {
  color: hsl(0deg, 0%, 80%);
  cursor: default;
}
.results .pagination.disable .pageIndex:hover, .results .pagination.disable .pageIndex:focus-within {
  border-color: hsl(0deg, 0%, 80%);
}
.results .pagination.disable .pageIndex:hover label, .results .pagination.disable .pageIndex:focus-within label {
  color: hsl(0deg, 0%, 80%);
  fill: hsl(0deg, 0%, 80%);
}
.results .pagination .pageIndex {
  border: 0.125rem solid hsl(0deg, 0%, 80%);
  border-radius: 0.25rem;
  padding: 0.375rem 0.5rem;
  margin-left: 0.5rem;
  margin-right: 0.75rem;
  display: flex;
}
.results .pagination .pageIndex:hover, .results .pagination .pageIndex:focus-within {
  border-color: hsl(174deg, 100%, 29%);
}
.results .pagination .pageIndex:hover label, .results .pagination .pageIndex:focus-within label {
  color: inherit;
}
.results .pagination .pageIndex label {
  font-weight: 400;
}
.results .pagination input {
  font-size: 1rem;
  border: 0;
  padding: 0;
  padding-right: 0.375rem;
  border-radius: 0;
  text-align: right;
  max-width: 3.5rem;
}
.results .pagination > label {
  font-size: 0;
}
.results .pagination > label img, .results .pagination > label svg {
  width: 2.25rem;
}
.results table {
  border-spacing: 0;
  width: 100%;
}
.results tr a {
  display: block;
}
.results tr a:hover, .results tr a:focus {
  color: #007c70;
}
.results tr:nth-child(2n) {
  background-color: hsl(0deg, 0%, 95%);
}
.results tr:hover, .results tr:focus-within {
  background-color: hsl(0deg, 0%, 90%);
}
.results tr:hover td:first-of-type a, .results tr:focus-within td:first-of-type a {
  color: hsl(174deg, 100%, 29%);
}
.results tr:first-of-type:hover, .results tr:first-of-type:focus-within {
  background-color: inherit;
}
.results tr:last-of-type td {
  border-bottom: 0;
}
.results th {
  text-align: left;
  padding: 0.5rem;
  font-weight: 500;
  border-bottom: 0.125rem solid hsl(0deg, 0%, 80%);
}
.results td {
  padding: 0.25rem 0.5rem;
  border-bottom: 0.125rem solid hsl(0deg, 0%, 80%);
}
.results td button {
  margin: auto;
}
.results td svg, .results td img {
  max-width: 0.75rem;
}

fieldset.data {
  width: auto;
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 1rem;
}
fieldset.data a:hover, fieldset.data a:focus {
  color: #007c70;
}
fieldset.data div {
  padding: 0 0.5rem;
  display: flex;
  min-height: 1.25rem;
}
fieldset.data div span {
  align-self: end;
}
fieldset.data div:nth-of-type(odd) {
  min-width: 10rem;
  width: 20%;
  flex-shrink: 1;
  margin-top: 0.5rem;
}
fieldset.data div:nth-of-type(even) {
  width: 80%;
  font-weight: 500;
}
fieldset.data div:first-of-type {
  margin-top: 0;
}

div.title {
  padding: 0.5rem 1rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
div.title h2 {
  padding-top: 0.5rem;
  flex-grow: 1;
  margin: 0rem 0.5rem;
}
div.title div {
  display: inline-flex;
  padding-top: 0.5rem;
  padding-left: 0.5rem;
}
div.title div button {
  margin: 0 0.5rem;
}

.commands {
  margin: 0 1rem;
  display: flex;
  flex-wrap: wrap;
}
.commands button {
  margin: 0.5rem;
}
.commands button:last-of-type {
  margin-left: auto;
}

input[type=checkbox] {
  height: 2rem;
  cursor: pointer;
}

.observations {
  white-space: pre-wrap;
}

.date {
  white-space: nowrap;
}

th.center {
  text-align: center;
}

.pendingResults .show > td {
  border-bottom-color: transparent;
}
.pendingResults .show + .obs {
  display: table-row;
}
.pendingResults tr:nth-last-child(2) td {
  border-color: transparent;
}
.pendingResults .obs {
  display: none;
  background-color: #fff;
}
.pendingResults .obs:hover, .pendingResults .obs:focus-within {
  background-color: #fff;
}
.pendingResults .obs > td {
  padding: 0.5rem 1.5rem;
}
.pendingResults .obs td:first-of-type {
  width: 100%;
}
.pendingResults .obs td:nth-of-type(n+2) {
  white-space: nowrap;
}
.pendingResults .obs tr:hover, .pendingResults .obs tr :focus-within {
  background-color: #fff;
}
.pendingResults .obs tr:hover button, .pendingResults .obs tr :focus-within button {
  background-color: #007c70;
}
.pendingResults .obs tr:hover button:hover, .pendingResults .obs tr:hover button:focus, .pendingResults .obs tr :focus-within button:hover, .pendingResults .obs tr :focus-within button:focus {
  background-color: hsl(174deg, 100%, 29%);
}
.pendingResults .obs tr:first-of-type:hover {
  background-color: #fff;
}
.pendingResults .obs tr:nth-child(2n) {
  background-color: inherit;
}
.pendingResults .obs tr:nth-last-child(2) td, .pendingResults .obs tr:nth-last-child(1) td {
  border-color: transparent;
}
.pendingResults .obs tr td {
  border-bottom: 0.125rem solid hsl(0deg, 0%, 80%);
}
.pendingResults .obs tr:last-of-type:hover {
  background-color: #fff;
}
.pendingResults .obs tr:last-of-type td button {
  display: inline;
}
.pendingResults .obs tr:last-of-type td button svg, .pendingResults .obs tr:last-of-type td button img {
  max-width: 1rem;
}
.pendingResults .obs tr:last-of-type td button + button {
  margin-left: 1rem;
}

.priority0 {
  color: hsl(0deg, 0%, 70%);
  background-color: hsl(0deg, 0%, 95%) !important;
}
.priority0:hover {
  background-color: hsl(0deg, 0%, 90%) !important;
}

.priority1 {
  background-color: #fff !important;
}
.priority1:hover {
  background-color: hsl(0deg, 0%, 95%);
}

.priority2 {
  background-color: hsl(60deg, 100%, 50%) !important;
}
.priority2:hover {
  background-color: hsl(60deg, 100%, 70%) !important;
}

.priority3 {
  background-color: hsl(0deg, 100%, 70%) !important;
}
.priority3:hover {
  background-color: hsl(0deg, 100%, 80%) !important;
}

.exportForm {
  display: inline;
}

@media only screen and (max-width: 639px) {
  .results h2 {
    margin-left: auto;
    margin-right: auto;
  }
  .results .header {
    flex-wrap: wrap;
  }
  .results .newButton {
    margin-top: 1rem;
    margin-left: auto;
    margin-right: auto;
  }
}
footer {
  padding: 0.5rem 1rem;
}
footer div {
  padding: 1rem 0.5rem 0.5rem;
  border-top: 0.125rem solid hsl(0deg, 0%, 80%);
  text-align: center;
  white-space: nowrap;
}
footer a {
  margin: 0 1rem;
}
footer a:hover, footer a:focus {
  color: #007c70;
}

/*# sourceMappingURL=app.css.map */
