/* Galeria produktu: pojedyncza okladka i poziomy pasek miniatur. */
.ab-gallery .ab-gallery-cover { display: block; position: relative; cursor: zoom-in; }
.ab-gallery .product-cover img { display: block; width: 100%; height: auto; }
.ab-gallery .ab-gallery-zoom { position: absolute; right: 12px; bottom: 12px; width: 40px; height: 40px; border-radius: 50%; background: #fff; color: #333; display: grid; place-items: center; font-size: 0; line-height: 0; box-shadow: 0 1px 6px #0002; }
/* Ikona wektorowa nie zalezy od linii bazowej ani metryk czcionki. */
.ab-gallery .ab-gallery-zoom::before { content: ""; position: absolute; inset: 0; margin: auto; width: 24px; height: 24px; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='10' cy='10' r='6'/%3E%3Cpath d='m14.5 14.5 5.5 5.5'/%3E%3C/svg%3E"); }
.ab-gallery .ab-gallery-thumbs { display: flex; gap: 10px; margin: 14px 0 0; padding: 2px; list-style: none; overflow-x: auto; }
.ab-gallery-thumbs li { flex: 0 0 80px; }
.ab-gallery .ab-gallery-thumb { display: block; border: 1px solid #ddd; padding: 3px; }
.ab-gallery .ab-gallery-thumb[aria-current="true"] { border: 2px solid #6e552d; padding: 2px; }
.ab-gallery .ab-gallery-thumb img { display: block; width: 100%; height: auto; }
.ab-gallery a:focus-visible { outline: 2px solid #6e552d; outline-offset: 2px; }
.ab-product-lightbox { --pswp-bg: #151515; --pswp-icon-color: #fff; --pswp-icon-color-secondary: #222; z-index: 100000; }
.ab-product-lightbox .pswp__img { max-width: none; }
@media (max-width: 575px) { .ab-gallery-thumbs li { flex-basis: 64px; } }
