* {
  margin: 0;
  padding: 0;
  font-family: Arial, Helvetica, sans-serif;
}

/* Top Header */
.hero {
  padding: 5px;
  color: white;
  font-weight: bold;
  text-align: center;
  background: rgb(90, 99, 191);
  background: linear-gradient(
    90deg,
    rgba(90, 99, 191, 1) 0%,
    rgba(50, 23, 130, 1) 58%,
    rgba(30, 11, 70, 1) 100%
  );
}
#container {
  display: flex;
}

/* Search bar */
#citySearch {
  width: 25%;
  margin-right: 20px;
  margin-left: 10px;
}

h2,
.cityWeather,
.forecast {
  padding: 5px;
  font-size: 26px;
  font-weight: bold;
  margin-top: 5px;
}

input {
  font-weight: bold;
  padding: 10px;
  font-size: 16px;
  width: calc(100% - 25px);
  border-radius: 5px;
  border: 2px solid #aeaeae;
}
input::placeholder {
  font-weight: bold;
  opacity: 0.5;
  color: black;
  font-size: 18px;
}

#searchButton {
  width: 100%;
  background-color: cornflowerblue;
  color: white;
  font-size: 18px;
  padding: 8px;
  border-radius: 5px;
  border: none;
  cursor: pointer;
}
#dividerLine {
  border-bottom: 2px solid lightgrey;
  margin: 15px 0px 15px 0px;
}
/* Search History items */
li {
  list-style: none;
}
.listItem {
  font-size: 16px;
  text-align: center;
  padding: 10px;
  margin: 15px 0px 15px 0px;
  background-color: #aeaeae;
  color: black;
  border-radius: 5px;
  cursor: pointer;
}

/* Current city weather dashboard */
#dashboard,
#cityDash {
  width: calc(100% - 50px);
  margin-right: 50px;
  float: right;
  display: flex;
  flex-wrap: wrap;
  font-size: 20px;
}
#cityDash {
  max-width: 1000px;
  margin-top: 20px;
  border: 1px solid black;
  text-align: left;
  margin-bottom: 10px;
}

#cityDashHead {
  display: flex;
}

#currentIcon {
  max-width: 25px;
  max-height: 25px;
  margin-top: 15px;
}

/* 5 Day Forecast section */
.cityWeather {
  padding: 5px 5px 0px 5px;
}
.cityForecast {
  font-size: 18px;
}
#currentWeatherList {
  width: 100%;
  padding-left: 10px;
  padding-bottom: 5px;
  font-size: 16px;
}
.cityCard li {
  display: flex;
  margin-top: 15px;
  margin-bottom: 15px;
  width: 90%;
  padding: 5px 0px 5px 5px;
}

#forecast {
  width: calc(100% - 50px);
  margin-right: 50px;
  font-size: 20px;
  text-align: center;
}
#forecastHeader {
  text-align: left;
  width: 100%;
  font-size: 23px;
}
.cardContainer {
  flex-wrap: wrap;
  display: flex;
}
.forecastCard {
  width: 175px;
  text-align: left;
  font-size: 16px;
  padding: 5px;
  background-color: #353d4d;
  color: white;
  margin-right: 20px;
}
.forecastList li {
  display: flex;
  margin-top: 15px;
  margin-bottom: 15px;
}
