/*Google Ad*/
.ad-card{
     break-inside: avoid;
     width: 100%;
}

 

*{
     margin:0;
     padding:0;
     box-sizing:border-box;
}

body{
     font-family:Arial,sans-serif;
     background:#f5f5f5;
}


/* Navbar */
.navbar{
     position:fixed; 
     top:0;
     left:0; 
     width:100%; 
     min-height:60px;
     background:white;  
     display:flex; 
     align-items:center;
     justify-content:space-between; 
     padding:10px 16px; 
     z-index:1000;
     gap:10px;
}

.logo{
     font-size:22px;
     font-weight:bold;
     cursor:pointer;
     white-space:nowrap;
}

.logo img{
     width:40px;
     height: 40px;
     margin-left: 0;
     
     border-radius: 360px;
}

.search-bar{
    flex:1;
    max-width:400px;
    position:relative;
    display:flex;
    align-items:center;	 
}

.search-bar input{
    width:100%;
    padding:10px 42px 10px 14px;
    border-radius:20px;
    font-size:16px;
    background:#cbcbcb;
    border:none;
}

.search-bar input:focus{
     outline:none;
     box-shadow:none;
}

#searchInput::placeholder{
     color:black;
}

.search-btn{
     position:absolute;
     right:12px;
     top:50%;
     transform:translateY(-50%);
     color:black;
     background:#cbcbcb;
     font-size:16px;
     cursor:pointer;
     border:none;
}

.nav-right{
     display:flex;
     align-items:center;
     gap:12px;
     position:relative;
}

.dropdown{
     cursor:pointer;
     font-size:22px;
     user-select:none;
}

.dropdown-content{
     position:absolute; 
     right:0;
     top:40px;
     background:#fff;
     color:#000;
     min-width:200px;
     height:350px;
     border-radius:10px; 
     box-shadow:0 4px 12px rgba(0,0,0,0.2);
     display:none; 
     flex-direction:column; 
     overflow:hidden;
     z-index:2000;
}

.dropdown-content .navlinks{
     padding:12px 16px;
     text-decoration:none;
     color:#000;
     font-size:16px;
     font-weight:bold;
}

.dropdown-content .navlinks:hover{
     background:#f2f2f2;
}

.login-btn{
     background:#06b6d4;
     color:#fff;
     border:none;
     padding:8px 16px;
     border-radius:20px;
     cursor:pointer;
     font-size:15px;
}
.login-btn:hover{background:#29b6f6;}

.profile-circle{
     width:38px;
     height:38px;
     border-radius:50%;
     background:#607d8b;
     color:#fff;
     display:flex;
     align-items:center;
     justify-content:center;
     font-weight:bold;
     cursor:pointer;
     user-select:none;
     object-fit:cover;
}

/* Profile menu */
.profile-menu{
     position:absolute; 
     right:0; 
     top:50px; 
     background:#fff; 
     color:#000;
     border-radius:8px; 
     box-shadow:0 4px 12px rgba(0,0,0,0.2);
     display:none; 
     flex-direction:column; 
     min-width:160px; 
     overflow:hidden; 
     z-index:2000;
}

.profile-menu a{
     padding:12px 16px;
     text-decoration:none;
     color:#000;
     font-size:14px;
     font-weight: bold;
}

.profile-menu a:hover{
     background:#f2f2f2;
}

/* Banner */
.banner{
     margin-top:70px;
	 background-image: url("/uploads/banner.jpg");
	 background-size:cover;
	 background-position:center;
	 background-repeat:no-repeat;
	 text-align:center;
	 padding:100px 20px;
	 font-size:32px;
	 font-weight:bold;
	 position:relative;
}


/* Categories */
.categories{
     display:flex;
     flex-wrap:wrap;
     gap:10px;
     margin:20px;
     
}
.category{
     background:#06b6d4;
     color:white;
     padding:10px 18px;
     border-radius:20px;
     cursor:pointer;
     font-size:15px;
}
.category:hover{
     background:#29b6f6;
}
.category.active{
     background:#607d8b;
     color:#fff;
}

@media (max-width: 768px) {

    .categories {
         display: flex;
         flex-wrap: nowrap;      /* prevent wrapping */
         overflow-x: auto;       /* enable horizontal scroll */
         overflow-y: hidden;
         gap: 10px;
         padding: 10px 15px;
         scroll-behavior: smooth;
         margin-left: 0;
   }

    .categories::-webkit-scrollbar {
         display: none;          /* hide scrollbar */
    }

    .category {
         flex: 0 0 auto;         /* prevent shrinking */
         white-space: nowrap;    /* keep text in one line */
         font-size: 15px;
         padding: 8px 16px;
         
    }

}

/* Masonry */
.images{
     display: block;
     padding:0 16px 20px;
     margin: 10px;
}

.img-card{
	 width:100%;
	 display:inline-block;
	 margin-bottom:12px;
	 border-radius:10px;
	 overflow:hidden;
	 cursor:pointer;
	 break-inside:avoid;
	 -webkit-coluumn-break-inside:avoid;
	 position:relative;
}



.img-card img{
	 width:100%;
	 display:block;
	 border-radius:10px;
	 opacity:0;
	 transform:scale(1.05);
	 transition:opacity 0.4s ease, transform 0.4s ease;
}

.img-card img.loaded{
	 opacity:1;
	 transform:scale(1);
}

/* Overlay */
.img-overlay{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    padding:10px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    background:linear-gradient(to top,rgba(0,0,0,0.6),transparent);
    opacity:0;
    transition:0.2s;
}
.img-card:hover .img-overlay{opacity:1;}

.save-icon{
     font-size:22px;
     color:white;
     cursor:pointer;
     transition:0.2s;
}

.download-btn{
    background:#06b6d4;
    color:white;
    border:none;
    padding:6px 12px;
    border-radius:20px;
    cursor:pointer;
    font-size:13px;
}

/* Modal */
/* FORCE modal styling */

#imageModal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.8);
    z-index: 9999;
    justify-content: center;
    align-items: center;
}

#imageModal .modal-content {
    background: #ffffff;
    padding: 25px;
    border-radius: 12px;
    max-width: 90vw;
    max-height: 90vh;
    overflow: auto;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#imageModal .close-btn {
    position:absolute;
    top:10px;
    right:10px;
    background:#dc3545;
    color:white;
    border:none;
    padding:5px 10px;
    border-radius:50%;
    cursor:pointer;
}

#imageModal #modalImage {
    max-width: 100%;
    max-height: 70vh;
    object-fit: contain;
}

#modalSaveBtn{
     color:black; 
     margin-left: 10px;
}

.details-btn{
     text-decoration: none;
     margin-left: 10px;
     color:white;
     background: #06b6d4;
     padding: 5px;
     border-radius: 20px;
     font-size:15px;
}

/* Footer */
.site-footer {
     background: #eee;
     color: #111;
     padding: 60px 20px 20px;
     margin-top: 60px;
}

.footer-container {
     max-width: 1200px;
     margin: auto;
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
     gap: 40px;
}

.footer-logo {
     color: black;
     font-size: 22px;
     margin-bottom: 15px;
}

.footer-text {
     font-size: 14px;
     line-height: 1.6;
}

.footer-col h3 {
     color: #777;
     margin-bottom: 15px;
     font-size: 18px;
}

.footer-col ul {
     list-style: none;
     padding: 0;
}

.footer-col ul li {
     margin-bottom: 10px;
}

.footer-col ul li a {
     text-decoration: none;
     color: #111;
     font-size: 14px;
     font-weight: bold;
     transition: 0.3s;
}

.footer-col ul li a:hover {
     color: #1E90FF;
}

.facebook{
     position: absolute;
     width: 30px;
     height: 30px;
     border-radius: 360px;
     display: flex;
     justify-content: center;
     align-items: center;
     transition: .1s linear;
}

.instagram {
     position: absolute;
     width: 30px;
     height: 30px;
     display: flex;
     justify-content: center;
     align-items: center;
     transition: .2s linear;
     margin-left: 30px;
}


.youtube {
     position: absolute;
     width: 30px;
     height: 30px;
     display: flex;
     justify-content: center;
     align-items: center;
     transition: .1s linear;
     margin-left: 60px;
}

.x{
     position: absolute;
     width: 30px;
     height: 30px;
     border-radius: 360px;
     display: flex;
     justify-content: center;
     align-items: center;
     transition: .1s linear;
     margin-left: 90px;
}

.pinterest{
     position: absolute;
     width: 30px;
     height: 30px;
     border-radius: 360px;
     display: flex;
     justify-content: center;
     align-items: center;
     transition: .1s linear;
     margin-left: 120px;
}

.social-links #facebook{
     color: blue;
}

.social-links #insta{
     color: black;
}

.social-links #yt{
     color:red;
}

.social-links #x{
     color: black;
}

.social-links #pinterest{
     color: rgb(230, 0, 35);
}

.footer-bottom {
     border-top: 1px solid #222;
     margin-top: 40px;
     padding-top: 20px;
     text-align: center;
     font-size: 13px;
     color: #777;
}

