/* Open Library portal cover sizing refinement. Loaded last. */
:root{
  --openlib-card-cover-w:120px;
  --openlib-card-cover-h:172px;
}

/* Two-column cards have enough room for a larger portrait cover. */
html body.openlib-site-index .openlib_journal_main{
  grid-template-columns:var(--openlib-card-cover-w) minmax(0,1fr) !important;
  gap:18px !important;
  min-height:208px !important;
  align-items:start !important;
  padding:18px 18px 16px !important;
}

html body.openlib-site-index .openlib_journal_media{
  width:var(--openlib-card-cover-w) !important;
  min-width:var(--openlib-card-cover-w) !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
}

html body.openlib-site-index .openlib_journal_media > a{
  box-sizing:border-box !important;
  width:var(--openlib-card-cover-w) !important;
  height:var(--openlib-card-cover-h) !important;
  min-width:var(--openlib-card-cover-w) !important;
  min-height:var(--openlib-card-cover-h) !important;
  max-width:var(--openlib-card-cover-w) !important;
  max-height:var(--openlib-card-cover-h) !important;
  border-radius:10px !important;
  overflow:hidden !important;
}

/* Keep real journal thumbnails portrait and visually consistent. */
html body.openlib-site-index .openlib_journal_media img{
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:9px !important;
}

/* Fallback cover uses the same portrait proportions. */
html body.openlib-site-index .openlib_journal_placeholder{
  width:var(--openlib-card-cover-w) !important;
  height:var(--openlib-card-cover-h) !important;
  min-width:var(--openlib-card-cover-w) !important;
  min-height:var(--openlib-card-cover-h) !important;
  max-width:var(--openlib-card-cover-w) !important;
  max-height:var(--openlib-card-cover-h) !important;
}
html body.openlib-site-index .openlib_journal_placeholder strong{
  max-width:calc(100% - 18px) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* Give the title/metadata column enough breathing room next to the bigger cover. */
html body.openlib-site-index .openlib_journal_content{
  min-width:0 !important;
  padding-top:2px !important;
}
html body.openlib-site-index .openlib_journal_content h3{
  margin-top:0 !important;
}

/* On narrower layouts reduce the cover a little; mobile remains one card per row. */
@media (max-width:1050px){
  :root{
    --openlib-card-cover-w:108px;
    --openlib-card-cover-h:155px;
  }
  html body.openlib-site-index .openlib_journal_main{
    gap:15px !important;
    min-height:190px !important;
  }
}

@media (max-width:860px){
  :root{
    --openlib-card-cover-w:112px;
    --openlib-card-cover-h:160px;
  }
}

@media (max-width:520px){
  :root{
    --openlib-card-cover-w:96px;
    --openlib-card-cover-h:138px;
  }
  html body.openlib-site-index .openlib_journal_main{
    grid-template-columns:var(--openlib-card-cover-w) minmax(0,1fr) !important;
    gap:13px !important;
    min-height:170px !important;
    padding:15px !important;
  }
}
