/* Container */
.si-thumbs-wrap { margin-top: .75rem; position: relative; }
.si-thumbs-track { display: grid; grid-auto-flow: column; gap: .5rem; overflow-x: auto; scroll-snap-type: x mandatory; padding: .25rem .25rem; scrollbar-width: thin; }
.si-thumbs-track::-webkit-scrollbar { height: 8px; }
.si-thumbs-track::-webkit-scrollbar-thumb { background: rgba(0,0,0,.2); border-radius: 8px; }

.si-thumb { width: 92px; aspect-ratio: 1 / 1; object-fit: cover; border-radius: .5rem; scroll-snap-align: start; cursor: pointer; border: 2px solid transparent; transition: border-color .15s ease, transform .15s ease; }
.si-thumb:hover { transform: translateY(-1px); }
.si-thumb[aria-current="true"] { border-color: var(--si-accent, #111); }

/* Prev/Next knoppen */
.si-nav-btn { position: absolute; top: 50%; transform: translateY(-50%); background: rgba(255,255,255,.9); border: 1px solid rgba(0,0,0,.08); width: 34px; height: 34px; border-radius: 999px; display: grid; place-items: center; cursor: pointer; box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.si-nav-btn svg { width: 18px; height: 18px; }
.si-nav-prev { left: -8px; }
.si-nav-next { right: -8px; }
@media (max-width: 768px){ .si-nav-btn { display:none; } }

/* Dots & caption */
.si-dots { display:flex; gap:6px; justify-content:center; margin-top:.5rem; }
.si-dot { width:8px; height:8px; border-radius:999px; background:#d0d0d0; cursor:pointer; }
.si-dot[aria-current="true"] { background:#111; }
.si-caption { font-size:.9rem; color:#555; text-align:center; margin-top:.25rem; min-height:1em; }

/* Fade animaties (visueel, image swap is instant) */
.woocommerce-product-gallery__image img { transition: opacity var(--si-speed, 400ms) ease; }
