/* ===== JNI "Neural Night" stylesheet — layered on the OJS Default theme ===== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,500;8..60,600;8..60,700&display=swap');

:root{
  --jni-ink:#0A1628; --jni-navy:#12284A; --jni-navy2:#1B365D;
  --jni-gold:#E3A832; --jni-gold2:#F5C55B; --jni-cyan:#3CC8E8;
  --jni-bg:#F3F6FA; --jni-text:#1E2633; --jni-muted:#5B6678; --jni-line:#E2E8F0;
}

body{background:var(--jni-bg);color:var(--jni-text);font-family:'Inter',system-ui,sans-serif;font-size:15.5px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.pkp_site_name,.page_title,.obj_article_details .page_title{font-family:'Source Serif 4',Georgia,serif;letter-spacing:-.01em;color:var(--jni-ink)}
a{color:#1F6FB2;text-decoration:none;transition:color .15s}
a:hover,a:focus{color:#B9831A}

/* ---------- Header ---------- */
.pkp_structure_head{
  background:
    radial-gradient(circle at 12% 30%,rgba(60,200,232,.22) 0,transparent 28%),
    radial-gradient(circle at 85% 10%,rgba(227,168,50,.18) 0,transparent 30%),
    radial-gradient(rgba(60,200,232,.18) 1px,transparent 1.5px) 0 0/22px 22px,
    linear-gradient(135deg,var(--jni-ink) 0%,var(--jni-navy) 55%,#0F3460 100%);
  border-bottom:3px solid var(--jni-gold);box-shadow:0 6px 24px rgba(10,22,40,.25)}
.pkp_site_name_wrapper{padding-top:28px;padding-bottom:18px}
.pkp_site_name .is_text{font-family:'Source Serif 4',Georgia,serif;font-size:2.15rem;font-weight:700;color:#fff;letter-spacing:.005em;text-shadow:0 2px 14px rgba(60,200,232,.35)}
.pkp_site_name .is_text::after{content:"Open-access · Peer-reviewed · ISSN 2998-9000";display:block;font-family:'Inter',sans-serif;font-size:.78rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--jni-gold2);margin-top:6px;text-shadow:none}
.pkp_site_name a:hover .is_text{color:#fff}

/* ---------- Navigation ---------- */
.pkp_navigation_primary_row{background:rgba(255,255,255,.04);border-top:1px solid rgba(255,255,255,.08)}
.pkp_navigation_primary>li>a,.pkp_navigation_search_wrapper a{color:#E6EDF7!important;font-size:.82rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;border-bottom:2px solid transparent;padding-bottom:.5rem}
.pkp_navigation_primary>li>a:hover,.pkp_navigation_primary>li>a:focus,.pkp_navigation_search_wrapper a:hover{color:var(--jni-gold2)!important;border-bottom-color:var(--jni-gold)}
.pkp_navigation_primary ul{background:#fff;border:0;border-top:3px solid var(--jni-gold);border-radius:0 0 8px 8px;box-shadow:0 14px 30px rgba(10,22,40,.18)}
.pkp_navigation_primary ul a{color:var(--jni-text)!important;font-size:.9rem;padding:.55rem 1rem;border-left:3px solid transparent}
.pkp_navigation_primary ul a:hover{background:#F4F8FC;color:var(--jni-navy2)!important;border-left-color:var(--jni-cyan)}
.pkp_navigation_user>li>a,.pkp_navigation_user .task_count{color:#C9D6E8!important}

/* ---------- Layout ---------- */
.pkp_structure_content{padding-top:28px}
.pkp_structure_main{background:#fff;border:1px solid var(--jni-line);border-radius:12px;box-shadow:0 4px 18px rgba(18,40,74,.06);padding:2rem 2.25rem!important;margin-bottom:2rem}
.pkp_structure_main:before,.pkp_structure_main:after{display:none!important}
.pkp_structure_main h2,.page h2{font-size:1.55rem;margin-top:1.8rem;padding-bottom:.4rem;border-bottom:1px solid var(--jni-line);position:relative}
.pkp_structure_main h2:after,.page h2:after{content:"";position:absolute;left:0;bottom:-1px;width:56px;height:3px;background:linear-gradient(90deg,var(--jni-gold),var(--jni-cyan));border-radius:2px}
.page_title{font-size:2rem!important}
.cmp_breadcrumbs{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.cmp_breadcrumbs a{color:var(--jni-muted)}

/* ---------- Homepage ---------- */
.page_index_journal .homepage_image{margin:-2rem -2.25rem 1.75rem;overflow:hidden;border-radius:12px 12px 0 0;position:relative}
.page_index_journal .homepage_image img{display:block;width:100%;max-height:340px;object-fit:cover}
.page_index_journal .homepage_image:after{content:"";position:absolute;inset:auto 0 0 0;height:4px;background:linear-gradient(90deg,var(--jni-gold),var(--jni-cyan),var(--jni-gold))}
.page_index_journal .journal-description{font-size:1.05rem;color:#2E3A4D;background:linear-gradient(180deg,#F7FAFD,#fff);border-left:4px solid var(--jni-cyan);padding:1rem 1.25rem;border-radius:0 8px 8px 0}
.page_index_journal .current_issue>h2{text-transform:uppercase;font-family:'Inter',sans-serif;font-size:.85rem;letter-spacing:.16em;color:var(--jni-muted)}
.current_issue_title{font-family:'Source Serif 4',serif;font-size:1.4rem;font-weight:600;color:var(--jni-ink)}

/* ---------- Issue TOC / article cards ---------- */
.obj_issue_toc .heading{display:flex;gap:1.5rem;align-items:flex-start}
.obj_issue_toc .cover img{border-radius:6px;box-shadow:0 10px 28px rgba(10,22,40,.28);max-width:200px}
.obj_issue_toc .sections .section>h2,.obj_issue_toc .sections h2{font-family:'Inter',sans-serif;font-size:.8rem!important;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--jni-navy2);border:0!important;margin-top:2rem}
.obj_issue_toc .sections h2:after{display:none}
.cmp_article_list>li{margin:0 0 1rem!important}
.obj_article_summary{background:#fff;border:1px solid var(--jni-line);border-left:4px solid var(--jni-cyan);border-radius:10px;padding:1rem 1.25rem;transition:transform .15s,box-shadow .15s,border-color .15s}
.obj_article_summary:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(18,40,74,.10);border-left-color:var(--jni-gold)}
.obj_article_summary .title{font-family:'Source Serif 4',serif;font-size:1.12rem;font-weight:600;line-height:1.35}
.obj_article_summary .title a{color:var(--jni-ink)}
.obj_article_summary .title a:hover{color:var(--jni-navy2)}
.obj_article_summary .meta{color:var(--jni-muted);font-size:.88rem;margin-top:.35rem}
.obj_article_summary .pages{font-variant-numeric:tabular-nums}
.obj_galley_link{display:inline-block;background:var(--jni-navy2)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:.25rem .95rem!important;font-size:.75rem!important;font-weight:600;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 2px 6px rgba(27,54,93,.25)}
.obj_galley_link:hover{background:var(--jni-gold)!important;color:var(--jni-ink)!important}
.obj_galley_link.pdf:before{color:var(--jni-gold2)}
.obj_galley_link.pdf:hover:before{color:var(--jni-ink)}

/* Archive grid */
.page_issue_archive .issues_archive{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1.5rem}
.page_issue_archive .issues_archive>li{border:0!important;padding:0!important;margin:0!important}
.obj_issue_summary{background:#fff;border:1px solid var(--jni-line);border-radius:10px;overflow:hidden;transition:transform .15s,box-shadow .15s;height:100%}
.obj_issue_summary:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(18,40,74,.14)}
.obj_issue_summary .cover{display:block;float:none!important;width:100%!important;margin:0!important}
.obj_issue_summary .cover img{width:100%;height:auto;display:block}
.obj_issue_summary h2{font-size:1.02rem!important;border:0!important;margin:.8rem 1rem .2rem!important;padding:0!important}
.obj_issue_summary h2:after{display:none}
.obj_issue_summary .series{display:block;color:var(--jni-muted);font-size:.85rem;margin-top:.2rem;font-family:'Inter',sans-serif}
.obj_issue_summary .description{display:none}

/* Article page */
.obj_article_details .entry_details{background:#F7FAFD;border:1px solid var(--jni-line);border-radius:10px}
.obj_article_details .item.doi .value a{font-family:ui-monospace,Menlo,monospace;font-size:.9rem}
.obj_article_details .main_entry .item .label,.obj_article_details .entry_details .item .label{font-family:'Inter',sans-serif;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--jni-navy2)}
.obj_article_details .authors .name{font-weight:600}

/* ---------- Sidebar ---------- */
.pkp_structure_sidebar .pkp_block{background:#fff;border:1px solid var(--jni-line);border-top:3px solid var(--jni-gold);border-radius:10px;padding:1.1rem 1.2rem!important;margin-bottom:1.25rem;box-shadow:0 3px 12px rgba(18,40,74,.05)}
.pkp_block .title{font-family:'Inter',sans-serif!important;font-size:.75rem!important;font-weight:700!important;letter-spacing:.16em;text-transform:uppercase;color:var(--jni-navy2)!important;margin-bottom:.8rem!important;padding-bottom:.5rem;border-bottom:1px solid var(--jni-line)}
.pkp_structure_sidebar .pkp_block:first-child{background:linear-gradient(135deg,var(--jni-ink),var(--jni-navy2));border:0;border-top:0}
.pkp_structure_sidebar .pkp_block:first-child a{background:linear-gradient(135deg,var(--jni-gold),var(--jni-gold2))!important;color:var(--jni-ink)!important;letter-spacing:.06em;box-shadow:0 6px 16px rgba(227,168,50,.35)}
.pkp_structure_sidebar .pkp_block:first-child p{color:#C9D6E8}
.pkp_structure_sidebar .pkp_block:nth-child(2) img{border-radius:8px;box-shadow:0 8px 22px rgba(10,22,40,.25)}

/* ---------- Buttons & forms ---------- */
.cmp_button,.pkp_button,button.submit,.cmp_form .buttons button,a.read_more{border-radius:999px!important}
.cmp_form .buttons button.submit,.pkp_search .submit{background:var(--jni-navy2)!important;color:#fff!important;border:0!important}

/* ---------- Footer ---------- */
.pkp_structure_footer_wrapper{background:linear-gradient(180deg,var(--jni-navy),var(--jni-ink));color:#AFC0D8;border-top:3px solid var(--jni-gold);margin-top:2rem}
.pkp_structure_footer{padding:2rem 0}
.pkp_footer_content{color:#AFC0D8;font-size:.9rem}
.pkp_footer_content strong{color:#fff;font-family:'Source Serif 4',serif;font-size:1.05rem}
.pkp_footer_content a,.pkp_brand_footer a{color:var(--jni-cyan)}
.pkp_footer_content a:hover{color:var(--jni-gold2)}
.pkp_brand_footer{opacity:.55;filter:invert(1) grayscale(1)}

/* ---------- Mobile ---------- */
@media (max-width:991px){
  .pkp_structure_main{padding:1.25rem!important;border-radius:0}
  .page_index_journal .homepage_image{margin:-1.25rem -1.25rem 1.25rem}
  .pkp_site_name .is_text{font-size:1.5rem}
  .pkp_site_name .is_text::after{font-size:.65rem;letter-spacing:.12em}
  .obj_issue_toc .heading{display:block}
}
