/* Squarebrandix: additions on top of the bundled demo styles (Leaflet map, quick view, no-cart tweaks). */
.dtsl-listing-output-map.sqbx-map { min-height: 700px; height: 100%; }
.leaflet-container { font-family: inherit; }
.sqbx-marker .sqbx-marker-pin { display: block; width: 30px; height: 30px; border-radius: 50% 50% 50% 0; background: var(--wdtPrimaryColor, #ff5e62); transform: rotate(-45deg); border: 3px solid #fff; box-shadow: 0 6px 16px rgba(0,0,0,.25); position: relative; top: 2px; left: 0; }
.sqbx-marker .sqbx-marker-pin:after { content: ""; position: absolute; width: 10px; height: 10px; background: #fff; border-radius: 50%; top: 7px; left: 7px; }
.leaflet-popup-content-wrapper { border-radius: 10px; padding: 0; overflow: hidden; }
.leaflet-popup-content { margin: 0; width: 260px !important; }
.dtsl-marker-info-box-image img { display: block; width: 100%; height: 140px; object-fit: cover; }
.dtsl-marker-info-box-content { padding: 14px 16px; }
.dtsl-marker-info-box-content h5 { margin: 0 0 6px; font-size: 16px; }
.dtsl-marker-info-box-content p { margin: 0; font-size: 13px; line-height: 1.5; }
/* Quick view */
#yith-quick-view-modal { display: none; }
#yith-quick-view-modal.open { display: block; position: fixed; inset: 0; z-index: 100000; }
#yith-quick-view-modal .yith-quick-view-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.6); }
#yith-quick-view-modal .yith-wcqv-wrapper { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 1000px; max-width: 92vw; max-height: 90vh; overflow: auto; background: #fff; z-index: 2; }
#yith-quick-view-modal .yith-wcqv-head { position: absolute; right: 0; top: 0; z-index: 3; }
#yith-quick-view-modal #yith-quick-view-close { display: block; width: 40px; height: 40px; line-height: 40px; text-align: center; font-size: 20px; color: #333; text-decoration: none; }
#yith-quick-view-modal .product-gallery-summary { display: flex; gap: 40px; padding: 40px; }
#yith-quick-view-modal .quick-view-images { flex: 0 0 45%; }
#yith-quick-view-modal .quick-view-images img { width: 100%; height: auto; display: block; }
#yith-quick-view-modal .wdt-product-summary { flex: 1; }
#yith-quick-view-modal.loading .yith-wcqv-main:before { content: ""; position: absolute; inset: 0; background: #fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"><circle cx="20" cy="20" r="16" stroke="%23ff5e62" stroke-width="4" fill="none" stroke-dasharray="70 30"><animateTransform attributeName="transform" type="rotate" from="0 20 20" to="360 20 20" dur="1s" repeatCount="indefinite"/></circle></svg>') center no-repeat; z-index: 5; min-height: 300px; }
body.sqbx-qv-open { overflow: hidden; }
@media (max-width: 767px) { #yith-quick-view-modal .product-gallery-summary { flex-direction: column; padding: 24px; } }
/* Variation swatches are display-only (no cart) */
.sqbx-variations .single_variation_wrap { display: none; }
/* Product card: quick view button in the demo's icon-button style */
.product-buttons-wrapper.product-icons .wcqv_btn_wrapper a { font-size: 0; }
.product-buttons-wrapper.product-icons .wcqv_btn_wrapper a:before { content: "\f06e"; font-family: "Font Awesome 5 Free"; font-weight: 400; font-size: 16px; }
/* Leaflet div icons: no default box */
.leaflet-div-icon.sqbx-marker, .sqbx-marker { background: transparent !important; border: 0 !important; box-shadow: none !important; }
