/* =============================================================================
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;600;700&family=DM+Sans:wght@300;400;500;600&display=swap');


   app/globals.css  —  Next.js + Tailwind
   Font: DM Sans (body) + Playfair Display (headings)
   ============================================================================= */


/* Dropdown animation — used by SiteHeader account panel */
@keyframes ddIn {
  from { opacity: 0; transform: translateY(-6px) scale(0.98); }
  to   { opacity: 1; transform: none; }
}
.animate-\[ddIn_0\.15s_ease\] { animation: ddIn 0.15s ease; }

/* Slider academic grid pattern */
.slider-grid-bg {
  background-image: linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);
  background-size: 60px 60px;
}

/* Slider background blur effect */
.slider-bg-blur {
  filter: blur(8px);
  transform: scale(1.12);
}


/* ─── CSS VARIABLES ─────────────────────────────────────────────────────────── */
:root {

  --page-offset  : 159px;
  --ar-toolbar-h : 52px;
  --brand:     #003b44;
  --brand2:    #004f5c;
  --accent:    #0ea5e9;
  --dark:      #0b1220;
  --slate:     #1e293b;
  --muted:     #64748b;
  --line:      rgba(2, 6, 23, .08);
  --sh-sm:     0 1px 4px rgba(2, 6, 23, .07);
  --sh-md:     0 4px 16px rgba(2, 6, 23, .10);
  --sh-lg:     0 8px 32px rgba(2, 6, 23, .14);
  --r:         12px;
  --r-sm:      8px;
  --r-lg:      16px;
  --container: 1240px;
  /* Fonts — set from layout.tsx via next/font variables */
  --font:      var(--font-sans, 'DM Sans', system-ui, -apple-system, sans-serif);
  --font-serif:var(--font-serif, 'Playfair Display', Georgia, serif);
}


/* ─── BASE ───────────────────────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: var(--font);
  font-size: 15px;
  font-weight: 400;
  color: var(--dark);
  background: #fff;
  margin: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.6;
}

/* Academic heading style — Playfair Display */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-serif);
  font-weight: 700;
  line-height: 1.25;
  color: var(--dark);
}

a { color: inherit; }

.container {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 16px;
}

.mt-3 { margin-top: 0.875rem !important; }

/* ─── DB block spacing — nr-box mt-3, jh-sbox + spacing ─── */
.nr-box.mt-3, .jm-card.mt-3 { margin-top: 14px !important; }
.jh-sbox + .jh-sbox, .jh-sbox + .nr-box, .nr-box + .jh-sbox, .nr-box + .nr-box { margin-top: 14px; }
.mt-4 { margin-top: 1.75rem; }

/* ─── Bootstrap Icons support — DB blocks (jm-card, nr-box etc) use bi bi-* ─── */
.bi { display:inline-block; line-height:1; vertical-align:-.125em; }

/* ─── Body font override — DM Sans from layout CDN ─── */
body { font-family:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif !important; }
h1,h2,h3,.serif,.jh-title,.jh-hero__title,.vf-title { font-family:'Spectral',Georgia,serif !important; }


/* =============================================================================
   SITE HEADER  —  components/SiteHeader.tsx
   PHP ph-* classes ka exact match — ek jagah se manage ho
   Structure:
     .ph-ribbon  (dark strip: social + ISSN + top menu)
     .ph-brand   (white bar: logo + title + actions)
     .ph-nav     (nav bar: main menu links)
   ============================================================================= */

/* ── Design tokens (PHP ke same) ── */
:root {
  --ph-brand    : #003b44;
  --ph-accent   : #c00;
  --ph-ink      : #111;
  --ph-mid      : #444;
  --ph-muted    : #767676;
  --ph-border   : #e0e0e0;
  --ph-bg       : #fff;
  --ph-strip    : #f7f7f7;
  --ph-f-serif  : 'EB Garamond', 'Spectral', Georgia, 'Times New Roman', serif;
  --ph-f-sans   : 'DM Sans', 'Source Sans 3', 'Helvetica Neue', Arial, sans-serif;
  --ph-ease     : cubic-bezier(.4,0,.2,1);
  --topbar-h    : 34px;
}

/* ── ph-ribbon: top dark utility bar ── */
.ph-ribbon {
  background: var(--ph-strip);
  border-bottom: 1px solid var(--ph-border);
  font-size: .72rem;
  overflow: hidden;
  height: var(--topbar-h);
  opacity: 1;
  transform: translateY(0);
  transition: transform .25s ease, opacity .2s ease;
  will-change: transform;
}
.ph-ribbon.hide {
  transform: translateY(-100%);
  opacity: 0;
  pointer-events: none;
}
.ph-ribbon__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 .75rem;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .4rem .75rem;
  min-height: var(--topbar-h);
}
.ph-ribbon__left {
  display: flex;
  align-items: center;
  gap: .5rem;
  flex-shrink: 0;
  flex-wrap: nowrap;
}

/* Social icons in ribbon */
.ph-socials {
  display: flex;
  align-items: center;
  gap: .3rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.ph-socials a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  color: var(--ph-muted);
  border: 1px solid var(--ph-border);
  border-radius: 3px;
  font-size: .65rem;
  text-decoration: none;
  transition: color .15s, border-color .15s, background .15s;
  line-height: 1;
}
.ph-socials a:hover {
  color: var(--ph-brand);
  border-color: var(--ph-brand);
  background: #f0f6f7;
}
.ph-ribbon__sep {
  display: inline-block;
  width: 1px;
  height: 12px;
  background: var(--ph-border);
  flex-shrink: 0;
}
.ph-ribbon__issn {
  font-size: .7rem;
  color: var(--ph-muted);
  letter-spacing: .02em;
  white-space: nowrap;
}

/* Right side nav links in ribbon */
.ph-ribbon__nav {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.ph-ribbon__nav a {
  font-size: .7rem;
  font-weight: 500;
  color: var(--ph-muted);
  text-decoration: none;
  letter-spacing: .02em;
  transition: color .15s;
  white-space: nowrap;
}
.ph-ribbon__nav a:hover { color: var(--ph-brand); }

/* ── ph-brand: logo + title + action buttons bar ── */
.ph-brand {
  background: var(--ph-bg);
  height: 80px;
}
@media(max-width: 575.98px) { .ph-brand { height: 62px; } }

.ph-brand__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 .75rem;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
}
@media(min-width: 768px) {
  .ph-brand__inner { padding: 0 1.5rem; gap: 1.5rem; }
}

/* Logo + title link */
.ph-brand__identity {
  display: flex;
  align-items: center;
  gap: .7rem;
  text-decoration: none;
  min-width: 0;
  flex-shrink: 1;
  overflow: hidden;
}
.ph-brand__identity:hover { text-decoration: none; }

/* Monogram box — shown when no logo image */
.ph-brand__monogram {
  flex-shrink: 0;
  border: 2px solid var(--ph-brand);
  border-radius: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--ph-f-serif);
  font-weight: 600;
  color: var(--ph-brand);
  letter-spacing: .02em;
  width: 44px;
  height: 44px;
  font-size: 1.15rem;
}
@media(max-width: 575.98px) {
  .ph-brand__monogram { width: 36px; height: 36px; font-size: .9rem; }
}

/* Journal logo image */
.ph-brand__logo {
  width: auto;
  display: block;
  object-fit: contain;
  flex-shrink: 0;
  height: 44px;
}
@media(max-width: 575.98px) { .ph-brand__logo { height: 36px; } }

/* Journal title text */
.ph-brand__name {
  font-family: var(--ph-f-serif);
  font-weight: 700;
  color: var(--ph-ink);
  letter-spacing: .01em;
  line-height: 1.25;
  font-size: 1.1rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 48vw;
}
@media(min-width: 576px) { .ph-brand__name { font-size: 1.2rem; max-width: 50vw; } }
@media(min-width: 768px) { .ph-brand__name { font-size: 1.25rem; max-width: 46vw; } }
@media(min-width: 992px) { .ph-brand__name {
  font-size: 1.3rem;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  max-width: none;
} }

/* Right actions area */
.ph-brand__actions {
  display: flex;
  align-items: center;
  gap: .4rem;
  flex-shrink: 0;
}

/* Search button */
.ph-search-btn {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  background: none;
  border: 1px solid var(--ph-border);
  border-radius: 3px;
  padding: .35rem .55rem;
  font-size: .78rem;
  font-weight: 500;
  color: var(--ph-mid);
  font-family: var(--ph-f-sans);
  cursor: pointer;
  transition: border-color .15s, color .15s, background .15s;
  white-space: nowrap;
}
.ph-search-btn:hover {
  border-color: var(--ph-brand);
  color: var(--ph-brand);
  background: #f0f6f7;
}
@media(max-width: 991.98px) { .ph-search-btn .ph-search-label { display: none; } }

/* Submit manuscript button */
.ph-submit-btn {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  background: var(--ph-brand);
  color: #fff !important;
  border: none;
  border-radius: 3px;
  padding: .42rem .9rem;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .03em;
  font-family: var(--ph-f-sans);
  text-decoration: none;
  white-space: nowrap;
  transition: background .15s;
}
.ph-submit-btn:hover { background: #005060; text-decoration: none; }
/* Mobile: submit button — sirf icon, text hide */
@media(max-width: 991.98px) {
  .ph-submit-btn { padding: .42rem .6rem; }
  .ph-submit-btn .ph-submit-text { display: none; }
}

/* User avatar button (logged in) */
.ph-avatar {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--ph-brand);
  color: #fff;
  font-family: var(--ph-f-sans);
  font-size: .7rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: none;
  transition: opacity .15s;
}
.ph-avatar:hover { opacity: .85; }

/* Guest/Account button (logged out) */
.ph-guest-btn {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  background: none;
  border: 1px solid var(--ph-border);
  border-radius: 3px;
  padding: .38rem .7rem;
  font-size: .8rem;
  font-weight: 500;
  color: var(--ph-mid);
  font-family: var(--ph-f-sans);
  cursor: pointer;
  transition: border-color .15s, color .15s;
}
.ph-guest-btn:hover { border-color: var(--ph-brand); color: var(--ph-brand); }
@media(max-width: 991.98px) {
  .ph-guest-btn .ph-guest-text { display: none; }
  .ph-guest-btn { padding: .38rem .5rem; }
}

/* Mobile hamburger toggler */
.ph-toggler {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 36px;
  height: 36px;
  background: none;
  border: 1px solid var(--ph-border);
  border-radius: 3px;
  cursor: pointer;
  padding: 0;
  align-items: center;
  transition: border-color .15s;
}
.ph-toggler:hover { border-color: var(--ph-brand); }
.ph-toggler span {
  display: block;
  width: 16px;
  height: 1.5px;
  background: var(--ph-ink);
  border-radius: 1px;
  transition: transform .22s var(--ph-ease), opacity .22s;
}
.ph-toggler.open span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.ph-toggler.open span:nth-child(2) { opacity: 0; }
.ph-toggler.open span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }
@media(max-width: 991.98px) { .ph-toggler { display: flex; } }

/* Dropdown menus — account + nav dropdowns */
.ph-dropdown {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  min-width: 195px;
  background: #fff;
  border: 1px solid var(--ph-border);
  border-radius: 3px;
  box-shadow: 0 4px 20px rgba(0,0,0,.10);
  padding: .3rem 0;
  font-family: var(--ph-f-sans);
  z-index: 10000;
  list-style: none;
  margin: 0;
}
.ph-dropdown__header {
  padding: .55rem 1rem .4rem;
  border-bottom: 1px solid var(--ph-border);
  margin-bottom: .25rem;
}
.ph-dropdown__header strong {
  display: block;
  font-size: .82rem;
  color: var(--ph-ink);
  font-weight: 600;
}
.ph-dropdown__header small {
  display: block;
  font-size: .7rem;
  color: var(--ph-muted);
  margin-top: 1px;
}
.ph-dropdown__item {
  display: flex;
  align-items: center;
  gap: .55rem;
  padding: .42rem 1rem;
  font-size: .8rem;
  color: var(--ph-mid);
  text-decoration: none;
  background: none;
  border: none;
  cursor: pointer;
  width: 100%;
  text-align: left;
  font-family: var(--ph-f-sans);
  transition: background .12s, color .12s;
}
.ph-dropdown__item:hover { background: #f5f5f5; color: var(--ph-brand); }
.ph-dropdown__item--danger { color: #b91c1c; }
.ph-dropdown__item--danger:hover { background: #fff5f5; color: #991b1b; }
.ph-dropdown__divider { border: none; border-top: 1px solid var(--ph-border); margin: .3rem 0; }

/* Dropdown wrapper — relative positioning */
.ph-dropdown-wrap { position: relative; }

/* ── ph-nav: main navigation bar ── */
.ph-nav {
  background: var(--ph-bg);
  border-top: 1px solid var(--ph-border);
  overflow: visible;
  position: relative;
  z-index: 9000;
}
@media(min-width: 992px) {
  .ph-nav { height: 42px; }
}
.ph-nav__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  align-items: center;
  height: 100%;
  gap: 0;
}
/* Scrollable nav for overflow — hides scrollbar */
.ph-nav__scroll {
  flex: 1 1 0;
  min-width: 0;
  overflow: visible;
  height: 100%;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.ph-nav__scroll::-webkit-scrollbar { display: none; }

/* Nav list */
.ph-nav__list {
  display: flex;
  align-items: stretch;
  gap: 0;
  list-style: none;
  height: 42px;
  margin: 0;
  padding: 0;
  white-space: nowrap;
  min-width: max-content;
}
.ph-nav__item {
  position: relative;
  display: flex;
  align-items: stretch;
}

/* Nav link */
.ph-nav__link {
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  font-family: var(--ph-f-sans);
  font-size: .84rem;
  font-weight: 500;
  color: var(--ph-mid);
  text-decoration: none;
  letter-spacing: .01em;
  white-space: nowrap;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  transition: color .15s, border-color .15s;
  background: none;
  border-top: none;
  border-left: none;
  border-right: none;
  cursor: pointer;
  height: 100%;
}
.ph-nav__link:hover {
  color: var(--ph-ink);
  border-bottom-color: var(--ph-accent);
  text-decoration: none;
}
.ph-nav__link.active {
  color: var(--ph-ink);
  border-bottom-color: var(--ph-accent);
  font-weight: 600;
}

/* Nav dropdown */
.ph-nav__dropdown {
  position: absolute;
  left: 0;
  top: 100%;
  min-width: 200px;
  background: #fff;
  border: 1px solid var(--ph-border);
  border-top: 2px solid var(--ph-brand);
  border-radius: 0 0 3px 3px;
  box-shadow: 0 4px 20px rgba(0,0,0,.10);
  list-style: none;
  margin: 0;
  padding: .3rem 0;
  z-index: 99999;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4px);
  transition: opacity .15s, visibility .15s, transform .15s;
  pointer-events: none;
}
.ph-nav__item:hover .ph-nav__dropdown,
.ph-nav__dropdown.open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}
.ph-nav__dropdown a {
  display: block;
  padding: .42rem 1rem;
  font-size: .82rem;
  color: var(--ph-mid);
  text-decoration: none;
  white-space: nowrap;
  transition: background .12s, color .12s;
}
.ph-nav__dropdown a:hover {
  background: #f5f5f5;
  color: var(--ph-brand);
}

/* ── Desktop: show main nav inner, hide collapse ── */
@media(min-width: 992px) {
  .ph-nav__inner { display: flex; }
  .ph-nav__collapse { display: none !important; }
}

/* ── Mobile: hide main nav inner, show collapse only when open ── */
@media(max-width: 991.98px) {
  .ph-nav__inner { display: none !important; }
}

/* ── Mobile collapse nav ── */
.ph-nav__collapse {
  overflow: hidden;
  transition: max-height .3s var(--ph-ease);
  max-height: 0;
}
.ph-nav__collapse.open { max-height: 600px; }

@media(max-width: 991.98px) {
  .ph-nav { height: auto; border-top: none; }
  .ph-nav__inner { padding: 0; display: block; }
  .ph-nav__scroll { overflow: visible; height: auto; }
  .ph-nav__collapse { background: #fff; border-top: 1px solid var(--ph-border); }
  .ph-nav__list {
    flex-direction: column;
    height: auto;
    padding: .25rem 0;
  }
  .ph-nav__item { display: block; }
  .ph-nav__link {
    display: flex;
    padding: .65rem 1.25rem;
    border-bottom: none !important;
    border-left: 3px solid transparent;
    margin: 0;
    height: auto;
  }
  .ph-nav__link:hover,
  .ph-nav__link.active {
    border-left-color: var(--ph-accent);
    background: #fafafa;
  }
  .ph-nav__dropdown {
    position: static;
    box-shadow: none;
    border: none;
    border-left: 3px solid var(--ph-border);
    margin-left: 1.25rem;
    padding: .2rem 0;
    border-radius: 0;
    width: auto;
    opacity: 1;
    visibility: visible;
    transform: none;
    pointer-events: auto;
    display: none;
  }
  .ph-nav__dropdown.open { display: block; }
  .ph-nav__dropdown a { padding: .42rem 1rem; }
}

/* ── Search overlay — PHP .ph-search-overlay ── */
.ph-search-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding-top: 10vh;
}
.ph-search-overlay.open { display: flex; }
.ph-search-overlay__bg {
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(4px);
  animation: phFadeIn .18s ease;
}
@keyframes phFadeIn { from { opacity: 0; } to { opacity: 1; } }
.ph-search-overlay__box {
  position: relative;
  z-index: 1;
  width: min(640px, 92vw);
  animation: phUp .2s var(--ph-ease);
}
@keyframes phUp {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: translateY(0); }
}
.ph-search-overlay__label {
  display: block;
  font-family: var(--ph-f-serif);
  font-size: 1.2rem;
  color: var(--ph-mid);
  margin-bottom: .75rem;
  letter-spacing: .01em;
}
.ph-search-overlay__row {
  display: flex;
  border: 1.5px solid var(--ph-ink);
  border-radius: 2px;
  overflow: hidden;
  background: #fff;
  transition: box-shadow .18s;
}
.ph-search-overlay__row:focus-within {
  box-shadow: 0 0 0 3px rgba(0,59,68,.15);
}
.ph-search-overlay__input {
  flex: 1;
  border: none;
  outline: none;
  padding: .65rem .9rem;
  font-size: 1rem;
  font-family: var(--ph-f-sans);
  color: var(--ph-ink);
  background: transparent;
}
.ph-search-overlay__btn {
  background: var(--ph-brand);
  color: #fff;
  border: none;
  padding: 0 1.2rem;
  font-size: .85rem;
  font-weight: 600;
  letter-spacing: .04em;
  font-family: var(--ph-f-sans);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: .4rem;
  transition: background .15s;
}
.ph-search-overlay__btn:hover { background: #005060; }
.ph-search-overlay__hint {
  font-size: .72rem;
  color: var(--ph-muted);
  margin-top: .6rem;
  letter-spacing: .01em;
}
.ph-search-overlay__close {
  position: absolute;
  top: -2rem;
  right: 0;
  background: none;
  border: none;
  color: var(--ph-mid);
  font-size: .8rem;
  cursor: pointer;
  font-family: var(--ph-f-sans);
  padding: .25rem .5rem;
  opacity: .7;
}
.ph-search-overlay__close:hover { opacity: 1; }

/* Impersonate warning bar */
.ph-impersonate-bar {
  background: #dc2626;
  color: #fff;
  text-align: center;
  font-size: .75rem;
  font-weight: 700;
  padding: .4rem 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
}
.ph-impersonate-bar button {
  background: rgba(255,255,255,.2);
  color: #fff;
  border: none;
  border-radius: 2px;
  padding: .15rem .5rem;
  font-size: .7rem;
  cursor: pointer;
  font-weight: 600;
}

/* ── Sticky header shadow on scroll ── */
.ph-header {
  position: sticky;
  top: 0;
  z-index: 9000;
  background: #fff;
  isolation: isolate;
}
.ph-header.scrolled { box-shadow: 0 2px 10px rgba(15,23,42,.12); }

/* =============================================================================
   SITE FOOTER  —  components/SiteFooter.tsx
   PHP phf-* classes ka exact match — dark teal background, 4-column grid
   ============================================================================= */

.phf-footer {
  background: var(--ph-brand);
  color: rgba(255,255,255,.8);
  font-family: var(--ph-f-sans);
  font-size: .84rem;
  border-top: 1px solid var(--ar-line, #e0e0e0);
}

/* ── Upper band: brand col + 3 nav cols ── */
.phf-upper { padding: 2.5rem 0 2rem; border-bottom: 1px solid rgba(255,255,255,.1); }
.phf-upper__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1.5rem;
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 2.5rem;
}
@media(max-width: 1023px) { .phf-upper__inner { grid-template-columns: 1fr 1fr; gap: 2rem; } }
@media(max-width: 575px)  { .phf-upper__inner { grid-template-columns: 1fr; } }

/* Brand column */
.phf-brand-link {
  display: flex;
  align-items: center;
  gap: .75rem;
  text-decoration: none;
  margin-bottom: 1rem;
}
.phf-brand-link:hover { text-decoration: none; }
.phf-mono {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border: 1.5px solid rgba(255,255,255,.35);
  border-radius: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--ph-f-serif);
  font-size: 1.15rem;
  font-weight: 600;
  color: rgba(255,255,255,.9);
  letter-spacing: .02em;
}
.phf-brand-text { display: flex; flex-direction: column; gap: .15rem; }
.phf-brand-name {
  font-family: var(--ph-f-serif);
  font-size: 1.1rem;
  font-weight: 500;
  color: #fff;
  line-height: 1.2;
}
.phf-brand-issn { font-size: .7rem; color: rgba(255,255,255,.5); letter-spacing: .02em; }

/* OA pill */
.phf-oa-pill {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-size: .68rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  padding: .2rem .6rem;
  margin-bottom: .9rem;
}

/* Brand desc text */
.phf-desc {
  font-size: .8rem;
  color: rgba(255,255,255,.5);
  line-height: 1.65;
  margin: 0 0 1.2rem;
}

/* Index badges */
.phf-index-row {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.phf-index-badge {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  font-size: .68rem;
  font-weight: 600;
  color: rgba(255,255,255,.55);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 2px;
  padding: .25rem .6rem;
  text-decoration: none;
  transition: color .15s, border-color .15s;
}
.phf-index-badge:hover {
  color: rgba(255,255,255,.9);
  border-color: rgba(255,255,255,.4);
  text-decoration: none;
}

/* Nav/link columns */
.phf-col-head {
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(255,255,255,.45);
  border-top: 1.5px solid rgba(255,255,255,.15);
  padding-top: .35rem;
  margin-bottom: .85rem;
  margin-top: 0;
}
.phf-linklist {
  list-style: none;
  margin: 0;
  padding: 0;
}
.phf-linklist li { margin-bottom: .45rem; }
.phf-link {
  font-size: .8rem;
  color: rgba(255,255,255,.55);
  text-decoration: none;
  transition: color .15s;
  display: inline-block;
}
.phf-link:hover { color: rgba(255,255,255,.9); text-decoration: none; }

/* Contact column */
.phf-contact-row {
  display: flex;
  align-items: flex-start;
  gap: .5rem;
  margin-bottom: .6rem;
  color: rgba(255,255,255,.55);
  font-size: .8rem;
}
.phf-contact-icon {
  flex-shrink: 0;
  margin-top: 2px;
  opacity: .6;
}
.phf-contact-email {
  color: rgba(255,255,255,.7);
  text-decoration: none;
  transition: color .15s;
}
.phf-contact-email:hover { color: #fff; }

/* Social icons */
.phf-social {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin-top: .85rem;
  flex-wrap: wrap;
}
.phf-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 3px;
  color: rgba(255,255,255,.55);
  text-decoration: none;
  transition: color .15s, border-color .15s, background .15s;
}
.phf-social a:hover {
  color: #fff;
  border-color: rgba(255,255,255,.5);
  background: rgba(255,255,255,.08);
}

/* Bottom bar */
.phf-bottom { padding: .75rem 0; border-top: 1px solid rgba(255,255,255,.08); }
.phf-bottom__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
}
.phf-copy { font-size: .72rem; color: rgba(255,255,255,.4); }
.phf-copy a { color: rgba(255,255,255,.55); text-decoration: none; }
.phf-copy a:hover { color: rgba(255,255,255,.8); }
.phf-bottom__links { display: flex; flex-wrap: wrap; gap: .75rem; }
.phf-bottom__links a {
  font-size: .72rem;
  color: rgba(255,255,255,.4);
  text-decoration: none;
  transition: color .15s;
}
.phf-bottom__links a:hover { color: rgba(255,255,255,.75); }

/* =============================================================================
   SITE FOOTER  —  components/SiteFooter.tsx
   ============================================================================= */

.vf-footer {
  background: linear-gradient(160deg,#001e24 0%,#003b44 45%,#002d36 100%);
  color:#cbd5e1;
  margin-top:auto;
  font-family:var(--font);
}

/* Thin animated rainbow line at top — matches PHP aa5-topbar */
.vf-topline {
  height:3px;
  background:linear-gradient(90deg,#e6a817,#f9d56e,#0ea5e9,#e6a817);
  background-size:200% 100%;
  animation:vfLine 3s linear infinite;
}
@keyframes vfLine { 0%{background-position:0% 0} 100%{background-position:200% 0} }

.vf-inner { padding:20px 16px 0; }

/* ── ROW 1: Brand bar (logo icon + title + desc  |  Submit Article + Current Issue) ── */
.vf-brand-bar {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding-bottom:24px;
  border-bottom:1px solid rgba(255,255,255,.08);
  flex-wrap:wrap;
}
.vf-brand-left { display:flex;gap:14px;align-items:flex-start;flex:1;min-width:0; }
.vf-mark {
  width:44px;height:44px;border-radius:10px;flex-shrink:0;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);
  display:flex;align-items:center;justify-content:center;color:#fff;
}
.vf-brand-info { min-width:0; }
.vf-title { font-size:1rem;font-weight:800;color:#f1f5f9;line-height:1.3;margin:0;font-family:var(--font-serif); }
.vf-title-issn { display:block;font-size:.75rem;font-weight:600;color:rgba(255,255,255,.55);margin-top:2px;font-family:var(--font); }
.vf-sub { font-size:.8rem;color:#94a3b8;line-height:1.6;margin:4px 0 0; }

/* Submit Article + Current Issue buttons — matches PHP .btn-warning + .btn-outline-light */
.vf-brand-btns { display:flex;gap:10px;align-items:center;flex-shrink:0;flex-wrap:wrap; }
.vf-btn {
  display:inline-flex;align-items:center;gap:7px;
  padding:9px 20px;border-radius:999px;
  font-size:.82rem;font-weight:700;text-decoration:none;
  transition:all .18s;font-family:var(--font);cursor:pointer;border:none;white-space:nowrap;
}
/* Submit Article — yellow/gold pill */
.vf-btn--submit { background:#e6a817;color:#0d1b2a;border:1.5px solid #e6a817; }
.vf-btn--submit:hover { background:#d4970e;border-color:#d4970e;color:#0d1b2a; }
/* Current Issue — outline white */
.vf-btn--issue { background:transparent;color:#e2e8f0;border:1.5px solid rgba(255,255,255,.35); }
.vf-btn--issue:hover { background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.6); }

/* ── ROW 2: 4 COLUMNS GRID ── */
.vf-grid {
  display:grid;
  grid-template-columns:1.7fr 1fr 1fr 1.1fr;
  gap:28px;
  padding:20px 0;
}
.vf-col { min-width:0; }

/* Column heading — gold/yellow, uppercase small — matches PHP .text-warning fw-semibold */
.vf-colhead {
  font-size:.68rem;font-weight:800;color:#e6a817;
  text-transform:uppercase;letter-spacing:.1em;
  margin-bottom:14px;font-family:var(--font);
}

/* "About This Journal" bold description text */
.vf-about-bold { font-size:.82rem;font-weight:700;color:#e2e8f0;line-height:1.6;margin:0 0 8px; }
.vf-about-light { font-size:.8rem;color:rgba(255,255,255,.75);line-height:1.6;margin:0; }

/* Link list */
.vf-linklist { list-style:none;padding:0;margin:0; }
.vf-linklist li { margin-bottom:2px; }
.vf-link { color:#fff;text-decoration:none;font-size:.82rem;transition:color .18s;font-weight:400; }
.vf-link:hover { color:#fff; }

/* Contact column */
.vf-contact { font-size:.82rem;color:rgba(255,255,255,.8); }
.vf-contact-row { display:flex;align-items:flex-start;gap:8px;margin-bottom:10px;line-height:1.5; }
.vf-contact-icon { flex-shrink:0;opacity:.75;font-size:.85rem;margin-top:1px; }

/* Social icons — circular, matches PHP aa5-social */
.vf-social { display:flex;gap:8px;margin-top:14px;margin-bottom:14px; }
.vf-social a {
  width:32px;height:32px;border-radius:50%;flex-shrink:0;
  background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.15);
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.8);text-decoration:none;transition:all .18s;
}
.vf-social a:hover { background:#e6a817;color:#0d1b2a;border-color:#e6a817; }

/* Copyright text */
.vf-copy { font-size:.74rem;color:rgba(255,255,255,.75);line-height:1.5; }

/* ── BOTTOM BAR — Powered by | Privacy Policy + Terms & Conditions ── */
.vf-bottom {
  border-top:1px solid rgba(255,255,255,.15);
  padding:14px 0 18px;
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:8px;font-size:.74rem;color:rgba(255,255,255,.75);
}
.vf-bottom a { color:rgba(255,255,255,.75);text-decoration:none;transition:color .15s; }
.vf-bottom a:hover { color:#fff; }
.vf-bottom-links { display:flex;gap:16px; }

/* Cookie banner */
.cookie-banner { display:none;position:fixed;bottom:0;left:0;right:0;background:#1e293b;color:#e2e8f0;z-index:9999;border-top:2px solid #e6a817;padding:12px 20px; }
.cookie-banner.show { display:block; }
.cookie-wrap { max-width:900px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.82rem; }
.cookie-wrap a { color:#e6a817;text-decoration:underline; }
.cookie-wrap div:last-child { display:flex;gap:8px; }
.cookie-wrap button { padding:5px 14px;border-radius:6px;border:none;font-size:.78rem;font-weight:700;cursor:pointer;font-family:var(--font); }
#acceptCookies { background:#e6a817;color:#0d1b2a; }
#acceptCookies:hover { background:#d4970e; }
#rejectCookies { background:rgba(255,255,255,.1);color:#e2e8f0; }
#rejectCookies:hover { background:rgba(255,255,255,.15); }

/* Footer responsive */
@media(max-width:1024px){
  .vf-grid { grid-template-columns:1.4fr 1fr 1fr;gap:24px; }
  .vf-col:last-child { grid-column:1/-1; }
}
@media(max-width:768px){
  .vf-brand-bar { flex-direction:column; }
  .vf-brand-btns { width:100%; }
  .vf-grid { grid-template-columns:1fr 1fr;gap:20px; }
  .vf-col:first-child { grid-column:1/-1; }
  .vf-col:last-child { grid-column:1/-1;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px 18px; }
  .vf-inner { padding:24px 14px 0; }
}
@media(max-width:480px){
  .vf-grid { grid-template-columns:1fr 1fr;gap:18px; }
  .vf-col:first-child,.vf-col:last-child { grid-column:1/-1; }
  .vf-btn { padding:8px 14px;font-size:.78rem; }
  .vf-bottom { font-size:.7rem; }
}

/* =============================================================================
   JOURNAL HOME  —  app/index.php/[journal]/JournalHomeClient.tsx
   ============================================================================= */

/* Masthead */
.jh-top { background:linear-gradient(175deg,#0b1f2a 0%,#003b44 100%);padding:36px 0 32px;position:relative;overflow:hidden; }
.jh-top::before { content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 80% 50%,rgba(14,165,233,.08) 0%,transparent 60%); }
.jh-mast { display:grid;grid-template-columns:1fr 340px;gap:32px;align-items:start;position:relative;z-index:1; }
.jh-mast__left { color:#fff; }
.jh-kicker { font-size:.68rem;font-weight:700;letter-spacing:.14em;color:rgba(255,255,255,.55);text-transform:uppercase;margin-bottom:10px;font-family:var(--font); }
.jh-title { font-size:clamp(1.6rem,3vw,2.4rem);font-weight:900;line-height:1.15;color:#fff;margin:0 0 14px;letter-spacing:-.02em;font-family:var(--font-serif); }
.jh-desc { font-size:.88rem;color:rgba(255,255,255,.72);line-height:1.65;margin-bottom:10px;max-width:640px;font-family:var(--font); }
.jh-mast__acts { display:flex;gap:10px;flex-wrap:wrap; }
.jh-mbtn { display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:10px;font-size:.83rem;font-weight:700;text-decoration:none;transition:all .2s;font-family:var(--font); }
.jh-mbtn--solid { background:#0ea5e9;color:#fff;box-shadow:0 2px 12px rgba(14,165,233,.35); }
.jh-mbtn--solid:hover { background:#0284c7;color:#fff; }
.jh-mbtn--ghost { background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25); }
.jh-mbtn--ghost:hover { background:rgba(255,255,255,.2);color:#fff; }

/* DB custom block: journal-metrics */
.jm-card { background:#fff;border-radius:var(--r);box-shadow:var(--sh-lg);overflow:hidden;border:1px solid var(--line); }
.jm-head { background:var(--brand);padding:12px 16px;display:flex;align-items:center;gap:10px; }
.jm-head-left { display:flex;align-items:center;gap:10px;flex:1; }
.jm-head-icon { width:32px;height:32px;background:rgba(255,255,255,.15);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1rem; }
.jm-head-title { font-size:.85rem;font-weight:800;color:#fff;font-family:var(--font); }
.jm-head-sub { font-size:.68rem;color:rgba(255,255,255,.6);font-family:var(--font); }
.jm-head-badge { background:#0ea5e9;color:#fff;font-size:.65rem;font-weight:800;padding:3px 10px;border-radius:999px;font-family:var(--font); }
.jm-list { padding:4px 0; }
.jm-row { display:flex;align-items:center;gap:8px;padding:9px 16px;border-bottom:1px solid var(--line);transition:background .12s; }
.jm-row:last-child { border-bottom:none; }
.jm-row:hover { background:#f8fafc; }
.jm-row-label { flex:1;font-size:.78rem;color:var(--dark);font-weight:600;display:flex;align-items:center;gap:6px;font-family:var(--font); }
.jm-row-icon { color:var(--muted);font-size:.78rem; }
.jm-row-value { font-size:.82rem;font-weight:800;color:var(--dark);font-family:var(--font); }
.jm-val-big { color:#0ea5e9;font-size:.95rem; }
.jm-val-badge { background:#f1f5f9;padding:2px 10px;border-radius:6px;font-size:.78rem;font-weight:800;min-width:28px;text-align:center; }
.jm-row--highlight { background:rgba(14,165,233,.04); }
.jm-row--accent { background:rgba(14,165,233,.06); }
.jm-footer { padding:8px 16px;background:#f8fafc;border-top:1px solid var(--line);font-size:.68rem;color:var(--muted);font-family:var(--font); }

/* DB custom block: call-for-paper — teal brand header, light body */
.nr-cfp-mini { background:#fff;border-radius:var(--r);border:1px solid rgba(0,79,92,.18);box-shadow:0 2px 12px rgba(0,59,68,.10);overflow:hidden;margin-bottom:16px; }
.nr-cfp-mini__head {
  padding:12px 18px 10px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;
  background:#fff;
  border-bottom:1px solid var(--line);
}
.nr-cfp-mini__htitle { font-size:.9rem;font-weight:800;font-family:var(--font);display:flex;align-items:center;gap:8px;color:var(--dark); }
.nr-cfp-mini__htitle svg { color:var(--brand); }
.nr-cfp-mini__hsub { font-size:.75rem;color:var(--muted);font-family:var(--font);margin-top:3px; }
.nr-cfp-mini__hright { font-size:.68rem;color:var(--muted);font-family:var(--font);white-space:nowrap;background:#f1f5f9;border-radius:999px;padding:3px 10px;border:1px solid var(--line); }
.nr-cfp-mini__body { padding:14px 18px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#fff; }
.nr-cfp-mini__text { font-size:.88rem;font-weight:600;color:var(--dark);flex:1;font-family:var(--font); }
.nr-cfp-mini__btn {
  background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;border-radius:999px;
  padding:9px 22px;font-size:.82rem;font-weight:700;
  text-decoration:none;white-space:nowrap;
  box-shadow:0 2px 8px rgba(22,163,74,.3);
  transition:all .15s;font-family:var(--font);
  display:inline-flex;align-items:center;gap:6px;
}
.nr-cfp-mini__btn:hover { background:linear-gradient(135deg,#15803d,#166534);color:#fff;transform:translateY(-1px); }

/* DB custom block: hero / impact-factor — image exact: teal header */
.jh-sbox.jh-sbox--impact { padding:0;overflow:hidden; }
.jh-sbox__head--impact {
  background:#fff;
  border-bottom:1px solid var(--line);
  padding:12px 16px;
  display:flex;align-items:center;gap:10px;
  margin-bottom:0;
}
.jh-sbox__head--impact .jh-sbox__title { color:var(--dark); }
.jh-sbox__head--impact .jh-sbox__sub { color:var(--muted); }
.jh-sbox__head--impact .jh-sbox__icon { 
  width:30px;height:30px;background:rgba(0,59,68,.08);border-radius:8px;
  display:flex;align-items:center;justify-content:center;color:var(--brand);flex-shrink:0;
}
.nr-impact { padding:14px 16px; }
.nr-impact__value {
  font-size:1rem;font-weight:800;color:var(--brand);
  display:flex;align-items:center;gap:8px;margin-bottom:6px;font-family:var(--font);
}
.nr-impact__value a { color:var(--accent);text-decoration:none;font-size:1.05rem; }
.nr-impact__value a:hover { text-decoration:underline; }
.nr-impact__note { font-size:.76rem;color:var(--muted);font-family:var(--font); }

/* DB custom block: indexing — Image 4 exact: icon box + name + external link */
.nr-linklist { list-style:none;padding:6px 0;margin:0;display:grid;gap:0; }
.nr-linklist li { border-bottom:1px solid var(--line); }
.nr-linklist li:last-child { border-bottom:none; }
.nr-linklist li a {
  display:flex;align-items:center;gap:14px;
  padding:5px 18px;
  background:#fff;text-decoration:none;
  color:var(--dark);font-weight:600;font-size:.88rem;
  transition:background .12s;font-family:var(--font);
}
.nr-linklist li a:hover { background:#f8fafc; }
.nr-licon {
  width:38px;height:38px;
  background:#f1f5f9;
  border-radius:10px;
  border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;
  color:var(--brand);flex-shrink:0;font-size:.88rem;font-weight:800;
}
.nr-ltxt { flex:1;font-size:.88rem;font-weight:600; }
.nr-lext { color:#94a3b8;font-size:.8rem;flex-shrink:0;display:flex;align-items:center; }

/* Shared nr-box — white header with dark text (Indexing, etc) */
.nr-box { background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-sm); }
.nr-box__head {
  background:#fff;color:var(--dark);
  padding:12px 18px;
  display:flex;align-items:center;gap:10px;
  border-bottom:1px solid var(--line);
}
.nr-box__title { font-size:.9rem;font-weight:800;font-family:var(--font);display:flex;align-items:center;gap:8px;flex:1;color:var(--dark); }
.nr-box__sub { font-size:.72rem;color:var(--muted);font-family:var(--font);margin-top:2px; }

/* Section header */
.jh-sechead { display:flex;align-items:center;gap:10px;margin-bottom:14px; }
.jh-sechead__hint { font-size:.72rem;color:#94a3b8;white-space:nowrap;margin-left:auto; }
.jh-hlabel { font-size:.68rem;font-weight:800;color:var(--brand);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;font-family:var(--font); }
.jh-hrule { flex:1;height:1px;background:#e2e8f0; }

/* Hero carousel wrapper — white card */
.jh-hero-wrap { background:#fff;border-radius:var(--r);border:1px solid var(--line);box-shadow:var(--sh-sm);padding:16px; }
/* Hero carousel */
.jh-hero { position:relative;border-radius:14px;overflow:hidden;height:360px;background:var(--slate);box-shadow:var(--sh-md); }
.jh-hero__bg { position:absolute;inset:0;background-size:cover;background-position:center; }
.jh-hero__ov { position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.25) 55%,transparent 100%); }
.jh-hero__body { position:absolute;bottom:0;left:0;right:0;padding:20px 24px 16px;color:#fff;z-index:2; }
.jh-hero__top { margin-bottom:8px; }
/* Section chip — PHP image mein light pastel, colored text */
.jh-chip {
  display:inline-flex;align-items:center;
  background:rgba(0,59,68,.08);color:var(--brand);
  border:1px solid rgba(0,59,68,.15);
  border-radius:999px;padding:3px 10px;
  font-size:.68rem;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;font-family:var(--font);
}
/* Feed rows mein chip */
.jh-row .jh-chip {
  background:rgba(0,59,68,.06);color:var(--brand);
  border-color:rgba(0,59,68,.12);
}
/* Hero ke andar chip white overlay */
.jh-hero__top .jh-chip {
  background:rgba(255,255,255,.18);
  color:#fff;border-color:rgba(255,255,255,.35);
}
.jh-hero__title { font-size:1.12rem;font-weight:700;line-height:1.35;margin-bottom:8px;font-family:var(--font-serif); }
.jh-hero__title a { color:#fff;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden; }
.jh-hero__title a:hover { color:#bae6fd; }
.jh-hero__meta { font-size:.74rem;color:rgba(255,255,255,.75);margin-bottom:10px;display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-family:var(--font); }
.jh-hero__meta a { color:#7dd3fc; }
.jh-sep { color:rgba(255,255,255,.4); }
.jh-hero__acts { display:flex;gap:8px;margin-bottom:10px; }
.jh-pill { display:inline-flex;align-items:center;gap:5px;border-radius:6px;padding:5px 12px;font-size:.76rem;font-weight:700;text-decoration:none;transition:all .15s;font-family:var(--font); }
.jh-pill--full { background:rgba(255,255,255,.18);color:#fff;border:1px solid rgba(255,255,255,.35); }
.jh-pill--full:hover { background:rgba(255,255,255,.3);color:#fff; }
.jh-pill--pdf { background:rgba(220,38,38,.75);color:#fff;border:1px solid rgba(220,38,38,.5); }
.jh-pill--pdf:hover { background:#dc2626;color:#fff; }
.jh-hero__pb { height:2px;background:rgba(255,255,255,.18);border-radius:1px;margin-bottom:8px;overflow:hidden; }
.jh-hero__pbi { display:block;height:100%;background:#0ea5e9;transition:width .1s linear; }
.jh-hero__date { font-size:.7rem;color:rgba(255,255,255,.55);font-family:var(--font);display:inline-flex;align-items:center;gap:4px; }
.jh-dots { position:absolute;bottom:10px;right:14px;z-index:10;display:flex;gap:5px; }
.jh-dot { width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.35);border:none;cursor:pointer;padding:0;transition:all .2s; }
.jh-dot.active { background:#fff;width:20px;border-radius:4px; }
.jh-arr { position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);color:#fff;border:none;width:32px;height:32px;border-radius:50%;font-size:1.3rem;cursor:pointer;z-index:10;transition:background .15s;display:flex;align-items:center;justify-content:center; }
.jh-arr:hover { background:rgba(255,255,255,.28); }
.jh-arr--l { left:10px; }
.jh-arr--r { right:10px; }
.jh-noart { padding:32px;text-align:center;color:var(--muted);font-family:var(--font); }

/* Sechead with top margin variant */
.jh-sechead--mt { margin-top:2rem; }

/* Load More button */
.jh-feed__more { padding:16px 0 4px;text-align:center; }
.jh-feed__morebtn {
  display:inline-flex;align-items:center;gap:6px;
  background:#fff;border:1px solid #d1d5db;
  border-radius:8px;padding:9px 22px;
  font-size:.82rem;font-weight:700;color:var(--dark);
  cursor:pointer;transition:all .15s;font-family:var(--font);
}
.jh-feed__morebtn:hover { border-color:var(--brand);color:var(--brand);background:#f0fafb; }

/* Latest feed */
.jh-feed { margin-top:1.5rem; background:#fff;border-radius:var(--r);border:1px solid var(--line);box-shadow:var(--sh-sm);padding:16px; }
.jh-feed__tools {
  display:flex;gap:12px;flex-wrap:wrap;
  margin-bottom:16px;align-items:flex-end;
  background:#f8fafc;border:1px solid var(--line);
  border-radius:10px;padding:10px 14px;
}
.jh-feed__fgroup { display:flex;flex-direction:column;gap:3px; }
.jh-lbl { font-size:.65rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-family:var(--font); }
.jh-select {
  font-size:.82rem;padding:6px 10px;
  border:1px solid #d1d5db;border-radius:7px;
  background:#fff;color:var(--dark);outline:none;
  font-family:var(--font);min-width:140px;cursor:pointer;
}
.jh-select:focus { border-color:var(--brand);box-shadow:0 0 0 2px rgba(0,59,68,.08); }
.jh-input {
  font-size:.82rem;padding:6px 10px;
  border:1px solid #d1d5db;border-radius:7px;
  background:#fff;color:var(--dark);outline:none;
  font-family:var(--font);min-width:200px;
}
.jh-input:focus { border-color:var(--brand);box-shadow:0 0 0 2px rgba(0,59,68,.08); }
.jh-feed__list { display:flex;flex-direction:column; }
.jh-feed__empty { padding:20px;text-align:center;color:var(--muted);background:#f8fafc;border-radius:10px;font-size:.84rem;font-family:var(--font); }

/* Latest feed rows — Image 1 exact */
.jh-row { display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);transition:background .12s; }
.jh-row:last-child { border-bottom:none; }
.jh-row:hover { background:#fafbfc;margin:0 -10px;padding:16px 10px;border-radius:10px; }
.jh-row__tlink { flex-shrink:0; }
.jh-row__thumb { width:110px;height:90px;border-radius:10px;background:var(--slate);object-fit:cover; }
.jh-row__body { flex:1;min-width:0; }
.jh-row__top { display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;flex-wrap:wrap; }
.jh-date {
  font-size:.73rem;color:var(--muted);font-family:var(--font);
  display:inline-flex;align-items:center;gap:5px;
}
.jh-views { display:inline-flex;align-items:center;gap:4px;font-size:.73rem;color:var(--muted); }
.jh-row__title { margin-bottom:4px; }
.jh-row__title a {
  font-size:.95rem;font-weight:700;color:var(--dark);
  text-decoration:none;line-height:1.4;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  font-family:var(--font);
}
.jh-row__title a:hover { color:var(--brand); }
/* Image 1 exact: people icon · author · DOI · eye · views */
.jh-row__meta {
  font-size:.76rem;color:var(--muted);margin:4px 0 8px;
  display:flex;flex-wrap:wrap;gap:0;align-items:center;font-family:var(--font);
}
.jh-row__meta > span { display:inline-flex;align-items:center;gap:3px; }
.jh-meta-sep { margin:0 5px;color:#d1d5db;font-size:.65rem; }
.jh-row__acts { display:flex;gap:6px;flex-wrap:wrap; }
/* Image 1 exact pills */
.jh-pill-sm {
  display:inline-flex;align-items:center;gap:4px;
  border-radius:6px;padding:5px 14px;
  font-size:.76rem;font-weight:600;text-decoration:none;
  transition:all .12s;font-family:var(--font);
  border:1px solid #d1d5db;background:#fff;color:var(--dark);
}
.jh-pill-sm:hover { background:#f3f4f6;border-color:#9ca3af; }
.jh-pill-sm--pdf { background:#fff;color:#dc2626;border-color:#fca5a5; }
.jh-pill-sm--pdf:hover { background:#fef2f2;border-color:#f87171; }

/* Most Cited */
.jh-mcited__list { border:1px solid var(--line);border-radius:var(--r);overflow:hidden; }
.jh-mcited__row { display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);transition:background .12s; }
.jh-mcited__row:last-child { border-bottom:none; }
.jh-mcited__row:hover { background:#f8fafc; }
.jh-mcited__info { flex:1;min-width:0; }
.jh-mcited__title { font-size:.82rem;font-weight:500;color:var(--dark);text-decoration:none;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:var(--font); }
.jh-mcited__title:hover { color:var(--brand); }
.jh-mcited__doi { font-size:.68rem;color:var(--muted);margin-top:2px;font-family:var(--font); }
.jh-mcited__n { font-size:.82rem;font-weight:800;color:var(--brand);background:rgba(0,59,68,.07);padding:2px 9px;border-radius:6px;flex-shrink:0;min-width:24px;text-align:center;font-family:var(--font); }
.jh-mcited__foot { padding:10px 14px;border-top:1px solid var(--line); }
.jh-mcited__all { font-size:.78rem;font-weight:700;color:var(--brand);text-decoration:none;display:inline-flex;align-items:center;gap:5px;font-family:var(--font); }
.jh-mcited__all:hover { text-decoration:underline; }

/* Sidebar boxes */
/* jh-sbox — PHP exact: white card, plain title/sub, no dark header */
.jh-sbox { background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px;box-shadow:0 1px 6px rgba(2,6,23,.06); }
.jh-sbox+.jh-sbox,.jh-sbox+.nr-box,.nr-box+.jh-sbox,.nr-box+.nr-box { margin-top:14px; }
.jh-sbox__head { margin-bottom:10px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px; }
.jh-sbox__title { font-weight:800;color:var(--dark);font-size:.95rem;font-family:var(--font); }
.jh-sbox__sub { color:var(--muted);font-size:.75rem;font-family:var(--font); }
.jh-sbox__empty { color:var(--muted);font-size:.84rem;font-family:var(--font);padding:4px 0; }

/* Trending list */
/* Trending list — PHP nr-trending exact */
.jh-trending { list-style:none;padding:0;margin:0;display:grid;gap:10px; }
.jh-tr__item { display:grid;grid-template-columns:34px 1fr;gap:10px;padding:10px;border:1px dashed var(--line);border-radius:14px;align-items:start; }
.jh-tr__rank { width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg,rgba(14,165,233,.18),rgba(34,197,94,.16));display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--dark);font-size:.85rem;font-family:var(--font);flex-shrink:0; }
.jh-tr__r1,.jh-tr__r2,.jh-tr__r3,.jh-tr__r4 { background:linear-gradient(135deg,rgba(14,165,233,.18),rgba(34,197,94,.16)); }
.jh-tr__main { min-width:0; }
.jh-tr__title { font-weight:800;color:var(--dark);text-decoration:none;line-height:1.28;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:var(--font);font-size:.82rem; }
.jh-tr__title:hover { text-decoration:underline; }
.jh-tr__meta { margin-top:4px;font-size:.72rem;color:var(--muted);font-family:var(--font); }

/* Editorial EIC */
/* EIC — PHP nr-eic exact: gradient border card */
.jh-eic { border:1px solid var(--line);border-radius:16px;padding:12px;background:linear-gradient(135deg,rgba(0,0,0,.02),rgba(14,165,233,.06));margin-top:2px; }
.jh-eic__name { font-weight:800;color:var(--dark);font-size:.95rem;font-family:var(--font); }
.jh-eic__aff { color:var(--muted);font-size:.78rem;margin-top:3px;line-height:1.5;font-family:var(--font); }
.jh-eic__note { margin-top:10px;font-size:.75rem;color:var(--muted);font-family:var(--font); }

/* Quick Links */
.jh-qlinks { list-style:none;padding:4px 0;margin:0; }
.jh-qlinks li a { display:flex;align-items:center;gap:9px;padding:8px 16px;font-size:.8rem;font-weight:500;color:var(--dark);text-decoration:none;transition:background .12s;font-family:var(--font); }
.jh-qlinks li a:hover { background:#f1f5f9; }
.jh-ql__icon { display:inline-flex;align-items:center;color:var(--brand);flex-shrink:0; }

/* Page layout */
.jh-main { padding:28px 0; background:#f4f8f9; }
.jh-grid { display:grid;grid-template-columns:1fr 320px;gap:28px;align-items:start; }
.jh-col { min-width:0; }

/* Sidebar spacing — all boxes ke beech 16px gap */
.jh-sbox + .jh-sbox,
.jh-sbox + .nr-box,
.nr-box + .jh-sbox,
.nr-box + .nr-box { margin-top:16px; }
/* Trending, Editorial, Indexing wrap spacing */
.jh-trending-wrap { margin-top:16px; }
.jh-editorial-wrap { margin-top:16px; }

/* Issue strip */
.jh-strip { background:linear-gradient(135deg,var(--slate) 0%,#0f172a 100%);padding:28px 0;margin-top:8px; }
.jh-strip__inner { display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap; }
.jh-strip__left { color:#e2e8f0; }
.jh-strip__kicker { font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;margin-bottom:4px;font-family:var(--font); }
.jh-strip__title { font-size:1.2rem;font-weight:700;margin-bottom:4px;font-family:var(--font-serif); }
.jh-strip__desc { font-size:.8rem;color:#94a3b8;font-family:var(--font); }
.jh-strip__right { display:flex;gap:8px;flex-wrap:wrap; }
.jh-sbtn { display:inline-flex;align-items:center;gap:5px;padding:8px 18px;border-radius:8px;font-size:.8rem;font-weight:700;text-decoration:none;transition:all .18s;font-family:var(--font); }
.jh-sbtn--solid { background:#0ea5e9;color:#fff; }
.jh-sbtn--solid:hover { background:#0284c7;color:#fff; }
.jh-sbtn--ghost { background:rgba(255,255,255,.1);color:#e2e8f0;border:1px solid rgba(255,255,255,.2); }
.jh-sbtn--ghost:hover { background:rgba(255,255,255,.18);color:#fff; }

/* Responsive */
@media(max-width:991px) {
  .jh-mast { grid-template-columns:1fr; }
  .jh-mast__right { display:none; }
  .jh-grid { grid-template-columns:1fr; }
  /* Sidebar column mobile pe show hoga — sirf kuch boxes hide karein */
  .jh-col:last-child { display:block !important; }
  /* Mobile pe sidebar ka sirf indexing aur impact factor show karo, baaki hide */
  .jh-col:last-child .jh-sbox,
  .jh-col:last-child .nr-box { display:block; }
  /* Trending aur editorial mobile pe hide */
  .jh-col:last-child .jh-trending-wrap,
  .jh-col:last-child .jh-editorial-wrap { display:none; }
  .jh-hero { height:280px; }
  .jh-title { font-size:1.5rem; }
  /* Mobile pe sidebar full width */
  .jh-col:last-child { margin-top:8px; }
}
@media(max-width:600px) {
  .jh-strip__inner { flex-direction:column;align-items:flex-start; }
  .jh-row__thumb { width:64px;height:56px; }
}
/* =============================================================================
   JOURNAL PAGE (page.php replacement) — Academic style
   Classes: .jp-* prefix
   ============================================================================= */

/* Layout */
.jp-outer        { background:#f5f6f8;min-height:60vh;padding:36px 0 60px; }
.jp-container    { max-width:1100px;margin:0 auto;padding:0 20px; }
.jp-layout       { display:grid;grid-template-columns:220px 1fr;gap:32px;align-items:start; }
.jp-layout--notoc{ display:block; }

/* Breadcrumb */
.jp-breadcrumb   { font-size:.75rem;color:var(--muted);margin-bottom:20px;display:flex;align-items:center;gap:6px;flex-wrap:wrap; }
.jp-breadcrumb a { color:var(--brand);text-decoration:none;font-weight:500; }
.jp-breadcrumb a:hover{ text-decoration:underline; }
.jp-breadcrumb__sep{ color:#cbd5e1; }

/* Left TOC panel */
.jp-toc          { position:sticky;top:80px;font-size:.8rem; }
.jp-toc__box     { background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-sm); }
.jp-toc__head    { background:var(--brand);color:#fff;padding:10px 14px;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase; }
.jp-toc__list    { padding:8px 0;list-style:none;margin:0; }
.jp-toc__item    { border:none;margin:0;padding:0; }
.jp-toc__link    { display:block;padding:6px 14px;color:#334155;text-decoration:none;line-height:1.45;border-left:3px solid transparent;transition:all .15s;font-size:.78rem; }
.jp-toc__link:hover        { color:var(--brand);background:#f0f9ff;border-left-color:var(--brand); }
.jp-toc__link.jp-toc--h3  { padding-left:24px;color:var(--muted);font-size:.73rem; }
.jp-toc__link.jp-toc--h3:hover{ color:var(--brand);background:#f0f9ff;border-left-color:var(--brand); }
.jp-toc__divider { height:1px;background:var(--line);margin:4px 0; }

/* Main article card */
.jp-card         { background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:36px 40px;box-shadow:var(--sh-sm); }

/* Page title area */
.jp-title-area   { border-bottom:2px solid var(--line);margin-bottom:28px;padding-bottom:20px; }
.jp-kicker       { font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brand);background:rgba(0,59,68,.08);display:inline-block;padding:3px 10px;border-radius:4px;margin-bottom:10px; }
.jp-title        { font-family:var(--font-serif);font-size:1.75rem;font-weight:700;color:#0f172a;line-height:1.3;margin:0 0 0; }

/* Content typography — academic */
.jp-body         { font-size:.97rem;line-height:1.85;color:#1e293b;font-family:var(--font); }
.jp-body h2      { font-family:var(--font-serif);font-size:1.18rem;font-weight:700;color:var(--brand);margin:32px 0 12px;padding-bottom:6px;border-bottom:1px solid var(--line); }
.jp-body h3      { font-family:var(--font);font-size:1.02rem;font-weight:700;color:#0f172a;margin:22px 0 8px; }
.jp-body h4      { font-family:var(--font);font-size:.95rem;font-weight:700;color:#334155;margin:16px 0 6px; }
.jp-body p       { margin:0 0 16px; }
.jp-body a       { color:var(--brand);text-decoration:underline;text-decoration-color:rgba(0,59,68,.35); }
.jp-body a:hover { text-decoration-color:var(--brand); }
.jp-body ul,.jp-body ol { margin:0 0 16px;padding-left:24px; }
.jp-body li      { margin-bottom:7px;line-height:1.7; }
.jp-body strong  { font-weight:700;color:#0f172a; }
.jp-body em      { font-style:italic; }
.jp-body blockquote{
  border-left:4px solid var(--brand);
  background:rgba(0,59,68,.04);
  margin:20px 0;padding:14px 20px;
  border-radius:0 var(--r-sm) var(--r-sm) 0;
  font-style:italic;color:#374151;font-size:.95rem;
}
.jp-body blockquote p:last-child{ margin:0; }

/* Tables */
.jp-body table   { width:100%;border-collapse:collapse;margin:20px 0;font-size:.875rem;box-shadow:var(--sh-sm);border-radius:var(--r-sm);overflow:hidden; }
.jp-body thead th{ background:var(--brand);color:#fff;padding:10px 14px;text-align:left;font-weight:700;font-size:.82rem;letter-spacing:.03em; }
.jp-body tbody tr:nth-child(even){ background:#f8fafc; }
.jp-body tbody tr:hover           { background:#f0f9ff; }
.jp-body td      { padding:9px 14px;border-bottom:1px solid var(--line);vertical-align:top; }
.jp-body tbody tr:last-child td   { border-bottom:none; }

/* Images */
.jp-body img     { max-width:100%;height:auto;border-radius:var(--r-sm);box-shadow:var(--sh-sm);margin:10px 0; }
.jp-body figure  { margin:20px 0;text-align:center; }
.jp-body figcaption{ font-size:.78rem;color:var(--muted);margin-top:6px;font-style:italic; }

/* Code */
.jp-body pre     { background:#1e293b;color:#e2e8f0;padding:16px 20px;border-radius:var(--r-sm);overflow-x:auto;font-size:.82rem;line-height:1.6;margin:16px 0; }
.jp-body code    { background:rgba(0,59,68,.08);color:var(--brand);padding:2px 6px;border-radius:4px;font-size:.85em;font-family:'Courier New',monospace; }
.jp-body pre code{ background:none;color:inherit;padding:0; }

/* Meta footer */
.jp-meta         { margin-top:32px;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px; }
.jp-meta__text   { font-size:.73rem;color:var(--muted); }
.jp-meta__back   { font-size:.78rem;font-weight:600;color:var(--brand);text-decoration:none;display:inline-flex;align-items:center;gap:4px; }
.jp-meta__back:hover{ text-decoration:underline; }

/* Responsive */
@media(max-width:900px){
  .jp-layout        { grid-template-columns:1fr; }
  .jp-toc           { display:none; }
  .jp-card          { padding:24px 20px; }
  .jp-title         { font-size:1.35rem; }
}
@media(max-width:480px){
  .jp-card          { padding:18px 14px; }
  .jp-body          { font-size:.92rem; }
  .jp-outer         { padding:20px 0 40px; }
}


/* =============================================================================
   JOURNAL PAGE (slug pages: About, Copyright, Ethics, Privacy, etc.)
   pg-* classes  —  moved from [slug]/page.tsx inline <style>
   Advanced academic layout matching SiteHeader (.hb-*) design language
   ============================================================================= */

/* ── Outer wrapper ── */
.pg-outer {
  background: linear-gradient(180deg, #f0f4f8 0%, #fff 180px);
  min-height: 60vh;
  padding: 0 0 56px;
}

/* ── Breadcrumb bar ── */
.pg-breadbar {
  background: var(--brand);
  padding: 10px 0;
}
.pg-breadbar-inner {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: .75rem;
  color: rgba(255,255,255,.7);
}
.pg-breadbar a {
  color: rgba(255,255,255,.85);
  text-decoration: none;
  font-weight: 500;
  transition: color .15s;
}
.pg-breadbar a:hover { color: #fff; }
.pg-breadbar .sep { opacity: .5; }
.pg-breadbar .curr { color: #fff; font-weight: 600; }

/* ── Hero strip ── */
.pg-hero {
  background: var(--brand);
  padding: 32px 0 40px;
  margin-bottom: -24px;
}
.pg-hero-inner {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 24px;
}
.pg-hero-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(255,255,255,.65);
  margin-bottom: 10px;
}
.pg-hero-label::before {
  content: '';
  display: block;
  width: 16px; height: 2px;
  background: rgba(255,255,255,.4);
  border-radius: 2px;
}
.pg-hero-title {
  font-family: var(--font-serif);
  font-size: clamp(1.5rem, 3vw, 2.1rem);
  font-weight: 700;
  color: #fff;
  margin: 0;
  line-height: 1.25;
  text-shadow: 0 2px 12px rgba(0,0,0,.18);
}

/* ── Content wrapper (two-column: TOC + body) ── */
.pg-wrap {
  max-width: var(--container);
  margin: 0 auto;
  padding: 36px 24px 0;
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 32px;
  align-items: flex-start;
}
.pg-wrap--notoc {
  grid-template-columns: 1fr;
  max-width: 860px;
}

/* ── TOC sidebar ── */
.pg-toc {
  position: sticky;
  top: 120px;
}
.pg-toc-box {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--r);
  
  box-shadow: var(--sh-sm);
}
.pg-toc-box h4 {
  font-size: .65rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--brand);
  margin: 0 0 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--line);
}
.pg-toc-box a {
  display: block;
  font-size: .8rem;
  color: #475569;
  text-decoration: none;
  padding: 5px 0 5px 10px;
  border-left: 2px solid transparent;
  line-height: 1.4;
  transition: color .15s, border-color .15s, background .15s;
  border-radius: 0 4px 4px 0;
}
.pg-toc-box a:hover {
  color: var(--brand);
  border-left-color: var(--brand);
  background: rgba(0,59,68,.04);
}
.pg-toc-box a.lv3 {
  padding-left: 22px;
  color: var(--muted);
  font-size: .75rem;
}
.pg-toc-box a.lv3:hover { color: var(--brand); }

/* ── Main content card ── */
.pg-main {
  min-width: 0;
}
.pg-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  padding: 36px 40px 40px;
  box-shadow: var(--sh-sm);
}

/* ── Page heading inside card ── */
.pg-h1 {
  font-family: var(--font-serif);
  font-size: 1.55rem;
  font-weight: 800;
  color: var(--brand);
  margin: 0 0 6px;
  line-height: 1.25;
}
.pg-h1-divider {
  width: 48px; height: 3px;
  background: var(--brand);
  border-radius: 3px;
  margin: 0 0 26px;
  opacity: .6;
}

/* ── Rich body content ── */
.pg-body {
  font-size: .97rem;
  line-height: 1.82;
  color: #1e293b;
}
.pg-body h2 {
  font-family: var(--font-serif);
  font-size: 1.12rem;
  font-weight: 700;
  color: var(--brand);
  margin: 30px 0 10px;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--line);
}
.pg-body h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate);
  margin: 20px 0 8px;
}
.pg-body p { margin: 0 0 14px; }
.pg-body a { color: #0b5ed7; text-decoration: underline; text-underline-offset: 2px; }
.pg-body a:hover { color: var(--brand); }
.pg-body ul, .pg-body ol { margin: 0 0 14px; padding-left: 22px; }
.pg-body li { margin-bottom: 6px; }
.pg-body strong { font-weight: 700; color: var(--slate); }
.pg-body em { font-style: italic; }
.pg-body blockquote {
  border-left: 3px solid var(--brand);
  background: rgba(0,59,68,.04);
  margin: 18px 0;
  padding: 14px 20px;
  border-radius: 0 var(--r-sm) var(--r-sm) 0;
  font-style: italic;
  color: #374151;
}
.pg-body blockquote p:last-child { margin: 0; }
.pg-body table {
  width: 100%;
  border-collapse: collapse;
  margin: 18px 0;
  font-size: .875rem;
  border-radius: var(--r-sm);
  overflow: hidden;
  box-shadow: var(--sh-sm);
}
.pg-body th {
  background: var(--brand);
  color: #fff;
  padding: 10px 14px;
  text-align: left;
  font-weight: 700;
  font-size: .8rem;
  letter-spacing: .03em;
}
.pg-body td {
  border-bottom: 1px solid var(--line);
  padding: 9px 14px;
  vertical-align: top;
}
.pg-body tr:nth-child(even) { background: #f8fafc; }
.pg-body tr:hover { background: #f0f9ff; }
.pg-body img { max-width: 100%; height: auto; border-radius: var(--r-sm); }

/* ── Meta footer ── */
.pg-meta {
  font-size: .72rem;
  color: var(--muted);
  margin-top: 28px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
  display: flex;
  align-items: center;
  gap: 8px;
}
.pg-meta::before {
  content: '🕒';
  font-size: .8rem;
}

/* ── Responsive ── */
@media (max-width: 900px) {
  .pg-wrap { grid-template-columns: 1fr; padding: 24px 16px 0; }
  .pg-toc  { display: none; }
  .pg-card { padding: 24px 20px 28px; }
  .pg-hero { padding: 22px 0 32px; }
  .pg-hero-title { font-size: 1.35rem; }
}
@media (max-width: 480px) {
  .pg-card { padding: 18px 14px 22px; border-radius: var(--r); }
  .pg-body { font-size: .93rem; }
}


/* =============================================================================
   BOOTSTRAP ICONS REPLACEMENT — Pure CSS SVG
   DB blocks mein bi-* class names hain — CDN ki zaroorat nahi
   Har icon = inline-block pseudo SVG via mask-image
   ============================================================================= */

[class^="bi-"], [class*=" bi-"] {
  display: inline-block;
  width: 1em; height: 1em;
  vertical-align: -.125em;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  flex-shrink: 0;
}

/* Google Scholar */
.bi-google {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.48 10.92v3.28h7.84c-.24 1.84-.853 3.187-1.787 4.133-1.147 1.147-2.933 2.4-6.053 2.4-4.827 0-8.6-3.893-8.6-8.72s3.773-8.72 8.6-8.72c2.6 0 4.507 1.027 5.907 2.347l2.307-2.307C18.747 1.44 16.133 0 12.48 0 5.867 0 .307 5.387.307 12s5.56 12 12.173 12c3.573 0 6.267-1.173 8.373-3.36 2.16-2.16 2.84-5.213 2.84-7.667 0-.76-.053-1.467-.173-2.053H12.48z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.48 10.92v3.28h7.84c-.24 1.84-.853 3.187-1.787 4.133-1.147 1.147-2.933 2.4-6.053 2.4-4.827 0-8.6-3.893-8.6-8.72s3.773-8.72 8.6-8.72c2.6 0 4.507 1.027 5.907 2.347l2.307-2.307C18.747 1.44 16.133 0 12.48 0 5.867 0 .307 5.387.307 12s5.56 12 12.173 12c3.573 0 6.267-1.173 8.373-3.36 2.16-2.16 2.84-5.213 2.84-7.667 0-.76-.053-1.467-.173-2.053H12.48z'/%3E%3C/svg%3E");
}

/* Award / medal */
.bi-award {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M9.669.864 8 0 6.331.864l-1.858.282-.842 1.68-1.337 1.32L2.6 6l-.306 1.854 1.337 1.32.842 1.68 1.858.282L8 12l1.669-.864 1.858-.282.842-1.68 1.337-1.32L13.4 6l.306-1.854-1.337-1.32-.842-1.68zm1.196 1.193.684 1.365 1.086 1.072L12.387 6l.248 1.506-1.086 1.072-.684 1.365-1.51.229L8 11l-1.355-.828-1.51-.229-.684-1.365-1.086-1.072L3.613 6l-.248-1.506 1.086-1.072.684-1.365 1.51-.229L8 1l1.355.828z'/%3E%3Cpath d='M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M9.669.864 8 0 6.331.864l-1.858.282-.842 1.68-1.337 1.32L2.6 6l-.306 1.854 1.337 1.32.842 1.68 1.858.282L8 12l1.669-.864 1.858-.282.842-1.68 1.337-1.32L13.4 6l.306-1.854-1.337-1.32-.842-1.68zm1.196 1.193.684 1.365 1.086 1.072L12.387 6l.248 1.506-1.086 1.072-.684 1.365-1.51.229L8 11l-1.355-.828-1.51-.229-.684-1.365-1.086-1.072L3.613 6l-.248-1.506 1.086-1.072.684-1.365 1.51-.229L8 1l1.355.828z'/%3E%3Cpath d='M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1z'/%3E%3C/svg%3E");
}

/* Barcode / ISSN */
.bi-upc-scan {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1.5 1a.5.5 0 0 0-.5.5v3a.5.5 0 0 1-1 0v-3A1.5 1.5 0 0 1 1.5 0h3a.5.5 0 0 1 0 1zM11 .5a.5.5 0 0 1 .5-.5h3A1.5 1.5 0 0 1 16 1.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 1-.5-.5M.5 11a.5.5 0 0 1 .5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 1 0 1h-3A1.5 1.5 0 0 1 0 14.5v-3a.5.5 0 0 1 .5-.5m15 0a.5.5 0 0 1 .5.5v3a1.5 1.5 0 0 1-1.5 1.5h-3a.5.5 0 0 1 0-1h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 1 .5-.5M3 4.5a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1.5 1a.5.5 0 0 0-.5.5v3a.5.5 0 0 1-1 0v-3A1.5 1.5 0 0 1 1.5 0h3a.5.5 0 0 1 0 1zM11 .5a.5.5 0 0 1 .5-.5h3A1.5 1.5 0 0 1 16 1.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 1-.5-.5M.5 11a.5.5 0 0 1 .5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 1 0 1h-3A1.5 1.5 0 0 1 0 14.5v-3a.5.5 0 0 1 .5-.5m15 0a.5.5 0 0 1 .5.5v3a1.5 1.5 0 0 1-1.5 1.5h-3a.5.5 0 0 1 0-1h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 1 .5-.5M3 4.5a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0z'/%3E%3C/svg%3E");
}

/* Link / CrossRef */
.bi-link-45deg {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.715 6.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1 1 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4 4 0 0 1-.128-1.287z'/%3E%3Cpath d='M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.715 6.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1 1 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4 4 0 0 1-.128-1.287z'/%3E%3Cpath d='M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243z'/%3E%3C/svg%3E");
}

/* Journal / ScienceGate */
.bi-journal-text {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 10.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5'/%3E%3Cpath d='M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2'/%3E%3Cpath d='M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 10.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5'/%3E%3Cpath d='M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2'/%3E%3Cpath d='M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z'/%3E%3C/svg%3E");
}

/* Bar chart / Scite */
.bi-bar-chart-line {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M11 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1v-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3h1V7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7h1zm1 12h2V2h-2zm-3 0V7H7v7zm-5 0v-3H2v3z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M11 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1v-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3h1V7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7h1zm1 12h2V2h-2zm-3 0V7H7v7zm-5 0v-3H2v3z'/%3E%3C/svg%3E");
}

/* Globe / Advanced Sciences */
.bi-globe2, .bi-globe {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8m7.5-6.923c-.67.204-1.335.82-1.887 1.855A8 8 0 0 0 5.145 4H7.5zM4.09 4a9.3 9.3 0 0 1 .64-1.539 7 7 0 0 1 .597-.933A7.03 7.03 0 0 0 2.255 4zm-.582 3.5c.03-.877.138-1.718.312-2.5H1.674a7 7 0 0 0-.656 2.5zM4.847 5a12.5 12.5 0 0 0-.338 2.5H7.5V5zM8.5 5v2.5h2.99a12.5 12.5 0 0 0-.337-2.5zM4.51 8.5a12.5 12.5 0 0 0 .337 2.5H7.5V8.5zm3.99 0V11h2.653c.187-.765.306-1.608.338-2.5zM5.145 12q.208.58.468 1.068c.552 1.035 1.218 1.65 1.887 1.855V12zm.182 2.472a7 7 0 0 1-.597-.933A9.3 9.3 0 0 1 4.09 12H2.255a7 7 0 0 0 3.072 2.472M3.82 11a13.7 13.7 0 0 1-.312-2.5h-2.49c.062.89.291 1.733.656 2.5zm6.853 3.472A7 7 0 0 0 13.745 12H11.91a9.3 9.3 0 0 1-.64 1.539 7 7 0 0 1-.597.933M8.5 12v2.923c.67-.204 1.335-.82 1.887-1.855q.26-.487.468-1.068zm3.68-1h2.146c.365-.767.594-1.61.656-2.5h-2.49a13.7 13.7 0 0 1-.312 2.5m2.802-3.5a7 7 0 0 0-.656-2.5H12.18c.174.782.282 1.623.312 2.5zM11.27 2.461c.247.464.462.98.64 1.539h1.835a7 7 0 0 0-3.072-2.472c.218.284.418.598.597.933M10.855 4a8 8 0 0 0-.468-1.068C9.835 1.897 9.17 1.282 8.5 1.077V4z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8m7.5-6.923c-.67.204-1.335.82-1.887 1.855A8 8 0 0 0 5.145 4H7.5zM4.09 4a9.3 9.3 0 0 1 .64-1.539 7 7 0 0 1 .597-.933A7.03 7.03 0 0 0 2.255 4zm-.582 3.5c.03-.877.138-1.718.312-2.5H1.674a7 7 0 0 0-.656 2.5zM4.847 5a12.5 12.5 0 0 0-.338 2.5H7.5V5zM8.5 5v2.5h2.99a12.5 12.5 0 0 0-.337-2.5zM4.51 8.5a12.5 12.5 0 0 0 .337 2.5H7.5V8.5zm3.99 0V11h2.653c.187-.765.306-1.608.338-2.5zM5.145 12q.208.58.468 1.068c.552 1.035 1.218 1.65 1.887 1.855V12zm.182 2.472a7 7 0 0 1-.597-.933A9.3 9.3 0 0 1 4.09 12H2.255a7 7 0 0 0 3.072 2.472M3.82 11a13.7 13.7 0 0 1-.312-2.5h-2.49c.062.89.291 1.733.656 2.5zm6.853 3.472A7 7 0 0 0 13.745 12H11.91a9.3 9.3 0 0 1-.64 1.539 7 7 0 0 1-.597.933M8.5 12v2.923c.67-.204 1.335-.82 1.887-1.855q.26-.487.468-1.068zm3.68-1h2.146c.365-.767.594-1.61.656-2.5h-2.49a13.7 13.7 0 0 1-.312 2.5m2.802-3.5a7 7 0 0 0-.656-2.5H12.18c.174.782.282 1.623.312 2.5zM11.27 2.461c.247.464.462.98.64 1.539h1.835a7 7 0 0 0-3.072-2.472c.218.284.418.598.597.933M10.855 4a8 8 0 0 0-.468-1.068C9.835 1.897 9.17 1.282 8.5 1.077V4z'/%3E%3C/svg%3E");
}

/* Patch check filled — Indexing heading */
.bi-patch-check-fill {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01zm.287 5.984-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7 8.793l2.646-2.647a.5.5 0 0 1 .708.708z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01zm.287 5.984-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7 8.793l2.646-2.647a.5.5 0 0 1 .708.708z'/%3E%3C/svg%3E");
}

/* External link arrow */
.bi-box-arrow-up-right {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5'/%3E%3Cpath fill-rule='evenodd' d='M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5'/%3E%3Cpath fill-rule='evenodd' d='M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0z'/%3E%3C/svg%3E");
}

/* People / authors */
.bi-people, .bi-people-fill {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M15 14s1 0 1-1-1-4-5-4-5 3-5 4 1 1 1 1zm-7.978-1L7 12.996c.001-.264.167-1.03.76-1.72C8.312 10.629 9.282 10 11 10c1.717 0 2.687.63 3.24 1.276.593.69.758 1.457.76 1.72l-.008.002-.014.002zM11 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4m3-2a3 3 0 1 1-6 0 3 3 0 0 1 6 0M6.936 9.28a6 6 0 0 0-1.23-.247A7 7 0 0 0 5 9c-4 0-5 3-5 4q0 1 1 1h4.216A2.24 2.24 0 0 1 5 13c0-1.01.377-2.042 1.09-2.904.243-.294.526-.569.846-.816M4.92 10A5.5 5.5 0 0 0 4 13H1c0-.26.164-1.03.76-1.724.545-.636 1.492-1.256 3.16-1.275ZM1.5 5.5a3 3 0 1 1 6 0 3 3 0 0 1-6 0m3-2a2 2 0 1 0 0 4 2 2 0 0 0 0-4'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M15 14s1 0 1-1-1-4-5-4-5 3-5 4 1 1 1 1zm-7.978-1L7 12.996c.001-.264.167-1.03.76-1.72C8.312 10.629 9.282 10 11 10c1.717 0 2.687.63 3.24 1.276.593.69.758 1.457.76 1.72l-.008.002-.014.002zM11 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4m3-2a3 3 0 1 1-6 0 3 3 0 0 1 6 0M6.936 9.28a6 6 0 0 0-1.23-.247A7 7 0 0 0 5 9c-4 0-5 3-5 4q0 1 1 1h4.216A2.24 2.24 0 0 1 5 13c0-1.01.377-2.042 1.09-2.904.243-.294.526-.569.846-.816M4.92 10A5.5 5.5 0 0 0 4 13H1c0-.26.164-1.03.76-1.724.545-.636 1.492-1.256 3.16-1.275ZM1.5 5.5a3 3 0 1 1 6 0 3 3 0 0 1-6 0m3-2a2 2 0 1 0 0 4 2 2 0 0 0 0-4'/%3E%3C/svg%3E");
}

/* Eye / views */
.bi-eye {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8M1.173 8a13 13 0 0 1 1.66-2.043C4.12 4.668 5.88 3.5 8 3.5s3.879 1.168 5.168 2.457A13 13 0 0 1 14.828 8q-.086.13-.195.288c-.335.48-.83 1.12-1.465 1.755C11.879 11.332 10.119 12.5 8 12.5s-3.879-1.168-5.168-2.457A13 13 0 0 1 1.172 8z'/%3E%3Cpath d='M8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5M4.5 8a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8M1.173 8a13 13 0 0 1 1.66-2.043C4.12 4.668 5.88 3.5 8 3.5s3.879 1.168 5.168 2.457A13 13 0 0 1 14.828 8q-.086.13-.195.288c-.335.48-.83 1.12-1.465 1.755C11.879 11.332 10.119 12.5 8 12.5s-3.879-1.168-5.168-2.457A13 13 0 0 1 1.172 8z'/%3E%3Cpath d='M8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5M4.5 8a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0'/%3E%3C/svg%3E");
}

/* Calendar */
.bi-calendar3 {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857z'/%3E%3Cpath d='M6.5 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857z'/%3E%3Cpath d='M6.5 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2'/%3E%3C/svg%3E");
}

/* File earmark text */
.bi-file-earmark-text {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5.5 7a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zM5 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5'/%3E%3Cpath d='M9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.5zm0 1v2A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5.5 7a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zM5 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5'/%3E%3Cpath d='M9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.5zm0 1v2A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z'/%3E%3C/svg%3E");
}

/* PDF file type */
.bi-filetype-pdf {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38.57.57 0 0 1-.238.241.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181.185.183.185.522m1.217-1.333v3.999h1.246q.606 0 .985-.332.38-.33.513-.918.135-.59.135-1.395 0-.805-.133-1.393a1.8 1.8 0 0 0-.514-.917q-.382-.33-.986-.344zm.791.645h.43q.324 0 .512.205.19.202.257.559t.067.844q0 .475-.066.836-.065.359-.257.561-.19.2-.512.2h-.43zm3.557-.645v3.999h.791v-1.624h1.248v-.646H7.71v-1.085h1.422v-.644z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38.57.57 0 0 1-.238.241.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181.185.183.185.522m1.217-1.333v3.999h1.246q.606 0 .985-.332.38-.33.513-.918.135-.59.135-1.395 0-.805-.133-1.393a1.8 1.8 0 0 0-.514-.917q-.382-.33-.986-.344zm.791.645h.43q.324 0 .512.205.19.202.257.559t.067.844q0 .475-.066.836-.065.359-.257.561-.19.2-.512.2h-.43zm3.557-.645v3.999h.791v-1.624h1.248v-.646H7.71v-1.085h1.422v-.644z'/%3E%3C/svg%3E");
}

/* Arrow right */
.bi-arrow-right {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8'/%3E%3C/svg%3E");
}

/* Trending graph */
.bi-graph-up-arrow {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M0 0h1v15h15v1H0zm10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V4.9l-3.613 4.417a.5.5 0 0 1-.74.037L7.06 6.767l-3.656 5.027a.5.5 0 0 1-.808-.588l4-5.5a.5.5 0 0 1 .758-.06l2.609 2.61L13.445 4H10.5a.5.5 0 0 1-.5-.5'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M0 0h1v15h15v1H0zm10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V4.9l-3.613 4.417a.5.5 0 0 1-.74.037L7.06 6.767l-3.656 5.027a.5.5 0 0 1-.808-.588l4-5.5a.5.5 0 0 1 .758-.06l2.609 2.61L13.445 4H10.5a.5.5 0 0 1-.5-.5'/%3E%3C/svg%3E");
}

/* Speaker / megaphone — call for paper */
.bi-megaphone, .bi-megaphone-fill {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 2.5a1 1 0 0 1 2 0v11a1 1 0 0 1-2 0v-.085l-1 .5V3.585zM11.5 3.585v8.83l-10 5V14.5a1.5 1.5 0 0 1-1.5-1.5v-5A1.5 1.5 0 0 1 1.5 6.5h.5v-1.5a.5.5 0 0 1 .5-.5zM2 7.5v4h.5a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 2.5a1 1 0 0 1 2 0v11a1 1 0 0 1-2 0v-.085l-1 .5V3.585zM11.5 3.585v8.83l-10 5V14.5a1.5 1.5 0 0 1-1.5-1.5v-5A1.5 1.5 0 0 1 1.5 6.5h.5v-1.5a.5.5 0 0 1 .5-.5zM2 7.5v4h.5a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5z'/%3E%3C/svg%3E");
}

/* Award filled */
.bi-award-fill {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0l1.669.864 1.858.282.842 1.68 1.337 1.32L13.4 6l.306 1.854-1.337 1.32-.842 1.68-1.858.282L8 12l-1.669-.864-1.858-.282-.842-1.68-1.337-1.32L2.6 6l-.306-1.854 1.337-1.32.842-1.68L6.331.864z'/%3E%3Cpath d='M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0l1.669.864 1.858.282.842 1.68 1.337 1.32L13.4 6l.306 1.854-1.337 1.32-.842 1.68-1.858.282L8 12l-1.669-.864-1.858-.282-.842-1.68-1.337-1.32L2.6 6l-.306-1.854 1.337-1.32.842-1.68L6.331.864z'/%3E%3Cpath d='M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1z'/%3E%3C/svg%3E");
}
.me-1 { margin-right: .25rem !important; }
.me-2 { margin-right: .5rem  !important; }
.me-3 { margin-right: 1rem   !important; }
.ms-1 { margin-left:  .25rem !important; }
.ms-2 { margin-left:  .5rem  !important; }

/* =============================================================================
   ISSUE VIEW  —  iv-* prefix
   New academic design — dark teal header + gold accents + card layout
   ============================================================================= */

.iv-w { max-width:var(--container,1200px);margin:0 auto;padding:0 20px; }

/* ── Breadcrumb ── */
.iv-crumb {border-bottom:1px solid rgba(255,255,255,.06);padding:9px 0; }
.iv-crumb ol { list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:5px;align-items:center;font-size:.75rem; }
.iv-crumb li { display:inline-flex;align-items:center;gap:4px;color:rgba(255,255,255,.4); }
.iv-crumb li+li::before { content:'›';margin-right:4px;color:rgba(255,255,255,.2); }
.iv-crumb a { color:#000;text-decoration:none;display:inline-flex;align-items:center;gap:4px;font-weight:600;transition:color .15s; }
.iv-crumb a:hover { color:#e6a817; }
.iv-crumb li[aria-current] { color:#000; }

/* ── Issue header ── */
.iv-header {
  
  padding:28px 0 24px;position:relative;overflow:hidden;
}
.iv-header::before {
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,#e6a817,#f9d56e,#0ea5e9,#e6a817);
  background-size:200% 100%;animation:vfLine 3s linear infinite;
}
.iv-header::after {
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:60px 60px;
}
.iv-header__journal {
  font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:#000;margin-bottom:10px;
  display:inline-flex;align-items:center;gap:6px;position:relative;z-index:1;
}
.iv-header__row {
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:20px;flex-wrap:wrap;position:relative;z-index:1;
}
.iv-header__left { flex:1;min-width:0; }
.iv-header__right { display:flex;gap:10px;align-items:center;flex-shrink:0; }
.iv-header__label {
  font-size:clamp(1.5rem,3vw,2.1rem);font-weight:900;color:#000;
  margin:0 0 6px;line-height:1.15;font-family:var(--font-serif,Georgia,serif);
}
.iv-header__title { font-size:.95rem;color:#000;margin-bottom:12px; }
.iv-header__meta { display:flex;flex-wrap:wrap;gap:8px;font-size:.74rem;color:#000;align-items:center; }
.iv-header__meta span {
  display:inline-flex;align-items:center;gap:5px;
  background:#dbdbdb;border:1px solid rgba(255,255,255,.1);
  padding:3px 10px;border-radius:999px;
}

/* Header buttons */
.iv-hbtn { display:inline-flex;align-items:center;gap:6px;padding:7px 15px;border-radius:8px;font-size:.78rem;font-weight:700;text-decoration:none;transition:all .15s;border:1.5px solid transparent; }
.iv-hbtn--ghost { background:#000;color:#fff;border-color:rgba(255,255,255,.2); }
.iv-hbtn--ghost:hover { background:rgba(255,255,255,.18); }
.iv-hbtn--gold { background:#e6a817;color:#040d18;border-color:#e6a817; }
.iv-hbtn--gold:hover { background:#d4970e; }

/* ── Page body ── */
.iv-outer { background:#fff;min-height:60vh; }
.iv-page-grid {
  display:grid;
  grid-template-columns:230px 1fr;
  gap:24px;
  align-items:flex-start;
  padding:24px 0 60px;
}
@media(max-width:900px){ .iv-page-grid{grid-template-columns:1fr;} .iv-toc-col{display:none;} }

/* ── TOC Sidebar ── */
.iv-toc-col { position:sticky;top:80px;height:fit-content; }
.iv-toc-card {
  background:#fff;
  border:1px solid rgba(0,59,68,.1);
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 2px 12px rgba(0,59,68,.06);
}
.iv-toc-head {
  display:flex;align-items:center;gap:7px;
  background:#003b44;color:#e6a817;
  font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;
  padding:11px 14px;border-bottom:1px solid rgba(255,255,255,.08);
}
.iv-toc-body { padding:6px 0; }
.iv-toc-body ul { list-style:none;margin:0;padding:0; }
.iv-toc-body li { margin:0; }
.iv-sec-link {
  display:flex;align-items:center;justify-content:space-between;
  padding:7px 14px;color:#374151;text-decoration:none;
  font-size:.79rem;font-weight:500;
  border-left:2px solid transparent;
  transition:all .15s;
}
.iv-sec-link:hover { background:rgba(0,59,68,.05);color:#003b44;border-left-color:#003b44; }
.iv-sec-link--active {
  font-weight:700;color:#003b44;
  background:rgba(0,59,68,.06);
  border-left:3px solid #e6a817;padding-left:11px;
}
.iv-sec-count {
  background:rgba(0,59,68,.08);color:#003b44;
  font-size:.65rem;font-weight:800;
  padding:1px 7px;border-radius:999px;flex-shrink:0;
}
.iv-sec-link--active .iv-sec-count { background:#e6a817;color:#040d18; }

/* Sidebar issue info */
.iv-toc-info { padding:12px 14px;border-top:1px solid rgba(0,59,68,.08);background:#fafbfc; }
.iv-toc-info__label { font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#e6a817;margin-bottom:3px; }
.iv-toc-info__val { font-size:.82rem;font-weight:700;color:#0b1220; }
.iv-toc-info__year { font-size:.74rem;color:#64748b;font-family:var(--font-mono,monospace);margin-top:2px; }

/* ── Main area ── */
.iv-main { min-width:0; }

/* Issue heading */
.iv-issue-hd__top { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:4px; }
.iv-issue-hd__title { font-size:1.15rem;font-weight:800;color:#0b1220;margin:0; }
.iv-issue-hd__date { color:#64748b;font-size:.82rem;margin:3px 0 0; }
.iv-issue-hd__desc { font-size:.88rem;line-height:1.7;color:#374151;margin:10px 0; }
.iv-art-count-badge {
  display:inline-flex;align-items:center;
  background:#003b44;color:#fff;
  font-size:.7rem;font-weight:700;
  padding:4px 12px;border-radius:999px;flex-shrink:0;
}
.iv-divider { border:none;border-top:2px solid #e6a817;margin:12px 0 18px;width:40px; }
.iv-empty { padding:40px;text-align:center;color:#64748b;font-size:.9rem;background:#fff;border-radius:12px;border:1px solid #e9ecef; }

/* Section group */
.iv-section-group { margin-bottom:8px; }
.iv-section-head { display:flex;align-items:center;gap:12px;margin:20px 0 14px; }
.iv-section-head__label {
  white-space:nowrap;font-size:.72rem;font-weight:800;
  text-transform:uppercase;letter-spacing:.1em;
  color:#003b44;background:#fff;
  border:1px solid rgba(0,59,68,.2);
  padding:4px 14px;border-radius:999px;
  flex-shrink:0;
}
.iv-section-head__line { flex:1;height:1px;background:rgba(0,59,68,.1); }

/* ── Article card ── */
.iv-art-card {
  background:#fff;
  border:1px solid rgba(0,59,68,.09);
  border-left:3px solid transparent;
  border-radius:12px;
  padding:5px 5px;
  margin-bottom:12px;
  box-shadow:0 1px 4px rgba(2,6,23,.04);
  transition:box-shadow .2s,border-left-color .2s,transform .2s;
}
.iv-art-card:hover {
  box-shadow:0 8px 24px rgba(0,59,68,.1);
  border-left-color:#e6a817;
  transform:translateY(-1px);
}

/* Card top row */
.iv-art-top { display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:10px; }
.iv-art-date { font-size:.7rem;color:#94a3b8;font-weight:500;flex-shrink:0; }

/* Badges */
.iv-art-badges { display:flex;align-items:center;gap:6px;flex-wrap:wrap; }
.iv-badge-oa {
  display:inline-flex;align-items:center;gap:4px;
  background:rgba(0,59,68,.07);color:#003b44;
  border:1px solid rgba(0,59,68,.18);
  border-radius:999px;padding:2px 9px;
  font-size:.68rem;font-weight:700;
}
.iv-badge-section {
  background:#f1f5f9;color:#475569;
  border:1px solid #e2e8f0;
  border-radius:999px;padding:2px 9px;
  font-size:.68rem;font-weight:600;
}

/* Title */
.iv-art-title { font-size:1.02rem;font-weight:700;color:#0b1220;margin:0 0 7px;line-height:1.4; }
.iv-art-title a { color:inherit;text-decoration:none;transition:color .15s; }
.iv-art-title a:hover { color:#003b44; }

/* Authors */
.iv-art-authors { display:flex;align-items:flex-start;gap:6px;font-size:.81rem;color:#374151;margin-bottom:6px;font-weight:500; }
.iv-art-authors svg { flex-shrink:0;margin-top:2px;color:#003b44;opacity:.7; }

/* DOI */
.iv-art-doi { font-size:.75rem;margin-bottom:8px; }
.iv-art-doi a {
  color:#003b44;text-decoration:none;
  display:inline-flex;align-items:center;gap:4px;
  font-family:var(--font-mono,monospace);
  transition:color .15s;
}
.iv-art-doi a:hover { color:#e6a817;text-decoration:underline; }

/* Stats */
.iv-art-stats { display:flex;flex-wrap:wrap;gap:12px;font-size:.73rem;color:#64748b;margin-bottom:12px; }
.iv-art-stats span { display:inline-flex;align-items:center;gap:4px; }

/* Actions */
.iv-art-actions { display:flex;gap:8px;flex-wrap:wrap; }
.iv-btn {
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 16px;border-radius:8px;
  font-size:.78rem;font-weight:700;
  text-decoration:none;transition:all .15s;
  border:1.5px solid transparent;
}
.iv-btn--primary { background:#003b44;color:#fff;border-color:#003b44; }
.iv-btn--primary:hover { background:#005060;border-color:#005060; }
.iv-btn--pdf { background:transparent;color:#003b44;border-color:rgba(0,59,68,.3); }
.iv-btn--pdf:hover { background:rgba(0,59,68,.06);border-color:rgba(0,59,68,.5); }

/* Back */
.iv-back-row { padding:20px 0 8px; }
.iv-back-link { display:inline-flex;align-items:center;gap:6px;font-size:.83rem;font-weight:700;color:#003b44;text-decoration:none; }
.iv-back-link:hover { color:#e6a817; }

/* ── ARTICLE VIEW — PHP app.css EXACT (ar-* classes) ────────────────────────*/
.ar{font-family:var(--ar-sans);background:var(--ar-bg);}
.ar *{box-sizing:border-box;}
.ar a{color:inherit;text-decoration:none;}
.ar-w{max-width:var(--ar-max);margin:0 auto;padding:0 1.5rem;}
@media(min-width:1024px){.ar-w{padding:0 2.5rem;}}
.ar-crumb{ background:var(--ar-wash); border-bottom:1px solid var(--ar-line); padding:.45rem 0;font-size:.75rem; }
.ar-crumb ol{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0;gap:0;}
.ar-crumb li{display:flex;align-items:center;}
.ar-crumb li+li::before{content:'›';color:#bbb;margin:0 .4rem;}
.ar-crumb a{color:var(--ar-muted);display:inline-flex;align-items:center;gap:.2rem;transition:color .13s;}
.ar-crumb a:hover{color:var(--ar-brand);}
.ar-crumb-cur{color:var(--ar-muted);max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ar-header{ padding:1.75rem 0 0; border-bottom:1px solid var(--ar-line); }
.ar-header-inner{max-width:860px;}
.ar-eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:.7rem;}
.ar-badge-type{ font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase; color:var(--ar-accent);border-top:none;padding-top:0; }
.ar-badge-oa{ display:inline-flex;align-items:center;gap:.25rem; font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase; color:#1a7340;background:rgba(26,115,64,.07);border:1px solid #c3e6d0; border-radius:3px;padding:.14rem .48rem; }
.ar-title{ font-family:var(--ar-serif); font-size:1.65rem;font-weight:500;line-height:1.22; color:var(--ar-ink);margin:0 0 .9rem; }
@media(min-width:768px){.ar-title{font-size:1.9rem;}}
.ar-authors-line{ display:flex;flex-wrap:wrap;align-items:center; gap:.15rem .05rem;margin-bottom:.6rem; font-size:.9rem; }
.ar-achip{ font-family:var(--ar-sans);font-size:.9rem;font-weight:500; color:var(--ar-brand);background:none;border:none;padding:0; cursor:pointer;display:inline-flex;align-items:center;gap:.08rem; transition:color .13s; }
.ar-achip:hover{color:var(--ar-accent);text-decoration:underline;}
.ar-achip sup{color:var(--ar-accent);font-size:.65em;margin-left:.05rem;}
.ar-asep{color:#bbb;font-size:.85rem;margin:0 .04rem;}
.ar-corr-note{font-size:.78rem;color:var(--ar-muted);margin-top:.15rem;}
.ar-metarow{ display:flex;flex-wrap:wrap;align-items:center; gap:.35rem 1.25rem;font-size:.8rem;color:var(--ar-muted); padding:.55rem 0;border-top:1px solid var(--ar-line); margin-top:.4rem; }
.ar-metarow span{display:inline-flex;align-items:center;gap:.25rem;}
.ar-metarow a{color:var(--ar-brand);}
.ar-metarow a:hover{text-decoration:underline;}
.ar-metarow .ar-doi{font-weight:600;color:var(--ar-ink);}
.ar-metarow .ar-doi a{color:var(--ar-brand);}
.ar-toolbar-wrap{ position:sticky;top:var(--page-offset,0px);z-index:200; background:#fff; border-bottom:1px solid var(--ar-line); height:var(--ar-toolbar-h); display:flex;align-items:center; box-shadow:0 1px 4px rgba(0,0,0,.06); }

/* Mobile: smaller header = no ribbon + smaller brand */
@media (max-width: 575.98px) {
  :root { --page-offset: 107px; } /* brand(62) + nav(42) + border(3) */
}
.ar-toolbar{ display:flex;align-items:center;gap:.5rem; width:100%;max-width:var(--ar-max); margin:0 auto;padding:0 1.5rem; }
@media(min-width:1024px){.ar-toolbar{padding:0 2.5rem;}}
.ar-tbtn{ display:inline-flex;align-items:center;gap:.3rem; font-family:var(--ar-sans);font-size:.8rem;font-weight:600; padding:.38rem .85rem;border-radius:4px;border:1.5px solid; cursor:pointer;text-decoration:none;white-space:nowrap; transition:background .13s,color .13s,border-color .13s;background:none; line-height:1.3; }
.ar-tbtn-primary{ background:var(--ar-brand);border-color:var(--ar-brand);color:#fff!important; }
.ar-tbtn-primary:hover{background:#005060;border-color:#005060;text-decoration:none;}
.ar-tbtn-ghost{ border-color:var(--ar-line);color:var(--ar-mid)!important;background:#fff; }
.ar-tbtn-ghost:hover{border-color:var(--ar-brand);color:var(--ar-brand)!important;text-decoration:none;}
.ar-t-divider{width:1px;height:24px;background:var(--ar-line);margin:0 .1rem;flex-shrink:0;}
.ar-t-stats{ display:flex;align-items:center;gap:1.1rem; font-size:.8rem;color:var(--ar-muted);padding:0 .25rem; }
.ar-t-stats span{display:inline-flex;align-items:center;gap:.28rem;}
.ar-t-stats b{color:var(--ar-ink);font-weight:600;}
.ar-t-spacer{flex:1;}
.ar-tdrop{position:relative;display:inline-flex;}
.ar-tdrop-menu{ display:none;position:absolute;top:calc(100% + 4px);left:0;z-index:400; min-width:165px;background:#fff; border:1.5px solid var(--ar-line);border-radius:4px; box-shadow:0 6px 18px rgba(0,0,0,.11);padding:.35rem 0; }
.ar-tdrop.open .ar-tdrop-menu{display:block;}
.ar-tdrop-menu a,.ar-tdrop-menu button{ display:flex;align-items:center;gap:.4rem; width:100%;padding:.4rem .85rem; font-family:var(--ar-sans);font-size:.8rem; color:var(--ar-mid);background:none;border:none;text-align:left;cursor:pointer; text-decoration:none; }
.ar-tdrop-menu a:hover,.ar-tdrop-menu button:hover{background:var(--ar-wash);color:var(--ar-brand);}
.ar-body{padding:2rem 0 4rem;}
.ar-layout{ display:grid; grid-template-columns:1fr; grid-template-areas:"main" "sidebar"; gap:2rem; align-items:start; }
@media(min-width:1024px){ .ar-layout{ grid-template-columns:220px 1fr 280px; grid-template-areas:"toc main sidebar"; gap:0; align-items:start; } }
.ar-toc-col{grid-area:toc; overflow:visible; align-self:stretch;}
@media(max-width:1023px){.ar-toc-col{display:none;}}
.ar-toc-inner{ position:sticky; top:calc(var(--page-offset,0px) + var(--ar-toolbar-h) + 1.25rem); padding-right:1.75rem; max-height:calc(100vh - var(--page-offset,0px) - var(--ar-toolbar-h) - 2.5rem); overflow-y:auto; overflow-x:hidden; scrollbar-width:thin; scrollbar-color:var(--ar-line) transparent; }
.ar-toc-inner::-webkit-scrollbar{width:3px;}
.ar-toc-inner::-webkit-scrollbar-thumb{background:var(--ar-line);}
.ar-toc-hd{ font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase; color:var(--ar-muted);border-top:2px solid var(--ar-ink); padding-top:.3rem;margin-bottom:.65rem; }
.ar-toc-list{list-style:none;padding:0;margin:0;}
.ar-toc-list li{margin:0;}
.ar-toc-link{ display:block;font-size:.78rem;color:var(--ar-mid); padding:.28rem .5rem .28rem .4rem; border-left:2px solid transparent; border-radius:0 3px 3px 0; line-height:1.35;transition:all .13s; }
.ar-toc-link:hover{color:var(--ar-brand);background:rgba(0,59,68,.05);border-left-color:var(--ar-brand);}
.ar-toc-link.on{color:var(--ar-brand);font-weight:600;border-left-color:var(--ar-accent);background:rgba(204,0,0,.04);}
.ar-toc-sub{padding-left:1.1rem;font-size:.74rem;}
.ar-main{ grid-area:main;min-width:0; }
@media(min-width:1024px){ .ar-main{ padding:0 2.25rem; border-left:1px solid var(--ar-line); border-right:1px solid var(--ar-line); } }
.ar-abstract{ background:var(--ar-wash); border-left:3px solid var(--ar-accent); padding:1.15rem 1.35rem; margin-bottom:1.6rem; }
.ar-abstract-lbl{ font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase; color:var(--ar-muted);margin-bottom:.45rem; }
.ar-abstract-body{ font-family:var(--ar-serif);font-size:1.02rem;line-height:1.8;color:var(--ar-ink); }
.ar-kw-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem;margin-bottom:1.5rem;}
.ar-kw-lbl{font-size:.74rem;font-weight:600;color:var(--ar-muted);white-space:nowrap;}
.ar-kw{ font-size:.76rem;color:var(--ar-brand); border:1px solid rgba(0,59,68,.25);border-radius:3px; padding:.17rem .52rem;transition:background .13s,color .13s; }
.ar-kw:hover{background:var(--ar-brand);color:#fff!important;}
.ar-prose h2,.ar-prose .sec-hd{ font-family:var(--ar-serif);font-size:1.22rem;font-weight:600; color:var(--ar-ink);margin:2.25rem 0 .6rem; border-top:1px solid var(--ar-line);padding-top:1.5rem; }
.ar-prose h3{font-family:var(--ar-sans);font-size:.96rem;font-weight:700;color:var(--ar-ink);margin:1.5rem 0 .45rem;}
.ar-prose p{font-family:var(--ar-serif);font-size:1.02rem;line-height:1.84;color:var(--ar-ink);margin-bottom:.85rem;}
.ar-prose ul,.ar-prose ol{font-family:var(--ar-serif);font-size:1rem;line-height:1.75;color:var(--ar-ink);padding-left:1.4rem;margin-bottom:.9rem;}
.ar-prose li{margin-bottom:.3rem;}
.ar-prose figure{margin:1.5rem 0;text-align:center;}
.ar-prose figcaption{font-family:var(--ar-sans);font-size:.75rem;color:var(--ar-muted);margin-top:.35rem;}
.ar-prose img{max-width:100%;height:auto;border:1px solid var(--ar-line);}
.ar-prose table{width:100%;border-collapse:collapse;font-family:var(--ar-sans);font-size:.8rem;margin:1.25rem 0;}
.ar-prose th{background:var(--ar-wash);border-bottom:2px solid var(--ar-ink);padding:.42rem .7rem;font-weight:700;text-align:left;}
.ar-prose td{border-bottom:1px solid var(--ar-line);padding:.38rem .7rem;vertical-align:top;}
.ar-prose a{color:var(--ar-brand);}
.ar-prose a:hover{text-decoration:underline;}
.ar-hr{border:none;border-top:1px solid var(--ar-line);margin:1.5rem 0;}
.ar-noft{font-size:.875rem;color:var(--ar-muted);font-style:italic;padding:1.5rem 0;}
.ar-refs{margin-top:2.25rem;}
.ar-refs-hd{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ar-muted);border-top:2px solid var(--ar-ink);padding-top:.3rem;margin-bottom:.9rem;}
.ar-refs ol{padding-left:1.4rem;margin:0;}
.ar-refs li{font-family:var(--ar-sans);font-size:.8rem;line-height:1.55;color:var(--ar-mid);margin-bottom:.45rem;}
.ar-sidebar{grid-area:sidebar; overflow:visible;}
@media(min-width:1024px){.ar-sidebar{padding-left:2rem;}}
.ar-sb-inner{ 
  scrollbar-width:thin; 
  scrollbar-color:var(--ar-line) transparent;
}
@media(min-width:1024px){
  .ar-sb-inner{
    position:sticky;
    top:calc(var(--page-offset,0px) + var(--ar-toolbar-h) + 1.25rem);
  }
  .ar-sidebar{
    align-self:stretch;
  }
}


/* Mobile pe sticky band karo */
@media(max-width:1023px){
  .ar-sb-inner{
    position:static !important;
    top:auto !important;
    max-height:none !important;
    overflow:visible !important;
  }
}
.ar-sb-inner::-webkit-scrollbar{width:3px;}
.ar-sb-inner::-webkit-scrollbar-thumb{background:var(--ar-line);}
.ar-sb{margin-bottom:1.6rem;padding-bottom:1.6rem;border-bottom:1px solid var(--ar-line);}
.ar-sb:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.ar-sb-hd{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ar-muted);border-top:2px solid var(--ar-ink);padding-top:.3rem;margin-bottom:.75rem;}
.ar-sb-pdf{width:100%;justify-content:center;}
.ar-info-dl{display:grid;grid-template-columns:auto 1fr;gap:.2rem .55rem;font-size:.79rem;}
.ar-info-dl dt{font-weight:600;color:var(--ar-muted);white-space:nowrap;}
.ar-info-dl dd{margin:0;color:var(--ar-ink);word-break:break-word;}
.ar-info-dl dd a{color:var(--ar-brand);}
.ar-info-dl dd a:hover{text-decoration:underline;}
.ar-stats-row{display:flex;gap:1.25rem;margin-top:.85rem;}
.ar-stat{display:flex;flex-direction:column;align-items:center;gap:.05rem;}
.ar-stat-n{font-family:var(--ar-serif);font-size:1.3rem;font-weight:500;color:var(--ar-ink);line-height:1;}
.ar-stat-l{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ar-muted);}
.ar-chart-box{margin-top:.75rem;height:125px;position:relative;}
.ar-rel{padding:.48rem 0;border-bottom:1px solid var(--ar-line);}
.ar-rel:last-child{border-bottom:none;}
.ar-rel a{font-family:var(--ar-serif);font-size:.85rem;line-height:1.32;color:var(--ar-ink);display:block;margin-bottom:.18rem;}
.ar-rel a:hover{color:var(--ar-brand);}
.ar-rel-date{font-size:.71rem;color:var(--ar-muted);}
.ar-oa{background:rgba(26,115,64,.05);border:1px solid #c3e6d0;border-radius:3px;padding:.75rem;font-size:.77rem;line-height:1.55;}
.ar-oa-title{font-weight:700;color:#1a7340;display:flex;align-items:center;gap:.35rem;margin-bottom:.28rem;}
.ar-oa-body{color:var(--ar-mid);}
.ar-oa-body a{color:#1a7340;}
.ar-au-overlay{ display:none; position:fixed;inset:0;z-index:9999; background:rgba(0,0,0,.38); -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px); align-items:flex-start;justify-content:center; padding-top:80px; }
.ar-au-overlay.ar-show{display:flex;}
.ar-au-modal{ background:#fff;border-radius:8px; box-shadow:0 12px 40px rgba(0,0,0,.18); padding:1.5rem;width:100%;max-width:420px; position:relative;margin:0 1rem; animation:ar-modal-in .18s var(--ar-ease,ease); }
@keyframes ar-modal-in{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}
.ar-au-modal-close{ position:absolute;top:.9rem;right:.9rem; background:none;border:none;cursor:pointer; color:var(--ar-muted);font-size:1.1rem;padding:.2rem .35rem; border-radius:3px;transition:background .13s,color .13s; }
.ar-au-modal-close:hover{background:var(--ar-wash);color:var(--ar-ink);}
.ar-au-modal-avatar{ width:42px;height:42px;border-radius:50%; background:var(--ar-brand);color:#fff; font-size:.85rem;font-weight:700; display:inline-flex;align-items:center;justify-content:center; margin-bottom:.65rem; }
.ar-au-modal-name{font-size:1rem;font-weight:700;color:var(--ar-ink);margin-bottom:.5rem;}
.ar-au-modal-row{display:flex;align-items:flex-start;gap:.45rem;font-size:.82rem;color:var(--ar-mid);margin-bottom:.3rem;}
.ar-au-modal-row i{color:var(--ar-brand);flex-shrink:0;margin-top:.1rem;}
.ar-au-modal-row a{color:var(--ar-brand);}
.ar-au-modal-row a:hover{text-decoration:underline;}
.ar-au-modal-corr{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ar-accent);}
.ar-au-modal-links{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.85rem;}
.ar-au-modal-link{ display:inline-flex;align-items:center;gap:.3rem; font-family:var(--ar-sans);font-size:.77rem;font-weight:600; color:var(--ar-mid);border:1.5px solid var(--ar-line); border-radius:4px;padding:.3rem .65rem; text-decoration:none;transition:border-color .13s,color .13s; }
.ar-au-modal-link:hover{border-color:var(--ar-brand);color:var(--ar-brand);}
.ar-mob-jump{display:none !important;}
.ar-mob-jump select{font-family:var(--ar-sans);font-size:.81rem;border:1.5px solid var(--ar-line);border-radius:4px;padding:.38rem .7rem;color:var(--ar-ink);background:#fff;outline:none;width:100%;max-width:340px;}
.ar-mob-jump select:focus{border-color:var(--ar-brand);}
.ar-sb-au{display:flex;align-items:flex-start;gap:.5rem;padding:.45rem 0;border-bottom:1px solid var(--ar-line);cursor:pointer;transition:background .13s;border-radius:3px;}
.ar-sb-au:last-child{border-bottom:none;}
.ar-sb-au:hover{background:var(--ar-wash);}
.ar-sb-av{width:30px;height:30px;border-radius:50%;flex-shrink:0;background:var(--ar-brand);color:#fff;font-size:.6rem;font-weight:700;display:flex;align-items:center;justify-content:center;}
.ar-sb-au-name{font-size:.8rem;font-weight:600;color:var(--ar-ink);line-height:1.2;}
.ar-sb-au-aff{font-size:.72rem;color:var(--ar-muted);line-height:1.3;}
.ar-sb-au-corr{font-size:.62rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ar-accent);}
.ar-tbtn-moreformats{font-size:.78rem;padding:.38rem .7rem;}
.ar-tdrop-menu-right{left:auto!important;right:0;}
.ar-hide-xs{display:inline-flex;}
.ar-tb-label{display:inline;}
@media(max-width:640px){ .ar-hide-xs{display:none!important;} .ar-tb-label{display:none;} .ar-tbtn-moreformats{display:none!important;} }

/* Contents — sirf mobile pe dikhao */
.ar-tb-toc-drop, .ar-tb-toc-sep{ display:none !important; }
@media(max-width:1023px){
  .ar-tb-toc-drop{ display:inline-flex !important; }
  .ar-tb-toc-sep{ display:block !important; }
}
.ar-sb-collapsible{padding:0;margin-bottom:0;border-bottom:1px solid var(--ar-line);}
.ar-sb-collapsible:last-child{border-bottom:none;}
.ar-sb-hd-btn{ display:flex;align-items:center;justify-content:space-between; font-size:.75rem;font-weight:700;letter-spacing:.04em; color:var(--ar-ink);padding:.65rem 0; cursor:pointer;background:none;border:none;width:100%;text-align:left; }
.ar-sb-hd-btn:hover{color:var(--ar-brand);}
.ar-sb-chevron{font-size:.65rem;color:#aaa;transition:transform .2s;margin-left:.35rem;flex-shrink:0;}
.ar-sb-hd-btn.collapsed .ar-sb-chevron{transform:rotate(-180deg);}
.ar-sb-collapsible-body{overflow:hidden;max-height:1200px;opacity:1;transition:max-height .25s ease,opacity .2s;}
.ar-sb-collapsible-body.ar-collapsed{max-height:0;opacity:0;}
.ar-fig-thumbs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding-bottom:.75rem;}
.ar-fig-thumb{aspect-ratio:1/1;border:1px solid var(--ar-line);border-radius:4px;overflow:hidden;cursor:pointer;background:var(--ar-wash);transition:border-color .13s;}
.ar-fig-thumb:hover{border-color:var(--ar-brand);}
.ar-fig-thumb img{width:100%;height:100%;object-fit:cover;display:block;border:none;}
.ar-orcid-icon{width:16px;height:16px;border-radius:50%;background:#a6ce39;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:.55rem;font-weight:900;flex-shrink:0;}
.ar-ref-popup{ display:none;position:fixed;z-index:9990; background:#fff;border:1px solid var(--ar-line); border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.15); padding:1rem 1.15rem; max-width:340px;width:calc(100vw - 2rem); font-size:.81rem;line-height:1.55;color:var(--ar-ink); }
.ar-ref-popup.open{display:block;}
.ar-ref-popup-close{position:absolute;top:.4rem;right:.6rem;background:none;border:none;font-size:1.1rem;cursor:pointer;color:var(--ar-muted);}
.ar-ref-popup-title{font-weight:700;font-size:.72rem;color:var(--ar-muted);margin-bottom:.4rem;}
.ar-ref-popup-text{margin-bottom:.6rem;color:var(--ar-mid);}
.ar-ref-popup-links{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem;}
.ar-ref-popup-links a{color:var(--ar-brand);font-size:.77rem;text-decoration:none;display:inline-flex;align-items:center;gap:.25rem;}
.ar-ref-popup-links a:hover{text-decoration:underline;}
.ar-ref-popup-nav{display:flex;align-items:center;gap:.5rem;border-top:1px solid var(--ar-line);padding-top:.5rem;margin-top:.35rem;}
.ar-ref-popup-nav button{width:26px;height:26px;border-radius:50%;border:1px solid var(--ar-line);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--ar-mid);}
.ar-ref-popup-nav button:hover{background:var(--ar-wash);}
.ar-ref-popup-counter{font-size:.74rem;color:var(--ar-muted);flex:1;text-align:center;}
html, body { overflow-x: clip !important; }
.ar, .ar-body, .ar-w, .ar-layout { overflow: visible !important; contain: none !important; }
.ar-toc-col, .ar-sidebar { overflow: visible !important; }

/* ═══════════════════════════════════════════════════════════════
   SD-STYLE REFERENCE SIDE PANEL  ← NEW ADDITION
   ═══════════════════════════════════════════════════════════════ */
.sdref-backdrop {
  display: none; position: fixed; inset: 0; z-index: 10050;
  background: rgba(0,0,0,.22);
  backdrop-filter: blur(1px); -webkit-backdrop-filter: blur(1px);
}
.sdref-backdrop.open { display: block; }

.sdref-panel {
  position: fixed; top: 0; right: -480px;
  width: 420px; max-width: 92vw; height: 100vh;
  background: #fff; border-left: 1px solid #e0e0e0;
  box-shadow: -6px 0 32px rgba(0,0,0,.13);
  z-index: 10060; display: flex; flex-direction: column;
  transition: right .28s cubic-bezier(.4,0,.2,1);
  font-family: var(--ar-sans, 'Source Sans 3', 'Helvetica Neue', Arial, sans-serif);
}
.sdref-panel.open { right: 0; }

.sdref-panel__head {
  display: flex; align-items: center; justify-content: space-between;
  padding: .9rem 1.15rem .8rem; border-bottom: 1px solid #ebebeb;
  flex-shrink: 0; background: #fafbfc;
}
.sdref-panel__label {
  font-size: .72rem; font-weight: 700; letter-spacing: .09em;
  text-transform: uppercase; color: #888;
}
.sdref-panel__close {
  width: 28px; height: 28px; border: none; background: none; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  border-radius: 4px; color: #777; font-size: 1rem;
  transition: background .12s, color .12s; padding: 0;
}
.sdref-panel__close::after { content: none !important; }
.sdref-panel__close:hover { background: #f0f0f0; color: #222; }

.sdref-panel__body {
  flex: 1; overflow-y: auto; padding: 1.3rem 1.4rem 2.5rem;
  scrollbar-width: thin; scrollbar-color: #e0e0e0 transparent;
}
.sdref-panel__body::-webkit-scrollbar { width: 4px; }
.sdref-panel__body::-webkit-scrollbar-thumb { background: #e0e0e0; border-radius: 4px; }


/* =============================================================================
   PAGE-SPECIFIC CSS — jp-* ia-* iv-* jh-* sdref-* — PHP app.css EXACT
   ============================================================================= */

:root {
  --jp-brand  :#003b44;
  --jp-accent :#c00;
  --jp-ink    :#111;
  --jp-mid    :#444;
  --jp-muted  :#767676;
  --jp-line   :#e0e0e0;
  --jp-bg     :#fff;
  --jp-wash   :#f7f7f7;
  --jp-serif  :'EB Garamond',Georgia,serif;
  --jp-sans   :'Source Sans 3','Helvetica Neue',Arial,sans-serif;
  --jp-ease   :cubic-bezier(.4,0,.2,1);
  --jp-max    :1280px;

  /* Article Reader (ar-) vars */
  --ar-brand :#003b44;
  --ar-accent:#c00;
  --ar-ink   :#1a1a1a;
  --ar-mid   :#444;
  --ar-muted :#767676;
  --ar-line  :#e4e4e4;
  --ar-bg    :#fff;
  --ar-wash  :#f8f9fa;
  --ar-serif :'EB Garamond',Georgia,'Times New Roman',serif;
  --ar-sans  :'Source Sans 3','Helvetica Neue',Arial,sans-serif;
  --ar-max   :1320px;
  --ar-toolbar-h:52px;
}
html{
  height:100%;
}
body{
  background:#fff;
  color:#222;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial;
  width:100%;
  overflow-x:hidden;
  min-height:100%;
  display:flex;
  flex-direction:column;
}
#main-content{
  flex:1 0 auto;
}

@media (min-width: 1200px){
  .container, .container-lg, .container-md, .container-sm, .container-xl{ max-width:1240px !important; }
}

.shadow-soft{ box-shadow:0 8px 28px rgba(2,6,23,.06); }
.small-muted{ color:var(--muted); font-size:.9rem; }

/* -------------------------------------------------- */
/* Auth                                               */
/* -------------------------------------------------- */
.auth-hero{
  background:linear-gradient(135deg,#6c5ce7 0%, #00b4d8 100%);
  color:#fff; border-radius:1rem; height:100%;
}
.brand-small { color:#0b5ed7; font-weight:700; font-size:1.05rem; }
.form-hint{ color:var(--muted); font-size:.9rem; }
.pw-meter{ height:6px; background:#eef2f7; border-radius:6px; overflow:hidden; }
.pw-bar{ height:6px; width:0; background:var(--accent); transition:width .25s; }
.social-btn{
  display:flex; gap:8px; align-items:center; justify-content:center;
  border-radius:8px; padding:.6rem .8rem; font-weight:600; width:100%;
}
.social-btn.google{ background:#fff; color:#111; border:1px solid #e6e6e6; }
.social-btn.orcid{ background:#2fb6be; color:#fff; border:0; }

@media (min-width:768px){
  .match-height{ display:flex; }
  .match-height > *{ flex:1 1 0; }
}

/* -------------------------------------------------- */
/* Page layout                                        */
/* -------------------------------------------------- */
.container.page-wrap{ position:relative; }
.page-wrap{ padding-top:20px; padding-bottom:30px; }

.bb{
  background:#fff; border:1px solid rgba(0,0,0,.06);
  border-radius:8px; padding:8px 12px; margin-bottom:16px;
}
.breadcrumb-item i { font-size: 0.95rem; color: #003b44; }
.breadcrumb .breadcrumb-item a { font-weight: 600; }
.breadcrumb { font-size: 0.92rem; }

.container, .page-wrap, .grid{ overflow:visible; }
@media (max-width:992px){ .grid{ grid-template-columns:1fr; } }

.toc-col{ position:relative; }
#tocSpacer{ height:0; transition:height .15s ease; }

.toc{
  background:#fff; border:1px solid rgba(0,0,0,.06);
  border-radius:8px; padding:14px 12px;
  position:sticky; top:var(--toc-top);
  max-height:calc(100vh - (var(--toc-top) + 20px));
  overflow:auto; scrollbar-width:thin;
}
.toc.is-fixed{
  position:fixed !important; top:var(--toc-top) !important;
  left:0; width:280px; z-index:1030;
}
.toc.stuck-bottom{
  position:absolute !important; top:auto !important; bottom:0 !important;
  left:0 !important; width:280px;
}
.toc h6{
  font-weight:700; color:#0b2e59; margin:2px 0 8px;
  font-size:.95rem; position:sticky; top:0; background:#fff;
  padding-top:4px; padding-bottom:6px;
}
.toc ul{ list-style:none; margin:0; padding:0; }
.toc li{ margin:3px 0; }
.toc a{
  display:block; text-decoration:none; color:#0b2e59;
  padding:6px 8px; border-radius:6px; line-height:1.3;
  transition:background .12s ease, color .12s ease, padding-left .12s ease;
  font-weight:600; font-size:.95rem;
}
.toc a.small{ font-weight:500; font-size:.9rem; }
.toc a.xsmall{ font-weight:500; font-size:.86rem; }
.toc a:hover{ background:rgba(13,110,253,.08); color:#0b2e59; padding-left:12px; }
.toc a.active{ background:rgba(13,110,253,.15); color:#0b2e59; }

.card-article{
  background:#fff; border:1px solid rgba(0,0,0,.06);
  border-radius:8px; padding:22px; line-height:1.75;
}
.card-article h1,.card-article h2,.card-article h3,.card-article h4{ color:#0b3d91; margin-top:.4rem; }
.meta{ color:#6c757d; font-size:.92rem; }

.subfoot{ color:#6c757d; font-size:.93rem; }
.subfoot a{ text-decoration:none; }

@media (max-width:992px){
  .toc, .toc.is-fixed{
    position:static !important; top:auto !important; left:auto !important; width:auto !important;
    max-height:none !important; overflow:visible !important;
  }
  #tocSpacer{ height:0 !important; }
}

/* -------------------------------------------------- */
/* Editorial board                                    */
/* -------------------------------------------------- */
.eb-toolbar{ display:flex; flex-wrap:wrap; gap:.5rem; align-items:center; margin-bottom:1rem; }
.eb-search{ max-width:420px; }
.eb-role-filter{ max-width:260px; }
.eb-section{ margin-bottom:2rem; }
.eb-heading{
  display:flex; align-items:center; justify-content:space-between;
  gap:1rem; margin:0 0 .75rem 0; padding:.25rem 0; border-bottom:1px solid #e9ecef;
}
.eb-heading h3{ margin:0; font-size:1.25rem; font-weight:800; }
.eb-count{ color:#6c757d; font-size:.9rem; }
.eb-grid{ display:grid; grid-template-columns:repeat(1,minmax(0,1fr)); gap:1rem; }
@media (min-width:576px){ .eb-grid{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:992px){ .eb-grid{ grid-template-columns:repeat(3,1fr); } }
.eb-card{
  border:1px solid #e9ecef; border-radius:.75rem; background:#fff;
  transition:box-shadow .2s ease, transform .2s ease;
}
.eb-card:hover{ box-shadow:0 .5rem 1rem rgba(0,0,0,.08); transform:translateY(-2px); }
.eb-card .eb-body{ padding:1rem 1rem .75rem; }

.eb-avatar{
  width:48px; height:48px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#eef2ff,#e3f2fd); color:#2b2d42; font-weight:700;
  border:1px solid #e5e7eb;
}
.eb-title{ margin:0; font-size:1.05rem; font-weight:800; }
.eb-sub{ color:#6c757d; font-size:.9rem; }
.eb-bio{ color:#495057; font-size:.95rem; margin:.5rem 0 0; }
.eb-role-pill{
  display:inline-block; font-size:.75rem; line-height:1; font-weight:700;
  padding:.35rem .5rem; border-radius:999px; border:1px solid #e9ecef; background:#f8f9fa; color:#495057;
  margin-bottom:.35rem;
}
.eb-actions .btn{ padding:.25rem .5rem; font-size:.8rem; }
.eb-empty{ padding:1rem; border:1px dashed #e9ecef; border-radius:.75rem; color:#6c757d; background:#fcfcfd; }

/* -------------------------------------------------- */
/* Home                                               */
/* -------------------------------------------------- */
body.home{ background:#f7f8fb; }
.section-pad{ padding:1.25rem 0; }
.hero-spot-full{ width:100vw; position:relative; left:50%; right:50%; margin-left:-50vw; margin-right:-50vw; overflow:hidden; background:#0d6efd; box-shadow:0 10px 40px rgba(0,0,0,.12); }
.hero-spot-full img{ width:100%; height:clamp(280px, 32vw, 520px); object-fit:cover; display:block; }
.hero-overlay{ position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.35)); }
.hero-title{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); color:#fff; text-align:center; padding:0 1rem; }
.hero-title h1{ font-weight:800; letter-spacing:.2px; text-shadow:0 4px 18px rgba(0,0,0,.25); }
.card{ box-shadow:0 2px 6px rgba(0,0,0,0.3); border-color: #e8e8e8;border-bottom: 5px solid #003b44;}
.card h5, .card h4{ font-weight:800; }
.article-card{ overflow:hidden; box-shadow:0 2px 14px rgba(15,23,42,.07); background:#fff; }
.article-card .thumb{ width:100%; height:180px; object-fit:cover; display:block; }
.article-card .meta{ color:#000; font-size:.9rem; }
.article-card .title{ font-weight:800; font-size:1.02rem; }
.article-card .actions .btn{ padding:.3rem .6rem; }
.list-linked li+li{ border-top:1px dashed #e5e7eb; }
.list-linked a{ text-decoration:none; }
.eic-avatar{
  width:56px; height:56px; border-radius:50%;
  background:linear-gradient(135deg,#eef2ff,#e3f2fd);
  display:inline-flex; align-items:center; justify-content:center;
  font-weight:800; color:#334155; border:1px solid #e5e7eb;
}

/* -------------------------------------------------- */
/* Issue view                                         */
/* -------------------------------------------------- */
.article-title{ color:#174f86; font-weight:700; font-size:1.25rem; margin-bottom:.25rem; }
.open-access-badge{ color:#d63384; font-weight:700; font-size:.85rem; display:inline-flex; align-items:center; gap:.35rem; }
.meta-line{ color:#6c757d; margin-bottom:4px; }
.authors-line{ margin-bottom:6px; color:#2b2b2b; }
.article-actions a{ margin-right:12px; text-decoration:none; }
.lock-icon{ font-size:.95rem; }
.card-sep{ border-bottom:1px solid #e9ecef; padding-bottom:18px; margin-bottom:18px; }
.article-actions .btn-link{ text-decoration:none; color:var(--accent); }

/* ============================================================
   WORKFLOW PAGE
   ============================================================ */

:root {
  --wf-bg:#f4f5f7; --wf-surface:#ffffff; --wf-border:#e2e5ec;
  --wf-accent:#068a9e; --wf-accent2:#008080; --wf-text:#1e2130;
  --wf-muted:#6b7280; --wf-done:#059669; --wf-radius:14px;
  --wf-shadow:0 2px 16px rgba(79,70,229,.07), 0 1px 4px rgba(0,0,0,.05);
  --wf-shadow-md:0 4px 24px rgba(79,70,229,.11), 0 2px 8px rgba(0,0,0,.07);
}
.wf-hero {
  background: linear-gradient(135deg, #003b44 0%, #0d6f7e 60%, #6fcddb 100%);
  border-radius: var(--wf-radius); padding: 2rem 2rem 1.6rem;
  position: relative; overflow: hidden; box-shadow: var(--wf-shadow-md);
}
.wf-hero::before {
  content: ''; position: absolute; top: -40px; right: -40px;
  width: 220px; height: 220px;
  background: radial-gradient(circle, rgba(124,58,237,.35) 0%, transparent 70%);
  pointer-events: none;
}
.wf-hero::after {
  content: ''; position: absolute; bottom: -20px; left: 30%;
  width: 160px; height: 160px;
  background: radial-gradient(circle, rgba(79,70,229,.2) 0%, transparent 70%);
  pointer-events: none;
}
.wf-hero-eyebrow { font-family: 'DM Sans', sans-serif; font-size: .72rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.55); margin-bottom: .4rem; }
.wf-hero h1 { font-family: 'Playfair Display', serif; font-size: clamp(1.15rem, 2.5vw, 1.6rem); font-weight: 600; color: #fff; line-height: 1.35; margin-bottom: .6rem; }
.wf-status-pill { display: inline-flex; align-items: center; gap: .35rem; padding: .28rem .75rem; border-radius: 999px; font-size: .72rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; background: rgba(255,255,255,.12); color: rgba(255,255,255,.9); border: 1px solid rgba(255,255,255,.18); backdrop-filter: blur(8px); }
.wf-hero-meta { font-size: .78rem; color: rgba(255,255,255,.5); margin-top: .6rem; }
.wf-hero-actions .btn { font-family: 'DM Sans', sans-serif; font-size: .8rem; font-weight: 500; border-radius: 10px; padding: .45rem 1rem; border: 1.5px solid rgba(255,255,255,.2); color: rgba(255,255,255,.85); background: rgba(255,255,255,.09); backdrop-filter: blur(6px); transition: all .18s; width: 120px; }
.wf-hero-actions .btn:hover { background: rgba(255,255,255,.18); color: #fff; border-color: rgba(255,255,255,.4); }
.wf-hero-actions .btn-publish { background: linear-gradient(135deg, #059669, #10b981); color: #fff; border-color: transparent; }
.wf-hero-actions .btn-publish:hover { filter: brightness(1.1); }
.wf-stepper { display: flex; gap: 0; background: var(--wf-surface); border-radius: var(--wf-radius); box-shadow: var(--wf-shadow); border: 1px solid var(--wf-border); overflow: hidden; margin-bottom: 1.5rem; margin-top: 10px; }
.wf-step { flex: 1; display: flex; align-items: center; gap: .6rem; padding: .85rem 1.1rem; font-family: 'DM Sans', sans-serif; font-size: .8rem; font-weight: 500; color: var(--wf-muted); border-right: 1px solid var(--wf-border); position: relative; transition: background .18s; }
.wf-step:last-child { border-right: none; }
.wf-step-icon { width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: .85rem; background: #f0f1f5; color: var(--wf-muted); flex-shrink: 0; transition: all .18s; }
.wf-step.is-done .wf-step-icon { background: #d1fae5; color: var(--wf-done); }
.wf-step.is-done .wf-step-label { color: var(--wf-done); font-weight: 500; }
.wf-step.is-active { background: #f5f3ff; }
.wf-step.is-active .wf-step-icon { background: var(--wf-accent); color: #fff; box-shadow: 0 0 0 4px rgba(79,70,229,.15); }
.wf-step.is-active .wf-step-label { color: var(--wf-accent); font-weight: 600; }
.wf-step-num { font-size: .65rem; color: var(--wf-muted); margin-top: .05rem; }
.wf-step.is-done .wf-step-check { display: inline-block; }
.wf-step-check { display: none; margin-left: auto; font-size: .9rem; color: var(--wf-done); }
.wf-tabnav { display: flex; gap: .35rem; padding: .5rem; background: var(--wf-surface); border-radius: 12px; border: 1px solid var(--wf-border); box-shadow: var(--wf-shadow); }
.wf-tabnav .nav-link { font-family: 'DM Sans', sans-serif; font-size: .82rem; font-weight: 500; color: var(--wf-muted); border-radius: 9px; padding: .55rem 1.1rem; border: none; background: transparent; display: flex; align-items: center; gap: .4rem; transition: all .15s; }
.wf-tabnav .nav-link i { font-size: .9rem; }
.wf-tabnav .nav-link:hover { background: #f3f4f8; color: var(--wf-text); }
.wf-tabnav .nav-link.active { background: var(--wf-accent); color: #fff; box-shadow: 0 2px 8px rgba(79,70,229,.3); }
.wf-card { background: var(--wf-surface); border-radius: var(--wf-radius); border: 1px solid var(--wf-border); box-shadow: var(--wf-shadow); margin-bottom: 1.4rem; overflow: hidden; transition: box-shadow .18s; }
.wf-card:hover { box-shadow: var(--wf-shadow-md); }
.wf-card-header { padding: 1rem 1.25rem .75rem; border-bottom: 1px solid var(--wf-border); display: flex; align-items: center; justify-content: space-between; background: #fafbfd; }
.wf-card-header h5 { font-family: 'DM Sans', sans-serif; font-size: .82rem; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--wf-muted); margin: 0; display: flex; align-items: center; gap: .5rem; }
.wf-card-header h5 i { font-size: .95rem; color: var(--wf-accent); }
.wf-card-body { padding: 1.25rem; }
.wf-card-body.small { padding: 1rem 1.25rem; font-size: .84rem; }
.wf-author-chip { border-bottom: 1px solid var(--wf-border); padding: .7rem 0; }
.wf-author-chip:last-child { border-bottom: none; padding-bottom: 0; }
.wf-author-chip .name { font-weight: 600; font-size: .88rem; }
.wf-author-chip .detail { font-size: .78rem; color: var(--wf-muted); }
.wf-author-chip .detail i { color: var(--wf-accent); opacity: .7; }
.wf-meta dt { font-size: .78rem; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; color: var(--wf-muted); padding: .45rem 0; }
.wf-meta dd { font-size: .84rem; padding: .45rem 0; border-bottom: 1px solid var(--wf-border); color: var(--wf-text); }
.wf-meta dd:last-child { border-bottom: none; }
.wf-btn { border-radius: 9px; font-size: .82rem; font-weight: 500; padding: .5rem 1.1rem; transition: all .15s; border: 1.5px solid; }
.wf-btn-primary { background: var(--wf-accent); color: #fff; border-color: var(--wf-accent); }
.wf-btn-primary:hover { background: #15c2dd; border-color: #3730a3; color: #fff; }
.wf-btn-outline { background: transparent; color: var(--wf-accent); border-color: var(--wf-accent); }
.wf-btn-outline:hover { background: #ede9fe; }
.wf-btn-danger { background: #dc2626; color: #fff; border-color: #dc2626; }
.wf-btn-danger:hover { background: #b91c1c; }
.wf-btn-success { background: var(--wf-done); color: #fff; border-color: var(--wf-done); }
.wf-btn-sm { padding: .32rem .75rem; font-size: .78rem; border-radius: 7px; }
.wf-reviewer-row { border: 1px solid var(--wf-border); border-radius: 10px; padding: .9rem 1rem; margin-bottom: .65rem; background: #fafbfd; display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; transition: border-color .15s; }
.wf-reviewer-row:hover { border-color: #c4b5fd; }
.wf-reviewer-badge { font-size: .7rem; padding: .2rem .6rem; border-radius: 999px; font-weight: 600; }
.wf-alert { border-radius: 10px; padding: .8rem 1rem; font-size: .84rem; border: 1px solid; margin-bottom: 1rem; display: flex; align-items: flex-start; gap: .6rem; }
.wf-alert i { font-size: 1rem; flex-shrink: 0; margin-top: .05rem; }
.wf-alert-success { background: #f0fdf4; border-color: #bbf7d0; color: #166534; }
.wf-alert-danger  { background: #fef2f2; border-color: #fecaca; color: #991b1b; }
.wf-alert-warning { background: #fffbeb; border-color: #fde68a; color: #92400e; }
.wf-submitter { display: flex; align-items: center; gap: .9rem; }
.wf-submitter-avatar { width: 42px; height: 42px; border-radius: 50%; background: linear-gradient(135deg, var(--wf-accent), var(--wf-accent2)); display: flex; align-items: center; justify-content: center; color: #fff; font-size: 1.1rem; flex-shrink: 0; }
.wf-submitter-name { font-weight: 600; font-size: .9rem; }
.wf-submitter-detail { font-size: .78rem; color: var(--wf-muted); }
.wf-flash-bar { border-radius: 10px; font-size: .84rem; margin-bottom: 1.1rem; }
.wf-timeline-item { display: flex; gap: .8rem; padding: .65rem 0; border-bottom: 1px solid var(--wf-border); }
.wf-timeline-item:last-child { border-bottom: none; }
.wf-timeline-dot { width: 28px; height: 28px; border-radius: 50%; background: #f0f1f5; display: flex; align-items: center; justify-content: center; font-size: .8rem; flex-shrink: 0; margin-top: .15rem; }
.wf-file-item { display: flex; align-items: center; gap: .6rem; padding: .55rem .75rem; border: 1px solid var(--wf-border); border-radius: 8px; margin-bottom: .45rem; background: #fafbfd; font-size: .82rem; }
.wf-file-item i.file-icon { color: var(--wf-accent); font-size: 1rem; }
.wf-file-item a { color: var(--wf-text); text-decoration: none; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wf-file-item a:hover { color: var(--wf-accent); }
.wf-sticky { position: sticky; top: 1rem; }
.wf-round-tabs { border-bottom: 2px solid var(--wf-border); margin-bottom: 1.2rem; display: flex; gap: .15rem; }
.wf-round-tabs .nav-link { font-size: .8rem; color: var(--wf-muted); border-bottom: 2.5px solid transparent; border-radius: 0; padding: .5rem .9rem; margin-bottom: -2px; }
.wf-round-tabs .nav-link.active { color: var(--wf-accent); border-bottom-color: var(--wf-accent); font-weight: 600; background: transparent; }
.wf-pipeline { display: flex; gap: 0; margin-bottom: 0; }
.wf-log-fab { position: fixed; top: 50%; right: 0; transform: translateY(-50%); z-index: 1050; writing-mode: vertical-rl; padding: 14px 7px; border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; border-radius: 10px; background: linear-gradient(180deg, var(--wf-accent), var(--wf-accent2)); color: #fff; font-size: .78rem; font-weight: 600; letter-spacing: .04em; border: none; box-shadow: -3px 0 16px rgba(79,70,229,.25); }
#workflowOffcanvas .offcanvas-header { background: linear-gradient(135deg, var(--wf-accent), var(--wf-accent2)); }
.tab-content > .tab-pane.show { padding-top: 0; }
#tabProduction { padding-top: 0 !important; }
#tabProduction > .row { margin-top: 0; }
.tab-content > .tab-pane { min-height: 0; }
@media (max-width: 576px) {
  .wf-hero { padding: 1.4rem 1.2rem 1.2rem; }
  .wf-hero h1 { font-size: 1.05rem; }
  .wf-stepper { flex-direction: column; }
  .wf-step { border-right: none; border-bottom: 1px solid var(--wf-border); }
  .wf-step:last-child { border-bottom: none; }
  .wf-tabnav { flex-wrap: wrap; }
}

/* -------------------------------------------------- */
/* Dashboard                                          */
/* -------------------------------------------------- */
body.admin{ background: linear-gradient(180deg,#f6f8fb,#ffffff); }
.sidebar{ border-right:1px solid rgba(0,0,0,0.05); background:#fff; padding-top:1rem; box-shadow: 0 6px 18px rgba(22,28,37,0.06); }
.sidebar .nav-link{ color:#495057; padding:.5rem 1rem; border-radius:6px; }
.sidebar .nav-link.active, .sidebar .nav-link:hover{ background:linear-gradient(90deg,rgba(11,94,215,0.06),rgba(23,79,134,0.03)); color:#0b5ed7; font-weight:600; }
.sidebar .sidebar-heading{ font-size:.75rem; text-transform:uppercase; color:#6c757d; letter-spacing:.06em; }
.topbar{ background:transparent; padding:.65rem 1rem; display:flex; align-items:center; gap:1rem; }
.topbar .brand{ font-weight:700; color:#174f86; font-size:1.15rem; letter-spacing:.4px; }
.topbar .search{ min-width:260px; max-width:520px; width:40vw; }
.topbar .quick-btn{ margin-left:.5rem; }
.content-card{ background:#fff; border-radius:12px; box-shadow:0 6px 18px rgba(22,28,37,0.06); padding:1.25rem; margin-bottom:1.25rem; }
.breadcrumbs{ font-size:.9rem; color:#6c757d; }
.avatar{ width:36px; height:36px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#e9eefb,#dcefff); color:#174f86; font-weight:700; font-size:.9rem; }
.alert-floating{ position:sticky; top:1rem; z-index:50; }
@media (max-width:767px){
  .sidebar{ position:fixed; z-index:1030; left:-280px; width:260px; transition:left .25s ease-in-out; height:100vh; overflow:auto; }
  .sidebar.show{ left:0; background:#fff; }
  main{ padding-top:0px; }
}
.eb-modal{ max-height:90vh; display:flex; flex-direction:column; overflow:hidden; }
.eb-scroll{ overflow-y:auto; padding:1rem; max-height:calc(90vh - 112px); }
.eb-sticky{ position:sticky; z-index:2; background:#fff; }
.eb-sticky:first-of-type{ top:0; }
.eb-sticky:last-of-type{ bottom:0; }
.modal{ overflow-y:auto !important; }
.main-content .card:first-child{ margin-top:0 !important; }
.list-group-item{ border-radius:.5rem; }

/* Dashboard editor */
.list-group-item.submission-card{ position:relative; }
.submission-title{ font-weight:600; line-height:1.3; }
.submission-meta small{ color:#6c757d; }
.badge-status{ font-weight:500; }
.submission-actions{ display:flex; gap:.5rem; flex-wrap:nowrap; position:absolute; right:1rem; bottom:1rem; }
@media (max-width:576px){ .submission-actions{ position:static; margin-top:.75rem; justify-content:flex-end; } }

/* Dashboard users */
body.users{ background:var(--ojs-bg); }
.ojs-strip{ border-bottom:1px solid var(--ojs-border); margin-bottom:.75rem; }
.ojs-strip .nav-link{ color:#111827; padding:.5rem .75rem; }
.ojs-strip .nav-link.active{ border:1px solid var(--ojs-border); border-bottom-color:#fff; background:#fff; border-top-left-radius:.4rem; border-top-right-radius:.4rem; }
.ojs-head{ background:linear-gradient(180deg,#fff,#f9fafb); border:1px solid var(--ojs-border); border-radius:.5rem; padding:.85rem 1rem; }
.ojs-title{ font-weight:700; }
.ojs-list{ display:flex; flex-direction:column; gap:.75rem; }
.ojs-item{ background:var(--ojs-card); border:1px solid var(--ojs-border); border-radius:.6rem; padding:.75rem .9rem; box-shadow:0 1px 0 rgba(16,24,40,.02); }
.ojs-row{ display:flex; gap:.75rem; align-items:flex-start; }
.ojs-col-main{ flex:1 1 auto; min-width:0; }
.ojs-col-actions{ flex:0 0 auto; display:flex; gap:.5rem; align-items:center; }
.ojs-name{ font-weight:700; }
.ojs-meta{ color:#6b7280; font-size:.875rem; }
.ojs-badges{ margin-top:.25rem; display:flex; flex-wrap:wrap; gap:.35rem; }
.role-chip{ display:inline-block; padding:.22rem .5rem; font-size:.78rem; background:#eef2f7; border:1px solid var(--ojs-border); border-radius:999px; color:#111827; }
.badge-primary-role{ padding:.3rem .55rem; border-radius:999px; font-weight:600; }
.ojs-expand{ color:#6b7280; font-size:.85rem; cursor:pointer; user-select:none; }
.ojs-extra{ display:none; padding-top:.5rem; border-top:1px dashed var(--ojs-border); margin-top:.5rem; color:#374151; }
.ojs-item:hover{ background:#fbfcff; }
.ojs-actions .btn{ white-space:nowrap; }
@media (max-width:768px){ .ojs-row{ flex-direction:column; align-items:stretch; } .ojs-col-actions{ justify-content:flex-end; } }

.bs-popover-top .popover-body, .bs-popover-bottom .popover-body{ padding:12px; }
.ojs-issue-list .list-group-item { border: 1px solid #e5e7eb; margin-bottom: .5rem; border-radius: .5rem; background: #fff; }
.ojs-issue-item .fw-semibold a { text-decoration: none; }
.ojs-issue-item .fw-semibold a:hover { text-decoration: underline; }
.ojs-handle { cursor: grab; user-select: none; font-size: 18px; width: 1.5rem; text-align: center; color: #6b7280; }
.ojs-issue-item.dragging { opacity: .6; }
.ojs-order-on .ojs-row-actions { opacity: .35; pointer-events: none; }
#issueOrderBar.saved::after { content: ' Saved'; margin-left: .5rem; color: #198754; font-weight: 600; }

#editorial-board-showcase .member-card { flex: 0 0 100%; max-width: 100%; }
@media (min-width: 768px) { #editorial-board-showcase .member-card { flex: 0 0 19%; max-width: 19%; } }
#editorial-board-showcase .card { height: 100%; }
#editorial-board-showcase .editorial-journal-badge { display: inline-block; width: 100%; white-space: normal; word-wrap: break-word; overflow-wrap: break-word; text-align: center; color:#000; }
#editorial-board-showcase .editorial-journal-badge.text-truncate { white-space: normal !important; }

.btn-primary {
  --bs-btn-color: #fff; --bs-btn-bg: #003b44; --bs-btn-border-color: #003b44;
  --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #008080; --bs-btn-hover-border-color: #008080;
  --bs-btn-focus-shadow-rgb: 49,132,253; --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #008080; --bs-btn-active-border-color: #008080;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff; --bs-btn-disabled-bg: #008080; --bs-btn-disabled-border-color: #008080;
}

.journal-desc { overflow: hidden; max-height: 0; transition: max-height 0.3s ease; }
.journal-desc-expanded { max-height: 9999px; }

.action-chip { display: inline-flex; align-items: center; padding: 6px 10px; border-radius: 999px; border: 1px solid #e1e5ea; background: #f8f9fb; cursor: pointer; transition: all .18s ease-in-out; box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04); }
.action-chip-icon { width: 28px; height: 28px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; margin-right: 8px; background: rgba(13,110,253,0.07); font-size: 14px; }
.action-chip-body { line-height: 1.1; }
.action-chip-label { font-size: 12px; font-weight: 600; color: #111827; }
.action-chip-sub { font-size: 10px; color: #6b7280; }
.action-chip:hover { background: #ffffff; border-color: #cbd5f5; box-shadow: 0 4px 10px rgba(15, 23, 42, 0.08); transform: translateY(-1px); }
.action-chip-accent { border-color: rgba(13,110,253,0.25); background: rgba(13,110,253,0.03); }
.action-chip-accent .action-chip-icon { background: #0d6efd; color: #ffffff; }
.action-chip-accent .action-chip-label { color: #0d1729; }
.action-chip-accent:hover { background: #0d6efd; border-color: #0d6efd; }
.action-chip-accent:hover .action-chip-label, .action-chip-accent:hover .action-chip-sub { color: #ffffff; }

.cfp-banner { border-radius: 1rem; background: var(--jp-brand); position: relative; overflow: hidden; }
.cfp-banner::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 20% 20%, rgba(255,255,255,0.25), transparent 55%), radial-gradient(circle at 80% 80%, rgba(0,0,0,0.25), transparent 55%), linear-gradient(45deg, rgba(255,255,255,0.05), rgba(0,0,0,0.05)); opacity: 0.7; mix-blend-mode: overlay; pointer-events: none; }
.cfp-banner .card-body { position: relative; z-index: 1; }
.cfp-icon-wrap { width: 42px; height: 42px; background: rgba(0,0,0,0.22); color: #ffffff; font-size: 1.5rem; box-shadow: inset 0 0 8px rgba(0,0,0,0.3); }
.cfp-btn-primary { color: #004d40 !important; }
.cfp-btn-outline { border-color: rgba(255,255,255,0.85); color: #ffffff !important; }
.cfp-btn-outline:hover { background-color: rgba(255,255,255,0.18); }
.text-white-75 { color: rgba(255,255,255,0.85) !important; }
@media (max-width: 576px) { .cfp-banner { border-radius: 0.75rem; } }

/* Journal Hero Slider */
.aa-journalHero { overflow: hidden; background: #071017; box-shadow: 0 18px 50px rgba(0,0,0,.30); position: relative; }
.aa-journalHero-slide { position: relative; min-height: 420px; background-size: cover; background-position: center; }
.aa-journalHero-slide::after { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 48px 48px; opacity: .28; z-index: 1; }
.aa-journalHero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,14,18,.94) 0%, rgba(5,14,18,.80) 55%, rgba(5,14,18,.35) 100%); z-index: 1; }
.aa-journalHero-inner { position: relative; z-index: 2; min-height: 420px; display: flex; align-items: center; padding: 42px 12px; }
.aa-journalHero-top { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 12px; }
.aa-journalHero-badge, .aa-journalHero-tag { padding: 8px 12px; border-radius: 999px; font-weight: 700; font-size: .85rem; display: inline-flex; }
.aa-journalHero-badge { color: rgba(255,255,255,.92); background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.14); backdrop-filter: blur(8px); }
.aa-journalHero-tag { color: #fff; background: rgba(30,127,115,.65); border: 1px solid rgba(30,127,115,.20); }
.aa-journalHero-title { margin: 8px 0 12px; font-weight: 700; font-size: 1.45rem; line-height: 1.35; }
.aa-journalHero-title a { color: #fff; text-decoration: none; }
.aa-journalHero-title a:hover { text-decoration: underline; }
.aa-journalHero-meta { margin-top: 8px; font-size: .96rem; color: rgba(255,255,255,.86); }
.aa-journalHero-label { color: rgba(255,255,255,.66); font-weight: 700; margin-right: 6px; }
.aa-journalHero-link { color: #7ff7ea; font-weight: 700; text-decoration: none; }
.aa-journalHero-text { color: rgba(255,255,255,.88); font-weight: 500; }
.aa-journalHero-actions { display: flex; gap: 10px; margin-top: 18px; flex-wrap: wrap; }
.aa-jbtn { padding: 10px 16px; border-radius: 6px; font-weight: 700; text-decoration: none; display: inline-flex; align-items: center; transition: 0.3s; padding: 5px; }
.aa-jbtn-primary { background: #1e7f73; color: #fff !important; }
.aa-jbtn-primary:hover { background: #196a60; }
.aa-jbtn-ghost { background: rgba(255,255,255,.08); color: #fff !important; border: 1px solid rgba(255,255,255,.18); backdrop-filter: blur(8px); }
.aa-cleanCover { width: 340px; border-radius: 16px; overflow: hidden; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12); box-shadow: 0 14px 34px rgba(0,0,0,.28); }
.aa-journalHero-cover { height: 280px; background-size: cover; background-position: center; }
.aa-journalHero-coverBar { display: flex; justify-content: space-between; padding: 10px 12px; background: rgba(0,0,0,.25); font-size: .85rem; color: rgba(255,255,255,.78); }
.aa-journalHero-dot { width: 6px; height: 6px; background: #7ff7ea; border-radius: 50%; }
.aa-journalHero-indicators { position: absolute; left: 16px; bottom: 14px; z-index: 5; margin: 0; display: flex; gap: 6px; }
.aa-journalHero-indicators [data-bs-target] { width: 18px; height: 4px; border-radius: 4px; border: 0; background: rgba(255,255,255,.30); transition: 0.3s; }
.aa-journalHero-indicators .active { width: 44px; background: #7ff7ea; }
.aa-journalHero-arrow { width: 60px; opacity: 1; }
.aa-journalHero .carousel-control-prev-icon, .aa-journalHero .carousel-control-next-icon { background-color: rgba(255,255,255,.10); padding: 18px; border-radius: 50%; backdrop-filter: blur(8px); }
@media (max-width: 991px) { .aa-journalHero-slide, .aa-journalHero-inner { min-height: 350px; } .aa-journalHero-inner { align-items: flex-end; padding-bottom: 50px; } .aa-journalHero-title { font-size: 1.15rem; } .aa-jbtn { width: 100%; } }

/* Global Text Decoration */
a { color: var(--brand); text-decoration: none; position: relative; transition: color .2s ease; }
a::after { content: ""; position: absolute; left: 0; bottom: -2px; width: 100%; height: 1.5px; background: currentColor; transform: scaleX(0); transform-origin: left; transition: transform .25s ease; }
a:hover { color: var(--accent); }
a:hover::after { transform: scaleX(1); }
.btn, .btn::after, button, button::after { text-decoration: none !important; content: none !important; }
.nav-link::after, .hb-nav a::after, .top-inline-link::after { content: none !important; }
a i, a i::after { text-decoration: none !important; content: none !important; }


/* PH Header */
.ph-shell{ position:sticky; top:0; z-index:1050; background:var(--ph-bg); border-bottom:1px solid var(--ar-line,#e0e0e0); box-shadow:0 1px 0 var(--ph-border); transition:box-shadow .25s var(--ph-ease); }
.ph-shell.scrolled{ box-shadow:0 2px 12px rgba(0,0,0,.10); }

.ph-ribbon{
  background:var(--ph-strip);
  border-bottom:1px solid var(--ph-border);
  font-size:.72rem;
  overflow:hidden;
  max-height:34px;
  opacity:1;
  transition:max-height .35s ease, opacity .35s ease;
}
@media(min-width:576px){ .ph-ribbon{ max-height:34px; } }
@media(max-width:575.98px){ .ph-ribbon{ max-height:60px; padding:.3rem 0; } }
.ph-ribbon.hide{
  max-height:0 !important;
  opacity:0;
  pointer-events:none;
}
.ph-ribbon__inner{ max-width:1280px; margin:0 auto; padding:0 .75rem; height:100%; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.4rem .75rem; min-height:34px; }


.ph-socials a{ display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; color:var(--ph-muted); border:1px solid var(--ph-border); border-radius:3px; font-size:.65rem; text-decoration:none; transition:color .15s, border-color .15s, background .15s; line-height:1; vertical-align:middle; }


@media(max-width:399.98px){ .ph-ribbon__issn{ font-size:.65rem; } }


.ph-brand{ background:var(--ph-bg); }
@media(min-width:576px){ .ph-brand{ height:80px; } }


/* ph-brand__name — defined above */


.ph-search-btn i{ font-size:.78rem; }
@media(max-width:575.98px){ .ph-search-btn .ph-search-label{ display:none; } }


.ph-dropdown{ border:1px solid var(--ph-border) !important; border-radius:3px !important; box-shadow:0 4px 20px rgba(0,0,0,.10) !important; padding:.3rem 0 !important; min-width:195px; font-family:var(--ph-f-sans); z-index: 10000;}


.ph-dropdown__item{ display:flex; align-items:center; gap:.55rem; padding:.42rem 1rem; font-size:.8rem; color:var(--ph-mid); text-decoration:none; background:none; border:none; cursor:pointer; width:100%; font-family:var(--ph-f-sans); transition:background .12s,color .12s; }
.ph-dropdown__item i{ font-size:.78rem; color:var(--ph-muted); flex-shrink:0; }

.ph-dropdown__item:hover i{ color:var(--ph-brand); }

.ph-dropdown__item--danger i{ color:#b91c1c; }


@media(min-width:992px){ .ph-nav{ height:42px; } .ph-nav .navbar-collapse{ display:flex !important; align-items:center; width:100%; height:100%; overflow:visible; } }
.ph-nav__inner{ max-width:1280px; margin:0 auto; padding:0 1.5rem; display:flex; align-items:center;  gap:0; }


.ph-nav__item {
  position: relative !important;
  /*! display: flex; */
  align-items: stretch;
}

/* Nav scroll overflow fix */
.ph-nav__scroll {
  overflow-y: visible !important;
}

.ph-nav__list .dropdown-menu {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  bottom: auto !important;
  right: auto !important;
  transform: none !important;
  inset: unset !important;
  margin-top: 0 !important;
  z-index: 9999 !important;
  min-width: 200px;
  border-radius: 3px;
  border: 1px solid var(--ph-border);
  box-shadow: 0 4px 20px rgba(0,0,0,.10);
  background: #fff;
}

@media (min-width: 992px) {
  .ph-nav__list .dropdown:hover > .dropdown-menu {
    display: block;
  }
  .ph-nav__list .dropdown-menu .dropdown-item {
    font-size: .82rem;
    color: var(--ph-mid);
    padding: .42rem 1rem;
    white-space: nowrap;
  }
  .ph-nav__list .dropdown-menu .dropdown-item:hover {
    background: #f5f5f5;
    color: var(--ph-brand);
  }
}
.ph-nav__link{ display:inline-flex; align-items:center; padding:10px; font-family:var(--ph-f-sans); font-size:.84rem; font-weight:500; color:var(--ph-mid) !important; text-decoration:none !important; letter-spacing:.01em; white-space:nowrap; border-bottom:2px solid transparent; margin-bottom:-1px; transition:color .15s, border-color .15s; }
.ph-nav__link:hover { color:var(--ph-ink) !important; border-bottom-color:var(--ph-accent); }
.ph-nav__link.active { color:var(--ph-ink) !important; border-bottom-color:var(--ph-accent); font-weight:600; }
.ph-nav__link.dropdown-toggle::after{ margin-left:.3rem; opacity:.5; }
.ph-nav__right{ margin-left:auto; display:flex; align-items:center; border-left:1px solid var(--ph-border); padding-left:1rem; gap:.75rem; height:100%; }
.ph-nav__badge{ font-size:.7rem; color:var(--ph-muted); letter-spacing:.03em; white-space:nowrap; }
.ph-nav__badge strong{ color:var(--ph-brand); font-weight:600; }
@media(max-width:991.98px){
  .ph-nav{ height:auto; border-top:none; overflow:visible; }
  .ph-nav__inner{ padding:0; display:block; }
  .ph-nav__scroll{ overflow:visible; height:auto; }
  .ph-nav .navbar-collapse{ background:#fff; border-top:1px solid var(--ph-border); }
  .ph-nav__list{ flex-direction:column; height:auto; padding:.25rem 0; }
  .ph-nav__item{ display:block; }
  .ph-nav__link{ display:block; padding:.65rem 1.25rem; border-bottom:none !important; border-left:3px solid transparent; margin:0; height:auto; }
  .ph-nav__link:hover, .ph-nav__link.active{ border-left-color:var(--ph-accent); background:#fafafa; }
  .ph-nav__right{ display:none !important; }
  .ph-nav .ph-dropdown{ position:static !important; box-shadow:none !important; border:none !important; border-left:3px solid var(--ph-border) !important; margin-left:1.25rem !important; padding:.2rem 0 !important; border-radius:0 !important; width:auto !important; }
}
.ph-search-overlay{ position:fixed; inset:0; z-index:2000; display:none; flex-direction:column; align-items:center; padding-top:10vh; }


@keyframes phFadeIn{ from{opacity:0} to{opacity:1} }

@keyframes phUp{ from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} }


.ph-search-overlay__row:focus-within{ box-shadow:0 0 0 3px rgba(0,0,0,.08); }
.ph-search-overlay__input{ flex:1; border:none; outline:none; font-family:var(--ph-f-sans); font-size:1rem; color:var(--ph-ink); padding:.8rem 1rem; background:transparent; }
.ph-search-overlay__input::placeholder{ color:#aaa; }
.ph-search-overlay__go{ background:var(--ph-ink); color:#fff; border:none; padding:.8rem 1.25rem; font-size:.85rem; font-weight:600; font-family:var(--ph-f-sans); cursor:pointer; white-space:nowrap; display:flex; align-items:center; gap:.3rem; transition:background .15s; }
.ph-search-overlay__go:hover{ background:#333; }
.ph-search-overlay__hint{ margin-top:.6rem; font-size:.72rem; color:var(--ph-muted); letter-spacing:.02em; }
.ph-search-overlay__hint kbd{ font-size:.65rem; background:#eee; padding:.1rem .3rem; border-radius:3px; border:1px solid #ccc; }
.ph-search-overlay__close{ position:absolute; top:-2.5rem; right:0; background:none; border:none; font-size:.8rem; color:var(--ph-muted); cursor:pointer; font-family:var(--ph-f-sans); display:flex; align-items:center; gap:.3rem; transition:color .15s; }
.ph-search-overlay__close:hover{ color:var(--ph-ink); }
.ph-search-overlay__close kbd{ font-size:.65rem; background:rgba(0,0,0,.06); padding:.1rem .3rem; border-radius:3px; border:1px solid rgba(0,0,0,.12); }


@media(min-width:768px){ .pf-inner{ padding:2.5rem 2rem 0; } }
.pf-top{ display:flex; flex-direction:column; gap:1.25rem; padding-bottom:1.75rem; border-bottom:1px solid rgba(255,255,255,.12); margin-bottom:1.75rem; }
@media(min-width:768px){ .pf-top{ flex-direction:row; align-items:center; justify-content:space-between; } }
.pf-identity{ display:flex; align-items:center; gap:.85rem; }
.pf-mono{ width:44px; height:44px; flex-shrink:0; border:1.5px solid rgba(255,255,255,.35); border-radius:2px; display:flex; align-items:center; justify-content:center; font-family:var(--pf-serif); font-size:1.15rem; font-weight:600; color:#fff; letter-spacing:.02em; }
.pf-journal-name{ font-family:var(--pf-serif); font-size:1.1rem; font-weight:500; color:#fff; line-height:1.25; margin-bottom:.2rem; }
.pf-issn-row{ font-size:.72rem; color:rgba(255,255,255,.55); letter-spacing:.02em; }
.pf-top-btns{ display:flex; gap:.6rem; flex-wrap:wrap; flex-shrink:0; }
.pf-cta-btn{ display:inline-flex; align-items:center; gap:.3rem; font-family:var(--pf-sans); font-size:.8rem; font-weight:600; text-decoration:none; padding:.42rem 1rem; border-radius:2px; border:1.5px solid; white-space:nowrap; transition:background .15s, color .15s; }
.pf-cta-btn--white{ background:#fff; border-color:#fff; color:var(--pf-brand)!important; }
.pf-cta-btn--white:hover{ background:#f0f6f7; text-decoration:none; }
.pf-cta-btn--outline{ background:transparent; border-color:rgba(255,255,255,.4); color:#fff!important; }
.pf-cta-btn--outline:hover{ background:rgba(255,255,255,.1); text-decoration:none; }
.pf-grid{ display:grid; grid-template-columns:1fr; gap:1.75rem; padding-bottom:1.75rem; }
@media(min-width:576px){ .pf-grid{ grid-template-columns:1fr 1fr; } }
@media(min-width:1024px){ .pf-grid{ grid-template-columns:2fr 1fr 1fr 1.4fr; gap:2.5rem; } }
.pf-col-head{ font-family:var(--pf-sans); font-size:.66rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.5); border-top:1.5px solid rgba(255,255,255,.18); padding-top:.35rem; margin-bottom:.85rem; }
.pf-desc{ font-size:.82rem; color:rgba(255,255,255,.65); line-height:1.65; margin:0; }
.pf-links{ list-style:none; padding:0; margin:0; }
.pf-links li{ margin-bottom:.45rem; }
.pf-links a{ color:rgba(255,255,255,.7); text-decoration:none; font-size:.82rem; transition:color .15s; display:inline-flex; align-items:center; gap:.4rem; }
.pf-links a:hover{ color:#fff; text-decoration:none; }
.pf-links a i{ font-size:.72rem; opacity:.6; }
.pf-contact{ list-style:none; padding:0; margin:0 0 1rem; }
.pf-contact li{ display:flex; align-items:flex-start; gap:.55rem; color:rgba(255,255,255,.65); font-size:.82rem; margin-bottom:.5rem; line-height:1.4; }
.pf-contact li i{ flex-shrink:0; margin-top:.15rem; font-size:.85rem; opacity:.6; }
.pf-contact a{ color:rgba(255,255,255,.8); text-decoration:none; }
.pf-contact a:hover{ color:#fff; }
.pf-socials{ display:flex; gap:.5rem; margin-bottom:.9rem; }
.pf-social{ width:30px; height:30px; border:1px solid rgba(255,255,255,.2); border-radius:2px; display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,.65); font-size:.8rem; text-decoration:none; transition:border-color .15s, color .15s, background .15s; }
.pf-social:hover{ border-color:rgba(255,255,255,.6); color:#fff; background:rgba(255,255,255,.08); text-decoration:none; }
.pf-bottom{ border-top:1px solid rgba(255,255,255,.1); padding:.85rem 0; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.65rem; font-size:.73rem; color:rgba(255,255,255,.45); }
.pf-bottom a{ color:rgba(255,255,255,.5); text-decoration:none; transition:color .15s; }
.pf-bottom a:hover{ color:rgba(255,255,255,.85); }
.pf-bottom__links{ display:flex; flex-wrap:wrap; gap:.75rem; }

/* Journal Home */
.jp *{box-sizing:border-box;} .jp a{color:inherit;}
.jp-w{max-width:var(--jp-max);margin:0 auto;padding:0 1.25rem;}
@media(min-width:768px){.jp-w{padding:0 2rem;}}
.jp-sh{ display:flex;align-items:baseline;gap:1rem; border-top:1px solid var(--ar-line,#e0e0e0); padding-top:.45rem;margin-bottom:1.5rem; }
.jp-sh__t{font-family:var(--jp-serif);font-size:1.2rem;font-weight:600;color:var(--jp-ink);letter-spacing:-.01em;}
.jp-sh__more{margin-left:auto;font-size:.78rem;font-weight:600;color:var(--jp-brand);text-decoration:none;white-space:nowrap;}
.jp-sh__more:hover{text-decoration:underline;}
.jp-btn{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--jp-sans);font-size:.82rem;font-weight:600;text-decoration:none;padding:.42rem .95rem;border-radius:2px;border:1.5px solid;transition:background .15s,color .15s;white-space:nowrap;}
.jp-btn--solid{background:var(--jp-brand);border-color:var(--jp-brand);color:#fff!important;}
.jp-btn--solid:hover{background:#005060;border-color:#005060;text-decoration:none;}
.jp-btn--ghost{background:transparent;border-color:var(--jp-line);color:var(--jp-mid)!important;}
.jp-btn--ghost:hover{border-color:var(--jp-brand);color:var(--jp-brand)!important;text-decoration:none;}
.jp-feat{background:var(--jp-bg);border-bottom:1px solid var(--jp-line);padding:2.5rem 0 2rem;}
.jp-feat__grid{display:grid;grid-template-columns:1fr;gap:0;}
@media(min-width:1024px){.jp-feat__grid{grid-template-columns:1fr 320px;}}
.jp-lead{padding-bottom:1.5rem;border-bottom:1px solid var(--jp-line);}
@media(min-width:1024px){.jp-lead{padding-right:2.5rem;padding-bottom:0;border-bottom:none;border-right:1px solid var(--jp-line);}}
.jp-lead__badge{display:inline-block;font-family:var(--jp-sans);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--jp-accent);border-top:none;padding-top:0;margin-bottom:1rem;}
.jp-lead__img{width:100%;aspect-ratio:16/7;object-fit:cover;display:block;margin-bottom:1.25rem;border:1px solid var(--jp-line);}
.jp-lead__title{font-family:var(--jp-serif);font-size:1.85rem;font-weight:500;line-height:1.22;color:var(--jp-ink);text-decoration:none;display:block;margin-bottom:.55rem;}
.jp-lead__title:hover{color:var(--jp-brand);text-decoration:none;}
@media(min-width:768px){.jp-lead__title{font-size:2.1rem;}}
.jp-lead__authors{font-size:.875rem;color:var(--jp-muted);margin-bottom:.3rem;}
.jp-lead__meta{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;font-size:.8rem;color:var(--jp-muted);margin-bottom:1rem;}
.jp-lead__meta a{color:var(--jp-brand);text-decoration:none;}.jp-lead__meta a:hover{text-decoration:underline;}
.jp-lead__btns{display:flex;gap:.6rem;flex-wrap:wrap;}
.jp-ss{padding-top:1.5rem;}
@media(min-width:1024px){.jp-ss{padding-top:0;padding-left:2rem;}}
.jp-ss__lbl{font-family:var(--jp-sans);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--jp-muted);border-top:2px solid var(--jp-line);padding-top:.3rem;margin-bottom:1rem;}
.jp-ss-item{display:flex;gap:.8rem;padding:.8rem 0;border-bottom:1px solid var(--jp-line);}
.jp-ss-item:last-child{border-bottom:none;}
.jp-ss-item__n{font-family:var(--jp-serif);font-size:1.4rem;color:#d0d0d0;line-height:1;width:24px;text-align:center;flex-shrink:0;padding-top:2px;}
.jp-ss-item__sec{font-size:.64rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--jp-accent);margin-bottom:.15rem;}
.jp-ss-item__title{font-family:var(--jp-serif);font-size:.95rem;font-weight:500;line-height:1.3;color:var(--jp-ink);text-decoration:none;display:block;margin-bottom:.15rem;}
.jp-ss-item__title:hover{color:var(--jp-brand);text-decoration:none;}
.jp-ss-item__au{font-size:.75rem;color:var(--jp-muted);}
.jp-sbar{background:var(--iv-wash);border-top:1px solid var(--jp-line);border-bottom:1px solid var(--jp-line);padding:.8rem 0;}
.jp-sbar__form{display:flex;max-width:660px;}
.jp-sbar__q{flex:1;border:1.5px solid #bbb;border-right:none;border-radius:2px 0 0 2px;padding:.5rem .85rem;font-size:.9rem;font-family:var(--jp-sans);color:var(--jp-ink);outline:none;background:#fff;transition:border-color .15s;}
.jp-sbar__q:focus{border-color:var(--jp-brand);}
.jp-sbar__q::placeholder{color:#aaa;}
.jp-sbar__go{background:var(--jp-brand);color:#fff;border:1.5px solid var(--jp-brand);border-radius:0 2px 2px 0;padding:.5rem 1.1rem;font-size:.875rem;font-weight:600;font-family:var(--jp-sans);cursor:pointer;white-space:nowrap;transition:background .15s;}
.jp-sbar__go:hover{background:#005060;border-color:#005060;}
.jp-sbar__hint{font-size:.7rem;color:var(--jp-muted);margin-top:.25rem;}
.jp-body{padding:2.25rem 0 3.5rem;background:var(--jp-bg);}
.jp-body__grid{display:grid;grid-template-columns:1fr;gap:2.5rem;}
@media(min-width:1024px){.jp-body__grid{grid-template-columns:1fr 288px;gap:3rem;}}
.jp-arow{display:grid;grid-template-columns:108px 1fr;gap:.9rem;padding:1.2rem 0;border-bottom:1px solid var(--jp-line);align-items:start;}
.jp-arow:first-child{border-top:1px solid var(--jp-line);}
@media(min-width:576px){.jp-arow{grid-template-columns:128px 1fr;gap:1.1rem;}}
.jp-arow__img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border:1px solid var(--jp-line);}
.jp-arow__sec{font-size:.64rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--jp-accent);margin-bottom:.18rem;}
.jp-arow__title{font-family:var(--jp-serif);font-size:1.02rem;font-weight:500;line-height:1.3;color:var(--jp-ink);text-decoration:none;display:block;margin-bottom:.28rem;}
.jp-arow__title:hover{color:var(--jp-brand);text-decoration:none;}
.jp-arow__au{font-size:.8rem;color:var(--jp-muted);margin-bottom:.22rem;}
.jp-arow__foot{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 1rem;margin-top:.3rem;}
.jp-arow__date{font-size:.74rem;color:var(--jp-muted);}
.jp-arow__doi{font-size:.74rem;color:var(--jp-muted);}.jp-arow__doi a{color:var(--jp-brand);text-decoration:none;}.jp-arow__doi a:hover{text-decoration:underline;}
.jp-arow__views{font-size:.74rem;color:var(--jp-muted);display:inline-flex;align-items:center;gap:.2rem;}
.jp-arow__lnks{margin-left:auto;display:flex;gap:.55rem;}
.jp-arow__lnk{font-size:.76rem;font-weight:600;color:var(--jp-brand);text-decoration:none;display:inline-flex;align-items:center;gap:.2rem;}
.jp-arow__lnk:hover{text-decoration:underline;}
.jp-sb-blk{margin-bottom:1rem;/*! padding-bottom:2rem; */border-bottom:1px solid var(--jp-line);}
.jp-sb-blk:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.jp-sb-h{font-family:var(--jp-sans);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--jp-muted);border-top:2px solid var(--jp-ink);padding-top:.35rem;margin-bottom:.9rem;}
.jp-jinfo{display:grid;grid-template-columns:auto 1fr;gap:.25rem .65rem;font-size:.81rem;margin-bottom:.75rem;}
.jp-jinfo dt{font-weight:600;color:var(--jp-muted);white-space:nowrap;}
.jp-jinfo dd{margin:0;color:var(--jp-ink);}.jp-jinfo dd a{color:var(--jp-brand);text-decoration:none;}.jp-jinfo dd a:hover{text-decoration:underline;}
.jp-cover{width:50%;max-width:150px;border:1px solid var(--jp-line);display:block;margin-bottom:.75rem;}
.jp-isbox{background:var(--jp-wash);border:1px solid var(--jp-line);padding:.85rem;margin-bottom:.65rem;}
.jp-isbox__lbl{font-size:.64rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--jp-muted);margin-bottom:.25rem;}
.jp-isbox__vol{font-family:var(--jp-serif);font-size:1rem;font-weight:500;color:var(--jp-ink);margin-bottom:.5rem;}
.jp-islink{display:inline-flex;align-items:center;gap:.25rem;font-size:.8rem;font-weight:600;color:var(--jp-brand);text-decoration:none;border-bottom:1px solid var(--jp-line);padding-bottom:1px;transition:border-color .15s;}
.jp-islink:hover{border-color:var(--jp-brand);text-decoration:none;}
.jp-eic{display:flex;align-items:center;gap:.7rem;margin-bottom:.5rem;}
.jp-eic__av{width:38px;height:38px;border-radius:50%;background:var(--jp-brand);color:#fff;font-family:var(--jp-sans);font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.jp-eic__name{font-weight:600;font-size:.875rem;line-height:1.2;color:var(--jp-ink);}
.jp-eic__aff{font-size:.74rem;color:var(--jp-muted);margin-top:1px;}
.jp-rank-item{display:grid;grid-template-columns:22px 1fr;gap:.45rem;padding:.6rem 0;border-bottom:1px solid var(--jp-line);align-items:start;}
.jp-rank-item:last-child{border-bottom:none;}
.jp-rank-item__n{font-family:var(--jp-serif);font-size:.95rem;color:#ccc;line-height:1.25;text-align:center;padding-top:1px;}
.jp-rank-item__title{font-family:var(--jp-serif);font-size:.88rem;line-height:1.3;color:var(--jp-ink);text-decoration:none;display:block;margin-bottom:.12rem;}
.jp-rank-item__title:hover{color:var(--jp-brand);text-decoration:none;}
.jp-rank-item__meta{font-size:.71rem;color:var(--jp-muted);display:flex;gap:.45rem;}
.jp-feat__grid{transition:opacity .4s ease;}
.jp-feat__grid.fading{opacity:0;}
.jp-slider-nav{display:flex;align-items:center;gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--jp-line);}
.jp-slider-dots{display:flex;gap:.4rem;}
.jp-slider-dot{width:22px;height:3px;background:var(--jp-line);border:none;cursor:pointer;transition:background .2s,width .2s;padding:0;}
.jp-slider-dot.active{width:44px;background:var(--jp-brand);}
.jp-slider-arrows{display:flex;gap:.4rem;margin-left:auto;}
.jp-slider-arr{width:32px;height:32px;border:1.5px solid var(--jp-line);background:var(--jp-bg);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.85rem;color:var(--jp-mid);transition:border-color .15s,color .15s;}
.jp-slider-arr:hover{border-color:var(--jp-brand);color:var(--jp-brand);}
.jp-slider-counter{font-size:.75rem;color:var(--jp-muted);margin-left:.25rem;}
.jp-slider-progress{height:2px;background:var(--jp-line);margin-top:.35rem;}
.jp-slider-progress-bar{height:2px;background:var(--jp-brand);width:0%;transition:width linear;}
.jp-slider-nav,
.jp-slider-progress {
  display: none;
}
.jp-cta{background:var(--jp-brand);padding:2.5rem 0;}
.jp-cta__inner{display:flex;flex-direction:column;gap:1.25rem;}
@media(min-width:768px){.jp-cta__inner{flex-direction:row;align-items:center;justify-content:space-between;gap:2rem;}}
.jp-cta__title{font-family:var(--jp-serif);font-size:1.35rem;font-weight:500;color:#fff;margin-bottom:.2rem;}
.jp-cta__sub{font-size:.875rem;color:rgba(255,255,255,.7);}
.jp-cta__btns{display:flex;gap:.65rem;flex-wrap:wrap;flex-shrink:0;}
.jp-ctabtn{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--jp-sans);font-size:.875rem;font-weight:600;text-decoration:none;padding:.52rem 1.2rem;border-radius:2px;border:1.5px solid;transition:background .15s,color .15s;}
.jp-ctabtn--w{background:#fff;border-color:#fff;color:var(--jp-brand)!important;}
.jp-ctabtn--w:hover{background:#f0f6f7;text-decoration:none;}
.jp-ctabtn--o{background:transparent;border-color:rgba(255,255,255,.45);color:#fff!important;}
.jp-ctabtn--o:hover{background:rgba(255,255,255,.12);text-decoration:none;}

/* Article Reader */


/* Mobile pe sticky band karo */


/* Contents — sirf mobile pe dikhao */


/* ═══════════════════════════════════════════════════════════════
   SD-STYLE REFERENCE SIDE PANEL  ← NEW ADDITION
   ═══════════════════════════════════════════════════════════════ */


.sdref-authors { font-size: .84rem; color: #666; margin-bottom: .5rem; line-height: 1.45; }
.sdref-title {
  font-size: 1.1rem; font-weight: 700; color: #111; line-height: 1.28;
  margin-bottom: .65rem;
  font-family: var(--ar-serif, 'EB Garamond', Georgia, serif);
}
.sdref-source { font-size: .84rem; color: #444; line-height: 1.5; margin-bottom: .55rem; }
.sdref-doi { font-size: .8rem; margin-bottom: 1.1rem; }
.sdref-doi a { color: #007b8a; text-decoration: none; border-bottom: 1px solid rgba(0,123,138,.3); word-break: break-all; }
.sdref-doi a::after { content: none !important; }
.sdref-doi a:hover { border-color: #007b8a; color: #005060; }

.sdref-actions { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: 1.15rem; }
.sdref-action-link {
  display: inline-flex; align-items: center; gap: .25rem;
  font-size: .76rem; font-weight: 600; color: #007b8a; text-decoration: none;
  border: 1px solid rgba(0,123,138,.28); border-radius: 3px;
  padding: .28rem .7rem; background: #fff; white-space: nowrap;
  transition: background .12s, border-color .12s, color .12s; position: relative;
}
.sdref-action-link::after { content: none !important; }
.sdref-action-link:hover { background: rgba(0,123,138,.06); border-color: #007b8a; text-decoration: none; color: #005060; }
.sdref-action-link i { font-size: .68rem; }

.sdref-view-article {
  display: inline-flex; align-items: center; gap: .3rem;
  font-size: .82rem; font-weight: 600; color: #007b8a;
  cursor: pointer; background: none; border: none; padding: 0;
  text-decoration: none; transition: color .12s;
}
.sdref-view-article::after { content: none !important; }
.sdref-view-article:hover { color: #005060; text-decoration: underline; }

.sdref-divider { border: none; border-top: 1px solid #ebebeb; margin: 1rem 0; }

.sdref-raw-text {
  font-size: .82rem; color: #555; line-height: 1.65;
  background: #f8f9fa; border-left: 3px solid #e0e0e0;
  padding: .7rem .85rem; border-radius: 0 4px 4px 0; margin-bottom: 1rem;
}

.sdref-nav {
  display: flex; align-items: center; justify-content: space-between;
  padding-top: .75rem; border-top: 1px solid #ebebeb; margin-top: 1rem;
}
.sdref-nav-btn {
  display: inline-flex; align-items: center; gap: .3rem;
  font-size: .76rem; font-weight: 600; color: #007b8a;
  background: none; border: 1px solid rgba(0,123,138,.25);
  border-radius: 3px; padding: .28rem .65rem; cursor: pointer;
  transition: background .12s, border-color .12s;
}
.sdref-nav-btn::after { content: none !important; }
.sdref-nav-btn:hover { background: rgba(0,123,138,.06); border-color: #007b8a; }
.sdref-nav-btn:disabled { color: #bbb; border-color: #eee; cursor: default; background: none; }
.sdref-nav-counter { font-size: .76rem; color: #888; }

.sdref-highlight-flash {
  background: #fff9c4 !important; outline: 2px solid #f0c030;
  border-radius: 3px; transition: background .4s ease;
}

/* Reference list items - clickable */
#ar-ref-sec ol li, .ar-refs ol li {
  cursor: pointer; transition: color .13s;
}
#ar-ref-sec ol li:hover, .ar-refs ol li:hover { color: #007b8a; }

/* Mobile: bottom sheet */
@media (max-width: 575.98px) {
  .sdref-panel {
    width: 100vw; max-width: 100vw; border-left: none;
    border-top: 1px solid #e0e0e0; top: auto; bottom: -100vh;
    right: 0 !important; height: 72vh;
    border-radius: 14px 14px 0 0;
    box-shadow: 0 -6px 32px rgba(0,0,0,.13);
    transition: bottom .28s cubic-bezier(.4,0,.2,1);
  }
  .sdref-panel.open { bottom: 0; right: 0 !important; }
}

/* Misc utilities */
.doi-badge{ display:inline-block; padding:.1rem .45rem; border:1px solid rgba(13,110,253,.35); border-radius:999px; font-size:.78rem; line-height:1.2; text-decoration:none; white-space:nowrap; }
.doi-badge:hover{ text-decoration:underline; }

/* ════════════════════════════════════════════════
   PHF FOOTER — matches ph- header
   ════════════════════════════════════════════════ */
.phf-footer{
  background:var(--ph-brand);
  color:rgba(255,255,255,.8);
  font-family:var(--ph-f-sans);
  font-size:.84rem;
  border-top:1px solid rgba(255,255,255,.1);
  margin-top:auto;
}

/* Upper band */


/* Brand column */

.phf-brand-link::after{ display:none !important; }
.phf-mono{
  flex-shrink:0; width:44px; height:44px;
  border:1.5px solid rgba(255,255,255,.35); border-radius:2px;
  display:flex; align-items:center; justify-content:center;
  font-family:var(--ph-f-serif); font-size:1.15rem; font-weight:600;
  color:#fff; letter-spacing:.02em;
}


/* OA pill */
.phf-oa-pill{
  display:inline-flex; align-items:center; gap:.4rem;
  font-size:.68rem; font-weight:600; letter-spacing:.04em;
  color:rgba(255,255,255,.7);
  border:1px solid rgba(255,255,255,.18);
  border-radius:2px; padding:.28rem .65rem;
  margin-bottom:.85rem;
}

/* Social icons */
.phf-socials{ display:flex; gap:.4rem; flex-wrap:wrap; }
.phf-socials a{
  display:inline-flex; align-items:center; justify-content:center;
  width:28px; height:28px;
  border:1px solid rgba(255,255,255,.22); border-radius:2px;
  color:rgba(255,255,255,.6); font-size:.72rem;
  text-decoration:none; transition:border-color .15s, color .15s, background .15s;
}
.phf-socials a::after{ display:none !important; }
.phf-socials a:hover{ border-color:rgba(255,255,255,.6); color:#fff; background:rgba(255,255,255,.08); }

/* Nav columns */
.phf-col-head{
  font-size:.65rem; font-weight:700; letter-spacing:.1em;
  text-transform:uppercase; color:rgba(255,255,255,.45);
  border-top:1.5px solid rgba(255,255,255,.15);
  padding-top:.35rem; margin-bottom:.85rem;
}
.phf-links{ list-style:none; padding:0; margin:0; }
.phf-links li{ margin-bottom:.4rem; }
.phf-links a{
  color:rgba(255,255,255,.65); font-size:.82rem;
  text-decoration:none; transition:color .15s;
  display:inline-flex; align-items:center; gap:.35rem;
}
.phf-links a::after{ display:none !important; }
.phf-links a:hover{ color:#fff; }

/* Contact list */
.phf-contact-list{ list-style:none; padding:0; margin:0 0 1rem; }
.phf-contact-list li{
  display:flex; align-items:flex-start; gap:.5rem;
  color:rgba(255,255,255,.6); font-size:.82rem;
  margin-bottom:.45rem; line-height:1.4;
}
.phf-contact-list li i{ flex-shrink:0; margin-top:.1rem; font-size:.85rem; opacity:.6; }
.phf-contact-list a{ color:rgba(255,255,255,.75); text-decoration:none; }
.phf-contact-list a::after{ display:none !important; }
.phf-contact-list a:hover{ color:#fff; }

/* CTA button */
.phf-cta{
  display:inline-flex; align-items:center; gap:.35rem;
  font-family:var(--ph-f-sans); font-size:.8rem; font-weight:600;
  color:var(--ph-brand) !important; background:#fff;
  border:none; border-radius:2px; padding:.42rem 1rem;
  text-decoration:none; white-space:nowrap;
  transition:background .15s;
}
.phf-cta::after{ display:none !important; }
.phf-cta:hover{ background:#f0f6f7; }
.phf-cta-wrap{ margin-top:.5rem; }

/* Bottom bar */


.phf-copy a{ color:rgba(255,255,255,.55); font-weight:600; text-decoration:none; }
.phf-copy a::after{ display:none !important; }
.phf-copy a:hover{ color:rgba(255,255,255,.85); }

.phf-bottom__links a{ font-size:.72rem; color:rgba(255,255,255,.4); text-decoration:none; }
.phf-bottom__links a::after{ display:none !important; }


/* Author resources tab */
.phf-resources-tab{
  position:fixed; top:50%; right:0; transform:translateY(-50%); z-index:1050;
  background:var(--ph-brand); color:#fff; border:none;
  padding:10px 6px; border-radius:3px 0 0 3px;
  display:flex; /*! flex-direction:column; */ align-items:center; gap:6px;
  font-family:var(--ph-f-sans); font-size:.65rem; font-weight:700;
  letter-spacing:.08em; cursor:pointer;
  writing-mode:vertical-rl; text-orientation:mixed;
  box-shadow:-2px 0 8px rgba(0,0,0,.15);
  transition:background .15s;
}
.phf-resources-tab:hover{ background:#005060; }
.phf-resources-tab i{ writing-mode:horizontal-tb; font-size:.85rem; margin-bottom:.2rem; }

:root{
  --iv-brand  :#003b44;
  --iv-accent :#c00;
  --iv-ink    :#111;
  --iv-mid    :#444;
  --iv-muted  :#767676;
  --iv-line   :#e0e0e0;
  --iv-bg     :#fff;
  --iv-wash   :#f7f7f7;
  --iv-serif  :'EB Garamond',Georgia,serif;
  --iv-sans   :'Source Sans 3','Helvetica Neue',Arial,sans-serif;
  --iv-max    :1280px;
}
.iv *{ box-sizing:border-box; }
.iv a{ color:inherit; }
.iv-w{ max-width:var(--iv-max); margin:0 auto; padding:0 1.25rem; }
@media(min-width:768px){ .iv-w{ padding:0 2rem; } }

/* Breadcrumb */
.iv-crumb{ background:var(--iv-wash); border-bottom:1px solid var(--iv-line); padding:.55rem 0; font-family:var(--iv-sans); font-size:.78rem; }
.iv-crumb__list{ display:flex; align-items:center; flex-wrap:wrap; gap:0; list-style:none; margin:0; padding:0; }
.iv-crumb__item{ display:flex; align-items:center; }
.iv-crumb__item+.iv-crumb__item::before{ content:'/'; color:#ccc; margin:0 .5rem; font-size:.7rem; }
.iv-crumb__item a{ color:var(--iv-mid); text-decoration:none; display:inline-flex; align-items:center; gap:.25rem; transition:color .15s; }
.iv-crumb__item a::after{ display:none !important; }
.iv-crumb__item a:hover{ color:var(--iv-brand); }
.iv-crumb__item--active{ color:var(--iv-muted); }

/* Banner */
.iv-banner{ background:var(--iv-bg); border-bottom:1px solid var(--ar-line,#e0e0e0); padding:2rem 0 1.75rem; }
.iv-banner__top{ display:flex; align-items:center; gap:.6rem; font-family:var(--iv-sans); font-size:.68rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--iv-accent); border-top:none; padding-top:0; margin-bottom:.9rem; width:fit-content; }
.iv-banner__vol{ font-family:var(--iv-serif); font-size:2rem; font-weight:500; color:var(--iv-ink); line-height:1.15; margin-bottom:.4rem; }
@media(min-width:768px){ .iv-banner__vol{ font-size:2.4rem; } }
.iv-banner__meta{ display:flex; align-items:center; flex-wrap:wrap; gap:1rem; font-family:var(--iv-sans); font-size:.82rem; color:var(--iv-muted); margin-bottom:1.1rem; }
.iv-banner__meta span{ display:inline-flex; align-items:center; gap:.3rem; }
.iv-count-badge{ display:inline-flex; align-items:center; gap:.3rem; background:var(--iv-wash); border:1px solid var(--iv-line); border-radius:2px; padding:.25rem .65rem; font-family:var(--iv-sans); font-size:.75rem; color:var(--iv-muted); }
.iv-banner__actions{ display:flex; gap:.6rem; flex-wrap:wrap; }
.iv-btn{ display:inline-flex; align-items:center; gap:.3rem; font-family:var(--iv-sans); font-size:.8rem; font-weight:600; text-decoration:none; padding:.38rem .9rem; border-radius:2px; border:1.5px solid; transition:background .15s,color .15s; white-space:nowrap; }
.iv-btn::after{ display:none !important; }
.iv-btn--brand{ background:var(--iv-brand); border-color:var(--iv-brand); color:#fff!important; }
.iv-btn--brand:hover{ background:#005060; border-color:#005060; text-decoration:none; }
.iv-btn--ghost{ background:transparent; border-color:var(--iv-line); color:var(--iv-mid)!important; }
.iv-btn--ghost:hover{ border-color:var(--iv-brand); color:var(--iv-brand)!important; text-decoration:none; }

/* Body grid */
.iv-body{ padding:0 0 3rem; background:var(--iv-bg); }
.iv-body__grid{ display:grid; grid-template-columns:1fr; gap:0; }
@media(min-width:992px){ .iv-body__grid{ grid-template-columns:220px 1fr; gap:0; } }

/* TOC sidebar */
.iv-toc{ border-right:1px solid var(--iv-line); padding:2rem 1.5rem 2rem 0; }
@media(max-width:991px){ .iv-toc{ display:none; } }
.iv-toc-wrap{ position:sticky; top:120px; }
.iv-toc__head{ font-family:var(--iv-sans); font-size:.66rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--iv-muted); border-top:2px solid var(--iv-ink); padding-top:.35rem; margin-bottom:.85rem; }
.iv-toc__list{ list-style:none; padding:0; margin:0; }
.iv-toc__list li{ margin-bottom:.1rem; }
.iv-toc__link{ display:flex; align-items:baseline; justify-content:space-between; gap:.5rem; font-family:var(--iv-sans); font-size:.82rem; color:var(--iv-mid); text-decoration:none; padding:.35rem .5rem; border-left:2px solid transparent; border-radius:0 2px 2px 0; transition:color .15s,border-color .15s,background .15s; line-height:1.3; }
.iv-toc__link::after{ display:none !important; }
.iv-toc__link:hover{ color:var(--iv-brand); background:rgba(0,59,68,.04); border-left-color:var(--iv-brand); text-decoration:none; }
.iv-toc__link.is-active{ color:var(--iv-brand); font-weight:600; border-left-color:var(--iv-accent); background:rgba(204,0,0,.04); }
.iv-toc__count{ font-size:.7rem; color:#bbb; background:var(--iv-wash); border:1px solid var(--iv-line); border-radius:2px; padding:0 .35rem; flex-shrink:0; }

/* Main */
.iv-main{ padding:2rem 0; }
@media(min-width:992px){ .iv-main{ padding:2rem 0 2rem 2.5rem; } }

/* Mobile filter */
.iv-mobile-filter{ display:none; padding:.75rem 0; border-bottom:1px solid var(--iv-line); background:var(--iv-wash); }
@media(max-width:991px){ .iv-mobile-filter{ display:block; } }
.iv-mobile-filter select{ font-family:var(--iv-sans); font-size:.82rem; border:1.5px solid var(--iv-line); border-radius:2px; padding:.42rem .75rem; color:var(--iv-ink); background:#fff; outline:none; width:100%; max-width:360px; transition:border-color .15s; }
.iv-mobile-filter select:focus{ border-color:var(--iv-brand); }

/* Section heading */
.iv-sec-head{ display:flex; align-items:baseline; gap:.75rem; border-top:1px solid var(--ar-line,#e0e0e0); padding-top:.4rem; margin-top:2.25rem; margin-bottom:1rem; }
.iv-sec-head:first-child{ margin-top:0; }
.iv-sec-head__name{ font-family:var(--iv-serif); font-size:1.1rem; font-weight:600; color:var(--iv-ink); letter-spacing:-.01em; }
.iv-sec-head__n{ font-family:var(--iv-sans); font-size:.7rem; color:var(--iv-muted); margin-left:auto; white-space:nowrap; }

/* Member row — mirrors iv-art exactly */
.iv-mem{ padding:1.25rem 0; border-bottom:1px solid var(--iv-line); }
.iv-mem:first-of-type{ border-top:1px solid var(--iv-line); }

.iv-mem__role{ display:inline-flex; align-items:center; gap:.3rem; font-family:var(--iv-sans); font-size:.66rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#1a5c44; margin-bottom:.45rem; }
.iv-mem__role i{ font-size:.75rem; }

.iv-mem__top{ display:flex; align-items:flex-start; gap:.85rem; margin-bottom:.35rem; }
.iv-mem__avatar{ flex-shrink:0; width:42px; height:42px; border-radius:2px; background:linear-gradient(135deg,var(--iv-brand) 0%,#005060 100%); color:#fff; font-family:var(--iv-serif); font-size:.88rem; font-weight:600; display:inline-flex; align-items:center; justify-content:center; letter-spacing:.03em; }
.iv-mem__name{ font-family:var(--iv-serif); font-size:1.08rem; font-weight:500; line-height:1.25; color:var(--iv-ink); margin:0 0 .18rem; }
.iv-mem__aff{ font-family:var(--iv-sans); font-size:.8rem; color:var(--iv-muted); display:flex; align-items:flex-start; gap:.28rem; line-height:1.4; }
.iv-mem__aff i{ margin-top:.1rem; flex-shrink:0; font-size:.75rem; }

.iv-mem__bio{ font-family:var(--iv-sans); font-size:.82rem; color:var(--iv-mid); line-height:1.6; margin:.3rem 0 .65rem; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }

/* Action buttons — mirrors iv-art__btn */
.iv-mem__actions{ display:flex; gap:.45rem; flex-wrap:wrap; }
.iv-mem__btn{ display:inline-flex; align-items:center; gap:.25rem; font-family:var(--iv-sans); font-size:.75rem; font-weight:600; text-decoration:none; padding:.3rem .75rem; border-radius:2px; border:1.5px solid; transition:background .15s,color .15s; white-space:nowrap; background:transparent; }
.iv-mem__btn::after{ display:none !important; }
.iv-mem__btn--orcid { border-color:rgba(166,206,57,.7); color:#5a8b00!important; }
.iv-mem__btn--orcid:hover { background:#a6ce39; color:#fff!important; border-color:#a6ce39; text-decoration:none; }
.iv-mem__btn--gs    { border-color:rgba(66,133,244,.5); color:#1a56db!important; }
.iv-mem__btn--gs:hover { background:#4285f4; color:#fff!important; border-color:#4285f4; text-decoration:none; }
.iv-mem__btn--scopus{ border-color:rgba(240,128,0,.5); color:#c06000!important; }
.iv-mem__btn--scopus:hover { background:#f08000; color:#fff!important; border-color:#f08000; text-decoration:none; }
.iv-mem__btn--email { border-color:var(--iv-line); color:var(--iv-mid)!important; }
.iv-mem__btn--email:hover { border-color:var(--iv-brand); color:var(--iv-brand)!important; text-decoration:none; }

/* Search bar */
.iv-search-bar{ display:flex; align-items:center; gap:.65rem; margin-bottom:1.5rem; flex-wrap:wrap; }
.iv-search-wrap{ position:relative; flex:1 1 240px; max-width:380px; }
.iv-search-wrap i{ position:absolute; left:.7rem; top:50%; transform:translateY(-50%); color:#bbb; font-size:.82rem; pointer-events:none; }
.iv-search-input{ width:100%; border:1.5px solid var(--iv-line); border-radius:2px; padding:.4rem .75rem .4rem 2rem; font-family:var(--iv-sans); font-size:.84rem; color:var(--iv-ink); outline:none; background:#fafafa; transition:border-color .15s; }
.iv-search-input:focus{ border-color:var(--iv-brand); background:#fff; }
.iv-search-input::placeholder{ color:#bbb; }
.iv-search-count{ font-family:var(--iv-sans); font-size:.78rem; color:var(--iv-muted); margin-left:auto; white-space:nowrap; }

/* Empty */
.iv-empty{ padding:3rem 0; text-align:center; font-family:var(--iv-sans); color:var(--iv-muted); font-size:.9rem; }
.iv-empty i{ font-size:2rem; display:block; margin-bottom:.5rem; opacity:.3; }

/* ── Article list ────────────────────────────────────────── */


/* Section heading */
.iv-sec-head{
  display     : flex; align-items:baseline; gap:.75rem;
  border-top: 1px solid var(--ar-line,#e0e0e0);
  padding-top : .4rem;
  margin-top  : 2rem; margin-bottom:1rem;
}


/* Article row */
.iv-art{
  padding     : 1.25rem 0;
  border-bottom: 1px solid var(--iv-line);
}
.iv-art:first-of-type{ border-top:1px solid var(--iv-line); }
.iv-art__oa{
  display     : inline-flex; align-items:center; gap:.3rem;
  font-family : var(--iv-sans); font-size:.66rem; font-weight:700;
  letter-spacing:.06em; text-transform:uppercase;
  color       : #1a7340;
  margin-bottom:.45rem;
}
.iv-art__oa i{ font-size:.75rem; }
.iv-art__section{
  margin-left:.5rem; padding:1px 7px;
  background:rgba(0,59,68,.07); color:#003b44;
  border:1px solid rgba(0,59,68,.15); border-radius:3px;
  font-size:.62rem; font-weight:700;
  letter-spacing:.05em; text-transform:uppercase;
}
.iv-art__title{
  font-family   : var(--iv-serif); font-size:1.1rem; font-weight:500;
  line-height   : 1.3; color:var(--iv-ink);
  text-decoration:none; display:block; margin-bottom:.35rem;
}
.iv-art__title:hover{ color:var(--iv-brand); text-decoration:none; }
.iv-art__authors{
  font-family : var(--iv-sans); font-size:.82rem;
  color       : var(--iv-muted); margin-bottom:.3rem;
}
.iv-art__meta{
  display     : flex; align-items:center; flex-wrap:wrap;
  gap         : .5rem 1.25rem; font-size:.76rem;
  color       : var(--iv-muted); margin-bottom:.65rem;
}
.iv-art__meta a{ color:var(--iv-brand); text-decoration:none; }
.iv-art__meta a:hover{ text-decoration:underline; }
.iv-art__meta span{ display:inline-flex; align-items:center; gap:.25rem; }
.iv-art__actions{ display:flex; gap:.5rem; flex-wrap:wrap; }
.iv-art__btn{
  display     : inline-flex; align-items:center; gap:.25rem;
  font-family : var(--iv-sans); font-size:.76rem; font-weight:600;
  text-decoration:none; padding:.32rem .8rem;
  border-radius:2px; border:1.5px solid;
  transition  : background .15s, color .15s; white-space:nowrap;
}
.iv-art__btn--primary{ background:var(--iv-brand); border-color:var(--iv-brand); color:#fff!important; }
.iv-art__btn--primary:hover{ background:#005060; text-decoration:none; }
.iv-art__btn--pdf{ background:transparent; border-color:var(--iv-line); color:var(--iv-mid)!important; }
.iv-art__btn--pdf:hover{ border-color:var(--iv-brand); color:var(--iv-brand)!important; text-decoration:none; }

/* Empty state */


/* Back link */
.iv-back{
  display:inline-flex; align-items:center; gap:.3rem;
  font-family:var(--iv-sans); font-size:.8rem; font-weight:600;
  color:var(--iv-brand); text-decoration:none;
  margin-top:2rem; padding-top:1.5rem;
  border-top:1px solid var(--iv-line);
}
.iv-back:hover{ text-decoration:underline; }

/* Mobile section filter (visible <992px) */


:root{
  --ia-brand  :#003b44;
  --ia-accent :#c00;
  --ia-ink    :#111;
  --ia-mid    :#444;
  --ia-muted  :#767676;
  --ia-line   :#e0e0e0;
  --ia-bg     :#fff;
  --ia-wash   :#f7f7f7;
  --ia-serif  :'EB Garamond',Georgia,serif;
  --ia-sans   :'Source Sans 3','Helvetica Neue',Arial,sans-serif;
  --ia-max    :1280px;
  --ia-ease   :cubic-bezier(.4,0,.2,1);
}
.ia *{ box-sizing:border-box; }
.ia a{ color:inherit; }
.ia-w{ max-width:var(--ia-max); margin:0 auto; padding:0 1.25rem; }
@media(min-width:768px){ .ia-w{ padding:0 2rem; } }

/* ── Breadcrumb ──────────────────────────────────────────── */
.ia-crumb{
  background    : var(--ia-wash);
  border-bottom : 1px solid var(--ia-line);
  padding       : .55rem 0;
  font-family   : var(--ia-sans);
  font-size     : .78rem;
}
.ia-crumb__list{
  display:flex; align-items:center; flex-wrap:wrap;
  gap:0; list-style:none; margin:0; padding:0;
}
.ia-crumb__item{ display:flex; align-items:center; }
.ia-crumb__item + .ia-crumb__item::before{
  content:'/'; color:#ccc; margin:0 .5rem; font-size:.7rem;
}
.ia-crumb__item a{
  color:var(--ia-mid); text-decoration:none;
  display:inline-flex; align-items:center; gap:.25rem;
  transition:color .15s;
}
.ia-crumb__item a:hover{ color:var(--ia-brand); }
.ia-crumb__item--active{ color:var(--ia-muted); }

/* ── Page banner ─────────────────────────────────────────── */
.ia-banner{
  background:var(--ia-bg);
  border-bottom:1px solid var(--ar-line,#e0e0e0);
  padding:2rem 0 1.75rem;
}
.ia-banner__eyebrow{
  display:inline-flex; align-items:center; gap:.6rem;
  font-family:var(--ia-sans); font-size:.68rem; font-weight:700;
  letter-spacing:.1em; text-transform:uppercase;
  color:var(--ia-accent);
  border-top:none;
  padding-top:.3rem; margin-bottom:.9rem;
}
.ia-banner__title{
  font-family:var(--ia-serif); font-size:2rem; font-weight:500;
  color:var(--ia-ink); line-height:1.15; margin-bottom:.4rem;
}
@media(min-width:768px){ .ia-banner__title{ font-size:2.4rem; } }
.ia-banner__sub{
  font-family:var(--ia-sans); font-size:.85rem;
  color:var(--ia-muted); margin-bottom:1.1rem;
}
.ia-count-badge{
  display:inline-flex; align-items:center; gap:.3rem;
  background:var(--ia-wash); border:1px solid var(--ia-line);
  border-radius:2px; padding:.25rem .65rem;
  font-family:var(--ia-sans); font-size:.75rem;
  color:var(--ia-muted);
}

/* ── Issue list ──────────────────────────────────────────── */
.ia-body{ padding:0 0 3rem; background:var(--ia-bg); }
.ia-list{ padding:1.5rem 0 0; }

.ia-issue{
  padding:1.25rem 0;
  border-bottom:1px solid var(--ia-line);
  display:flex; align-items:flex-start; gap:1.25rem;
}
.ia-issue:first-child{ border-top:1px solid var(--ia-line); }

/* left: year badge */
.ia-issue__badge{
  flex-shrink:0;
  width:56px; height:56px;
  background:var(--ia-wash); border:1.5px solid var(--ia-line);
  border-radius:4px;
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  font-family:var(--ia-sans);
}
.ia-issue__badge-year{
  font-size:.75rem; font-weight:700; color:var(--ia-brand);
  line-height:1;
}
.ia-issue__badge-icon{
  font-size:1.2rem; color:var(--ia-line); margin-top:.15rem;
}

/* right: content */
.ia-issue__body{ flex:1; min-width:0; }

.ia-issue__oa{
  display:inline-flex; align-items:center; gap:.3rem;
  font-family:var(--ia-sans); font-size:.66rem; font-weight:700;
  letter-spacing:.06em; text-transform:uppercase;
  color:#1a7340; margin-bottom:.4rem;
}
.ia-issue__title{
  font-family:var(--ia-serif); font-size:1.1rem; font-weight:500;
  line-height:1.3; color:var(--ia-ink);
  text-decoration:none; display:block; margin-bottom:.35rem;
}
.ia-issue__title:hover{ color:var(--ia-brand); text-decoration:none; }

.ia-issue__meta{
  display:flex; align-items:center; flex-wrap:wrap;
  gap:.5rem 1.25rem; font-size:.76rem;
  color:var(--ia-muted); margin-bottom:.65rem;
}
.ia-issue__meta span{ display:inline-flex; align-items:center; gap:.25rem; }

.ia-issue__desc{
  font-family:var(--ia-sans); font-size:.82rem;
  color:var(--ia-mid); line-height:1.5; margin-bottom:.65rem;
}

.ia-issue__actions{ display:flex; gap:.5rem; flex-wrap:wrap; }
.ia-issue__btn{
  display:inline-flex; align-items:center; gap:.25rem;
  font-family:var(--ia-sans); font-size:.76rem; font-weight:600;
  text-decoration:none; padding:.32rem .8rem;
  border-radius:2px; border:1.5px solid;
  transition:background .15s, color .15s; white-space:nowrap;
}
.ia-issue__btn--primary{
  background:var(--ia-brand); border-color:var(--ia-brand); color:#fff!important;
}
.ia-issue__btn--primary:hover{ background:#005060; border-color:#005060; text-decoration:none; }
.ia-issue__btn--ghost{
  background:transparent; border-color:var(--ia-line); color:var(--ia-mid)!important;
}
.ia-issue__btn--ghost:hover{ border-color:var(--ia-brand); color:var(--ia-brand)!important; text-decoration:none; }

/* empty state */
.ia-empty{
  padding:3rem 0; text-align:center;
  font-family:var(--ia-sans); color:var(--ia-muted); font-size:.9rem;
}
.ia-empty i{ font-size:2rem; display:block; margin-bottom:.5rem; opacity:.3; }

/* ── Pagination ──────────────────────────────────────────── */
.ia-pagination{
  display:flex; align-items:center; justify-content:center;
  gap:.35rem; padding:2rem 0 0;
  flex-wrap:wrap;
}
.ia-pagination__link{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:34px; height:34px; padding:0 .5rem;
  font-family:var(--ia-sans); font-size:.8rem; font-weight:600;
  border:1.5px solid var(--ia-line); border-radius:2px;
  color:var(--ia-mid); text-decoration:none;
  transition:border-color .15s, color .15s, background .15s;
}
.ia-pagination__link:hover{
  border-color:var(--ia-brand); color:var(--ia-brand); background:rgba(0,59,68,.04);
  text-decoration:none;
}
.ia-pagination__link.is-active{
  background:var(--ia-brand); border-color:var(--ia-brand); color:#fff!important;
}
.ia-pagination__dots{
  font-family:var(--ia-sans); font-size:.8rem; color:var(--ia-muted);
  padding:0 .25rem;
}

@media (max-width: 575.98px) {
  .ph-brand__inner {
    flex-wrap: nowrap;
    align-items: center;
  }
  .ph-brand__identity {
    flex: 1 1 0;
    min-width: 0;
    overflow: visible;
  }
  .ph-brand__actions {
    flex-shrink: 0;
  }
}
/* ═══════════════════════════════════════════════════════════════
   EMBO-STYLE JOURNAL HERO  (jh-)
   Add this block anywhere in app.css (after the jp- variables
   block works best).
   ═══════════════════════════════════════════════════════════════ */

/* ── Outer wrap ─────────────────────────────────────────────── */
.jh-wrap {
  background: #071e26;          /* deeper dark teal — better match with cover */
  border-bottom: 1px solid var(--ar-line, #e0e0e0);
}

/* ── Inner flex row ─────────────────────────────────────────── */
.jh-inner {
  display: flex;
  align-items: stretch;         /* stretch so left col matches right col height */
  gap: 2rem;
  padding-top: 1.75rem;
  padding-bottom: 1.75rem;
}
@media (max-width: 640px) {
  .jh-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.25rem;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}

/* ── Left column: cover ─────────────────────────────────────── */
.jh-left {
  flex-shrink: 0;
  display: flex;               /* flex so cover can stretch full height */
  align-self: stretch;         /* stretch to match right column height */
}
.jh-cover {
  width: 150px;
  height: 100%;                /* fill full height of left column */
  min-height: unset;           /* remove fixed min-height */
  object-fit: cover;
  display: block;
  border: 2px solid rgba(255,255,255,0.18);
  border-radius: 3px;
  box-shadow: 0 6px 20px rgba(0,0,0,0.35);
}
@media (max-width: 640px) {
  .jh-left {
    align-self: auto;
  }
  .jh-cover {
    width: 80px;
    height: auto;              /* auto on mobile */
  }
}
.jh-cover--placeholder {
  width: 130px;
  height: 100%;
  min-height: 140px;
  background: rgba(255,255,255,0.08);
  border: 2px solid rgba(255,255,255,0.15);
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.jh-cover--placeholder span {
  font-family: var(--jp-serif, 'EB Garamond', Georgia, serif);
  font-size: 2rem;
  font-weight: 600;
  color: rgba(255,255,255,0.55);
  letter-spacing: .04em;
}

/* ── Right column: identity ─────────────────────────────────── */
.jh-right {
  flex: 1;
  min-width: 0;
  padding-top: .15rem;
}

/* Breadcrumb */
.jh-breadcrumb {
  font-family: var(--jp-sans, 'Source Sans 3', Arial, sans-serif);
  font-size: .75rem;
  color: rgba(255,255,255,0.5);
  margin-bottom: .6rem;
  display: flex;
  align-items: center;
  gap: .35rem;
  flex-wrap: wrap;
}
.jh-breadcrumb a {
  color: rgba(255,255,255,0.6) !important;
  text-decoration: none;
  transition: color .15s;
}
.jh-breadcrumb a:hover { color: #fff !important; text-decoration: underline; }
.jh-breadcrumb a::after { display: none !important; }
.jh-bc-sep { color: rgba(255,255,255,0.3); font-size: .7rem; }

/* Title */
.jh-title {
  font-family: var(--jp-serif, 'EB Garamond', Georgia, serif);
  font-size: clamp(1.5rem, 3vw, 2.2rem);
  font-weight: 600;
  color: #fff;
  line-height: 1.2;
  margin: 0 0 .65rem;
  letter-spacing: -.01em;
}

.jh-readmore{
  display:inline !important;
  color:#19d3e0 !important;
  font-weight:600;
  text-decoration:none;
  margin-left:4px;
}

.jh-readmore:hover{
  text-decoration:underline;
}
/* Publishing model */
.jh-model {
  font-family: var(--jp-sans, 'Source Sans 3', Arial, sans-serif);
  font-size: .82rem;
  color: rgba(255,255,255,0.55);
  margin-bottom: 1.1rem;
  display: flex;
  align-items: center;
  gap: .45rem;
  flex-wrap: wrap;
}
.jh-model__label {
  color: rgba(255,255,255,0.45);
}
.jh-model__val {
  color: #7ff7ea !important;
  text-decoration: none;
  font-weight: 600;
  border-bottom: 1px solid rgba(127,247,234,0.35);
  transition: border-color .15s, color .15s;
}
.jh-model__val::after { display: none !important; }
.jh-model__val:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,0.6);
}

/* Submit CTA button */
.jh-submit-btn {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-family: var(--jp-sans, 'Source Sans 3', Arial, sans-serif);
  font-size: .9rem;
  font-weight: 700;
  color: #0b2a35 !important;
  background: #fff;
  border: none;
  border-radius: 3px;
  padding: .55rem 1.3rem;
  text-decoration: none;
  white-space: nowrap;
  transition: background .15s, color .15s, box-shadow .15s;
  box-shadow: 0 2px 8px rgba(0,0,0,0.18);
  letter-spacing: .01em;
}
.jh-submit-btn::after { display: none !important; }
.jh-submit-btn:hover {
  background: #e8f8f6;
  color: #003b44 !important;
  text-decoration: none;
  box-shadow: 0 4px 14px rgba(0,0,0,0.22);
}
.jh-arrow {
  font-size: 1.1em;
  line-height: 1;
  transition: transform .15s;
}
.jh-submit-btn:hover .jh-arrow {
  transform: translateX(3px);
}

/* ── Stats bar ──────────────────────────────────────────────── */
.jh-stats-bar {
  background: transparent;
  border-top: 1px solid rgba(255,255,255,0.08);
	border-bottom: 3px solid var(--ph-accent,#c00) !important;
}
.jh-stats-inner {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0;
  padding-top: 0;
  padding-bottom: 0;
  min-height: 52px;
}

/* Left: OA links */
.jh-stats-left {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  padding: .7rem 0;
}

/* OA link (left side) */
.jh-oa-link {
  font-family: var(--jp-sans, 'Source Sans 3', Arial, sans-serif);
  font-size: .78rem;
  font-weight: 600;
  color: rgba(255,255,255,0.65) !important;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  transition: color .15s;
  white-space: nowrap;
}
.jh-oa-link::after { display: none !important; }
.jh-oa-link i { font-size: .8rem; }
.jh-oa-link:hover { color: #fff !important; text-decoration: underline; }

/* Right stats cluster */
.jh-stats-right {
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  gap: 0;
  background: linear-gradient(to right, rgba(17, 214, 177, 0.25) 0%, rgba(0,0,0,0.65) 100%);
  margin-right: -1.25rem;
  padding-right: 1.25rem;
}
@media (min-width: 768px) {
  .jh-stats-right {
    margin-right: -4rem;
    padding-right: 2rem;
  }
}

/* Each stat block */
.jh-stat {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: .1rem;
  padding: .75rem 1.6rem;
  border-left: 1px solid rgba(255,255,255,0.10);
}
.jh-stat:first-child {
  border-left: none;
}
@media (max-width: 640px) {
  .jh-stats-bar {
    background: linear-gradient(to bottom, #071e26 0%, #0d0d0d 100%);
  }
  .jh-stats-right { /*! flex-wrap: wrap; */ /*! width: 100%; */ }
  .jh-stat { padding: .6rem 1rem; }
  .jh-stat:first-child { border-left: none; }
}
.jh-stat__val {
  font-family: var(--jp-sans, 'Source Sans 3', Arial, sans-serif);
  font-size: .95rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  letter-spacing: .01em;
}
.jh-stat__label {
  font-family: var(--jp-sans, 'Source Sans 3', Arial, sans-serif);
  font-size: .72rem;
  color: rgba(255,255,255,0.50);
  letter-spacing: .01em;
  line-height: 1.2;
  font-weight: 400;
}

/* ── Responsive tweaks ──────────────────────────────────────── */
@media (max-width: 480px) {
  .jh-title { font-size: 1.35rem; }
  .jh-submit-btn { font-size: .82rem; padding: .48rem 1rem; width: 100%; justify-content: center; }
  .jh-stats-right { gap: .75rem; }
  .jh-stat__val { font-size: .95rem; }
}
/* iv-toc-inner — sticky TOC (PHP exact) */
.iv-toc-inner{position:sticky;top:calc(var(--page-offset,0px) + var(--iv-toolbar-h,52px) + 1.25rem);padding-right:1.75rem;max-height:calc(100vh - var(--page-offset,0px) - 52px - 2.5rem);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--iv-line,#e0e0e0) transparent;}
.iv-toc-inner::-webkit-scrollbar{width:3px;}
.iv-toc-inner::-webkit-scrollbar-thumb{background:var(--iv-line,#e0e0e0);}

/* ar-lb — article lightbox (PHP exact) */
.ar-lb{display:flex;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.85);align-items:center;justify-content:center;padding:1rem;}
.ar-lb-inner{background:#fff;border-radius:8px;padding:1.1rem 1.25rem;max-width:min(88vw,700px);max-height:88vh;overflow:auto;position:relative;}
.ar-lb-close{position:absolute;top:.4rem;right:.7rem;background:none;border:none;font-size:1.3rem;cursor:pointer;color:#666;line-height:1;padding:.2rem .4rem;border-radius:3px;}
.ar-lb-close:hover{color:#111;background:#f7f7f7;}
.ar-lb-img{max-width:100%;height:auto;display:block;margin:0 auto;}
.ar-lb-cap{font-size:.78rem;color:#767676;margin-top:.5rem;text-align:center;line-height:1.45;}
.ar-lb-nav{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:.6rem;padding-top:.6rem;border-top:1px solid #e0e0e0;}
.ar-lb-btn{background:#f7f7f7;border:1px solid #e0e0e0;border-radius:4px;padding:.2rem .65rem;cursor:pointer;font-size:1rem;color:#444;line-height:1.4;transition:border-color .13s,color .13s;}
.ar-lb-btn:hover:not(:disabled){border-color:#003b44;color:#003b44;}
.ar-lb-btn:disabled{opacity:.35;cursor:not-allowed;}
.ar-lb-counter{font-size:.74rem;color:#767676;min-width:80px;text-align:center;}

/* ph-nav border — red bottom */
.ph-nav { border-bottom: 3px solid var(--ph-accent, #c00) !important; }

/* ar-toolbar scrollable on mobile */
@media(max-width:1023px){
  .ar-toolbar{overflow-x:auto;overflow-y:visible;scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;white-space:nowrap;}
  .ar-toolbar::-webkit-scrollbar{display:none;}
  .ar-sidebar{display:block;}
}

/* ar-dd-doi small text */
.ar-dd-doi{font-size:.74rem;}

/* ar-metarow-journal bold */
.ar-metarow-journal{font-weight:600;color:var(--ar-ink,#111)!important;}

/* ar-citations-badge */
.ar-citations-badge{background:var(--ar-wash,#f7f7f7);border:1px solid var(--ar-line,#e0e0e0);border-radius:3px;padding:.16rem .48rem;font-size:.74rem;}

/* ar-eyebrow PHP exact */

.ar-badge-type{display:inline-flex;align-items:center;padding:.2rem .7rem;background:var(--ar-brand,#003b44);color:#fff;font-family:var(--ar-sans,'DM Sans',sans-serif);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:2px;}
.ar-badge-oa{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .7rem;background:rgba(26,115,64,.08);border:1px solid rgba(26,115,64,.25);color:#1a7340;font-family:var(--ar-sans,'DM Sans',sans-serif);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:2px;}

/* ar-orcid-icon */


/* ar-auto-badge */
.ar-auto-badge{font-size:.6em;opacity:.7;margin-left:.15rem;vertical-align:middle;}

/* sdref highlight flash */
.sdref-highlight-flash{animation:sdref-flash 1.6s ease-out;}
@keyframes sdref-flash{0%{background:#fff3b0;}100%{background:transparent;}}

/* ar-crumb PHP exact */
.ar-crumb{background:var(--ar-wash,#f7f7f7);border-bottom:1px solid var(--ar-line,#e0e0e0);padding:.45rem 0;font-size:.75rem;}


.ar-crumb a{color:var(--ar-mid,#444);text-decoration:none;display:inline-flex;align-items:center;gap:.25rem;font-weight:600;}
.ar-crumb a:hover{color:var(--ar-brand,#003b44);}
.ar-crumb-cur{color:var(--ar-muted,#767676);}

/* ar-header PHP exact */
.ar-header{padding:1.75rem 0 0;border-bottom:1px solid var(--ar-line,#e0e0e0);}


.ar-achip{background:none;border:none;cursor:pointer;font-size:.875rem;color:var(--ar-brand,#003b44);font-family:var(--ar-sans,'DM Sans',sans-serif);padding:.1rem .2rem;text-decoration:underline;text-decoration-color:rgba(0,59,68,.25);}
.ar-achip:hover{color:var(--ar-accent,#c00);}
.ar-achip sup{color:var(--ar-accent,#c00);font-size:.65em;}
.ar-asep{color:var(--ar-muted,#767676);margin-right:.25rem;}

.ac-hidden { display: none !important; }

/* ar-tdrop mobile — fixed position from toolbar bottom */
.ar-toolbar-wrap { overflow: visible !important; }
@media (max-width: 1023px) {
  .ar-toolbar { overflow-x: auto; overflow-y: visible; }
  .ar-tdrop { position: static; display: inline-flex; }
  .ar-tdrop-menu {
    position: fixed !important;
    top: var(--ar-drop-top, 60px) !important;
    left: 0.5rem !important;
    right: 0.5rem !important;
    width: auto !important;
    min-width: unset !important;
    max-width: calc(100vw - 1rem) !important;
    z-index: 9999 !important;
    max-height: 60vh;
    overflow-y: auto;
    border-radius: 8px;
  }
  .ar-tdrop.open .ar-tdrop-menu { display: block !important; }
}

/* Hide figures wrap by default — JS reveals it when figures found */
#ar-sb-figs-wrap { display: none; }

#ar-sb-figs-wrap.ar-has-figs { display: block; }

/* ── SiteHeader inline style replacements ──────────────────────────────────── */
.ph-nav__link-inner { display:inline-flex; align-items:center; gap:.25rem; }
.ph-nav__chev { font-size:.6rem; opacity:.5; display:inline-block; transition:transform .2s; }
.ph-nav__chev.open { transform:rotate(180deg); }
.ph-nav__mobile-row { display:flex; align-items:center; justify-content:space-between; }
.ph-nav__mobile-chev { background:none; border:none; cursor:pointer; padding:0 1rem; color:var(--ph-muted); font-size:.7rem; display:inline-block; transition:transform .2s; }
.ph-nav__mobile-chev.open { transform:rotate(180deg); }
.ph-nav__mobile-auth { padding:.75rem 1.25rem; border-top:1px solid var(--ph-border); display:flex; flex-direction:column; gap:.25rem; }


/* =============================================================================
   LOGIN / REGISTER PAGE — lc-* classes
   ============================================================================= */
:root {
  --lc-brand: #003b44;
  --lc-accent: #c00;
  --lc-ink: #111;
  --lc-mid: #444;
  --lc-muted: #767676;
  --lc-line: #e0e0e0;
  --lc-wash: #f7f8fa;
  --lc-sans: 'DM Sans','Source Sans 3',Arial,sans-serif;
  --lc-serif: 'EB Garamond','Spectral',Georgia,serif;
}

.lc-page {
  min-height: calc(100vh - 200px);
  background: var(--lc-wash);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2.5rem 1rem;
}

.lc-grid {
  display: grid;
  grid-template-columns: 1fr;
  width: 100%;
  max-width: 960px;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 8px 40px rgba(0,0,0,.10);
}
@media(min-width: 768px) {
  .lc-grid { grid-template-columns: 1fr 1fr; }
}

/* Hero left panel */
.lc-hero {
  background: linear-gradient(140deg, var(--lc-brand) 0%, #005060 100%);
  padding: 3rem 2.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
}
@media(max-width: 767px) { .lc-hero { padding: 2rem 1.5rem; } }

.lc-hero-tag {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-family: var(--lc-sans);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(255,255,255,.6);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 2px;
  padding: .2rem .65rem;
  width: fit-content;
}
.lc-hero h2 {
  font-family: var(--lc-serif);
  font-size: 1.75rem;
  font-weight: 500;
  color: #fff;
  line-height: 1.25;
  margin: 0;
}
.lc-hero p {
  font-family: var(--lc-sans);
  font-size: .875rem;
  color: rgba(255,255,255,.7);
  line-height: 1.65;
  margin: 0;
}
.lc-hero-note { font-family: var(--lc-sans); font-size: .82rem; color: rgba(255,255,255,.55); }
.lc-hero-link {
  font-family: var(--lc-sans);
  font-size: .82rem;
  font-weight: 600;
  color: #7ff7ea;
  text-decoration: none;
}
.lc-hero-link:hover { text-decoration: underline; }

/* Form right panel */
.lc-form {
  padding: 2.75rem 2.5rem;
  display: flex;
  flex-direction: column;
  gap: .85rem;
}
@media(max-width: 767px) { .lc-form { padding: 2rem 1.5rem; } }

.lc-title {
  font-family: var(--lc-serif);
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--lc-ink);
  margin-bottom: .1rem;
}

/* Google button */
.lc-google {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .65rem;
  width: 100%;
  padding: .65rem 1rem;
  border: 1.5px solid var(--lc-line);
  border-radius: 6px;
  background: #fff;
  font-family: var(--lc-sans);
  font-size: .875rem;
  font-weight: 600;
  color: var(--lc-ink);
  cursor: pointer;
  transition: border-color .15s, box-shadow .15s;
}
.lc-google:hover { border-color: #aaa; box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.lc-google:disabled { opacity: .6; cursor: not-allowed; }

/* Divider */
.lc-divider {
  display: flex;
  align-items: center;
  gap: .75rem;
  font-family: var(--lc-sans);
  font-size: .75rem;
  color: var(--lc-muted);
  margin: .1rem 0;
}
.lc-divider::before, .lc-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--lc-line);
}

/* Form fields */
.lc-field { display: flex; flex-direction: column; gap: .3rem; }
.lc-label {
  font-family: var(--lc-sans);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--lc-muted);
}
.lc-input, .lc-select {
  width: 100%;
  border: 1.5px solid var(--lc-line);
  border-radius: 6px;
  padding: .6rem .85rem;
  font-family: var(--lc-sans);
  font-size: .9rem;
  color: var(--lc-ink);
  background: #fff;
  outline: none;
  transition: border-color .15s, box-shadow .15s;
}
.lc-input:focus, .lc-select:focus {
  border-color: var(--lc-brand);
  box-shadow: 0 0 0 3px rgba(0,59,68,.1);
}
.lc-input-wrap { position: relative; }
.lc-pw-toggle {
  position: absolute;
  right: .7rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  color: var(--lc-muted);
  padding: .2rem;
  font-size: .75rem;
}
.lc-pw-toggle:hover { color: var(--lc-ink); }

/* Submit button */
.lc-submit {
  width: 100%;
  padding: .7rem 1rem;
  background: var(--lc-brand);
  color: #fff;
  border: none;
  border-radius: 6px;
  font-family: var(--lc-sans);
  font-size: .9rem;
  font-weight: 700;
  cursor: pointer;
  transition: background .15s;
  margin-top: .25rem;
}
.lc-submit:hover { background: #005060; }
.lc-submit:disabled { opacity: .6; cursor: not-allowed; }

/* Messages */
.lc-error {
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-left: 3px solid #ef4444;
  border-radius: 4px;
  padding: .65rem .85rem;
  font-family: var(--lc-sans);
  font-size: .84rem;
  color: #b91c1c;
}
.lc-success {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-left: 3px solid #22c55e;
  border-radius: 4px;
  padding: .65rem .85rem;
  font-family: var(--lc-sans);
  font-size: .84rem;
  color: #15803d;
  display: flex;
  align-items: flex-start;
  gap: .5rem;
}
.lc-success-icon { flex-shrink: 0; }

.lc-forgot {
  text-align: right;
  font-family: var(--lc-sans);
  font-size: .8rem;
}
.lc-forgot a { color: var(--lc-brand); text-decoration: none; }
.lc-forgot a:hover { text-decoration: underline; }

.lc-footer {
  text-align: center;
  font-family: var(--lc-sans);
  font-size: .82rem;
  color: var(--lc-muted);
}
.lc-footer a { color: var(--lc-brand); text-decoration: none; font-weight: 600; }
.lc-footer a:hover { text-decoration: underline; }

/* Step indicator */
.lc-step-bar {
  display: flex;
  align-items: center;
  gap: .4rem;
  margin-bottom: .5rem;
}
.lc-step {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  font-family: var(--lc-sans);
  font-size: .75rem;
  font-weight: 700;
  border: 2px solid var(--lc-line);
  color: var(--lc-muted);
  flex-shrink: 0;
}
.lc-step.active { background: var(--lc-brand); border-color: var(--lc-brand); color: #fff; }
.lc-step.done   { background: #22c55e; border-color: #22c55e; color: #fff; }
.lc-step-line { flex: 1; height: 2px; background: var(--lc-line); }
.lc-step-line.done { background: #22c55e; }

/* Password strength */
.lc-pw-strength { display: flex; gap: 3px; height: 3px; margin-top: .25rem; }
.lc-pw-seg { flex: 1; border-radius: 2px; background: var(--lc-line); }

/* Checkbox / role selector */
.lc-roles { display: flex; flex-wrap: wrap; gap: .5rem; }
.lc-role {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .35rem .75rem;
  border: 1.5px solid var(--lc-line);
  border-radius: 4px;
  font-family: var(--lc-sans);
  font-size: .8rem;
  cursor: pointer;
  transition: border-color .13s, background .13s;
  user-select: none;
}
.lc-role.selected { border-color: var(--lc-brand); background: rgba(0,59,68,.06); color: var(--lc-brand); font-weight: 600; }

/* =============================================================================
   SEARCH PAGE — sc-* classes
   ============================================================================= */
:root {
  --sc-brand: #003b44;
  --sc-accent: #c00;
  --sc-ink: #111;
  --sc-mid: #444;
  --sc-muted: #767676;
  --sc-line: #e0e0e0;
  --sc-wash: #f7f8fa;
  --sc-sans: 'DM Sans','Source Sans 3',Arial,sans-serif;
  --sc-serif: 'EB Garamond','Spectral',Georgia,serif;
  --sc-max: 1200px;
}

/* Search banner */
.sc-banner {
  background: var(--sc-brand);
  padding: 2rem 0 1.75rem;
  border-bottom: 1px solid rgba(255,255,255,.15);
}
.sc-banner__inner {
  max-width: var(--sc-max);
  margin: 0 auto;
  padding: 0 1.5rem;
}
.sc-banner__label {
  font-family: var(--sc-sans);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(255,255,255,.5);
  margin-bottom: .6rem;
  display: flex;
  align-items: center;
  gap: .4rem;
}
.sc-banner__form {
  display: flex;
  max-width: 700px;
  gap: 0;
}
.sc-banner__q {
  flex: 1;
  border: 2px solid rgba(255,255,255,.3);
  border-right: none;
  border-radius: 6px 0 0 6px;
  padding: .75rem 1.1rem;
  font-family: var(--sc-sans);
  font-size: 1rem;
  color: #fff;
  background: rgba(255,255,255,.1);
  outline: none;
  transition: border-color .15s, background .15s;
  -webkit-appearance: none;
}
.sc-banner__q::placeholder { color: rgba(255,255,255,.45); }
.sc-banner__q:focus { border-color: rgba(255,255,255,.7); background: rgba(255,255,255,.15); }
.sc-banner__btn {
  background: #fff;
  color: var(--sc-brand);
  border: none;
  border-radius: 0 6px 6px 0;
  padding: .75rem 1.5rem;
  font-family: var(--sc-sans);
  font-size: .9rem;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
  transition: background .15s;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
}
.sc-banner__btn:hover { background: #e8f8f6; }
.sc-banner__hint {
  font-family: var(--sc-sans);
  font-size: .72rem;
  color: rgba(255,255,255,.45);
  margin-top: .5rem;
}

/* Search body */
.sc-body { padding: 1.75rem 0 3rem; background: #fff; }
.sc-w { max-width: var(--sc-max); margin: 0 auto; padding: 0 1.5rem; }
.sc-layout { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media(min-width: 900px) { .sc-layout { grid-template-columns: 230px 1fr; } }

/* Filters sidebar */
.sc-filters { }
@media(max-width: 899px) { .sc-filters { display: none; } }
.sc-filters__hd {
  font-family: var(--sc-sans);
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--sc-muted);
  border-top: 2px solid var(--sc-ink);
  padding-top: .35rem;
  margin-bottom: .85rem;
}
.sc-filter-group { margin-bottom: 1.25rem; }
.sc-filter-label {
  font-family: var(--sc-sans);
  font-size: .75rem;
  font-weight: 600;
  color: var(--sc-ink);
  margin-bottom: .4rem;
  display: block;
}
.sc-filter-select {
  width: 100%;
  border: 1.5px solid var(--sc-line);
  border-radius: 4px;
  padding: .42rem .65rem;
  font-family: var(--sc-sans);
  font-size: .82rem;
  color: var(--sc-ink);
  background: #fff;
  outline: none;
}
.sc-filter-select:focus { border-color: var(--sc-brand); }

/* Results */
.sc-results { }
.sc-results-hd {
  display: flex;
  align-items: baseline;
  gap: .75rem;
  margin-bottom: 1.25rem;
  padding-bottom: .75rem;
  border-bottom: 1px solid var(--sc-line);
}
.sc-results-count {
  font-family: var(--sc-serif);
  font-size: 1.15rem;
  font-weight: 500;
  color: var(--sc-ink);
}
.sc-results-q { color: var(--sc-accent); }

/* Article result item */
.sc-art {
  padding: 1.1rem 0;
  border-bottom: 1px solid var(--sc-line);
}
.sc-art:first-child { border-top: 1px solid var(--sc-line); }
.sc-art__sec {
  font-family: var(--sc-sans);
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--sc-accent);
  margin-bottom: .2rem;
}
.sc-art__title {
  font-family: var(--sc-serif);
  font-size: 1.05rem;
  font-weight: 500;
  line-height: 1.3;
  color: var(--sc-ink);
  text-decoration: none;
  display: block;
  margin-bottom: .25rem;
}
.sc-art__title:hover { color: var(--sc-brand); }
.sc-art__authors { font-family: var(--sc-sans); font-size: .8rem; color: var(--sc-muted); margin-bottom: .2rem; }
.sc-art__snippet { font-family: var(--sc-sans); font-size: .82rem; color: var(--sc-mid); line-height: 1.55; margin-bottom: .35rem; }
.sc-art__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .4rem 1rem;
  font-family: var(--sc-sans);
  font-size: .75rem;
  color: var(--sc-muted);
}
.sc-art__meta a { color: var(--sc-brand); text-decoration: none; }
.sc-art__meta a:hover { text-decoration: underline; }

/* Empty state */
.sc-empty {
  text-align: center;
  padding: 3.5rem 1rem;
  font-family: var(--sc-sans);
  color: var(--sc-muted);
}
.sc-empty svg { display: block; margin: 0 auto .75rem; opacity: .2; }
.sc-empty__hd { font-family: var(--sc-serif); font-size: 1.3rem; color: var(--sc-ink); margin-bottom: .4rem; }

/* Mobile filters toggle */
.sc-mob-filter {
  display: none;
  margin-bottom: 1rem;
}
@media(max-width: 899px) { .sc-mob-filter { display: block; } }
.sc-mob-filter-btn {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-family: var(--sc-sans);
  font-size: .82rem;
  font-weight: 600;
  color: var(--sc-brand);
  background: none;
  border: 1.5px solid var(--sc-line);
  border-radius: 4px;
  padding: .4rem .85rem;
  cursor: pointer;
}

/* =============================================================================
   AUTHOR PROFILE PAGE — ap-* classes
   ============================================================================= */
:root {
  --ap-brand: #003b44;
  --ap-accent: #c00;
  --ap-ink: #111;
  --ap-mid: #444;
  --ap-muted: #767676;
  --ap-line: #e0e0e0;
  --ap-wash: #f7f8fa;
  --ap-sans: 'DM Sans','Source Sans 3',Arial,sans-serif;
  --ap-serif: 'EB Garamond','Spectral',Georgia,serif;
  --ap-max: 1100px;
}

/* Author banner */
.ap-banner {
  background: linear-gradient(135deg, #071e26 0%, #003b44 60%, #004d5a 100%);
  border-bottom: 1px solid rgba(255,255,255,.15);
  padding: 2.5rem 0 2rem;
}
.ap-banner__inner { max-width: var(--ap-max); margin: 0 auto; padding: 0 1.5rem; display: flex; align-items: flex-start; gap: 1.75rem; }
.ap-avatar {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: rgba(255,255,255,.12);
  border: 3px solid rgba(255,255,255,.25);
  color: #fff;
  font-family: var(--ap-serif);
  font-size: 1.5rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.ap-banner__info { flex: 1; min-width: 0; }
.ap-banner__name {
  font-family: var(--ap-serif);
  font-size: clamp(1.4rem, 3vw, 2rem);
  font-weight: 500;
  color: #fff;
  margin: 0 0 .3rem;
}
.ap-banner__aff {
  font-family: var(--ap-sans);
  font-size: .85rem;
  color: rgba(255,255,255,.65);
  margin-bottom: .5rem;
  display: flex;
  align-items: center;
  gap: .35rem;
}
.ap-banner__links { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .75rem; }
.ap-banner__link {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  font-family: var(--ap-sans);
  font-size: .75rem;
  font-weight: 600;
  color: rgba(255,255,255,.75);
  border: 1.5px solid rgba(255,255,255,.2);
  border-radius: 3px;
  padding: .25rem .65rem;
  text-decoration: none;
  transition: border-color .15s, color .15s;
}
.ap-banner__link:hover { border-color: rgba(255,255,255,.6); color: #fff; text-decoration: none; }

/* Stats bar */
.ap-stats-bar { background: rgba(0,0,0,.35); border-top: 1px solid rgba(255,255,255,.08); }
.ap-stats-inner { max-width: var(--ap-max); margin: 0 auto; padding: 0 1.5rem; display: flex; gap: 0; }
.ap-stat { padding: .7rem 1.5rem .7rem 0; }
.ap-stat:not(:first-child) { padding-left: 1.5rem; border-left: 1px solid rgba(255,255,255,.1); }
.ap-stat__n { font-family: var(--ap-sans); font-size: .95rem; font-weight: 700; color: #fff; }
.ap-stat__l { font-family: var(--ap-sans); font-size: .68rem; color: rgba(255,255,255,.5); text-transform: uppercase; letter-spacing: .06em; }

/* Body */
.ap-body { padding: 2rem 0 3rem; background: #fff; }
.ap-w { max-width: var(--ap-max); margin: 0 auto; padding: 0 1.5rem; }
.ap-grid { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media(min-width: 768px) { .ap-grid { grid-template-columns: 260px 1fr; } }

/* Left sidebar */
.ap-sb { }
.ap-sb-card { border: 1px solid var(--ap-line); border-radius: 6px; overflow: hidden; margin-bottom: 1rem; }
.ap-sb-card__hd { background: var(--ap-wash); border-bottom: 1px solid var(--ap-line); padding: .55rem .85rem; font-family: var(--ap-sans); font-size: .68rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--ap-muted); }
.ap-sb-card__body { padding: .85rem; }

.ap-bio { font-family: var(--ap-sans); font-size: .84rem; color: var(--ap-mid); line-height: 1.65; }
.ap-info-dl { font-family: var(--ap-sans); font-size: .82rem; }
.ap-info-dl dt { font-weight: 600; color: var(--ap-muted); font-size: .72rem; text-transform: uppercase; letter-spacing: .05em; margin-top: .5rem; }
.ap-info-dl dd { color: var(--ap-ink); margin: .1rem 0 0; }
.ap-info-dl dd a { color: var(--ap-brand); text-decoration: none; }
.ap-info-dl dd a:hover { text-decoration: underline; }

/* Article list */
.ap-main { }
.ap-sh { display: flex; align-items: baseline; gap: .75rem; border-top: 1px solid var(--ar-line, #e0e0e0); padding-top: .4rem; margin-bottom: 1.25rem; }
.ap-sh__t { font-family: var(--ap-serif); font-size: 1.1rem; font-weight: 600; color: var(--ap-ink); }
.ap-sh__n { font-family: var(--ap-sans); font-size: .75rem; color: var(--ap-muted); margin-left: auto; }

.ap-art { padding: .9rem 0; border-bottom: 1px solid var(--ap-line); }
.ap-art:first-child { border-top: 1px solid var(--ap-line); }
.ap-art__title { font-family: var(--ap-serif); font-size: 1rem; font-weight: 500; line-height: 1.3; color: var(--ap-ink); text-decoration: none; display: block; margin-bottom: .2rem; }
.ap-art__title:hover { color: var(--ap-brand); }
.ap-art__meta { display: flex; flex-wrap: wrap; gap: .3rem .85rem; font-family: var(--ap-sans); font-size: .75rem; color: var(--ap-muted); }
.ap-art__meta a { color: var(--ap-brand); text-decoration: none; }
.ap-art__meta a:hover { text-decoration: underline; }
.ap-empty { text-align: center; padding: 2.5rem 1rem; font-family: var(--ap-sans); color: var(--ap-muted); }

/* Claim button */
.ap-claim-btn {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-family: var(--ap-sans);
  font-size: .82rem;
  font-weight: 600;
  color: var(--ap-brand);
  border: 1.5px solid var(--ap-brand);
  border-radius: 4px;
  padding: .45rem .9rem;
  text-decoration: none;
  transition: background .15s, color .15s;
}
.ap-claim-btn:hover { background: var(--ap-brand); color: #fff; text-decoration: none; }

/* =============================================================================
   JOURNAL HOME SEARCH BAR FIX — jp-sbar improved
   ============================================================================= */
.jp-sbar__form {
  display: flex;
  max-width: 700px;
  border: 2px solid var(--jp-brand, #003b44);
  border-radius: 6px;
  overflow: hidden;
  transition: box-shadow .15s;
}
.jp-sbar__form:focus-within {
  box-shadow: 0 0 0 3px rgba(0,59,68,.15);
}
.jp-sbar__q {
  flex: 1;
  border: none;
  border-right: 1px solid var(--jp-line, #e0e0e0);
  border-radius: 0;
  padding: .7rem 1rem;
  font-size: .9rem;
  font-family: var(--jp-sans, 'DM Sans',sans-serif);
  color: var(--jp-ink, #111);
  outline: none;
  background: #fff;
}

.jp-sbar__go {
  background: var(--jp-brand, #003b44);
  color: #fff;
  border: none;
  border-radius: 0;
  padding: .7rem 1.4rem;
  font-size: .875rem;
  font-weight: 700;
  font-family: var(--jp-sans, 'DM Sans',sans-serif);
  cursor: pointer;
  white-space: nowrap;
  transition: background .15s;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
}
.jp-sbar__go:hover { background: #005060; }
.jp-sbar__hint { font-size: .72rem; color: var(--jp-muted, #767676); margin-top: .4rem; }


.ps-3 { padding-left: 1.5rem !important; }

/* ── refList — XML-rendered references ─────────────────────────────────────── */
#refList {
  list-style: decimal;
  padding-left: 1.75rem;
  margin: 0;
}
#refList li {
  padding: .55rem 0 .55rem .25rem;
  border-bottom: 1px solid var(--ar-line, #e0e0e0);
  font-family: var(--ar-sans, 'DM Sans', sans-serif);
  font-size: .84rem;
  line-height: 1.6;
  color: var(--ar-mid, #444);
  counter-increment: ref-counter;
}
#refList li:last-child { border-bottom: none; }

/* ar-ref-btns inline with reference */
#refList .ar-ref-btns,
.ar-refs .ar-ref-btns {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  margin-left: .4rem;
  vertical-align: middle;
  flex-wrap: wrap;
}

/* ── ar-ref-btn — DOI + Scholar pill buttons ────────────────────────────────── */
.ar-ref-btn {
  display: inline-flex;
  align-items: center;
  gap: .2rem;
  font-family: var(--ar-sans, 'DM Sans', sans-serif);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .03em;
  text-decoration: none !important;
  padding: .18rem .55rem;
  border-radius: 3px;
  border: 1.5px solid;
  transition: background .13s, color .13s;
  white-space: nowrap;
  vertical-align: middle;
  line-height: 1.5;
}

/* DOI — teal */
.ar-ref-btn--doi {
  color: var(--ar-brand, #003b44) !important;
  border-color: var(--ar-brand, #003b44);
  background: transparent;
}
.ar-ref-btn--doi:hover {
  background: var(--ar-brand, #003b44) !important;
  color: #fff !important;
}

/* Scholar — Google blue */
.ar-ref-btn--scholar {
  color: #1558d6 !important;
  border-color: #1558d6;
  background: transparent;
}
.ar-ref-btn--scholar:hover {
  background: #1558d6 !important;
  color: #fff !important;
}


/* =============================================================================
   LOGIN / REGISTER — missing lc-* classes
   ============================================================================= */
.lc-mb-md { margin-bottom: .85rem; }
.lc-mb-sm { margin-bottom: .5rem; }
.lc-label {
  display: block;
  font-family: var(--lc-sans,'DM Sans',sans-serif);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--lc-muted,#767676);
  margin-bottom: .3rem;
}
.lc-input {
  display: block;
  width: 100%;
  border: 1.5px solid var(--lc-line,#e0e0e0);
  border-radius: 6px;
  padding: .62rem .9rem;
  font-family: var(--lc-sans,'DM Sans',sans-serif);
  font-size: .9rem;
  color: var(--lc-ink,#111);
  background: #fff;
  outline: none;
  transition: border-color .15s, box-shadow .15s;
  box-sizing: border-box;
}
.lc-input:focus {
  border-color: var(--lc-brand,#003b44);
  box-shadow: 0 0 0 3px rgba(0,59,68,.1);
}
.lc-input:disabled { opacity: .6; }
.lc-input::placeholder { color: #bbb; }

.lc-pw { position: relative; }
.lc-pw-input { padding-right: 2.75rem !important; }
.lc-pw-btn {
  position: absolute;
  right: .65rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  padding: .2rem;
  font-size: 1rem;
  line-height: 1;
  color: var(--lc-muted,#767676);
  transition: color .13s;
}
.lc-pw-btn:hover { color: var(--lc-ink,#111); }

.lc-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: .75rem;
}
.lc-forgot {
  font-family: var(--lc-sans,'DM Sans',sans-serif);
  font-size: .8rem;
  color: var(--lc-brand,#003b44);
  text-decoration: none;
}
.lc-forgot:hover { text-decoration: underline; }

.lc-btn {
  display: block;
  width: 100%;
  padding: .72rem 1rem;
  background: var(--lc-brand,#003b44);
  color: #fff;
  border: none;
  border-radius: 6px;
  font-family: var(--lc-sans,'DM Sans',sans-serif);
  font-size: .9rem;
  font-weight: 700;
  cursor: pointer;
  transition: background .15s;
  margin-top: .25rem;
}
.lc-btn:hover { background: #005060; }
.lc-btn:disabled { opacity: .6; cursor: not-allowed; }

.lc-footer {
  text-align: center;
  font-family: var(--lc-sans,'DM Sans',sans-serif);
  font-size: .82rem;
  color: var(--lc-muted,#767676);
  margin-top: .25rem;
}
.lc-footer a { color: var(--lc-brand,#003b44); font-weight: 600; text-decoration: none; }


/* Register step bar */
.lc-step-bar { display:flex; align-items:center; gap:.4rem; margin-bottom:.75rem; }
.lc-step { display:flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:50%; font-family:var(--lc-sans,'DM Sans',sans-serif); font-size:.75rem; font-weight:700; border:2px solid var(--lc-line,#e0e0e0); color:var(--lc-muted,#767676); flex-shrink:0; transition:all .2s; }
.lc-step.active { background:var(--lc-brand,#003b44); border-color:var(--lc-brand,#003b44); color:#fff; }

.lc-step-line { flex:1; height:2px; background:var(--lc-line,#e0e0e0); transition:background .3s; }


.lc-pw-strength { display:flex; gap:3px; height:3px; margin-top:.3rem; }
.lc-pw-seg { flex:1; border-radius:2px; background:var(--lc-line,#e0e0e0); transition:background .2s; }

.lc-select {
  display: block;
  width: 100%;
  border: 1.5px solid var(--lc-line,#e0e0e0);
  border-radius: 6px;
  padding: .62rem .9rem;
  font-family: var(--lc-sans,'DM Sans',sans-serif);
  font-size: .9rem;
  color: var(--lc-ink,#111);
  background: #fff;
  outline: none;
  transition: border-color .15s;
  box-sizing: border-box;
}
.lc-select:focus { border-color:var(--lc-brand,#003b44); box-shadow:0 0 0 3px rgba(0,59,68,.1); }


.lc-role { display:inline-flex; align-items:center; gap:.35rem; padding:.35rem .75rem; border:1.5px solid var(--lc-line,#e0e0e0); border-radius:4px; font-family:var(--lc-sans,'DM Sans',sans-serif); font-size:.8rem; cursor:pointer; transition:all .13s; user-select:none; }
.lc-role.selected { border-color:var(--lc-brand,#003b44); background:rgba(0,59,68,.06); color:var(--lc-brand,#003b44); font-weight:600; }

/* =============================================================================
   SEARCH PAGE — sr-* classes (journal search + main site search)
   ============================================================================= */
:root {
  --sr-brand: #003b44;
  --sr-accent: #c00;
  --sr-ink: #111;
  --sr-mid: #444;
  --sr-muted: #767676;
  --sr-line: #e0e0e0;
  --sr-wash: #f7f8fa;
  --sr-sans: 'DM Sans','Source Sans 3',Arial,sans-serif;
  --sr-serif: 'EB Garamond','Spectral',Georgia,serif;
  --sr-max: 1160px;
}

/* Banner */
.sr-banner { background:var(--sr-brand); border-bottom:1px solid rgba(255,255,255,.15); padding:2rem 0 1.75rem; }
.sr-banner__w { max-width:var(--sr-max); margin:0 auto; padding:0 1.5rem; }
.sr-banner__label { font-family:var(--sr-sans); font-size:.68rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.5); margin-bottom:.6rem; }
.sr-banner__form { display:flex; max-width:680px; border:2px solid rgba(255,255,255,.3); border-radius:6px; overflow:hidden; transition:border-color .15s; }
.sr-banner__form:focus-within { border-color:rgba(255,255,255,.7); }
.sr-banner__q { flex:1; border:none; padding:.72rem 1rem; font-family:var(--sr-sans); font-size:.95rem; color:#fff; background:rgba(255,255,255,.1); outline:none; }
.sr-banner__q::placeholder { color:rgba(255,255,255,.45); }
.sr-banner__btn { background:#fff; color:var(--sr-brand); border:none; padding:.72rem 1.4rem; font-family:var(--sr-sans); font-size:.875rem; font-weight:700; cursor:pointer; display:inline-flex; align-items:center; gap:.4rem; transition:background .13s; white-space:nowrap; }
.sr-banner__btn:hover { background:#e8f8f6; }
.sr-hint { font-family:var(--sr-sans); font-size:.72rem; color:rgba(255,255,255,.4); margin-top:.45rem; }

/* Body */
.sr-body { padding:1.75rem 0 3rem; background:#fff; }
.sr-w { max-width:var(--sr-max); margin:0 auto; padding:0 1.5rem; }
.sr-layout { display:grid; grid-template-columns:1fr; gap:2rem; align-items:start; }
@media(min-width:900px) { .sr-layout { grid-template-columns:220px 1fr; } }
.sr-layout.sr-loading { opacity:.6; pointer-events:none; }

/* Filters sidebar */
.sr-sidebar { }
@media(max-width:899px) { .sr-sidebar { display:none; } }
.sr-sidebar__hd { font-family:var(--sr-sans); font-size:.66rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--sr-muted); border-top:2px solid var(--sr-ink); padding-top:.35rem; margin-bottom:.85rem; }
.sr-filter-group { margin-bottom:1.1rem; }
.sr-filter-label { font-family:var(--sr-sans); font-size:.75rem; font-weight:600; color:var(--sr-ink); margin-bottom:.35rem; display:block; }
.sr-filter-select { width:100%; border:1.5px solid var(--sr-line); border-radius:4px; padding:.42rem .65rem; font-family:var(--sr-sans); font-size:.82rem; color:var(--sr-ink); background:#fff; outline:none; transition:border-color .13s; }
.sr-filter-select:focus { border-color:var(--sr-brand); }

/* Mobile filter toggle */
.sr-filter-btn { display:none; }
@media(max-width:899px) { .sr-filter-btn { display:inline-flex; align-items:center; gap:.4rem; font-family:var(--sr-sans); font-size:.82rem; font-weight:600; color:var(--sr-brand); border:1.5px solid var(--sr-line); border-radius:4px; padding:.4rem .85rem; cursor:pointer; background:none; margin-bottom:1rem; } }
.sr-filter-badge { display:inline-flex; align-items:center; justify-content:center; background:var(--sr-accent); color:#fff; border-radius:50%; width:16px; height:16px; font-size:.6rem; font-weight:700; }

/* Mobile drawer */
.sr-drawer { position:fixed; inset:0; z-index:9998; display:none; }
.sr-drawer-open .sr-drawer { display:block; }
.sr-drawer-overlay { position:absolute; inset:0; background:rgba(0,0,0,.45); }
.sr-drawer-header { display:flex; align-items:center; justify-content:space-between; padding:.85rem 1.25rem; border-bottom:1px solid var(--sr-line); }
.sr-drawer-title { font-family:var(--sr-serif); font-size:1.1rem; font-weight:500; color:var(--sr-ink); }
.sr-drawer-close { background:none; border:none; cursor:pointer; font-size:1.3rem; color:var(--sr-muted); padding:.2rem .4rem; border-radius:3px; }
.sr-drawer-close:hover { color:var(--sr-ink); }

/* Results header */
.sr-count { font-family:var(--sr-serif); font-size:1.05rem; font-weight:500; color:var(--sr-ink); margin-bottom:1.1rem; padding-bottom:.75rem; border-bottom:1px solid var(--sr-line); }
.sr-count strong { color:var(--sr-accent); }
.sr-clear { font-family:var(--sr-sans); font-size:.78rem; color:var(--sr-brand); text-decoration:none; margin-left:.75rem; }
.sr-clear:hover { text-decoration:underline; }

/* Article cards */
.sr-card { padding:1.1rem 0; border-bottom:1px solid var(--sr-line); }
.sr-card:first-child { border-top:1px solid var(--sr-line); }
.sr-card-top { display:flex; align-items:flex-start; gap:1rem; }
.sr-card-body { flex:1; min-width:0; }
.sr-card__sec { font-family:var(--sr-sans); font-size:.64rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--sr-accent); margin-bottom:.2rem; }
.sr-card__title { font-family:var(--sr-serif); font-size:1.05rem; font-weight:500; line-height:1.3; color:var(--sr-ink); text-decoration:none; display:block; margin-bottom:.25rem; }
.sr-card__title:hover { color:var(--sr-brand); }
.sr-authors { font-family:var(--sr-sans); font-size:.8rem; color:var(--sr-muted); margin-bottom:.2rem; }
.sr-author-name { cursor:pointer; color:var(--sr-brand); text-decoration:none; }
.sr-author-name:hover { text-decoration:underline; }
.sr-author-more { font-size:.75rem; color:var(--sr-muted); }
.sr-abstract { font-family:var(--sr-sans); font-size:.82rem; color:var(--sr-mid); line-height:1.55; margin-bottom:.35rem; }
.sr-abstract mark { background:#fff3b0; color:inherit; border-radius:2px; padding:0 1px; }

/* Badges */
.sr-badge { display:inline-flex; align-items:center; gap:.25rem; font-family:var(--sr-sans); font-size:.72rem; font-weight:600; padding:.2rem .55rem; border-radius:3px; }
.sr-badge--views { background:rgba(0,59,68,.07); color:var(--sr-brand); }
.sr-badge--dl    { background:rgba(0,59,68,.07); color:var(--sr-brand); }
.sr-badge--cite  { background:rgba(204,0,0,.07); color:var(--sr-accent); }

/* Pagination */
.sr-pg { display:flex; align-items:center; justify-content:center; gap:.4rem; margin-top:2rem; flex-wrap:wrap; }
.sr-pg-btn { display:inline-flex; align-items:center; justify-content:center; min-width:36px; height:36px; padding:0 .5rem; font-family:var(--sr-sans); font-size:.82rem; font-weight:500; color:var(--sr-mid); text-decoration:none; border:1.5px solid var(--sr-line); border-radius:3px; background:#fff; cursor:pointer; transition:border-color .13s,color .13s; }
.sr-pg-btn:hover { border-color:var(--sr-brand); color:var(--sr-brand); }
.sr-pg-btn--active { background:var(--sr-brand); border-color:var(--sr-brand); color:#fff !important; font-weight:700; }

/* Empty */
.sr-empty { text-align:center; padding:3.5rem 1rem; font-family:var(--sr-sans); color:var(--sr-muted); }
.sr-empty-icon { font-size:2.5rem; margin-bottom:.75rem; }

/* Skeleton */
.ms-search__spinner { display:flex; justify-content:center; padding:2rem; }
.ms-search__skel { animation:srSkel 1.4s infinite; }
.ms-search__skel-line { height:14px; border-radius:3px; background:#e5e7eb; margin-bottom:.5rem; }
.ms-search__skel-line--lg { width:75%; }
.ms-search__skel-line--md { width:55%; }
.ms-search__skel-line--sm { width:35%; }
@keyframes srSkel { 0%,100%{opacity:.5} 50%{opacity:1} }

/* =============================================================================
   AUTHOR PROFILE — ap-* classes (full set)
   ============================================================================= */
.ap-container { max-width:var(--ap-max,1100px); margin:0 auto; padding:0 1.5rem; }
.ap-grid { display:grid; grid-template-columns:1fr; gap:2rem; align-items:start; }


/* Avatar */
.ap-avatar { width:72px; height:72px; border-radius:50%; background:rgba(255,255,255,.12); border:3px solid rgba(255,255,255,.25); color:#fff; font-family:var(--ap-serif,'EB Garamond',serif); font-size:1.5rem; font-weight:600; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.ap-avatar__img { width:100%; height:100%; object-fit:cover; border-radius:50%; }
.ap-avatar__initials { font-family:var(--ap-serif,'EB Garamond',serif); font-size:1.5rem; font-weight:600; color:#fff; }

/* Badges */
.ap-badges { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.75rem; }
.ap-badge { display:inline-flex; align-items:center; gap:.3rem; font-family:var(--ap-sans,'DM Sans',sans-serif); font-size:.75rem; font-weight:600; padding:.25rem .65rem; border-radius:3px; text-decoration:none; transition:all .13s; }
.ap-badge--orcid  { color:#5a7a00; border:1.5px solid #a6ce39; background:rgba(166,206,57,.1); }
.ap-badge--orcid:hover  { background:#a6ce39; color:#fff; }
.ap-badge--scholar { color:#1558d6; border:1.5px solid #1558d6; background:rgba(21,88,214,.08); }
.ap-badge--scholar:hover { background:#1558d6; color:#fff; }
.ap-badge--scopus  { color:#e9711c; border:1.5px solid #e9711c; background:rgba(233,113,28,.08); }
.ap-badge--scopus:hover  { background:#e9711c; color:#fff; }
.ap-badge--verified { color:#059669; border:1.5px solid #059669; background:rgba(5,150,105,.08); }

/* Analytics / chart */
.ap-analytics { margin-top:1.25rem; }
.ap-analytics__chart { margin-bottom:.5rem; }

/* Bars (keyword/field bars) */
.ap-bars { display:flex; flex-direction:column; gap:.5rem; }
.ap-bar { }
.ap-bar__label { font-family:var(--ap-sans,'DM Sans',sans-serif); font-size:.78rem; color:var(--ap-mid,#444); margin-bottom:.2rem; display:flex; justify-content:space-between; }
.ap-bar__val { font-weight:600; color:var(--ap-ink,#111); }
.ap-bar__track { height:5px; background:var(--ap-line,#e0e0e0); border-radius:3px; overflow:hidden; }
.ap-bar__fill { height:100%; background:var(--ap-brand,#003b44); border-radius:3px; transition:width .4s ease; }

/* Claim */
.ap-claim { background:rgba(0,59,68,.04); border:1px dashed var(--ap-brand,#003b44); border-radius:6px; padding:.85rem 1rem; display:flex; align-items:center; gap:.75rem; margin-top:1rem; }
.ap-claim__text { font-family:var(--ap-sans,'DM Sans',sans-serif); font-size:.82rem; color:var(--ap-mid,#444); flex:1; }
.ap-claim__btn { display:inline-flex; align-items:center; gap:.35rem; font-family:var(--ap-sans,'DM Sans',sans-serif); font-size:.8rem; font-weight:600; color:var(--ap-brand,#003b44); border:1.5px solid var(--ap-brand,#003b44); border-radius:4px; padding:.38rem .85rem; text-decoration:none; white-space:nowrap; transition:all .13s; }
.ap-claim__btn:hover { background:var(--ap-brand,#003b44); color:#fff; }


/* =============================================================================
   REGISTER PAGE — rc-* classes
   ============================================================================= */
:root {
  --rc-brand: #003b44; --rc-accent: #c00; --rc-ink: #111;
  --rc-mid: #444; --rc-muted: #767676; --rc-line: #e0e0e0;
  --rc-wash: #f7f8fa;
  --rc-sans: 'DM Sans','Source Sans 3',Arial,sans-serif;
  --rc-serif: 'EB Garamond','Spectral',Georgia,serif;
}
.rc-page { min-height:calc(100vh - 200px); background:var(--rc-wash); display:flex; align-items:flex-start; justify-content:center; padding:2.5rem 1rem; }
.rc-card { background:#fff; border-radius:10px; box-shadow:0 8px 40px rgba(0,0,0,.1); padding:2.5rem 2.25rem; width:100%; max-width:540px; }
.rc-title { font-family:var(--rc-serif); font-size:1.65rem; font-weight:500; color:var(--rc-ink); margin-bottom:.2rem; }
.rc-sub { font-family:var(--rc-sans); font-size:.875rem; color:var(--rc-muted); margin-bottom:1.25rem; }
.rc-text-center { text-align:center; }
.rc-mt-md  { margin-top:.85rem; }
.rc-mt-sm  { margin-top:.4rem; }
.rc-mt-lg  { margin-top:1.25rem; }
.rc-mb-md  { margin-bottom:.85rem; }
.rc-mb-sm  { margin-bottom:.5rem; }
.rc-mb-lg  { margin-bottom:1.1rem; }
.rc-mb-xl  { margin-bottom:1.4rem; }

/* Steps */
.rc-steps { display:flex; gap:6px; margin-bottom:1.25rem; }
.rc-step { flex:1; height:4px; border-radius:2px; background:var(--rc-line); transition:background .25s; }
.rc-step.on { background:var(--rc-brand); }

/* Google */
.rc-google { display:flex; align-items:center; justify-content:center; gap:.65rem; width:100%; padding:.65rem 1rem; border:1.5px solid var(--rc-line); border-radius:6px; background:#fff; font-family:var(--rc-sans); font-size:.875rem; font-weight:600; color:var(--rc-ink); cursor:pointer; transition:border-color .13s,box-shadow .13s; margin-bottom:.85rem; }
.rc-google:hover { border-color:#aaa; box-shadow:0 2px 8px rgba(0,0,0,.08); }
.rc-google:disabled { opacity:.6; cursor:not-allowed; }

/* Divider */
.rc-divider { display:flex; align-items:center; gap:.75rem; font-family:var(--rc-sans); font-size:.75rem; color:var(--rc-muted); margin:.75rem 0; }
.rc-divider::before,.rc-divider::after { content:''; flex:1; height:1px; background:var(--rc-line); }

/* Fields */
.rc-label { display:block; font-family:var(--rc-sans); font-size:.72rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--rc-muted); margin-bottom:.3rem; }
.rc-role-label-mb { margin-bottom:.5rem; }
.rc-input { display:block; width:100%; border:1.5px solid var(--rc-line); border-radius:6px; padding:.62rem .9rem; font-family:var(--rc-sans); font-size:.875rem; color:var(--rc-ink); background:#fff; outline:none; transition:border-color .15s,box-shadow .15s; box-sizing:border-box; }
.rc-input:focus { border-color:var(--rc-brand); box-shadow:0 0 0 3px rgba(0,59,68,.1); }
.rc-input::placeholder { color:#bbb; }
.rc-row { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; }

/* Password */
.rc-pw { position:relative; }
.rc-pw-input { padding-right:2.75rem !important; }
.rc-pw-btn { position:absolute; right:.65rem; top:50%; transform:translateY(-50%); background:none; border:none; cursor:pointer; font-size:1rem; padding:.2rem; color:var(--rc-muted); }
.rc-pw-btn:hover { color:var(--rc-ink); }
.rc-pw-bar { height:4px; background:var(--rc-line); border-radius:2px; overflow:hidden; margin-top:.35rem; }
.rc-pw-bar-inner { height:100%; border-radius:2px; transition:width .2s,background .2s; }
.rc-pw-label { font-family:var(--rc-sans); font-size:.72rem; font-weight:600; margin-top:.2rem; display:block; }
.rc-pw-nomatch { font-family:var(--rc-sans); font-size:.75rem; color:#ef4444; margin-top:.25rem; }

/* Roles */
.rc-roles { display:grid; grid-template-columns:1fr 1fr; gap:.65rem; }
.rc-role { background:#fff; border:1.5px solid var(--rc-line); border-radius:8px; padding:.75rem .9rem; text-align:left; cursor:pointer; transition:all .13s; }
.rc-role:hover { border-color:var(--rc-brand); }
.rc-role.sel { border-color:var(--rc-brand); background:rgba(0,59,68,.05); }
.rc-role-t { font-family:var(--rc-sans); font-size:.85rem; font-weight:700; color:var(--rc-ink); margin-bottom:.2rem; }
.rc-role-d { font-family:var(--rc-sans); font-size:.74rem; color:var(--rc-muted); margin:0; line-height:1.4; }

/* Buttons */
.rc-btn { display:block; width:100%; padding:.72rem 1rem; background:var(--rc-brand); color:#fff; border:none; border-radius:6px; font-family:var(--rc-sans); font-size:.9rem; font-weight:700; cursor:pointer; transition:background .15s; }
.rc-btn:hover { background:#005060; }
.rc-btn:disabled { opacity:.6; cursor:not-allowed; }
.rc-back-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:.5rem; }
.rc-back { background:none; border:none; font-family:var(--rc-sans); font-size:.85rem; color:var(--rc-muted); cursor:pointer; padding:.4rem 0; }
.rc-back:hover { color:var(--rc-ink); }
.rc-back-row .rc-btn { flex:1; display:inline-flex; align-items:center; justify-content:center; }

/* Messages */
.rc-error { background:#fef2f2; border:1px solid #fecaca; border-left:3px solid #ef4444; border-radius:4px; padding:.65rem .85rem; font-family:var(--rc-sans); font-size:.84rem; color:#b91c1c; margin-bottom:.75rem; }
.rc-success { background:#f0fdf4; border:1px solid #bbf7d0; border-left:3px solid #22c55e; border-radius:4px; padding:.65rem .85rem; font-family:var(--rc-sans); font-size:.84rem; color:#15803d; }
.rc-success-icon { text-align:center; font-size:2rem; margin-bottom:.75rem; }

.rc-footer { text-align:center; font-family:var(--rc-sans); font-size:.82rem; color:var(--rc-muted); margin-top:1.1rem; }
.rc-footer a { color:var(--rc-brand); font-weight:600; text-decoration:none; }
.rc-footer a:hover { text-decoration:underline; }

/* =============================================================================
   FORGOT PASSWORD PAGE — fp-* classes
   ============================================================================= */
:root {
  --fp-brand: #003b44; --fp-accent: #c00; --fp-ink: #111;
  --fp-muted: #767676; --fp-line: #e0e0e0; --fp-wash: #f7f8fa;
  --fp-sans: 'DM Sans','Source Sans 3',Arial,sans-serif;
  --fp-serif: 'EB Garamond','Spectral',Georgia,serif;
}
.fp-page { min-height:calc(100vh - 200px); background:var(--fp-wash); display:flex; align-items:center; justify-content:center; padding:2.5rem 1rem; }
.fp-card { background:#fff; border-radius:10px; box-shadow:0 8px 40px rgba(0,0,0,.1); padding:2.5rem 2.25rem; width:100%; max-width:460px; }
.fp-card--center { text-align:center; }
.fp-title { font-family:var(--fp-serif); font-size:1.5rem; font-weight:500; color:var(--fp-ink); margin-bottom:.35rem; }
.fp-title--danger { color:#c00; }
.fp-sub { font-family:var(--fp-sans); font-size:.875rem; color:var(--fp-muted); margin-bottom:1.25rem; line-height:1.6; }
.fp-label { display:block; font-family:var(--fp-sans); font-size:.72rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--fp-muted); margin-bottom:.3rem; }
.fp-input { display:block; width:100%; border:1.5px solid var(--fp-line); border-radius:6px; padding:.65rem .9rem; font-family:var(--fp-sans); font-size:.9rem; color:var(--fp-ink); background:#fff; outline:none; transition:border-color .15s,box-shadow .15s; box-sizing:border-box; margin-bottom:.85rem; }
.fp-input:focus { border-color:var(--fp-brand); box-shadow:0 0 0 3px rgba(0,59,68,.1); }
.fp-input::placeholder { color:#bbb; }
.fp-pw-wrap { position:relative; margin-bottom:.85rem; }
.fp-pw-input { margin-bottom:0 !important; padding-right:2.75rem !important; }
.fp-pw-btn { position:absolute; right:.65rem; top:50%; transform:translateY(-50%); background:none; border:none; cursor:pointer; font-size:1rem; padding:.2rem; color:var(--fp-muted); }
.fp-btn { display:block; width:100%; padding:.72rem 1rem; background:var(--fp-brand); color:#fff; border:none; border-radius:6px; font-family:var(--fp-sans); font-size:.9rem; font-weight:700; cursor:pointer; transition:background .15s; }
.fp-btn:hover { background:#005060; }
.fp-btn:disabled { opacity:.6; cursor:not-allowed; }
.fp-btn--inline { display:inline-flex; align-items:center; justify-content:center; padding:.55rem 1.4rem; width:auto; margin:1rem auto 0; }
.fp-msg { border-radius:6px; padding:.7rem .9rem; font-family:var(--fp-sans); font-size:.84rem; margin-bottom:.85rem; }
.fp-msg--ok  { background:#f0fdf4; border:1px solid #bbf7d0; border-left:3px solid #22c55e; color:#15803d; }
.fp-msg--err { background:#fef2f2; border:1px solid #fecaca; border-left:3px solid #ef4444; color:#b91c1c; }
.fp-back { margin-top:1rem; font-family:var(--fp-sans); font-size:.82rem; }
.fp-back a { color:var(--fp-brand); text-decoration:none; }
.fp-back a:hover { text-decoration:underline; }
.fp-expired-icon { font-size:2.5rem; margin-bottom:.75rem; }
.fp-spinner { width:32px; height:32px; border:3px solid var(--fp-line); border-top-color:var(--fp-brand); border-radius:50%; animation:fpSpin .8s linear infinite; margin:0 auto 1rem; }
@keyframes fpSpin { to { transform:rotate(360deg); } }
.fp-pw-strength { display:flex; gap:3px; height:4px; margin-top:.35rem; margin-bottom:.75rem; }
.fp-pw-seg { flex:1; border-radius:2px; background:var(--fp-line); transition:background .2s; }
.fp-pw-label { font-family:var(--fp-sans); font-size:.72rem; font-weight:600; }
.fp-check { display:flex; align-items:center; gap:.5rem; font-family:var(--fp-sans); font-size:.8rem; color:var(--fp-muted); margin-bottom:.5rem; }
.fp-check-icon { width:16px; height:16px; border-radius:50%; border:1.5px solid var(--fp-line); display:inline-flex; align-items:center; justify-content:center; font-size:.6rem; flex-shrink:0; }
.fp-check.ok .fp-check-icon { background:#22c55e; border-color:#22c55e; color:#fff; }

/* =============================================================================
   AUTHOR PROFILE — ap-* full set + chart fix (no inline styles)
   ============================================================================= */
.ap-ychart { margin-top:.75rem; }
.ap-ychart__title { font-family:var(--ap-sans,'DM Sans',sans-serif); font-size:.75rem; font-weight:600; color:var(--ap-ink,#111); display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:.4rem; margin-bottom:.6rem; }
.ap-ychart__legend { display:flex; gap:.75rem; font-size:.72rem; font-weight:500; }
.ap-ychart__legend-dot { display:inline-block; width:10px; height:10px; border-radius:2px; margin-right:3px; vertical-align:middle; }
.ap-ychart__legend-dot--dl { background:#0ea5e9; }
.ap-ychart__legend-dot--cite { background:#8b5cf6; }
.ap-ychart__bars { display:flex; align-items:flex-end; gap:6px; height:90px; padding-bottom:20px; position:relative; }
.ap-ychart__col { display:flex; flex-direction:column; align-items:center; flex:1; gap:2px; height:100%; }
.ap-ychart__bar-wrap { display:flex; align-items:flex-end; gap:2px; flex:1; width:100%; }
.ap-ychart__bar-dl { width:45%; border-radius:3px 3px 0 0; background:#0ea5e9; transition:height .3s; }
.ap-ychart__bar-cite { width:45%; border-radius:3px 3px 0 0; background:#8b5cf6; transition:height .3s; }
.ap-ychart__year { font-family:var(--ap-sans,'DM Sans',sans-serif); font-size:.65rem; color:var(--ap-muted,#767676); margin-top:2px; }

/* Search page banner override — sc-banner uses this layout */
.sc-banner__w { max-width:var(--sc-max,1160px); margin:0 auto; padding:0 1.5rem; }



/* =============================================================================
   AUTHOR PROFILE PAGE — ap-* (complete, no duplicates)
   ============================================================================= */
.ap-page { background: #fff; min-height: calc(100vh - 160px); }

/* Hero */
.ap-hero {
  background: linear-gradient(135deg, #071e26 0%, #003b44 60%, #005060 100%);
  border-bottom: 1px solid var(--ar-line, #e0e0e0);
}
.ap-hero__inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 1.75rem;
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.ap-avatar {
  width: 80px; height: 80px;
  border-radius: 50%;
  background: rgba(255,255,255,.15);
  border: 3px solid rgba(255,255,255,.3);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; overflow: hidden;
}
.ap-avatar__img { width: 100%; height: 100%; object-fit: cover; }
.ap-avatar__initials {
  font-family: 'EB Garamond', Georgia, serif;
  font-size: 1.6rem; font-weight: 600; color: #fff;
}
.ap-info { flex: 1; min-width: 220px; }
.ap-info__kicker {
  font-family: 'DM Sans', sans-serif;
  font-size: .68rem; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; color: rgba(255,255,255,.5); margin-bottom: .35rem;
}
.ap-info__name {
  font-family: 'EB Garamond', Georgia, serif;
  font-size: clamp(1.5rem, 3vw, 2.1rem);
  font-weight: 500; color: #fff; margin: 0 0 .4rem; line-height: 1.2;
}
.ap-info__aff {
  font-family: 'DM Sans', sans-serif;
  font-size: .85rem; color: rgba(255,255,255,.65);
  display: flex; align-items: center; gap: .35rem; margin-bottom: .2rem;
}
.ap-info__country {
  font-family: 'DM Sans', sans-serif;
  font-size: .8rem; color: rgba(255,255,255,.5); margin-bottom: .4rem;
}
.ap-info__bio {
  font-family: 'DM Sans', sans-serif;
  font-size: .84rem; color: rgba(255,255,255,.6);
  line-height: 1.6; margin: .5rem 0 0; max-width: 580px;
}
.ap-badges { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .7rem; }
.ap-badge {
  display: inline-flex; align-items: center; gap: .3rem;
  font-family: 'DM Sans', sans-serif;
  font-size: .73rem; font-weight: 600;
  padding: .22rem .6rem; border-radius: 3px;
  text-decoration: none; transition: opacity .13s;
}
.ap-badge:hover { opacity: .8; }
.ap-badge--orcid   { color: #5a7a00; border: 1.5px solid #a6ce39; background: rgba(166,206,57,.15); }
.ap-badge--scholar { color: #1558d6; border: 1.5px solid #1558d6; background: rgba(21,88,214,.1); }
.ap-badge--scopus  { color: #e9711c; border: 1.5px solid #e9711c; background: rgba(233,113,28,.1); }
.ap-badge--verified{ color: #059669; border: 1.5px solid #059669; background: rgba(5,150,105,.1); }

.ap-claim {
  display: flex; align-items: center; gap: 1rem;
  background: rgba(255,255,255,.08);
  border: 1px dashed rgba(255,255,255,.3);
  border-radius: 6px; padding: .8rem 1rem;
  margin-top: .85rem; flex-wrap: wrap;
}
.ap-claim__text {
  font-family: 'DM Sans', sans-serif;
  font-size: .84rem; color: rgba(255,255,255,.75); flex: 1;
}
.ap-claim__btn {
  display: inline-flex; align-items: center; gap: .35rem;
  font-family: 'DM Sans', sans-serif;
  font-size: .8rem; font-weight: 600;
  color: #fff; border: 1.5px solid rgba(255,255,255,.5);
  border-radius: 4px; padding: .38rem .85rem;
  text-decoration: none; white-space: nowrap; transition: all .13s;
}
.ap-claim__btn:hover { background: rgba(255,255,255,.15); }

/* Stats bar */
.ap-stats {
  background: rgba(0,0,0,.35);
  border-top: 1px solid rgba(255,255,255,.1);
}
.ap-hero__stats-inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
}
.ap-stat {
  flex: 1;
  padding: .7rem 0 .7rem 1.5rem;
  border-right: 1px solid rgba(255,255,255,.1);
}
.ap-stat:first-child { padding-left: 0; }
.ap-stat:last-child  { border-right: none; }
.ap-stat--primary .ap-stat__val { color: #7ff7ea; }
.ap-stat__val {
  font-family: 'DM Sans', sans-serif;
  font-size: 1.1rem; font-weight: 700; color: #fff; display: block;
}
.ap-stat__label {
  font-family: 'DM Sans', sans-serif;
  font-size: .6rem; color: rgba(255,255,255,.45);
  text-transform: uppercase; letter-spacing: .08em;
}

/* Body */
.ap-container {
  max-width: 1100px; margin: 0 auto; padding: 2rem 1.5rem 3rem;
}

/* Analytics */
.ap-analytics { margin-bottom: 2rem; }
.ap-analytics__chart {
  background: #f7f8fa; border: 1px solid #e0e0e0;
  border-radius: 6px; padding: 1.1rem; margin-bottom: .75rem;
}
.ap-section-title {
  font-family: 'DM Sans', sans-serif;
  font-size: .66rem; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; color: #767676;
  border-top: 2px solid #111; padding-top: .35rem; margin-bottom: 1rem;
}
.ap-bars { display: flex; flex-direction: column; gap: .6rem; }
.ap-bar__label {
  font-family: 'DM Sans', sans-serif;
  font-size: .78rem; color: #444;
  display: flex; justify-content: space-between; margin-bottom: .2rem;
}
.ap-bar__val { font-weight: 600; color: #111; }
.ap-bar__track { height: 5px; background: #e0e0e0; border-radius: 3px; overflow: hidden; }
.ap-bar__fill  { height: 100%; border-radius: 3px; transition: width .4s; }

/* Chart */
.ap-ychart { margin-top: .75rem; }
.ap-ychart__title {
  font-family: 'DM Sans', sans-serif; font-size: .75rem; font-weight: 600; color: #111;
  display: flex; justify-content: space-between; align-items: center;
  flex-wrap: wrap; gap: .4rem; margin-bottom: .6rem;
}
.ap-ychart__legend { display: flex; gap: .75rem; font-size: .72rem; font-weight: 500; }
.ap-ychart__legend-dot { display: inline-block; width: 10px; height: 10px; border-radius: 2px; margin-right: 3px; vertical-align: middle; }
.ap-ychart__legend-dot--dl   { background: #0ea5e9; }
.ap-ychart__legend-dot--cite { background: #8b5cf6; }
.ap-ychart__bars {
  display: flex; align-items: flex-end; gap: 6px;
  height: 90px; padding-bottom: 20px;
}
.ap-ychart__col { display: flex; flex-direction: column; align-items: center; flex: 1; height: 100%; gap: 2px; }
.ap-ychart__bar-wrap { display: flex; align-items: flex-end; gap: 2px; flex: 1; width: 100%; }
.ap-ychart__bar-dl   { width: 45%; border-radius: 3px 3px 0 0; background: #0ea5e9; }
.ap-ychart__bar-cite { width: 45%; border-radius: 3px 3px 0 0; background: #8b5cf6; }
.ap-ychart__year { font-family: 'DM Sans', sans-serif; font-size: .65rem; color: #767676; margin-top: 2px; }

/* Publications */
.ap-pubs { margin-top: 1.5rem; }
.ap-pubs__header {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem;
}
.ap-pubs__controls { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; }
.ap-search {
  font-family: 'DM Sans', sans-serif; font-size: .85rem;
  border: 1.5px solid #e0e0e0; border-radius: 4px;
  padding: .42rem .75rem; outline: none; transition: border-color .13s;
}
.ap-search:focus { border-color: #003b44; }
.ap-sort {
  font-family: 'DM Sans', sans-serif; font-size: .82rem;
  border: 1.5px solid #e0e0e0; border-radius: 4px;
  padding: .42rem .65rem; color: #111; background: #fff; outline: none;
}
.ap-pub {
  display: flex; gap: .85rem; padding: .9rem 0;
  border-bottom: 1px solid #e0e0e0; align-items: flex-start;
}
.ap-pub:first-child { border-top: 1px solid #e0e0e0; }
.ap-pub__num {
  font-family: 'DM Sans', sans-serif; font-size: .9rem;
  font-weight: 700; color: #e0e0e0; min-width: 22px; padding-top: .1rem;
}
.ap-pub__title {
  font-family: 'EB Garamond', Georgia, serif; font-size: 1rem;
  font-weight: 500; line-height: 1.3; color: #111;
  text-decoration: none; display: block; margin-bottom: .25rem;
}
.ap-pub__title:hover { color: #003b44; }
.ap-pub__meta {
  display: flex; flex-wrap: wrap; gap: .3rem .75rem;
  font-family: 'DM Sans', sans-serif; font-size: .75rem;
  color: #767676; margin-bottom: .3rem; align-items: center;
}
.ap-pub__journal { color: #003b44; }
.ap-pub__doi a { color: #767676; text-decoration: none; }
.ap-pub__doi a:hover { text-decoration: underline; }
.ap-pub__counts { display: flex; gap: .75rem; flex-wrap: wrap; }
.ap-pub__count {
  font-family: 'DM Sans', sans-serif; font-size: .72rem;
  font-weight: 600; display: inline-flex; align-items: center;
  gap: .22rem; color: #767676;
}
.ap-pub__count--views { color: #003b44; }
.ap-pub__count--dl    { color: #059669; }
.ap-pub__count--cite  { color: #7c3aed; }
.ap-empty { text-align: center; padding: 2.5rem 1rem; font-family: 'DM Sans', sans-serif; color: #767676; }

/* =============================================================================
   JOURNAL SEARCH — sr-* (complete, no duplicates)
   ============================================================================= */
.sr-page { background: #fff; min-height: calc(100vh - 160px); }

/* Drawer (mobile) */
.sr-drawer-overlay {
  display: none; position: fixed; inset: 0;
  background: rgba(0,0,0,.45); z-index: 200;
}
.sr-drawer {
  position: fixed; top: 0; left: 0; bottom: 0;
  width: min(80vw, 300px); background: #fff;
  z-index: 201; padding: 1.25rem 1rem; overflow-y: auto;
  transform: translateX(-100%); transition: transform .25s ease;
  box-shadow: 4px 0 24px rgba(0,0,0,.15);
}
.sr-drawer-open .sr-drawer-overlay { display: block; }
.sr-drawer-open .sr-drawer { transform: translateX(0); }
.sr-drawer-header {
  display: flex; justify-content: space-between; align-items: center;
  margin-bottom: 1rem; padding-bottom: .75rem;
  border-bottom: 1px solid #e0e0e0;
}
.sr-drawer-title { font-weight: 700; font-size: 1rem; color: #003b44; }
.sr-drawer-close { background: none; border: none; font-size: 1.3rem; cursor: pointer; color: #767676; }

/* Hero */
.sr-hero {
  background: #003b44;
  border-bottom: 1px solid rgba(255,255,255,.15);
  padding: 2rem 0 1.75rem;
}
.sr-w { max-width: 1260px; margin: 0 auto; padding: 0 1.5rem; }
.sr-banner__label {
  font-family: 'DM Sans', sans-serif; font-size: .68rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: rgba(255,255,255,.5); margin-bottom: .55rem;
  display: flex; align-items: center; gap: .35rem;
}
.sr-form {
  display: flex; max-width: 680px;
  border: 2px solid rgba(255,255,255,.3); border-radius: 6px;
  overflow: hidden; transition: border-color .15s;
}
.sr-form:focus-within { border-color: rgba(255,255,255,.7); }
.sr-input {
  flex: 1; border: none; padding: .75rem 1rem;
  font-family: 'DM Sans', sans-serif; font-size: .95rem;
  color: #fff; background: rgba(255,255,255,.1); outline: none;
}
.sr-input::placeholder { color: rgba(255,255,255,.45); }
.sr-banner__btn {
  background: #fff; color: #003b44; border: none;
  padding: .75rem 1.2rem; font-family: 'DM Sans', sans-serif;
  font-size: .875rem; font-weight: 700; cursor: pointer;
  display: inline-flex; align-items: center; gap: .4rem;
  transition: background .13s; white-space: nowrap;
}
.sr-banner__btn:hover { background: #e8f8f6; }
.sr-hint {
  font-family: 'DM Sans', sans-serif; font-size: .72rem;
  color: rgba(255,255,255,.4); margin-top: .45rem;
}

/* Body */
.sr-body { padding: 1.75rem 0 3rem; background: #fff; }
.sr-layout {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 2rem; align-items: start;
}
@media(max-width: 900px) {
  .sr-layout { grid-template-columns: 1fr; }
  .sr-sidebar { display: none !important; }
}
.sr-loading { opacity: .6; pointer-events: none; }

/* Filter sidebar */
.sr-sidebar {
  background: #f7f8fa; border: 1px solid #e0e0e0;
  border-radius: 6px; padding: .85rem;
  position: sticky; top: 80px;
}
.sr-sidebar__hd {
  font-family: 'DM Sans', sans-serif; font-size: .66rem;
  font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: #767676; border-top: 2px solid #111;
  padding-top: .35rem; margin-bottom: .85rem;
}
.sr-filter-group { margin-bottom: 1.1rem; }
.sr-filter-label {
  font-family: 'DM Sans', sans-serif; font-size: .75rem;
  font-weight: 600; color: #111; margin-bottom: .35rem; display: block;
}
.sr-select {
  width: 100%; border: 1.5px solid #e0e0e0; border-radius: 4px;
  padding: .42rem .65rem; font-family: 'DM Sans', sans-serif;
  font-size: .82rem; color: #111; background: #fff; outline: none;
}
.sr-select:focus { border-color: #003b44; }
.sr-clear {
  font-family: 'DM Sans', sans-serif; font-size: .78rem;
  color: #003b44; background: none; border: none; cursor: pointer;
  text-decoration: underline; padding: 0; margin-top: .5rem; display: block;
}

/* Mobile filter button */
.sr-filter-btn {
  display: none; align-items: center; gap: .4rem;
  font-family: 'DM Sans', sans-serif; font-size: .82rem; font-weight: 600;
  color: #fff; background: #003b44; border: none; border-radius: 6px;
  padding: .5rem 1rem; cursor: pointer; margin-bottom: 1rem;
}
@media(max-width: 900px) { .sr-filter-btn { display: inline-flex !important; } }
.sr-filter-badge {
  background: #c00; color: #fff; border-radius: 50%;
  width: 18px; height: 18px; font-size: .65rem; font-weight: 700;
  display: inline-flex; align-items: center; justify-content: center;
}

/* Main + results */
.sr-main { min-width: 0; }
.sr-topbar {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 1.1rem; padding-bottom: .75rem;
  border-bottom: 1px solid #e0e0e0;
}
.sr-count {
  font-family: 'EB Garamond', Georgia, serif; font-size: 1.05rem;
  font-weight: 500; color: #111;
}
.sr-count strong { color: #c00; }
.sr-list { }
.sr-card { padding: 1.1rem 0; border-bottom: 1px solid #e0e0e0; }
.sr-card:first-child { border-top: 1px solid #e0e0e0; }
.sr-card-top { display: flex; align-items: flex-start; gap: .85rem; }
.sr-card-body { flex: 1; min-width: 0; }
.sr-rank {
  font-family: 'DM Sans', sans-serif; font-size: .9rem;
  font-weight: 700; color: #e0e0e0; min-width: 24px;
  padding-top: .1rem; text-align: right;
}
.sr-title {
  font-family: 'EB Garamond', Georgia, serif; font-size: 1.05rem;
  font-weight: 500; line-height: 1.3; color: #111;
  text-decoration: none; display: block; margin-bottom: .2rem;
}
.sr-title:hover { color: #003b44; }
.sr-section-tag {
  font-family: 'DM Sans', sans-serif; font-size: .64rem;
  font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: #c00; display: block; margin-bottom: .18rem;
}
.sr-authors { font-family: 'DM Sans', sans-serif; font-size: .8rem; color: #767676; margin-bottom: .2rem; }
.sr-author-name { color: #003b44; }
.sr-author-more { font-size: .75rem; color: #767676; }
.sr-abstract { font-family: 'DM Sans', sans-serif; font-size: .82rem; color: #444; line-height: 1.55; margin-bottom: .35rem; }
.sr-highlight { background: #fff3b0; border-radius: 2px; padding: 0 1px; }
.sr-keywords { display: flex; flex-wrap: wrap; gap: .3rem; margin-top: .3rem; }
.sr-keywords span {
  font-family: 'DM Sans', sans-serif; font-size: .72rem;
  color: #003b44; background: rgba(0,59,68,.06);
  border: 1px solid rgba(0,59,68,.15); border-radius: 3px; padding: .15rem .5rem;
}
.sr-meta {
  display: flex; flex-wrap: wrap; gap: .3rem .85rem;
  font-family: 'DM Sans', sans-serif; font-size: .75rem;
  color: #767676; margin-top: .35rem; align-items: center;
}
.sr-meta a { color: #003b44; text-decoration: none; }
.sr-meta a:hover { text-decoration: underline; }
.sr-meta-doi { font-size: .72rem; }
.sr-badge {
  display: inline-flex; align-items: center; gap: .25rem;
  font-family: 'DM Sans', sans-serif; font-size: .72rem;
  font-weight: 600; padding: .18rem .5rem; border-radius: 3px;
}
.sr-badge--views { background: rgba(0,59,68,.07); color: #003b44; }
.sr-badge--dl    { background: rgba(0,59,68,.07); color: #003b44; }
.sr-badge--cite  { background: rgba(204,0,0,.07); color: #c00; }
.sr-pagination {
  display: flex; align-items: center; justify-content: center;
  gap: .4rem; margin-top: 2rem; flex-wrap: wrap;
}
.sr-pg-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 36px; height: 36px; padding: 0 .5rem;
  font-family: 'DM Sans', sans-serif; font-size: .82rem; font-weight: 500;
  color: #444; border: 1.5px solid #e0e0e0;
  border-radius: 3px; background: #fff; cursor: pointer; transition: all .13s;
}
.sr-pg-btn:hover { border-color: #003b44; color: #003b44; }
.sr-pg-btn--active { background: #003b44 !important; border-color: #003b44 !important; color: #fff !important; font-weight: 700; }
.sr-empty { text-align: center; padding: 3.5rem 1rem; font-family: 'DM Sans', sans-serif; color: #767676; }
.sr-empty-icon { font-size: 2.5rem; margin-bottom: .75rem; }
.sr-skel-wrap { display: flex; flex-direction: column; gap: .75rem; }


/* ================================================================
   EMERGING PUBLISHER — HOMEPAGE   ep-*
   Navy #0C1A27 | Gold #C9A84C | Cream #F4EFE6 | White #fff
   Playfair Display (headings) + DM Sans (body)
   ================================================================ */

.ep-main { font-family:'DM Sans',system-ui,sans-serif; }
.ep-w    { max-width:1300px; margin:0 auto; padding:0 2rem; }
@media(max-width:640px){ .ep-w { padding:0 1rem; } }

/* Submit button */
.ms-btn-primary {
  display:inline-flex; align-items:center; gap:8px;
  background:#C9A84C; color:#0C1A27; border:none; border-radius:8px;
  padding:13px 26px; font-family:'DM Sans',sans-serif; font-size:.9rem; font-weight:800;
  text-decoration:none; cursor:pointer; white-space:nowrap;
  box-shadow:0 4px 16px rgba(201,168,76,.32);
  transition:background .18s,transform .14s,box-shadow .18s;
}
.ms-btn-primary:hover{ background:#E8C46A; transform:translateY(-2px); box-shadow:0 8px 24px rgba(201,168,76,.42); }

/* Eyebrow */
.ep-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.63rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#C9A84C;margin-bottom:10px;}
.ep-eyebrow::before{content:'';display:block;width:20px;height:2px;background:#C9A84C;}
.ep-eyebrow--g{color:#E8C46A;}
.ep-eyebrow--g::before{background:#E8C46A;}

/* ──────────────────────────────────────────────────
   HERO
────────────────────────────────────────────────── */
.ep-hero{
  background:#0C1A27; position:relative; overflow:hidden; padding:0;
  isolation:isolate;
}
/* Diagonal background split */
.ep-hero__grad{
  position:absolute; right:0; top:0; width:48%; height:100%;
  background:linear-gradient(160deg,#0f2035 0%,#162a40 100%);
  clip-path:polygon(12% 0,100% 0,100% 100%,0 100%);
  pointer-events:none;
}
/* Subtle grid overlay */
.ep-hero__grid{
  position:absolute; inset:0; pointer-events:none; opacity:.04;
  background-image:linear-gradient(rgba(255,255,255,1) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,1) 1px,transparent 1px);
  background-size:60px 60px;
}

.ep-hero__wrap{
  max-width:1300px; margin:0 auto; padding:80px 2rem 68px;
  display:grid; grid-template-columns:1fr 460px; gap:56px; align-items:center;
  position:relative;
}

/* LEFT */
.ep-hero__pill{
  display:inline-flex; align-items:center; gap:9px;
  background:rgba(201,168,76,.12); border:1px solid rgba(201,168,76,.28);
  color:#E8C46A; font-size:.67rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase;
  padding:6px 16px; border-radius:999px; margin-bottom:24px;
}
.ep-hero__live{
  width:7px; height:7px; border-radius:50%; background:#C9A84C;
  animation:epLive 2s infinite;
}
@keyframes epLive{ 0%,100%{box-shadow:0 0 0 0 rgba(201,168,76,.5)} 60%{box-shadow:0 0 0 8px rgba(201,168,76,0)} }

.ep-hero__h1{
  font-family:'Playfair Display',Georgia,serif;
  font-size:clamp(2.6rem,5.5vw,4.4rem); font-weight:900;
  color:#fff; line-height:1.08; margin:0; letter-spacing:-.025em;
}
.ep-hero__h1 em{
  font-style:italic; font-weight:700; color:#C9A84C; display:inline;
}
.ep-hero__sub{
  font-family:'Playfair Display',serif; font-style:italic;
  font-size:clamp(1rem,2.2vw,1.5rem); color:rgba(255,255,255,.5);
  display:block; margin:10px 0 26px; font-weight:400;
}
.ep-hero__desc{
  font-size:1rem; color:rgba(255,255,255,.58); line-height:1.8;
  margin:0 0 30px; max-width:460px;
}
.ep-hero__cta{ display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin-bottom:28px; }
.ep-hero__ghost{
  display:inline-flex; align-items:center; gap:6px;
  padding:13px 22px; border:2px solid rgba(255,255,255,.2); border-radius:8px;
  color:rgba(255,255,255,.72); font-size:.88rem; font-weight:600;
  text-decoration:none; transition:all .18s; white-space:nowrap;
}
.ep-hero__ghost:hover{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.5); color:#fff; }

.ep-hero__indexed{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.ep-hero__idx-lbl{ font-size:.62rem; font-weight:800; color:#8A9BB0; letter-spacing:.1em; text-transform:uppercase; }
.ep-hero__idx-chip{
  font-size:.65rem; font-weight:600; color:rgba(255,255,255,.48);
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1);
  padding:3px 10px; border-radius:5px;
}

/* RIGHT */
.ep-hero__right{ display:flex; flex-direction:column; gap:18px; }

/* Stats 2×3 */
.ep-hero__stats{
  display:grid; grid-template-columns:repeat(3,1fr); gap:1px;
  background:rgba(255,255,255,.08); border-radius:12px; overflow:hidden;
  border:1px solid rgba(255,255,255,.1); box-shadow:0 20px 50px rgba(0,0,0,.35);
}
.ep-stat{
  background:rgba(12,26,39,.7); padding:18px 12px; text-align:center;
  display:flex; flex-direction:column; gap:3px; backdrop-filter:blur(12px);
  transition:background .18s;
}
.ep-stat:hover{ background:rgba(12,26,39,.9); }
.ep-stat__n{
  font-family:'Playfair Display',serif; font-size:1.65rem; font-weight:700;
  color:#C9A84C; line-height:1; letter-spacing:-.02em;
}
.ep-stat__l{ font-size:.6rem; color:rgba(255,255,255,.42); font-weight:500; margin-top:3px; }

/* Journal tiles 4-col staggered */
.ep-hero__tiles{
  display:grid; grid-template-columns:repeat(4,1fr); gap:8px;
}
.ep-tile{ display:block; border-radius:10px; overflow:hidden; text-decoration:none; transition:transform .24s,box-shadow .24s; }
.ep-tile:hover{ transform:translateY(-6px) scale(1.04); box-shadow:0 16px 40px rgba(0,0,0,.5); }
.ep-tile--1{ margin-top:16px; }
.ep-tile--2{ margin-top:-8px; }
.ep-tile--3{ margin-top:12px; }

.ep-tile__img{
  height:120px; position:relative; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
}
.ep-tile__img img{ width:100%; height:100%; object-fit:cover; }
.ep-tile__img span{
  font-family:'Playfair Display',serif; font-size:1.6rem; font-weight:700;
  color:rgba(255,255,255,.22); letter-spacing:.04em;
}
.ep-tile__overlay{
  position:absolute; inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.75) 0%,transparent 50%);
}
.ep-tile__label{
  position:absolute; bottom:0; left:0; right:0; padding:6px 4px;
  font-size:.52rem; font-weight:900; letter-spacing:.08em; color:rgba(255,255,255,.85);
  text-align:center; z-index:2; text-transform:uppercase;
}

/* ──────────────────────────────────────────────────
   TICKER
────────────────────────────────────────────────── */
.ep-ticker{
  background:#F4EFE6; border-top:1px solid rgba(12,26,39,.1); border-bottom:1px solid rgba(12,26,39,.1);
  padding:16px 0; overflow:hidden; position:relative;
}
.ep-ticker__lbl{
  position:absolute; left:0; top:0; bottom:0; z-index:2;
  background:linear-gradient(90deg,#F4EFE6 55%,transparent);
  padding:0 36px 0 20px; display:flex; align-items:center;
  font-size:.6rem; font-weight:800; color:#8A9BB0; letter-spacing:.12em; text-transform:uppercase; white-space:nowrap;
}
.ep-ticker__track{
  display:flex; white-space:nowrap; animation:epTick 32s linear infinite; padding-left:170px;
}
.ep-ticker__track:hover{ animation-play-state:paused; }
@keyframes epTick{ 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
.ep-ticker__item{
  padding:0 22px; font-size:.75rem; font-weight:600; color:#475569;
  border-right:1px solid rgba(12,26,39,.1); white-space:nowrap;
  display:inline-flex; align-items:center; gap:6px;
}
.ep-ticker__item::before{ content:'◆'; color:#C9A84C; font-size:.44rem; }

/* ──────────────────────────────────────────────────
   SECTIONS
────────────────────────────────────────────────── */
.ep-sec{ padding:80px 0; }
.ep-sec--white{ background:#fff; }
.ep-sec--cream{ background:#F4EFE6; }

.ep-shd{ display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:40px; gap:20px; flex-wrap:wrap; }
.ep-shd--c{ flex-direction:column; align-items:center; text-align:center; }
.ep-shd__h2{
  font-family:'Playfair Display',serif; font-size:clamp(1.7rem,3vw,2.5rem);
  font-weight:700; color:#0C1A27; margin:6px 0 5px; letter-spacing:-.018em;
}
.ep-shd__h2--lt{ color:#fff; }
.ep-shd__sub{ font-size:.87rem; color:#64748b; margin:0; }
.ep-shd__sub--lt{ color:rgba(255,255,255,.5); }
.ep-shd__more{ font-size:.82rem; font-weight:700; color:#C9A84C; text-decoration:none; white-space:nowrap; flex-shrink:0; }
.ep-shd__more:hover{ text-decoration:underline; }

/* ──────────────────────────────────────────────────
   ARTICLE CARDS
────────────────────────────────────────────────── */
.ep-acgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
@media(max-width:900px){ .ep-acgrid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:560px){ .ep-acgrid{ grid-template-columns:1fr; } }

.ep-ac{
  background:#fff; border:1.5px solid rgba(12,26,39,.09); border-radius:12px;
  overflow:hidden; display:flex; flex-direction:column;
  box-shadow:0 2px 10px rgba(0,0,0,.05);
  transition:transform .22s,box-shadow .22s,border-color .22s;
}
.ep-ac:hover{ transform:translateY(-5px); box-shadow:0 14px 38px rgba(12,26,39,.13); border-color:#C9A84C; }
.ep-sec--cream .ep-ac{ background:#fff; }

.ep-ac__cover{
  height:128px; position:relative; overflow:hidden;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.ep-ac__cover-img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.ep-ac__mono{
  font-family:'Playfair Display',serif; font-size:2.8rem; font-weight:700;
  color:rgba(255,255,255,.2); letter-spacing:.06em; position:relative; z-index:1;
}
.ep-ac__rank{
  position:absolute; top:10px; left:10px; z-index:3;
  background:#C9A84C; color:#0C1A27; font-size:.6rem; font-weight:900;
  padding:3px 10px; border-radius:999px; box-shadow:0 2px 8px rgba(201,168,76,.4);
}
.ep-ac__tag{
  position:absolute; bottom:8px; right:8px; z-index:3;
  background:rgba(0,0,0,.55); color:rgba(255,255,255,.9);
  font-size:.54rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  padding:2px 8px; border-radius:4px; backdrop-filter:blur(4px);
}

.ep-ac__body{ padding:13px 14px 15px; flex:1; display:flex; flex-direction:column; gap:5px; }

.ep-ac__jname{ font-size:.61rem; font-weight:800; color:#C9A84C; text-transform:uppercase; letter-spacing:.07em; margin:0; }

.ep-ac__title{
  font-family:'Playfair Display',serif; font-size:.9rem; font-weight:700;
  color:#0C1A27; line-height:1.4; text-decoration:none;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.ep-ac__title:hover{ color:#C9A84C; }

.ep-ac__authors{ font-size:.69rem; color:#64748b; margin:0; }

.ep-ac__abs{
  font-size:.75rem; color:#6b7a8d; line-height:1.6; margin:0;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}

.ep-ac__chips{
  display:flex; flex-wrap:wrap; gap:6px; font-size:.64rem; color:#94a3b8;
  padding-top:8px; border-top:1px solid rgba(12,26,39,.07); margin-top:auto;
}

.ep-ac__doi{
  font-size:.64rem; color:#0369a1; text-decoration:none; font-weight:600;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  display:block;
}
.ep-ac__doi:hover{ text-decoration:underline; }

.ep-ac__btns{ display:flex; gap:7px; margin-top:4px; }
.ep-ac__btn{
  display:inline-flex; align-items:center; gap:4px; font-size:.72rem; font-weight:700;
  border-radius:7px; padding:6px 14px; text-decoration:none; transition:all .16s; cursor:pointer; border:none;
}
.ep-ac__btn--full{ background:#0C1A27; color:#fff; }
.ep-ac__btn--full:hover{ background:#1a3050; }
.ep-ac__btn--pdf{ background:rgba(201,168,76,.12); color:#7a5c00; border:1px solid rgba(201,168,76,.3); }
.ep-ac__btn--pdf:hover{ background:#C9A84C; color:#0C1A27; border-color:#C9A84C; }

/* ──────────────────────────────────────────────────
   JOURNAL GRID
────────────────────────────────────────────────── */
.ep-jgrid{ display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
@media(max-width:1100px){ .ep-jgrid{ grid-template-columns:repeat(4,1fr); } }
@media(max-width:860px) { .ep-jgrid{ grid-template-columns:repeat(3,1fr); } }
@media(max-width:580px) { .ep-jgrid{ grid-template-columns:repeat(2,1fr); } }

.ep-jcard{
  background:#fff; border:1.5px solid rgba(12,26,39,.09); border-radius:10px;
  overflow:hidden; text-decoration:none; color:inherit; display:flex; flex-direction:column;
  box-shadow:0 2px 8px rgba(0,0,0,.05);
  transition:transform .22s,box-shadow .22s,border-color .22s;
}
.ep-jcard:hover{ transform:translateY(-5px); box-shadow:0 12px 30px rgba(12,26,39,.12); border-color:#C9A84C; }

.ep-jcard__cover{
  height:118px; position:relative; overflow:hidden;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.ep-jcard__cover img{ width:100%; height:100%; object-fit:cover; }
.ep-jcard__cover span{ font-family:'Playfair Display',serif; font-size:1.8rem; font-weight:700; color:rgba(255,255,255,.22); }
.ep-jcard__no{ position:absolute; top:8px; left:8px; font-style:normal; background:#C9A84C; color:#0C1A27; font-size:.57rem; font-weight:900; padding:2px 7px; border-radius:4px; }

.ep-jcard__body{ padding:11px 12px 12px; flex:1; display:flex; flex-direction:column; gap:5px; }
.ep-jcard__title{
  font-family:'Playfair Display',serif; font-size:.85rem; font-weight:700; color:#0C1A27; line-height:1.35; margin:0;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.ep-jcard__issn{ font-size:.58rem; color:#64748b; margin:0; }
.ep-jcard__foot{ margin-top:auto; display:flex; justify-content:space-between; align-items:center; padding-top:8px; border-top:1px solid rgba(12,26,39,.07); font-size:.7rem; color:#94a3b8; }
.ep-jcard__arr{ width:24px; height:24px; border-radius:50%; background:#0C1A27; color:#fff; display:flex; align-items:center; justify-content:center; font-size:.75rem; transition:background .18s,transform .18s; }
.ep-jcard:hover .ep-jcard__arr{ background:#C9A84C; color:#0C1A27; transform:rotate(-45deg); }

/* ──────────────────────────────────────────────────
   WHY PUBLISH
────────────────────────────────────────────────── */
.ep-why{ background:#0C1A27; padding:80px 0; }

.ep-feats{ display:grid; grid-template-columns:repeat(3,1fr); gap:2px; border-radius:14px; overflow:hidden; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.08); }
@media(max-width:900px){ .ep-feats{ grid-template-columns:1fr 1fr; } }
@media(max-width:540px){ .ep-feats{ grid-template-columns:1fr; } }

.ep-feat{ background:rgba(12,26,39,.7); padding:28px 24px; transition:background .2s; position:relative; overflow:hidden; }
.ep-feat:hover{ background:rgba(12,26,39,.9); }
.ep-feat::after{ content:''; position:absolute; bottom:0; left:0; width:0; height:2px; background:#C9A84C; transition:width .3s; }
.ep-feat:hover::after{ width:100%; }
.ep-feat__ico{ font-size:1.7rem; display:block; margin-bottom:12px; }
.ep-feat__title{ font-size:.95rem; font-weight:700; color:#fff; display:block; margin-bottom:7px; }
.ep-feat__text{ font-size:.82rem; color:rgba(255,255,255,.52); line-height:1.7; margin:0; }

/* ──────────────────────────────────────────────────
   CTA
────────────────────────────────────────────────── */
.ep-cta{ background:#fff; padding:90px 0; position:relative; overflow:hidden; }
.ep-cta::before{ content:''; position:absolute; inset:0; pointer-events:none; background:radial-gradient(ellipse 55% 70% at 82% 50%,rgba(201,168,76,.06) 0%,transparent 65%); }
.ep-cta__in{ max-width:700px; margin:0 auto; padding:0 2rem; text-align:center; position:relative; z-index:2; }
.ep-cta__over{ font-family:'Playfair Display',serif; font-style:italic; font-size:.9rem; color:#C9A84C; display:block; margin-bottom:14px; }
.ep-cta__h2{ font-family:'Playfair Display',serif; font-size:clamp(1.9rem,4vw,3rem); font-weight:700; color:#0C1A27; margin:0 0 16px; letter-spacing:-.022em; line-height:1.2; }
.ep-cta__p{ font-size:1rem; color:#64748b; margin:0 0 32px; line-height:1.75; }
.ep-cta__btns{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.ep-cta__ghost{ display:inline-flex; align-items:center; padding:13px 24px; border:2px solid rgba(12,26,39,.2); border-radius:8px; color:#0C1A27; font-size:.88rem; font-weight:600; text-decoration:none; transition:all .18s; }
.ep-cta__ghost:hover{ background:rgba(12,26,39,.06); border-color:#0C1A27; }
.ep-cta__note{ font-size:.75rem; color:#94a3b8; margin-top:20px; }
.ep-cta__note a{ color:#0C1A27; font-weight:600; text-decoration:none; }

/* ──────────────────────────────────────────────────
   RESPONSIVE
────────────────────────────────────────────────── */
@media(max-width:1000px){
  .ep-hero__wrap{ grid-template-columns:1fr; gap:44px; padding:60px 2rem 48px; }
  .ep-hero__tiles{ grid-template-columns:repeat(4,1fr); }
  .ep-tile--1,.ep-tile--2,.ep-tile--3{ margin-top:0; }
  .ep-hero__grad{ width:100%; clip-path:none; opacity:.4; }
}
@media(max-width:640px){
  .ep-hero__wrap{ padding:48px 1rem 40px; }
  .ep-hero__stats{ grid-template-columns:repeat(2,1fr); }
  .ep-hero__tiles{ grid-template-columns:repeat(4,1fr); gap:6px; }
  .ep-tile__img{ height:90px; }
  .ep-sec{ padding:60px 0; }
  .ep-why,.ep-cta{ padding:60px 0; }
}

/* ──────────────────────────────────────────────────
   ROUND JOURNAL SLIDER  (ep-rslider)
────────────────────────────────────────────────── */
.ep-rslider{
  position:relative;
  overflow:hidden;
  border-radius:18px;
  background:rgba(12,26,39,.55);
  backdrop-filter:blur(10px);
  border:1px solid rgba(201,168,76,.18);
  padding:22px 10px 18px;
}
.ep-rslider__track{
  display:flex;
  transition:transform .45s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}
/* each slide takes exactly 25% so 4 visible at once */
.ep-rslide{
  min-width:25%;
  flex:0 0 25%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  padding:10px 6px;
  text-decoration:none;
  cursor:pointer;
}
.ep-rslide__circle{
  width:90px;
  height:90px;
  border-radius:50%;
  overflow:hidden;
  border:3px solid rgba(201,168,76,.45);
  box-shadow:0 4px 20px rgba(0,0,0,.4);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:transform .25s,box-shadow .25s,border-color .25s;
  background:#0C1A27;
}
.ep-rslide:hover .ep-rslide__circle{
  transform:scale(1.1) translateY(-4px);
  box-shadow:0 10px 32px rgba(201,168,76,.35);
  border-color:#C9A84C;
}
.ep-rslide__circle img{
  width:100%; height:100%; object-fit:cover;
}
.ep-rslide__circle span{
  font-size:.78rem; font-weight:900; color:#fff;
  letter-spacing:.08em; text-align:center;
}
.ep-rslide__name{
  font-size:.6rem; font-weight:700; color:#e2e8f0;
  text-align:center; margin:0; line-height:1.3;
  max-width:80px;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.ep-rslide__count{
  font-size:.55rem; color:#C9A84C; margin:0; font-weight:600;
}
/* prev/next buttons */
.ep-rslider__btn{
  position:absolute; top:50%; transform:translateY(-50%);
  background:rgba(201,168,76,.2); border:1px solid rgba(201,168,76,.35);
  color:#C9A84C; width:28px; height:28px; border-radius:50%;
  font-size:1.1rem; line-height:1; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  transition:background .2s;
  z-index:5;
}
.ep-rslider__btn:hover{ background:rgba(201,168,76,.45); }
.ep-rslider__btn--prev{ left:4px; }
.ep-rslider__btn--next{ right:4px; }
/* dots */
.ep-rslider__dots{
  display:flex; justify-content:center; gap:5px; margin-top:10px;
}
.ep-rslider__dot{
  width:6px; height:6px; border-radius:50%;
  background:rgba(201,168,76,.3); cursor:pointer;
  transition:background .25s, transform .25s;
}
.ep-rslider__dot--on{
  background:#C9A84C; transform:scale(1.4);
}
/* mobile: show 2 per page */
@media(max-width:600px){
  .ep-rslide{ min-width:50%; flex:0 0 50%; }
}

/* ──────────────────────────────────────────────────
   ARTICLE CARD — journal badge overlay
────────────────────────────────────────────────── */
.ep-ac__jbadge{
  position:absolute; bottom:6px; right:6px;
  background:rgba(12,26,39,.7);
  color:#C9A84C; font-size:.52rem; font-weight:900;
  letter-spacing:.08em; padding:2px 6px; border-radius:6px;
  text-transform:uppercase;
}
