@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,ital,wght@6..96,0,500;6..96,0,600;6..96,0,700;6..96,1,500;6..96,1,600;6..96,1,700&display=swap');

/* ==========================================================================
   QUANTUMAI — CUSTOM.CSS  (per-journal look, all pages, one file)
   --------------------------------------------------------------------------
   Loaded LAST by QuantumAIThemePlugin::init(), after variables / layout /
   components / animations / responsive, so on equal specificity these rules
   win. !important is still used on a few heading rules where the theme's
   own selectors match with the same specificity.

   This file is edited in code and shipped inside the theme — no OJS
   "Journal style sheet" upload needed. To change the look: edit here,
   bump version.xml, reinstall the theme, clear the OJS + CDN cache.
   --------------------------------------------------------------------------
   PER-PAGE SCOPING — OJS puts a page class on <body>:
     body.pkp_page_index        home (QuantumAI custom indexJournal.tpl)
     body.pkp_page_article      article landing / abstract
     body.pkp_page_issue        issue TOC (op view/current) + archive (op archive)
     body.pkp_page_search       search form + results
     body.pkp_page_about        about / submissions / editorialTeam / contact / privacy
     body.pkp_page_announcement announcements
   Scope every page-specific rule with one of these so a change on one page
   never leaks to another. Op-level: body.pkp_op_archive / _view / _current.
   --------------------------------------------------------------------------
   STATUS: fonts done. Page sections filled in one at a time from mockups.
   ========================================================================== */


/* ==========================================================================
   0 · FONTS
     --qai-script   flourished display face — hero title, page titles, section
                    headings.  Latin-only faces are chained to 'Marck Script'
                    which carries the Cyrillic glyphs (article titles in ru);
                    the browser picks the face per character.
     --qai-heading  secondary headings kept readable  -> PT Serif
     --qai-font     body / UI / forms / nav            -> PT Sans
   Switch the display face: comment the active @import + --qai-script pair,
   uncomment another. Keep 'Marck Script' in every @import.
   ========================================================================== */



/* ==========================================================================
   1 · BRAND TOKENS  (override QuantumAI custom properties; leave a line
   commented to keep the theme default)
   ========================================================================== */
:root {
  /* --qai-bg:            #05070d; */
  /* --qai-bg-2:          #080c18; */
  /* --qai-economy:       #22c58b; */
  /* --qai-knowledge:     #6d7bff; */
  /* --qai-wealth:        #e8bd5a; */
  /* --qai-border:        rgba(255,255,255,.09); */
  /* --qai-border-bright: rgba(126,214,173,.28); */
  /* --qai-panel-strong:  rgba(10,14,27,.92); */
  /* --qai-gradient:      linear-gradient(100deg, #22c58b 0%, #6d7bff 55%, #e8bd5a 100%); */

  --qai-heading: 'Bodoni Moda', 'Bodoni MT', Didot, Georgia, serif;
  --qai-font: 'Bodoni Moda', 'Bodoni MT', Didot, Georgia, serif;
  --qai-script: 'Bodoni Moda', 'Bodoni MT', Didot, Georgia, serif;
}


/* ==========================================================================
   2 · GLOBAL
   ========================================================================== */
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }


/* ==========================================================================
   2a · HEADINGS — flourished display face on the big title spots only.
   Anything not listed here stays in --qai-heading (PT Serif).
   ========================================================================== */
.qai-hero__title,
.pkp_site_name .is_text,
.page > h1,
.page_title,
.obj_article_details > .page_title,
.qai-section-head h2,
.qai-card__title,
.page_index_journal .current_issue > h2,
.page_index_journal .cmp_announcements > h2 {
  font-family: var(--qai-heading) !important;
  font-style: italic !important;
  font-weight: 600 !important;
  letter-spacing: -0.015em;
  line-height: 1.15;
}

.qai-hero__title { font-size: clamp(46px, 8vw, 96px); line-height: 1.25; }
.page > h1,
.page_title,
.obj_article_details > .page_title { font-size: clamp(34px, 4.6vw, 56px); line-height: 1.3; }
.pkp_site_name .is_text { font-size: 22px; line-height: 1.3; }
.qai-section-head h2 { line-height: 1.3; }

/* Keep these on the readable serif */
.page h2, .page h3,
.obj_issue_toc .section > h2, .obj_issue_toc .section > h3,
.qai-step h3, .qai-feature h3,
.obj_article_details .item.abstract > .label,
.obj_article_details .item.references > .label {
  font-family: var(--qai-heading) !important;
  letter-spacing: normal;
}


/* ==========================================================================
   3 · HEADER / NAV        hooks: .pkp_head_wrapper · .pkp_navigation_primary > li > a
   .pkp_navigation_user > li > a · .pkp_search_desktop · .dropdown-menu
   ========================================================================== */
/* (waiting for mockup) */


/* ==========================================================================
   4 · HOME        body.pkp_page_index
   hooks: .qai-hero · .qai-hero__title · .qai-hero__subtitle · .qai-hero__desc
   .qai-btn · .qai-stats .qai-stat · .qai-home-section · .qai-section-head
   .qai-card · .qai-meta-grid · .qai-index-list · .qai-steps .qai-step
   .qai-features .qai-feature · .qai-hub-grid .qai-hub-card · .qai-aurora
   ========================================================================== */
/* (waiting for mockup) */


/* ==========================================================================
   5 · ARTICLE        body.pkp_page_article
   hooks: .obj_article_details · .obj_article_details > .page_title · .row
   .main_entry · .entry_details · .item · .item.abstract · .item.doi
   ul.authors > li · .galleys_links · .obj_galley_link · .references .value p
   ========================================================================== */
/* (waiting for mockup) */


/* ==========================================================================
   6 · ISSUE — TOC & ARCHIVE        body.pkp_page_issue
   TOC (body.pkp_op_view / _current): .obj_issue_toc · .obj_issue_toc .section
     .current_issue_title · .cmp_article_list · .obj_article_summary
     .obj_article_summary .title a
   Archive (body.pkp_op_archive): .issues_archive · .obj_issue_summary
   ========================================================================== */
/* (waiting for mockup) */


/* ==========================================================================
   7 · SEARCH        body.pkp_page_search
   hooks: .search_input · .search_advanced · .search_results · .obj_article_summary
   ========================================================================== */
/* (waiting for mockup) */


/* ==========================================================================
   8 · STATIC PAGES        body.pkp_page_about
   hooks: .page · .page_title · .page h2 · .page h3 · .page p · .cmp_form
   ========================================================================== */
/* (waiting for mockup) */


/* ==========================================================================
   9 · ANNOUNCEMENTS        body.pkp_page_announcement
   hooks: .cmp_announcements · .obj_announcement_summary · .obj_announcement_full
   ========================================================================== */
/* (waiting for mockup) */


/* ==========================================================================
   10 · SIDEBAR        hooks: .pkp_structure_sidebar · .pkp_block · .pkp_block .title
   .pkp_block ul li · .pkp_block a · .block_make_submission_link
   ========================================================================== */
/* (waiting for mockup) */


/* ==========================================================================
   11 · BREADCRUMBS · FORMS · TABLES · PAGINATION · NOTIFICATIONS
   hooks: .cmp_breadcrumbs · .cmp_form · .cmp_table · .cmp_pagination · .cmp_notification
   ========================================================================== */
/* (waiting for mockup) */


/* ==========================================================================
   12 · FOOTER        hooks: .pkp_structure_footer_wrapper · .pkp_structure_footer
   .pkp_footer_content · .pkp_footer_content a · .pkp_brand_footer
   ========================================================================== */
/* (waiting for mockup) */


/* ==========================================================================
   13 · RESPONSIVE  (QuantumAI breakpoints: 1180 / 992 / 680)
   ========================================================================== */
/* @media (max-width: 992px) { }
   @media (max-width: 680px) { } */

/* =========================================================
   MPK TYPOGRAPHY — Bodoni Moda editorial system
   2026-09-15
========================================================= */
:root {
    --qai-heading: "Bodoni Moda", "Bodoni MT", Didot, "Times New Roman", serif;
    --qai-font: "Bodoni Moda", "Bodoni MT", Didot, "Times New Roman", serif;
    --qai-script: "Bodoni Moda", "Bodoni MT", Didot, "Times New Roman", serif;
}

/* Use one coherent editorial family throughout the public journal UI. */
.qai-home,
.pkp_structure_page,
.pkp_structure_content,
.pkp_structure_main,
.pkp_structure_sidebar,
.pkp_site_name,
.pkp_navigation_primary,
.pkp_navigation_user,
.page_index_journal {
    font-family: var(--qai-heading);
    font-weight: 500;
}

/* Display and section headings: slightly bold italic, as approved. */
.qai-hero__title,
.qai-card__title,
.qai-section-head h2,
.qai-step h3,
.qai-feature h3,
.qai-hub-card strong,
.page_index_journal .current_issue > h2,
.page_index_journal .cmp_announcements > h2,
.obj_issue_toc .section > h2,
.obj_issue_toc .section > h3,
.obj_article_summary .title a,
.obj_issue_summary .title,
.pkp_page_title,
.page h1,
.page h2,
.page h3 {
    font-family: var(--qai-heading) !important;
    font-style: italic;
    font-weight: 600;
    letter-spacing: -0.015em;
}

/* Navigation and controls stay readable while retaining the same family. */
.pkp_navigation_primary > li > a,
.pkp_navigation_user > li > a,
.qai-btn,
.qai-stat__label,
.qai-index-link,
.read_more {
    font-family: var(--qai-heading);
    font-weight: 600;
}

/* Statistics use the approved semi-bold italic display treatment. */
.qai-stat__value {
    font-family: var(--qai-heading) !important;
    font-style: italic;
    font-weight: 600 !important;
}
