﻿/* =========================
   VARIABLES
========================= */
:root {
    /* Fonts */
    --font-primary: Arial, sans-serif;
    --font-secondary: 'Segoe UI', Arial, sans-serif;
    /* Colors */
    --color-white: #ffffff;
    --color-black: #000000;
    --color-text-dark: #333333;
    --color-text-light: #666666;
    --color-muted: #cccccc;
    --color-border-light: #eeeeee;
    --color-blue: #0088cc;
    --color-orange: #f39c12;
    --color-orange-bg: #f7941d;
    --color-orange-table: #f39200;
    --color-footer-bg: #002133;
    --color-footer-border: rgba(255, 255, 255, 0.1);
    /* Spacing */
    --space-0: 0;
    --space-4: 4px;
    --space-5: 5px;
    --space-6: 6px;
    --space-8: 8px;
    --space-10: 10px;
    --space-15: 15px;
    --space-20: 20px;
    --space-30: 30px;
    /* Font Sizes */
    --font-10: 10px;
    --font-12: 12px;
    --font-13: 13px;
    --font-14: 14px;
    --font-16: 16px;
    --font-18: 18px;
    --font-22: 22px;
    --font-24: 24px;
    /* Radius */
    --radius-4: 4px;
    /* Other */
    --logo-height: 50px;
    --btn-height: 45px;
    --scroll-up-size: 18px;
}

/* =========================
   BASE
========================= */
body {
    font-family: var(--font-primary);
    margin: var(--space-0);
    overflow-x: hidden;
}

/* =========================
   HEADER
========================= */
.main-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--space-10) var(--space-20);
    background-color: var(--color-white);
    border-bottom: 1px solid var(--color-border-light);
}

/* Logo */
.logo {
    display: flex;
    align-items: center;
}

    .logo img {
        height: var(--logo-height);
        margin-right: var(--space-10);
    }

.logo-text h1 {
    font-size: var(--font-24);
    margin: var(--space-0);
    text-transform: lowercase;
    font-style: italic;
    color: var(--color-text-dark);
}

.logo-text p {
    font-size: var(--font-10);
    margin: var(--space-0);
    color: var(--color-text-light);
}

/* Navigation */
.nav-menu ul {
    list-style: none;
    display: flex;
    gap: var(--space-20);
    margin: var(--space-0);
}

    .nav-menu ul li a {
        text-decoration: none;
        color: var(--color-text-dark);
        font-size: var(--font-14);
        font-weight: 500;
    }

        .nav-menu ul li a.active {
            color: var(--color-orange);
        }

.nav-menu i {
    font-size: var(--font-12);
    margin-left: 3px;
}

/* Header Actions */
.header-actions {
    display: flex;
    align-items: center;
    gap: var(--space-15);
}

.submit-btn {
    background-color: var(--color-blue);
    color: var(--color-white);
    padding: 8px 15px;
    border-radius: var(--radius-4);
    text-decoration: none;
    font-weight: bold;
    font-size: var(--font-14);
}

.search-btn {
    background: var(--color-black);
    color: var(--color-white);
    border: none;
    padding: 8px 10px;
    border-radius: var(--radius-4);
    cursor: pointer;
}

/* Language Selector */
.lang-selector {
    display: flex;
    gap: var(--space-10);
    font-size: var(--font-13);
    font-weight: bold;
}

.lang-item {
    display: flex;
    align-items: center;
    gap: var(--space-5);
}

    .lang-item img {
        width: 18px;
    }

/* =========================
   NAV / BANNER
========================= */
.orange-bg {
    background-color: var(--color-orange-bg) !important;
    display: block !important;
    width: 100%;
}

.banner-section {
    color: var(--color-white) !important;
    padding: 0 var(--space-30) !important;
}

/* =========================
   TABLE
========================= */
.archive-table {
    width: 100%;
    border-collapse: collapse !important;
    margin-top: var(--space-20);
}

.header-cell {
    background-color: var(--color-orange-table) !important;
    color: var(--color-white) !important;
    padding: var(--space-15);
    text-align: center;
    font-weight: bold;
}

.gray-cell a {
    text-decoration: none;
    color: inherit;
    display: block;
    width: 100%;
}

/* =========================
   FOOTER
========================= */
.main-footer {
    background-color: var(--color-footer-bg);
    color: var(--color-white);
    padding: var(--space-20) var(--space-30) var(--space-10);
    font-family: var(--font-secondary);
}

.footer-logo {
    font-size: var(--font-22);
    font-weight: bold;
    margin-bottom: var(--space-5);
}

.journal-info {
    font-size: var(--font-13);
    color: var(--color-muted);
    margin-bottom: var(--space-10);
}

.open-access {
    font-size: var(--font-14);
}

.footer-heading {
    font-weight: bold;
    margin-bottom: var(--space-20);
    font-size: var(--font-16);
}

.footer-links {
    list-style: none;
    padding: var(--space-0);
}

    .footer-links li {
        margin-bottom: 1px;
    }

    .footer-links a {
        color: var(--color-white);
        text-decoration: none;
        font-size: var(--font-14);
    }

/* Newsletter */
.custom-field {
    background-color: var(--color-white) !important;
    border: none !important;
    height: var(--btn-height);
    padding-left: var(--space-20) !important;
    font-size: var(--font-14);
    color: var(--color-text-dark) !important;
}

.subscribe-btn {
    background-color: var(--color-blue) !important;
    color: var(--color-white) !important;
    font-weight: bold;
    height: var(--btn-height);
    border: none;
    letter-spacing: 0.5px;
    cursor: pointer;
}

    .subscribe-btn:hover {
        opacity: 0.9;
    }

.footer-bottom {
    border-top: 1px solid var(--color-footer-border);
    padding-top: var(--space-15);
    text-align: center;
}

.copyright-text {
    font-size: var(--font-13);
    color: var(--color-muted);
}

.scroll-up-btn {
    position: absolute;
    right: 0;
    bottom: 15px;
    color: var(--color-blue);
    font-size: var(--font-18);
    cursor: pointer;
}

/* =========================
   RESPONSIVE
========================= */
@media (max-width: 991px) {
    .main-header {
        flex-direction: column;
        gap: var(--space-15);
        text-align: center;
    }

    .nav-menu ul {
        flex-wrap: wrap;
        justify-content: center;
        padding: var(--space-0);
        gap: var(--space-10);
    }

    .header-actions {
        flex-direction: column;
        width: 100%;
    }

    .submit-btn {
        width: 100%;
        text-align: center;
    }
}

@media (max-width: 768px) {
    .banner-section .container {
        flex-direction: column;
        text-align: center;
        gap: var(--space-5);
    }

    .archive-table {
        font-size: var(--font-12);
    }

    .header-cell,
    .gray-cell {
        padding: var(--space-8) var(--space-4);
    }

    .main-footer {
        text-align: center;
    }

    .footer-links {
        margin-bottom: var(--space-20);
    }

    .footer-bottom {
        padding-bottom: 40px;
    }

    .scroll-up-btn {
        position: relative;
        margin-top: var(--space-10);
        display: block;
    }

    .col-lg-4.text-center {
        margin-top: var(--space-30);
    }
}
