/* Open Library current revision layer. Loaded last on purpose. */
:root{
  --olr-red:#DC2626;
  --olr-red-dark:#B91C1C;
  --olr-red-soft:#FFF1F2;
  --olr-red-border:#FCA5A5;
  --olr-text:#0F172A;
  --olr-muted:#64748B;
  --olr-line:#E2E8F0;
}

/* ===== Portal cards: exactly two columns on desktop ===== */
html body.openlib-site-index .pkp_page_index .journals > ul,
html body.openlib-site-index #openlib-journals > ul,
html body.openlib-site-index .openlib_journal_grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
  width:100%!important;
}
html body.openlib-site-index .pkp_page_index .journals > ul > li,
html body.openlib-site-index #openlib-journals > ul > li,
html body.openlib-site-index .openlib_journal_grid > .openlib_journal_card{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  flex:0 0 auto!important;
  margin:0!important;
}
@media(max-width:860px){
  html body.openlib-site-index .pkp_page_index .journals > ul,
  html body.openlib-site-index #openlib-journals > ul,
  html body.openlib-site-index .openlib_journal_grid{grid-template-columns:1fr!important;}
}

/* ===== New fallback cover: clean red editorial grid, acronym only ===== */
html body.openlib-site-index .openlib_journal_placeholder,
html body.openlib-journal-page .openlib_journal_profile__cover--fallback{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border-color:var(--olr-red)!important;
  background-color:#991B1B!important;
  background-image:
    linear-gradient(145deg,transparent 0 55%,rgba(255,255,255,.10) 55.5% 57%,transparent 57.5% 100%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 18px),
    repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 18px),
    linear-gradient(135deg,#7F1D1D 0%,#B91C1C 48%,#DC2626 100%)!important;
}
html body.openlib-site-index .openlib_journal_placeholder:before{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  top:-12%!important;
  right:12%!important;
  width:18%!important;
  height:124%!important;
  border:0!important;
  border-radius:0!important;
  background:rgba(255,255,255,.085)!important;
  transform:skewX(-17deg)!important;
}
html body.openlib-site-index .openlib_journal_placeholder:after{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  right:-8%!important;
  bottom:13%!important;
  width:58%!important;
  height:2px!important;
  border:0!important;
  border-radius:0!important;
  background:rgba(255,255,255,.28)!important;
  transform:rotate(-18deg)!important;
}
html body.openlib-site-index .openlib_journal_placeholder strong,
html body.openlib-journal-page .openlib_journal_profile__cover--fallback strong{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  max-width:calc(100% - 12px)!important;
  margin:0 auto!important;
  overflow:hidden!important;
  color:#fff!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.015em!important;
  text-align:center!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  word-break:normal!important;
}
html body.openlib-site-index .openlib_journal_placeholder strong{font-size:21px!important;}
html body.openlib-site-index .openlib_journal_placeholder strong.openlib-acronym-medium{font-size:16px!important;letter-spacing:.01em!important;}
html body.openlib-site-index .openlib_journal_placeholder strong.openlib-acronym-long{font-size:12.5px!important;letter-spacing:0!important;}
html body.openlib-site-index .openlib_journal_placeholder strong.openlib-acronym-xlong{font-size:10.5px!important;letter-spacing:-.02em!important;}

/* ===== Journal identity banner: no black border, horizontal and red ===== */
html body.openlib-journal-page .openlib_journal_profile.openlib_journal_profile--banner{
  border:1px solid #FECACA!important;
  border-top:4px solid var(--olr-red)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 7px 24px rgba(15,23,42,.045)!important;
}
html body.openlib-journal-page .openlib_journal_profile.openlib_journal_profile--banner:before{display:none!important;}
html body.openlib-journal-page .openlib_journal_profile__cover{
  box-sizing:border-box!important;
  width:100%!important;
  height:clamp(150px,17vw,215px)!important;
  min-height:0!important;
  padding:10px!important;
  border:2px solid var(--olr-red)!important;
  outline:0!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:none!important;
}
html body.openlib-journal-page .openlib_journal_profile__cover img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  object-fit:contain!important;
  object-position:center!important;
}
/* The duplicate Current/Archives/About buttons under the journal identity are intentionally removed. */
html body.openlib-journal-page .openlib_journal_profile__quicklinks{display:none!important;}

/* ===== Sticky journal navigation when the user scrolls ===== */
html body.openlib-journal-page .openlib_journal_header__navrow{
  transition:box-shadow .18s ease,border-color .18s ease!important;
}
html body.openlib-journal-page.openlib-journal-nav-stuck .openlib_journal_header__navrow{
  position:fixed!important;
  z-index:1100!important;
  top:0!important;
  right:0!important;
  left:0!important;
  width:100%!important;
  margin:0!important;
  border-top:0!important;
  border-bottom:1px solid #FCA5A5!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 8px 24px rgba(15,23,42,.10)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
html body.openlib-journal-page .openlib_journal_nav_spacer{display:block!important;height:0;}
html body.openlib-journal-page.openlib-journal-nav-stuck .openlib_journal_nav_spacer{display:block!important;}

/* ===== Stronger section / Prodi separation ===== */
html body.openlib-journal-page .obj_issue_toc .sections > .section,
html body.openlib-journal-page .obj_issue_toc > .section{
  margin:24px 0 0!important;
  padding:0!important;
  border:1px solid #F1F5F9!important;
  border-radius:12px!important;
  background:#fff!important;
  overflow:hidden!important;
}
html body.openlib-journal-page .obj_issue_toc .sections > .section > h2,
html body.openlib-journal-page .obj_issue_toc > .section > h2{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-height:48px!important;
  margin:0!important;
  padding:12px 16px 12px 42px!important;
  border:0!important;
  border-top:3px solid var(--olr-red)!important;
  border-bottom:1px solid #FECACA!important;
  border-radius:0!important;
  background:#FFF1F2!important;
  color:#991B1B!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
}
html body.openlib-journal-page .obj_issue_toc .sections > .section > h2:before,
html body.openlib-journal-page .obj_issue_toc > .section > h2:before{
  content:""!important;
  position:absolute!important;
  left:17px!important;
  width:10px!important;
  height:10px!important;
  border-radius:3px!important;
  background:var(--olr-red)!important;
  box-shadow:0 0 0 4px rgba(220,38,38,.10)!important;
}
html body.openlib-journal-page .obj_issue_toc .sections > .section > ul,
html body.openlib-journal-page .obj_issue_toc > .section > ul{
  margin:0!important;
  padding:0 16px!important;
}

/* ===== Article metadata: authors and page range more visible ===== */
html body.openlib-journal-page .obj_article_summary .meta{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  margin-top:9px!important;
  color:#64748B!important;
  font-size:12px!important;
}
html body.openlib-journal-page .obj_article_summary .meta .authors,
html body.openlib-journal-page .obj_article_summary .authors{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  max-width:100%!important;
  margin:0!important;
  padding:6px 9px!important;
  border:1px solid #E2E8F0!important;
  border-radius:7px!important;
  background:#F8FAFC!important;
  color:#334155!important;
  font-size:11.5px!important;
  font-weight:700!important;
  line-height:1.35!important;
}
html body.openlib-journal-page .obj_article_summary .meta .authors:before,
html body.openlib-journal-page .obj_article_summary .authors:before{
  content:"\f007"!important;
  flex:0 0 auto!important;
  color:var(--olr-red)!important;
  font-family:FontAwesome!important;
  font-size:11px!important;
  font-weight:normal!important;
}
html body.openlib-journal-page .obj_article_summary .meta .pages,
html body.openlib-journal-page .obj_article_summary .pages{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin:0!important;
  padding:6px 9px!important;
  border:1px solid #FCA5A5!important;
  border-radius:7px!important;
  background:#FFF1F2!important;
  color:#B91C1C!important;
  font-size:11.5px!important;
  font-weight:800!important;
  line-height:1!important;
}
html body.openlib-journal-page .obj_article_summary .meta .pages:before,
html body.openlib-journal-page .obj_article_summary .pages:before{
  content:"\f02d"!important;
  color:#DC2626!important;
  font-family:FontAwesome!important;
  font-size:10.5px!important;
  font-weight:normal!important;
}

/* ===== Pagination: consistent compact page controls across journal/search/archive ===== */
html body .cmp_pagination{
  display:flex!important;
  justify-content:center!important;
  margin:26px 0 6px!important;
  padding:18px 0 0!important;
  border-top:1px solid #E2E8F0!important;
  clear:both!important;
}
html body .cmp_pagination ul{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
html body .cmp_pagination li{display:block!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;}
html body .cmp_pagination a,
html body .cmp_pagination .current,
html body .cmp_pagination li > span{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:38px!important;
  height:38px!important;
  margin:0!important;
  padding:0 11px!important;
  border:1px solid #E2E8F0!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#475569!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
html body .cmp_pagination a:hover,
html body .cmp_pagination a:focus{
  border-color:#FCA5A5!important;
  background:#FFF1F2!important;
  color:#B91C1C!important;
  outline:0!important;
}
html body .cmp_pagination .current,
html body .cmp_pagination .current > a,
html body .cmp_pagination a.current{
  border-color:var(--olr-red)!important;
  background:var(--olr-red)!important;
  color:#fff!important;
}

/* ===== Focus rings remain red ===== */
html body input:not([type="checkbox"]):not([type="radio"]):focus,
html body input:not([type="checkbox"]):not([type="radio"]):focus-visible,
html body select:focus,html body select:focus-visible,
html body textarea:focus,html body textarea:focus-visible{
  border-color:var(--olr-red)!important;
  outline:0!important;
  box-shadow:0 0 0 3px rgba(220,38,38,.14)!important;
}

/* ===== Dark mode parity ===== */
html[data-openlib-color-mode="dark"] body.openlib-journal-page .openlib_journal_profile.openlib_journal_profile--banner,
html[data-openlib-color-mode="dark"] body.openlib-journal-page .obj_issue_toc .sections > .section,
html[data-openlib-color-mode="dark"] body.openlib-journal-page .obj_issue_toc > .section{
  border-color:#3F2A2E!important;
  background:#111827!important;
}
html[data-openlib-color-mode="dark"] body.openlib-journal-page .obj_issue_toc .sections > .section > h2,
html[data-openlib-color-mode="dark"] body.openlib-journal-page .obj_issue_toc > .section > h2{
  border-color:#7F1D1D!important;
  background:#241416!important;
  color:#FCA5A5!important;
}
html[data-openlib-color-mode="dark"] body.openlib-journal-page .obj_article_summary .authors{
  border-color:#334155!important;background:#0F172A!important;color:#CBD5E1!important;
}
html[data-openlib-color-mode="dark"] body .cmp_pagination a,
html[data-openlib-color-mode="dark"] body .cmp_pagination li > span{
  border-color:#334155!important;background:#111827!important;color:#CBD5E1!important;
}
html[data-openlib-color-mode="dark"] body.openlib-journal-page.openlib-journal-nav-stuck .openlib_journal_header__navrow{
  border-color:#7F1D1D!important;background:rgba(17,24,39,.97)!important;
}

@media(max-width:640px){
  html body.openlib-journal-page .openlib_journal_profile__cover{height:145px!important;}
  html body .cmp_pagination a,html body .cmp_pagination .current,html body .cmp_pagination li > span{min-width:34px!important;height:34px!important;padding:0 9px!important;}
}
