.masonry-gallery{margin:20px 0;width:100% !important;max-width:none !important;padding:0 8px;display:block;box-sizing:border-box}.image-reapetor{width:100% !important;height:auto !important}.grid-sizer{width:0}.grid-item{width:calc(50% - 8px);margin-bottom:16px;padding:0;box-sizing:border-box;break-inside:avoid}@media(max-width:479px){.masonry-gallery{padding:0 4px}.grid-item{width:calc(50% - 4px) !important;margin-bottom:12px}}@media(min-width:480px) and (max-width:767px){.masonry-gallery{padding:0 8px}.grid-item{width:calc(50% - 8px) !important;margin-bottom:16px}}@media(min-width:768px) and (max-width:1023px){.masonry-gallery{padding:0 12px}.grid-item{width:calc(33.333% - 8px);margin-bottom:16px}}@media(min-width:1024px) and (max-width:1199px){.masonry-gallery{padding:0 16px}.grid-item{width:calc(25% - 12px);margin-bottom:16px}}@media(min-width:1200px) and (max-width:1399px){.masonry-gallery{padding:0 16px}.grid-item{width:calc(20% - 13px);margin-bottom:16px}}@media(min-width:1400px){.masonry-gallery{padding:0 20px}.grid-item{width:calc(16.666% - 13px);margin-bottom:16px}}.grid-item{position:relative;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,0.12);transition:all .3s ease;cursor:pointer}.grid-item:hover{box-shadow:0 4px 12px rgba(0,0,0,0.15);transform:translateY(-2px)}.grid-item img{width:100%;display:block;border-radius:16px;transition:all .3s ease;cursor:pointer;background:#f0f0f0;object-fit:cover}.grid-item img:not(.loaded){opacity:.6;filter:blur(1px);background:linear-gradient(135deg,#f0f0f0 0,#e0e0e0 50%,#f0f0f0 100%);background-size:200% 200%;animation:shimmer 1.5s infinite}.grid-item img.loaded{opacity:1;filter:none;animation:fadeInScale .5s ease}.grid-item:hover img{transform:scale(1.02)}.grid-item button{position:absolute;bottom:12px;left:12px;right:12px;background:linear-gradient(135deg,#667eea 0,#764ba2 100%);border:0;border-radius:24px;padding:12px 16px;opacity:0;transform:translateY(10px);transition:all .3s ease;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,0.2)}.grid-item:hover button{opacity:1;transform:translateY(0)}.grid-item button a{color:white !important;text-decoration:none;font-weight:500;font-size:14px;display:block}.grid-item button:hover{background:linear-gradient(135deg,#5a67d8 0,#6b46c1 100%);transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,0.25)}@keyframes fadeInScale{from{opacity:0;transform:scale(0.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{from{opacity:1}to{opacity:0}}@keyframes zoomIn{from{transform:scale(0.9);opacity:0}to{transform:scale(1);opacity:1}}.masonry-gallery.loading{opacity:.8}.masonry-gallery.loading .grid-item{opacity:.7}.masonry-gallery.loading .grid-item::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent);animation:loading 1.5s infinite;z-index:1}@keyframes loading{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.95);display:flex;justify-content:center;align-items:center;z-index:10000;cursor:pointer;animation:fadeIn .3s ease;backdrop-filter:blur(4px)}.lightbox-content{position:relative;max-width:90%;max-height:90%;display:flex;justify-content:center;align-items:center}.lightbox-loader{color:white;font-size:18px;font-family:'Vazir','Tahoma',sans-serif;background:rgba(0,0,0,0.5);padding:20px 30px;border-radius:8px}.lightbox-img{max-width:100%;max-height:100%;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,0.7);animation:zoomIn .3s ease;object-fit:contain}.lightbox-close{position:absolute;top:-50px;right:0;color:white;font-size:28px;cursor:pointer;width:44px;height:44px;display:flex;justify-content:center;align-items:center;border-radius:50%;background:rgba(0,0,0,0.3);transition:all .2s ease;backdrop-filter:blur(10px)}.lightbox-close:hover{background:rgba(0,0,0,0.5);transform:scale(1.1)}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);color:white;font-size:24px;background:rgba(0,0,0,0.3);border:0;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1;transition:all .2s ease;backdrop-filter:blur(10px)}.lightbox-prev{left:-70px}.lightbox-next{right:-70px}.lightbox-prev:hover,.lightbox-next:hover{background:rgba(0,0,0,0.5);transform:translateY(-50%) scale(1.1)}@media(max-width:768px){.lightbox-content{max-width:95%;max-height:95%}.lightbox-prev{left:15px;width:44px;height:44px;font-size:20px}.lightbox-next{right:15px;width:44px;height:44px;font-size:20px}.lightbox-close{top:15px;right:15px;width:40px;height:40px;font-size:24px}}@media(prefers-reduced-motion:reduce){.grid-item img,.grid-item button,.grid-item,.lightbox,.lightbox-img{animation:none !important;transition:none !important}}@media(-webkit-min-device-pixel-ratio:1){.grid-item img{image-rendering:-webkit-optimize-contrast}}@media(prefers-color-scheme:dark){body{background:#1a1a1a;color:#e0e0e0}.masonry-gallery{background:#1a1a1a}.grid-item{background:#2d2d2d;box-shadow:0 1px 4px rgba(0,0,0,0.3)}.grid-item:hover{box-shadow:0 4px 12px rgba(0,0,0,0.4)}.grid-item img:not(.loaded){background:linear-gradient(135deg,#2d2d2d 0,#3d3d3d 50%,#2d2d2d 100%)}}.masonry-gallery{contain:layout style paint;will-change:transform}.grid-item{contain:layout style paint;transform:translateZ(0)}.grid-item img{will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden}.grid-item:focus-within{outline:2px solid #667eea;outline-offset:2px}.lightbox-prev:focus,.lightbox-next:focus,.lightbox-close:focus{outline:2px solid white;outline-offset:2px}@media print{.lightbox,.grid-item button{display:none !important}.masonry-gallery{display:block !important;column-count:3;column-gap:16px}.grid-item{width:100% !important;break-inside:avoid;margin-bottom:16px}.grid-item img{width:100%;height:auto}}#masonry-container{width:100% !important;max-width:none !important;margin:0 !important;padding:0 8px !important;box-sizing:border-box !important}[id="masonry-container"][style]{width:100% !important;height:auto !important}.masonry-gallery{margin-left:auto !important;margin-right:auto !important}