/* ==========================================================================
   JAXA-Egypt Journal of Earth Intelligence & Academic Research Portal (JEJ-EIPT)
   World-Class Academic Journal & Peer-Reviewed Publishing Theme
   Lead Architect: Dr. Michael Nagy Riad Kamel Abd AlMalk (Chief Satellite Telemetry Specialist)
   ========================================================================== */

:root {
    /* Academic Light Theme Palette */
    --bg-page: #f8fafc;
    --bg-surface: #ffffff;
    --bg-subtle: #f1f5f9;
    --bg-card: #ffffff;
    --bg-card-hover: #ffffff;
    --bg-input: #ffffff;
    --bg-highlight: #eff6ff;

    /* Borders & Dividers */
    --border-subtle: #e2e8f0;
    --border-strong: #cbd5e1;
    --border-focus: #0284c7;
    --border-glow: rgba(2, 132, 199, 0.25);

    /* Primary Academic Colors (Oxford Navy & JAXA Blue) */
    --navy-primary: #0f172a;
    --navy-secondary: #1e293b;
    --navy-muted: #475569;
    --text-primary: #0f172a;
    --text-secondary: #334155;
    --text-muted: #64748b;

    /* Accents & Journal Badges */
    --accent-blue: #0284c7;
    --accent-dark-blue: #0369a1;
    --accent-indigo: #4338ca;
    --accent-emerald: #059669;
    --accent-gold: #d97706;
    --accent-amber: #b45309;
    --accent-rose: #e11d48;

    /* Badge Backgrounds */
    --badge-oa-bg: #fef3c7;
    --badge-oa-text: #92400e;
    --badge-oa-border: #fde68a;

    --badge-peer-bg: #dcfce7;
    --badge-peer-text: #166534;
    --badge-peer-border: #bbf7d0;

    --badge-article-bg: #e0f2fe;
    --badge-article-text: #075985;
    --badge-article-border: #bae6fd;

    /* Elevation Shadows */
    --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.08), 0 1px 2px -1px rgba(0, 0, 0, 0.08);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.07), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -4px rgba(0, 0, 0, 0.04);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 8px 10px -6px rgba(0, 0, 0, 0.04);

    /* Fonts */
    --font-serif: 'Merriweather', Georgia, Cambria, serif;
    --font-sans: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-mono: 'JetBrains Mono', 'Courier New', monospace;
    --font-ar: 'Cairo', 'Segoe UI', Tahoma, sans-serif;
}

[data-lang="ar"] {
    font-family: var(--font-ar), var(--font-sans);
    direction: rtl;
}

[data-lang="en"] {
    font-family: var(--font-sans);
    direction: ltr;
}

[data-lang="ja"] {
    font-family: var(--font-sans);
    direction: ltr;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: var(--bg-page);
    color: var(--text-primary);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    font-size: 15px;
    line-height: 1.6;
}

/* ==========================================================================
   TOP JOURNAL METADATA RIBBON
   ========================================================================== */
.journal-top-ribbon {
    background: #0f172a;
    color: #cbd5e1;
    font-size: 0.75rem;
    padding: 6px 24px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid #1e293b;
}

.journal-ribbon-left {
    display: flex;
    align-items: center;
    gap: 16px;
    font-weight: 500;
}

.journal-ribbon-badge {
    background: rgba(2, 132, 199, 0.2);
    color: #38bdf8;
    padding: 2px 8px;
    border-radius: 4px;
    font-weight: 700;
    font-size: 0.7rem;
    letter-spacing: 0.5px;
}

.journal-ribbon-right {
    display: flex;
    align-items: center;
    gap: 14px;
}

/* ==========================================================================
   ACADEMIC JOURNAL HEADER
   ========================================================================== */
.fellow-header {
    background: var(--bg-surface);
    border-bottom: 1px solid var(--border-subtle);
    padding: 18px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: var(--shadow-sm);
    position: sticky;
    top: 0;
    z-index: 100;
}

.fellow-brand {
    display: flex;
    align-items: center;
    gap: 18px;
    cursor: pointer;
}

.fellow-logo-wrap {
    width: 48px;
    height: 48px;
    border-radius: 8px;
    background: #f8fafc;
    border: 1px solid var(--border-subtle);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
    transition: transform 0.2s;
}

.fellow-logo-wrap:hover {
    transform: scale(1.04);
}

.fellow-logo-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.fellow-title-group h1 {
    font-family: var(--font-serif);
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--navy-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    letter-spacing: -0.2px;
}

[data-lang="ar"] .fellow-title-group h1 {
    font-family: var(--font-ar);
}

.fellow-badge-lab {
    font-family: var(--font-sans);
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    background: #e0f2fe;
    color: #0369a1;
    border: 1px solid #bae6fd;
    padding: 3px 8px;
    border-radius: 4px;
}

.fellow-subtitle {
    font-size: 0.8rem;
    color: var(--text-muted);
    margin-top: 2px;
    font-weight: 400;
}

.fellow-header-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

.fellow-nav-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--bg-subtle);
    color: var(--navy-primary);
    border: 1px solid var(--border-subtle);
    padding: 8px 14px;
    border-radius: 6px;
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s;
}

.fellow-nav-link:hover {
    background: #e2e8f0;
    border-color: #cbd5e1;
}

/* Premium Portal Return Button */
.portal-return-btn {
    background: linear-gradient(135deg, rgba(0, 242, 254, 0.12), rgba(168, 85, 247, 0.12)) !important;
    border: 1px solid rgba(0, 242, 254, 0.4) !important;
    color: #00f2fe !important;
    font-family: 'JetBrains Mono', monospace !important;
    font-size: 0.74rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    padding: 7px 14px !important;
    border-radius: 8px !important;
    gap: 8px !important;
    text-shadow: 0 0 10px rgba(0, 242, 254, 0.4) !important;
    box-shadow: 0 0 12px rgba(0, 242, 254, 0.15) !important;
    transition: all 0.25s ease !important;
}

.portal-return-btn:hover {
    background: rgba(0, 242, 254, 0.22) !important;
    border-color: #00f2fe !important;
    box-shadow: 0 0 20px rgba(0, 242, 254, 0.4) !important;
    transform: translateY(-1px) !important;
}

/* ==========================================================================
   JOURNAL HERO & EDITORIAL BANNER
   ========================================================================== */
.fellow-hero {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    border-bottom: 1px solid var(--border-subtle);
    padding: 40px 24px 32px 24px;
}

.fellow-hero-container {
    max-width: 1280px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 32px;
    align-items: center;
}

@media (max-width: 992px) {
    .fellow-hero-container {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}

.journal-hero-title {
    font-family: var(--font-serif);
    font-size: 1.85rem;
    font-weight: 700;
    color: var(--navy-primary);
    line-height: 1.35;
    margin-bottom: 12px;
    letter-spacing: -0.3px;
}

[data-lang="ar"] .journal-hero-title {
    font-family: var(--font-ar);
    line-height: 1.5;
}

.journal-hero-desc {
    font-size: 0.95rem;
    color: var(--text-secondary);
    line-height: 1.7;
    margin-bottom: 20px;
}

.journal-highlights-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.journal-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 20px;
    background: #f1f5f9;
    color: var(--navy-secondary);
    border: 1px solid var(--border-subtle);
}

.journal-pill.oa {
    background: var(--badge-oa-bg);
    color: var(--badge-oa-text);
    border-color: var(--badge-oa-border);
}

.journal-pill.peer {
    background: var(--badge-peer-bg);
    color: var(--badge-peer-text);
    border-color: var(--badge-peer-border);
}

.journal-metrics-card {
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 24px;
    box-shadow: var(--shadow-md);
}

.journal-metrics-title {
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: var(--text-muted);
    margin-bottom: 16px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--border-subtle);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.fellow-hero-stats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.fellow-stat-box {
    background: var(--bg-subtle);
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: 12px 14px;
    text-align: center;
    transition: transform 0.2s, box-shadow 0.2s;
}

.fellow-stat-box:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-sm);
    border-color: var(--accent-blue);
}

.fellow-stat-num {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--accent-dark-blue);
    font-family: var(--font-mono);
    line-height: 1.2;
}

.fellow-stat-label {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--text-muted);
    margin-top: 4px;
    text-transform: uppercase;
}

/* ==========================================================================
   JOURNAL NAVIGATION TABS
   ========================================================================== */
.fellow-main {
    max-width: 1280px;
    margin: 0 auto;
    padding: 32px 24px 60px 24px;
    width: 100%;
}

.fellow-tabs-nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    border-radius: 10px;
    padding: 6px;
    margin-bottom: 28px;
    box-shadow: var(--shadow-xs);
}

.fellow-tab-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    border: none;
    color: var(--text-muted);
    padding: 10px 18px;
    border-radius: 6px;
    font-family: var(--font-sans);
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.fellow-tab-pill:hover {
    background: var(--bg-subtle);
    color: var(--navy-primary);
}

.fellow-tab-pill.active {
    background: var(--navy-primary);
    color: #ffffff;
    box-shadow: var(--shadow-sm);
}

/* ==========================================================================
   SECTION CONTROLS & FILTER BARS
   ========================================================================== */
.papers-control-bar,
.ideas-control-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 24px;
    box-shadow: var(--shadow-xs);
}

.papers-search-box,
.ideas-search-box {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #f8fafc;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    padding: 9px 14px;
    flex: 1 1 300px;
    min-width: 240px;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.papers-search-box:focus-within,
.ideas-search-box:focus-within {
    background: #ffffff;
    border-color: var(--accent-blue);
    box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15);
}

.papers-search-box input,
.ideas-search-box input {
    background: transparent;
    border: none;
    outline: none;
    color: var(--text-primary);
    font-family: inherit;
    font-size: 0.85rem;
    width: 100%;
}

.papers-filter-group,
.ideas-filter-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.fellow-select {
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    padding: 8px 12px;
    font-size: 0.82rem;
    font-weight: 500;
    color: var(--navy-secondary);
    outline: none;
    cursor: pointer;
    transition: border-color 0.2s;
}

.fellow-select:focus {
    border-color: var(--accent-blue);
    box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15);
}

/* Academic Framing Banner */
.ideas-disclaimer-banner {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 8px;
    padding: 14px 18px;
    margin-bottom: 24px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    color: #166534;
    font-size: 0.85rem;
    line-height: 1.6;
}

.ideas-disclaimer-banner .disclaimer-icon {
    font-size: 1.25rem;
    flex-shrink: 0;
}

/* ==========================================================================
   SECTION 1: PUBLISHED ARTICLES GRID (SCIENTIFIC JOURNAL CARDS)
   ========================================================================== */
.papers-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.paper-card {
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    border-radius: 10px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.2s ease-in-out;
    box-shadow: var(--shadow-xs);
    position: relative;
}

.paper-card:hover {
    border-color: #94a3b8;
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.paper-card-top-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 12px;
}

.paper-journal-badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.paper-journal-tag {
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--accent-dark-blue);
    background: #e0f2fe;
    border: 1px solid #bae6fd;
    padding: 3px 8px;
    border-radius: 4px;
}

.paper-article-type {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 3px 8px;
    border-radius: 4px;
    background: #f1f5f9;
    color: var(--navy-secondary);
}

.paper-year-badge {
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--text-muted);
    font-family: var(--font-mono);
}

.paper-title {
    font-family: var(--font-serif);
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--navy-primary);
    line-height: 1.45;
    margin-bottom: 8px;
}

[data-lang="ar"] .paper-title {
    font-family: var(--font-ar);
}

.paper-authors {
    font-size: 0.85rem;
    color: #475569;
    margin-bottom: 12px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.paper-sensors-list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 14px;
}

.sensor-chip-mini {
    font-size: 0.7rem;
    font-weight: 600;
    font-family: var(--font-mono);
    padding: 2px 8px;
    border-radius: 4px;
    background: #f8fafc;
    color: #0369a1;
    border: 1px solid #cbd5e1;
}

.paper-abstract {
    font-size: 0.88rem;
    color: #334155;
    line-height: 1.65;
    margin-bottom: 18px;
    background: #f8fafc;
    border-left: 3px solid var(--accent-blue);
    padding: 12px 16px;
    border-radius: 0 6px 6px 0;
}

[data-lang="ar"] .paper-abstract {
    border-left: none;
    border-right: 3px solid var(--accent-blue);
    border-radius: 6px 0 0 6px;
}

.paper-metrics-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px dashed var(--border-subtle);
}

.paper-actions-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.paper-btn-action {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    color: var(--navy-secondary);
    font-size: 0.78rem;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s;
    text-decoration: none;
}

.paper-btn-action:hover {
    background: #f1f5f9;
    border-color: #94a3b8;
    color: var(--navy-primary);
}

.paper-btn-action.primary {
    background: var(--accent-blue);
    color: #ffffff;
    border-color: var(--accent-dark-blue);
}

.paper-btn-action.primary:hover {
    background: var(--accent-dark-blue);
}

/* ==========================================================================
   SECTION 2: RESEARCH IDEAS BANK & CONCEPTS
   ========================================================================== */
.ideas-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(440px, 1fr));
    gap: 24px;
}

@media (max-width: 768px) {
    .ideas-grid {
        grid-template-columns: 1fr;
    }
}

.idea-card {
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: var(--shadow-xs);
    transition: all 0.2s ease-in-out;
}

.idea-card:hover {
    border-color: #0284c7;
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.idea-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 12px;
}

.idea-topic-badge {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 4px 10px;
    border-radius: 4px;
    background: #e0f2fe;
    color: #0369a1;
    border: 1px solid #bae6fd;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.idea-topic-badge.urban { background: #fef3c7; color: #92400e; border-color: #fde68a; }
.idea-topic-badge.floods { background: #e0e7ff; color: #3730a3; border-color: #c7d2fe; }
.idea-topic-badge.agriculture { background: #dcfce7; color: #166534; border-color: #bbf7d0; }
.idea-topic-badge.marine { background: #ccfbf1; color: #115e59; border-color: #99f6e4; }
.idea-topic-badge.multi-mission { background: #f3e8ff; color: #6b21a8; border-color: #e9d5ff; }
.idea-topic-badge.ai { background: #ffe4e6; color: #9f1239; border-color: #fecdd3; }

.idea-readiness-badge {
    font-size: 0.68rem;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 4px;
    background: #f1f5f9;
    color: var(--text-muted);
    border: 1px solid var(--border-subtle);
}

.idea-title {
    font-family: var(--font-serif);
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--navy-primary);
    line-height: 1.45;
    margin-bottom: 14px;
}

[data-lang="ar"] .idea-title {
    font-family: var(--font-ar);
}

.idea-block-section {
    background: #f8fafc;
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: 12px 14px;
    margin-bottom: 12px;
}

.idea-block-title {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--accent-dark-blue);
    margin-bottom: 4px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.idea-block-text {
    font-size: 0.85rem;
    color: #334155;
    line-height: 1.6;
}

.idea-gap-box {
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-left: 3.5px solid #d97706;
    border-radius: 8px;
    padding: 12px 14px;
    margin-bottom: 12px;
}

[data-lang="ar"] .idea-gap-box {
    border-left: 1px solid #fde68a;
    border-right: 3.5px solid #d97706;
}

.idea-gap-box .idea-block-title {
    color: #92400e;
    font-weight: 700;
}

.idea-gap-box .idea-block-text {
    color: #78350f !important;
    font-weight: 500;
    line-height: 1.6;
}

.idea-meta-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 14px;
    font-size: 0.75rem;
}

.idea-meta-item {
    background: #f8fafc;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    padding: 8px 10px;
}

.idea-meta-label {
    color: var(--text-muted);
    font-size: 0.68rem;
    display: block;
    margin-bottom: 2px;
    font-weight: 600;
}

.idea-meta-val {
    color: var(--navy-secondary);
    font-weight: 600;
}

.idea-sensors-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 14px;
}

.idea-sensor-chip {
    font-size: 0.7rem;
    font-weight: 600;
    font-family: var(--font-mono);
    padding: 3px 8px;
    border-radius: 4px;
    background: #f1f5f9;
    color: #0369a1;
    border: 1px solid #cbd5e1;
}

.idea-journals-list {
    margin-bottom: 16px;
    padding-top: 8px;
    border-top: 1px dashed var(--border-subtle);
}

.idea-journals-label {
    font-size: 0.7rem;
    color: var(--text-muted);
    font-weight: 600;
    margin-bottom: 4px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.idea-journals-items {
    font-size: 0.75rem;
    color: #64748b;
    line-height: 1.4;
    font-style: italic;
}

.idea-actions-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-top: 14px;
    border-top: 1px solid var(--border-subtle);
}

.btn-start-research {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: var(--navy-primary);
    color: #ffffff;
    font-weight: 700;
    font-size: 0.78rem;
    padding: 8px 16px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-start-research:hover {
    background: var(--accent-dark-blue);
    box-shadow: var(--shadow-sm);
}

.btn-idea-action {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    color: var(--navy-secondary);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 7px 12px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s;
    text-decoration: none;
}

.btn-idea-action:hover {
    background: #f1f5f9;
    border-color: #94a3b8;
    color: var(--navy-primary);
}

/* ==========================================================================
   SECTION 3: FELLOWSHIP GRANTS & TRACKS
   ========================================================================== */
.fellowship-tracks-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
    gap: 24px;
}

.track-card {
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: var(--shadow-xs);
    transition: all 0.2s;
}

.track-card:hover {
    border-color: #0284c7;
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.track-icon-box {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background: #f1f5f9;
    border: 1px solid var(--border-subtle);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin-bottom: 16px;
}

.track-title {
    font-family: var(--font-serif);
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--navy-primary);
    margin-bottom: 8px;
}

[data-lang="ar"] .track-title {
    font-family: var(--font-ar);
}

.track-desc {
    font-size: 0.88rem;
    color: #475569;
    line-height: 1.6;
    margin-bottom: 20px;
}

.track-benefits-list {
    list-style: none;
    margin-bottom: 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.track-benefits-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 0.82rem;
    color: #334155;
}

.track-benefits-list svg {
    color: var(--accent-emerald);
    flex-shrink: 0;
    margin-top: 3px;
}

.track-btn-apply {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: var(--navy-primary);
    color: #ffffff;
    font-weight: 700;
    font-size: 0.85rem;
    padding: 10px 20px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: all 0.2s;
    width: 100%;
}

.track-btn-apply:hover {
    background: var(--accent-dark-blue);
    box-shadow: var(--shadow-sm);
}

/* ==========================================================================
   SECTION 4: SUBMIT MANUSCRIPT & PEER REVIEW PORTAL
   ========================================================================== */
.journal-submit-card {
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 36px;
    max-width: 880px;
    margin: 0 auto;
    box-shadow: var(--shadow-sm);
}

.form-row-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

@media (max-width: 640px) {
    .form-row-2 {
        grid-template-columns: 1fr;
    }
}

.form-label {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--navy-secondary);
    display: block;
    margin-bottom: 6px;
}

.journal-dropzone {
    border: 2px dashed #cbd5e1;
    border-radius: 8px;
    padding: 28px;
    text-align: center;
    background: #f8fafc;
    cursor: pointer;
    transition: all 0.2s;
}

.journal-dropzone:hover {
    border-color: var(--accent-blue);
    background: #f0f9ff;
}

/* ==========================================================================
   SECTION 5: EDITORIAL BOARD & POLICIES
   ========================================================================== */
.editorial-board-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    margin-top: 24px;
}

.editorial-member-card {
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    border-radius: 10px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    box-shadow: var(--shadow-xs);
}

.member-avatar {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: #e0f2fe;
    color: #0369a1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    font-weight: 700;
    flex-shrink: 0;
}

.member-name {
    font-family: var(--font-serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--navy-primary);
}

[data-lang="ar"] .member-name {
    font-family: var(--font-ar);
}

.member-role {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--accent-dark-blue);
    margin-top: 2px;
}

.member-affiliation {
    font-size: 0.72rem;
    color: var(--text-muted);
}

/* ==========================================================================
   MODALS (CLEAN LIGHT SCHOLARLY THEME)
   ========================================================================== */
.fellow-modal-overlay,
.aoi-lab-modal-overlay,
.windows-modal-overlay,
.support-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.6);
    backdrop-filter: blur(6px);
    z-index: 10000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.fellow-modal-overlay.active,
.aoi-lab-modal-overlay.active,
.windows-modal-overlay.active,
.support-modal-overlay.active {
    display: flex;
}

.fellow-modal-card,
.aoi-lab-card,
.windows-modal-card,
.support-modal-card {
    background: #ffffff;
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    max-width: 780px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    padding: 32px;
    position: relative;
    box-shadow: var(--shadow-xl);
    animation: modal-pop 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.fellow-modal-close,
.windows-modal-close,
.support-modal-close {
    position: absolute;
    top: 18px;
    right: 18px;
    background: #f1f5f9;
    border: none;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    color: var(--text-muted);
    font-size: 1.1rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s;
}

[data-lang="ar"] .fellow-modal-close,
[data-lang="ar"] .windows-modal-close,
[data-lang="ar"] .support-modal-close {
    right: auto;
    left: 18px;
}

.fellow-modal-close:hover,
.windows-modal-close:hover,
.support-modal-close:hover {
    background: #e2e8f0;
    color: var(--navy-primary);
}

.pipeline-step-node {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 6px 12px;
    border-radius: 20px;
    background: #f1f5f9;
    color: var(--text-muted);
    border: 1px solid var(--border-subtle);
    white-space: nowrap;
}

.pipeline-step-node.active {
    background: #e0f2fe;
    color: #0369a1;
    border-color: #bae6fd;
}

.pipeline-step-arrow {
    color: #94a3b8;
    font-size: 0.75rem;
}

/* ==========================================================================
   ACADEMIC FOOTER
   ========================================================================== */
.footer-slim {
    background: #ffffff;
    border-top: 1px solid var(--border-subtle);
    padding: 16px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.8rem;
    color: var(--text-muted);
    margin-top: auto;
}

.footer-left {
    display: flex;
    align-items: center;
    gap: 8px;
}

.footer-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

.footer-windows-btn,
.footer-support-btn,
.footer-linkedin {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #f8fafc;
    border: 1px solid var(--border-subtle);
    padding: 6px 12px;
    border-radius: 6px;
    color: var(--navy-secondary);
    font-size: 0.75rem;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.15s;
}

.footer-windows-btn:hover,
.footer-support-btn:hover,
.footer-linkedin:hover {
    background: #e2e8f0;
    color: var(--navy-primary);
}

.footer-windows-btn svg,
.footer-support-btn svg,
.footer-linkedin svg {
    width: 14px;
    height: 14px;
}

/* Toast */
.fellow-toast {
    position: fixed;
    bottom: 24px;
    right: 24px;
    background: #0f172a;
    color: #ffffff;
    padding: 12px 20px;
    border-radius: 8px;
    font-size: 0.85rem;
    font-weight: 600;
    box-shadow: var(--shadow-lg);
    z-index: 100000;
    display: none;
    animation: toast-slide 0.25s ease-out;
}

[data-lang="ar"] .fellow-toast {
    right: auto;
    left: 24px;
}

.fellow-toast.active {
    display: block;
}

@keyframes toast-slide {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

@keyframes modal-pop {
    from { transform: scale(0.95); opacity: 0; }
    to { transform: scale(1); opacity: 1; }
}
