/* Change color scheme from purple to blue - Override just-the-docs theme */
/* Links - be more specific */
.main-content a,
.main-content a:not([class]),
.side-bar a,
.nav-list-link,
a {
  color: #2c84fa !important;
}

.main-content a:hover,
.main-content a:focus,
.side-bar a:hover,
.side-bar a:focus,
.nav-list-link:hover,
.nav-list-link:focus {
  color: #2869e6 !important;
}

/* Highlight the "LRAC 2.0 Challenge" external nav link in red */
.nav-list-link[href*="lrac2.0"],
.nav-list-link[href*="lrac2.0"]:hover,
.nav-list-link[href*="lrac2.0"]:focus {
  color: #e02424 !important;
}

/* Highlight the "CSL Special Issue" external nav link in red */
.nav-list-link[href*="special-issue"],
.nav-list-link[href*="special-issue"]:hover,
.nav-list-link[href*="special-issue"]:focus {
  color: #e02424 !important;
}

/* Navigation active states */
.nav-list-item .nav-list-link.active,
.nav-list-item .nav-list-link.active:hover {
  color: #2869e6 !important;
  background-color: rgba(44, 132, 250, 0.1) !important;
}

/* Primary buttons */
.btn-primary {
  background-color: #2c84fa !important;
  border-color: #2c84fa !important;
}

#menu-button .icon {
  color: #2c84fa !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background-color: #2869e6 !important;
  border-color: #2869e6 !important;
}

/* Search highlighting */
.search-result-highlight {
  background-color: rgba(44, 132, 250, 0.1) !important;
}

/* Site title and button hover effects 
.site-title:hover {
  background-image: linear-gradient(
    -90deg,
    rgba(44, 132, 250, 1) 0%,
    rgba(44, 132, 250, 0.8) 80%,
    rgba(44, 132, 250, 0) 100%
  ) !important;
}*/

.site-button:hover {
  background-image: linear-gradient(
    -90deg,
    rgba(44, 132, 250, 1) 0%,
    rgba(44, 132, 250, 0.8) 100%
  ) !important;
}

/* Breadcrumb links */
.breadcrumb-nav-list-item a { 
  color: #2c84fa !important;
}

.breadcrumb-nav-list-item a:hover {
  color: #2869e6 !important;
}

/* Footer links */
.site-footer a {
  color: #2c84fa !important;
}

.site-footer a:hover {
  color: #2869e6 !important;
}

.site-logo {
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  max-width: 200px;
  height: 60px;
  margin: 0 auto;
}

/* Keep logo on left when navbar collapses on narrow screens */
@media screen and (max-width: 50rem) {
  .site-header {
    justify-content: flex-start !important;
  }
  
  .site-title {
    margin-left: 1rem !important;
    margin-right: auto !important;
  }
  
  .site-logo {
    margin: 0 !important;
  }
}

.main-content .anchor-heading svg {
  color: #2c84fa !important;
}

@media screen and (min-width: 50rem) {
  .main {
    margin-left: max(16.5rem, (100% - 66.5rem) / 2 + 16.5rem) !important;
  }
}

/* Evaluation battery table (Rules page) - shrink to avoid horizontal scrolling */
.eval-battery-table {
  font-size: 0.72rem;
  table-layout: fixed;
  width: 100%;
}

.eval-battery-table th,
.eval-battery-table td {
  padding: 0.35rem 0.4rem;
  word-wrap: break-word;
}

/* Resource link icons (paper, poster, presentation, github, demo) */
.resource-links {
  display: inline-flex;
  align-items: center;
  gap: 0;
  white-space: nowrap;
  vertical-align: middle;
}

/* Pull adjacent icons together: cancels the per-link padding (4px) plus part
   of each SVG's internal whitespace. Adjacent-sibling selector keeps the first
   icon's spacing from the title intact. */
.resource-link + .resource-link {
  margin-left: -3px;
}

.resource-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  color: #2c84fa !important;
  border-radius: 5px;
  padding: 2px;
  line-height: 0;
  transition: color 0.15s ease, background-color 0.15s ease, transform 0.15s ease;
}

.resource-link:hover,
.resource-link:focus {
  color: #2869e6 !important;
  background-color: rgba(44, 132, 250, 0.12);
  transform: translateY(-1px);
}

.resource-link svg {
  display: block;
  width: 16px;
  height: 16px;
}

/* Registration/status hero banner (see _includes/reg-hero.html) */
@keyframes regHeroPulse {
  0%   { box-shadow: 0 0 0 0 rgba(255,255,255,0.7); }
  70%  { box-shadow: 0 0 0 12px rgba(255,255,255,0); }
  100% { box-shadow: 0 0 0 0 rgba(255,255,255,0); }
}
@keyframes regHeroRoll {
  0%, 45%  { transform: translateY(0); }
  50%, 95% { transform: translateY(-3.6em); }
  100%     { transform: translateY(-7.2em); }
}
.reg-hero__dot { animation: regHeroPulse 2s infinite; }
.reg-hero__viewport { position:relative; overflow:hidden; height:3.6em; flex:1 1 auto; }
.reg-hero__track { animation: regHeroRoll 9s infinite; }
.reg-hero__slide { height:3.6em; display:flex; flex-direction:column; justify-content:center; line-height:1.25; }
.reg-hero__title { font-weight:800; font-size:1.2rem; letter-spacing:0.01em; }
.reg-hero__sub { font-size:0.88rem; opacity:0.95; }
.reg-hero__link { position:absolute; inset:0; z-index:1; border-radius:999px; }
@media (prefers-reduced-motion: reduce) {
  .reg-hero__dot { animation: none; }
  .reg-hero__track { animation: none; }
}
