.aam-gallery-container { margin: 20px 0; font-family: sans-serif; }
.aam-gallery-filter { text-align: center; margin-bottom: 20px; border-bottom: 1px solid #eee; padding-bottom: 10px; }
.aam-gallery-filter-btn { background: none; border: none; cursor: pointer; padding: 10px 15px; font-size: 16px; color: #333; border-bottom: 2px solid transparent; transition: all 0.3s; }

/* DİNAMİK FİLTRE RENGİ EKLENDİ */
.aam-gallery-filter-btn.active, .aam-gallery-filter-btn:hover { color: var(--aam-filter-color); border-bottom-color: var(--aam-filter-color); }

.aam-gallery-grid { display: flex; flex-wrap: wrap; margin: calc(-1 * var(--aam-spacing)) !important; }

/* Wrapper Item z-index logic for 3D Pop-out */
.aam-gallery-item { box-sizing: border-box; padding: var(--aam-spacing) !important; transition: opacity 0.5s ease; position: relative; z-index: 1; }
.aam-gallery-item:hover { z-index: 10; }

/* Responsive Grid */
.cols-desk-1 .aam-gallery-item { width: 100%; }
.cols-desk-2 .aam-gallery-item { width: 50%; }
.cols-desk-3 .aam-gallery-item { width: 33.33%; }
.cols-desk-4 .aam-gallery-item { width: 25%; }
.cols-desk-5 .aam-gallery-item { width: 20%; }
.cols-desk-6 .aam-gallery-item { width: 16.66%; }
@media (max-width: 991px) {
    .cols-tab-1 .aam-gallery-item { width: 100%; }
    .cols-tab-2 .aam-gallery-item { width: 50%; }
    .cols-tab-3 .aam-gallery-item { width: 33.33%; }
    .cols-tab-4 .aam-gallery-item { width: 25%; }
}
@media (max-width: 767px) {
    .cols-mob-1 .aam-gallery-item { width: 100%; }
    .cols-mob-2 .aam-gallery-item { width: 50%; }
}

.aam-gallery-image-wrapper { position: relative; overflow: hidden; border: 1px solid #eee; border-radius: 5px; box-shadow: 0 2px 5px rgba(0,0,0,0.05); background:#000; }
.aam-gallery-image-wrapper.aspect-3\:2 { padding-bottom: 66.66%; }
.aam-gallery-image-wrapper.aspect-16\:9 { padding-bottom: 56.25%; }
.aam-gallery-image-wrapper.aspect-1\:1 { padding-bottom: 100%; }
.aam-gallery-image-wrapper.aspect-4\:3 { padding-bottom: 75%; }

/* --- DİNAMİK HOVER EFEKTLERİ --- */
.aam-gallery-image-wrapper img { 
    position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; display: block; 
    transition: all var(--aam-hover-speed) ease; 
}

/* 3D Pop-out Efekti */
.hover-effect-pop-out .aam-gallery-image-wrapper {
    transition: transform var(--aam-hover-speed) ease, box-shadow var(--aam-hover-speed) ease;
}
.hover-effect-pop-out .aam-gallery-item:hover .aam-gallery-image-wrapper { 
    transform: scale(var(--aam-popout-scale));
    box-shadow: var(--aam-popout-shadow);
}

/* İçeri Zoom In */
.hover-effect-zoom-in .aam-gallery-image-wrapper:hover img { transform: scale(var(--aam-hover-zoom)); }

/* Zoom Out */
.hover-effect-zoom-out .aam-gallery-image-wrapper img { transform: scale(var(--aam-hover-zoom)); }
.hover-effect-zoom-out .aam-gallery-image-wrapper:hover img { transform: scale(1); }

/* Grayscale */
.hover-effect-grayscale .aam-gallery-image-wrapper img { filter: grayscale(0%); }
.hover-effect-grayscale .aam-gallery-image-wrapper:hover img { filter: grayscale(100%); }

/* Blur */
.hover-effect-blur .aam-gallery-image-wrapper:hover img { filter: blur(var(--aam-hover-blur)); }

/* Opacity */
.hover-effect-opacity .aam-gallery-image-wrapper:hover img { opacity: var(--aam-hover-opacity); }

/* --- DİĞER STİLLER --- */
.aam-gallery-content-link { position: absolute; bottom: 0; left: 0; width: 100%; background: var(--aam-caption-bg); text-decoration: none; border-top: 1px solid rgba(0,0,0,0.05); transition: background-color 0.3s; z-index: 5; text-align: var(--aam-text-align); }
.aam-gallery-content { padding: var(--aam-caption-padding); }
.aam-gallery-item-title { margin: 0 0 5px; font-size: var(--aam-title-size); font-weight: bold; color: var(--aam-title-color); transition: color 0.3s; }
.aam-gallery-item-desc { margin: 0; font-size: var(--aam-desc-size); color: var(--aam-desc-color); line-height: 1.4; transition: color 0.3s; }

.aam-gallery-video-icon { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 50px; height: 50px; background: rgba(0,0,0,0.6); border-radius: 50%; display: flex; align-items: center; justify-content: center; opacity: 0.8; transition: opacity 0.3s; z-index:10; }
.aam-gallery-video-icon::after { content: ''; display: block; border-left: 15px solid #fff; border-top: 10px solid transparent; border-bottom: 10px solid transparent; margin-left: 5px; }
.aam-gallery-image-wrapper:hover .aam-gallery-video-icon { opacity: 1; background: var(--aam-filter-color); } /* İkon hover rengi de filtre rengiyle uyumlu olsun */
