/* Galleria + lightbox BlaBlaVela */
.bvg{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:16px}
.bvg-i{position:relative;display:block;overflow:hidden;border-radius:8px;background:#dfeaf3;aspect-ratio:4/3;cursor:zoom-in;outline-offset:2px}
.bvg-i img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease,filter .2s}
.bvg-i:hover img{transform:scale(1.04)}
.bvg-main{grid-column:1/-1;aspect-ratio:16/10;border-radius:10px}
.bvg-x{display:none}
.bvg-count,.bvg-more{position:absolute;font-weight:600;color:#fff;background:rgba(10,25,40,.72);backdrop-filter:blur(2px)}
.bvg-count{right:10px;bottom:10px;font-size:.85rem;padding:4px 10px;border-radius:999px}
.bvg-more{inset:0;display:flex;align-items:center;justify-content:center;font-size:1.5rem}
@media(max-width:760px){.bvg{gap:4px}.bvg-main{aspect-ratio:4/3}}

.bvl{position:fixed;inset:0;z-index:9999;display:none;flex-direction:column;background:#060e16;color:#fff;touch-action:none;user-select:none;-webkit-user-select:none}
.bvl.on{display:flex}
.bvl-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;font-size:.95rem}
.bvl-num{white-space:nowrap}.bvl-cap{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;opacity:.9}
.bvl-btn{appearance:none;border:0;background:rgba(255,255,255,.12);color:#fff;width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none;transition:background .15s}
.bvl-btn:hover,.bvl-btn:focus-visible{background:rgba(255,255,255,.28)}
.bvl-btn svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bvl-tools{display:flex;gap:8px}
.bvl-stage{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.bvl-img{max-width:100%;max-height:100%;object-fit:contain;transform-origin:0 0;will-change:transform;cursor:zoom-in;opacity:0;transition:opacity .2s}
.bvl-img.ok{opacity:1}.bvl-img.z{cursor:grab}.bvl-img.drag{cursor:grabbing}
.bvl-spin{position:absolute;width:34px;height:34px;border:3px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:bvlr .8s linear infinite;display:none}
.bvl.load .bvl-spin{display:block}
@keyframes bvlr{to{transform:rotate(360deg)}}
.bvl-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;background:rgba(255,255,255,.14)}
.bvl-prev{left:12px}.bvl-next{right:12px}
.bvl.single .bvl-nav,.bvl.single .bvl-strip,.bvl.single .bvl-num{display:none}
.bvl.zoomed .bvl-nav{display:none}
.bvl-strip{display:flex;gap:6px;overflow-x:auto;padding:10px 14px calc(10px + env(safe-area-inset-bottom));justify-content:safe center;scrollbar-width:thin}
.bvl-th{flex:none;width:64px;height:48px;border-radius:6px;overflow:hidden;border:2px solid transparent;opacity:.55;padding:0;background:#223;cursor:pointer}
.bvl-th img{width:100%;height:100%;object-fit:cover;display:block}
.bvl-th.cur{opacity:1;border-color:#fff}
.bvl-th:hover{opacity:.9}
@media(max-width:760px){.bvl-nav{display:none}.bvl-th{width:52px;height:40px}}
@media(prefers-reduced-motion:reduce){.bvg-i img,.bvl-img{transition:none}.bvl-spin{animation-duration:2s}}
body.bvl-lock{overflow:hidden}
