@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@400;700&display=swap');
/* ============================================================
   HEADER STYLING FOR JOURNAL PAGES
   ============================================================ */

.pkp_site_name {
    display: flex;
    align-items: center;
}

/* Hide breadcrumbs */
.cmp_breadcrumbs {
    display: none !important;
}

/* Journal title */
.pkp_journal_name {
    margin-left: 20px;
    font-family: "Roboto Condensed", sans-serif;
    font-size: 1.1em;
    font-weight: 700;
    color: #DBEEED;
}

/* ISSN line under journal title */
.pkp_site_title_wrapper .pkp_journal_issn {
    margin-top: 0.1em;
    /*font-family: 'Barlow Condensed', sans-serif; */
    font-weight: 400;
    font-size: 0.5em;                 /* ~1/3 of 1.1em title */
    color: #DBEEED;                    /* same as journal title */
    line-height: 1.2;
}

/* Main menu styling */
#navigationPrimary.pkp_navigation_primary.pkp_nav_list {
    font-family: 'Roboto Condensed', sans-serif !important;
    /*font-style: normal; */
    font-weight: 400 !important; /* Bold weight for main menu items */
    font-size: 1.1em !important; /* Consistent with journal title size */
    /*color: #333333; /* Dark gray for readability */
    /*text-transform: uppercase; /* Matches OJS aesthetic */
    /*list-style: none; /* Remove default list bullets */
    /*margin: 0;
    padding: 0; */
}

/* ============================================================
   FOOTER STYLING
   ============================================================ */

.pkp_structure_footer_wrapper {
    background-color: #0971D3;
}

.pkp_structure_footer,
.custom_footer_content {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.pkp_footer_content {
    color: #DBEEED;
    display: flex;
    align-items: center;
}

.pkp_brand_footer img {
    filter: invert(1);
}

/* Footer links — consistent, no underline */
.pkp_structure_footer a,
.pkp_structure_footer a:visited,
.pkp_structure_footer a:hover,
.pkp_structure_footer a:active,
.pkp_structure_footer a:focus {
    color: inherit !important;
    text-decoration: none !important;
}

/* ============================================================
   RESPONSIVE HEADER BEHAVIOR
   ============================================================ */

@media (max-width: 768px) {
    .pkp_site_name {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .pkp_site_nav_toggle,
    .is_img img {
        flex-shrink: 0 !important;
    }

    .is_img img {
        max-width: 100px !important;
    }

    .pkp_journal_name {
        margin-left: 10px !important;
        max-width: calc(100% - 150px) !important; /* burger + logo + margins */
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        flex-grow: 0 !important;
    }
}

/* ISSN in mobile */
@media (max-width: 768px) {
  .pkp_structure_head .pkp_site_title_wrapper .pkp_journal_issn {
      color: #DBEEED !important;
      font-size: 0.8em;
      max-width: calc(100% - 150px);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
  }
}

/* Hide <h1> title on contact page */
body.pkp_page_about.pkp_op_contact h1 {
    display: none !important;
}

/* ============================================================
   SIDEBAR BLOCK STYLING
   ============================================================ */

/* --- Block container --- */
.pkp_structure_sidebar .pkp_block {
    border: 1px solid #00cccc !important;
    border-radius: 8px !important;
    background-color: #e6f7ff !important;
    padding: 10px !important;
    margin-bottom: 15px !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1) !important;
}

/* --- Block header (e.g., “Information”) --- */
.pkp_structure_sidebar .pkp_block .title {
    background-color: #0971D3 !important;
    color: #ffffff !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    font-family: "Roboto Condensed", sans-serif !important;
    letter-spacing: 1px !important;
    padding: 6px 10px !important;
    border-radius: 5px 5px 0 0 !important;
    margin: -10px -10px 10px -10px !important;
    border-bottom: 2px solid #009999 !important;
}

/* Hover effect for header */
.pkp_structure_sidebar .pkp_block .title:hover {
    background-color: #00e6e6 !important;
    color: #002626 !important;
    cursor: default;
}

/* ============================================================
   BLOCK MENU ITEMS
   ============================================================ */

/* Remove bullets and align items inline */
.pkp_structure_sidebar .pkp_block .content ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

/* Inline items with separator */
.pkp_structure_sidebar .pkp_block .content ul li {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
}

.pkp_structure_sidebar .pkp_block .content ul li:not(:last-child)::after {
    content: " | " !important;
    color: #009999 !important;
    margin: 0 4px !important;
}

/* Links inside blocks */
.pkp_structure_sidebar .pkp_block .content a {
    display: inline !important;
    color: #004466 !important;
    font-size: 1.05em !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: all 0.2s ease-in-out !important;
}

/* Hover effect for links */
.pkp_structure_sidebar .pkp_block .content a:hover {
    color: #00cccc !important;
    font-weight: bold !important;
}

/* === Single-column layout for Announcements + auto-hide empty 'more' section === */
.cmp_announcements {
    display: block !important;
}

.cmp_announcements .obj_announcement_summary,
.cmp_announcements .more,
.cmp_announcements .more article {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 1.5em 0 !important;
}

/* --- Hide 'more' container if empty (no past announcements) --- */
.cmp_announcements .more:empty,
.cmp_announcements .more:not(:has(article)) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ============================================================
   ANNOUNCEMENT SECTION — MATCH MAIN BODY FONT (IMPROVED)
   ============================================================ */

.cmp_announcements,
.cmp_announcements .obj_announcement_summary,
.cmp_announcements .obj_announcement_summary h2,
.cmp_announcements .obj_announcement_summary .summary,
.cmp_announcements .obj_announcement_summary .date,
.cmp_announcements .obj_announcement_summary .read_more,
.obj_announcement_full,
.obj_announcement_full h1,
.obj_announcement_full h2,
.obj_announcement_full p,
.obj_announcement_full a {
    font-family: "Noto Serif", serif !important; /* Match main body */
        font-weight: normal !important;
    font-size: 1em !important;
   }

/* ==== HOMEPAGE ORDER: Intro -> Announcements -> Current Issue ==== */
.page_index_journal {
  display: flex !important;
  flex-direction: column !important;
  gap: 1.25rem; /* nice breathing room between blocks */
}

/* Put the introduction first */
.page_index_journal > .additional_content {
  order: 0 !important;
  
}

/* Announcements second */
.page_index_journal > .cmp_announcements {
  order: 1 !important;
  }

/* Current Issue third */
.page_index_journal > .current_issue {
  order: 2 !important;
  }

/* (Optional) tighten headings’ spacing a touch when reordered */
.page_index_journal > .additional_content h2,
.page_index_journal > .cmp_announcements h2,
.page_index_journal > .current_issue h2 {
  margin-top: 0.25rem;
}

/* Remove underline from links inside the additional_content section */
.page_index_journal > .additional_content a {
    text-decoration: none !important;
    color: #003366 !important; /* dark blue */
}

/* Hover effect: underline + bold */
.page_index_journal > .additional_content a:hover {
    font-weight: bold !important;
}

/* Hide default Published block */
.obj_article_details .entry_details .item.published {
  display: none;
}

/* Restore bottom border for Dates plugin block */
.obj_article_details .entry_details .item.plugin_dates {
  border-bottom: 1px solid var(--pkp-border-light, #ddd);
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}

/* Hide the checkbox */
.obj_article_details .references_toggle {
  position: absolute;
  left: -9999px;
}

/* Hide the checkbox */
.obj_article_details .references_toggle {
  position: absolute;
  left: -9999px;
}

/* Default: hide all references after the first 5 */
.obj_article_details .references_value p:nth-child(n+6) {
  display: none;
}

/* When expanded: show all */
.obj_article_details .references_toggle:checked ~ .references_value p {
  display: block;
}

/* Button at the bottom */
.obj_article_details .references_button {
  display: block;
  margin-top: 0.35em;
  cursor: pointer;
  font-weight: 600;
  text-align: left;
}

/* Collapsed: show ellipsis + Show all */
.obj_article_details .references_button::before {
  content: "...";
  display: block;
  font-weight: normal;
}

.obj_article_details .references_button::after {
  content: "Show all >>>";
  display: block;
}

/* Expanded: show only Show less */
.obj_article_details .references_toggle:checked ~ .references_button::before {
  content: "";
  display: none;
}

.obj_article_details .references_toggle:checked ~ .references_button::after {
  content: "<<< Show less";
  display: block;
}

/* Style References toggle like a normal link */
.obj_article_details .references_button {
  color: #003366;              /* same as site links */
  text-decoration: none;
  font-weight: 500;
}

/* Hover / focus behavior like links */
.obj_article_details .references_button:hover,
.obj_article_details .references_button:focus {
  text-decoration: none;
  font-weight: bold;
  color: #2986e3;
}

/* Optional: cursor */
.obj_article_details .references_button {
  cursor: pointer;
}
/* ISSUE TOC: reduce ONLY the spacing after each section */
.page_issue .obj_issue_toc .sections .section {
  margin-bottom: 0.75rem !important;   /* change value as needed */
  padding-bottom: 0 !important;        /* in case theme adds bottom padding */
}
/* ISSUE TOC: reduce space between the heading and the sections */
.page_issue .obj_issue_toc .heading {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.page_issue .obj_issue_toc .sections {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Remove bottom margin from the last elements inside heading */
.page_issue .obj_issue_toc .heading .published,
.page_issue .obj_issue_toc .heading .description,
.page_issue .obj_issue_toc .heading .description p {
  margin-bottom: 0 !important;
}

/* If the cover image adds spacing */
.page_issue .obj_issue_toc .heading .cover,
.page_issue .obj_issue_toc .heading .cover img {
  margin-bottom: 0 !important;
  display: block;
}
/* ============================================================
   HOMEPAGE (page_index_journal): CURRENT ISSUE TOC SPACING
   Controls: heading-to-sections gap, and spacing after each section
   ============================================================ */

/* Reduce space between the TOC heading block and sections list */
.page_index_journal .current_issue .obj_issue_toc .heading {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.page_index_journal .current_issue .obj_issue_toc .sections {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Remove bottom margin from common last elements inside heading */
.page_index_journal .current_issue .obj_issue_toc .heading .published,
.page_index_journal .current_issue .obj_issue_toc .heading .description,
.page_index_journal .current_issue .obj_issue_toc .heading .description p,
.page_index_journal .current_issue .obj_issue_toc .heading .cover,
.page_index_journal .current_issue .obj_issue_toc .heading .cover img {
  margin-bottom: 0 !important;
}

/* Reduce ONLY the spacing after each section (leave top spacing untouched) */
.page_index_journal .current_issue .obj_issue_toc .sections .section {
  margin-bottom: 0.75rem !important; /* adjust like you did on issue page */
  padding-bottom: 0 !important;
}

/* Tighten spacing for section headings (homepage uses h3) */
.page_index_journal .current_issue .obj_issue_toc .sections .section > h3 {
  margin: 0 0 0.5rem 0 !important;
  padding: 0 !important;
  border-bottom: 0 !important; /* defensive: remove any heading underline */
}

/* Remove default list spacing inside each section */
.page_index_journal .current_issue .obj_issue_toc .sections .cmp_article_list {
  margin: 0 0 0.75rem 0 !important;
  padding: 0 !important;
}

.page_index_journal .current_issue .obj_issue_toc .sections .cmp_article_list > li {
  margin: 0 0 2rem 0 !important;
  padding: 0 !important;
}

/* Optional: tighten internal spacing in article summaries (homepage titles are h4) */
.page_index_journal .current_issue .obj_issue_toc .sections .obj_article_summary .title {
  margin: 0 0 0.25rem 0 !important;
}

.page_index_journal .current_issue .obj_issue_toc .sections .obj_article_summary .meta {
  margin: 0 0 0.35rem 0 !important;
}

.page_index_journal .current_issue .obj_issue_toc .sections .obj_article_summary .galleys_links {
  margin: 0 !important;
  padding: 0 !important;
}
/* ============================================================
   HOMEPAGE: hide section separator when section heading is hidden
   (i.e., .section has no direct <h3>)
   ============================================================ */

.page_index_journal .current_issue .obj_issue_toc .sections .section:not(:has(> h3)) {
  border-top: 0 !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Defensive: some themes draw the line via pseudo-elements */
.page_index_journal .current_issue .obj_issue_toc .sections .section:not(:has(> h3))::before,
.page_index_journal .current_issue .obj_issue_toc .sections .section:not(:has(> h3))::after {
  display: none !important;
  content: none !important;
  border: 0 !important;
}
/* ============================================================
   HOMEPAGE: increase space below Published date
   when section titles are hidden
   ============================================================ */

/* Add space before the first article when NO section heading exists */
.page_index_journal
.current_issue
.obj_issue_toc
.sections
.section:first-child:not(:has(> h3)) {
  margin-top: 3.5rem !important; /* adjust as needed */
}

/* Defensive: ensure the article list itself has breathing room */
.page_index_journal
.current_issue
.obj_issue_toc
.sections
.section:first-child:not(:has(> h3))
.cmp_article_list {
  margin-top: 0 !important;
}

/* ============================================================
   ISSUE VIEW: remove section separator when section title is hidden
   (Issue view uses <h2> for section titles)
   ============================================================ */

.page_issue .obj_issue_toc .sections .section:not(:has(> h2)) {
  border-top: 0 !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Defensive: remove pseudo separators if the theme uses them */
.page_issue .obj_issue_toc .sections .section:not(:has(> h2))::before,
.page_issue .obj_issue_toc .sections .section:not(:has(> h2))::after {
  display: none !important;
  content: none !important;
}
.page_issue .obj_issue_toc .sections .section:not(:has(> h2)) > .cmp_article_list {
  border-top: 0 !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}


/* ============================================================
   ISSUE VIEW: add extra space ONLY before the first article list
   (only for the first section when section titles are hidden)
   ============================================================ */

/* Apply spacing ONLY to the first section */
.page_issue .obj_issue_toc .sections
> .section:first-child:not(:has(> h2))
> .cmp_article_list {
  margin-top: 3.5rem !important;
}

/* Ensure other hidden-title sections do NOT add extra top spacing */
.page_issue .obj_issue_toc .sections
> .section:not(:first-child):not(:has(> h2))
> .cmp_article_list {
  margin-top: 0 !important;
}
/* HOMEPAGE: add extra space after the last section before "View All Issues" */
.page_index_journal .current_issue .obj_issue_toc .sections .section:last-child {
  margin-bottom: 3.5rem !important;  /* increase/decrease as desired */
}

/* Homepage only: add space between Published date and sections (mobile only) */
@media (max-width: 768px) {
  body.pkp_page_index.pkp_op_index .page_index_journal .current_issue .obj_issue_toc .heading .published {
    margin-bottom: 1.25rem !important;
  }
}