/* Open Library Publications — Journal Nav Polish — 2026-08-28 v1
 * Clean active/hover indicator for Home / Current / Archives / About.
 * Uses an inset pseudo underline so adjacent items never merge into one long rail.
 */

:root{
  --olnav-red:#d32632;
  --olnav-red-deep:#a91823;
  --olnav-hover:#fff7f8;
}

/* Normalize all top-level journal navigation items. */
html body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
  margin:0!important;
  padding:0 16px!important;
  border:0!important;
  border-bottom:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#253044!important;
  line-height:1.2!important;
  text-decoration:none!important;
  box-shadow:none!important;
  outline:0!important;
  transition:color .16s ease,background-color .16s ease!important;
}

/* One consistent inset underline. */
html body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a::after,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a::after{
  position:absolute!important;
  left:12px!important;
  right:12px!important;
  bottom:0!important;
  width:auto!important;
  height:2px!important;
  margin:0!important;
  content:""!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--olnav-red)!important;
  opacity:0!important;
  transform:scaleX(.45)!important;
  transform-origin:center!important;
  transition:opacity .16s ease,transform .16s ease!important;
  pointer-events:none!important;
}

/* Hover/focus: subtle surface + clean short line. */
html body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a:hover,
html body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a:focus-visible,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a:hover,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a:focus-visible{
  border:0!important;
  border-bottom:0!important;
  border-radius:8px 8px 0 0!important;
  background:var(--olnav-hover)!important;
  color:var(--olnav-red-deep)!important;
}
html body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a:hover::after,
html body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a:focus-visible::after,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a:hover::after,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a:focus-visible::after{
  opacity:1!important;
  transform:scaleX(1)!important;
}

/* Active route: same geometry as hover, but no filled tab. */
html body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a[aria-current="page"],
html body.openlib-journal-page.pkp_page_index.pkp_op_index .openlib_journal_nav .openlib_journal_home_nav > li > a,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a[aria-current="page"],
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a.openlib-nav-active,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li.current > a{
  border:0!important;
  border-bottom:0!important;
  background:transparent!important;
  color:var(--olnav-red)!important;
}
html body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a[aria-current="page"]::after,
html body.openlib-journal-page.pkp_page_index.pkp_op_index .openlib_journal_nav .openlib_journal_home_nav > li > a::after,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a[aria-current="page"]::after,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a.openlib-nav-active::after,
html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li.current > a::after{
  opacity:1!important;
  transform:scaleX(1)!important;
}

/* When an active item is hovered, keep exactly the same indicator geometry. */
html body.openlib-journal-page .openlib_journal_nav a[aria-current="page"]:hover,
html body.openlib-journal-page .openlib_journal_nav a.openlib-nav-active:hover,
html body.openlib-journal-page .openlib_journal_nav li.current > a:hover{
  background:var(--olnav-hover)!important;
}

/* Dark mode. */
html[data-openlib-color-mode="dark"] body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a,
html[data-openlib-color-mode="dark"] body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a{
  color:#d5dbe5!important;
}
html[data-openlib-color-mode="dark"] body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a:hover,
html[data-openlib-color-mode="dark"] body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a:focus-visible,
html[data-openlib-color-mode="dark"] body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a:hover,
html[data-openlib-color-mode="dark"] body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a:focus-visible{
  background:#25191d!important;
  color:#ff9aa3!important;
}
html[data-openlib-color-mode="dark"] body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a::after,
html[data-openlib-color-mode="dark"] body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a::after{
  background:#ef4b56!important;
}

@media (max-width:700px){
  html body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a,
  html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a{
    min-height:46px!important;
    padding:0 12px!important;
  }
  html body.openlib-journal-page .openlib_journal_nav .openlib_journal_home_nav > li > a::after,
  html body.openlib-journal-page .openlib_journal_nav .pkp_navigation_primary > li > a::after{
    left:9px!important;
    right:9px!important;
  }
}
