/* =========================================================================
   AIJAEFM (ajaefm.adsu.edu.ng) — Professional Theme Override for OJS 3.x Default Theme
   Brand colors sampled from live site: Olive Green header + Gold/Yellow accent
   HOW TO USE: Website Settings > Appearance > Advanced >
   "Journal Stylesheet (CSS)" > Remove existing file > Upload File > select this
   ========================================================================= */

:root {
    --aijaefm-primary: #47552E;      /* header olive green (sampled from site) */
    --aijaefm-primary-dark: #333E22; /* darker shade for footer/hover depth */
    --aijaefm-primary-light: #5C6D3C;
    --aijaefm-gold: #F2E950;         /* ISSN yellow (sampled from site) */
    --aijaefm-gold-deep: #D4C820;    /* deeper gold for text-on-white / borders */
    --aijaefm-bg: #f6f7f4;
    --aijaefm-text: #262b1f;
    --aijaefm-border: #e1e4da;
}

/* ---------- GLOBAL TYPOGRAPHY ---------- */
body,
.pkp_structure_content,
.pkp_page_content {
    font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    color: var(--aijaefm-text);
    background-color: var(--aijaefm-bg);
}

h1, h2, h3, h4,
.page_title,
.pkp_page_title {
    font-weight: 700;
    color: var(--aijaefm-primary);
}

a { color: var(--aijaefm-primary); }
a:hover { color: var(--aijaefm-gold-deep); }

/* ---------- HEADER ---------- */
.pkp_structure_head,
#headerNavigationContainer,
.pkp_head_wrapper {
    background: linear-gradient(135deg, var(--aijaefm-primary) 0%, var(--aijaefm-primary-dark) 100%);
    border-bottom: 3px solid var(--aijaefm-gold);
    box-shadow: 0 2px 10px rgba(0,0,0,0.18);
}

.pkp_site_name_wrapper,
.pkp_site_name,
.pkp_head_wrapper .journal_title,
.pkp_head_wrapper .is,
.pkp_site_name a {
    color: #ffffff !important;
    font-weight: 700;
    letter-spacing: 0.3px;
}

.pkp_site_name_wrapper .pkp_site_name small,
.pkp_head_wrapper .sub_title {
    color: var(--aijaefm-gold) !important;
}

/* Primary + user navigation menus */
.pkp_navigation_primary,
.pkp_navigation_user {
    background-color: transparent;
}

.pkp_navigation_primary a,
.pkp_navigation_user a {
    color: #f2f3ee !important;
    font-weight: 500;
    transition: color 0.2s ease, border-color 0.2s ease;
}

.pkp_navigation_primary a:hover,
.pkp_navigation_primary li.current > a,
.pkp_navigation_user a:hover {
    color: var(--aijaefm-gold) !important;
    border-bottom: 2px solid var(--aijaefm-gold);
}

/* Header search box */
.pkp_search input[type="search"],
.pkp_search input[type="text"] {
    border: 1px solid var(--aijaefm-gold);
    border-radius: 4px;
}

/* ---------- HEADER STRUCTURE / SPACING FIX ----------
   OJS default theme adds its own grey border between the site-title row
   and the primary-nav row (.pkp_navigation_primary_row / .pkp_head_wrapper).
   That default border clashes with our olive/gold palette, showing up as
   a thin mismatched grey line above the menu. We neutralize it here and
   give the site title consistent vertical spacing so it doesn't sit
   "in-between" the two rows. */
.pkp_head_wrapper,
.pkp_site_name_wrapper,
.pkp_navigation_primary_row,
.pkp_navigation_primary_wrapper,
#headerNavigationContainer .pkp_head_wrapper,
#headerNavigationContainer nav {
    border-top: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

.pkp_site_name_wrapper {
    padding: 22px 0 18px 0;
}

.pkp_navigation_primary_row {
    background: transparent;
    padding-top: 2px;
    padding-bottom: 2px;
}

/* Keep only ONE clean gold border at the very bottom of the whole header block */
.pkp_structure_head {
    border-bottom: 3px solid var(--aijaefm-gold) !important;
}

/* ---------- MOBILE HEADER FIX ----------
   On small screens, the extra desktop padding on .pkp_site_name_wrapper
   makes the title taller than OJS's mobile header container, which clips
   the top of the text. Reduce padding and force overflow visible so the
   full title shows. */
@media (max-width: 768px) {
    .pkp_site_name_wrapper {
        padding: 12px 16px 10px 16px !important;
        height: auto !important;
        line-height: 1.3;
    }

    .pkp_structure_head,
    #headerNavigationContainer,
    .pkp_head_wrapper,
    .pkp_site_name_wrapper {
        overflow: visible !important;
        height: auto !important;
    }

    .pkp_site_name_wrapper .pkp_site_name,
    .pkp_site_name_wrapper .pkp_site_name a {
        font-size: 1rem;
        line-height: 1.35;
        white-space: normal;
        display: block;
    }
}

/* ISSN / highlighted text if wrapped in specific classes */
.pkp_page_content .issn,
.journal_issn {
    color: var(--aijaefm-gold-deep);
    font-weight: 700;
}

/* ---------- BODY / MAIN CONTENT ---------- */
.pkp_structure_main {
    background: #ffffff;
    border-radius: 6px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
    padding: 24px;
    margin-top: 20px;
}

/* Article / issue listing cards */
.obj_article_summary,
.obj_issue_summary {
    border: 1px solid var(--aijaefm-border);
    border-radius: 6px;
    padding: 16px;
    margin-bottom: 14px;
    background: #ffffff;
    transition: box-shadow 0.2s ease, transform 0.15s ease;
}

.obj_article_summary:hover,
.obj_issue_summary:hover {
    box-shadow: 0 4px 14px rgba(71,85,46,0.15);
    transform: translateY(-2px);
}

.obj_article_summary .title a,
.obj_issue_summary .title a {
    color: var(--aijaefm-primary);
    font-weight: 600;
}

/* Buttons */
.pkp_button,
.pkp_button.pkp_button_primary,
a.pkp_button,
input[type="submit"].pkp_button {
    background: var(--aijaefm-primary);
    color: #ffffff;
    border: 1px solid var(--aijaefm-primary);
    border-radius: 4px;
    font-weight: 600;
}

.pkp_button:hover,
a.pkp_button:hover {
    background: var(--aijaefm-gold);
    border-color: var(--aijaefm-gold-deep);
    color: var(--aijaefm-primary-dark);
}

/* "Make a Submission" call-to-action block in sidebar */
.pkp_block .pkp_button,
.sidebar .pkp_button {
    width: 100%;
    text-align: center;
    display: block;
}

/* Breadcrumbs */
.pkp_page_breadcrumbs,
.breadcrumbs {
    color: #6b7566;
    font-size: 0.85rem;
}
.pkp_page_breadcrumbs a { color: var(--aijaefm-primary); }

/* ---------- SIDEBAR ---------- */
.pkp_structure_sidebar {
    padding-top: 20px;
}

.pkp_block,
.sidebar .pkp_block {
    background: #ffffff;
    border: 1px solid var(--aijaefm-border);
    border-radius: 6px;
    padding: 16px;
    margin-bottom: 18px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.pkp_block .title,
.pkp_block h2,
.pkp_block h3 {
    color: var(--aijaefm-primary);
    font-size: 1rem;
    font-weight: 700;
    border-bottom: 2px solid var(--aijaefm-gold);
    padding-bottom: 8px;
    margin-bottom: 10px;
}

.pkp_block ul li {
    padding: 4px 0;
    border-bottom: 1px dashed var(--aijaefm-border);
}

/* Cover image / current issue thumbnail in sidebar */
.pkp_block img {
    border-radius: 4px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.15);
}

/* ---------- FOOTER ---------- */
.pkp_structure_footer_wrapper {
    background: var(--aijaefm-primary-dark);
    border-top: 3px solid var(--aijaefm-gold);
    margin-top: 40px;
    padding: 40px 0 30px 0;
}

/* Lay footer sections out as side-by-side columns instead of stacking.
   Actual OJS markup on this site: .footer-container > .footer-column */
.pkp_structure_footer_wrapper .footer-container {
    display: flex !important;
    flex-wrap: wrap;
    gap: 40px;
    align-items: flex-start;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
}

.pkp_structure_footer_wrapper .footer-column {
    flex: 1 1 220px;
    min-width: 200px;
}

@media (max-width: 768px) {
    .pkp_structure_footer_wrapper .footer-container {
        flex-direction: column;
        gap: 24px;
    }
}

/* Base text/link colors everywhere inside the footer, broad + !important
   because default OJS footer text can inherit low-contrast greys */
.pkp_structure_footer_wrapper,
.pkp_structure_footer_wrapper p,
.pkp_structure_footer_wrapper li,
.pkp_structure_footer_wrapper span,
.pkp_structure_footer_wrapper div {
    color: #e9ecdf !important;
    opacity: 1 !important;
}

.pkp_structure_footer_wrapper a {
    color: #ffffff !important;
    opacity: 1 !important;
    text-decoration: none;
    border-bottom: 1px solid rgba(255,255,255,0.25);
    transition: color 0.2s ease, border-color 0.2s ease;
}

.pkp_structure_footer_wrapper a:hover {
    color: var(--aijaefm-gold) !important;
    border-bottom-color: var(--aijaefm-gold);
}

/* Section headings: cover every likely class/tag OJS may use
   (h1-h4, widget_title, block title, generic .title) */
.pkp_structure_footer_wrapper h1,
.pkp_structure_footer_wrapper h2,
.pkp_structure_footer_wrapper h3,
.pkp_structure_footer_wrapper h4,
.pkp_structure_footer_wrapper .widget_title,
.pkp_structure_footer_wrapper .pkp_block .title,
.pkp_structure_footer_wrapper .title {
    color: var(--aijaefm-gold) !important;
    opacity: 1 !important;
    font-weight: 700 !important;
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin-bottom: 14px;
    border-bottom: 2px solid rgba(242,233,80,0.35);
    padding-bottom: 8px;
    display: inline-block;
}

/* Footer link lists: remove default bullets, add spacing */
.pkp_structure_footer_wrapper ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.pkp_structure_footer_wrapper ul li {
    padding: 4px 0;
}

/* Social media icons (if rendered as links/icons) */
.pkp_structure_footer_wrapper .pkp_social_media a,
.pkp_structure_footer_wrapper .socialMedia a {
    border-bottom: none;
    font-size: 1.1rem;
    margin-right: 10px;
}

/* "Platform & workflow by PKP" credit line at the very bottom */
.pkp_structure_footer_wrapper .pkp_powered_by,
.pkp_structure_footer_wrapper .site_footer_bottom,
.pkp_structure_footer_wrapper .footer_bottom {
    color: #c7cdb9 !important;
    opacity: 0.85 !important;
    font-size: 0.8rem;
    margin-top: 20px;
    text-align: right;
}

.pkp_structure_footer_wrapper .pkp_powered_by a,
.pkp_structure_footer_wrapper .site_footer_bottom a {
    color: #c7cdb9 !important;
    border-bottom-color: rgba(199,205,185,0.4);
}

/* Hide the black PKP/OJS "Platform & workflow by" logo image in the
   bottom-right of the footer. Targets common class/attribute patterns
   used by the default OJS theme for this credit block. */
.pkp_structure_footer_wrapper .pkp_powered_by img,
.pkp_structure_footer_wrapper .site_footer_bottom img,
.pkp_structure_footer_wrapper .footer_bottom img,
.pkp_structure_footer_wrapper a[href*="pkp.sfu.ca"] img,
.pkp_structure_footer_wrapper a[href*="publicknowledgeproject"] img,
.pkp_structure_footer_wrapper img[src*="pkp"],
.pkp_structure_footer_wrapper img[alt*="PKP"],
.pkp_structure_footer_wrapper img[alt*="Public Knowledge"] {
    display: none !important;
}

/* ---------- RESPONSIVE TWEAKS ---------- */
@media (max-width: 768px) {
    .pkp_structure_main { padding: 14px; }
    .pkp_block { padding: 12px; }
}
