/* Product gallery: one calm square stage, separated framed thumbnails. */
.woocommerce div.product div.images{min-width:0}
.woocommerce div.product .woocommerce-product-gallery .flex-viewport,.woocommerce div.product .woocommerce-product-gallery>.woocommerce-product-gallery__wrapper{border:1px solid var(--line);border-radius:12px;background:var(--soft);overflow:hidden}
.woocommerce div.product div.images .woocommerce-product-gallery__image a>img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:0;background:var(--soft)}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger{top:16px;right:16px;width:44px;height:44px;border:1px solid var(--line);box-shadow:0 2px 8px #0000000a;background:var(--paper)}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger::before{border-color:var(--ink)}.woocommerce div.product div.images .woocommerce-product-gallery__trigger::after{background:var(--ink)}
.woocommerce div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(auto-fill,86px);gap:12px;margin:16px 0 0;padding:0;list-style:none;overflow:visible}
.woocommerce div.product div.images .flex-control-thumbs li{width:auto!important;float:none;margin:0;padding:0;min-width:0}
.woocommerce div.product div.images .flex-control-thumbs li img{display:block;width:86px;height:86px;aspect-ratio:1;object-fit:cover;opacity:1;border:2px solid var(--line);border-radius:8px;padding:4px;background:var(--paper);cursor:pointer;transition:border-color .15s}
.woocommerce div.product div.images .flex-control-thumbs li img:hover{border-color:var(--muted)}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active{border-color:var(--accent)}
.rn-gallery-tools{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:12px;font-size:14px;color:var(--muted)}.rn-gallery-tools p{margin:0}.rn-gallery-nav{display:flex;align-items:center;gap:8px}.rn-gallery-nav button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink)}.rn-gallery-nav button:hover:not(:disabled){border-color:var(--accent);background:var(--soft)}.rn-gallery-nav button:disabled{opacity:.4;cursor:default}.rn-gallery-nav svg{width:18px;height:18px}
/* Cart actions retain the original WooCommerce form and validation. */
.woocommerce div.product form.cart:not(.variations_form):has(.rn-buy-now),.woocommerce div.product form.cart .woocommerce-variation-add-to-cart:has(.rn-buy-now){display:grid;grid-template-columns:80px minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:stretch}
.woocommerce div.product form.cart:has(.rn-buy-now)::before,.woocommerce div.product form.cart:has(.rn-buy-now)::after{display:none}
.woocommerce div.product form.cart:has(.rn-buy-now) div.quantity{margin:0;float:none;align-self:start}
.woocommerce div.product form.cart:has(.rn-buy-now) .quantity .qty{width:80px;min-height:52px}
.woocommerce div.product form.cart:has(.rn-buy-now) button.single_add_to_cart_button,.woocommerce div.product form.cart button.rn-buy-now{float:none;margin:0;min-height:52px;width:100%;padding:12px 14px;font-size:14px;line-height:1.4;white-space:normal;text-align:center;border-radius:8px;box-shadow:none}
.woocommerce div.product form.cart:has(.rn-buy-now) button.single_add_to_cart_button.button{background:transparent;color:var(--accent);border:1px solid var(--accent)}
.woocommerce div.product form.cart:has(.rn-buy-now) button.single_add_to_cart_button.button:hover{background:var(--soft);color:var(--accent)}
.woocommerce div.product form.cart button.rn-buy-now{background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);font-weight:650}
.woocommerce div.product form.cart button.rn-buy-now:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:600px){.woocommerce div.product div.images .flex-control-thumbs{grid-template-columns:repeat(auto-fill,72px);gap:10px}.woocommerce div.product div.images .flex-control-thumbs li img{width:72px;height:72px}.woocommerce div.product form.cart:not(.variations_form):has(.rn-buy-now),.woocommerce div.product form.cart .woocommerce-variation-add-to-cart:has(.rn-buy-now){grid-template-columns:repeat(2,minmax(0,1fr))}.woocommerce div.product form.cart:has(.rn-buy-now) div.quantity{grid-column:1/-1;margin-bottom:2px}}
/* Keep the native lightbox arrows legible on pale product photographs. */
:root .pswp .pswp__button--arrow--left::before,:root .pswp .pswp__button--arrow--right::before{background-color:rgba(0,0,0,.62)!important;border-radius:6px}
/* A native select with a token-colored chevron, legible in either mode. */
.woocommerce div.product form.cart .variations select{appearance:none;-webkit-appearance:none;padding-right:38px;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat}
