 .masonry{column-gap:var(--gap);}
    .item{display:inline-block;width:100%;margin:0 0 var(--gap);position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:0 6px 18px rgba(20,30,45,0.06);background:#fff}
    .item img{width:100%;height:auto;display:block;vertical-align:middle}
    .meta{position:absolute;left:8px;right:8px;bottom:8px;padding:8px 10px;background:linear-gradient(0deg,rgba(0,0,0,0.45),rgba(0,0,0,0.12));color:#fff;border-radius:8px;display:flex;justify-content:space-between;align-items:center;font-size:0.9rem}
    .meta .title{max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .btn{background:#ffffff;border-radius:6px;padding:6px 8px;text-decoration:none;color:#111;font-weight:600;font-size:0.85rem}

    /* Pagination */
    .pagination{display:flex;gap:8px;justify-content:center;align-items:center;margin:1.25rem 0}
    .page-link{padding:6px 10px;background:#fff;border-radius:6px;text-decoration:none;color:#111;border:1px solid #e6e9ef}
    .page-link.disabled{opacity:0.5;pointer-events:none}
    .page-link.current{background:#111;color:#fff}

    /* Responsive column counts */
    @media (min-width:1200px){.masonry{column-count:4}}
    @media (min-width:900px) and (max-width:1199px){.masonry{column-count:3}}
    @media (min-width:600px) and (max-width:899px){.masonry{column-count:2}}
    @media (max-width:599px){.masonry{column-count:1}}

    /* Prevent images from breaking across columns (important) */
    .item{break-inside:avoid;-webkit-column-break-inside:avoid;}

    /* small niceties */
    .caption{padding:0.5rem 0 0.25rem;font-size:0.9rem}
