/* Standard-Stile für größere Bildschirme */
body {
  font: 14px "Lucida Grande", Helvetica, Arial, sans-serif;
  background: #016FB9;
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  color: #FAFAFA;
  margin: 0;
  padding: 0;
}

a {
  color: #00B7FF;
  text-decoration: none;
}

.weatherCardContainer {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #797979;
  margin-top: 100px;
  padding: 0 10px;
}

.weatherCardContainer h4 {
  color: #a8a8a8;
  text-align: center;
}

.weatherCardContainer .weatherCard {
  position: relative; /* Relativ positionieren für die absolute Positionierung der Kindelemente */
  min-height: 320px;
  min-width: 320px;
  background: #FFF;
  box-shadow: 1px 1px 4px #333;
  border-radius: 2px;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 20px;
  padding: 20px;
}

.weatherCardContainer .weatherCard img {
  margin-top: 20px;
}

.weatherCardContainer .weatherCard .conditionsOverview {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative; /* Relative Positionierung um Flexbox Layout zu ermöglichen */
  width: 100%;
  padding: 20px;
  box-sizing: border-box; /* Verhindert das Überlaufen des Elements */
}

.weatherCardContainer .weatherCard .conditionsOverview p {
  margin: 0;
  padding: 5px;
  font-size: 2em;
  text-align: center;
}

.weatherCardContainer .weatherCard .conditionDetails,
.weatherCardContainer .weatherCard .conditionDetails2 {
  display: flex;
  flex-direction: column;
  width: 100%;
  font-size: .9em;
  color: #595959;
  padding: 10px;
  box-sizing: border-box; /* Verhindert das Überlaufen des Elements */
}

.weatherCardContainer .weatherCard .conditionDetails {
  border-top: 1px solid #ddd; /* Optionaler Rahmen zur Trennung */
  margin-top: 20px; /* Abstand nach der .conditionsOverview */
}

.weatherCardContainer .weatherCard .conditionDetails2 {
  border-top: 1px solid #ddd; /* Optionaler Rahmen zur Trennung */
  margin-top: 10px; /* Abstand nach der .conditionDetails */
}

.weatherCardContainer .weatherCardError {
  min-height: 320px;
  min-width: 320px;
  background: #FFF;
  box-shadow: 1px 1px 4px #333;
  border-radius: 2px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
}

.weatherCardContainer .weatherCardError p {
  width: 70%;
  text-align: center;
}

.weatherCardContainer .weatherCardError button {
  padding: 10px 22px;
  border-radius: 2px;
  margin-left: 4px;
  border: none;
  background: #EC4E20;
  color: #FFF;
  box-shadow: 1px 1px 4px #333;
  margin-top: 20px;
}

/* Media Queries für kleinere Bildschirme */
@media only screen and (max-width: 768px) {
  body {
    font-size: 14px;
  }

  .weatherCardContainer {
    margin-top: 50px;
    padding: 0 5px;
  }

  .weatherCardContainer .weatherCard {
    min-height: 250px;
    min-width: 250px;
  }

  .weatherCardContainer .weatherCard .conditionsOverview p {
    font-size: 2em;
  }

  .weatherCardContainer .weatherCard .conditionDetails,
  .weatherCardContainer .weatherCard .conditionDetails2 {
    font-size: .8em;
    margin-bottom: 10px;
  }

  .weatherCardContainer h4 {
    font-size: 14px;
  }
}

/* Weitere Anpassungen für sehr kleine Bildschirme */
@media only screen and (max-width: 480px) {
  .weatherCardContainer .weatherCard {
    min-height: 200px;
    min-width: 200px;
  }

  .weatherCardContainer .weatherCard .conditionsOverview p {
    font-size: 1.8em;
  }

  .weatherCardContainer .weatherCard .conditionDetails,
  .weatherCardContainer .weatherCard .conditionDetails2 {
    font-size: .7em;
    margin-bottom: 5px;
  }

  .weatherCardContainer h4 {
    font-size: 12px;
  }

  p {
    font-size: 12px;
  }
}
