.bm-gallery{--bm-main-w:650px;--bm-thumb-w:150px;max-width:1100px;margin:1rem auto;padding:.5rem;color:#222}
.bm-gallery *{box-sizing:border-box}
.bm-gallery-tools{display:flex;align-items:end;justify-content:center;gap:1rem;flex-wrap:wrap;margin:0 0 1rem}
.bm-gallery-tools label{display:grid;gap:.25rem;font-weight:600}
.bm-gallery input,.bm-gallery select{min-height:2.5rem;padding:.4rem .6rem;border:1px solid #aaa;border-radius:4px;font:inherit}
.bm-count{font-size:.95rem;color:#555}
.bm-viewer{display:flex;align-items:center;gap:.65rem;justify-content:center;scroll-margin-top:1.5rem}
.bm-viewer img{display:block;width:auto;max-width:min(var(--bm-main-w),calc(100vw - 8rem));max-height:75vh;height:auto;border:1px solid #ddd;box-shadow:0 2px 8px rgba(0,0,0,.08);background:#fff}
.bm-image-open{display:flex;align-items:center;justify-content:center;width:min(var(--bm-main-w),calc(100vw - 8rem));height:min(75vh,900px);max-width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.bm-image-open img{width:100%;height:100%;object-fit:contain}
.bm-prev,.bm-next,.bm-lightbox button{background:#f6f6f6;color:#111;border:1px solid #ddd;padding:.65rem 1rem;cursor:pointer;border-radius:6px;font:inherit}
.bm-prev:hover,.bm-next:hover,.bm-lightbox button:hover{background:#eee}
.bm-gallery button:focus-visible,.bm-gallery a:focus-visible,.bm-gallery input:focus-visible,.bm-gallery select:focus-visible{outline:3px solid #1769aa;outline-offset:2px}
.bm-current-description{text-align:center;max-width:var(--bm-main-w);margin:.7rem auto;color:#444}
.bm-actions{text-align:center;margin:.8rem 0}
.bm-download{display:inline-block;background:#111;color:#fff;padding:.7rem 1rem;border-radius:7px;text-decoration:none;font-size:1.1rem}
.bm-download:hover{opacity:.9;color:#fff}
.bm-thumbs{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:center;margin-top:1rem}
.bm-thumb{width:var(--bm-thumb-w);height:185px;padding:0;border:2px solid transparent;background:#fff;cursor:pointer;overflow:hidden;transition:border-color .2s}
.bm-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.bm-thumb:hover{border-color:#888}.bm-thumb.active{border-color:#111}.bm-thumb[hidden]{display:none}
.bm-no-results,.bm-empty{text-align:center;padding:1rem}
.bm-lightbox[aria-hidden="true"]{display:none}
.bm-lightbox{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;gap:1rem;padding:3rem 1rem 4.5rem;background:rgba(0,0,0,.92)}
.bm-lightbox-image{max-width:min(88vw,1300px);max-height:86vh;object-fit:contain;background:#fff}
.bm-lightbox .bm-lightbox-close{position:absolute;right:1rem;top:1rem;font-size:2rem;line-height:1;padding:.35rem .8rem}
.bm-lightbox-caption{position:absolute;bottom:.5rem;left:4rem;right:4rem;color:#fff;text-align:center}
.bm-lightbox-open{overflow:hidden}
@media(max-width:600px){.bm-gallery{padding:.25rem}.bm-viewer{gap:.25rem}.bm-image-open{width:calc(100vw - 5rem);height:65vh}.bm-prev,.bm-next{padding:.55rem}.bm-thumb{width:calc(33.333% - .5rem);height:130px}.bm-lightbox{gap:.25rem;padding-inline:.25rem}.bm-lightbox-image{max-width:78vw}.bm-lightbox button{padding:.45rem}}
