/* Kizárólag a Budapest Monographs blokkra korlátozott stílusok. */
.bm-monographs { --bm-accent: #24486a; --bm-border: #d7dee5; color: inherit; }
.bm-monographs, .bm-monographs * { box-sizing: border-box; }
.bm-monographs h2 { margin: 0 0 1.25rem; font-size: 1.35rem; line-height: 1.35; }
.bm-monographs__item { display: flex; align-items: flex-start; gap: 22px; padding: 20px 0; border-bottom: 1px solid var(--bm-border); }
.bm-monographs__cover { flex: 0 0 100px; width: 100px; margin: 0; padding: 0; border: 0; background: transparent; cursor: zoom-in; line-height: 0; }
.bm-monographs__cover img { display: block; width: 100%; height: auto; box-shadow: 0 2px 8px rgb(0 0 0 / 12%); }
.bm-monographs__cover:hover img { box-shadow: 0 3px 12px rgb(0 0 0 / 22%); }
.bm-monographs__cover:focus-visible, .bm-lightbox__close:focus-visible { outline: 3px solid #70b6fa; outline-offset: 4px; }
.bm-monographs__info { flex: 1 1 auto; min-width: 0; line-height: 1.5; }
.bm-monographs__author { font-weight: 600; margin-bottom: 0.2rem; }
.bm-monographs__role { font-weight: 400; }
.bm-monographs__title { margin-bottom: 0.35rem; }
.bm-monographs__title cite { font-style: italic; }
.bm-monographs__series, .bm-monographs__year { font-size: .94em; }
.bm-monographs__series { color: #4a5660; }
.bm-monographs__year { margin-top: .12rem; }
/* A jövőbeli reszponzív sablonnal is működik. */
@media (max-width: 520px) {
  .bm-monographs__item { gap: 14px; padding: 16px 0; }
  .bm-monographs__cover { flex-basis: 80px; width: 80px; }
}
/* Képnagyító */
.bm-lightbox[hidden] { display: none !important; }
.bm-lightbox { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 28px; background: rgb(0 0 0 / 87%); color: #fff; box-sizing: border-box; }
.bm-lightbox__figure { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; max-width: 100%; margin: 0; }
.bm-lightbox__image { display: block; width: auto; height: auto; max-width: calc(100vw - 56px); max-height: calc(100vh - 105px); object-fit: contain; box-shadow: 0 6px 28px rgb(0 0 0 / 45%); }
.bm-lightbox__caption { max-width: 85vw; text-align: center; font-size: .92rem; line-height: 1.4; }
.bm-lightbox__close { position: absolute; right: 15px; top: 10px; display: grid; place-items: center; border: 0; background: transparent; color: white; font: 36px/1 Arial, sans-serif; width: 48px; height: 48px; cursor: pointer; }
body.bm-lightbox-open { overflow: hidden; }
@media (max-width: 520px) { .bm-lightbox { padding: 16px; } .bm-lightbox__image { max-width: calc(100vw - 32px); max-height: calc(100dvh - 100px); } }
