/*
 * Upcuan Theme 3.3.0.44
 * Global color controls + article list card layout.
 * Values come from CSS variables injected by UpcuanThemePlugin at runtime.
 */

:root {
  --upc-header-color: #274685;
  --upc-body-color: #ffffff;
  --upc-link-color: #087f4b;
  --upc-link-hover-color: #065f46;
}

/* ---------- Global theme colours ---------- */
html,
body,
body.dark,
body[class*="pkp_page_"],
.upc-main,
.page_index_journal,
.current_issue,
.obj_issue_toc,
.obj_issue_toc .section,
.cmp_article_list.articles > li,
.page_issue,
.page_issue_archive,
.page_search,
.page_about,
.page_contact,
.upc-sidebar-zone,
.pkp_structure_sidebar,
.footer,
.footer .upc-footer-v39,
.footer .upc-footer-v39 > .upc-footer-left-stack,
.footer .upc-footer-v39 .upc-footer-menu-grid > .upc-footer-column,
.footer .upc-footer-v39 .upc-footer-grid-row,
.footer .upc-footer-v39 .upc-footer-journal-room,
.footer .upc-footer-v39 > .upc-footer-commitment {
  background-color: var(--upc-body-color, #fff) !important;
}

/* The hero's white wave must join the body when a custom body colour is used. */
.hero-section .wave path {
  fill: var(--upc-body-color, #fff) !important;
}

/* Header follows the same two colours selected for the hero gradient. */
#header.upc-header,
#header.upc-header.header-scrolled,
.upc-mobile-nav {
  background-color: var(--upc-header-color, #274685) !important;
  background-image: linear-gradient(
    to right,
    var(--upc-gradient-header-start, rgba(39,70,133,.94)) 0%,
    var(--upc-gradient-header-end, rgba(61,179,197,.94)) 100%
  ) !important;
}

/* Hyperlink palette across public content. Navigation stays white. */
.upc-main a:not(.btn):not(.obj_galley_link),
.upc-sidebar-zone a,
.footer a,
.upc-auth-main a {
  color: var(--upc-link-color, #087f4b) !important;
  transition: color .18s ease, font-weight .18s ease !important;
}
.upc-main a:not(.btn):not(.obj_galley_link):hover,
.upc-main a:not(.btn):not(.obj_galley_link):focus,
.upc-sidebar-zone a:hover,
.upc-sidebar-zone a:focus,
.footer a:hover,
.footer a:focus,
.upc-auth-main a:hover,
.upc-auth-main a:focus {
  color: var(--upc-link-hover-color, #065f46) !important;
  font-weight: 700 !important;
}

/* Keep utility/header links white regardless of the global link palette. */
#header a,
#header a:hover,
#header a:focus,
.upc-mobile-nav a,
.upc-mobile-nav a:hover,
.upc-mobile-nav a:focus,
.upc-search-link,
.upc-search-link:hover,
.upc-search-link:focus {
  color: #fff !important;
}

/* ---------- Article list cards ---------- */
.cmp_article_list.articles {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}
.cmp_article_list.articles > li {
  margin: 0 0 14px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.cmp_article_list.articles > li:last-child {
  margin-bottom: 0 !important;
}

.obj_article_summary.upc-article-card {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 15px 16px 12px !important;
  background: var(--upc-body-color, #fff) !important;
  border: 1px solid #cbd5e1 !important;
  border-bottom: 6px solid var(--upc-header-color, #087f4b) !important;
  border-radius: 12px !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03) !important;
  color: #334155 !important;
  overflow: hidden !important;
}
.obj_article_summary.upc-article-card:hover {
  box-shadow: 0 6px 20px rgba(15, 23, 42, .07) !important;
}
.obj_article_summary.upc-article-card > .cover {
  display: none !important;
}
.obj_article_summary .upc-article-card-main {
  position: relative !important;
  min-width: 0 !important;
}
.obj_article_summary .upc-article-title,
.obj_article_summary > .upc-article-title {
  display: block !important;
  max-width: calc(100% - 100px) !important;
  margin: 0 0 7px !important;
  padding: 0 !important;
  border: 0 !important;
  font-family: "Roboto", "Helvetica Neue", Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-align: left !important;
}
.obj_article_summary .upc-article-title a {
  display: inline !important;
  color: var(--upc-link-color, #087f4b) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
.obj_article_summary .upc-article-title a:hover,
.obj_article_summary .upc-article-title a:focus {
  color: var(--upc-link-hover-color, #065f46) !important;
  font-weight: 700 !important;
}
.obj_article_summary .upc-article-title .subtitle {
  display: block !important;
  margin-top: 3px !important;
  color: inherit !important;
  font-weight: 600 !important;
}

.obj_article_summary .upc-article-pages {
  position: absolute !important;
  top: 1px !important;
  right: 1px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #334155 !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  white-space: nowrap !important;
}
.obj_article_summary .upc-article-pages .fa {
  font-size: 13px !important;
}

.obj_article_summary .upc-article-meta {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #475569 !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}
.obj_article_summary .upc-article-authors,
.obj_article_summary .authors {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #475569 !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}
.obj_article_summary .author-line {
  display: flex !important;
  align-items: baseline !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
  margin: 0 0 2px !important;
  padding: 0 !important;
}
.obj_article_summary .upc-meta-icon {
  flex: 0 0 auto !important;
  width: 18px !important;
  margin-right: 3px !important;
  color: #111827 !important;
  font-size: 12px !important;
  text-align: left !important;
}
.obj_article_summary .author-name {
  color: #111827 !important;
  font-weight: 600 !important;
}
.obj_article_summary .affiliation {
  color: #64748b !important;
  font-weight: 400 !important;
}
.obj_article_summary .upc-meta-separator {
  white-space: pre !important;
}
.obj_article_summary .orcid-link {
  margin-left: 5px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
}
.obj_article_summary .upc-abstract-views {
  display: flex !important;
  align-items: center !important;
  margin: 3px 0 0 !important;
  padding: 0 !important;
  color: #334155 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}
.obj_article_summary .upc-abstract-views strong {
  color: #111827 !important;
  font-weight: 600 !important;
}

.obj_article_summary .upc-article-actions {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
}
.obj_article_summary .upc-article-actions .galleys_links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.obj_article_summary .upc-article-actions .galleys_links li {
  margin: 0 !important;
  padding: 0 !important;
}
.obj_article_summary .obj_galley_link,
.obj_article_summary .obj_galley_link.btn-primary,
.obj_article_summary .obj_galley_link_supplementary {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  background: var(--upc-body-color, #fff) !important;
  color: #334155 !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 7px rgba(15, 23, 42, .05) !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
}
.obj_article_summary .obj_galley_link.pdf::before {
  content: "\f1c1" !important;
  font-family: FontAwesome !important;
  color: #47627a !important;
  font-size: 14px !important;
  font-weight: normal !important;
}
.obj_article_summary .obj_galley_link:not(.pdf)::before,
.obj_article_summary .obj_galley_link_supplementary::before {
  content: "\f15b" !important;
  font-family: FontAwesome !important;
  color: #47627a !important;
  font-size: 14px !important;
  font-weight: normal !important;
}
.obj_article_summary .obj_galley_link::after,
.obj_article_summary .obj_galley_link_supplementary::after {
  content: "›" !important;
  margin-left: 2px !important;
  color: #47627a !important;
  font-size: 18px !important;
  line-height: .7 !important;
  font-weight: 700 !important;
}
.obj_article_summary .obj_galley_link:hover,
.obj_article_summary .obj_galley_link:focus,
.obj_article_summary .obj_galley_link_supplementary:hover,
.obj_article_summary .obj_galley_link_supplementary:focus {
  color: var(--upc-link-hover-color, #065f46) !important;
  border-color: var(--upc-link-hover-color, #065f46) !important;
  background: var(--upc-body-color, #fff) !important;
  font-weight: 700 !important;
}

.obj_article_summary .upc-doi-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 8px 11px !important;
  background: var(--upc-body-color, #fff) !important;
  color: #334155 !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 7px rgba(15, 23, 42, .05) !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.obj_article_summary .upc-doi-mark {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 25px !important;
  height: 18px !important;
  padding: 0 4px !important;
  color: #294257 !important;
  background: #eef4f7 !important;
  border-radius: 4px !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  text-transform: lowercase !important;
}
.obj_article_summary .upc-pill-arrow {
  color: #47627a !important;
  font-size: 18px !important;
  line-height: .7 !important;
  font-weight: 700 !important;
}
.obj_article_summary .upc-doi-pill:hover,
.obj_article_summary .upc-doi-pill:focus {
  color: var(--upc-link-hover-color, #065f46) !important;
  border-color: var(--upc-link-hover-color, #065f46) !important;
  font-weight: 700 !important;
}

/* Section tab can use the configurable header/accent colour. */
.obj_issue_toc .accordion-button {
  border-color: var(--upc-header-color, #274685) !important;
}

@media (max-width: 767.98px) {
  .obj_article_summary.upc-article-card {
    padding: 14px 14px 11px !important;
    border-radius: 10px !important;
  }
  .obj_article_summary .upc-article-title,
  .obj_article_summary > .upc-article-title {
    max-width: none !important;
    padding-right: 0 !important;
    font-size: 15px !important;
  }
  .obj_article_summary .upc-article-pages {
    position: static !important;
    justify-content: flex-end !important;
    width: 100% !important;
    margin: 0 0 5px !important;
  }
  .obj_article_summary .upc-article-actions {
    gap: 6px !important;
  }
  .obj_article_summary .obj_galley_link,
  .obj_article_summary .obj_galley_link.btn-primary,
  .obj_article_summary .upc-doi-pill {
    max-width: 100% !important;
  }
}

/* Additional surfaces that the legacy Material layer painted white. */
.additional_content table,
.additional_content table td,
.additional_content table th,
.cmp_announcements,
.obj_issue_toc .accordion-button,
.upc-auth-main {
  background-color: var(--upc-body-color, #fff) !important;
}

/* Footer navigation has more specific legacy selectors, so repeat the global palette here. */
.footer .upc-footer-v39 a,
.footer .upc-footer-v39 .upc-footer-menu a {
  color: var(--upc-link-color, #087f4b) !important;
}
.footer .upc-footer-v39 a:hover,
.footer .upc-footer-v39 a:focus,
.footer .upc-footer-v39 .upc-footer-menu a:hover,
.footer .upc-footer-v39 .upc-footer-menu a:focus {
  color: var(--upc-link-hover-color, #065f46) !important;
  font-weight: 700 !important;
}


/* ---------- Dropdowns follow the admin gradient ---------- */
/*
 * Desktop dropdowns intentionally inherit the same runtime gradient variables
 * as the header. This keeps white navigation text readable for every colour
 * combination selected in Appearance > Upcuan Theme.
 */
#header.upc-header .pkp_navigation_primary .dropdown-menu,
#header.upc-header .pkp_navigation_user .dropdown-menu {
  background-color: var(--upc-header-color, #274685) !important;
  background-image: linear-gradient(
    to right,
    var(--upc-gradient-header-start, rgba(39,70,133,.94)) 0%,
    var(--upc-gradient-header-end, rgba(61,179,197,.94)) 100%
  ) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 12px 30px rgba(15,23,42,.22) !important;
}

#header.upc-header .pkp_navigation_primary .dropdown-menu a,
#header.upc-header .pkp_navigation_user .dropdown-menu a,
#header.upc-header .pkp_navigation_primary .dropdown-menu a:visited,
#header.upc-header .pkp_navigation_user .dropdown-menu a:visited {
  color: #fff !important;
  background: transparent !important;
  opacity: 1 !important;
}

#header.upc-header .pkp_navigation_primary .dropdown-menu a:hover,
#header.upc-header .pkp_navigation_primary .dropdown-menu a:focus,
#header.upc-header .pkp_navigation_user .dropdown-menu a:hover,
#header.upc-header .pkp_navigation_user .dropdown-menu a:focus {
  color: #fff !important;
  background: rgba(255,255,255,.14) !important;
  opacity: 1 !important;
}
