:root {
  /* Light Theme Variables */
  --bs-body-bg: #f8f9fa;
  --bs-body-color: #212529;
  --card-bg: #ffffff;
  --card-border-color: #dee2e6;
  --accent-color: #0d6efd;
  --accent-glow: rgba(13, 110, 253, 0.2);
  --danger-color: #dc3545;
  --danger-glow: rgba(220, 53, 69, 0.25);
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Inter", "Roboto", "Helvetica Neue", Arial, sans-serif;
  background-color: var(--bs-body-bg);
}

.display-5, .accordion-header {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
}

.main-header {
  color: var(--bs-body-color);
  text-shadow: none; /* Removed shadow for a cleaner light look */
}

.accordion-item {
  background-color: var(--card-bg) !important;
  border: 1px solid var(--card-border-color) !important;
  border-radius: 12px !important;
  margin-bottom: 1rem;
  transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out, border-color 0.2s ease-in-out;
}
.accordion-item:hover {
  transform: translateY(-8px);
  border-color: var(--accent-color);
  box-shadow: 0 0 20px 0px var(--accent-glow);
}
.accordion-header button {
    border-radius: 12px !important;
}
.accordion-button {
    background-color: var(--card-bg) !important;
    color: var(--bs-body-color) !important;
    font-size: 1.1rem;
}
.accordion-button:not(.collapsed) {
  box-shadow: none;
}
.accordion-button::after {
  /* Default Bootstrap arrow color is used now, no filter needed */
  filter: none;
}
.accordion-body {
    color: #495057;
}

@keyframes blink-danger {
  50% {
    border-color: var(--danger-color);
    box-shadow: 0 0 15px 5px var(--danger-glow);
  }
}

.group-blinking-danger {
  animation: blink-danger 2s infinite ease-in-out;
}
.group-blinking-danger:hover {
  animation: none;
  border-color: var(--danger-color);
  box-shadow: 0 0 20px 0px var(--danger-glow);
}

.logo { max-width: 150px; height: auto; }
footer { border-top: 1px solid var(--card-border-color); }
footer a { color: var(--accent-color); text-decoration: none; }
footer a:hover { text-decoration: underline; }
