/* =============================================================================
   WBV — Lightbox styles. CANONICAL, single source of truth.
   Enqueued by wbv-20-page-external-css-loader (the $is_detail block) ONLY on
   the three detail page types that emit lightbox markup: daily (wbv_daily_slug
   query var), LT + sale (wbv_property singular), legacy villa CPT singular.
   Overlay container + JS still live in wbv-00 (wp_footer). Extracted out of
   wbv_added_styles.min.css on 2026-06-20 so it no longer loads site-wide.
   ============================================================================= */
.wbv-lightbox-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.94);z-index:999999;display:none;grid-template-rows:1fr auto;align-items:center;justify-items:center;padding:60px 20px 30px}
.wbv-lightbox-overlay.active{display:grid}
.wbv-lightbox-image-wrap{grid-row:1;position:relative;display:flex;align-items:center;justify-content:center}
.wbv-lightbox-image-wrap img{max-width:90vw;max-height:78vh;object-fit:contain;border-radius:8px;box-shadow:0 25px 70px rgba(0,0,0,.55);transition:opacity .22s ease}
.wbv-lightbox-image-wrap .wbv-lightbox-counter{position:absolute;top:18px;right:18px;z-index:3;padding:4px 10px;font-size:12px;letter-spacing:.06em;background:rgba(0,0,0,0.22);color:#f5f5f5;border-radius:999px;backdrop-filter:blur(4px);font-weight:400}
.wbv-lightbox-overlay .wbv-prev,.wbv-lightbox-overlay .wbv-next{position:absolute;top:50%;transform:translateY(-50%);font-size:34px;color:#fff;background:rgba(0,0,0,0.25);border:0;border-radius:50%;width:52px;height:52px;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center;line-height:1}
.wbv-lightbox-overlay .wbv-prev{left:28px}
.wbv-lightbox-overlay .wbv-next{right:28px}
.wbv-lightbox-close{position:absolute;top:max(18px,env(safe-area-inset-top,0px));left:max(18px,env(safe-area-inset-left,0px));z-index:1000000;width:44px;height:44px;display:flex;align-items:center;justify-content:center;padding:0;font-size:26px;line-height:1;color:#fff;background:rgba(0,0,0,.55);border:0;border-radius:50%;cursor:pointer;-webkit-tap-highlight-color:transparent}
.wbv-lightbox-thumbs{grid-row:2;margin-top:20px;display:flex;gap:12px;justify-content:center;align-items:center;min-height:72px;overflow:visible}
.wbv-lightbox-thumbs img{width:78px;height:52px;object-fit:cover;border-radius:3px;opacity:.6;cursor:pointer;transition:opacity .2s ease,transform .25s ease;display:block}
.wbv-lightbox-thumbs img.active{opacity:1;outline:1px solid #fff;outline-offset:2px;transform:scale(1.02)}
@media (max-width:480px),(max-height:680px),(orientation:landscape) and (max-width:900px){.wbv-lightbox-overlay.active{display:flex !important;flex-direction:column !important;align-items:stretch !important;justify-content:flex-start !important;box-sizing:border-box !important;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;padding:40px 5px 8px !important;gap:6px;overflow:hidden !important;overscroll-behavior:contain}.wbv-lightbox-image-wrap{flex:1 1 0 !important;width:100% !important;min-height:0 !important;min-width:0 !important;display:flex !important;align-items:center !important;justify-content:center !important;box-sizing:border-box !important;touch-action:pan-y;overflow:hidden;position:relative}.wbv-lightbox-image-wrap img{max-width:100% !important;max-height:100% !important;width:auto !important;height:auto !important;object-fit:contain !important;margin:0 auto !important;display:block !important}.wbv-lightbox-thumbs{flex:0 0 auto !important;width:100% !important;height:42px;min-height:0 !important;margin:0 !important;overflow-x:auto !important;overflow-y:hidden !important;-webkit-overflow-scrolling:touch;justify-content:safe center !important;padding:0 6px !important;box-sizing:border-box !important;align-items:center;gap:6px}.wbv-lightbox-thumbs img{height:34px !important;width:auto !important;flex-shrink:0 !important}.wbv-lightbox-overlay .wbv-prev,.wbv-lightbox-overlay .wbv-next{display:none !important}}
@media (orientation:landscape) and (max-height:500px),(max-height:420px){.wbv-lightbox-overlay.active{padding:28px 5px 4px !important;gap:0 !important;position:fixed !important}.wbv-lightbox-image-wrap{flex:1 1 0 !important;min-height:0 !important}.wbv-lightbox-image-wrap img{max-height:100% !important}.wbv-lightbox-thumbs{position:absolute !important;bottom:6px !important;left:50% !important;right:auto !important;transform:translateX(-50%) !important;width:auto !important;max-width:calc(100vw - 16px) !important;height:38px !important;background:rgba(0,0,0,0.55) !important;border-radius:10px !important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:0 6px !important;z-index:10;box-shadow:0 4px 16px rgba(0,0,0,.4)}.wbv-lightbox-thumbs img{height:30px !important}}

/* <=767px: pin the counter to the overlay top-right (aligned with the close). */
@media (max-width: 767px){.wbv-lightbox-image-wrap .wbv-lightbox-counter{position:fixed;top:max(18px,env(safe-area-inset-top,0px));right:max(18px,env(safe-area-inset-right,0px));z-index:1000000}}
