:root {
  --bs-primary: var(--iw-led-4);
  --bs-primary-rgb: 31, 168, 14;
  --bs-primary-text-emphasis: var(--iw-led-5);
  --bs-primary-bg-subtle: #d8f5d0;
  --bs-primary-border-subtle: #b8e8ad;

  --bs-success: var(--iw-led-4);
  --bs-success-rgb: 31, 168, 14;
  --bs-success-text-emphasis: var(--iw-led-5);
  --bs-success-bg-subtle: #d8f5d0;
  --bs-success-border-subtle: #b8e8ad;

  --bs-link-color: var(--iw-led-4);
  --bs-link-hover-color: var(--iw-led-5);
  --bs-focus-ring-color: rgba(54, 209, 26, 0.25);
}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--iw-led-4);
  --bs-btn-border-color: var(--iw-led-4);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--iw-led-3);
  --bs-btn-hover-border-color: var(--iw-led-3);
  --bs-btn-focus-shadow-rgb: 54, 209, 26;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--iw-led-5);
  --bs-btn-active-border-color: var(--iw-led-5);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: var(--iw-led-4);
  --bs-btn-disabled-border-color: var(--iw-led-4);
}

.btn-outline-primary {
  --bs-btn-color: var(--iw-led-4);
  --bs-btn-border-color: var(--iw-led-4);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--iw-led-4);
  --bs-btn-hover-border-color: var(--iw-led-4);
  --bs-btn-focus-shadow-rgb: 54, 209, 26;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--iw-led-5);
  --bs-btn-active-border-color: var(--iw-led-5);
  --bs-btn-disabled-color: var(--iw-led-4);
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: var(--iw-led-4);
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--iw-led-4);
  --bs-btn-border-color: var(--iw-led-4);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--iw-led-3);
  --bs-btn-hover-border-color: var(--iw-led-3);
  --bs-btn-focus-shadow-rgb: 54, 209, 26;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--iw-led-5);
  --bs-btn-active-border-color: var(--iw-led-5);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: var(--iw-led-4);
  --bs-btn-disabled-border-color: var(--iw-led-4);
}

.btn-outline-success {
  --bs-btn-color: var(--iw-led-4);
  --bs-btn-border-color: var(--iw-led-4);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--iw-led-4);
  --bs-btn-hover-border-color: var(--iw-led-4);
  --bs-btn-focus-shadow-rgb: 54, 209, 26;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--iw-led-5);
  --bs-btn-active-border-color: var(--iw-led-5);
  --bs-btn-disabled-color: var(--iw-led-4);
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: var(--iw-led-4);
}

/* Main navbar: hover indicator for nav links (LED green + glow + animated underline) */
.navbar .nav-link {
  position: relative;
  transition: color .15s ease, text-shadow .15s ease;
}
.navbar .nav-link:hover,
.navbar .nav-link:focus-visible {
  text-shadow: 0 0 12px var(--iw-led-glow);
}
.navbar .nav-link::after {
  content: "";
  position: absolute;
  left: 0.5rem;
  right: 0.5rem;
  bottom: 0.25rem;
  height: 2px;
  border-radius: 999px;
  background: var(--iw-led-2);
  box-shadow: 0 0 8px var(--iw-led-glow);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .18s ease;
}
.navbar .nav-link:hover::after,
.navbar .nav-link:focus-visible::after {
  transform: scaleX(1);
}

/* Dropdown items (Competitions/Account menus, incl. the Logout button) */
.navbar .dropdown-item:hover,
.navbar .dropdown-item:focus {
  color: var(--iw-led-1);
  background-color: rgba(54, 209, 26, .12);
}

@media (prefers-reduced-motion: reduce) {
  .navbar .nav-link,
  .navbar .nav-link::after {
    transition: none;
  }
}
