/* =========================
PUBLIC GALLERY WRAPPER
========================= */

.kdpp-public-gallery{
width:100%;
padding:80px 6%;
background:#fff;
box-sizing:border-box;
}

/* =========================
FILTER BUTTONS
========================= */

.kdpp-gallery-filters{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:14px;
margin-bottom:60px;
}

.kdpp-event-tab{
padding:10px 22px;
border-radius:40px;
background:#f3f4f6;
cursor:pointer;
transition:.3s ease;
font-size:14px;
white-space:nowrap;
border:1px solid transparent;
}

.kdpp-event-tab:hover,
.kdpp-event-tab.active{
background:#111827;
color:#fff;
}

/* =========================
MOBILE FILTER (INSTAGRAM STYLE)
========================= */

@media(max-width:768px){

.kdpp-gallery-filters{
flex-wrap:nowrap;
overflow-x:auto;
overflow-y:hidden;
justify-content:flex-start;
gap:10px;
padding-bottom:6px;
margin-bottom:35px;
scroll-behavior:smooth;
}

/* Hide scrollbar */

.kdpp-gallery-filters::-webkit-scrollbar{
display:none;
}

.kdpp-gallery-filters{
-ms-overflow-style:none;
scrollbar-width:none;
}

.kdpp-event-tab{
flex:0 0 auto;
padding:7px 16px;
font-size:13px;
}

}

/* EXTRA SMALL MOBILE */

@media(max-width:480px){

.kdpp-event-tab{
padding:6px 14px;
font-size:12px;
}

}

/* =========================
GALLERY GRID
========================= */

.kdpp-gallery-grid{
width:100%;
}

/* Masonry base */

.grid-sizer,
.kdpp-gallery-item{
width:32%;
}

@media(max-width:1200px){

.grid-sizer,
.kdpp-gallery-item{
width:48%;
}

}

@media(max-width:768px){

.grid-sizer,
.kdpp-gallery-item{
width:100%;
}

}

/* =========================
GALLERY ITEM
========================= */

.kdpp-gallery-item{
margin-bottom:24px;
border-radius:18px;
overflow:hidden;
transition:transform .3s ease, box-shadow .3s ease;
}

.kdpp-gallery-item:hover{
transform:translateY(-6px);
box-shadow:0 14px 35px rgba(0,0,0,.12);
}

.kdpp-gallery-item img{
width:100%;
height:auto;
display:block;
object-fit:cover;
}

/* =========================
LOAD MORE BUTTON
========================= */

#kdpp-load-more{
display:block;
margin:60px auto 0;
padding:12px 32px;
border-radius:30px;
border:none;
background:linear-gradient(90deg,#000000,#003170);
color:#fff;
font-size:14px;
cursor:pointer;
transition:.3s ease;
}

#kdpp-load-more:hover{
transform:translateY(-2px);
box-shadow:0 8px 18px rgba(0,0,0,.2);
}

/* =========================
LIGHTBOX
========================= */

.kdpp-gallery-lightbox{
position:fixed;
inset:0;
background:rgba(0,0,0,0.95);
display:none;
align-items:center;
justify-content:center;
z-index:999999;
padding:40px;
box-sizing:border-box;
}

.kdpp-gallery-lightbox.active{
display:flex;
}

.kdpp-gallery-lightbox-img{
max-width:100%;
max-height:100%;
object-fit:contain;
border-radius:12px;
}

/* =========================
CLOSE BUTTON
========================= */

.kdpp-gallery-close{
position:absolute;
top:25px;
right:40px;
font-size:36px;
color:#fff;
cursor:pointer;
z-index:1000000;
}

/* =========================
LIGHTBOX ARROWS
========================= */

.kdpp-gallery-prev,
.kdpp-gallery-next{
position:absolute;
top:50%;
transform:translateY(-50%);
font-size:44px;
color:#fff;
cursor:pointer;
padding:15px;
z-index:1000000;
transition:.3s ease;
}

.kdpp-gallery-prev:hover,
.kdpp-gallery-next:hover{
opacity:.7;
}

.kdpp-gallery-prev{
left:30px;
}

.kdpp-gallery-next{
right:30px;
}

/* =========================
MOBILE LIGHTBOX FIX
========================= */

@media(max-width:768px){

.kdpp-gallery-close{
right:20px;
top:20px;
}

.kdpp-gallery-prev{
left:10px;
}

.kdpp-gallery-next{
right:10px;
}

.kdpp-gallery-prev,
.kdpp-gallery-next{
font-size:34px;
}

}

/* =========================
GALLERY LIGHTBOX COUNTER
========================= */

.kdpp-gallery-counter {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    color: rgba(255,255,255,0.75);
    font-size: 13px;
    font-family: 'Inter', system-ui, sans-serif;
    background: rgba(0,0,0,0.45);
    padding: 5px 16px;
    border-radius: 20px;
    pointer-events: none;
    white-space: nowrap;
}
