/* Hand-written cover gallery: existing inline images retain their layout. */
.large-cover-trigger { display:block; width:100%; margin:0; padding:0; border:0; background:none; text-align:left; line-height:0; cursor:zoom-in; }
.large-cover-trigger:focus { outline:none; box-shadow:none; }
.large-cover-trigger:focus-visible { outline:2px solid #8c9cae; outline-offset:3px; }
.large-cover-modal { padding:0 !important; background:transparent; }
.large-cover-modal .modal-dialog { width:calc(100% - 96px); max-width:960px; min-height:0; height:100vh; height:100dvh; margin:0 auto; padding:0; }
.large-cover-modal .modal-content { height:100%; border:0; border-radius:3px; background:#181a1e; box-shadow:0 12px 48px rgba(0,0,0,.4); }
.large-cover-modal .large-cover-viewport { position:relative; overflow:hidden; width:100%; height:100%; touch-action:none; overscroll-behavior:contain; user-select:none; cursor:zoom-in; }
.large-cover-modal .large-cover-viewport:focus { outline:none; }
.large-cover-modal .large-cover-viewport:focus-visible { outline:1px solid #999; outline-offset:-2px; }
.large-cover-modal .large-cover-viewport.is-pannable { cursor:grab; }
.large-cover-modal .large-cover-viewport.is-dragging { cursor:grabbing; }
.large-cover-modal .large-cover-image { position:absolute; top:0; left:0; max-width:none !important; max-height:none !important; min-width:0; min-height:0; margin:0; padding:0; border:0; border-radius:0; object-fit:fill; transform-origin:0 0; pointer-events:none; -webkit-user-drag:none; visibility:hidden; }
.large-cover-modal .cover-gallery-close, .large-cover-modal .cover-gallery-arrow { position:absolute; z-index:2; display:flex; align-items:center; justify-content:center; padding:0; border:0; color:white; background:rgba(0,0,0,.25); cursor:pointer; opacity:.85; }
.large-cover-modal .cover-gallery-close { width:36px; height:36px; right:8px; top:8px; font:32px/1 sans-serif; background:rgba(0,0,0,.5); border-radius:50%; }
.large-cover-modal .cover-gallery-arrow { width:40px; height:64px; top:50%; transform:translateY(-50%); border-radius:3px; }
.large-cover-modal .cover-gallery-prev { left:8px; }
.large-cover-modal .cover-gallery-next { right:8px; }
.large-cover-modal .cover-gallery-arrow[hidden] { display:none; }
.large-cover-modal .cover-gallery-close:hover, .large-cover-modal .cover-gallery-arrow:hover { opacity:1; }
.large-cover-modal button:focus { outline:none; box-shadow:none; }
.large-cover-modal button:focus-visible { outline:2px solid #b6c3d2; outline-offset:3px; }
.large-cover-modal .cover-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:575.98px) {
 .large-cover-modal .modal-dialog { width:calc(100% - 24px); height:100vh; height:100dvh; margin:0 auto; }
 .large-cover-modal .cover-gallery-prev { left:2px; }
 .large-cover-modal .cover-gallery-next { right:2px; }
}
@media print { .large-cover-modal { display:none !important; } }
