/* ==========================================================================
   MODERN OJS 3.X THEME OVERRIDE (Clean & Professional)
   Author: Gemini AI
   ========================================================================== */

/* 1. SETUP & TYPOGRAPHY */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&display=swap');

:root {
    /* Palet Warna diambil dari Logo JSSCT */
    --primary-color: #ffffff;       /* Biru Teal (Bagian sirkuit/bawah logo) */
    --secondary-color: #4caf50;     /* Hijau Daun (Bagian atas logo) */
    --accent-color: #e0f7fa;        /* Background Cyan sangat muda */
    --text-dark: #224882;           /* Abu-abu tua (Warna text JSSCT) */
    --text-light: #ffffff;
    --white: #ffffff;
    --card-shadow: 0 4px 6px -1px rgba(0,0,0,0.08), 0 2px 4px -1px rgba(0,0,0,0.04);
    --card-hover: 0 10px 15px -3px rgba(0,127,163,0.15), 0 4px 6px -2px rgba(0,0,0,0.05);
}
body {
    font-family: 'Inter', sans-serif;
    color: var(--text-dark);
    background-color: #DDDDDD; /* Light gray background for contrast */
    line-height: 1.6;
}

/* 2. HEADER & NAVIGATION */
.pkp_structure_head {
    background-color: #DDDDDD !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    border-bottom: none;
}

.pkp_site_name .is_img img {
    max-height: 200px;
    width: 1500px;
}

/* nav */
.pkp_navigation_primary_wrapper {
    background-color: #ff7b00;
}

/* Ubah warna teks link navigasi */
.pkp_navigation_primary > li > a {
    color: #032A62 !important;
}

/* Ubah juga untuk hover state */
.pkp_navigation_primary > li > a:hover,
.pkp_navigation_primary > li > a:focus {
    color: #032A62 !important;
}

/* Untuk dropdown jika ada */
.pkp_navigation_primary .dropdown-menu a {
    color: #032A62 !important;
}

/* Untuk submenu jika ada */
.pkp_navigation_primary .submenu a {
    color: #032A62 !important;
}

/* User Nav (Login/Register) */
.pkp_navigation_user > li > a {
    font-size: 0.85rem;
    font-weight: 500;
}

/* 3. HERO SECTION (Homepage Description) */
.pkp_structure_main:before {
    /* Opsional: Menambahkan aksen warna di atas konten */
    display: none; 
}

.homepage_about {
    background: var(--white);
    padding: 2rem;
    border-radius: 8px;
    box-shadow: var(--card-shadow);
    margin-bottom: 2rem;
}

/* 4. ARTICLE LIST AS CARDS (Bagian Paling Penting) */
/* Mengubah list artikel menjadi kotak-kotak modern */

.obj_article_summary {
    background: var(--white);
    border: 1px solid #eaeaea;
    border-radius: 8px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    transition: all 0.3s ease;
    position: relative;
    box-shadow: var(--card-shadow);
}

.obj_article_summary:hover {
    transform: translateY(-5px);
    box-shadow: var(--card-hover);
    border-color: var(--secondary-color);
}

.obj_article_summary .title a {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--primary-color);
    text-decoration: none;
}

.obj_article_summary .authors {
    color: var(--text-dark) !important;
    font-size: 0.9rem;
    margin-top: 0.5rem;
}

/* PDF Button Styling */
.obj_article_summary .galleys_links {
    margin-top: 1rem;
}

.obj_article_summary .pdf {
    background-color: var(--primary-color);
    color: var(--white) !important;
    padding: 6px 15px;
    border-radius: 4px;
    text-transform: uppercase;
    font-size: 0.75rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.3s;
}

.obj_article_summary .pdf:hover {
    background-color: var(--secondary-color);
}

/* 5. SIDEBAR WIDGETS */
.pkp_structure_sidebar {
    padding-left: 20px;
}

.pkp_block {
    background: var(--white);
    padding: 1.5rem;
    border-radius: 8px;
    box-shadow: var(--card-shadow);
    margin-bottom: 1.5rem;
    border-top: 4px solid var(--primary-color); /* Aksen warna di atas widget */
}

.pkp_block .title {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text-dark);
    margin-bottom: 1rem;
    border-bottom: 1px solid #eee;
    padding-bottom: 0.5rem;
}

/* Make Submission Button Stand Out */
.pkp_block_make_submission a {
    display: block;
    background-color: var(--secondary-color);
    color: white;
    text-align: center;
    padding: 12px;
    border-radius: 5px;
    font-weight: bold;
    text-decoration: none;
}
.pkp_block_make_submission a:hover {
    background-color: var(--primary-color);
}

/* 6. FOOTER */
.pkp_structure_footer {
    background-color: var(--text-dark);
    color: #f8f9fa;
    padding: 3rem 0;
    margin-top: 3rem;
    text-align: center;
}

.pkp_structure_footer a {
    color: var(--accent-color);
}

.pkp_brand_footer {
    display: none !important;
}

/* 7. RESPONSIVE FIXES */
@media (max-width: 767px) {
    .pkp_structure_sidebar {
        padding-left: 0;
        margin-top: 2rem;
    }
}
/* ==========================================================================
   MODERN FOOTER STYLING
   ========================================================================== */

/* 1. Reset Container Footer Bawaan OJS */
.pkp_structure_footer {
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

.pkp_structure_footer_wrapper {
    background-color: #263238; /* Dark Blue-Grey yang elegan */
    color: #cfd8dc;
    border-top: 5px solid var(--secondary-color); /* Garis hijau di atas footer */
}

/* 2. Layout Grid Footer */
.custom-ojs-footer {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    font-family: 'Inter', sans-serif;
}

.footer-container {
    display: grid;
    grid-template-columns: 2fr 1fr 1.5fr; /* Pembagian lebar kolom */
    gap: 3rem;
    padding-bottom: 3rem;
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

/* 3. Typography & Elements */
.footer-col h4 {
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 1.2rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.footer-logo {
    max-width: 180px;
    margin-bottom: 1rem;
    filter: brightness(0) invert(1); /* Membuat logo otomatis jadi putih */
}

.footer-desc {
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

/* 4. Links Styling */
.links-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.links-col ul li {
    margin-bottom: 0.8rem;
}

.links-col ul li a {
    color: #b0b0b0;
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-block;
}

.links-col ul li a:hover {
    color: #3282B8; /* Warna biru muda saat hover */
    transform: translateX(5px); /* Efek geser sedikit */
}

/* 5. Social Links (Button Style) */
.social-links a {
    display: inline-block;
    margin-right: 10px;
    color: #ffffff;
    background: rgba(255,255,255,0.1);
    padding: 5px 12px;
    border-radius: 4px;
    text-decoration: none;
    font-size: 0.8rem;
    transition: background 0.3s;
}

.social-links a:hover {
    background: #3282B8;
}

/* 6. Indexing Logos */
.indexing-logos {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}

.indexing-logos img {
    height: 40px;
    width: auto;
    background: #fff;
    padding: 5px;
    border-radius: 4px;
    opacity: 0.8;
    transition: opacity 0.3s;
}

.indexing-logos img:hover {
    opacity: 1;
}

/* 7. Copyright Section */
.footer-copyright {
    text-align: center;
    padding: 1.5rem 0;
    font-size: 0.85rem;
    color: #6c757d;
}

/* 8. Responsiveness (Mobile) */
@media (max-width: 768px) {
    .footer-container {
        grid-template-columns: 1fr; /* Stack jadi 1 kolom di HP */
        gap: 2rem;
    }
    
    .footer-logo {
        max-width: 150px;
    }
}
/* login button */
.pkp_navigation_user>li>a {
    margin-left: 1px;
    margin-right: 0px;
    margin-top: 0.1rem;
    padding-top: 0.1rem;
    padding-left: 25px !important;
    padding-right: 25px !important;
    background: #76adda;
    border-radius: 20px;
    
}
/* custom button */
/* ========== SIMPLE SMALL MENU ========== */

.cmb_container {
    padding: 15px;
    max-width: 800px;
    margin: 20px auto;
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e9ecef;
}

.cmb_title {
    font-size: 18px;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 15px;
    text-align: left;
    padding-bottom: 8px;
    border-bottom: 1px solid #dee2e6;
}

.cmb_grid {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
}

.cmb_button {
    display: inline-block;
    background: white;
    color: #495057;
    text-decoration: none;
    padding: 8px 15px;
    border-radius: 4px;
    font-weight: 400;
    font-size: 14px;
    border: 1px solid #ced4da;
    transition: all 0.2s ease;
}

.cmb_button:hover {
    background: #e9ecef;
    border-color: #adb5bd;
    color: #212529;
}

.cmb_path {
    display: block;
    white-space: nowrap;
}

/* Responsive */
@media (max-width: 768px) {
    .cmb_container {
        padding: 12px;
        margin: 15px;
    }
    
    .cmb_title {
        font-size: 16px;
        margin-bottom: 12px;
    }
    
    .cmb_button {
        padding: 7px 12px;
        font-size: 13px;
    }
    
    .cmb_grid {
        gap: 6px;
    }
}

.homepage_about {
    text-align: justify !important;
}

p[dir="ltr"] {
    text-align: justify !important;
    line-height: 1.6;
}