/* Click-to-enlarge popup for product pictures (js/image-zoom.js). */
.bml-zoomable { cursor: zoom-in; }
.bml-zoom-frame { position: relative; }
.bml-zoom-frame::before { content: ""; position: absolute; top: 12px; right: 12px; width: 34px; height: 34px; border-radius: 10px; background: rgba(255, 255, 255, .94) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b55ff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4h5v5M9 20H4v-5M20 4l-6 6M4 20l6-6'/%3E%3C/svg%3E") center / 17px no-repeat; box-shadow: 0 8px 20px -10px rgba(7, 23, 53, .45); opacity: 0; transition: opacity .15s ease; pointer-events: none; z-index: 3; }
.bml-zoom-frame:hover::before { opacity: 1; }
.bml-zoom { width: 100vw; max-width: 100vw; height: 100vh; max-height: 100vh; margin: 0; padding: 28px; border: 0; background: transparent; display: grid; place-items: center; }
.bml-zoom:not([open]) { display: none; }
.bml-zoom::backdrop { background: rgba(5, 14, 32, .78); backdrop-filter: blur(6px); }
.bml-zoom img { display: block; max-width: min(96vw, 2200px); max-height: 92vh; width: auto; height: auto; border-radius: 12px; box-shadow: 0 40px 120px -30px rgba(0, 0, 0, .6); background: #fff; cursor: zoom-out; animation: bml-zoom-in .22s cubic-bezier(.16, 1, .3, 1); }
.bml-zoom-close { position: fixed; top: 18px; right: 18px; width: 44px; height: 44px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .95); color: #071735; font-size: 26px; line-height: 1; cursor: pointer; box-shadow: 0 10px 30px -10px rgba(0, 0, 0, .5); }
.bml-zoom-close:focus-visible { outline: 3px solid rgba(11, 85, 255, .5); outline-offset: 2px; }
html.bml-zoom-open { overflow: hidden; }
@keyframes bml-zoom-in { from { opacity: 0; transform: scale(.97); } to { opacity: 1; transform: none; } }
@media (max-width: 700px) { .bml-zoom { padding: 12px; } .bml-zoom img { max-width: 100%; border-radius: 8px; } .bml-zoom-frame::before { display: none; } }
