/* KSI OJS style sheet 1.0.0 | Site index (all pages; site-only rules are scoped) | generated, do not edit */
/* Site style sheet: loaded on every page of the install, so nothing here may override a journal. Accent is set only on the site index. */
body:has(.page_index_site) { --ksi-accent: #16181c; --ksi-on-accent: #ffffff; }
/* ==========================================================================
   Knowledge Sphere International — OJS journal style sheet (Modernist Colour)
   Target: OJS 3.5.0.x, Default theme, uploaded per journal via
   Settings > Website > Appearance > Advanced > Journal style sheet.
   Scope: public (frontend) pages only. OJS does not load the journal style
   sheet in the editorial back office, so workflows are unaffected.
   Source of truth: ksi-design-system skill. Do not edit dist/ by hand;
   edit src/ and run `node ojs/theme/build.mjs`.
   ========================================================================== */

:root {
  /* Ground and ink */
  --ksi-white: #ffffff;
  --ksi-grey: #f2f2f0;
  --ksi-ink: #16181c;
  --ksi-ink-2: #4d5056;
  --ksi-rule: #dcdcd8;
  --ksi-signal: #f2c230;      /* search and essential notices only */
  --ksi-focus: #16181c;

  /* Type */
  --ksi-font: "Archivo", "Helvetica Neue", Arial, system-ui, sans-serif;
  --ksi-text: 1rem;
  --ksi-read: 1.0625rem;
  --ksi-lh: 1.6;
  --ksi-measure: 70ch;

  /* Spacing and shape */
  --ksi-gap: 3px;
  --ksi-s1: .5rem; --ksi-s2: 1rem; --ksi-s3: 1.5rem; --ksi-s4: 2rem; --ksi-s6: 3rem;
  --ksi-radius: 0;
  --ksi-max: 75rem;

  /* Journal accent (set per journal by the build): --ksi-accent, --ksi-on-accent */
}

/* ---- Base --------------------------------------------------------------- */
body,
.pkp_structure_page {
  background: var(--ksi-white);
  color: var(--ksi-ink);
  font-family: var(--ksi-font);
  font-size: var(--ksi-text);
  line-height: var(--ksi-lh);
}

.pkp_structure_page h1, .pkp_structure_page h2, .pkp_structure_page h3,
.pkp_structure_page h4, .pkp_structure_page .page_title {
  font-family: var(--ksi-font);
  color: var(--ksi-ink);
  letter-spacing: -0.005em;
}
.pkp_structure_main h1, .pkp_structure_main .page_title {
  font-stretch: 75%;
  font-weight: 800;
  font-size: clamp(1.75rem, 1.4rem + 1.4vw, 2.5rem);
  line-height: 1.1;
  margin: 0 0 var(--ksi-s3);
}
.pkp_structure_main h2 {
  font-stretch: 75%;
  font-weight: 800;
  font-size: 1.5rem;
  line-height: 1.2;
}
.pkp_structure_main h3 { font-weight: 700; font-size: 1.15rem; }

.pkp_structure_page a { color: var(--ksi-ink); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .18em; }
.pkp_structure_page a:hover { text-decoration-thickness: 2px; text-decoration-color: var(--ksi-accent); }

/* Visible keyboard focus everywhere */
.pkp_structure_page a:focus-visible,
.pkp_structure_page button:focus-visible,
.pkp_structure_page input:focus-visible,
.pkp_structure_page select:focus-visible,
.pkp_structure_page textarea:focus-visible {
  outline: 3px solid var(--ksi-focus);
  outline-offset: 2px;
  box-shadow: 0 0 0 5px var(--ksi-signal);
}

/* Reading text */
.pkp_structure_main p,
.pkp_structure_main li { max-width: var(--ksi-measure); }
.obj_article_details .abstract p,
.page_about p, .page_policies p, .page_static p {
  font-size: var(--ksi-read);
  line-height: 1.65;
}

/* Remove decorative effects inherited from earlier custom CSS */
.pkp_structure_page *,
.pkp_structure_page *::before,
.pkp_structure_page *::after {
  text-shadow: none;
}
.pkp_structure_page .pkp_block,
.pkp_structure_page .obj_article_summary,
.pkp_structure_page .obj_issue_summary,
.pkp_structure_page .current_issue,
.pkp_structure_page .cmp_announcements > *,
.pkp_structure_page .pkp_structure_main {
  box-shadow: none;
  border-radius: var(--ksi-radius);
  background-image: none;
}

/* ---- Header: publisher strip + journal band ---------------------------- */
.pkp_structure_head {
  background: var(--ksi-accent);
  border-bottom: 0;
  position: relative;
}
/* Publisher endorsement strip (pure CSS, no template change) */
.pkp_structure_head::before {
  content: "A Knowledge Sphere International journal";
  display: block;
  background: var(--ksi-ink);
  color: var(--ksi-white);
  font: 600 .75rem/1 var(--ksi-font);
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: .55rem max(1rem, calc((100% - var(--ksi-max)) / 2 + 1rem));
}
.pkp_head_wrapper {
  padding-top: var(--ksi-s3);
  background: transparent;
}
.pkp_site_name_wrapper { background: transparent; }
.pkp_site_name .is_text,
.pkp_site_name > a {
  color: var(--ksi-on-accent) !important; /* Default theme sets colour from its own option */
  font-family: var(--ksi-font);
  font-stretch: 75%;
  font-weight: 800;
  font-size: clamp(1.6rem, 1.2rem + 1.6vw, 2.6rem);
  line-height: 1.05;
  text-decoration: none;
  white-space: normal;
}
.pkp_site_name .is_img img { max-height: 5rem; width: auto; }

/* Primary navigation: flat bar under the band */
.pkp_navigation_primary_row {
  background: var(--ksi-accent);
  border-top: 1px solid color-mix(in srgb, var(--ksi-on-accent) 35%, transparent);
  margin-top: var(--ksi-s3);
}
.pkp_navigation_primary > li > a,
.pkp_navigation_search_wrapper a {
  color: var(--ksi-on-accent) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font: 600 .95rem/1 var(--ksi-font);
  padding: .9rem .9rem;
  margin: 0;
  text-decoration: none;
  box-shadow: none !important;
}
.pkp_navigation_primary > li > a:hover,
.pkp_navigation_primary > li > a:focus,
.pkp_navigation_primary > li.current > a {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: .3em;
}
.pkp_navigation_primary ul, /* dropdowns */
.pkp_navigation_primary .dropdown-menu {
  background: var(--ksi-white);
  border: 1px solid var(--ksi-rule);
  border-top: 3px solid var(--ksi-ink);
  border-radius: 0;
  box-shadow: none;
}
.pkp_navigation_primary ul a { color: var(--ksi-ink) !important; font-weight: 500; }

/* Search: the one place signal yellow is used */
.pkp_navigation_search_wrapper a.headerSearchPrompt,
.pkp_navigation_search_wrapper a {
  background: var(--ksi-signal) !important;
  color: var(--ksi-ink) !important;
}

/* User menu (top right) */
.pkp_navigation_user_wrapper { top: 2.6rem; }
.pkp_navigation_user > li > a,
.pkp_navigation_user_wrapper a {
  color: var(--ksi-on-accent) !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: .85rem;
}
.pkp_navigation_user ul a { color: var(--ksi-ink) !important; }
.pkp_navigation_user ul { border-radius: 0; box-shadow: none; border: 1px solid var(--ksi-rule); }

/* ---- Layout ------------------------------------------------------------- */
.pkp_structure_content { padding-top: var(--ksi-s4); } /* keep Default theme widths */
.pkp_structure_main::before, .pkp_structure_main::after { display: none; } /* Default theme column rules */
.pkp_structure_main { background: transparent; }

/* Breadcrumbs */
.cmp_breadcrumbs { font-size: .85rem; color: var(--ksi-ink-2); margin-bottom: var(--ksi-s2); }
.cmp_breadcrumbs a { color: var(--ksi-ink-2); }

/* ---- Sidebar blocks ----------------------------------------------------- */
.pkp_structure_sidebar .pkp_block {
  background: var(--ksi-grey);
  border: 0;
  border-top: 3px solid var(--ksi-ink);
  margin: 0 0 var(--ksi-gap);
  padding: var(--ksi-s2) var(--ksi-s2) var(--ksi-s3);
}
.pkp_block .title,
.pkp_block h2, .pkp_block h3 {
  font: 800 1.05rem/1.2 var(--ksi-font);
  font-stretch: 75%;
  color: var(--ksi-ink) !important;
  text-transform: none;
  letter-spacing: 0;
  background: transparent !important;
  padding: 0;
  margin: 0 0 .6rem;
  border: 0;
}
.pkp_block .content a,
.pkp_block a {
  color: var(--ksi-ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
}
.pkp_block ul { list-style: none; padding: 0; margin: 0; }
.pkp_block li { border-top: 1px solid var(--ksi-rule); padding: .45rem 0; }
.pkp_block li:first-child { border-top: 0; }
.block_make_submission a,
.block_make_submission_link {
  display: block;
  background: var(--ksi-accent) !important;
  color: var(--ksi-on-accent) !important;
  text-align: center;
  padding: .75rem 1rem !important;
  text-decoration: none;
  font-weight: 700;
}

/* ---- Homepage ----------------------------------------------------------- */
.page_index_journal .homepage_image img { width: 100%; height: auto; display: block; }
.page_index_journal .journal-description,
.page_index_journal .additional_content {
  border-top: 3px solid var(--ksi-ink);
  padding-top: var(--ksi-s2);
  margin-top: var(--ksi-s4);
}
.page_index_journal .current_issue {
  border-top: 3px solid var(--ksi-ink);
  padding-top: var(--ksi-s2);
  margin-top: var(--ksi-s4);
  background: transparent;
}
.page_index_journal .current_issue > h2 {
  font-size: .8rem;
  font-weight: 700;
  font-stretch: 100%;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ksi-ink-2);
  margin: 0 0 .5rem;
}
.current_issue_title { font: 800 1.6rem/1.15 var(--ksi-font); font-stretch: 75%; }
.page_index_journal .read_more {
  display: inline-block;
  font-weight: 700;
  margin-top: var(--ksi-s2);
}

/* ---- Issue table of contents and article summaries ----------------------- */
.obj_issue_toc .heading { border-bottom: 1px solid var(--ksi-rule); padding-bottom: var(--ksi-s2); }
.obj_issue_toc .cover img { border: 1px solid var(--ksi-rule); }
.obj_issue_toc .sections .section > h2,
.obj_issue_toc .sections .section > h3 {
  font: 700 .8rem/1 var(--ksi-font);
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ksi-ink-2);
  border-top: 3px solid var(--ksi-ink);
  padding-top: .8rem;
  margin: var(--ksi-s4) 0 0;
  background: transparent;
}
.obj_issue_toc .sections .section > h2::before,
.obj_issue_toc .sections .section > h2::after { display: none; } /* Default theme hairline */
.cmp_article_list > li { border-bottom: 1px solid var(--ksi-rule); margin: 0; padding: var(--ksi-s2) 0; }
.obj_article_summary { background: transparent; border: 0; padding: 0; }
.obj_article_summary > .title,
.obj_article_summary .title {
  font: 700 1.15rem/1.3 var(--ksi-font);
}
.obj_article_summary .title a { text-decoration: none; }
.obj_article_summary .title a:hover { text-decoration: underline; text-decoration-color: var(--ksi-accent); }
.obj_article_summary .meta,
.obj_article_summary .authors,
.obj_article_summary .pages { color: var(--ksi-ink-2); font-size: .9rem; }

/* Galley buttons (PDF, HTML) */
.obj_galley_link,
a.obj_galley_link {
  display: inline-block;
  background: var(--ksi-white) !important;
  color: var(--ksi-ink) !important;
  border: 2px solid var(--ksi-ink) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font: 700 .85rem/1 var(--ksi-font);
  padding: .55rem .9rem;
  text-decoration: none;
}
.obj_galley_link:hover,
.obj_galley_link:focus { background: var(--ksi-ink) !important; color: var(--ksi-white) !important; }
.obj_galley_link.restricted { border-style: dashed !important; }

/* Archive */
.obj_issue_summary { border-bottom: 1px solid var(--ksi-rule); padding-bottom: var(--ksi-s2); }
.obj_issue_summary .title { font: 800 1.25rem/1.2 var(--ksi-font); font-stretch: 75%; }

/* ---- Article landing page ---------------------------------------------- */
.obj_article_details .page_title {
  font-size: clamp(1.6rem, 1.3rem + 1.2vw, 2.25rem);
}
.obj_article_details .subtitle { font-weight: 500; color: var(--ksi-ink-2); }
.obj_article_details .row { border-top: 1px solid var(--ksi-rule); }
.obj_article_details .main_entry .item,
.obj_article_details .entry_details .item {
  border-bottom: 1px solid var(--ksi-rule);
  padding: var(--ksi-s2) 0;
}
.obj_article_details .item .label,
.obj_article_details h2.label,
.obj_article_details h3.label {
  font: 700 .8rem/1.2 var(--ksi-font);
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ksi-ink-2);
  margin-bottom: .5rem;
}
.obj_article_details .authors .name { font-weight: 700; }
.obj_article_details .authors .affiliation { color: var(--ksi-ink-2); font-size: .92rem; }
.obj_article_details .entry_details { background: var(--ksi-grey); padding: 0 var(--ksi-s2); }
.obj_article_details .item.citation { border-left: 4px solid var(--ksi-accent); padding-left: var(--ksi-s2); }
.obj_article_details .item.doi a { word-break: break-all; }
.obj_article_details .item.references p { font-size: .92rem; line-height: 1.5; }

/* ---- Forms (login, registration, search) --------------------------------- */
.pkp_structure_main input[type="text"],
.pkp_structure_main input[type="email"],
.pkp_structure_main input[type="password"],
.pkp_structure_main input[type="search"],
.pkp_structure_main select,
.pkp_structure_main textarea {
  border: 1px solid var(--ksi-ink-2);
  border-radius: 2px;
  background: var(--ksi-white);
  font-family: var(--ksi-font);
  font-size: 1rem;
  padding: .55rem .65rem;
}
.cmp_form .buttons button,
.cmp_form .buttons .submit,
.cmp_button,
.pkp_structure_main button.submit {
  background: var(--ksi-ink) !important;
  color: var(--ksi-white) !important;
  border: 0 !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  font: 700 .95rem/1 var(--ksi-font);
  padding: .75rem 1.2rem;
  text-shadow: none;
}
.cmp_form .buttons button:hover,
.cmp_button:hover { background: var(--ksi-accent) !important; color: var(--ksi-on-accent) !important; }
.cmp_form .pkp_form_error,
.cmp_notification.warning,
.cmp_form .error { border-left: 4px solid #b42318; }
.cmp_notification { border-radius: 0; box-shadow: none; border-left: 4px solid var(--ksi-signal); background: var(--ksi-grey); }

/* Search results page */
.page_search .search_input input { border: 2px solid var(--ksi-ink); }
.page_search .submit button { background: var(--ksi-signal) !important; color: var(--ksi-ink) !important; }

/* ---- Content pages: about, policies, editorial team, announcements ------ */
.page_about .pkp_structure_main h2,
.page_editorial_team h2,
.page_submissions h2 {
  border-top: 3px solid var(--ksi-ink);
  padding-top: .75rem;
  margin-top: var(--ksi-s4);
}
.pkp_structure_main table { border-collapse: collapse; width: 100%; font-size: .95rem; }
.pkp_structure_main th { background: var(--ksi-grey); text-align: left; font-weight: 700; }
.pkp_structure_main th, .pkp_structure_main td { border: 1px solid var(--ksi-rule); padding: .5rem .65rem; vertical-align: top; }
.obj_announcement_summary { border-top: 1px solid var(--ksi-rule); padding: var(--ksi-s2) 0; }
.obj_announcement_summary .date { color: var(--ksi-ink-2); font-size: .85rem; }

/* ---- Footer ------------------------------------------------------------- */
.pkp_structure_footer_wrapper {
  background: var(--ksi-ink);
  color: var(--ksi-white);
  border-top: 6px solid var(--ksi-accent);
  margin-top: var(--ksi-s6);
}
.pkp_structure_footer_wrapper,
.pkp_structure_footer_wrapper p,
.pkp_structure_footer_wrapper a { color: var(--ksi-white) !important; }
.pkp_footer_content { padding: var(--ksi-s4) var(--ksi-s2); font-size: .92rem; }
.pkp_footer_content::after {
  content: "Published by Knowledge Sphere International. Articles are open access under CC BY 4.0 unless otherwise stated.";
  display: block;
  margin-top: var(--ksi-s2);
  padding-top: var(--ksi-s2);
  border-top: 1px solid #3a3d43;
  color: #c9cbcf;
  font-size: .82rem;
}
.pkp_brand_footer { opacity: .7; padding: var(--ksi-s2); }
.pkp_brand_footer img { filter: grayscale(1) brightness(2); }

/* ---- Responsive ---------------------------------------------------------- */
@media (max-width: 991.98px) {
  .pkp_structure_head::before { padding: .5rem 1rem; }
  .pkp_head_wrapper { padding: var(--ksi-s2) 1rem 0; }
  .pkp_site_name .is_text, .pkp_site_name > a { font-size: 1.5rem; }
  .pkp_site_nav_toggle { background: var(--ksi-ink) !important; border-radius: 0 !important; }
  .pkp_site_nav_menu { background: var(--ksi-white) !important; }
  .pkp_site_nav_menu .pkp_navigation_primary > li > a,
  .pkp_site_nav_menu .pkp_navigation_user > li > a,
  .pkp_site_nav_menu a { color: var(--ksi-ink) !important; }
  .pkp_navigation_primary_row { margin-top: 0; }
  .pkp_structure_content { padding: var(--ksi-s2) 1rem 0; }
  .pkp_structure_sidebar { margin-top: var(--ksi-s4); }
}
@media (max-width: 480px) {
  .pkp_structure_main h1, .pkp_structure_main .page_title { font-size: 1.6rem; }
  .obj_galley_link { margin-top: .4rem; }
}

/* ---- Print --------------------------------------------------------------- */
@media print {
  .pkp_structure_head::before, .pkp_navigation_primary_row, .pkp_structure_sidebar,
  .pkp_structure_footer_wrapper, .pkp_navigation_user_wrapper { display: none !important; }
  .pkp_structure_head { background: none; }
  .pkp_site_name .is_text { color: #000 !important; }
}

/* ---- Reduced motion ------------------------------------------------------ */
@media (prefers-reduced-motion: reduce) {
  .pkp_structure_page * { transition: none !important; animation: none !important; }
}

/* ---- Policy pages (custom pages generated from content/policies) ---------- */
.page_navigation_menu_item_content .ksi-version,
.ksi-version { font-size: .85rem; color: var(--ksi-ink-2); border-top: 3px solid var(--ksi-ink); border-bottom: 1px solid var(--ksi-rule); padding: .6rem 0; margin: 0 0 var(--ksi-s3); }
.ksi-draft-note { background: var(--ksi-grey); border-left: 4px solid var(--ksi-signal); padding: .75rem 1rem; font-size: .92rem; }
.inshort { background: var(--ksi-grey); border-left: 4px solid var(--ksi-accent); padding: 1rem 1.25rem; margin: 0 0 var(--ksi-s4); }
.inshort .label { font: 700 .75rem/1 var(--ksi-font); text-transform: uppercase; letter-spacing: .08em; color: var(--ksi-ink-2); margin: 0 0 .5rem; }
.inshort p { font-size: 1.05rem; line-height: 1.6; margin: 0; }
.ksi-tbc { background: #fff6d6; font-style: normal; padding: 0 .2em; }
.ksi-policy-list { list-style: none; padding: 0; }
.ksi-policy-list li { border-top: 1px solid var(--ksi-rule); padding: .75rem 0; max-width: none; }
.ksi-policy-list a { font-weight: 700; }
.ksi-meta { color: var(--ksi-ink-2); font-size: .82rem; white-space: nowrap; }
.ksi-backlink { margin-top: var(--ksi-s4); font-weight: 700; }
.fact { font-weight: 600; }
.pkp_structure_main blockquote { border-left: 4px solid var(--ksi-accent); margin: 1rem 0; padding: .25rem 1rem; background: var(--ksi-grey); }

/* ---- Legacy inline-styled custom blocks (e.g. "Quick Links") -------------- */
.pkp_structure_sidebar .pkp_block [style] {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  color: var(--ksi-ink) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ---- Site index (publisher portal) only ---- */
body:has(.page_index_site) .pkp_structure_head::before { content: "Publisher of peer-reviewed, open-access journals"; background: #000; }
.page_index_site .about_site { font-size: 1.1rem; line-height: 1.6; border-top: 3px solid var(--ksi-ink); padding-top: 1rem; margin-bottom: 2rem; }
.page_index_site .journals > h2 { font: 700 .8rem/1 var(--ksi-font); text-transform: uppercase; letter-spacing: .08em; color: var(--ksi-ink-2); border-top: 3px solid var(--ksi-ink); padding-top: .8rem; }
.page_index_site .journals > ul > li { border-bottom: 1px solid var(--ksi-rule); padding: 1.5rem 0; margin: 0; display: flex; gap: 1.5rem; align-items: flex-start; }
.page_index_site .journals .thumb { flex: 0 0 9rem; margin: 0; }
.page_index_site .journals .thumb img { width: 9rem; height: auto; display: block; border: 0; }
.page_index_site .journals h3 { font: 800 1.45rem/1.15 var(--ksi-font); font-stretch: 75%; margin: 0 0 .5rem; }
.page_index_site .journals h3 a { text-decoration: none; }
.page_index_site .journals .links a { display: inline-block; margin-right: 1rem; font-weight: 700; }
@media (max-width: 600px) { .page_index_site .journals > ul > li { display: block; } .page_index_site .journals .thumb { margin-bottom: 1rem; } }
