body {
  font-family: "Poppins", sans-serif;
  background: linear-gradient(135deg, #89f7fe, #66a6ff);
  margin: 0;
  padding: 0;
  color: #333;
}

.app-container {
  max-width: 900px;
  margin: auto;
  padding: 20px;
}

header {
  text-align: center;
  margin-bottom: 20px;
}

h1 {
  font-size: 2.5rem;
}

.search-bar {
  display: flex;
  justify-content: center;
  gap: 10px;
}

.search-bar input {
  padding: 10px;
  font-size: 1rem;
  border-radius: 5px;
  border: none;
  outline: none;
  width: 250px;
}

.search-bar button {
  padding: 10px 15px;
  background: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-weight: bold;
}

.search-bar button:hover {
  background: #ddd;
}

.current-weather {
  text-align: center;
  margin: 20px 0;
}

.widgets {
  display: flex;
  justify-content: space-around;
  margin: 20px 0;
}

.widget {
  background: rgba(255, 255, 255, 0.2);
  padding: 15px;
  border-radius: 10px;
  text-align: center;
  backdrop-filter: blur(5px);
  width: 30%;
  margin: 1rem;
}

.toggle {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 15px 0;
}

.toggle button {
  padding: 10px 15px;
  border: none;
  cursor: pointer;
  background: #fff;
  border-radius: 5px;
  font-weight: bold;
}

.toggle .active {
  background: #333;
  color: white;
}

.forecast {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 15px;
}

.forecast-card {
  background: rgba(255, 255, 255, 0.3);
  padding: 15px;
  border-radius: 10px;
  text-align: center;
  width: 120px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  backdrop-filter: blur(5px);
}

.forecast-card:hover {
  transform: scale(1.05);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

/* Sunrise/Sunset/UV widgets container */
.weather-widgets {
  display: flex;
  gap: 20px; /* Space between widgets */
  margin-top: 20px;
  margin-bottom: 20px;
  justify-content: center;
  flex-wrap: wrap;
}

.widget-card {
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(10px);
  padding: 15px 25px;
  border-radius: 15px;
  text-align: center;
  min-width: 140px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Hover effect for widgets */
.widget-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

/* Widget titles */
.widget-card h3 {
  font-size: 14px;
  font-weight: 500;
  color: #ffffff;
  margin-bottom: 8px;
}

/* Widget values */
.widget-card p {
  font-size: 18px;
  font-weight: 600;
  color: #ffdd57;
}

/* Keep your existing CSS above this */

/* Toggle Buttons Styling */
.toggle-buttons {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 20px 0;
}

.toggle-btn {
  padding: 10px 20px;
  border: none;
  cursor: pointer;
  background-color: #f0f0f0;
  color: #333;
  border-radius: 5px;
  font-weight: bold;
  transition: background-color 0.3s, color 0.3s;
}

.toggle-btn:hover {
  background-color: #ddd;
}

/* Active Button (Selected) */
.toggle-btn.active {
  background-color: #333;
  color: white;
}

/* Weather Cards (Hourly / Daily) */
.weather-card {
  background-color: white;
  border-radius: 8px;
  padding: 15px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  text-align: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.weather-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Sunrise / Sunset / UV Index Cards Spacing */
.widget-container {
  display: flex;
  gap: 15px;
  margin: 20px 0;
}

.widget-card {
  flex: 1;
  background-color: white;
  padding: 15px;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  text-align: center;
}
