/* =========================================================
   JPK MANUSCRIPT TEMPLATE
   Modern Academic Premium | OJS
   Scoped styling: .jpk-template-page
   ========================================================= */

.jpk-template-page {
    --jpk-navy: #102344;
    --jpk-blue: #1e5ba8;
    --jpk-light-blue: #eaf3ff;
    --jpk-red: #b42332;
    --jpk-text: #334155;
    --jpk-muted: #64748b;
    --jpk-border: #dbe4ef;
    --jpk-surface: #ffffff;

    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 28px;
    overflow-wrap: break-word;

    color: var(--jpk-text);
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 38%);
    border: 1px solid var(--jpk-border);
    border-radius: 18px;

    font-family: "Garamond", "Georgia", serif;
    font-size: 16px;
    line-height: 1.8;
}

.jpk-template-page *,
.jpk-template-page *::before,
.jpk-template-page *::after {
    box-sizing: border-box;
}

/* Intro */
.jpk-template-page > p:first-child {
    padding: 22px 24px;
    margin: 0 0 24px;
    background: #ffffff;
    border-left: 5px solid var(--jpk-blue);
    border-radius: 10px;
    box-shadow: 0 5px 20px rgba(16, 35, 68, 0.06);
    text-align: justify;
}

/* Quick navigation */
.jpk-template-page .jpk-quick-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 28px;
    padding: 16px;
    background: var(--jpk-navy);
    border-radius: 12px;
}

.jpk-template-page .jpk-quick-nav a {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.09);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 7px;
    font-family: Garamond;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none !important;
    transition: all 0.25s ease;
}

.jpk-template-page .jpk-quick-nav a:hover {
    background: var(--jpk-red);
    border-color: var(--jpk-red);
    transform: translateY(-2px);
}

/* Section heading */
.jpk-template-page > ol {
    list-style: none;
    margin: 30px 0 18px;
    padding: 0;
    counter-reset: jpk-section;
}

.jpk-template-page > ol > li {
    position: relative;
    display: block;
    padding: 14px 20px 14px 58px;

    color: var(--jpk-navy);
    background: linear-gradient(105deg, #edf4ff, #ffffff);
    border: 1px solid #d6e5f7;
    border-left: 5px solid var(--jpk-red);
    border-radius: 10px;

    font-family: Garamond;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.5;
    list-style: none;
}

.jpk-template-page > ol > li strong {
    font-weight: 700;
}

.jpk-template-page > ol > li::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);

    width: 27px;
    height: 27px;
    border-radius: 7px;
    background: var(--jpk-navy);
}

/* Tables */
.jpk-template-page .jpk-table-wrapper {
    width: 100%;
    margin: 20px 0 30px;
    overflow-x: auto;
    border: 1px solid var(--jpk-border);
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 6px 22px rgba(16, 35, 68, 0.05);
}

.jpk-template-page table {
    width: 100% !important;
    min-width: 560px;
    margin: 0;
    border-collapse: collapse;
    border-spacing: 0;
    background: #ffffff;
    font-size: 15px;
}

.jpk-template-page table thead {
    background: linear-gradient(100deg, var(--jpk-navy), #1d4e89);
}

.jpk-template-page table thead td,
.jpk-template-page table thead th {
    padding: 15px 18px;
    color: #ffffff;
    border: none;
    text-align: left;
    font-family: Garamond;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.3px;
}

.jpk-template-page table tbody td {
    padding: 13px 18px;
    color: var(--jpk-text);
    border-bottom: 1px solid #e8eef6;
    vertical-align: top;
    text-align: left;
}

.jpk-template-page table tbody tr:nth-child(even) {
    background: #f5f9ff;
}

.jpk-template-page table tbody tr:hover {
    background: #eaf3ff;
    transition: background 0.2s ease;
}

.jpk-template-page table tbody tr:last-child td {
    border-bottom: none;
}

.jpk-template-page table tbody td:first-child {
    width: 30%;
    color: var(--jpk-navy);
    font-weight: 700;
}

/* Content paragraphs */
.jpk-template-page > p {
    margin: 14px 0 20px;
    text-align: justify;
}

/* Subheadings: Title, Author Information, Abstract, Keywords */
.jpk-template-page p > strong:first-child {
    display: inline-block;
    color: var(--jpk-navy);
    font-family: Garamond;
    font-size: 15px;
    font-weight: 700;
}

/* Links */
.jpk-template-page a:not(.jpk-quick-nav a) {
    color: var(--jpk-blue);
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid rgba(30, 91, 168, 0.25);
    transition: all 0.2s ease;
}

.jpk-template-page a:not(.jpk-quick-nav a):hover {
    color: var(--jpk-red);
    border-bottom-color: var(--jpk-red);
}

/* Strong text */
.jpk-template-page strong {
    color: var(--jpk-navy);
}

/* Lists */
.jpk-template-page ul,
.jpk-template-page ol:not(:first-child) {
    padding-left: 24px;
}

.jpk-template-page li {
    margin-bottom: 7px;
}

/* Responsive */
@media (max-width: 768px) {
    .jpk-template-page {
        padding: 14px;
        font-size: 15px;
        border-radius: 12px;
    }

    .jpk-template-page > p:first-child {
        padding: 16px;
    }

    .jpk-template-page > ol > li {
        padding: 12px 14px 12px 48px;
        font-size: 15px;
    }

    .jpk-template-page .jpk-quick-nav {
        padding: 12px;
        gap: 7px;
    }

    .jpk-template-page .jpk-quick-nav a {
        font-size: 11px;
        padding: 7px 10px;
    }

    .jpk-template-page table {
        font-size: 14px;
    }

    .jpk-template-page table tbody td {
        padding: 10px 12px;
    }
}

/* Reduced motion accessibility */
@media (prefers-reduced-motion: reduce) {
    .jpk-template-page *,
    .jpk-template-page *::before,
    .jpk-template-page *::after {
        transition: none !important;
        animation: none !important;
    }
}
/* =========================================================
   JPK MANUSCRIPT TEMPLATE
   Modern Academic Premium | OJS
   Scoped styling: .jpk-guidelines-page
   ========================================================= */

.jpk-guidelines-page {
    --jpk-navy: #102344;
    --jpk-blue: #1e5ba8;
    --jpk-light-blue: #eaf3ff;
    --jpk-red: #b42332;
    --jpk-text: #334155;
    --jpk-muted: #64748b;
    --jpk-border: #dbe4ef;
    --jpk-surface: #ffffff;

    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 28px;
    overflow-wrap: break-word;

    color: var(--jpk-text);
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 38%);
    border: 1px solid var(--jpk-border);
    border-radius: 18px;

    font-family: "Garamond", "Georgia", serif;
    font-size: 16px;
    line-height: 1.8;
}

.jpk-guidelines-page *,
.jpk-guidelines-page *::before,
.jpk-guidelines-page *::after {
    box-sizing: border-box;
}

/* Intro */
.jpk-guidelines-page > p:first-child {
    padding: 22px 24px;
    margin: 0 0 24px;
    background: #ffffff;
    border-left: 5px solid var(--jpk-blue);
    border-radius: 10px;
    box-shadow: 0 5px 20px rgba(16, 35, 68, 0.06);
    text-align: justify;
}

/* Quick navigation */
.jpk-guidelines-page .jpk-quick-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 28px;
    padding: 16px;
    background: var(--jpk-navy);
    border-radius: 12px;
}

.jpk-guidelines-page .jpk-quick-nav a {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.09);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 7px;
    font-family: "Garamond", "Georgia", serif;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none !important;
    transition: all 0.25s ease;
}

.jpk-guidelines-page .jpk-quick-nav a:hover {
    background: var(--jpk-red);
    border-color: var(--jpk-red);
    transform: translateY(-2px);
}

/* Section heading */
.jpk-guidelines-page > ol {
    list-style: none;
    margin: 30px 0 18px;
    padding: 0;
    counter-reset: jpk-section;
}

.jpk-guidelines-page > ol > li {
    position: relative;
    display: block;
    padding: 14px 20px 14px 58px;

    color: var(--jpk-navy);
    background: linear-gradient(105deg, #edf4ff, #ffffff);
    border: 1px solid #d6e5f7;
    border-left: 5px solid var(--jpk-red);
    border-radius: 10px;

    font-family: "Garamond", "Georgia", serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.5;
    list-style: none;
}

.jpk-guidelines-page > ol > li strong {
    font-weight: 700;
}

.jpk-guidelines-page > ol > li::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);

    width: 27px;
    height: 27px;
    border-radius: 7px;
    background: var(--jpk-navy);
}

/* Tables */
.jpk-guidelines-page .jpk-table-wrapper {
    width: 100%;
    margin: 20px 0 30px;
    overflow-x: auto;
    border: 1px solid var(--jpk-border);
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 6px 22px rgba(16, 35, 68, 0.05);
}

.jpk-guidelines-page table {
    width: 100% !important;
    min-width: 560px;
    margin: 0;
    border-collapse: collapse;
    border-spacing: 0;
    background: #ffffff;
    font-size: 15px;
}

.jpk-guidelines-page table thead {
    background: linear-gradient(100deg, var(--jpk-navy), #1d4e89);
}

.jpk-guidelines-page table thead td,
.jpk-guidelines-page table thead th {
    padding: 15px 18px;
    color: #ffffff;
    border: none;
    text-align: left;
    font-family: "Garamond", "Georgia", serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.3px;
}

.jpk-guidelines-page table tbody td {
    padding: 13px 18px;
    color: var(--jpk-text);
    border-bottom: 1px solid #e8eef6;
    vertical-align: top;
    text-align: left;
}

.jpk-guidelines-page table tbody tr:nth-child(even) {
    background: #f5f9ff;
}

.jpk-guidelines-page table tbody tr:hover {
    background: #eaf3ff;
    transition: background 0.2s ease;
}

.jpk-guidelines-page table tbody tr:last-child td {
    border-bottom: none;
}

.jpk-guidelines-page table tbody td:first-child {
    width: 30%;
    color: var(--jpk-navy);
    font-weight: 700;
}

/* Content paragraphs */
.jpk-guidelines-page > p {
    margin: 14px 0 20px;
    text-align: justify;
}

/* Subheadings: Title, Author Information, Abstract, Keywords */
.jpk-guidelines-page p > strong:first-child {
    display: inline-block;
    color: var(--jpk-navy);
    font-family: "Garamond", "Georgia", serif;
    font-size: 15px;
    font-weight: 700;
}

/* Links */
.jpk-guidelines-page a:not(.jpk-quick-nav a) {
    color: var(--jpk-blue);
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid rgba(30, 91, 168, 0.25);
    transition: all 0.2s ease;
}

.jpk-guidelines-page a:not(.jpk-quick-nav a):hover {
    color: var(--jpk-red);
    border-bottom-color: var(--jpk-red);
}

/* Strong text */
.jpk-guidelines-page strong {
    color: var(--jpk-navy);
}

/* Lists */
.jpk-guidelines-page ul,
.jpk-guidelines-page ol:not(:first-child) {
    padding-left: 24px;
}

.jpk-guidelines-page li {
    margin-bottom: 7px;
}

/* Responsive */
@media (max-width: 768px) {
    .jpk-guidelines-page {
        padding: 14px;
        font-size: 15px;
        border-radius: 12px;
    }

    .jpk-guidelines-page > p:first-child {
        padding: 16px;
    }

    .jpk-guidelines-page > ol > li {
        padding: 12px 14px 12px 48px;
        font-size: 15px;
    }

    .jpk-guidelines-page .jpk-quick-nav {
        padding: 12px;
        gap: 7px;
    }

    .jpk-guidelines-page .jpk-quick-nav a {
        font-size: 11px;
        padding: 7px 10px;
    }

    .jpk-guidelines-page table {
        font-size: 14px;
    }

    .jpk-guidelines-page table tbody td {
        padding: 10px 12px;
    }
}

/* Reduced motion accessibility */
@media (prefers-reduced-motion: reduce) {
    .jpk-guidelines-page *,
    .jpk-guidelines-page *::before,
    .jpk-guidelines-page *::after {
        transition: none !important;
        animation: none !important;
    }
}

/* ==========================================================
   JPK RED PREMIUM DESIGN SYSTEM
   OJS 3.3.0.21
   HOME | CURRENT ISSUE | ARCHIVES
   ========================================================== */

:root {
    --jpk-red-dark: #751b27;
    --jpk-red: #a92736;
    --jpk-red-bright: #c43b48;
    --jpk-red-light: #f8e9eb;
    --jpk-red-pale: #fff7f7;
    --jpk-ink: #242b38;
    --jpk-muted: #697586;
    --jpk-border: #eadde0;
    --jpk-white: #ffffff;
    --jpk-shadow: 0 10px 30px rgba(117, 27, 39, .08);
}

/* ==========================================================
   GLOBAL PAGE BACKGROUND
   ========================================================== */

body.jpk-page-home .pkp_structure_main,
body.jpk-page-current .pkp_structure_main,
body.jpk-page-archive .pkp_structure_main {
    color: var(--jpk-ink);
}

body.jpk-page-home .pkp_structure_main,
body.jpk-page-current .pkp_structure_main,
body.jpk-page-archive .pkp_structure_main {
    min-width: 0;
}

/* ==========================================================
   1. HOME PAGE
   ========================================================== */

/* Intro / About the Journal */
body.jpk-page-home .homepage_about {
    position: relative;
    padding: 28px 30px;
    margin: 0 0 28px;
    overflow: hidden;

    color: #ffffff;
    background: linear-gradient(
        120deg,
        #671722 0%,
        #982633 52%,
        #c43b48 100%
    );

    border: 0;
    border-radius: 16px;
    box-shadow: var(--jpk-shadow);
}

body.jpk-page-home .homepage_about::after {
    content: "";
    position: absolute;
    width: 210px;
    height: 210px;
    right: -65px;
    top: -90px;
    border: 1px solid rgba(255,255,255,.17);
    border-radius: 50%;
    box-shadow:
        0 0 0 25px rgba(255,255,255,.035),
        0 0 0 50px rgba(255,255,255,.025);
    pointer-events: none;
}

body.jpk-page-home .homepage_about h2,
body.jpk-page-home .homepage_about h3,
body.jpk-page-home .homepage_about p,
body.jpk-page-home .homepage_about strong {
    position: relative;
    z-index: 1;
    color: #ffffff !important;
}

body.jpk-page-home .homepage_about h2 {
    margin-top: 0;
    font-size: 25px;
    font-weight: 700;
    letter-spacing: .2px;
}

body.jpk-page-home .homepage_about p {
    line-height: 1.8;
    opacity: .94;
}

/* Home section headings */
body.jpk-page-home .pkp_structure_main h2 {
    position: relative;
    padding-bottom: 13px;
    margin-top: 32px;
    color: var(--jpk-red-dark);
    font-size: 22px;
    font-weight: 700;
}

body.jpk-page-home .pkp_structure_main h2::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 58px;
    height: 3px;
    border-radius: 10px;
    background: linear-gradient(
        90deg,
        var(--jpk-red-dark),
        var(--jpk-red-bright)
    );
}

/* Announcements */
body.jpk-page-home .cmp_announcements {
    padding: 20px;
    margin: 18px 0 28px;
    background: #ffffff;
    border: 1px solid var(--jpk-border);
    border-left: 4px solid var(--jpk-red);
    border-radius: 12px;
    box-shadow: var(--jpk-shadow);
}

body.jpk-page-home .cmp_announcements h3 {
    color: var(--jpk-red-dark);
    font-size: 18px;
    line-height: 1.5;
}

body.jpk-page-home .cmp_announcements a {
    color: var(--jpk-red-dark);
    font-weight: 700;
    text-decoration: none;
}

body.jpk-page-home .cmp_announcements a:hover {
    color: var(--jpk-red-bright);
}

/* Current Issue card on homepage */
body.jpk-page-home .current_issue {
    padding: 22px;
    margin: 20px 0 30px;
    background: #ffffff;
    border: 1px solid var(--jpk-border);
    border-radius: 15px;
    box-shadow: var(--jpk-shadow);
}

body.jpk-page-home .current_issue .current_issue_title {
    color: var(--jpk-red-dark);
    font-size: 21px;
    font-weight: 700;
}

body.jpk-page-home .current_issue .cover {
    margin-bottom: 18px;
}

body.jpk-page-home .current_issue .cover img {
    max-width: 180px;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 8px 20px rgba(0,0,0,.12);
}

body.jpk-page-home .current_issue .read_more,
body.jpk-page-home .current_issue .read_more a {
    display: inline-block;
    color: #ffffff !important;
    background: linear-gradient(
        110deg,
        var(--jpk-red-dark),
        var(--jpk-red-bright)
    );
    padding: 9px 17px;
    border: 0;
    border-radius: 7px;
    font-weight: 700;
    text-decoration: none;
}

/* ==========================================================
   2. CURRENT ISSUE PAGE
   ========================================================== */

body.jpk-page-current .obj_issue_toc {
    padding: 26px;
    background: #ffffff;
    border: 1px solid var(--jpk-border);
    border-radius: 16px;
    box-shadow: var(--jpk-shadow);
}

/* Issue title */
body.jpk-page-current .obj_issue_toc .heading {
    position: relative;
    padding: 25px 27px;
    margin: -26px -26px 25px;

    color: #ffffff;
    background: linear-gradient(
        115deg,
        #681722,
        #9d2938 58%,
        #c13b49
    );

    border-radius: 15px 15px 0 0;
}

body.jpk-page-current .obj_issue_toc .heading h1,
body.jpk-page-current .obj_issue_toc .heading h2,
body.jpk-page-current .obj_issue_toc .heading h3,
body.jpk-page-current .obj_issue_toc .heading p,
body.jpk-page-current .obj_issue_toc .heading a {
    color: #ffffff !important;
}

body.jpk-page-current .obj_issue_toc .heading h1 {
    font-size: 25px;
    line-height: 1.4;
    font-weight: 700;
}

/* Issue metadata */
body.jpk-page-current .obj_issue_toc .published,
body.jpk-page-current .obj_issue_toc .description {
    color: var(--jpk-muted);
    line-height: 1.8;
}

/* Article list */
body.jpk-page-current .obj_issue_toc .sections {
    margin-top: 22px;
}

body.jpk-page-current .obj_issue_toc .section {
    margin: 20px 0;
}

body.jpk-page-current .obj_issue_toc .section h2 {
    padding-bottom: 11px;
    color: var(--jpk-red-dark);
    border-bottom: 2px solid var(--jpk-red-light);
    font-size: 19px;
}

/* Individual article */
body.jpk-page-current .obj_issue_toc .obj_article_summary {
    padding: 19px 20px;
    margin: 12px 0;
    background: #ffffff;
    border: 1px solid #eee3e5;
    border-radius: 11px;
    transition: all .25s ease;
}

body.jpk-page-current .obj_issue_toc .obj_article_summary:hover {
    transform: translateY(-3px);
    border-color: #dcaab0;
    box-shadow: 0 9px 22px rgba(117,27,39,.08);
}

body.jpk-page-current .obj_issue_toc .obj_article_summary .title a {
    color: var(--jpk-red-dark);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.6;
    text-decoration: none;
}

body.jpk-page-current .obj_issue_toc .obj_article_summary .title a:hover {
    color: var(--jpk-red-bright);
}

body.jpk-page-current .obj_issue_toc .obj_article_summary .authors,
body.jpk-page-current .obj_issue_toc .obj_article_summary .pages,
body.jpk-page-current .obj_issue_toc .obj_article_summary .published {
    color: var(--jpk-muted);
    font-size: 13px;
}

/* PDF / galley links */
body.jpk-page-current .obj_issue_toc .galleys_links a,
body.jpk-page-current .obj_issue_toc .obj_galley_link {
    display: inline-block;
    padding: 6px 12px;
    margin: 5px 5px 0 0;
    color: #ffffff !important;
    background: linear-gradient(
        110deg,
        var(--jpk-red-dark),
        var(--jpk-red-bright)
    );
    border: 0;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

body.jpk-page-current .obj_issue_toc .galleys_links a:hover,
body.jpk-page-current .obj_issue_toc .obj_galley_link:hover {
    filter: brightness(1.08);
}

/* ==========================================================
   3. ARCHIVES PAGE
   ========================================================== */

body.jpk-page-archive .pkp_structure_main > h1 {
    padding: 25px 28px;
    margin: 0 0 25px;

    color: #ffffff;
    background: linear-gradient(
        110deg,
        #681722,
        #982633 60%,
        #c43b48
    );

    border-radius: 13px;
    font-size: 25px;
    font-weight: 700;
    box-shadow: var(--jpk-shadow);
}

/* Archive list */
body.jpk-page-archive .issues_archive {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 17px;
    padding: 0;
    margin: 0;
    list-style: none;
}

body.jpk-page-archive .issues_archive > li {
    min-width: 0;
    padding: 20px;
    margin: 0;

    background: #ffffff;
    border: 1px solid var(--jpk-border);
    border-top: 4px solid var(--jpk-red);
    border-radius: 12px;

    box-shadow: 0 5px 18px rgba(117,27,39,.045);
    transition: all .25s ease;
}

body.jpk-page-archive .issues_archive > li:hover {
    transform: translateY(-4px);
    border-color: #d9a7ae;
    box-shadow: var(--jpk-shadow);
}

/* Archive issue title */
body.jpk-page-archive .issues_archive .title a,
body.jpk-page-archive .issues_archive h2 a,
body.jpk-page-archive .issues_archive h3 a {
    color: var(--jpk-red-dark);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.5;
    text-decoration: none;
}

body.jpk-page-archive .issues_archive a:hover {
    color: var(--jpk-red-bright);
}

/* Archive metadata */
body.jpk-page-archive .issues_archive .description,
body.jpk-page-archive .issues_archive .published,
body.jpk-page-archive .issues_archive .series {
    color: var(--jpk-muted);
    font-size: 13px;
    line-height: 1.7;
}

/* Archive links */
body.jpk-page-archive .issues_archive a {
    transition: color .2s ease;
}

/* Pagination */
body.jpk-page-archive .cmp_pagination a,
body.jpk-page-archive .cmp_pagination span {
    border-radius: 6px;
}

body.jpk-page-archive .cmp_pagination .current {
    color: #ffffff;
    background: var(--jpk-red);
    border-color: var(--jpk-red);
}

/* ==========================================================
   BUTTONS AND LINKS - THREE PAGES ONLY
   ========================================================== */

body.jpk-page-home .pkp_structure_main a,
body.jpk-page-current .pkp_structure_main a,
body.jpk-page-archive .pkp_structure_main a {
    transition: color .2s ease, background .2s ease;
}

body.jpk-page-home .pkp_structure_main a:hover,
body.jpk-page-current .pkp_structure_main a:hover,
body.jpk-page-archive .pkp_structure_main a:hover {
    text-decoration-thickness: 1px;
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 768px) {

    body.jpk-page-home .homepage_about {
        padding: 21px;
        border-radius: 12px;
    }

    body.jpk-page-home .homepage_about h2 {
        font-size: 21px;
    }

    body.jpk-page-current .obj_issue_toc {
        padding: 15px;
    }

    body.jpk-page-current .obj_issue_toc .heading {
        padding: 20px;
        margin: -15px -15px 20px;
    }

    body.jpk-page-current .obj_issue_toc .heading h1 {
        font-size: 21px;
    }

    body.jpk-page-current .obj_issue_toc .obj_article_summary {
        padding: 15px;
    }

    body.jpk-page-archive .issues_archive {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    body.jpk-page-archive .pkp_structure_main > h1 {
        padding: 20px;
        font-size: 22px;
    }
}

/* ==========================================================
   ACCESSIBILITY
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
    body.jpk-page-home *,
    body.jpk-page-current *,
    body.jpk-page-archive * {
        transition: none !important;
        animation: none !important;
    }
}

/* =========================================================
   JPK - CURRENT ISSUE & ISSUE DETAIL
   OJS 3.3.0.21 | Elegant Editorial Red Theme
   Scoped khusus jurnal JPK
========================================================= */

body.jpk-page-home,
body.jpk-page-current {
  --jpk-deep: #681722;
  --jpk-red: #982535;
  --jpk-red-2: #b83243;
  --jpk-soft: #fbf2f3;
  --jpk-line: #eadde0;
  --jpk-text: #252b36;
  --jpk-muted: #707987;
  --jpk-shadow: 0 12px 34px rgba(104, 23, 34, .09);
}

/* =========================================================
   A. HOME - FEATURED CURRENT ISSUE
========================================================= */

body.jpk-page-home .current_issue {
  position: relative;
  margin: 30px 0 38px !important;
  padding: 26px !important;
  overflow: hidden;
  background: #fff !important;
  border: 1px solid var(--jpk-line) !important;
  border-radius: 18px !important;
  box-shadow: var(--jpk-shadow);
}

body.jpk-page-home .current_issue::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: linear-gradient(
    90deg,
    var(--jpk-deep),
    var(--jpk-red),
    #d66b70
  );
}

body.jpk-page-home .current_issue > h2,
body.jpk-page-home .current_issue > h3 {
  margin: 0 0 22px !important;
  padding: 0 0 14px !important;
  color: var(--jpk-deep) !important;
  font-size: 23px !important;
  font-weight: 800 !important;
  letter-spacing: -.4px;
  border-bottom: 1px solid var(--jpk-line);
}

body.jpk-page-home .current_issue > h2::before,
body.jpk-page-home .current_issue > h3::before {
  content: "JPK JOURNAL";
  display: block;
  margin-bottom: 8px;
  color: var(--jpk-red-2);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 2px;
}

/* Layout konten edisi */
body.jpk-page-home .current_issue .obj_issue_toc {
  display: grid;
  grid-template-columns: minmax(150px, 230px) minmax(0, 1fr);
  align-items: start;
  gap: 28px;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Sampul jurnal */
body.jpk-page-home .current_issue .cover {
  width: 100%;
  max-width: 230px;
  margin: 0 auto !important;
  padding: 10px;
  background: #fff;
  border: 1px solid var(--jpk-line);
  border-radius: 12px;
  box-shadow: 0 8px 22px rgba(30, 20, 20, .10);
}

body.jpk-page-home .current_issue .cover img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  border-radius: 5px;
}

/* Informasi edisi */
body.jpk-page-home .current_issue .heading {
  min-width: 0;
}

body.jpk-page-home .current_issue .heading h2,
body.jpk-page-home .current_issue .heading h3,
body.jpk-page-home .current_issue .heading .title {
  margin: 0 0 12px !important;
  color: var(--jpk-deep) !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 800 !important;
}

body.jpk-page-home .current_issue .description,
body.jpk-page-home .current_issue .published,
body.jpk-page-home .current_issue .published p {
  color: var(--jpk-muted) !important;
  font-size: 13px !important;
  line-height: 1.8 !important;
}

/* Link dan tombol pada Current Issue */
body.jpk-page-home .current_issue a {
  color: var(--jpk-red) !important;
  text-decoration: none !important;
  transition: color .2s ease, background .2s ease;
}

body.jpk-page-home .current_issue a:hover {
  color: var(--jpk-deep) !important;
}

body.jpk-page-home .current_issue .read_more,
body.jpk-page-home .current_issue a.read_more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  padding: 10px 20px;
  color: #fff !important;
  background: linear-gradient(120deg, var(--jpk-deep), var(--jpk-red-2));
  border: 0;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .3px;
  box-shadow: 0 5px 14px rgba(104, 23, 34, .17);
}

body.jpk-page-home .current_issue .read_more:hover,
body.jpk-page-home .current_issue a.read_more:hover {
  color: #fff !important;
  transform: translateY(-1px);
}

/* =========================================================
   B. ISSUE DETAIL - HEADER / INFORMASI TERBITAN
========================================================= */

body.jpk-page-current .obj_issue_toc,
body.jpk-page-current .jpk-issue-detail {
  margin: 22px 0 30px !important;
  padding: 25px !important;
  background: #fff !important;
  border: 1px solid var(--jpk-line) !important;
  border-radius: 16px !important;
  box-shadow: var(--jpk-shadow);
}

/* Banner informasi issue */
body.jpk-page-current .obj_issue_toc .heading {
  position: relative;
  margin: -25px -25px 24px !important;
  padding: 27px 28px !important;
  overflow: hidden;
  color: #fff !important;
  background: linear-gradient(
    115deg,
    #641722 0%,
    #922536 58%,
    #b63b4a 100%
  ) !important;
  border-radius: 15px 15px 0 0;
}

body.jpk-page-current .obj_issue_toc .heading::after {
  content: "";
  position: absolute;
  width: 190px;
  height: 190px;
  right: -65px;
  top: -105px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  box-shadow: 0 0 0 22px rgba(255,255,255,.035),
              0 0 0 44px rgba(255,255,255,.025);
  pointer-events: none;
}

body.jpk-page-current .obj_issue_toc .heading h2,
body.jpk-page-current .obj_issue_toc .heading h3,
body.jpk-page-current .obj_issue_toc .heading .title {
  position: relative;
  z-index: 1;
  margin: 0 0 9px !important;
  color: #fff !important;
  font-size: 23px !important;
  line-height: 1.4 !important;
  font-weight: 800 !important;
}

body.jpk-page-current .obj_issue_toc .heading a {
  color: #fff !important;
}

body.jpk-page-current .obj_issue_toc .heading .published,
body.jpk-page-current .obj_issue_toc .heading .description {
  position: relative;
  z-index: 1;
  color: rgba(255,255,255,.85) !important;
  font-size: 12px !important;
  line-height: 1.7;
}

/* Sampul dan deskripsi Issue */
body.jpk-page-current .obj_issue_toc .cover {
  max-width: 190px;
  margin: 0 auto 20px !important;
  padding: 9px;
  background: #fff;
  border: 1px solid var(--jpk-line);
  border-radius: 11px;
  box-shadow: 0 7px 20px rgba(0,0,0,.08);
}

body.jpk-page-current .obj_issue_toc .cover img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 5px;
}

body.jpk-page-current .obj_issue_toc .description,
body.jpk-page-current .obj_issue_toc .published {
  color: var(--jpk-muted);
  font-size: 13px;
  line-height: 1.8;
}

/* =========================================================
   C. DAFTAR ARTIKEL - ISSUE DETAIL
========================================================= */

body.jpk-page-current .sections {
  margin-top: 28px !important;
}

body.jpk-page-current .sections h2,
body.jpk-page-current .sections h3 {
  margin: 25px 0 15px !important;
  padding-bottom: 11px;
  color: var(--jpk-deep) !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  border-bottom: 2px solid var(--jpk-line);
}

body.jpk-page-current .obj_article_summary,
body.jpk-page-current .jpk-article-card {
  position: relative;
  margin: 0 0 14px !important;
  padding: 20px 22px !important;
  background: #fff !important;
  border: 1px solid var(--jpk-line) !important;
  border-left: 4px solid var(--jpk-red) !important;
  border-radius: 11px !important;
  box-shadow: 0 4px 15px rgba(40, 20, 20, .035);
  transition: transform .2s ease, box-shadow .2s ease,
              border-color .2s ease;
}

body.jpk-page-current .obj_article_summary:hover {
  transform: translateY(-2px);
  border-left-color: #d04b59 !important;
  box-shadow: 0 10px 25px rgba(104, 23, 34, .09);
}

/* Judul artikel */
body.jpk-page-current .obj_article_summary .title,
body.jpk-page-current .obj_article_summary h3.title {
  margin: 0 0 10px !important;
  color: var(--jpk-text) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  font-weight: 750 !important;
}

body.jpk-page-current .obj_article_summary .title a {
  color: var(--jpk-deep) !important;
  text-decoration: none !important;
}

body.jpk-page-current .obj_article_summary .title a:hover {
  color: var(--jpk-red-2) !important;
}

/* Penulis dan metadata */
body.jpk-page-current .obj_article_summary .authors,
body.jpk-page-current .obj_article_summary .author,
body.jpk-page-current .obj_article_summary .pages,
body.jpk-page-current .obj_article_summary .pages,
body.jpk-page-current .obj_article_summary .published {
  margin-top: 6px;
  color: var(--jpk-muted) !important;
  font-size: 12px !important;
  line-height: 1.7;
}

/* Abstrak artikel */
body.jpk-page-current .obj_article_summary .description {
  margin-top: 10px;
  color: #606b79 !important;
  font-size: 13px !important;
  line-height: 1.8;
}

/* Tombol PDF / Galley */
body.jpk-page-current .obj_article_summary .galleys,
body.jpk-page-current .obj_article_summary .galleys_links {
  margin-top: 13px !important;
}

body.jpk-page-current .obj_article_summary .obj_galley_link,
body.jpk-page-current .obj_article_summary .galleys a,
body.jpk-page-current .obj_article_summary .jpk-pdf-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  margin: 4px 5px 0 0 !important;
  padding: 7px 13px !important;
  color: #fff !important;
  background: linear-gradient(120deg, var(--jpk-deep), var(--jpk-red-2));
  border: 0 !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 750 !important;
  text-decoration: none !important;
  letter-spacing: .3px;
  transition: transform .2s ease, box-shadow .2s ease;
}

body.jpk-page-current .obj_article_summary .obj_galley_link:hover,
body.jpk-page-current .obj_article_summary .galleys a:hover {
  color: #fff !important;
  transform: translateY(-1px);
  box-shadow: 0 5px 12px rgba(104, 23, 34, .2);
}

/* =========================================================
   D. RESPONSIVE
========================================================= */

@media (max-width: 767px) {
  body.jpk-page-home .current_issue {
    padding: 18px !important;
    border-radius: 13px !important;
  }

  body.jpk-page-home .current_issue .obj_issue_toc {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  body.jpk-page-home .current_issue .cover {
    max-width: 175px;
  }

  body.jpk-page-home .current_issue .heading h2,
  body.jpk-page-home .current_issue .heading h3 {
    font-size: 18px !important;
  }

  body.jpk-page-current .obj_issue_toc {
    padding: 16px !important;
  }

  body.jpk-page-current .obj_issue_toc .heading {
    margin: -16px -16px 18px !important;
    padding: 22px 18px !important;
  }

  body.jpk-page-current .obj_issue_toc .heading h2,
  body.jpk-page-current .obj_issue_toc .heading h3 {
    font-size: 19px !important;
  }

  body.jpk-page-current .obj_article_summary {
    padding: 16px !important;
  }

  body.jpk-page-current .obj_article_summary .title {
    font-size: 14px !important;
  }
}

/* Kurangi animasi bagi pengguna yang mengaturnya */
@media (prefers-reduced-motion: reduce) {
  body.jpk-page-home .current_issue *,
  body.jpk-page-current .obj_article_summary * {
    transition: none !important;
    animation: none !important;
  }
}

/* =====================================================
   FIX JPK HOME - CURRENT ISSUE FULL WIDTH
   Memperbaiki kolom kosong dan artikel yang bergeser
===================================================== */

/* Ubah layout issue menjadi satu kolom penuh */
body.jpk-page-home .current_issue .obj_issue_toc {
    display: block !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Sembunyikan cover yang kosong/tidak memiliki gambar */
body.jpk-page-home .current_issue .cover {
    display: none !important;
}

/* Heading dan informasi edisi memenuhi lebar */
body.jpk-page-home .current_issue .heading {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 24px !important;
    box-sizing: border-box !important;
}

/* Bagian daftar artikel memenuhi lebar kontainer */
body.jpk-page-home .current_issue .sections,
body.jpk-page-home .current_issue .section,
body.jpk-page-home .current_issue .articles,
body.jpk-page-home .current_issue .issue-toc {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* Artikel tampil penuh, tidak lagi berada di kolom kanan */
body.jpk-page-home .current_issue .obj_article_summary {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 14px !important;
    box-sizing: border-box !important;
}

/* Pastikan tombol PDF memiliki kontras yang baik */
body.jpk-page-home .current_issue .obj_galley_link,
body.jpk-page-home .current_issue .galleys a {
    color: #ffffff !important;
    background: linear-gradient(120deg, #681722, #b83243) !important;
    border: none !important;
    border-radius: 7px !important;
}

/* Responsif */
@media (max-width: 767px) {
    body.jpk-page-home .current_issue .obj_article_summary {
        padding: 15px !important;
    }
}

/* ==========================================================
   JPK FLOATING WHATSAPP + BACK TO TOP
   Elegant Maroon Red | Responsive | OJS 3.3.0.21
========================================================== */

#jpk-floating-tools {
  --jpk-float-dark: #681722;
  --jpk-float-red: #a52b3b;
  --jpk-float-bright: #c33b4b;
  --jpk-float-shadow: 0 10px 28px rgba(70, 15, 25, .23);

  position: relative;
  z-index: 99999;
}

/* Floating button stack */
#jpk-floating-tools .jpk-float-actions {
  position: fixed;
  right: 25px;
  bottom: 25px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  z-index: 99999;
}

/* Circular buttons */
#jpk-floating-tools .jpk-float-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  box-shadow: var(--jpk-float-shadow);
  transition: transform .25s ease, box-shadow .25s ease,
              opacity .25s ease, visibility .25s ease;
}

#jpk-floating-tools .jpk-float-btn:hover {
  transform: translateY(-3px) scale(1.04);
  box-shadow: 0 14px 32px rgba(70, 15, 25, .3);
}

#jpk-floating-tools .jpk-float-btn svg {
  width: 25px;
  height: 25px;
  fill: currentColor;
}

/* WhatsApp button */
#jpk-floating-tools .jpk-wa-float {
  color: #fff;
  background: linear-gradient(145deg, #1e9e61, #087b48);
  border: 2px solid rgba(255,255,255,.9);
}

/* Back to top button */
#jpk-floating-tools .jpk-top-float {
  color: #fff;
  background: linear-gradient(
    145deg,
    var(--jpk-float-red),
    var(--jpk-float-dark)
  );
  border: 2px solid rgba(255,255,255,.9);

  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px);
}

#jpk-floating-tools .jpk-top-float.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

/* ==========================================================
   WHATSAPP POPUP PANEL
========================================================== */

#jpk-floating-tools .jpk-wa-popup {
  position: fixed;
  right: 25px;
  bottom: 155px;

  width: 340px;
  max-width: calc(100vw - 30px);

  overflow: hidden;
  background: #fff;
  border: 1px solid #eadde0;
  border-radius: 17px;
  box-shadow: 0 18px 48px rgba(40, 10, 15, .22);

  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(15px) scale(.97);
  transform-origin: bottom right;

  transition: opacity .25s ease, visibility .25s ease,
              transform .25s ease;

  z-index: 99999;
}

#jpk-floating-tools .jpk-wa-popup.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

/* Popup header */
#jpk-floating-tools .jpk-wa-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;

  padding: 17px 18px;
  color: #fff;
  background: linear-gradient(
    120deg,
    var(--jpk-float-dark),
    var(--jpk-float-red),
    var(--jpk-float-bright)
  );
}

#jpk-floating-tools .jpk-wa-header-info {
  display: flex;
  align-items: center;
  gap: 12px;
}

#jpk-floating-tools .jpk-wa-avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;

  color: var(--jpk-float-dark);
  background: #fff;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .5px;
}

#jpk-floating-tools .jpk-wa-title {
  color: #fff;
  font-size: 14px;
  font-weight: 800;
}

#jpk-floating-tools .jpk-wa-subtitle {
  margin-top: 3px;
  color: rgba(255,255,255,.8);
  font-size: 11px;
}

#jpk-floating-tools .jpk-wa-close {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 30px;
  height: 30px;
  padding: 0;

  color: #fff;
  background: rgba(255,255,255,.13);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 50%;

  font-size: 23px;
  line-height: 1;
  cursor: pointer;
}

#jpk-floating-tools .jpk-wa-close:hover {
  background: rgba(255,255,255,.25);
}

/* Popup body */
#jpk-floating-tools .jpk-wa-body {
  padding: 17px;
  background: #fff;
}

#jpk-floating-tools .jpk-wa-message {
  margin-bottom: 16px;
  padding: 13px 14px;

  color: #4b5563;
  background: #fbf3f4;
  border: 1px solid #f0dfe2;
  border-radius: 10px;

  font-size: 12px;
  line-height: 1.8;
}

#jpk-floating-tools .jpk-wa-label {
  display: block;
  margin-bottom: 7px;

  color: #681722;
  font-size: 12px;
  font-weight: 800;
}

#jpk-floating-tools .jpk-wa-input {
  display: block;
  width: 100%;
  min-height: 85px;
  box-sizing: border-box;
  resize: vertical;

  padding: 12px;
  color: #2c3440;
  background: #fff;

  border: 1px solid #e5d5d9;
  border-radius: 9px;
  outline: none;

  font-family: "Garamond", "Georgia", serif;
  font-size: 13px;
  line-height: 1.6;

  transition: border-color .2s ease, box-shadow .2s ease;
}

#jpk-floating-tools .jpk-wa-input:focus {
  border-color: #a52b3b;
  box-shadow: 0 0 0 3px rgba(165,43,59,.09);
}

#jpk-floating-tools .jpk-wa-input::placeholder {
  color: #a0a6af;
}

#jpk-floating-tools .jpk-wa-note {
  margin: 8px 0 13px;
  color: #89919d;
  font-size: 10px;
  line-height: 1.5;
}

/* Send button */
#jpk-floating-tools .jpk-wa-send {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;

  width: 100%;
  min-height: 43px;
  padding: 11px 14px;

  color: #fff;
  background: linear-gradient(
    120deg,
    #681722,
    #a52b3b,
    #c33b4b
  );

  border: 0;
  border-radius: 9px;
  box-shadow: 0 5px 14px rgba(104,23,34,.16);

  font-family: "Garamond", "Georgia", serif;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;

  transition: transform .2s ease, box-shadow .2s ease;
}

#jpk-floating-tools .jpk-wa-send:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(104,23,34,.23);
}

#jpk-floating-tools .jpk-wa-send-icon {
  font-size: 15px;
}

/* ==========================================================
   MOBILE RESPONSIVE
========================================================== */

@media (max-width: 600px) {
  #jpk-floating-tools .jpk-float-actions {
    right: 15px;
    bottom: 18px;
    gap: 10px;
  }

  #jpk-floating-tools .jpk-float-btn {
    width: 49px;
    height: 49px;
  }

  #jpk-floating-tools .jpk-float-btn svg {
    width: 23px;
    height: 23px;
  }

  #jpk-floating-tools .jpk-wa-popup {
    right: 15px;
    bottom: 137px;
    width: 320px;
    max-width: calc(100vw - 30px);
  }
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
  #jpk-floating-tools *,
  #jpk-floating-tools *::before,
  #jpk-floating-tools *::after {
    transition: none !important;
  }
}

/* =====================================================
   JPK JOURNAL INFORMATION - ADDITIONAL CONTENT
   Modern Compact Maroon Design
   ===================================================== */

.jpk-journal-info {
    width: 100%;
    max-width: 780px;
    margin: 24px auto;
    padding: 0;
    box-sizing: border-box;
    font-family: "Garamond", "Georgia", serif;
    color: #242b38;
}

.jpk-journal-info .jpk-info-table {
    width: 100% !important;
    max-width: 100%;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    table-layout: fixed;
    background: #ffffff;
    border: 1px solid #eadde0 !important;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(117, 27, 39, 0.06);
    margin: 0 !important;
}

.jpk-journal-info .jpk-info-table td {
    padding: 8px 14px !important;
    border: none !important;
    border-bottom: 1px solid #f0e5e7 !important;
    vertical-align: middle !important;
    line-height: 1.45 !important;
    font-size: 13px !important;
    overflow-wrap: anywhere;
    box-sizing: border-box;
}

.jpk-journal-info .jpk-info-table tr:last-child td {
    border-bottom: none !important;
}

.jpk-journal-info .jpk-info-table td:first-child {
    width: 28% !important;
    background: #fff7f7;
    color: #8d2634;
    font-weight: 600;
}

.jpk-journal-info .jpk-info-table td:last-child {
    width: 72% !important;
    color: #303746;
    background: #ffffff;
}

.jpk-journal-info .jpk-info-table strong {
    color: #303746;
    font-weight: 600;
}

.jpk-journal-info .jpk-info-table a {
    color: #a92736 !important;
    text-decoration: none !important;
    font-weight: 600;
    transition: color 0.2s ease;
}

.jpk-journal-info .jpk-info-table a:hover {
    color: #751b27 !important;
    text-decoration: underline !important;
}

.jpk-journal-info .jpk-info-table img {
    max-width: 65px;
    height: auto !important;
    vertical-align: middle;
    margin-left: 5px;
}

.jpk-journal-info .jpk-info-table p {
    margin: 0 !important;
    padding: 0 !important;
}

/* Smartphone */
@media (max-width: 600px) {
    .jpk-journal-info {
        margin: 14px auto;
    }

    .jpk-journal-info .jpk-info-table td {
        padding: 7px 9px !important;
        font-size: 12px !important;
    }

    .jpk-journal-info .jpk-info-table td:first-child {
        width: 32% !important;
    }

    .jpk-journal-info .jpk-info-table td:last-child {
        width: 68% !important;
    }
}

/* =====================================================
   JPK SIDEBAR MODERN
   Elegant Maroon | Compact | Responsive
   ===================================================== */

.jpk-sidebar-modern {
    width: 100%;
    max-width: 100%;
    margin: 0 auto 16px;
    padding: 0;
    box-sizing: border-box;
    font-family: "Garamond", "Georgia", serif;
    color: #303746;
}

/* Collaborator section */
.jpk-sidebar-modern .jpk-sidebar-collaborator {
    text-align: center;
    margin: 0 0 14px;
    padding: 12px 10px;
    background: #ffffff;
    border: 1px solid #eadde0;
    border-radius: 12px;
}

.jpk-sidebar-modern .jpk-sidebar-collaborator-title {
    margin: 0 0 10px !important;
    font-size: 12px !important;
    font-weight: 700;
    color: #751b27;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.jpk-sidebar-modern .jpk-sidebar-collaborator img {
    width: 55% !important;
    max-width: 150px;
    height: auto !important;
    display: block;
    margin: 0 auto;
}

/* =====================================================
   JPK SIDEBAR - MODERN GROUPED MENU
   ===================================================== */

.jpk-sidebar-modern {
    width: 100%;
    max-width: 100%;
    margin: 0 auto 16px;
    padding: 0;
    box-sizing: border-box;
    font-family: "Garamond", "Georgia", serif;
    color: #303746;
}

/* Group heading */
.jpk-sidebar-modern .jpk-sidebar-heading {
    margin: 12px 0 6px !important;
    padding: 11px 14px !important;
    background: linear-gradient(
        110deg,
        #751b27 0%,
        #a92736 65%,
        #c43b48 100%
    );
    border: 1px solid #8d2634;
    border-radius: 9px;
    color: #ffffff !important;
    font-size: 12px !important;
    font-family: Garamond !important;
    font-weight: 700;
    line-height: 1.4 !important;
    letter-spacing: 0.6px;
    text-align: left !important;
    text-transform: uppercase;
    box-shadow: 0 4px 10px rgba(117, 27, 39, 0.10);
}

/* Menu container */
.jpk-sidebar-modern .jpk-sidebar-menu {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin: 0 !important;
    padding: 0 !important;
}

/* Menu links */
.jpk-sidebar-modern .jpk-sidebar-menu a {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    box-sizing: border-box;
    padding: 8px 11px !important;
    margin: 0 !important;
    border: 1px solid transparent;
    border-radius: 7px;
    background: #ffffff;
    color: #414958 !important;
    font-size: 12px !important;
    font-weight: 500;
    line-height: 1.45 !important;
    text-align: left !important;
    text-decoration: none !important;
    overflow-wrap: anywhere;
    transition: all 0.2s ease;
}

.jpk-sidebar-modern .jpk-sidebar-menu a .fa {
    width: 17px;
    min-width: 17px;
    color: #a92736;
    font-size: 13px;
    text-align: center;
}

.jpk-sidebar-modern .jpk-sidebar-menu a:hover {
    background: #fff7f7;
    border-color: #f0dadd;
    color: #751b27 !important;
    padding-left: 15px !important;
}

.jpk-sidebar-modern .jpk-sidebar-menu a:hover .fa {
    color: #751b27;
}

/* Statistics */
.jpk-sidebar-modern .jpk-sidebar-statistics {
    margin: 0;
    padding: 12px;
    background: #ffffff;
    border: 1px solid #eadde0;
    border-radius: 10px;
    text-align: center;
    overflow: hidden;
}

.jpk-sidebar-modern .jpk-sidebar-statistics img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0 auto 8px;
}

.jpk-sidebar-modern .jpk-sidebar-statistics a {
    display: inline-block;
    color: #a92736 !important;
    font-size: 12px !important;
    font-weight: 600;
    line-height: 1.5;
    text-decoration: none !important;
}

.jpk-sidebar-modern .jpk-sidebar-statistics a:hover {
    color: #751b27 !important;
    text-decoration: underline !important;
}

/* Mobile */
@media (max-width: 600px) {
    .jpk-sidebar-modern .jpk-sidebar-heading {
        padding: 10px 12px !important;
        font-size: 11px !important;
    }

    .jpk-sidebar-modern .jpk-sidebar-menu a {
        padding: 8px 10px !important;
        font-size: 12px !important;
    }
}

.jpk-indexing {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 15px 0;
    box-sizing: border-box;
}

.jpk-indexing-heading {
    margin: 0 0 22px !important;
    padding: 0 0 14px;
    border-bottom: 2px solid #8d2432;
    color: #751b27 !important;
    font-size: 21px !important;
    font-weight: 800 !important;
    text-align: center;
}

.jpk-indexing-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.jpk-index-card {
    min-width: 0;
    padding: 14px;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #e9e1e2;
    border-radius: 8px;
    text-align: center;
    transition: .2s ease;
}

.jpk-index-card:hover {
    border-color: #a92736;
    box-shadow: 0 5px 15px rgba(117,27,39,.09);
}

.jpk-index-card a {
    display: block;
    color: #751b27 !important;
    text-decoration: none !important;
}

.jpk-index-card img {
    display: block;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 85px !important;
    margin: 5px auto 12px !important;
    object-fit: contain;
}

.jpk-index-card p {
    margin: 0 !important;
    padding-top: 10px;
    border-top: 1px solid #eee7e8;
    color: #751b27 !important;
    font-size: 13px;
}

@media(max-width:480px) {
    .jpk-indexing-grid {
        gap: 9px;
    }

    .jpk-index-card {
        padding: 9px;
    }

    .jpk-index-card img {
        max-height: 65px !important;
    }

    .jpk-index-card p {
        font-size: 11px;
    }
}

/* ==========================================
   JPK DROPDOWN FIX - STABLE HOVER
   OJS 3.3.0.21
   ========================================== */

/* Parent menu */
.pkp_navigation_primary > li {
    position: relative;
}

/* Dropdown container */
.pkp_navigation_primary li {
    position: relative;
}

/* Dropdown utama */
.pkp_navigation_primary > li > ul {
    display: block !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;

    min-width: 230px;
    margin: 0 !important;
    padding: 8px !important;

    background: #fff !important;
    border: 1px solid #eadde0 !important;
    border-radius: 9px !important;
    box-shadow: 0 12px 28px rgba(45,12,18,.16) !important;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transform: translateY(7px);
    transition:
        opacity .2s ease,
        transform .2s ease,
        visibility .2s ease;

    z-index: 99999 !important;
}

/* HOVER BRIDGE
   Area transparan yang menghubungkan
   navbar dengan dropdown */
.pkp_navigation_primary > li > ul:before {
    content: "";
    position: absolute;
    top: -12px;
    left: 0;
    width: 100%;
    height: 12px;
    background: transparent;
}

/* Tampilkan dropdown saat hover */
.pkp_navigation_primary > li:hover > ul,
.pkp_navigation_primary > li:focus-within > ul {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

/* Dropdown item */
.pkp_navigation_primary ul li {
    display: block;
    width: 100%;
    margin: 0 !important;
    border: 0 !important;
}

/* Link submenu */
.pkp_navigation_primary ul li a {
    display: block !important;
    padding: 10px 13px !important;

    color: #414653 !important;
    background: transparent !important;

    border-radius: 6px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.5;

    text-decoration: none !important;

    transition:
        background .2s ease,
        color .2s ease,
        padding-left .2s ease;
}

/* Hover submenu */
.pkp_navigation_primary ul li a:hover,
.pkp_navigation_primary ul li a:focus {
    color: #8d2432 !important;
    background: #fff1f2 !important;
    padding-left: 19px !important;
    box-shadow: inset 3px 0 0 #a92736;
}

/* Dropdown bertingkat */
.pkp_navigation_primary ul ul {
    top: 0 !important;
    left: 100% !important;
    margin: 0 !important;
}

/* Buka submenu bertingkat */
.pkp_navigation_primary li:hover > ul,
.pkp_navigation_primary li:focus-within > ul {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

/* Mobile: jangan paksa hover desktop */
@media (max-width: 768px) {
    .pkp_navigation_primary > li > ul {
        position: static !important;
        display: block !important;
        min-width: 0;
        margin: 0 !important;
        box-shadow: none !important;
        border-radius: 6px !important;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
    }

    .pkp_navigation_primary > li > ul:before {
        display: none;
    }
}

/* =====================================================
   JPK - PEER REVIEW PROCESS
   Modern Editorial Timeline | OJS 3.3.0.21
   ===================================================== */

.jpk-review-page {
    --jpk-maroon: #751b27;
    --jpk-red: #a92736;
    --jpk-light: #fff6f6;
    --jpk-text: #374151;
    --jpk-muted: #697586;

    max-width: 100%;
    margin: 0 auto;
    color: var(--jpk-text);
    font-size: 14px;
    line-height: 1.8;
}

.jpk-review-hero {
    position: relative;
    overflow: hidden;
    padding: 30px;
    margin-bottom: 25px;
    color: #fff;
    background: linear-gradient(120deg, #671722, #982633 55%, #c43b48);
    border-radius: 15px;
    box-shadow: 0 9px 25px rgba(117, 27, 39, .13);
}

.jpk-review-hero::after {
    content: "";
    position: absolute;
    width: 190px;
    height: 190px;
    right: -65px;
    top: -90px;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 50%;
    box-shadow:
        0 0 0 25px rgba(255,255,255,.045),
        0 0 0 50px rgba(255,255,255,.025);
    pointer-events: none;
}

.jpk-review-hero > * {
    position: relative;
    z-index: 1;
}

.jpk-review-eyebrow {
    display: inline-block;
    margin-bottom: 9px;
    padding: 5px 11px;
    color: #fff;
    background: rgba(255,255,255,.15);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 30px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.3px;
    text-transform: uppercase;
}

.jpk-review-hero h2 {
    margin: 0 0 12px;
    color: #fff !important;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.35;
}

.jpk-review-hero p {
    max-width: 850px;
    margin: 0;
    color: rgba(255,255,255,.92) !important;
    font-size: 13px;
    line-height: 1.8;
}

.jpk-review-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 27px;
}

.jpk-review-summary-item {
    padding: 15px 12px;
    text-align: center;
    background: #fff;
    border: 1px solid #eee1e3;
    border-radius: 11px;
    box-shadow: 0 4px 14px rgba(0,0,0,.035);
}

.jpk-review-summary-item strong {
    display: block;
    margin-bottom: 3px;
    color: var(--jpk-maroon);
    font-size: 17px;
    font-weight: 800;
}

.jpk-review-summary-item span {
    color: var(--jpk-muted);
    font-size: 11px;
    font-weight: 600;
}

.jpk-review-section-title {
    margin: 28px 0 18px;
    padding-bottom: 10px;
    color: var(--jpk-maroon);
    border-bottom: 2px solid #f0dfe2;
    font-size: 18px;
    font-weight: 800;
}

.jpk-review-timeline {
    position: relative;
    margin: 0;
    padding: 0;
    list-style: none;
}

.jpk-review-step {
    position: relative;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 15px;
    padding-bottom: 19px;
}

.jpk-review-step:not(:last-child)::before {
    content: "";
    position: absolute;
    left: 23px;
    top: 46px;
    bottom: 0;
    width: 2px;
    background: linear-gradient(to bottom, #bd5965, #f0dfe2);
}

.jpk-review-number {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 47px;
    height: 47px;
    color: #fff;
    background: linear-gradient(135deg, #751b27, #b83242);
    border: 4px solid #fff;
    border-radius: 50%;
    box-shadow: 0 0 0 1px #ead5d9, 0 4px 10px rgba(117,27,39,.13);
    font-size: 14px;
    font-weight: 800;
}

.jpk-review-card {
    min-width: 0;
    padding: 17px 20px;
    background: #fff;
    border: 1px solid #eee5e6;
    border-left: 3px solid #a92736;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0,0,0,.035);
    transition: transform .2s ease, box-shadow .2s ease;
}

.jpk-review-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(117,27,39,.09);
}

.jpk-review-card h3 {
    margin: 0 0 8px;
    color: var(--jpk-maroon) !important;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.5;
}

.jpk-review-card p {
    margin: 0 0 9px;
    color: var(--jpk-text);
    font-size: 13px;
    line-height: 1.8;
}

.jpk-review-card p:last-child {
    margin-bottom: 0;
}

.jpk-review-card strong {
    color: var(--jpk-maroon);
}

.jpk-review-outcome {
    margin-top: 18px;
    padding: 22px;
    background: linear-gradient(135deg, #fff8f8, #fff);
    border: 1px solid #efdadd;
    border-radius: 12px;
}

.jpk-review-outcome h3 {
    margin: 0 0 10px;
    color: var(--jpk-maroon) !important;
    font-size: 17px;
    font-weight: 800;
}

.jpk-review-outcome p {
    margin: 0 0 10px;
    color: var(--jpk-text);
    font-size: 13px;
    line-height: 1.8;
}

.jpk-review-outcome p:last-child {
    margin-bottom: 0;
}

.jpk-review-footer {
    margin-top: 20px;
    padding: 13px 16px;
    color: #fff;
    background: #751b27;
    border-radius: 9px;
    text-align: center;
    font-size: 12px;
    font-weight: 600;
}

@media (max-width: 600px) {
    .jpk-review-hero {
        padding: 22px 19px;
        border-radius: 12px;
    }

    .jpk-review-hero h2 {
        font-size: 21px;
    }

    .jpk-review-summary {
        gap: 7px;
    }

    .jpk-review-summary-item {
        padding: 12px 5px;
    }

    .jpk-review-summary-item strong {
        font-size: 15px;
    }

    .jpk-review-summary-item span {
        font-size: 9px;
    }

    .jpk-review-step {
        grid-template-columns: 37px minmax(0, 1fr);
        gap: 10px;
    }

    .jpk-review-number {
        width: 36px;
        height: 36px;
        font-size: 12px;
    }

    .jpk-review-step:not(:last-child)::before {
        left: 17px;
        top: 38px;
    }

    .jpk-review-card {
        padding: 13px;
    }

    .jpk-review-card h3 {
        font-size: 14px;
    }

    .jpk-review-card p {
        font-size: 12px;
    }

    .jpk-review-outcome {
        padding: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .jpk-review-card {
        transition: none;
    }
}

/* =====================================================
   JPK - FOCUS AND SCOPE
   Modern Academic Research Cards
   OJS 3.3.0.21
   ===================================================== */

.jpk-scope-page {
    --scope-maroon: #751b27;
    --scope-red: #a92736;
    --scope-text: #374151;
    --scope-muted: #697586;

    width: 100%;
    margin: 0 auto;
    color: var(--scope-text);
    font-size: 13px;
    line-height: 1.75;
}

.jpk-scope-hero {
    position: relative;
    overflow: hidden;
    padding: 28px;
    margin-bottom: 22px;
    color: #fff;
    background: linear-gradient(120deg, #671722, #982633 55%, #c43b48);
    border-radius: 15px;
    box-shadow: 0 9px 25px rgba(117,27,39,.12);
}

.jpk-scope-hero::after {
    content: "";
    position: absolute;
    width: 190px;
    height: 190px;
    right: -65px;
    top: -90px;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 50%;
    box-shadow:
        0 0 0 25px rgba(255,255,255,.045),
        0 0 0 50px rgba(255,255,255,.025);
    pointer-events: none;
}

.jpk-scope-hero > * {
    position: relative;
    z-index: 1;
}

.jpk-scope-eyebrow {
    display: inline-block;
    margin-bottom: 9px;
    padding: 5px 11px;
    color: #fff;
    background: rgba(255,255,255,.15);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 30px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.jpk-scope-hero h2 {
    margin: 0 0 10px;
    color: #fff !important;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.35;
}

.jpk-scope-hero p {
    max-width: 850px;
    margin: 0;
    color: rgba(255,255,255,.93) !important;
    font-size: 13px;
    line-height: 1.8;
}

.jpk-scope-intro {
    margin: 0 0 22px;
    padding: 17px 19px;
    background: #fff8f8;
    border: 1px solid #f0dfe2;
    border-left: 4px solid var(--scope-red);
    border-radius: 9px;
    color: var(--scope-text);
    font-size: 13px;
    line-height: 1.8;
}

.jpk-scope-intro strong {
    color: var(--scope-maroon);
}

.jpk-scope-heading {
    margin: 25px 0 15px;
    padding-bottom: 10px;
    color: var(--scope-maroon);
    border-bottom: 2px solid #f0dfe2;
    font-size: 18px;
    font-weight: 800;
}

.jpk-scope-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.jpk-scope-card {
    position: relative;
    min-width: 0;
    padding: 18px;
    background: #fff;
    border: 1px solid #eee3e5;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0,0,0,.035);
    transition: transform .2s ease, box-shadow .2s ease;
}

.jpk-scope-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 9px 23px rgba(117,27,39,.09);
}

.jpk-scope-card-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 13px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f0e5e7;
}

.jpk-scope-number {
    display: flex;
    flex: 0 0 39px;
    align-items: center;
    justify-content: center;
    width: 39px;
    height: 39px;
    color: #fff;
    background: linear-gradient(135deg, #751b27, #b83242);
    border-radius: 10px;
    font-size: 13px;
    font-weight: 800;
}

.jpk-scope-card h3 {
    margin: 0;
    color: var(--scope-maroon) !important;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.4;
}

.jpk-scope-list {
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: scope-item;
}

.jpk-scope-list li {
    position: relative;
    margin: 0;
    padding: 7px 0 7px 25px;
    color: var(--scope-text);
    border-bottom: 1px dashed #eee6e7;
    font-size: 12px;
    line-height: 1.65;
    counter-increment: scope-item;
}

.jpk-scope-list li:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.jpk-scope-list li::before {
    content: counter(scope-item, lower-alpha);
    position: absolute;
    left: 0;
    top: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 17px;
    height: 17px;
    color: var(--scope-red);
    background: #fff0f1;
    border-radius: 5px;
    font-size: 10px;
    font-weight: 800;
}

.jpk-scope-card:last-child {
    grid-column: 1 / -1;
}

.jpk-scope-card:last-child .jpk-scope-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 20px;
}

.jpk-scope-card:last-child .jpk-scope-list li:last-child {
    grid-column: 1 / -1;
}

.jpk-scope-contribution {
    margin-top: 23px;
    padding: 21px;
    background: linear-gradient(135deg, #fff8f8, #fff);
    border: 1px solid #efdadd;
    border-radius: 12px;
}

.jpk-scope-contribution h3 {
    margin: 0 0 9px;
    color: var(--scope-maroon) !important;
    font-size: 16px;
    font-weight: 800;
}

.jpk-scope-contribution p {
    margin: 0 0 10px;
    color: var(--scope-text);
    font-size: 13px;
    line-height: 1.8;
}

.jpk-scope-contribution p:last-child {
    margin-bottom: 0;
}

.jpk-scope-footer {
    margin-top: 18px;
    padding: 13px 16px;
    color: #fff;
    background: #751b27;
    border-radius: 9px;
    text-align: center;
    font-size: 11px;
    font-weight: 600;
}

@media (max-width: 650px) {
    .jpk-scope-hero {
        padding: 21px;
        border-radius: 12px;
    }

    .jpk-scope-hero h2 {
        font-size: 21px;
    }

    .jpk-scope-grid {
        grid-template-columns: 1fr;
        gap: 11px;
    }

    .jpk-scope-card:last-child {
        grid-column: auto;
    }

    .jpk-scope-card:last-child .jpk-scope-list {
        display: block;
    }

    .jpk-scope-card {
        padding: 15px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .jpk-scope-card {
        transition: none;
    }
}

/* =====================================================
   JPK - PREMIUM BREADCRUMB
   OJS 3.3.0.21
   ===================================================== */

/* Hide default page title */
body:has(.jpk-scope-page) .page_title,
body:has(.jpk-review-page) .page_title,
body:has(.jpk-template-page) .page_title,
body:has(.jpk-guidelines-page) .page_title {
    display: none !important;
}

/* Breadcrumb wrapper */
body:has(.jpk-scope-page) .pkp_structure_main .cmp_breadcrumbs,
body:has(.jpk-review-page) .pkp_structure_main .cmp_breadcrumbs,
body:has(.jpk-template-page) .pkp_structure_main .cmp_breadcrumbs,
body:has(.jpk-guidelines-page) .pkp_structure_main .cmp_breadcrumbs {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    margin: 0 0 22px !important;
    padding: 11px 16px !important;
    background: linear-gradient(110deg, #fff8f8, #ffffff) !important;
    border: 1px solid #f0dfe2 !important;
    border-left: 4px solid #982633 !important;
    border-radius: 9px !important;
    box-shadow: 0 3px 12px rgba(117,27,39,.045);
    font-size: 11px !important;
    line-height: 1.6;
}

/* Breadcrumb links */
body:has(.jpk-scope-page) .cmp_breadcrumbs a,
body:has(.jpk-review-page) .cmp_breadcrumbs a,
body:has(.jpk-template-page) .cmp_breadcrumbs a,
body:has(.jpk-guidelines-page) .cmp_breadcrumbs a {
    color: #8e2633 !important;
    font-weight: 700;
    text-decoration: none !important;
    transition: color .2s ease;
}

body:has(.jpk-scope-page) .cmp_breadcrumbs a:hover,
body:has(.jpk-review-page) .cmp_breadcrumbs a:hover,
body:has(.jpk-template-page) .cmp_breadcrumbs a:hover,
body:has(.jpk-guidelines-page) .cmp_breadcrumbs a:hover {
    color: #c43b48 !important;
    text-decoration: underline !important;
}

/* Breadcrumb separator */
body:has(.jpk-scope-page) .cmp_breadcrumbs .separator,
body:has(.jpk-review-page) .cmp_breadcrumbs .separator,
body:has(.jpk-template-page) .cmp_breadcrumbs .separator,
body:has(.jpk-guidelines-page) .cmp_breadcrumbs .separator {
    color: #c58a91 !important;
    font-size: 0 !important;
}

body:has(.jpk-scope-page) .cmp_breadcrumbs .separator::before,
body:has(.jpk-review-page) .cmp_breadcrumbs .separator::before,
body:has(.jpk-template-page) .cmp_breadcrumbs .separator::before,
body:has(.jpk-guidelines-page) .cmp_breadcrumbs .separator::before {
    content: "/";
    font-size: 12px;
    font-weight: 500;
}

/* Current breadcrumb */
body:has(.jpk-scope-page) .cmp_breadcrumbs li:last-child,
body:has(.jpk-review-page) .cmp_breadcrumbs li:last-child,
body:has(.jpk-template-page) .cmp_breadcrumbs li:last-child,
body:has(.jpk-guidelines-page) .cmp_breadcrumbs li:last-child {
    color: #4b5563 !important;
    font-weight: 700;
}

/* Home icon */
body:has(.jpk-scope-page) .cmp_breadcrumbs li:first-child a::before,
body:has(.jpk-review-page) .cmp_breadcrumbs li:first-child a::before,
body:has(.jpk-template-page) .cmp_breadcrumbs li:first-child a::before,
body:has(.jpk-guidelines-page) .cmp_breadcrumbs li:first-child a::before {
    content: "⌂";
    display: inline-block;
    margin-right: 5px;
    color: #a92736;
    font-size: 15px;
    font-weight: 800;
}

/* Mobile */
@media (max-width: 600px) {
    body:has(.jpk-scope-page) .cmp_breadcrumbs,
    body:has(.jpk-review-page) .cmp_breadcrumbs,
    body:has(.jpk-template-page) .cmp_breadcrumbs,
    body:has(.jpk-guidelines-page) .cmp_breadcrumbs {
        gap: 5px;
        margin-bottom: 16px !important;
        padding: 9px 11px !important;
        font-size: 10px !important;
    }
}

/* =====================================================
   JPK - GLOBAL PREMIUM BREADCRUMB
   OJS 3.3.0.21 | All Journal Pages
   ===================================================== */

/* Main breadcrumb container */
.pkp_structure_main .cmp_breadcrumbs {
    display: block !important;
    width: 100%;
    box-sizing: border-box;
    margin: 0 0 23px !important;
    padding: 11px 16px !important;

    background: linear-gradient(
        110deg,
        #fff7f7 0%,
        #ffffff 100%
    ) !important;

    border: 1px solid #f0dfe2 !important;
    border-left: 4px solid #982633 !important;
    border-radius: 9px !important;

    box-shadow: 0 3px 13px rgba(117,27,39,.045);
}

/* Breadcrumb list */
.pkp_structure_main .cmp_breadcrumbs ol {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;

    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Breadcrumb items */
.pkp_structure_main .cmp_breadcrumbs li {
    display: inline-flex !important;
    align-items: center;
    margin: 0 !important;
    padding: 0 !important;

    color: #4b5563 !important;
    font-size: 11px !important;
    line-height: 1.7;
}

/* Links */
.pkp_structure_main .cmp_breadcrumbs a {
    color: #8e2633 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-decoration: none !important;

    transition: color .2s ease;
}

.pkp_structure_main .cmp_breadcrumbs a:hover {
    color: #c43b48 !important;
    text-decoration: none !important;
}

/* Home icon */
.pkp_structure_main .cmp_breadcrumbs li:first-child a::before {
    content: "\2302";
    display: inline-block;
    margin-right: 5px;
    color: #a92736;
    font-size: 16px;
    font-weight: 800;
    vertical-align: -1px;
}

/* Separator */
.pkp_structure_main .cmp_breadcrumbs .separator {
    display: inline-block;
    margin: 0 2px !important;
    color: #c58a91 !important;
    font-size: 0 !important;
}

.pkp_structure_main .cmp_breadcrumbs .separator::before {
    content: "/";
    font-size: 12px;
    font-weight: 500;
}

/* Current page */
.pkp_structure_main .cmp_breadcrumbs li:last-child {
    color: #4b5563 !important;
    font-weight: 700 !important;
}

/* Hide default page title globally */
.pkp_structure_main .page_title {
    display: none !important;
}

/* Mobile */
@media (max-width: 600px) {
    .pkp_structure_main .cmp_breadcrumbs {
        margin-bottom: 16px !important;
        padding: 9px 11px !important;
        border-radius: 8px !important;
    }

    .pkp_structure_main .cmp_breadcrumbs ol {
        gap: 5px;
    }

    .pkp_structure_main .cmp_breadcrumbs li,
    .pkp_structure_main .cmp_breadcrumbs a {
        font-size: 10px !important;
    }
}

/* =========================================
   JPK PUBLICATION ETHICS
   Modern Editorial | Maroon - White
========================================= */

.jpk-ethics-page {
    --ethics-maroon: #8f1832;
    --ethics-dark: #571126;
    --ethics-red: #bd344d;
    --ethics-soft: #fff5f6;
    --ethics-text: #394150;
    --ethics-muted: #697386;

    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    color: var(--ethics-text);
    font-family: inherit;
    line-height: 1.8;
    font-size: 14px;
    box-sizing: border-box;
}

.jpk-ethics-page *,
.jpk-ethics-page *::before,
.jpk-ethics-page *::after {
    box-sizing: border-box;
}

/* HERO */
.jpk-ethics-hero {
    position: relative;
    overflow: hidden;
    padding: 34px 36px;
    margin: 0 0 24px;
    border-radius: 16px;
    color: #fff;
    background:
        radial-gradient(circle at 90% 10%,
        rgba(255,255,255,.15), transparent 32%),
        linear-gradient(120deg, #571126 0%, #8f1832 58%, #bd344d 100%);
    box-shadow: 0 12px 28px rgba(102, 16, 42, .15);
}

.jpk-ethics-kicker,
.jpk-ethics-eyebrow {
    display: inline-block;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.jpk-ethics-kicker {
    color: #ffdce4;
    margin-bottom: 9px;
}

.jpk-ethics-hero h2 {
    margin: 0 0 10px !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: clamp(25px, 4vw, 34px) !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    border: 0 !important;
}

.jpk-ethics-hero p {
    max-width: 690px;
    margin: 0 !important;
    color: rgba(255,255,255,.88);
    font-size: 14px;
    line-height: 1.75;
}

.jpk-ethics-hero-line {
    width: 58px;
    height: 4px;
    margin-top: 22px;
    border-radius: 10px;
    background: #f5bdc9;
}

/* INTRO */
.jpk-ethics-intro,
.jpk-ethics-guideline,
.jpk-ethics-role {
    padding: 25px 28px;
    margin-bottom: 20px;
    border: 1px solid #f0e3e7;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(50, 20, 30, .045);
}

.jpk-ethics-intro {
    border-left: 4px solid var(--ethics-maroon);
    background: linear-gradient(120deg, #fffafa, #fff);
}

.jpk-ethics-intro h3,
.jpk-ethics-guideline h3,
.jpk-ethics-role h3 {
    color: var(--ethics-dark);
    font-size: 19px;
    line-height: 1.4;
    font-weight: 800;
    margin: 0 0 14px;
}

.jpk-ethics-page p {
    color: var(--ethics-text);
    margin: 0 0 13px;
    text-align: justify;
}

.jpk-ethics-page p:last-child {
    margin-bottom: 0;
}

/* SECTION HEADING */
.jpk-ethics-section-heading {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
    padding-bottom: 17px;
    border-bottom: 1px solid #f0e3e7;
}

.jpk-ethics-number {
    display: flex;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    color: #fff;
    font-size: 15px;
    font-weight: 800;
    background: linear-gradient(135deg, #571126, #bd344d);
    box-shadow: 0 5px 12px rgba(143, 24, 50, .18);
}

.jpk-ethics-eyebrow {
    color: var(--ethics-red);
    margin-bottom: 4px;
    font-size: 9px;
}

.jpk-ethics-section-heading h3 {
    margin: 0 !important;
}

/* ETHICS ITEMS */
.jpk-ethics-item {
    position: relative;
    padding: 16px 18px 16px 20px;
    margin: 0 0 12px;
    border: 1px solid #f1e8eb;
    border-radius: 10px;
    background: #fff;
    transition: border-color .25s ease,
                box-shadow .25s ease,
                transform .25s ease;
}

.jpk-ethics-item:last-child {
    margin-bottom: 0;
}

.jpk-ethics-item::before {
    content: "";
    position: absolute;
    top: 19px;
    bottom: 19px;
    left: 0;
    width: 3px;
    border-radius: 0 5px 5px 0;
    background: var(--ethics-maroon);
}

.jpk-ethics-item h4 {
    margin: 0 0 7px !important;
    color: var(--ethics-maroon) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.5;
}

.jpk-ethics-item p {
    font-size: 13px;
    line-height: 1.8;
}

@media (hover: hover) {
    .jpk-ethics-item:hover {
        border-color: #e5bdc8;
        box-shadow: 0 7px 18px rgba(100, 20, 42, .07);
        transform: translateY(-2px);
    }
}

/* FOOTER */
.jpk-ethics-footer {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 22px 25px;
    margin-top: 24px;
    border: 1px solid #f0dce2;
    border-radius: 13px;
    background: linear-gradient(110deg, #fff4f6, #fff);
}

.jpk-ethics-footer-mark {
    display: flex;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: var(--ethics-maroon);
    color: #fff;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: 1px;
}

.jpk-ethics-footer strong {
    display: block;
    margin-bottom: 3px;
    color: var(--ethics-dark);
    font-size: 14px;
}

.jpk-ethics-footer p {
    margin: 0;
    color: var(--ethics-muted);
    font-size: 12px;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .jpk-ethics-hero {
        padding: 26px 22px;
        border-radius: 12px;
    }

    .jpk-ethics-intro,
    .jpk-ethics-guideline,
    .jpk-ethics-role {
        padding: 20px 17px;
        margin-bottom: 15px;
    }

    .jpk-ethics-section-heading {
        gap: 11px;
    }

    .jpk-ethics-number {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
    }

    .jpk-ethics-section-heading h3 {
        font-size: 17px !important;
    }

    .jpk-ethics-item {
        padding: 14px 14px 14px 17px;
    }

    .jpk-ethics-page p {
        text-align: left;
    }

    .jpk-ethics-footer {
        align-items: flex-start;
        padding: 18px;
    }
}

@media (max-width: 420px) {
    .jpk-ethics-hero h2 {
        font-size: 25px !important;
    }

    .jpk-ethics-intro,
    .jpk-ethics-guideline,
    .jpk-ethics-role {
        padding: 17px 13px;
    }
}

/* JS READY STATE */
.jpk-ethics-page .jpk-ethics-item {
    opacity: 1;
}

/* FIX: Publication Ethics Hero Text Color */
.jpk-ethics-page .jpk-ethics-hero p,
.jpk-ethics-page .jpk-ethics-hero > p {
    color: #ffffff !important;
    opacity: 1 !important;
    font-weight: 400 !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

.jpk-ethics-page .jpk-ethics-hero h2,
.jpk-ethics-page .jpk-ethics-hero .jpk-ethics-kicker {
    color: #ffffff !important;
}
