/* ============================= */
/* ===== GLOBAL RESET ===== */
/* ============================= */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:Arial, sans-serif;
    background:#f5f5f5;
    max-width:100%;
}


img{
    max-width:100%;
    height:auto;
}


/* ============================= */
/* ===== HEADER SECTION ===== */
/* ============================= */

.header{
    background:linear-gradient(90deg,#7a0000,#b30000);
    padding:12px 25px;
    color:#fff;
}

.header-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
}

.left-box{
    display:flex;
    align-items:center;
}

.logo img{
    width:60px;
    height:auto;
    margin-right:10px;
}

.title h1{
    margin:0;
    font-size:20px;
}

.title p{
    margin:3px 0 0;
    font-size:13px;
    color:#ffe6e6;
}

.right-box{
    font-size:13px;
    text-align:right;
}

/* ============================= */
/* ===== NAVBAR ===== */
/* ============================= */

.navbar{
    background:linear-gradient(90deg,#b30000,#8b0000);
    display:flex;
    align-items:center;
    padding:0 15px;
    flex-wrap:wrap;
}

.nav-links{
    flex:1;
}

.nav-links a{
    color:#fff;
    text-decoration:none;
    padding:12px 15px;
    display:inline-block;
    transition:0.3s;
}

.nav-links a:hover,
.nav-links a.active{
    background:#fff;
    color:#b30000;
    font-weight:bold;
}

/* Admin Buttons */

.nav-admin{
    background:#fff;
    color:#b30000 !important;
    font-weight:bold;
}

.nav-dashboard{
    background:#ffecec;
    color:#8b0000 !important;
}

.nav-logout{
    background:#000;
    color:#fff !important;
}

/* ============================= */
/* ===== SEARCH BOX ===== */
/* ============================= */

.header-search{
    display:flex;
    align-items:center;
    position:relative;
}

.header-search input{
    padding:7px 10px;
    border:none;
    width:200px;
}

.header-search button{
    padding:7px 12px;
    border:none;
    background:#fff;
    color:#b30000;
    cursor:pointer;
    font-weight:bold;
}

/* ============================= */
/* ===== FOOTER BASE ===== */
/* ============================= */

.footer{
    background:linear-gradient(180deg,#7a0000,#8b0000,#5c0000);
    color:#fff;
    padding:40px 30px 20px;
    margin-top:40px;
}

.footer-inner{
    display:flex;
    gap:25px;
    align-items:stretch;
    flex-wrap:wrap;
}

.footer-box{
    flex:1;
    min-width:280px;
    background:rgba(255,255,255,0.08);
    padding:20px;
    border-radius:10px;
}

.footer-box h3{
    margin-bottom:12px;
    font-size:18px;
    color:#ffe6e6;
    border-bottom:1px solid rgba(255,255,255,0.3);
    padding-bottom:6px;
}

.footer-box p{
    margin:6px 0;
    font-size:14px;
    line-height:1.7;
}

.footer iframe{
    width:100%;
    height:140px;
    border:0;
    border-radius:8px;
    margin-top:10px;
}

/* ===== PAYMENT CENTER ===== */

.footer-center{
    background:linear-gradient(180deg,#fff5f5,#ffe0e0);
    color:#7a0000;
    text-align:center;
}

.footer-center h3{
    color:#7a0000;
    border-color:#ffb3b3;
}

.footer-center img.qr{
    width:150px;
    padding:6px;
    background:#fff;
    border-radius:10px;
    cursor:pointer;
    box-shadow:0 0 12px rgba(122,0,0,0.4);
    margin:10px 0;
}

.pay-icons img{
    height:38px;
    margin:6px;
    padding:6px;
    background:#fff;
    border-radius:8px;
    box-shadow:0 0 8px rgba(0,0,0,0.25);
}

/* ===== BANK SECTION ===== */

.footer-bank span{
    color:#ffd6d6;
}

.copy-btn{
    background:#7a0000;
    color:#fff;
    border:none;
    padding:4px 8px;
    font-size:12px;
    cursor:pointer;
    border-radius:4px;
}

.copy-btn:hover{
    background:#a00000;
}

/* ===== ADMIN LOGIN BUTTON ===== */

.admin-footer{
    text-align:left;
    margin-top:20px;
}

.admin-btn{
    display:inline-block;
    background:#fff;
    color:#8b0000 !important;
    padding:6px 14px;
    font-weight:bold;
    border-radius:20px;
    text-decoration:none !important;
    font-size:14px;
    box-shadow:0 0 8px rgba(0,0,0,0.3);
    transition:0.3s;
}

.admin-btn:hover{
    background:#ffd6d6;
}

/* ===== FOOTER BOTTOM ===== */

.footer-bottom{
    text-align:center;
    margin-top:25px;
    padding-top:12px;
    border-top:1px solid rgba(255,255,255,0.3);
    font-size:13px;
    color:#ffecec;
}

/* ===== QR MODAL ===== */

#qrModal{
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.7);
    justify-content:center;
    align-items:center;
    z-index:9999;
}

#qrModal img{
    width:320px;
    background:#fff;
    padding:10px;
    border-radius:12px;
}

/* ===== WHATSAPP BUTTON ===== */

.whatsapp{
    position:fixed;
    bottom:20px;
    right:20px;
    background:#25D366;
    color:#fff;
    padding:12px 15px;
    border-radius:50%;
    font-size:24px;
    text-decoration:none;
    box-shadow:0 0 10px rgba(0,0,0,0.4);
    z-index:9999;
}

/* ===== MOBILE RESPONSIVE ===== */

@media(max-width:900px){
    .footer-inner{
        flex-direction:column;
    }

    .admin-footer{
        text-align:center;
    }
}

/* ===== BANNER ===== */
.banner img{
    width:100%;
    height:auto;
    display:block;
}

/* ===== SEARCH SECTION ===== */
.search-section{
    background:#fff;
    padding:20px;
    margin:30px auto;
    width:80%;
    box-shadow:0 0 10px #ccc;
    text-align:center;
    border-radius:10px;
}

.search-section h2{
    color:#8b0000;
    margin-bottom:15px;
}

.search-section input{
    width:60%;
    padding:10px;
}

.search-section button{
    padding:10px 20px;
    background:#8b0000;
    color:#fff;
    border:none;
    cursor:pointer;
}


/* ===== USER NAV BUTTONS ===== */

.nav-user-login{
    background:#fff;
    color:#b30000 !important;
    font-weight:bold;
}

.nav-user-register{
    background:#ffdede;
    color:#8b0000 !important;
}

.nav-user-dashboard{
    background:#ffecec;
    color:#8b0000 !important;
}


/* ===== FORCE STOP HORIZONTAL OVERFLOW ===== */

body {
    overflow-x: hidden !important;
}

img {
    max-width: 100%;
    height: auto;
}

/* Fix any flex row overflow */
.row, .photo-row, .member-row, .card-row {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}


/* ===== FIX MEMBER PHOTO ROW SCROLL ===== */

.member-row,
.photo-row,
.members-strip,
.profile-strip {
    display: flex;
    flex-wrap: wrap;   /* 🔥 THIS IS IMPORTANT */
    justify-content: center;
    gap: 15px;
    width: 100%;
}

/* Individual cards safe width */
.member-row img,
.photo-row img {
    max-width: 100%;
}

/* Extra safety */
html, body {
    overflow-x: hidden;
}