:root{--rlbx-overlay-bg: rgba(0, 0, 0, .95);--rlbx-z: 9999;--rlbx-nav-size: 3rem;--rlbx-nav-bg: rgba(255, 255, 255, .08);--rlbx-nav-bg-hover: rgba(255, 255, 255, .18);--rlbx-nav-color: #fff;--rlbx-nav-radius: 50%;--rlbx-nav-border: rgba(255, 255, 255, .14);--rlbx-close-size: 2.5rem;--rlbx-close-bg: rgba(255, 255, 255, .08);--rlbx-close-bg-hover: rgba(255, 255, 255, .18);--rlbx-close-color: #fff;--rlbx-counter-color: rgba(255, 255, 255, .75);--rlbx-counter-bg: rgba(0, 0, 0, .45);--rlbx-caption-color: rgba(255, 255, 255, .85);--rlbx-caption-bg: rgba(0, 0, 0, .5);--rlbx-thumb-size: 4rem;--rlbx-thumb-radius: 4px;--rlbx-thumb-ring: #fff;--rlbx-thumb-bg: rgba(255, 255, 255, .06);--rlbx-thumb-strip-bg: rgba(0, 0, 0, .6);--rlbx-zoom-bg: rgba(0, 0, 0, .55);--rlbx-zoom-color: #fff;--rlbx-duration-overlay: .22s;--rlbx-duration-image: .28s;--rlbx-easing: cubic-bezier(.4, 0, .2, 1);--rlbx-easing-spring: cubic-bezier(.22, 1, .36, 1)}.rlbx-overlay{position:fixed;inset:0;z-index:var(--rlbx-z);background:var(--rlbx-overlay-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transition:opacity var(--rlbx-duration-overlay) var(--rlbx-easing);will-change:opacity}.rlbx-overlay--visible{opacity:1}.rlbx-live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.rlbx-container{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;outline:none}.rlbx-counter{position:absolute;top:1rem;left:50%;transform:translate(-50%);font-size:.8125rem;font-weight:500;color:var(--rlbx-counter-color);background:var(--rlbx-counter-bg);padding:.25rem .625rem;border-radius:100px;pointer-events:none;letter-spacing:.03em;white-space:nowrap;z-index:2}.rlbx-close{position:absolute;top:.875rem;right:.875rem;width:var(--rlbx-close-size);height:var(--rlbx-close-size);display:flex;align-items:center;justify-content:center;background:var(--rlbx-close-bg);color:var(--rlbx-close-color);border:none;border-radius:var(--rlbx-nav-radius);cursor:pointer;transition:background .15s var(--rlbx-easing),transform .15s var(--rlbx-easing);z-index:2;flex-shrink:0}.rlbx-close:hover{background:var(--rlbx-close-bg-hover)}.rlbx-close:active{transform:scale(.92)}.rlbx-nav{position:absolute;top:50%;transform:translateY(-50%);width:var(--rlbx-nav-size);height:var(--rlbx-nav-size);display:flex;align-items:center;justify-content:center;background:var(--rlbx-nav-bg);color:var(--rlbx-nav-color);border:1px solid var(--rlbx-nav-border);border-radius:var(--rlbx-nav-radius);cursor:pointer;transition:background .15s var(--rlbx-easing),transform .15s var(--rlbx-easing),opacity .15s var(--rlbx-easing);z-index:2}.rlbx-nav:hover{background:var(--rlbx-nav-bg-hover);transform:translateY(-50%) scale(1.08)}.rlbx-nav:active{transform:translateY(-50%) scale(.94)}.rlbx-nav:disabled{opacity:.25;cursor:default;pointer-events:none}.rlbx-nav--prev{left:1rem}.rlbx-nav--next{right:1rem}.rlbx-image-area{display:flex;align-items:center;justify-content:center;max-width:90vw;max-height:85vh;position:relative;overflow:hidden}.rlbx-image{max-width:90vw;max-height:85vh;width:auto;height:auto;object-fit:contain;display:block;border-radius:4px;user-select:none;transform-origin:center;transition:opacity var(--rlbx-duration-image) var(--rlbx-easing),transform var(--rlbx-duration-image) var(--rlbx-easing-spring);opacity:0;transform:translate(0) scale(.97)}.rlbx-image--visible{opacity:1;transform:translate(0) scale(1)!important}.rlbx-image--from-left{transform:translate(-90px) scale(.97)}.rlbx-image--from-right{transform:translate(90px) scale(.97)}.rlbx-container[data-zoom-active] .rlbx-image{cursor:grab}.rlbx-container[data-zoom-active] .rlbx-image:active{cursor:grabbing}.rlbx-zoom-controls{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.375rem;background:var(--rlbx-zoom-bg);color:var(--rlbx-zoom-color);border-radius:100px;padding:.25rem .625rem;z-index:2}.rlbx-zoom-btn{width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:inherit;cursor:pointer;border-radius:50%;transition:background .12s var(--rlbx-easing);flex-shrink:0}.rlbx-zoom-btn:hover{background:#ffffff1f}.rlbx-zoom-btn:disabled{opacity:.35;cursor:default}.rlbx-zoom-level{font-size:.75rem;font-variant-numeric:tabular-nums;min-width:3ch;text-align:center;pointer-events:none}.rlbx-caption{position:absolute;bottom:3.5rem;left:50%;transform:translate(-50%);max-width:min(640px,80vw);text-align:center;font-size:.875rem;line-height:1.55;color:var(--rlbx-caption-color);background:var(--rlbx-caption-bg);padding:.4rem .875rem;border-radius:6px;pointer-events:none;z-index:2}.rlbx-container[data-zoom-active] .rlbx-caption{bottom:5rem}.rlbx-thumbnails{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;gap:.375rem;padding:.625rem .875rem;overflow-x:auto;overflow-y:hidden;background:var(--rlbx-thumb-strip-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);scrollbar-width:none;z-index:3;-ms-overflow-style:none}.rlbx-thumbnails::-webkit-scrollbar{display:none}.rlbx-thumb{flex-shrink:0;width:var(--rlbx-thumb-size);height:var(--rlbx-thumb-size);border-radius:var(--rlbx-thumb-radius);overflow:hidden;cursor:pointer;border:2px solid transparent;background:var(--rlbx-thumb-bg);padding:0;opacity:.5;transform:scale(.92) translateY(0);transition:border-color .2s var(--rlbx-easing),opacity .2s var(--rlbx-easing),transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s var(--rlbx-easing)}.rlbx-thumb img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.rlbx-thumb:hover{opacity:.85;transform:scale(1.06) translateY(-4px);box-shadow:0 6px 16px #0006}.rlbx-thumb--active{border-color:var(--rlbx-thumb-ring);opacity:1;transform:scale(1.12) translateY(-5px);box-shadow:0 8px 20px #00000080}@media(prefers-reduced-motion:reduce){.rlbx-overlay{transition:none}.rlbx-image{transition:opacity var(--rlbx-duration-image) var(--rlbx-easing);transform:none!important}.rlbx-image--visible{opacity:1}.rlbx-nav,.rlbx-close,.rlbx-thumb{transition:none}}@media(max-width:640px){.rlbx-nav{width:2.5rem;height:2.5rem}.rlbx-nav--prev{left:.5rem}.rlbx-nav--next{right:.5rem}.rlbx-image-area,.rlbx-image{max-width:100vw;max-height:75vh}.rlbx-caption{bottom:5rem;font-size:.8125rem}.rlbx-thumb{--rlbx-thumb-size: 3.25rem}}
