:host {
  display: block;
  margin: 2rem auto 0.5rem auto;
  width: 100%;
  max-width: 70rem;
}

.hwh-splitview {
  display: grid;
  grid-template-columns: 3fr 2fr;
  gap: 1rem;
}

.hwh-enemy-list {
  max-height: 75vh;
  overflow-y: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  align-content: flex-start;
  gap: 5px;
  padding: .5rem;
}

.hwh-enemy-item {
  --size: 4.5rem;
  width: var(--size);
  height: var(--size);
  border: 1px solid white;
  border-radius: 5px;
  overflow: hidden;
  background-size: cover;
  background-position: center;

  transition: transform 0.3s ease-in-out, border 0.3s ease-in-out;

  &.selected {
    border: 5px solid dodgerblue;
    transform: scale(1.15)
  }
}

.hwh-material-list {
  max-height: 75vh;
  display: flex;
  flex-direction: column;
  gap: .5rem;

  &--header {
    text-align: center;
  }
}

.hwh-material-display {
  border: 1px solid white;
  border-radius: 10px;
}

.hwh-material-display > h1 {
  text-align: center;
  margin: 1rem 0 .5rem 0;
}

.hwh-material-display-items {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;

  & > * {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 1rem;

    & > img {
      max-height: 5rem;
    }

    & > span {
      text-align: center;
    }
  }
}

.hwh-material-locations {
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: .5rem;
  padding-bottom: 1px;
}

.hwh-material--recommended-hint {
  margin-bottom: 1rem;
  text-align: center;

  & > span {
    color: dodgerblue;
  }
}

@media (max-width: 850px) {
  :host {
    margin: 1rem auto 0.5rem auto;
    max-width: 100%;
  }

  .hwh-splitview {
    grid-template-columns: 1fr;
  }

  .hwh-enemy-list {
    max-height: 30vh;
  }

  .hwh-enemy-item {
    --size: 3.5rem;
  }

  .hwh-material--recommended-hint {
    margin-top: 0;
    margin-bottom: .5rem;
    width: 100%;
    font-size: .8rem;
  }

  .hwh-material-display {
    font-size: .8rem;
  }
}
