/* --- Global Sidebar Enhancements --- */

/* Base styling for all sidebar blocks */
.pkp_block {
    background-color: #ffffff; /* White background for all blocks */
    border: 1px solid #e0e0e0; /* Subtle light gray border around each block */
    border-radius: 4px; /* Slightly rounded corners for a modern look */
    margin-bottom: 20px; /* More space between blocks */
    padding: 15px; /* Consistent padding inside each block */
    box-shadow: 0 2px 4px rgba(0,0,0,0.05); /* Very subtle shadow for depth */
}

/* Style for block titles (e.g., "Language", "User Login", "Information") */
.pkp_block h2 {
    font-size: 1.15em; /* Slightly larger title font */
    color: #333333; /* Darker color for titles */
    margin-top: 0; /* Remove default top margin */
    margin-bottom: 15px; /* Space below the title */
    padding-bottom: 10px; /* Padding for the line under title */
    border-bottom: 1px solid #eeeeee; /* Light separator line under each title */
    font-weight: 600; /* Make titles a bit bolder */
}

/* General list item styling within blocks */
.pkp_block ul {
    list-style: none; /* Remove default bullet points from most lists */
    padding: 0; /* Remove default padding */
    margin: 0; /* Remove default margin */
}

.pkp_block ul li {
    margin-bottom: 8px; /* Space between list items */
    font-size: 0.95em; /* Slightly smaller font for list items */
    line-height: 1.5; /* Improve readability */
}

.pkp_block ul li a {
    color: #007bff; /* Primary link color (OJS default blue) */
    text-decoration: none; /* Remove underline by default */
    transition: color 0.2s ease-in-out; /* Smooth transition for hover effect */
}

.pkp_block ul li a:hover {
    color: #0056b3; /* Darker blue on hover */
    text-decoration: underline; /* Add underline on hover */
}

/* --- Specific Block Adjustments (optional, but good for consistency) --- */

/* Adjustments for the Language block */
.pkp_block_language ul li {
    display: inline-block; /* Display languages horizontally */
    margin-right: 10px; /* Space between language options */
}
.pkp_block_language ul li:last-child {
    margin-right: 0; /* No margin after the last one */
}
.pkp_block_language ul li a {
    padding: 3px 6px;
    border: 1px solid #dee2e6;
    border-radius: 3px;
    background-color: #f8f9fa;
    color: #495057;
}
.pkp_block_language ul li a:hover {
    background-color: #e2e6ea;
    border-color: #dae0e5;
    color: #333;
}
/* For the active language */
.pkp_block_language ul li.current {
    font-weight: bold;
}
.pkp_block_language ul li.current a {
    background-color: #007bff;
    color: #ffffff;
    border-color: #007bff;
}
.pkp_block_language ul li.current a:hover {
    background-color: #0056b3;
    border-color: #0056b3;
}


/* Adjustments for the Search block */
.pkp_block_search form {
    display: flex; /* Make input and button side-by-side */
}
.pkp_block_search input[type="text"] {
    flex-grow: 1; /* Search input takes available space */
    border: 1px solid #ced4da;
    border-radius: 4px 0 0 4px; /* Rounded left side */
    padding: 8px 10px;
    font-size: 0.9em;
}
.pkp_block_search button {
    background-color: #007bff; /* Search button background */
    color: #ffffff;
    border: 1px solid #007bff;
    border-radius: 0 4px 4px 0; /* Rounded right side */
    padding: 8px 12px;
    cursor: pointer;
    transition: background-color 0.2s ease-in-out;
}
.pkp_block_search button:hover {
    background-color: #0056b3; /* Darker on hover */
    border-color: #0056b3;
}

/* Adjustments for "Make a Submission" link block */
.pkp_block_make_submission .block_content p a {
    display: block; /* Make the link fill the block */
    background-color: #28a745; /* Green button style */
    color: #ffffff;
    text-align: center;
    padding: 10px 15px;
    border-radius: 4px;
    text-decoration: none;
    font-weight: bold;
    transition: background-color 0.2s ease-in-out;
}
.pkp_block_make_submission .block_content p a:hover {
    background-color: #218838; /* Darker green on hover */
    text-decoration: none;
}


/* If you have the 'Current Issue' block, you might want to style its thumbnail */
.pkp_block_issue .issue_cover {
    text-align: center;
    margin-bottom: 10px;
}
.pkp_block_issue .issue_cover img {
    max-width: 100%;
    height: auto;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
}


/* Adjustments for 'Information' (For Readers/Authors/Librarians) */
.pkp_block_information ul li {
    border-bottom: 1px dashed #f0f0f0; /* Dashed line separator */
    padding-bottom: 5px;
    margin-bottom: 5px;
}
.pkp_block_information ul li:last-child {
    border-bottom: none; /* No line after the last item */
}


/* For the "Custom Block: Why Publish With TheIOJH" block we made earlier */
/* Ensure this styling integrates well with the new general block styling */
.pkp_block.custom-block-why-publish {
    /* Override or enhance general block styling */
    background-color: #f8f8f8; /* A slightly different background for distinction */
    border-left: 5px solid #007bff; /* Keep the accent border */
    border-right: 1px solid #e0e0e0; /* Align with general border */
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    border-radius: 4px; /* Maintain rounded corners */
    padding: 15px;
    margin-bottom: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.07); /* Slightly more prominent shadow */
}

.custom-block-why-publish .custom-block-title {
    font-size: 1.15em; /* Align with other block titles */
    color: #333;
    margin-top: 0;
    margin-bottom: 15px;
    border-bottom: 1px solid #eee;
    padding-bottom: 10px;
    font-weight: 600;
}

.custom-block-why-publish .why-publish-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.custom-block-why-publish .why-publish-list li {
    margin-bottom: 10px;
    font-size: 0.95em;
    color: #555;
    line-height: 1.4;
}

.custom-block-why-publish .why-publish-list li i {
    color: #007bff;
    margin-right: 8px;
    width: 20px;
    text-align: center;
}
/* End of Custom Block Specific Styling */


/* --- General Container for Journal/Section Body --- */
.pkp_structure_main .body { /* Targeting '.body' specifically within main content to avoid conflicts */
    background-color: #fff; /* Clean white background */
    border: 1px solid #e0e0e0; /* Subtle border */
    border-radius: 8px; /* Slightly rounded corners */
    padding: 25px; /* Ample internal padding */
    margin-bottom: 30px; /* Space below each journal summary block */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); /* Soft shadow for depth */
    transition: all 0.3s ease; /* Smooth transition for hover effects */
}

.pkp_structure_main .body:hover {
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08); /* Slightly larger shadow on hover */
    transform: translateY(-3px); /* Gentle lift effect */
}

/* --- Journal Title Styling --- */
.pkp_structure_main .body h3 {
    font-size: 1.8em; /* Prominent title size */
    margin-top: 0; /* Remove default top margin */
    margin-bottom: 15px; /* Space below title */
    color: #0056b3; /* A strong blue color */
}

.pkp_structure_main .body h3 a {
    text-decoration: none; /* Remove underline from title link */
    color: inherit; /* Inherit color from parent h3 */
    transition: color 0.3s ease;
}

.pkp_structure_main .body h3 a:hover {
    color: #007bff; /* Slightly lighter blue on hover */
}

/* --- Description Styling --- */
.pkp_structure_main .body .description {
    margin-bottom: 25px; /* Space between description and links */
    color: #495057; /* Standard dark grey text color */
    line-height: 1.7; /* Improved readability */
}

.pkp_structure_main .body .description p {
    margin-bottom: 15px; /* Space between paragraphs in description */
}

/* IMPORTANT: Override the inline styles that were present */
.pkp_structure_main .body .description strong,
.pkp_structure_main .body .description span {
    color: inherit !important; /* Force inheritance */
    font-family: inherit !important; /* Force inheritance */
    font-size: inherit !important; /* Force inheritance */
    font-style: inherit !important;
    font-variant-ligatures: inherit !important;
    font-variant-caps: inherit !important;
    font-weight: bold !important; /* Keep strong bold */
    letter-spacing: inherit !important;
    text-align: inherit !important;
    text-indent: inherit !important;
    text-transform: inherit !important;
    word-spacing: inherit !important;
    white-space: normal !important;
    background-color: transparent !important; /* Remove any inline background colors */
    text-decoration-thickness: initial !important;
    text-decoration-style: initial !important;
    text-decoration-color: initial !important;
    -webkit-text-stroke-width: 0px !important;
    orphans: initial !important;
    widows: initial !important;
}


/* --- Links (View Journal, Current Issue) Styling --- */
.pkp_structure_main .body .links {
    list-style: none; /* Remove bullet points */
    padding: 0;
    margin: 0;
    display: flex; /* Arrange links in a row */
    flex-wrap: wrap; /* Allow links to wrap on smaller screens */
    gap: 15px; /* Space between links */
}

.pkp_structure_main .body .links li {
    margin-bottom: 0; /* Remove default list item margin */
}

.pkp_structure_main .body .links li a {
    display: inline-block; /* Treat link as a block for padding */
    background-color: #007bff; /* Primary button background */
    color: #fff; /* White text for button */
    padding: 10px 20px;
    border-radius: 5px; /* Rounded button corners */
    text-decoration: none; /* No underline */
    font-weight: 600; /* Slightly bolder text */
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.pkp_structure_main .body .links li a:hover {
    background-color: #0056b3; /* Darker blue on hover */
    transform: translateY(-2px); /* Gentle lift effect */
}

/* Style for the "Current Issue" link to differentiate if needed */
.pkp_structure_main .body .links li.current a {
    background-color: #28a745; /* Green for current issue */
}

.pkp_structure_main .body .links li.current a:hover {
    background-color: #218838; /* Darker green on hover */
}

/* --- Responsive Adjustments --- */
@media (max-width: 767px) { /* Tablets and smaller */
    .pkp_structure_main .body {
        padding: 20px;
        margin-bottom: 25px;
    }

    .pkp_structure_main .body h3 {
        font-size: 1.5em;
        margin-bottom: 10px;
    }

    .pkp_structure_main .body .description {
        margin-bottom: 20px;
    }

    .pkp_structure_main .body .links {
        flex-direction: column; /* Stack buttons vertically on small screens */
        gap: 10px; /* Space between stacked buttons */
    }

    .pkp_structure_main .body .links li a {
        width: 100%; /* Make buttons full width */
        text-align: center;
        padding: 12px 20px; /* Slightly more padding for easier tapping */
    }
}


==================

/* --- Custom Block: MENU --- */
#customblock-menu {
    /* Inherits general pkp_block styling, but can override if needed */
    /* Example: if you want a different background or border for this specific block */
    /* background-color: #f9f9f9; */
    /* border-color: #ddd; */
}

/* --- Menu Title --- */
#customblock-menu h2.title {
    /* Inherits general pkp_block h2 styling. Can override here. */
    text-align: center; /* Center the "MENU" title */
    color: #0056b3; /* A prominent color for the menu title */
    font-size: 1.4em; /* Slightly larger */
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #007bff; /* A strong underline for the menu title */
    position: relative;
}

/* --- Sidebar Menu List --- */
#customblock-menu .sidebar-menu {
    list-style: none; /* Remove default bullet points */
    padding: 0;
    margin: 0;
}

#customblock-menu .sidebar-menu li {
    margin-bottom: 5px; /* Space between menu items */
}

#customblock-menu .sidebar-menu li a {
    display: flex; /* Use flexbox for icon and text alignment */
    align-items: center; /* Vertically align icon and text */
    padding: 12px 15px; /* Generous padding for clickable area */
    color: #495057; /* Dark grey text color */
    text-decoration: none; /* No underline by default */
    border-radius: 5px; /* Slightly rounded corners for each item */
    transition: all 0.3s ease; /* Smooth transitions for hover effects */
    background-color: transparent; /* Ensure no background color by default */
    position: relative; /* Needed for the underline hover effect */
    overflow: hidden; /* Hide the initial underline */
}

#customblock-menu .sidebar-menu li a:hover {
    color: #007bff; /* Primary blue on hover */
    background-color: #e9f0f7; /* Light blue background on hover */
    padding-left: 20px; /* Slight indent on hover */
}

/* --- Underline From Center Effect (replaces hvr-underline-from-center) --- */
#customblock-menu .sidebar-menu li a::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0; /* Starts with no width */
    height: 3px; /* Thickness of the underline */
    background-color: #007bff; /* Blue underline */
    transition: width 0.3s ease; /* Smooth width transition */
}

#customblock-menu .sidebar-menu li a:hover::before {
    width: calc(100% - 30px); /* Full width minus padding on hover */
}


/* --- Icons within Menu Items --- */
#customblock-menu .sidebar-menu li a i {
    margin-right: 12px; /* Space between icon and text */
    min-width: 20px; /* Ensure consistent spacing if icons vary in width */
    text-align: center;
    color: #6c757d; /* Muted grey for icons */
    transition: color 0.3s ease;
}

#customblock-menu .sidebar-menu li a:hover i {
    color: #007bff; /* Icon turns primary blue on hover */
}

/* --- Responsive Adjustments --- */
@media (max-width: 575px) { /* Extra small devices (phones) */
    #customblock-menu h2.title {
        font-size: 1.3em;
        margin-bottom: 15px;
        padding-bottom: 8px;
    }

    #customblock-menu h2.title::after {
        width: 40px;
    }

    #customblock-menu .sidebar-menu li a {
        padding: 10px 10px; /* Slightly less padding on smaller screens */
    }

    #customblock-menu .sidebar-menu li a:hover {
        padding-left: 15px; /* Less indent on hover for smaller screens */
    }

    #customblock-menu .sidebar-menu li a i {
        margin-right: 10px;
        min-width: 18px;
    }

    #customblock-menu .sidebar-menu li a::before {
        height: 2px; /* Thinner underline on small screens */
    }

    #customblock-menu .sidebar-menu li a:hover::before {
        width: calc(100% - 20px); /* Adjust underline width for padding */
    }
}


/* --- Custom Block: Publisher --- */
#customblock-publisher {
    /* Inherits general pkp_block styling */
    text-align: center; /* Center content within the publisher block */
}

/* --- Block Title --- */
#customblock-publisher h2.title {
    /* Inherits general pkp_block h2 styling. Can override here. */
    text-align: center; /* Center the "Publisher" title */
    color: #0056b3; /* Prominent color */
    font-size: 1.4em;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #007bff; /* Strong underline */
    position: relative;
}

/* --- Publisher Info Wrapper --- */
#customblock-publisher .publisher-info-block {
    display: flex; /* Use flexbox for layout */
    flex-direction: column; /* Stack items vertically by default */
    align-items: center; /* Center items horizontally */
}

/* --- Publisher Logo --- */
#customblock-publisher .publisher-logo {
    margin-bottom: 20px; /* Space between logo and text */
}

#customblock-publisher .publisher-logo img {
    max-width: 120px; /* Max width for the logo, adjust as needed */
    height: auto; /* Maintain aspect ratio */
    display: block; /* Ensures centering with margin auto */
    margin: 0 auto; /* Center the image */
    border-radius: 8px; /* Slightly rounded corners for the logo */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); /* Subtle shadow for the logo */
    transition: transform 0.3s ease;
}

#customblock-publisher .publisher-logo img:hover {
    transform: scale(1.05); /* Slightly enlarge on hover */
}

/* --- Publisher Contact Details --- */
#customblock-publisher .publisher-contact-details {
    font-style: normal; /* Override default italic for address tag */
    color: #495057; /* Standard text color */
    line-height: 1.7; /* Good readability */
    margin-bottom: 0; /* Remove default address margin */
}

#customblock-publisher .publisher-contact-details strong {
    display: block; /* Make the publisher name take its own line */
    font-size: 1.1em;
    color: #333; /* Slightly darker for emphasis */
    margin-bottom: 8px;
}

#customblock-publisher .publisher-contact-details a {
    color: #007bff; /* Primary blue for links */
    text-decoration: none;
    transition: color 0.3s ease;
}

#customblock-publisher .publisher-contact-details a:hover {
    text-decoration: underline; /* Underline links on hover */
    color: #0056b3;
}

/* --- Responsive Adjustments --- */
@media (max-width: 575px) { /* Extra small devices (phones) */
    #customblock-publisher h2.title {
        font-size: 1.3em;
        margin-bottom: 15px;
        padding-bottom: 8px;
    }

    #customblock-publisher h2.title::after {
        width: 40px;
    }

    #customblock-publisher .publisher-logo img {
        max-width: 100px; /* Slightly smaller logo on phones */
    }

    #customblock-publisher .publisher-contact-details {
        font-size: 0.9em; /* Slightly smaller text */
    }
}