#container {
  display: grid;
  grid-template-rows: 6rem 1fr 6rem;
  grid-template-areas:
  'search'
  'items'
  'pagination';
  max-width: 1536px;
  margin-left: auto;
  margin-right: auto;
}


#searchform {
  grid-area: search;
  display: flex;
  margin-top: 1em;
  gap: 1rem;
  justify-content: center;
  margin-bottom: 3rem;

  input {
    border-radius: .5rem;
    border: 1px gainsboro solid;
    height: 3rem;
    font-size: 1em;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  button {
    background: dodgerblue;
    height: 3rem;
    border-radius: .5rem;
    border: 1px dodgerblue solid;
    color: white;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

#items {
  grid-area: items;
  margin-bottom: 3rem;
  padding: 0;
}
#items > li {
  background: white;
  padding: 1rem;
  border-radius: 1rem;
  margin-bottom: 1rem;
  box-shadow: 0 0 #000000, 0 0 #000000, 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  display: grid;
  grid-template-columns: auto auto;
}
.item {
  margin: 1rem;
  .overview {
    display: grid;
    grid-template-columns: 4rem 1fr;
    margin-bottom: 1rem;

    .icon {
      font-size: 1.5rem;
      line-height: 2rem;
      margin-right: 1rem;
    }
    .title {
      font-weight: bold;
    }
    .uuid {
      font-family: ui-monospace, monospace;
      color: gray;
      font-size: 0.875rem;
    }
  }
  .sources {
    color: dimgrey;
    .title {
      font-weight: bold;
      font-size: .875rem;
      padding-bottom: 1rem;
    }
    ul {
      display: inline-flex;
      padding: 0;
      font-size: .875rem;
      li {
        border: 1px solid dimgray;
        border-radius: 1rem;
        padding-left: .5rem;
        padding-right: .5rem;
        margin-right: .5rem;
      }
    }
  }
}

#items .details {
  display: grid;
  justify-content: end;

  div {
    display: grid;
    justify-content: end;
  }
  
  .button {
    background: dodgerblue;
    border-radius: .5rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: .875rem;
    font-weight: bold;
  }
  a.button {
    color: white;
    text-decoration: none;
  }
  details {
    background: whitesmoke;
    border-radius: .5rem;
    padding: .5rem;

    summary {
      display: grid;
      justify-content: center;
      align-items: center;
      font-size: .875rem;
      font-weight: bold;
      min-height: 2rem;
      cursor: pointer;
      list-style-type: none;
    }

    pre {
        background: gainsboro;
        border-radius: .25rem;
        padding: .5rem;
        margin: .5rem;
    }
  }
}

#pagination {
  grid-area: pagination;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 3rem;

  ul {
    display: inline-flex;
  }
  ul > li a {
    height: 3rem;
    background-color: gainsboro;
    display: flex;
    justify-content: center;
    align-items: center;
    color: black;
    font-weight: bold;
    font-size: 0.875rem;
    padding-left: 1rem;
    padding-right: 1rem;
    color: inherit;
    text-decoration: none;
  }
  ul > li:first-of-type a {
    border-top-left-radius: .5rem;
    border-bottom-left-radius: .5rem;
  }
  ul > li:last-of-type a {
    border-top-right-radius: .5rem;
    border-bottom-right-radius: .5rem;
  }
  ul > li a:hover {
    filter: brightness(90%);
  }
}
