/* General page transitions */
#pageBody {
  transition: background-color 0.5s ease, color 0.5s ease, opacity 0.5s ease;
}

.theme-transition {
  opacity: 0.8;
}

/* Dark mode toggle */
.toggle-wrapper {
  position: relative;
  width: 70px;
  height: 35px;
}

.toggle-wrapper input[type="checkbox"] {
  display: none;
}

.toggle-label {
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #f39c12, #f1c40f);
  border-radius: 50px;
  position: relative;
  cursor: pointer;
  transition: background 0.4s ease;
}

.toggle-ball {
  background: white;
  border-radius: 50%;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 29px;
  height: 29px;
  transition: all 0.4s ease;
  background-image: url('https://cdn.jsdelivr.net/gh/twitter/twemoji@14.0.2/assets/svg/2600.svg'); /* Sun icon */
  background-size: cover;
}

#darkModeToggle:checked + .toggle-label {
  background: linear-gradient(90deg, #2c3e50, #34495e);
}

#darkModeToggle:checked + .toggle-label .toggle-ball {
  transform: translateX(35px);
  background-image: url('https://cdn.jsdelivr.net/gh/twitter/twemoji@14.0.2/assets/svg/1f319.svg'); /* Moon icon */
}

/* Highlight stale last-checked timestamps */
.stale {
  color: #d9534f;
  font-weight: bold;
}

/* Export button spacing on mobile */
#exportCSV {
  margin-top: 10px;
}
#addIpBtn {
  margin-top: 10px;
}
