body {
  background: linear-gradient(
    315deg,
    rgba(31, 26, 112, 1) 3%,
    rgba(80, 68, 176, 1) 24%,
    rgba(194, 189, 228, 1) 59%,
    rgba(75, 62, 174, 1) 93%
  );
  font-family: "Nunito Sans", sans-serif;
  min-height: 100vh;
}

div.container.weather-app {
  display: block;
  margin: 0 auto;
  padding: 50px;
  border-radius: 36px;
  background-color: #efedfa;
  border: 10px solid #bbb5e1;
}

div.input-group {
  max-width: 700px;
}
.input-group
  > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  background: #4b3eae;
  border: 1px solid #4b3eae;
  border-radius: 0 35px 35px 0;
}
.input-group:hover
  > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  background: rgb(220, 216, 248);
  color: #4b3eae;
}
.input-group > .form-control:focus,
.input-group > .form-floating:focus-within,
.input-group > .form-select:focus {
  color: #212529;
  background-color: #fff;
  border-color: #4b3eae;
  box-shadow: 0 0 0 0.25rem rgba(75, 62, 174, 1) 90%;
}
.input-group > .form-control,
.input-group > .form-floating,
.input-group > .form-select {
  border-radius: 35px;
}

/*current city forecast*/
div.current-location {
  padding: 20px 0;
  color: rgba(0, 0, 0, 0.7);
}
div.col.current-city {
  padding-left: 50px;
  line-height: 40px;
}
div.current-location-details {
  font-size: 13px;
  padding-top: 25px;
}

.city {
  font-size: 22px;
}
.temp {
  font-weight: 700;
  font-size: 48px;
}
.units {
  position: relative;
  top: -20px;
}
.units a {
  text-decoration: none;
}
.units a.active {
  font-weight: bold;
  text-decoration: underline;
}
/* five days forecast */
div.five-days-forecast {
  display: block;
  margin: 0 auto;
  font-size: 14px;
  color: rgba(0, 0, 0, 0.7);
}
.weather-icon {
  font-size: 35px;
}

/* center alignment on the screen*/
.outer {
  display: table;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.middle {
  display: table-cell;
  vertical-align: middle;
}

.inner {
  margin-left: auto;
  margin-right: auto;
  width: 720px;
}